【実施例1】
【0025】
本発明の一実施形態に係る処方箋認識システムの概要について、以下、図面を参照して、本願を実施するための形態について説明する。
図1は、本願の一実施形態に係る処方箋認識システムの構成概要を示す機能ブロック図である。本発明の一実施形態に係る処方箋認識システムは、ネットワーク10を介して管理システム20、営業店システム30とが結び付いて構成される。その他、必要に応じて、関連機関システム202等とネットワーク10を介して接続し、必要に応じて、システム構成をいわゆるクラウドコンピューティングにより構成してもかまわない。また、例えば、管理システム20から営業店システム30に対し、必要とされるソフトウェア等をインストールしてもかまわない。なお、関連機関システム202として、例えば、厚生労働省所管
業務に関するデータベースシステム、各地都道府県医療関連システム、日本薬局方による薬品名
に関するデータベースシステム等、本願による処方箋認識システムに関連する各システムが含まれるものとする。
【0026】
次に、
図2に従って管理システム20の詳細を説明する。同図に示すように、管理システム20は、管理装置データベース(以下、「管理装置DB」という。)21、管理装置サーバ22、管理出力装置23、管理入力装置24、管理装置インターフェース26を備えて構成されている。管理装置サーバ22は、プロセッサ等により処方箋認識システムの管理に関するデータの処理を行い、管理装置DB21は管理および処方箋認識システムの情報等のデータを記憶する。管理出力装置23は、ディスプレイ、プリンタ等を備えて構成され、必要に応じて各種情報を出力する。また、管理入力装置24は、キーボード、バーコードリーダ、スキャナ等を備えて構成され、必要に応じて情報の入力を行うが、情報の入力を可能とするすべての装置を含むものとする。なお、管理システム20は最終的に処方箋認識システムとしての業務遂行が可能であれば、単独でも複数のシステムから構成されていてもかまわない。
【0027】
次に、
図3に従って営業店システム30の詳細を説明する。同図に示すように、例えば薬局のような具体的に処方箋読み取り業務を行う営業店システム30は、営業店装置メモリ31、営業店装置プロセッサ32、営業店出力装置33、営業店入力装置34、営業店装置インターフェース36を備えて構成されている。営業店装置プロセッサ32は、例えば管理システム20から送られる情報等を処理し、例えば営業店出力装置33に情報を表示する。営業店出力装置33は、ディスプレイ、プリンタ等を備えて構成され、必要に応じて各種情報を出力する。また、営業店入力装置34は、キーボード、バーコードリーダ、スキャナ等を備えて構成され、必要に応じて操作者は情報の入力を行うが、情報の入力を可能にするすべての装置を含むものとする。営業店入力装置34では、必要に応じてキーボード等から入力処理を行って、例えば営業店出力装置33に表示し、必要に応じて、操作者により営業店入力装置34から入力された情報等を、営業店装置インターフェース36を介して管理システム20に送信する。管理システム20では送信された情報に従って、処方箋認識システムの管理処理を行い、さらなる情報を必要とする場合には、営業店システム30から、操作者によりさらなる情報入力が行われるものとする。このように操作者は営業店システム30を操作して、処方箋認識システムにより処方箋の読み込みを行う。
【0028】
以上、本発明の一実施形態の概要および構成を示した。なお、管理システム20および営業店システム30以外の各システムにおいても、プロセッサ、メモリ等(いずれも図示せず)を有する場合には、管理システム20および営業店システム30と同様に、必要に応じて各種情報処理を行うものとする。次に、本発明の詳細および動作について説明する。
【0029】
まず、本願において読み取る処方箋の例を、
図4の処方箋例
図40に示す。処方箋は、厚生労働省令等に従って作成され、処方箋例
図40はその一例である。処方箋例
図40の上部には、処方箋であることを示す「処方箋(または処方せん)」という表記が処方箋欄401に明記され、さらに公費負担者番号等を示す処方箋番号欄41、患者の情報を示す患者情報欄42、具体的な処方内容を示す処方欄43、備考を示す備考欄44、調剤に関する情報を示す調剤関連欄45、医療機関情報を示す医療機関情報欄46等から構成される。処方箋は、処方箋を発行する医療機関等においてはあらかじめ記入必須項目
が印刷等により作成され、この処方箋用紙に必要事項を記入するか、あるいは、処方箋を発行する医療機関等において処方内容等がパソコン等の入力部(図示せず)から入力され、これら入力情報を処方箋として印刷する他に、例えば罫線等を含む記入必須項目も含めた帳票として印刷する等の工程により、作成される。なお、これら処方箋は、必要とされる項目等について規定されているものの、あらかじめ定まった書式が設定されているわけではなく、例えば処方箋を発行するシステムを構築する会社、企業体、あるいは医師会、地方公共団体等の指定により、さまざまな様式が存在し得る。本願においては、あらゆる処方箋の様式に対応することを目標とし、入手可能ならば、あらかじめ処方箋の様式に従ったサンプル等を入手し、これを読み取ってもかまわない。また、前記処方箋という文字列を例えばOCRにより読み取って識別して、処方箋の表記がどの位置に存在するか、あるいは文字そのものの方向を識別することにより、処方箋の先頭部分、天地等を識別してもかまわない。
【0030】
次に、例えば書式解析エンジン(Format Generator System:FGS)により、例えば帳票に含まれる罫線で囲まれた領域である「閉領域」を自動認識する方法について、
図4に示す処方箋例
図40および
図5に示す罫線情報データテーブル50に従って説明するが、まず、読み取った処方箋に罫線に関する情報を格納する罫線情報データテーブル50について説明する。罫線情報データテーブル50は、罫線データテーブルを管理する罫線情報管理欄51、各罫線の情報を格納する、罫線1情報欄5201、罫線2情報欄5202、罫線3情報欄5203、・・・等を備えている。また、罫線情報管理欄51は、順番に1、2、3、と連番を付番する番号欄511、さらに開始終了欄5101、XY欄5102を備え、またさらに開始欄51011は、開始X欄512、開始Y欄513、終了欄51012は、終了X欄514、終了Y欄515、・・・等を、さらに備えて構成される。なお、罫線情報データテーブル50は、例えば営業店装置メモリ31に格納されたプログラムに従って営業店装置プロセッサ32により、関連する情報から算出した情報、または、営業店出力装置33のディスプレイに表示する罫線情報データテーブル設定画面(図示せず)に従って、例えば営業店システム30の営業店入力装置34のキーボードから操作者により入力された情報を、営業店装置メモリ31に格納されたプログラムに従い、営業店装置プロセッサ31により、営業店装置メモリ31上に格納するものとする。また、罫線情報データテーブル設定画面(図示せず)は、罫線情報データテーブル50と同一形式を有するものとする。さらに、必要に応じて、罫線情報データテーブル50の内容に従った罫線情報データテーブル表示画面(図示せず)を、例えば営業店システム30の営業店出力装置33、管理システム20の管理出力装置23に表示するものとする。また、罫線情報データテーブル表示画面(図示せず)は、罫線情報データテーブル50と同一形式を有するものとする。なお、罫線情報データテーブル50は、管理システム20側で作成および/もしくは入力し、メモリに格納してもかまわない。さらに、営業店システム30側で入力、格納した情報を、例えばネットワーク10を介して、管理システム20側に送信してもかまわないし、管理システム20側で作成および/もしくは入力し、メモリに格納した情報を、営業店システム30側に送信してもかまわない。
【0031】
前記の通り構成された罫線情報データテーブル50に関し、罫線情報管理欄51の、番号欄511には例えば「番号」、開始欄51011には例えば「開始」、終了欄51012には例えば「終了」、開始X欄512には例えば「X」、開始Y欄513には例えば「Y」、終了X欄514には例えば「X」、終了Y欄515には例えば「Y」という情報をそれぞれ格納する。なお、X軸は、例えば処方箋例
図40を見た場合の横方向とし、縦方向をY軸とする。次に、罫線1情報欄5201、罫線2情報欄5202、罫線3情報欄5203、・・・等の番号欄511には、順番に例えば「1」、「2」、「3」、・・・という情報をそれぞれ格納する。次に、罫線1情報欄5201、罫線2情報欄5202、罫線3情報欄5203、・・・等の、開始X欄512、開始Y欄513、終了X欄514、終了Y欄515等へ格納する各情報の算出方法を以下に示す。まず、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等により制御される営業店入力装置34に接続された例えばスキャナ(図示せず)により処方箋を読み取り、読み取った情報(図示せず)を、例えば営業店装置メモリ31に格納する。次に、前記読み取った処方箋の罫線および/もしくは枠(以降、単に罫線と表示する)から閉領域を自動認識し、各閉領域の位置関係と閉領域内の文字列を、例えば、後述の通りOCR認識によって、各閉領域が処方箋のどの欄にあたるかを自動的に抽出し、前記処方箋を読み取った情報から、後述の通り傾きを補正する。次に、読み取った処方箋に関する情報から、処方箋の様式が、例えば処方箋例
図40によるものとすると、最初にX軸方向の罫線に関し、例えば罫線端411から罫線端4198に引かれた罫線の検出処理を行い、さらに、前記検出された罫線において、罫線端411から罫線端412に関し、例えば罫線端411の位置を示すX方向の座標が、例えばミリ単位(以下同様)で4.229、Y方向の座標が、例えば15.857、罫線端412の位置を示すX方向の座標が、例えば23.257、Y方向の座標が、例えば15.857であった場合、罫線1情報欄5201の、開始X欄512に例えば「4.229」、開始Y欄513に例えば「15.857」、終了X欄514に例えば「23.257」、終了Y欄515に例えば「15.857」という情報をそれぞれ格納する。同様に、罫線端413から罫線端414に引かれた罫線に関し検出処理を行い、罫線2情報欄5202の、開始X欄512に例えば「4.229」、開始Y欄513に例えば「24.314」、終了X欄514に例えば「23.257」、終了Y欄515に例えば「24.314」という情報をそれぞれ格納する。さらに、Y軸方向の罫線に関しても、罫線端411から罫線端413に引かれた罫線に関し検出処理を行い、罫線3情報欄5203の、開始X欄512に例えば「4.229」、開始Y欄513に例えば「15.857」、終了X欄514に例えば「4.229」、終了Y欄515に例えば「24.314」という情報をそれぞれ格納する。同様に、罫線端413から罫線端414に関し、罫線4情報欄5204の、開始X欄512に例えば「23.257」、開始Y欄513に例えば「15.857」、終了X欄514に例えば「23.257」、終了Y欄515に例えば「24.314」という情報をそれぞれ格納する。ただし、罫線が1つも検出できなかった場合には、例えば罫線1情報欄5201の開始X欄512と開始Y欄513と、終了欄51012の終了X欄514と終了Y欄515とのすべてに、例えば「0」という情報を格納して、罫線が検出できなかったことを示すものとする。また、罫線検出できなかった場合の傾き補正は、例えば「処方箋(または処方せん)」の文字列を検出し、この文字列の傾きから補正を行ってもかまわない。なお、前記罫線の検出に関し、例えばスキャナにおいて処方箋を読み取ったときに、許容範囲以上に傾いて読取ったことにより、検出することが困難であるときは、スキャナから読み取る処理を再度行ってもかまわない。なお、前記各種検出処理等は、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等で処理するものとする。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。
【0032】
前記の通り罫線情報データテーブル50に格納した、例えば罫線1情報欄5201、罫線2情報欄5202、罫線3情報欄5203、罫線3情報欄5203に関する情報は、処方箋例
図40の罫線端411、罫線端412、罫線端413、罫線端414により規定される矩形状を示している。ここで、例えば罫線端411の近傍点を設定し、前記近傍点から全方位に伸ばした例えば直線が、前記罫線端411、罫線端412、罫線端413、罫線端414により規定される矩形状の2つの罫線に、前記近傍点の一方の2点において同時に交わる場合には、前記近傍点は、前記規定された矩形状のなかに存在しないこととなる。一方、前記直線が前記近傍点を挟む2点において矩形状の罫線と必ず交わる場合は、この近傍点は矩形状のなかの存在することとなる。このように、前記矩形状のなかに存在する近傍点同士を関連付けることで、例えば処方箋に含まれる罫線で囲まれた領域である「閉領域」を自動認識することができる。これら閉領域は、例えば罫線情報データテーブル50のある罫線情報欄から、連続する4つの罫線情報のうち、番号欄511の一連の番号のなかから関連する4つの番号のうち一番若い番号の情報を閉領域の上部に関する情報、二番目に若い情報を閉領域の下部に関する情報、三番目に若い情報を閉領域の左端に関する情報、四番目に若い情報を閉領域の右端に関する情報と定義することで、罫線と閉領域とを関連付けることが可能となる。また、例えば、読み取った処方箋の罫線に、例えば欠損がある、あるいはスキャナによる読み取り時に正しく読み取れなかった等により、罫線が途切れていると認識した場合でも、前記切れたと判断した罫線部分の長さが一定以下であった場合、これを連続しているものと判断し、閉領域の認識を行ってもかまわない。あるいは、前記4つの罫線の組み合わせにより矩形が形成されない場合にも、例えば1本の罫線を途中で途切れていて2本または、それ以上の罫線として検出していることも想定し、平領域の認識を行ってもかまわない。以上、罫線情報データテーブル50に係る領域確定に関する説明を行った。
【0033】
前記の通り、読み取った処方箋の罫線に関する情報を罫線情報データテーブル50に格納した後、次に前記罫線情報データテーブル50から、処方箋閉領域情報データテーブル60を作成するが、以下に、処方箋閉領域情報データテーブル60について説明する。処方箋閉領域情報データテーブル60は、処方箋閉領域情報データテーブルを管理する処方箋閉領域情報管理欄61、読み取った処方箋の閉領域情報を格納する、閉領域1情報欄6201、閉領域2情報欄6202、閉領域3情報欄6203、・・・等を備えている。また、罫線閉領域情報管理欄61は、順番に1、2、3、と連番を付番する番号欄611、中央X欄612、中央Y欄613等を、さらに備えて構成される。なお、処方箋閉領域情報データテーブル60は、例えば営業店装置メモリ31に格納されたプログラムに従って営業店装置プロセッサ32により、関連する情報から算出した情報、または、営業店出力装置33のディスプレイに表示する処方箋閉領域情報データテーブル設定画面(図示せず)に従って、例えば営業店システム30の営業店入力装置34のキーボードから操作者により入力された情報を、営業店装置メモリ31に格納されたプログラムに従い、営業店装置プロセッサ31により、営業店装置メモリ31上に格納するものとする。また、処方箋閉領域情報データテーブル設定画面(図示せず)は、処方箋閉領域情報データテーブル60と同一形式を有するものとする。さらに、必要に応じて、処方箋閉領域情報データテーブル60の内容に従った処方箋閉領域情報データテーブル表示画面(図示せず)を、例えば営業店システム30の営業店出力装置33、管理システム20の管理出力装置23に表示するものとする。また、処方箋閉領域情報データテーブル表示画面(図示せず)は、処方箋閉領域情報データテーブル60と同一形式を有するものとする。なお、処方箋閉領域情報データテーブル60は、管理システム20側で作成および/もしくは入力し、メモリに格納してもかまわない。さらに、営業店システム30側で入力、格納した情報を、例えばネットワーク10を介して、管理システム20側に送信してもかまわないし、管理システム20側で作成および/もしくは入力し、メモリに格納した情報を、営業店システム30側に送信してもかまわない。
【0034】
なお、前記の通り構成された処方箋閉領域情報データテーブル60に関し、処方箋閉領域情報管理欄61の、番号欄611には例えば「番号」、中央X欄612には例えば「中央X」、中央Y欄613には例えば「中央Y」という情報をそれぞれ格納する。次に、閉領域1情報欄6201、閉領域2情報欄6202、閉領域3情報欄6203、・・・等の番号欄611には、順番に例えば「1」、「2」、「3」、・・・という情報を格納する。次に、中央X欄612、中央Y欄613等へ格納する各情報の算出方法を以下に示す。例えば、番号欄611に格納した例えば「1」に該当する閉領域1情報欄6201の中央X欄612の「13.743」は、罫線端411と罫線端412のX軸方向の中間点を示し、罫線1情報欄5201の開始X欄512に格納した「4.229」と、終了X欄514に格納した「23.257」の平均値、
(4.229 + 23.257) ÷ 2 = 13.743
を格納した結果を示す。
次に、該閉領域のY軸方向における中央値である、中央Y欄613の「20.086」は、罫線端411と罫線端413Y軸方向の中間点を示し、罫線3情報欄5203の開始X欄512に格納した「15.857」と、終了X欄514に格納した「24.314」の平均値、
(15.857 + 24.314) ÷ 2 = 20.086
を格納した結果を示す。以下同様に、閉領域2情報欄6202、閉領域3情報欄6203、・・・等の中央X欄612、中央Y欄613にも、各閉領域の中央値を格納する。このように、処方箋閉領域情報データテーブル60は、読み取った処方箋の閉領域の中央値を格納するとともに、該処方箋に関する閉領域情報が、例えば番号94まで存在している場合には、該処方箋の閉領域が94個存在することを示している。また、罫線が1つも検出できなかった場合や閉領域が1つも認識されなかった場合には、例えば処方箋全体を1つの枠と認識して、例えば閉領域1情報欄6201の中央X欄612と中央Y欄613とに、例えば「0」という情報を格納して、閉領域が認識できなかったことを示すものとする。なお、前記検出等処理は、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等で処理するものとする。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。その他、処方箋閉領域情報データテーブル60の詳細等に関しては、例えば罫線情報データテーブル50に準ずるものとする。
【0035】
一方、本願においては、処方箋認識システムによって読み取った処方箋のフォーマットパターンに関しては、前記サンプル書式を含む新規パターンごとにデータテーブルに格納する。新規パターンの読み取りは、読み取ることが想定されるパターンを処方箋認識システムにより事前に読み取らせる場合もあるが、事前に読み取ったパターンによらない実際の処方箋に関しても、新規パターンの場合はその都度、データテーブルを追加して、このデータテーブルにその情報を格納するものとする。これらパターンに関する情報を格納する処方箋パターンデータテーブル70について、
図7に従って説明する。処方箋パターンデータテーブル70は、処方箋のどのパターンに関する情報であること示す処方箋パターン欄71、処方箋パターンデータテーブルを管理する処方箋パターン管理欄72、読み取った処方箋に含まれる閉領域の情報を格納する、閉領域1情報欄7301、閉領域2情報欄7302、閉領域3情報欄7303、・・・等を備えている。また、番号欄721、中央X欄722、中央Y欄723、各閉領域が何の項目に関する情報を格納する項目内容欄724等を、さらに備えて構成される。なお、処方箋パターンデータテーブル70は、例えば営業店装置メモリ31に格納されたプログラムに従って営業店装置プロセッサ32により、関連する情報から算出した情報、または、営業店出力装置33のディスプレイに表示する処方箋パターンデータテーブル設定画面(図示せず)に従って、例えば営業店システム30の営業店入力装置34のキーボードから操作者により入力された情報を、営業店装置メモリ31に格納されたプログラムに従い、営業店装置プロセッサ31により、営業店装置メモリ31上に格納するものとする。また、処方箋パターンデータテーブル設定画面(図示せず)は、処方箋パターンデータテーブル70と同一形式を有するものとする。さらに、必要に応じて、処方箋パターンデータテーブル70の内容に従った処方箋パターンデータテーブル表示画面(図示せず)を、例えば営業店システム30の営業店出力装置33、管理システム20の管理出力装置23に表示するものとする。また、処方箋パターンデータテーブル表示画面(図示せず)は、処方箋パターンデータテーブル70と同一形式を有するものとする。なお、処方箋パターンデータテーブル70は、管理システム20側で作成および/もしくは入力し、メモリに格納してもかまわない。さらに、営業店システム30側で入力、格納した情報を、例えばネットワーク10を介して、管理システム20側に送信してもかまわないし、管理システム20側で作成および/もしくは入力し、メモリに格納した情報を、営業店システム30側に送信してもかまわない。
【0036】
次に、処方箋パターンデータテーブル70に格納する情報の詳細について、「処方箋パターンA」に関する情報を例に説明する。まず、処方箋パターン欄71には、パターンに関する情報であること示す、例えば「処方箋パターン:A」、処方箋パターン管理欄72の番号欄721には例えば「番号」、項目内容欄724には例えば「項目内容」という情報をそれぞれ格納する。次に、閉領域1情報欄7301、閉領域2情報欄7302、閉領域3情報欄7303、・・・等の番号欄721には、順番に例えば「1」、「2」、「3」、・・・という情報を格納するが、中央X欄722、中央Y欄723等へ格納する各情報の算出方法は、処方箋閉領域情報データテーブル60の閉領域1情報欄6201の中央X欄612、中央Y欄613の計算方法に準ずるものとして、各閉領域の中央値を格納する。このように、処方箋閉領域情報データテーブル60と同様に処方箋パターンデータテーブル70においても、読み取った処方箋の閉領域の中央値を格納するとともに、該処方箋に関する閉領域情報が、例えば番号94まで存在している場合には、該処方箋の閉領域が94個存在することを示す。このように、閉領域を認識して、前記の通り処方箋を読み取った情報(図示せず)から、罫線を消去することにより、以下のOCR等による文字認識を行う領域を想定することが可能となる効果の他に、例えば閉領域を誤って認識しており、実は複数の閉領域と認識している部分が1つの閉領域であった場合にはOCR等による文字認識を行っても、処方箋として意味のある文字列が読み取れないこととなるが、そのような場合には、対象とする閉領域の周辺を含めてOCR等による文字認識を行うことにより、確かな文字列を読み取ることが可能となる。また、閉領域1情報欄7301の項目内容欄724には、例えば該閉領域に予め記入された文字を文字認識方法である例えばOCR等で読み取ったときに公費負担者番号と認識した場合には、該項目内容欄に、例えば「公費負担者番号」という情報を格納する。以下同様に、閉領域1情報欄7301、閉領域2情報欄7302、閉領域3情報欄7303、・・・等の項目内容欄724にも、例えばOCRで読み取った情報を格納するものとする。なお、項目内容欄724に格納する文字列は、例えば厚生労働省、医師会、地方公共団体等によりあらかじめ設定された項目内容を、例えばネットワーク10を介して関連機関システム202等に問い合わせて例えば一覧表(図示せず)を作成し、これと照合することで読み取り精度の向上を図ってもかまわない。このように、処方箋パターンデータテーブル70は、読み取った処方箋の閉領域の中央値と、該閉領域に記入された内容に関する情報を格納するとともに、処方箋閉領域情報データテーブル60と同様に、該処方箋に関する閉領域情報が、例えば番号94まで存在している場合には、該処方箋の閉領域が94個存在することを示す。また、前記に示すように閉領域が認識されず、例えば閉領域1情報欄6201の中央X欄612と中央Y欄613とに、例えば「0」という情報が格納されている場合には、該当する読み取った処方箋のナマ画像と処方箋パターンデータテーブル70とを、例えば、営業店システム30の営業店装置インターフェース36に接続されたディスプレイ(図示せず)等に、並列して表示し、例えば操作者により、両者を比較して精査し、例えば項目欄724に格納した項目内容に誤りがある場合には、例えば操作者によって修正を行い、さらに、処方箋パターンデータテーブル70の各項目内容が記述された処方箋上の位置と、読み取った処方箋のナマ画像より、処方箋の位置関係を、例えばタッチペン等により画面を指し
示して関連付け、正しい処方箋パターンデータテーブルとする処理を行ってもかまわない。なお、前記OCRを含む、前記検出、算出等の各処理は、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等で処理し、その結果を例えばネットワーク10を介して、管理システム20へ送信してもかまわない。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。その他、処方箋パターンデータテーブル70の詳細等に関しては、例えば処方箋閉領域情報データテーブル60、罫線情報データテーブル50に準ずるものとする。
【0037】
このように、処方箋のパターン別に読み取った情報を格納する処方箋パターンデータテーブル70は、例えば処方箋のパターンが5種類であった場合には、5パターン分の処方箋パターンデータテーブル70が存在し、それぞれの処方箋パターン欄71には、どのパターンに関する情報であること示す、例えば「処方箋パターン:A」、「処方箋パターン:B」、「処方箋パターン:C」、・・・、という情報格納することとなるが、これら過去に識別した処方箋のフォーマットに関する情報と、前記処方箋閉領域情報データテーブル60の情報を突合せることにより、今回読み取った処方箋がすでにフォーマットパターンとして登録済かどうか確認し、もし登録済である場合には、該当する処方箋パターンデータテーブル70に準じた処方箋フォーマットとして、該閉領域に含まれる文字情報を例えばOCR等により識別するときに、処方箋パターンデータテーブル70の項目内容欄724等の情報を参考にしてもかまわない。また、前記突合せによるフォーマット照合は、例えば番号欄621と番号欄721の何番まで情報が存在する、各閉領域の中央に関する数値がどこまで類似しているか等を勘案して行うものとする。さらに、例えば前記処方箋閉領域の縦横比、ヒストグラム、格子点数、色等の特徴を抽出して、これらを点数化し、前記突合せにより一致している特徴の点数の合計をすることにより、どのバターンに近いか判断してもかまわない。また、今回読み取った処方箋が、いままでに読み取ったことのない処方箋パターンによるものである場合には、この処方箋パターンに関する情報を、新規の処方箋パターンデータテーブル70として作成し、例えば営業店装置メモリ31上に格納するものとする。ただし、この新規の処方箋パターンデータテーブルの登録に関しては、例えば営業店システム30の営業店出力装置33に、新規の処方箋パターンデータテーブルであることを表示(図示せず)した上で、操作者の同意を得てから格納する処理としてもよい。なお、前記OCRを含む、前記検出、算出等の各処理等およびデータテーブルへの格納の詳細等に関しては、例えば罫線情報データテーブル50、処方箋閉領域情報データテーブル60に準ずるものとする。
【0038】
前記の通り、今回読み取った処方箋が、例えば事前に読み取った処方箋パターンと同一であったと判定し、その処方箋パターンが
図4に示す処方箋例
図40に準ずると判定したとする。次に、前記の通り処方箋を読み取った情報(図示せず)から、罫線を消去し、さらに、例えば罫線端411、罫線端412、罫線端4198、罫線端4199に囲まれた閉領域は、例えば
図7に示す処方箋パターンデータテーブル70の閉領域1情報欄7301に格納した情報に従うものとすると、該閉領域には、公費負担者番号と印刷されている。このように、事前に読み取った処方箋パターンが合致した処方箋に記載された情報を格納する、処方箋読取情報データテーブル80について、
図8に従って説明する。処方箋読取情報データテーブル80は、処方箋読取情報データテーブルを管理する処方箋読取情報管理欄81、読み取った処方箋の各情報を格納する、処方箋内容1情報欄8201、処方箋内容2情報欄8202、処方箋内容3情報欄8203、・・・等を備えている。また、処方箋読取情報管理欄81は、順番に1、2、3、と連番を付番する番号欄811、項目内容欄812、読取情報欄813等を、さらに備えて構成される。なお、処方箋読取情報データテーブル80は、例えば営業店装置メモリ31に格納されたプログラムに従って営業店装置プロセッサ32により、関連する情報から算出した情報、または、営業店出力装置33のディスプレイに表示する処方箋閉領域情報データテーブル設定画面(図示せず)に従って、例えば営業店システム30の営業店入力装置34のキーボードから操作者により入力された情報を、営業店装置メモリ31に格納されたプログラムに従い、営業店装置プロセッサ31により、営業店装置メモリ31上に格納するものとする。また、処方箋読取情報データテーブル設定画面(図示せず)は、処方箋読取情報データテーブル80と同一形式を有するものとする。さらに、必要に応じて、処方箋読取情報データテーブル80の内容に従った処方箋読取情報データテーブル表示画面(図示せず)を、例えば営業店システム30の営業店出力装置33、管理システム20の管理出力装置23に表示するものとする。また、処方箋読取情報データテーブル表示画面(図示せず)は、処方箋読取情報データテーブル80と同一形式を有するものとする。なお、処方箋読取情報データテーブル80は、管理システム20側で作成および/もしくは入力し、メモリに格納してもかまわない。さらに、営業店システム30側で入力、格納した情報を、例えばネットワーク10を介して、管理システム20側に送信してもかまわないし、管理システム20側で作成および/もしくは入力し、メモリに格納した情報を、営業店システム30側に送信してもかまわない。
【0039】
前記の通り構成された処方箋読取情報データテーブル80に関し、処方箋読取情報管理欄81の、番号欄811には例えば「番号」、項目内容欄812には例えば「項目内容」、読取情報欄813には例えば「読み取り情報」という情報をそれぞれ格納する。次に、処方箋内容1情報欄8201、処方箋内容2情報欄8202、処方箋内容3情報欄8203、・・・等の番号欄811には、順番に例えば「1」、「2」、「3」、・・・という情報を格納し、項目内容欄812には、後述する読取情報欄813に格納する項目内容の名称を格納する。具体的には、例えば前記の通り読み取った処方箋が処方箋パターンAに準じている場合、処方箋パターンAに関する処方箋パターンデータテーブル70の項目内容欄724の情報を格納する。ただし、例えば
図4の患者情報欄42に示す「患者」欄は、さらに「氏名」欄、「生年月日」欄等の具体的な項目が続いているため、特に処方箋読取情報データテーブル80に「患者」という情報を格納する必要はないが、例えば処方箋内容3情報欄8203の項目内容欄812には、例え「患者氏名」、例えば処方箋内容4情報欄8204の項目内容欄812には、例えば「患者生年月日」という情報を格納する。以下同様に、処方箋内容5情報欄8205、処方箋内容6情報欄8206、・・・等の項目内容欄812に、情報を格納するものとする。
【0040】
以上、処方箋読取情報データテーブル80の項目内容欄812に該当する項目内容を格納すると、次に、読取情報欄813には、前記の通り処方箋を読み取った情報(図示せず)から罫線を消去し、記載された処方箋の例えばOCRにより読み取った情報を解析して、例えば、前記項目内容と前記近傍の文字列との整合性を、例えば前記項目内容と項目内容の具体的な表記として使用される可能性の高い単語等とを対応付けたデータテーブル(図示せず)に従って検索して、親和性のある文字列を抽出し、その結果を格納する。例えば処方箋内容1情報欄8201では、解析した結果が6713128であったなら、例えば「6713128」、処方箋内容1情報欄8202では、解析した結果が1234567であったなら、例えば「1234567」、処方箋内容1情報欄8203では、解析した結果が本郷太郎であったなら、例えば「本郷 太郎」という情報をそれぞれ格納する。以下同様に、各読取情報欄813に、解析に従って情報を格納する。なお、前記罫線検出、関連する情報からの算出等の各処理は、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等で処理し、その結果を例えばネットワーク10を介して、管理システム20へ送信してもかまわない。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。その他、処方箋読取情報データテーブル80の詳細等に関しては、例えば罫線情報データテーブル50、処方箋閉領域情報データテーブル60、処方箋パターンデータテーブル70に準ずるものとする。
【0041】
次に、
図4の処方欄43に示す閉領域に記載された情報を、例えば
図8の処方箋内容21情報欄8221の読取情報欄813に格納する処理について説明する。処方箋内容21情報欄8221の項目内容欄812に「処方」と格納するが、読取情報欄813には処方箋においてもっとも重要な処方内容を読み取って解析し格納する。この処方箋の処方欄43に記載されている情報の一例を、
図9に示す、処方詳細情報90に従って説明する。処方詳細情報90は、
図4に示す処方欄43の一部分を示しており、変更不可欄9431、処方詳細欄9432等を備えている。また、処方詳細欄9432には、具体的な処方詳細を示す、例えば、ケフラール細粒小児用100mg94321、(100mg 1g)94322、(剤形変更不可)94324、・・・等を、さらに備えて構成される。なお、例えば「ケフラール細粒小児用100mg」等の下にある下線および「薬剤」、「分量」、「補足」等は、後述の説明のために追記したもので、実際の処方箋には記載されていないものとする。また、処方詳細欄9432の読み取りは、以下余白94329を読み取ることにより終了としてもかまわない。なお、処方詳細情報90は、前記の通り、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等に制御される、営業店入力装置34に接続された例えばスキャナ(図示せず)により処方箋を読み取り、前記読み取った情報(図示せず)を、例えば営業店装置メモリ31に格納した結果と基本的に同一である。
【0042】
前記の通り読み取った処方詳細に関する文字情報に対して、まず例えばスキャナ等で読み取って解析したデジタル情報を得た後、前記デジタル情報にマッチする文字情報をデジタル情報―文字情報対応データベース(図示せず)から抽出した対応文字情報により領域内文字認識を行うことにより、OCR認識処理を行う。なお、例えば薬剤名や用法については例えばネットワーク10を介して、例えば関連機関システム202である厚生労働省所管
業務に関するデータベースシステム、各地都道府県医療関連システム、日本薬局方による薬品名関するデータベースシステム等、本願による処方箋認識システムに関連する各システムと、例えば営業店システム30と接続して、前記各システムのデータベース(図示せず)等に格納された、薬品名、用法等と、前記OCR認識結果と照合して、処方箋としての読み取り精度の向上をはかるとともに、この結果を前記デジタル情報―文字情報対応データベース(図示せず)に格納してもかまわない。また、属性対応項目を選定する処理として、前記領域内文字認識によって得られる文字情報のうち項目名情報と推定される情報に係る属性を推定及び/もしくは規定し、属性と該属性に属すことが想定可能な項目情報の一覧とを対応させた属性―属性内可能項目データベース(図示せず)から前記推定及び/もしくは規定された属性に対応する属性―属性内可能項目データベースを選定する。さらに、類似項目選定処理として、前記領域内文字認識によって得られる文字情報のうち項目名情報と推定される情報に係る以外の文字情報について、前記属性対応項目選定手段によって選定された属性―属性内可能項目データベース(図示せず)内に格納された項目情報のうち類似度の高いものを選定する類似項目を選定しても、かまわない。このようにして読み取った情報は、例えば、一般名称薬剤は、「般」の表示のついている薬剤名、一般名称コードしか存在しない薬剤についても、対応可能とする。なお、前記属性―属性内可能項目データベース(図示せず)につ
いても、前記デジタル情報―文字情報対応データベース(図示せず)と同様、例えば関連機関システム202である厚生労働省所管
業務に関するデータベースシステム、各地都道府県医療関連システム、日本薬局方による薬品名
に関するデータベースシステム等、本願による処方箋認識システムに関連する各システムと、例えば営業店システム30と接続して、前記各システムのデータベース(図示せず)等に格納された各種情報と照合し、この結果を前記属性―属性内可能項目データベース(図示せず)に格納してもかまわない。
【0043】
具体的には、読み取った処方箋の処方欄43に記載されたい処方内容が、
図9に示す、処方詳細90の通りであったとして説明する。処方詳細90は、変更不可欄9431、処方詳細欄9432等を備えて構成され、処方箋例
図40に示す処方箋全体のうち、特に処方欄の部分を示している。まず、処方詳細欄9432のケフラール細粒小児用100mg94321の下線の下に表記された「薬剤」という表記は、前記ケフラール細粒小児用100mg94321を薬剤として認識したことを示し、以下同様に、「分量」、「力価」、「補足」、「用法」、「日数」等も、例えば薬事法に関するデータベース等との照合の結果によるものとする。また後述のように、例えば(100mg 1g)94322を省略可能な記載として読み取らない処理を行ってもかまわない。
【0044】
次に、処方箋欄43を読み取るための処理速度向上および/もしくは精度向上のため、このように処方箋パターンごとに定められた特有の処方表記方法を格納する、処方表記パターン一覧100について、
図10に従って説明する。まず、処方表記パターン一覧100は、処方表記パターン一覧を管理する処方表記パターン管理欄101、読み取った処方表記方法の各情報を格納する、処方表記パターン1情報欄10201、処方表記パターン2情報欄10202、処方表記パターン3情報欄10203、・・・等を備えている。また、処方表記パターン管理欄101は、処方箋パターン欄1011、読取フォーマット欄1012等を、さらに備えて構成される。なお、処方表記パターン一覧100は、例えば営業店装置メモリ31に格納されたプログラムに従って営業店装置プロセッサ32により、関連する情報から算出した情報、または、営業店出力装置33のディスプレイに表示する処方表記パターン一覧設定画面(図示せず)に従って、例えば営業店システム30の営業店入力装置34のキーボードから操作者により入力された情報を、営業店装置メモリ31に格納されたプログラムに従い、営業店装置プロセッサ31により、営業店装置メモリ31上に格納するものとする。また、処方表記パターン一覧設定画面(図示せず)は、処方表記パターン一覧100と同一形式を有するものとする。さらに、必要に応じて、処方表記パターン一覧100の内容に従った処方表記パターン一覧表示画面(図示せず)を、例えば営業店システム30の営業店出力装置33、管理システム20の管理出力装置23に表示するものとする。また、処方表記パターン一覧表示画面(図示せず)は、処方表記パターン一覧100と同一形式を有するものとする。なお、処方表記パターン一覧100は、管理システム20側で作成および/もしくは入力し、メモリに格納してもかまわない。さらに、営業店システム30側で入力、格納した情報を、例えばネットワーク10を介して、管理システム20側に送信してもかまわないし、管理システム20側で作成および/もしくは入力し、メモリに格納した情報を、営業店システム30側に送信してもかまわない。
【0045】
前記の通り構成された処方表記パターン一覧100に関し、処方表記パターン管理欄101の、処方箋パターン欄1011には例えば「処方箋パターン」、読取フォーマット欄1012には例えば「読取フォーマット」という情報をそれぞれ格納する。次に、処方表記パターン1情報欄10201、処方表記パターン2情報欄10202、処方表記パターン3情報欄10203、・・・等の処方箋パターン欄1011には、該当するそれぞれの処方箋パターンを示す例えば「A」、「B」、「C」、・・・という情報を格納し、読取フォーマット欄1012には、具体的な処方箋表記パターンを格納する。例えば処方表記パターン1情報欄10201の処方箋パターンAの処方表記パターンとして、例えば「(薬剤/[力価]/分量/[補足]/用法/日数/)+」という情報を格納する。以下同様に、処方表記パターン2情報欄10202、処方表記パターン3情報欄10203、・・・等の読取フォーマット欄1012に、情報を格納するものとする。なお、これら読取フォーマット欄1012に格納する読取フォーマットは、該当する処方詳細欄9432に記載されたフォーマットを、例えばOCRによって読み取り、その結果から、どのようなフォーマットによるかを識別し格納するものとする。なお、例えば処方箋パターンAに対し、複数の処方表記バターンが存在する場合、すなわち同一の処方箋パターンAを例えばA病院とB病院で使用し、それぞれに処方表記パターンが異なる場合には、例えば処方表記パターン21情報欄10221の処方箋パターン欄1011に「A」と格納し、例えば処方表記パターン1情報欄10201の読み取りパターンと異なる処方表記パターンを読取フォーマット欄1012に格納するものとする。これにより、同一処方箋パターンに対し、複数の処方表記パターンが存在する場合にも対処可能とする。
【0046】
このように格納した情報は、以下のような処方格納表記を有していることを示している。例えば処方表記パターン1情報欄10201の処方箋パターンAの処方表記パターンとして、(「薬剤/[力価]/分量/[補足]/用法/日数」)+」という情報を格納するが、「薬剤」は、最初に記載される項目が薬剤名であることを示し、「/」という情報は、項目の区切りを示すが以下同様とする。次に、「[力価]」は、次の項目が力価内容であることを示すが、力価を囲む「[]」は、この項目が省略可能であることを示す。なお、省略可能であるかどかは、例えば同じ処方箋パターンAでありながら、例えば力価という項目が省略されている処方箋を読み取ったあり、あるいは前記関連機関システムへ問い合わせることにより判定してもかまわない。以下同様に、分量、[補足]、用法、日数についても、それぞれの項目内容と省略可能かどうかを示すものとする。さらに、表記パターンの項目の先頭と末尾に記載する「()」という情報は、()に挟まれた各項目が一連の処方であることを示し、「+」は、()に挟まれた各項目が繰り返されることを意味する。次に、例えば処方表記パターン2情報欄10202の処方箋パターンBの処方表記パターンの、(「薬剤//分量/・・・」という情報は、最初の「薬剤」は前記同様薬剤名であることを示し、「/」という情報は、項目の区切りを示すが、次に記載される「//」は、該当パターンにおいては、この項目が常に省略されることを示している。なお、常に省略されるかどかは、例えば同じ処方箋パターンBでありながら、該当する項目が常に省略されているか、あるいは前記関連機関システムへ問い合わせることにより判定してもかまわない。以下処方箋パターンAと同様に、他の処方箋パターンに関しても表記パターンを示すものとする。また、処方表記パターンは、従来の処方パターンにおける処方表記パターンに準拠しないパターンを読み取った場合には、その都度処方表記パターン一覧100に追加するものとする。なお、前記各処理は、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等で処理し、その結果を例えばネットワーク10を介して、管理システム20へ送信してもかまわない。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。その他、処方表記パターン一覧100の詳細等に関しては、例えば罫線情報データテーブル50、処方箋閉領域情報データテーブル60、処方箋パターンデータテーブル70、処方箋読取情報データテーブル80に準ずるものとする。このように、処方表記パターンに関し、
図10の処方表記パターン一覧100に従って説明を行ったが、実際の処方箋読み取り処理においては、まず読み取った処方箋
が処方箋パターンのどれに合致するか照合し、合致する処方箋パターンが見つかった場合には、同一処方箋パターンに複数の処方表記パターンが存在するかどうか、例えば処方表記パターン一覧100の内容を精査し、例えば1つの処方表記パターンが登録されていれば、その読み取りフォーマットに従って、処方の詳細を読み取
るものとする。また、複数の処方表記パターンが存在する場合には、複数の処方表記パターンのどれに合致するか、照合するものとする。なお、このような照合は、例えば登録されている処方に関する読み取りフォーマットの全体の項目数により把握する、あるいは「[]」で示される省略可能項目の出現する場所を照合して判断しても、かまわない。さらに、例えば
図4に示す処方箋例
図40の医療機関情報欄46別に、処方箋パターンと処方表記パターンとの組合せを一覧表(図示せず)によって管理し、この情報に基づいて、処方の項目を読み取るものとする。また、対応する処方表記パターンが多数となる等の理由から、前記処方表記パターン一覧100を参照することで、処理速度が落ちる等不具合のある場合には、前記処方表記パターン一覧100を参照する処理を行わなくともかまわない、あるいは、新規の処方表記パターンを読み取った場合でも、例えば操作者の判断により、新規登録の処理を行わなくてもよい。
【0047】
以上、本願における、
図4に示す処方箋例
図40の罫線情報から閉領域を自動認識し、各閉領域の位置関係と閉領域内の文字列のOCR認識によって、各閉領域が処方箋のどの欄にあたるかを自動的に抽出する方法について説明し、次に、
図9に示すように、処方欄を切り出した画像を取得し、OCR認識を行う方法について説明した。なお本願では、薬剤名や用法等を正確にOCR認識することが可能であるが、システム的にはさらに、薬剤名や用法等について前記関連機関システムへ問い合わせることにより、より的確な判定を可能とする。このように処方箋を読み取った結果は、最終的に読み取った処方箋と同様な形式により表示する。表示は、例えば処方箋例
図40に示した、処方箋の例示と同様な形式によるものとする。ただし、前記最終的に読み取った情報は、処方箋の主要情報を、例えば罫線、手書き文字、印刷文字情報を含め、デジタル情報として認識した結果に従っている。なお、前記デジタル情報として認識した結果に従った画像と、前記の通り営業店装置プロセッサ32等により制御される営業店入力装置34に接続された例えばスキャナ(図示せず)により処方箋を読み取り、読み取った情報(図示せず)を、例えば営業店装置メモリ31に格納した処方箋のナマ画像とを、例えば、営業店システム30の営業店装置インターフェース36に接続されたディスプレイ(図示せず)等に、並列して表示し、例えば操作者により、両者を比較して精査し、もしデジタル情報に間違い等があった場合には、修正を行うものとし、修正内容に関する情報を別途データテーブル(図示せず)として例えば営業店装置メモリ31に格納する。また、前記修正に関しては、前記処方箋のナマ画像の読み取り後、前記デジタル情報として認識する処理がすべて終了する以前においても修正対応可能としてもよい。また、例えば操作者により修正が行われた場合には、関連する、例えば、処方箋例
図40、罫線情報データテーブル50、処方箋閉領域情報データテーブル60、処方箋パターンデータテーブル70、処方箋読取情報データテーブル80、処方表記パターン一覧100等の変更、追加等の処理を行ってもかまわない。さらに、例えば、ある営業店システムにおいて、取り扱う処方箋が限られた医療機関等に限定され、処方箋パターン、処方バターンも限られる場合には、例えば医療機関名と、該当する医療機関が発行する処方箋の処方箋パターンと処方パターンとの対応をデータテーブル(図示せず)にまとめ、例えば処方箋に記載された医療機関名を最初にOCR等により読み取って認識するか、あるいは操作者により、医療機関名等を、例えば営業店システム30の営業店入力装置34のキーボード等から入力することにより、まず特定の処方箋パターンおよび処方パターンによる処方箋であるとして読み取り処理を行ってもかまわない。なお、前記に示す並列表示および修正
に関する各処理は、例えば営業店システム30上に展開されたプログラムに従って、営業店装置プロセッサ32等で処理し、その結果を例えばネットワーク10を介して、管理システム20へ送信してもかまわない。また、同様な処理を、管理システム20で行っても、かまわない。さらに、その結果を、例えばネットワーク10を介して、営業店システム30へ送信してもかまわない。
【0048】
次に、本願における処方箋認識システム処理概要
図110について、
図11に従って説明する。処方箋認識システム処理概要
図110は、FGS111、フォーム情報112、FES113、HWS114、ARS115、HCS116から構成される。以下、処方箋認識システム処理概要
図110に従ってFGS111、FES113の構成とFGS111の処理内容について説明する。
【0049】
初めにFGS113の処理内容について説明する。FGSは、以下の三つの処理からなるが、まず、新規処方箋読み取りに関し、新規画面ファイル入力待ち1111とフォーム情報読み込み・更新1112を行い、次にフォーム情報とのマッチング1113を行う。
以下、
0.傾き補正11131により、傾き補正処理を行う
1.画像的特徴の抽出11132により、画像的特徴の抽出・比較:画像から、画像的な特徴を抽出し、既知のフォームの特徴と比較する。
2.フォーム情報の抽出11133により、画像から、罫線・活字等を認識し、FES113の編集データの元となるデータを作成する。
【0050】
次に、各々の処理フロー・考慮事項について示す。
0.傾き補正
この処理は前処理として行う。全ての画像について行うことになるため、できるかぎり処理を軽量化する。本願の処理による傾き補正のために抽出した水平線部の例を、処方箋に対する適用例ではないが、
図12に示す。
<水平線の抽出>
処理内容は次の通りである。
・枠線等の線分は、画像背景よりもずっと暗いと仮定し、水平方向に暗い画素を探索する。
・暗い画素が水平方向に一定数以上連続している部分を、水平の線分と仮定し、その始端座標を取得する。
【0051】
次に、
図13に示すように、枠線1301の始端座標1303から、線分1302(図示せず)の角度を変えた線分13021〜13023上の画素値の合計を繰り返し取得し、枠線1301と線分13021〜13023の重ならない画素値の合計が最も小さく(暗く)なったときの角度を記録する。
【0052】
このような処理を複数の水平線分について行い、算出された角度群の中央値を正しい角度とする。処理が比較的軽量となる利点がある。ただし、枠線1401の線幅に対し、線分14021〜14022の幅が細い場合、正しい角度が求められない場合がある。この模様を
図14に示す。対策としては、枠線の線幅を検出し、線分1402(図示せず)の形状を変更する。
【0053】
上記の代替案として、次の技術思想がある。
<分散を利用する(処方箋に対する適用例はないが、
図15、
図16に技術的思想の概要を示す。)>
処理内容としては、水平方向の画素値の合計を各行ごとに計算する。罫線は暗いため、傾きがあるときは、起伏が少ない。
この場合、
・各行の画素値の合計を要素として、水平な画像では、各行の画素値の合計の起伏が大きくなると仮定して、隣接する水平画素合計値について二乗距離を計算する。
・画像を微小に回転させて、上記の処理を繰り返し、二乗距離が最大となる角度を正しい角度とする。
ということを行う。こうすることで、横書きの文字列についても同様の傾向が出るため、罫線のないような文書画像にも適用可能となるという利点を生ずる。処理が重いという課題もある。大きな傾きの補正をする場合には処理時間が大きくなるため、非常に傾いているような画像については対応せず、FES113でオペレーターが補正し、再度FGS111に送るものとする。
出願人において実験した限りでは、正しくスキャンした場合は、傾きは1°以内に収まる。
【0054】
<画像的特徴の抽出・比較>
比較処理を軽量化するために、複数の画像的特徴を取得する。
1−1.候補絞り込み用画像特徴
既知フォーム全てとマッチング処理をすると、非常に処理時間が大きくなることが予想されるため、対象候補の既知フォームを絞り込むために使用する。
・位置合わせ用画像特徴、マッチング用特徴から抽出可能な値(平均値、分散等)
・ドキュメントの縦横比
・水平成分、垂直成分の割合
・格子点の数
絞込みの特徴の抽出に時間がかかると、元も子もないため、どの程度まで絞り込めば十分かを検証して決定する。
【0055】
1‐2.位置合わせ用画像特徴(処方箋に対する適用例はないが、
図17に技術的思想の概要を示す。)
マッチングの前処理として、既知フォームの特徴抽出に用いた画像と、入力画像とのマッチング用特徴量算出の位置を合わせるために使用する。
・各行の水平方向の画素合計値
・各列の垂直方向の画素合計値
【0056】
1−3.マッチング用画像特徴
既知フォームと現在のフォームとを比較するために使用
する。比較対象の既知フォームごとに、位置合わせを行い、生成しなおすことになる。FES113処理時に、一致したとされる既知フォーム上で、似ていない部分がどこにあるかを視覚的に表示できるような比較結果を残せる特徴の取り方をするため、以下のような手順で処理を行う。
まず、既知フォームのマッチング用画像特徴は、FES113でのフォーム登録時、画像をX軸1801、Y軸1802について一定数で自動的に分割、手書き領域1803〜1805を除いた、各分割領域での画像特徴を抽出して登録しておく。(
図18参照)
【0057】
次に、入力画像に対して、位置合わせ用画像特徴を用いて、比較対象の既知フォームのマッチング用特徴と合うように分割領域を調整する。分割領域が一定以上、ずれている(1901)か、歪んでいる場合は、NGとし、比較対象を次の既知フォームへ移す。最後に、各分割領域のマッチング用画像特徴を取得し、比較する。(
図19参照)
【0058】
この結果、以下のようにマッチング結果は、例えば画面表示される。
・正しいフォームと比較した場合:前記マッチング用画像特徴が異なる前記各分割領域が少数表示される。
・異なるフォームと比較した場合:前記マッチング用画像特徴が異なる前記各分割領域が多数表示される。
なお、各分割領域の表示は、例えば認識しやすい色により、一目に認識できるようにする。
【0059】
上のようにフォーム認識失敗時や、類似のフォームの際、目で確認すべき部分が直感的にわかるようにする。マッチング用の画像特徴については、以下の二通りの処理から選択して処理するものとする。
・RGB各色の平均値
・エッジ(隣接画素間の輝度差)のパターン
すなわち、システムで、手書き領域内の情報のみを取得すればいいケースでは、活字・罫線情報を必要としないため、FES113での入力も行われない。その場合、FES113の確認画面表示時に重畳表示するデータが無くなってしまう。それを避けるため、既知フォームの登録に使用した画像については、確認・重畳表示用に残して置くこととする。