(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
薬局は、医療機関から紙またはFAXを介して処方箋を受け取る。薬局は、紙で受け取った処方箋をテキストデータ化したい場合、スキャナで読み込み、OCR(Optical Character Recognition)によりテキストデータ化する。あるいは、薬局は、FAXで受け取った画像データをOCR(Optical Character Recognition)によりテキストデータ化する。しかし、スキャンした画像データおよびFAXで受け取った画像データは、文字が不鮮明な場合があり、従来のOCRでは適切に文字認識できない場合が多い。
【0005】
そこで、本発明の目的は、不鮮明な文字であっても適切に処方箋の読み取りが可能な処方箋読み取りプログラムおよび処方箋読み取り装置を提供することにある。
【課題を解決するための手段】
【0006】
本発明に係る処方箋読み取りプログラムは、処方箋データを受信する受信処理と、前記受信処理で受信した前記処方箋データに基づいて、レイアウトタイプを判断するレイアウトタイプ判断処理と、前記レイアウトタイプ判断処理で判断した前記レイアウトタイプに基づいて、テキスト領域を判断するテキスト領域判断処理と、前記テキスト領域判断処理で判断した前記テキスト領域に対して、機械学習済文字認識アルゴリズムを用いてテキストデータの認識処理を行なうテキスト認識処理と、前記テキスト認識処理で認識した前記テキストデータに対して、機械学習済単語抽出アルゴリズムを用いて薬の名称および分量を含む単語を抽出する抽出処理と、を情報処理装置に実行させることを特徴とする。
【0007】
この様に、本発明に係る処方箋読み取りプログラムは、処方箋のレイアウトタイプを判断してテキスト領域を判断し、判断したテキスト領域に対してニューラルネットワーク等の機械学習済文字認識アルゴリズムおよび機械学習済単語抽出アルゴリズムを用いて薬の名称および分量等の単語を抽出する。したがって、本発明に係る処方箋読み取りプログラムは、従来のOCRよりも極めて高い精度で文字認識および単語認識を行なうことができる。よって、本発明に係る処方箋読み取りプログラムは、FAXやスキャナで取り込んだ不鮮明な文字の処方箋データであっても適切に処方箋の読み取りを行なうことができる。
【0008】
なお、処方箋読み取りプログラムは、前記テキスト認識処理で認識した前記テキストデータのエラーを、機械学習済アルゴリズムを用いて修正する修正処理をさらに実行し、さらに処方箋の読み取り精度を高めることもできる。この場合、前記抽出処理は、前記修正処理で修正されたテキストデータに対して行なわれる。
【0009】
また、修正処理は、薬の名称辞典と、処方箋に含まれる特定のパターンを含むパターン辞典と、を用いて行なわれる。パターン辞典は、例えばジェネリック医薬品に使用される「般」の文字や、カタカナの「ロ」と漢字の「口」等の情報を含む。これにより、処方箋の読み取り精度がさらに高まる。
【0010】
なお、機械学習済単語抽出アルゴリズムは、処方箋において関連するテキストの各部分の形式を判断し、タグ付けするように学習されている第1アルゴリズムと、処方箋における特有のキーワード間の関係を理解する様に学習されている第2アルゴリズムと、を有する。これにより、処方箋読み取りプログラムは、処方箋における特有の記載内容を高精度に抽出し、データベースに適切に登録可能かつ利用可能な形式として整理することができる。
【0011】
なお、レイアウトタイプ判断処理は、データベースに蓄積されたレイアウトタイプとの比較によって行なわれる。処方箋は、法改正等により新たなレイアウトタイプが生じる場合もあり、データベースに一致しない場合もある。しかし、処方箋読み取りプログラムは、データベースに一致するレイアウトタイプが無い場合に利用者からテキスト領域の操作を受け付けて、データベースに登録する登録処理を行なうことで、新たなレイアウトタイプが生じた場合でも、適切に読み取りを行なうことができる。
【発明の効果】
【0012】
本発明によれば、不鮮明な文字であっても適切に処方箋の読み取りを行なうことができる。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態に係る処方箋読み取りシステム1について、図を参照しながら説明する。
【0015】
図1は、処方箋読み取りシステム1の構成を示すブロック図である。処方箋読み取りシステム1は、サーバ11、受付用端末12、利用者端末13、およびレセコン14を備えている。サーバ11、受付用端末12、利用者端末13、およびレセコン14は、ネットワークを介して接続されている。
【0016】
受付用端末12は、一般的な情報処理装置(パーソナルコンピュータ)で実現される。受付用端末12は、不図示のFAX機またはスキャナに接続されていて、処方箋を画像データに変換した処方箋データを受信する。処方箋は、医療機関から紙またはFAXで送付される。薬局の薬剤師は、処方線を紙で受け取った場合には、不図示のスキャナを用いて受付用端末12に処方箋データを入力する。また、処方箋をFAXで受信した場合、受付用端末12は、FAX機から処方箋データを受信する。あるいは、薬剤師は、FAX機で処方箋データを印刷し、印刷した処方箋をスキャナで読み込み、受付用端末12に入力してもよい。受付用端末12は、処方箋データをサーバ11に送信する。
【0017】
サーバ11は、本発明の処方箋読み取り装置の一例である。サーバ11は、薬局に設置されていてもよいし、インターネット上のサーバ群からなる態様であってもよい。サーバ11は、受付用端末12から処方箋データを受信し、処方箋の内容を読み取る動作を行なう。
【0018】
利用者端末13は、薬剤師等の薬局業務を行なう者(利用者)が用いる端末であり、例えばスマートフォンあるいはタブレット型コンピュータ等の携帯型の情報処理装置である。利用者は、利用者端末13を用いてサーバ11で読み取られた処方箋の内容を確認したり、処方箋の内容をレセコン14に入力したりする。また、利用者は、利用者端末13を用いて患者の薬歴を確認し、新たな薬歴を作成することもできる。
【0019】
レセコン14は、利用者端末13から入力される処方箋の内容に応じてレセプトを作成するコンピュータである。レセコン14は、一般的なパーソナルコンピュータ上にインストールされたアプリケーションプログラムによって実現される。
【0020】
図2は、サーバ11の構成を示すブロック図である。サーバ11は、ネットワークI/F51、記憶部52、CPU53、およびRAM54を備えている。
【0021】
ネットワークI/F51は、インターネット等のネットワークに接続される。本実施形態では、サーバ11は、ネットワークI/F51を介して受付用端末12および利用者端末13に接続される。
【0022】
CPU53は、記憶部52に記憶されているプログラムをRAM54に読み出して、種々の動作を行なう。記憶部52は、サーバ11の基本プログラム(OS)と、本実施形態における処方箋読み取りプログラムと、を記憶している。また、記憶部52は、後述の処方箋データのレイアウトタイプを示す情報や、患者の個人情報等の各種データベースを備えている。
【0023】
CPU53は、記憶部52から処方箋読み取りプログラムをRAM54に読み出すことで、処方箋読み取り装置として機能する。
【0024】
図3は、処方箋読み取りシステム1の動作を示すフローチャートである。まず、処方箋は、医療機関から紙またはFAXで送付される(S11)。薬局の薬剤師は、紙またはFAXで送付された処方箋を受け取る(S12)。
【0025】
そして、薬局の薬剤師は、受付用端末12を用いて紙の処方箋をスキャンし、処方箋データとしてサーバ11に送信する、またはFAXで受信した処方箋データをサーバ11に送信する(S13)。なお、薬剤師は、利用者端末13のアプリケーションプログラムを用いて、処方箋データをサーバ11に送信してもよい。また、受付用端末12または利用者端末13は、FAXを介して処方箋データを受信した時点、またはスキャナから受信した時点で、当該処方箋データを自動的にサーバ11に送信してもよい。特に、老人福祉施設等の在宅向け薬局では、医療機関から同時に多数の処方箋を受け取る。そのため、本実施形態の処方箋読み取りシステム1は、処方箋データを受信した場合に自動的にサーバ11に処方箋データを送信して以下の読み取り動作を行うことで、薬局業務の負荷を著しく低減することができる。
【0026】
次に、サーバ11は、処方箋読み取りプログラムを実行して処方箋読み取り動作を行なう(S14)。
【0027】
図4および
図5は、処方箋読み取り時のサーバ11の動作を示すフローチャートである。まず、サーバ11は、処方箋データから、画像の特徴量の抽出を行なう(S101)。この処理は、例えばSIFT(Scale Invariant Feature Transform)等の特徴量を抽出するアルゴリズムで行なう。
【0028】
上述の様に、薬局は、FAXで処方箋データを受信する、あるいは処方箋スキャナで読み取る。したがって、処方箋データは、画像のサイズや傾きが一定ではない。サーバ11は、SIFTの特徴量抽出アルゴリズムを用いることにより、画像サイズおよび傾きに依存しない処方箋の画像の特徴量を抽出することができる。
【0029】
次に、サーバ11は、抽出した特徴量に基づいて、データベースから対応するレイアウトタイプを判断する(S102)。データベースには、複数の処方箋のレイアウトタイプが蓄積されている。サーバ11は、RANSAC(Random Sample Consensus)等の推定アルゴリズムで、データベースを参照して、受信した処方箋データのレイアウトタイプに一致するレイアウトタイプを判断する。
【0030】
サーバ11は、一致するレイアウトタイプが存在するか否かを判断する(S103)。サーバ11は、一致するレイアウトタイプが存在したと判断した場合、テキスト領域の判断処理を行なう(S104)。テキスト領域は、少なくとも患者の氏名等の患者の情報が記載された領域、日付が記載された領域、および薬の情報が記載された領域等を含む。データベースに登録されているレイアウトタイプは、処方箋データのどの位置にどのテキスト領域が存在するかを示す位置情報が含まれている。サーバ11は、データベースに登録されているレイアウトタイプから、テキスト領域の位置情報を読み出すことで、テキスト領域を判断する。
【0031】
一方で、サーバ11は、一致するレイアウトタイプが無いと判断した場合、利用者からテキスト領域の受け付け処理を行なう(S105)。薬剤師等の利用者は、受付用端末12または利用者端末13のユーザI/Fを用いて、処方箋データの中からテキストが記載されている領域を手動で指定する。サーバ11は、指定されたテキスト領域を新たなレイアウトタイプとしてデータベース登録し(S106)、テキスト領域の判断処理を行なう(S104)。
【0032】
処方箋は、法改正等により新たなレイアウトタイプが生じる場合もあり、データベースに蓄積されたレイアウトタイプと一致しない場合もある。しかし、サーバ11は、データベースに一致するレイアウトタイプが無い場合に利用者からテキスト領域の指定操作を受け付けて、データベースに登録する登録処理を行なうことで、新たなレイアウトタイプが生じた場合でも、次回からは自動的にレイアウトタイプを判断することができる。
【0033】
その後、サーバ11は、患者の情報が記載されたテキスト領域に対してテキスト認識処理を行なう(S107)。患者の情報は、患者の氏名および誕生日等の情報を含む。テキスト認識処理は、任意の文字認識アルゴリズム(例えばニューラルネットワーク等のアルゴリズムを搭載したTesseract-OCR)で行なわれる。
【0034】
サーバ11は、テキスト認識処理で認識した患者の情報をデータベースと対比して、対応する患者の情報が存在するか否かを判断する(S108)。サーバ11は、対応する患者が存在すると判断した場合、
図5に示すS201〜S207の処理を続ける。サーバ11は、対応する患者が存在しないと判断した場合、認識した患者の情報をデータベースに登録し(S109)、S201〜S207の処理に移行する。
【0035】
次に、
図5に示す様に、サーバ11は、薬の情報が記載されたテキスト領域においてセグメント処理を行なう(S201)。
図6は、処方箋データの一例を示す図である。セグメント処理とは、
図6のハッチング部分に示す様に、薬の情報が記載されたテキスト領域を一行毎のセグメントに区切る処理である。
【0036】
その後、サーバ11は、各セグメントでテキスト認識処理を行なう(S202)。テキスト認識処理は、任意の文字認識アルゴリズム(例えばニューラルネットワーク等のアルゴリズムを搭載したTesseract-OCR)で行なわれる。この処理は、処方箋用に機械学習された機械学習済文字認識アルゴリズムを用いることが好ましい。無論、サーバ11は、一般的な機械学習済アルゴリズムを用いてテキスト認識処理を行なってもよい。
【0037】
次に、サーバ11は、認識したテキストデータに対してスペル修正処理を行なう(S203)。スペル修正処理は、例えばSymSpell等の任意のアルゴリズムを用いる。SymSpellアルゴリズムは、政府の提供する薬の名称辞典を用いて、薬の名称に係るテキスト認識の誤りを修正する。これにより、サーバ11は、S202のテキスト認識処理で生じたエラーを適切に修正することができる。
【0038】
さらに、サーバ11は、処方箋における特定パターンの修正処理を行なう(S204)。特定パターンの修正処理は、例えばn−gram等の任意のアルゴリズムを用いる。n−gramアルゴリズムは、処方箋における特定のパターンを含むパターン辞典を用いて、S203の処理では修正できなかったテキスト認識の誤りを修正する。処方箋における特定のパターンは、例えばジェネリック医薬品に使用される「般」の文字等を含む。また、n−gramアルゴリズムは、カタカナの「ロ」の字と漢字の「口」の違いも修正する。
【0039】
サーバ11は、修正されたテキストデータを用いて第1単語抽出処理(S205)および第2単語抽出処理(S206)を行なう。第1単語抽出処理および第2単語抽出処理ともに、ニューラルネットワーク等の機械学習済単語抽出アルゴリズムを用いて行なう。機械学習済単語抽出アルゴリズムは、例えばNLP(Natural Language Processing)アルゴリズムである。本実施形態の第1単語抽出処理で用いる第1NLPアルゴリズムは、処方箋において関連するテキストの各部分の形式を判断し、タグ付けするように学習されている。各タグは、例えば薬の名称、投薬量、投薬期間、および摂取タイミング等を含む。
【0040】
第2単語抽出処理で用いる第2NLPアルゴリズムは、処方箋における特有のキーワード間の関係(構文および順序)を理解する様に学習されている。例えば、
図6に示す処方箋データでは、第2NLPアルゴリズムは、1.一般名処方で薬の名称「○○○○錠」12mg、2.投薬量「3錠」で3.投薬期間「14日分」、4.摂取タイミング「1日1回寝る前」を、この順で関係付ける。同様に、第2NLPアルゴリズムは、1.一般名処方で薬の名称「○△△錠」7.5mg、2.投薬量「1錠」で、3.投薬期間「14日分」、4.摂取タイミング「1日1回寝る前」を、この順で関係付ける。
【0041】
サーバ11は、以上の第1NLPアルゴリズムおよび第2NLPアルゴリズムを用いることにより、処方箋における特有の記載内容を高精度に抽出し、データベースに適切に登録可能かつ利用可能な形式として整理することができる。
【0042】
サーバ11は、以上の様にして抽出した単語をデータベースに登録する(S207)。そして、
図3のフローチャートに戻り、サーバ11は、読み取り結果をレセコン14で読み取り可能な規格(例えばJAHIS)のQRコード(登録商標)に変換する(S15)。また、サーバ11は、読み取った処方箋データと、S207で登録した単語の位置情報(処方箋データ内の各単語の位置を示す情報)、およびS15で生成したQRコード(登録商標)を、データベースに登録する(S16)。
【0043】
一方、サーバ11は、データベースに登録した情報を利用者端末13に送信し、利用者端末13の情報を更新する(S17)。薬剤師は、利用者端末13のアプリケーションプログラムを用いて、各処方箋の内容を確認することができる。
【0044】
その後、サーバ11で生成されたQRコード(登録商標)は、利用者端末13のアプリケーションプログラムを介して、レセコン14に入力される(S18)。
【0045】
以上の様に、本実施形態の処方箋読み取りプログラムは、処方箋のレイアウトタイプを判断してテキスト領域を判断し、判断したテキスト領域に対してニューラルネットワーク等の機械学習済文字認識アルゴリズムおよび機械学習済単語抽出アルゴリズムを用いて薬の名称および分量等の単語を抽出する。したがって、本実施形態の処方箋読み取りプログラムは、従来のOCRよりも極めて高い精度で文字認識および単語認識を行なうことができる。よって、本実施形態に係る処方箋読み取りプログラムは、FAXやスキャナで取り込んだ不鮮明な文字の処方箋データであっても適切に処方箋の読み取りを行なうことができる。特に、在宅向け薬局では、医療機関から同時に多数の処方箋を受け取るが、本実施形態の処方箋読み取りプログラムは、処方箋の読み取りおよびレセコンへの入力業務の負荷を著しく低減することができる。
【0046】
なお、サーバ11は、患者毎に読み取り結果の情報をデータベースに蓄積している。薬剤師は、利用者端末13のアプリケーションプログラムを用いて、患者毎の過去の読み取り結果を全て参照することができる。
図3のS17の処理において利用者端末13の情報が更新されると、薬剤師は、処方箋の内容を確認し、患者に電話等を介して、処方された薬の説明、および患者の服用状況等について確認を行うことができる。薬剤師は、利用者端末13を用いて、これらの内容を、薬剤服用歴管理記録(以下、「薬歴」と称する)として記録する。薬歴は、主観的情報(患者が話した内容、自覚症状)(S:Subjective)、客観的情報(処方内容、変更点、薬剤師の観察所見、検査データ)(O:Objective)、評価ならびに指導(SおよびOから薬剤師としての評価・判断とそれに基づく指導内容)(A:
Assessment)、および計画(次回に尋ねる点や注意すべきこと)(P:Plan)から構成される。薬剤師は、S17の処理において利用者端末13の情報が更新された後に、今回の処方箋に加えて過去の情報も参照することで、簡単に新たな薬歴を作成することができる。これにより、本実施形態の処方箋読み取りシステム1は、薬歴作成業務支援プログラムとしても機能する。
【0047】
また、利用者端末13は、薬剤師が作成した薬歴をサーバ11に送信してもよい。サーバ11は、作成した新たな薬歴をデータベースに登録することで、次回新たな処方箋の読み取りを行なった時に、利用者端末13を介して薬剤師に薬歴を提示することができる。
【0048】
さらに、サーバ11は、新たに読み取った処方箋の内容と過去の薬歴に基づいて、今回新たに作成する薬歴を自動的に作成してもよい。薬歴の作成は、所定のアルゴリズムを用いて行なわれる。サーバ11は、作成した新たな薬歴を利用者端末13に送信する。薬剤師は、サーバ11で作成された薬歴を確認し、患者への説明および状況の確認の結果に応じて、サーバ11で作成された薬歴を修正する。あるいは、薬剤師は、患者への説明および状況の確認の結果、サーバ11で作成された薬歴で問題ないと判断した場合、サーバ11で作成された薬歴を確定する。薬剤師が薬歴を確定すると、確定した薬歴が利用者端末13からサーバ11およびレセコン14に登録される。
【0049】
この様にして、本実施形態のサーバ11は、薬歴を自動作成することで、薬歴作成業務を支援することができ、薬局業務の負荷をさらに低減することもできる。
【0050】
なお、本実施形態の説明は、すべての点で例示であり、制限的なものではないと考えられるべきである。本発明の範囲は、上述の実施形態ではなく、特許請求の範囲によって示される。さらに、本発明の範囲は、特許請求の範囲と均等の範囲を含む。
【0051】
例えば、処方箋読み取りプログラムは、サーバ11ではなく、受付用端末12、利用者端末13またはレセコン14で実行してもよい。
【解決手段】処方箋読み取りプログラムは、処方箋データを受信する受信処理と、前記受信処理で受信した前記処方箋データに基づいて、レイアウトタイプを判断するレイアウトタイプ判断処理と、前記レイアウトタイプ判断処理で判断した前記レイアウトタイプに基づいて、テキスト領域を判断するテキスト領域判断処理と、前記テキスト領域判断処理で判断した前記テキスト領域に対して、機械学習済文字認識アルゴリズムを用いてテキストデータの認識処理を行なうテキスト認識処理と、前記テキスト認識処理で認識した前記テキストデータに対して、機械学習済単語抽出アルゴリズムを用いて薬の名称および分量を含む単語を抽出する抽出処理と、を情報処理装置に実行させる。