(57)【要約】【課題】外観上は差が殆どないが別の品名が付けられた商品、あるいは品名は同じだが外観上に差がある商品を、高い認識率を持って認識する。【解決手段】商品認識装置は、撮像部で撮像された画像からその画像に含まれる商品の外観特徴量を検出する。そして商品認識装置は、外観特徴量のデータを認識辞書ファイルの特徴量データと照合して、画像に含まれる商品の候補を抽出する。さらに商品認識装置は、撮像部で撮像された画像からその画像に含まれる文字列を認識する。商品認識装置は、認識された文字列に基づいて、抽出された商品の候補の中から認識対象の商品を確定する。【選択図】      図６
2014049015.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段により撮像された画像からその画像に含まれる商品の外観特徴量を検出する特徴量検出手段と、
この特徴量検出手段により検出された前記外観特徴量のデータを、認識対象である商品毎にその商品の表面情報を表わす特徴量データが保存される認識辞書ファイルの前記特徴量データと照合して、前記画像に含まれる商品の候補を抽出する商品候補抽出手段と、
前記撮像手段により撮像された画像からその画像に含まれる文字列を認識する文字認識手段と、
この文字認識手段により認識された文字列に基づいて前記商品候補抽出手段により抽出された商品の候補の中から認識対象の商品を確定する商品確定手段と、
を具備したことを特徴とする商品認識装置。
【請求項２】
前記商品確定手段は、前記商品候補抽出手段により抽出された商品の候補の中から前記文字認識手段により認識された文字列を品名の少なくとも一部とする商品を認識対象の商品として確定することを特徴とする請求項１記載の商品認識装置。
【請求項３】
認識対象である商品毎に、当該商品が文字認識を必要とするか否かを識別するためのフラグを記憶するフラグ記憶手段と、
前記商品候補抽出手段により候補として抽出された商品に対する前記フラグから、文字認識を必要とするか否かを判定する判定手段と、をさらに具備し、
前記判定手段により文字認識が必要と確認された場合、前記文字認識手段を実行することを特徴とする請求項１または２記載の商品認識装置。
【請求項４】
前記文字認識手段を実行した結果、前記前記撮像手段により撮像された画像から文字列を認識できなかったとき報知する報知手段、
をさらに具備したことを特徴とする請求項３記載の商品認識装置。
【請求項５】
認識対象である商品毎に、当該商品が文字認識を必要とするか否かを識別するためのフラグを記憶するフラグ記憶手段と、
前記商品候補抽出手段により候補として抽出された商品に対する前記フラグから、文字認識を必要とするか否かを判定する判定手段と、をさらに具備し、
前記判定手段により文字認識が必要と確認された場合、前記商品確定手段を実行することを特徴とする請求項１または２記載の商品認識装置。
【請求項６】
コンピュータを、
撮像手段により撮像された画像からその画像に含まれる商品の外観特徴量を検出する特徴量検出手段、
この特徴量検出手段により検出された前記外観特徴量のデータを、認識対象である商品毎にその商品の表面情報を表わす特徴量データが保存される認識辞書ファイルの前記特徴量データと照合して、前記画像に含まれる商品の候補を抽出する商品候補抽出手段、
前記撮像手段により撮像された画像からその画像に含まれる文字列を認識する文字認識手段、及び、
前記文字認識手段により認識された文字列に基づいて前記商品候補抽出手段により抽出された商品の候補の中から認識対象の商品を確定する商品確定手段、
として機能させるための商品認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、商品認識装置及び商品認識プログラムに関する。
【背景技術】
【０００２】
対象となる物品（オブジェクト）を撮像部で撮像した画像データから当該物品の特徴量を検出し、認識辞書ファイルに登録された特徴量データと照合して類似度を算出し、この類似度に応じて当該物品の種別等を認識する技術がある。このような画像中に含まれる物品を認識する技術は、一般物体認識（generic object recognition）と呼ばれる。この一般物体認識の技術については、下記の文献において各種認識技術が解説されている。
【０００３】
柳井  啓司，“一般物体認識の現状と今後”，情報処理学会論文誌，Ｖｏｌ．４８，Ｎｏ．ＳＩＧ１６［平成２２年８月１０日検索］，インターネット＜ URL: http://mm.cs.uec.ac.jp/IPSJ-TCVIM-Yanai.pdf ＞
また、画像をオブジェクト毎に領域分割することによって、一般物体認識を行う技術が、下記の文献において解説されている。  
Jamie Shottonら，“Semantic Texton Forests for Image Categorization and Segmentation”，［平成２２年８月１０日検索］，インターネット＜ URL: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.145.3036&rep=repl&type=pdf ＞
近年、例えば小売店の会計システム（ＰＯＳシステム）において、顧客が買い上げる商品、特に、野菜、果物等のようにバーコードが付されていない商品の認識装置に、一般物体認識の技術を適用することが提案されている。この提案では、認識対象商品の外観形状、色合い、模様、凹凸具合等の表面情報をパラメータで表わす特徴量データが認識辞書ファイルに保存される。商品認識装置は、撮像部で撮像された商品の画像データから当該商品の外観上の特徴量を検出し、この特徴量を認識辞書ファイルに登録されている各商品の特徴量データと照合する。そして商品認識装置は、特徴量が類似している商品を認識商品候補として出力する。
【０００４】
また、同じく会計システムにおいて、撮像部で撮像された物品の画像データから特定の文字列を認識する技術も既に知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１３４７３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
バーコードが付されていない商品の中には、調剤薬局で販売される医薬品（錠剤、粉薬、水薬等）も含まれる。そこで、この種の医薬品の認識に一般物体認識の技術を適用することも考えられる。しかし、医薬品の場合、薬効成分は異なるもの外観上は殆ど差がない品が存在する。このため、一般物体認識の技術だけでは誤認識を生じる可能性がある。
【０００７】
一方、医薬品には、薬効成分の違いにより異なる薬名が付けられる。そして薬名は、医薬品を包装するパッケージ等に印刷される。そこで、撮像部で撮像された医薬品の画像データからパッケージの薬名を認識して、医薬品を識別することも考えられる。しかし、医薬品には、新薬（先発医薬品）とジェネリック医薬品（後発医薬品）とがあり、両者は別商品として取扱われるものの薬名は同じである。このため、パッケージの薬名だけから医薬品を識別することも困難である。
【０００８】
本発明が解決しようとする課題は、例えば医薬品のように、外観上は差が殆どないが別の品名が付けられた商品、あるいは品名は同じだが外観上に差がある商品を、高い認識率を持って認識できる商品認識装置を提供しようとするものである。
【課題を解決するための手段】
【０００９】
一実施形態において、商品認識装置は、特徴量検出手段、商品候補抽出手段、文字認識手段及び商品確定手段を含む。特徴量検出手段は、撮像手段により撮像された画像からその画像に含まれる商品の外観特徴量を検出する。商品候補抽出手段は、前記特徴量検出手段により検出された外観特徴量のデータを、認識対象である商品毎にその商品の表面情報を表わす特徴量データが保存される認識辞書ファイルの特徴量データと照合して、画像に含まれる商品の候補を抽出する。文字認識手段は、前記撮像手段により撮像された画像からその画像に含まれる文字列を認識する。商品確定手段は、前記文字認識手段により認識された文字列に基づいて、前記商品候補抽出手段により抽出された商品の候補の中から認識対象の商品を確定する。
【図面の簡単な説明】
【００１０】
【図１】一実施形態であるスキャナ装置の外観図。
【図２】同スキャナ装置の要部構成を示すブロック図。
【図３】同スキャナ装置の補助記憶部で保存される主要なデータファイルを示す図。
【図４】商品認識辞書ファイルに格納される商品別辞書データの構造を示す模式図。
【図５】同スキャナ装置のＲＡＭに形成される主要なメモリエリアを示す図。
【図６】第１の実施形態において、スキャナ装置のＣＰＵが商品認識プログラムに従って実行する情報処理の要部手順を示す流れ図。
【図７】第１の実施形態において、スキャナ装置の商品認識部が実行する情報処理の要部手順を示す流れ図。
【図８】第１の実施形態において、スキャナ装置の文字認識部が実行する情報処理の要部手順を示す流れ図。
【図９】錠剤医薬品を表面側から見た斜視図。
【図１０】錠剤医薬品を裏面側から見た斜視図。
【図１１】第２の実施形態において、スキャナ装置のＣＰＵが商品認識プログラムに従って実行する情報処理の要部手順を示す流れ図。
【図１２】第２の実施形態において、スキャナ装置の商品認識部が実行する情報処理の要部手順を示す流れ図。
【図１３】第２の実施形態において、スキャナ装置の文字認識部が実行する情報処理の要部手順を示す流れ図。
【発明を実施するための形態】
【００１１】
以下、商品認識装置に係る実施形態を、図面を用いて説明する。なお、本実施形態は、医薬品を取扱う調剤薬局のスキャナ装置１に、商品認識装置としての機能を持たせた場合である。
【００１２】
［第１の実施形態］
図１は、スキャナ装置１の外観図である。スキャナ装置１は、カウンタ２上に立設された薄型矩形形状のハウジング１１を本体とする。そして、このハウジング１１の頂部に、操作・表示部としてのタッチパネル１２が取り付けられている。
【００１３】
ハウジング１１には、撮像手段であるＣＣＤカメラ１３が内蔵されている。また、矩形状の読取窓１４がハウジング１１の正面に形成されている。ＣＣＤカメラ１３は、エリアイメージセンサであるＣＣＤ（Charge Coupled Device）撮像素子及びその駆動回路と、撮像領域の画像をＣＣＤ撮像素子に結像させるための撮像レンズとを備えている。撮像領域とは、読取窓１４から撮像レンズを通してＣＣＤ撮像素子のエリアに結像するフレーム画像の領域を指す。ＣＣＤカメラ１３は、撮像レンズを通ってＣＣＤ撮像素子に結像した撮像領域の画像を出力する。
【００１４】
図２は、スキャナ装置１の要部構成を示すブロック図である。スキャナ装置１は、主制御部を構成するＣＰＵ（Central Processing Unit）２１と、主記憶部を構成するＲＯＭ（Read Only Memory）２２及びＲＡＭ（Random Access Memory）２３とを備えたコンピュータ機器である。ＣＰＵ２１と、ＲＯＭ２２及びＲＡＭ２３とは、アドレスバス，データバス等のバスラインＢＬで接続されている。さらに、補助記憶部２４、通信インターフェース２５、カメラコントローラ２６、タッチパネルコントローラ２７、商品認識部２８及び文字認識部２９が、上記バスラインＢＬに接続されている。
【００１５】
補助記憶部２４は、例えばＨＤＤ（Hard Disk Drive）装置またはＳＳＤ（Solid State Drive）装置であって、種々のプログラムの他、図３に示すように、商品認識辞書ファイル３１や文字認識辞書ファイル３２等のデータファイルを保存する。
【００１６】
商品認識辞書ファイル３１は、認識対象である商品毎に、その商品の識別情報と関連付けて、その商品の外観形状、色合い、模様、凹凸具合等の表面情報をパラメータで表わす特徴量データを保存する。文字認識辞書ファイル３２は、認識対象となる文字列毎に、その文字列の特徴をデータ化した文字列特徴データを保存する。認識対象となる文字列には、認識対象である商品の商品名が含まれる。
【００１７】
通信インターフェース２５は、通信回線を介して接続される電子機器、例えばＰＯＳ（Point Of Sales）端末との間でデータ通信を行う。カメラコントローラ２６は、ＣＣＤカメラ１３を駆動し、このＣＣＤカメラ１３で撮影された画像データを取り込む。タッチパネルコントローラ２７は、タッチパネル１２の画面に画像を表示させる。またタッチパネルコントローラ２７は、画面上に重ねられたタッチセンサの信号により、画面上のタッチ位置座標を検出する。
【００１８】
商品認識部２８は、ＣＰＵ２１の制御下で実行されるプログラムに従い、ＣＣＤカメラ１３で撮影された画像データからこの撮影画像に含まれる商品の外観特徴量を検出し、商品認識辞書ファイル３１の特徴量データと照合することによって、撮影画像に含まれる商品を認識する。文字認識部２９は、ＣＰＵ２１の制御下で実行されるプログラムに従い、ＣＣＤカメラ１３で撮影された画像データからこの撮影画像に含まれる各文字の特徴を検出し、文字認識辞書ファイル３２の文字列特徴データと照合することによって、撮影画像に含まれる文字列を認識する。
【００１９】
図４は、商品認識辞書ファイル３１に保存される商品別辞書データの構造を示す模式図である。図４に示すように、商品認識辞書ファイル３１には、認識対象である商品毎に、その商品を識別する商品ＩＤ及び商品名と関連付けて、文字認識フラグＦと、複数の特徴量データとが保存される。文字認識フラグＦは、対応する商品ＩＤで識別される商品が文字認識を必要とする場合に“１”にセットされ、文字認識を必要としない場合に“０”にリセットされる。例えば、医薬品のように、外観上は差が殆どないが別の品名が付けられた商品については、文字認識が必要なので、文字認識フラグｆは“１”にセットされる。ここに、商品認識辞書ファイル３１は、認識対象である商品毎に、当該商品が文字認識を必要とするか否かを識別するためのフラグを記憶するフラグ記憶手段として作用する。
【００２０】
特徴量データは、対応する商品ＩＤで識別される商品の表面情報（外観形状、色合い、模様、凹凸具合等）である外観上の特徴量を複数ビット列のパラメータで表わしたもので、１つの商品に対し、その商品を様々な方向から見たときの特徴量データ１〜Ｎがそれぞれ保存される。なお、１つの商品に対する特徴量データの数Ｎは、固定ではない。また、特徴量データの数Ｎは商品によって異なる。
【００２１】
図５は、ＲＡＭ２３に形成される主要なメモリエリアを示す模式図である。図示するようにスキャナ装置１は、画像データメモリ５１、辞書データメモリ５２、類似度判定テーブル５３、及び、一致率判定テーブル５４をＲＡＭ２３に形成する。画像データメモリ５１は、ＣＣＤカメラ１３によって撮影された撮像領域のフレーム画像を一時的に格納する。辞書データメモリ５２は、商品認識辞書ファイル３１から読み出した商品別辞書データを一時的に格納する。類似度判定テーブル５３は、商品ＩＤ、商品名、文字認識フラグＦ及び類似度の各項目データを１レコードとして、複数のレコードを格納する。一致率判定テーブル５４は、文字列、商品名及び一致率の各項目データを１レコードとして、複数のレコードを格納する。
【００２２】
図６は、プログラム記憶部であるＲＯＭ２２または補助記憶部２４で記憶される商品認識プログラムに従い、ＣＰＵ２１が実行する情報処理の要部手順を示す流れ図である。すなわち商品認識プログラムが起動すると、ＣＰＵ２１は、カメラコントローラ２６に対して撮像オン信号を出力する（ＳＴ１）。この撮像オン信号により、カメラコントローラ２６は、ＣＣＤカメラ１３を起動する。これにより、ＣＣＤカメラ１３は、撮像領域の撮影を開始する。ＣＣＤカメラ１３によって撮影された撮像領域のフレーム画像は、カメラコントローラ２６により順次取り込まれ、画像バッファに保存される。
【００２３】
撮像オン信号を出力した後、ＣＰＵ２１は、商品認識部２８に対して商品認識処理の実行を指令する（ＳＴ２）。この指令を受けて、商品認識部２８は、図７の流れ図によって示される手順の商品認識処理を開始する。
【００２４】
先ず、商品認識部２８は、画像バッファから撮像領域のフレーム画像を取込む。そして商品認識部２８は、このフレーム画像のデータを画像データメモリ５１に書き込む（ＳＴ２１）。
【００２５】
次に、商品認識部２８は、画像データメモリ５１に格納されたフレーム画像に商品画像が含まれているか否かを確認する（ＳＴ２２）。具体的には、商品認識部２８は、フレーム画像を二値化した画像から輪郭線等を抽出する。そして商品認識部２８は、フレーム画像に映し出されている物体の輪郭抽出を試みる。物体の輪郭が抽出されると、商品認識部２８は、その輪郭内を商品画像とみなす。
【００２６】
フレーム画像に商品画像が含まれていない場合（ＳＴ２２にてＮＯ）、商品認識部２８は、画像バッファから新たなフレーム画像を取込み、画像データメモリ５１に上書きする（ＳＴ２１）。そして商品認識部２８は、画像データメモリ５１に格納されたフレーム画像に商品画像が含まれているか否かを確認する（ＳＴ２２）。
【００２７】
フレーム画像に商品画像が含まれている場合（ＳＴ２２にてＹＥＳ）、商品認識部２８は、その商品とみなされた輪郭内の画像から商品の形状、表面の色合い、模様、凹凸状況等の外観上の特徴量（外観特徴量）を検出する（ＳＴ２３：特徴量検出手段）。
【００２８】
外観特徴量を検出し終えると、商品認識部２８は、商品認識辞書ファイル３１を検索する（ＳＴ２４）。そして商品認識部２８は、商品認識辞書ファイル３１から未処理の商品別辞書データ（商品ＩＤ、商品名、文字認識フラグＦ、複数の特徴量データ）を取込み、辞書データメモリ５２に書き込む（ＳＴ２５）。
【００２９】
商品認識部２８は、ステップＳＴ２３の処理で検出された外観特徴量のデータが、辞書データメモリ５２に書き込まれた商品別辞書データの特徴量データに対してどの程度類似しているかを示す類似度を算出する（ＳＴ２６）。類似度は、値が大きいほど類似率が高いと言える。本実施形態では、類似度の上限値を“１００”とする。なお、類似度は、撮像手段（本実施形態ではＣＣＤカメラ１３）で撮像した画像の特徴量と辞書に記憶されている特徴遼とを基に得られる値であればよい。例えば、一致する度合を示す一致度（一致率）やどの程度相関するかを示す相関値等を含む。
【００３０】
類似度が算出されると、商品認識部２８は、当該類似度が所定の基準閾値Ｋより高いか否かを確認する（ＳＴ２７）。基準閾値Ｋは、登録商品候補として残すべき商品の類似度の下限値である。前述したように類似度の上限値を“１００”とした場合、基準閾値Ｋは、例えばその１／５の“２０”と設定する。
【００３１】
類似度が基準閾値Ｋ以下の場合（ＳＴ２７にてＮＯ）、辞書データメモリ５２に書き込まれた商品別辞書データを有する商品は登録商品候補として残す商品ではない。この場合、商品認識部２８は、ステップＳＴ２９の処理に進む。
【００３２】
類似度が基準閾値Ｋより高いレベルにある場合（ＳＴ２７にてＹＥＳ）、辞書データメモリ５２に書き込まれた商品別辞書データを有する商品は登録商品候補として残す商品である。この場合、商品認識部２８は、辞書データメモリ５２内の商品ＩＤ、商品名及び文字認識フラグＦと、ステップＳＴ２６の処理で算出された類似度とを、登録商品候補のレコードとして類似度判定テーブル５３に追加する（ＳＴ２８：商品候補抽出手段）。しかる後、商品認識部２８は、ステップＳＴ２９の処理に進む。
【００３３】
ステップＳＴ２９では、商品認識部２８は、商品認識辞書ファイル３１に未処理の商品別辞書データが存在するか否かを確認する。存在する場合（ＳＴ２９にてＹＥＳ）、商品認識部２８は、ステップＳＴ２５の処理に戻る。すなわち商品認識部２８は、商品認識辞書ファイル３１から未処理の商品別辞書データを取り込んで辞書データメモリ５２に上書きした後、前記ステップＳＴ２６〜ＳＴ２８の処理を実行する。
【００３４】
こうして、商品認識辞書ファイル３１に保存されている全ての商品別辞書データについて、前記ステップＳＴ２５〜ＳＴ２８の処理が実行されると（ＳＴ２９にてＮＯ）、商品認識部２８は、商品認識処理の終了をＣＰＵ２１に通知する。
【００３５】
ＣＰＵ２１は、商品認識処理終了の通知を待機する（ＳＴ３）。商品認識処理終了の通知を受けると（ＳＴ３にてＹＥＳ）、ＣＰＵ２１は、類似度判定テーブル５３に格納された登録商品候補の類似度の中に、確定閾値Ａを超える類似度が１つだけ存在するか否かを確認する（ＳＴ４）。確定閾値Ａは、商品認識処理により登録商品候補として抽出された商品が、画像データメモリ５１内の画像データに含まれる商品として確定してよい類似度の値であり、前述したように類似度の上限値を“１００”とした場合、この上限値に比較的近い値、たとえば“７５”と設定する。
【００３６】
登録商品候補の中で類似度が確定閾値Ａを超える商品が１品のみ存在する場合（ＳＴ４にてＹＥＳ）、この商品が登録商品として確定される。ＣＰＵ２１は、確定された商品の商品名等をタッチパネル１２に表示させる（ＳＴ１４）。
【００３７】
類似度が確定閾値Ａを超える商品が存在しない場合、あるいは２品目以上存在する場合には（ＳＴ４にてＮＯ）、登録商品は確定されない。この場合、ＣＰＵ２１は、類似度判定テーブル５３を参照して、文字認識処理が必要であるか否かを判定する（ＳＴ５：判定手段）。
【００３８】
類似度判定テーブル５３に文字認識フラグＦが“１”にセットされているレコードが１つでも存在する場合、文字認識処理が必要である。これに対し、文字認識フラグＦが“１”にセットされているレコードが１つも存在しない場合には、文字認識処理は不要である。文字認識処理が不要な場合（ＳＴ５にてＮＯ）、ＣＰＵ２１は、商品認識処理によって認識された登録商品候補の中から登録商品を確定させる処理に移行する。
【００３９】
文字認識処理が必要な場合（ＳＴ５にてＹＥＳ）、ＣＰＵ２１は、文字認識部２９に対して文字認識処理の実行を指令する（ＳＴ６）。この指令を受けて、文字認識部２９は、図８の流れ図によって示される手順の文字認識処理を開始する。
【００４０】
先ず、文字認識部２９は、画像データメモリ５１内のフレーム画像から、文字が含まれる領域を切り出す（ＳＴ３１）。そして文字認識部２９は、文字領域毎に文字の特徴を検出し、文字認識辞書ファイル３２に登録されている文字列特徴データと照合して、文字領域内の文字列を認識する（ＳＴ３２：文字認識手段）。
【００４１】
文字認識部２９は、文字列を認識できたか否かを判定する（ＳＴ３３）。文字列を１つも認識できない場合（ＳＴ３３にてＮＯ）、文字認識部２９は、文字認識処理の終了をＣＰＵ２１に通知する。
【００４２】
少なくとも１つの文字列を認識できた場合（ＳＴ３３にてＹＥＳ）、文字認識部２９は、認識した全ての文字列を一致率判定テーブル５４の文字列エリアに順に格納する（ＳＴ３４）。しかる後、文字認識部２９は、文字認識処理の終了をＣＰＵ２１に通知する。
【００４３】
ＣＰＵ２１は、文字認識処理終了の通知を待機する（ＳＴ７）。文字認識処理終了の通知を受けると（ＳＴ７にてＹＥＳ）、ＣＰＵ２１は、一致率判定テーブル５４の文字列エリアに文字列のデータが格納されているか否かを確認する（ＳＴ８）。文字列データが格納されていない場合（ＳＴ８にてＮＯ）、ＣＰＵ２１は、商品名が印刷されている面を読取窓１４にかざすことを指示するメッセージをタッチパネル１２に表示させて、ユーザに報知する（ＳＴ９：報知手段）。しかる後、ＣＰＵ２１は、ステップＳＴ２の商品認識処理を再度実行する。
【００４４】
一致率判定テーブル５４の文字列エリアに文字列データが格納されている場合（ＳＴ８にてＹＥＳ）、ＣＰＵ２１は、その文字列毎に、類似度判定テーブル５３に格納されている登録商品候補の商品名との一致率を算出する。そしてＣＰＵ２１は、文字列毎に一致率が最大となる商品名を探し出し、その商品名と一致率とを、当該文字列と関連付けて一致率判定テーブル５４に格納する（ＳＴ１０）。
【００４５】
しかる後、ＣＰＵ２１は、一致率判定テーブル５４から最大一致率を検出する。そしてＣＰＵ２１は、最大一致率が有効閾値Ｂを越えるか否かを確認する（ＳＴ１１）。有効閾値Ｂは、対応する文字列が商品名の一部を欠いたものであっても当該商品名として確定してよい一致率の値であり、たとえば“７５”とする。
【００４６】
最大一致率が有効閾値Ｂを超えない場合（ＳＴ１１にてＮＯ）、商品名は確定されない。この場合、ＣＰＵ２１は、ステップＳＴ２の商品認識処理を再度実行する。
【００４７】
最大一致率が有効閾値Ｂを超える場合（ＳＴ１１にてＹＥＳ）、この最大一致率に対応して一致率判定テーブル５４に格納されている商品名が、画像データメモリ５１内のフレーム画像から認識された文字列から推測される商品名として確定される。この場合、ＣＰＵ２１は、一致率判定テーブル５４から最大一致率に対応する商品名を選択する（ＳＴ１２）。そしてＣＰＵ２１は、この商品名で類似度判定テーブル５３を検索して、当該商品名に対応する類似度が準確定閾値Ｃを越えるか否かを確認する（ＳＴ１３）。準確定閾値Ｃは、商品認識処理により登録商品候補として抽出された商品が、文字認識処理により認識された商品名を踏まえて画像データメモリ５１内の画像データに含まれる商品として確定してよい類似度の値であり、確定閾値Ａより低い値、例えば“５０”とする。
【００４８】
一致率判定テーブル５４から選択された商品名の商品に対する類似度が準確定閾値Ｃを超えない場合（ＳＴ１３にてＮＯ）、登録商品は当該商品名の商品として確定されない。この場合、ＣＰＵ２１は、ステップＳＴ２の商品認識処理を再度実行する。
【００４９】
一致率判定テーブル５４から選択された商品名の商品に対する類似度が準確定閾値Ｃを超える場合（ＳＴ１３にてＹＥＳ）、登録商品は当該商品名の商品として確定される。ＣＰＵ２１は、確定された商品の商品名等をタッチパネル１２に表示させる（ＳＴ１４）。
【００５０】
図９は、スキャナ装置１で認識する商品の一例である錠剤医薬品６０を表面側から見た斜視図であり、図１０は、同錠剤医薬品６０を裏面側から見た斜視図である。この医薬品６０は、裏面側に薬品名「ＡＢＣＤＥ」が印刷されている。ただし、薬品名「ＡＢＣＤＥ」は。アトランダムに印刷されているため、図１０に示すように、薬品名「ＡＢＣＤＥ」の一部が欠損した文字列「ＣＤＥ」，「ＡＢ」，「ＤＥ」，「ＡＢＣ」も存在する。
【００５１】
商品認識辞書ファイル３１には、当該医薬品６０に関する辞書データとして、当該医薬品６０を表面側及び裏面側を様々な角度から見たときの特徴量データ１〜Ｎが保存されている。また、文字認識フラグＦは、“１”にセットされている。
【００５２】
今、ユーザが錠剤医薬品６０の表面側をスキャナ装置１の読取窓１４にかざしたとする。そうすると、スキャナ装置１では、錠剤医薬品６０の表面の画像で商品認識処理が実行される。その結果、類似度が確定閾値Ａを超える登録商品候補が錠剤医薬品６０を含めて２品目以上あったとする。この場合、スキャナ装置１では、登録商品が確定されない。
【００５３】
登録商品候補には、文字認識フラグＦが“１”にセットされている錠剤医薬品６０が含まれている。したがって、スキャナ装置１では、続いて文字認識処理が実行される。ただし、錠剤医薬品６０の表面の画像からは文字を認識できない。このため、商品名が印刷されている面を読取窓１４にかざすことを指示するメッセージがタッチパネル１２に表示される。
【００５４】
そこでユーザは、錠剤医薬品６０の裏面側をスキャナ装置１の読取窓１４にかざす。これにより、スキャナ装置１では、錠剤医薬品６０の裏面の画像で商品認識処理が実行される。その結果、再び、類似度が確定閾値Ａを超える登録商品候補が錠剤医薬品６０を含めて２品目以上あったとする。この場合も、スキャナ装置１では、登録商品が確定されない。
【００５５】
登録商品候補には、文字認識フラグＦが“１”にセットされている錠剤医薬品６０が含まれている。したがって、スキャナ装置１では、続いて文字認識処理が実行される。今回は、文字列「ＣＤＥ」，「ＡＢ」，「ＤＥ」，「ＡＢＣ」，「ＡＢＣＤＥ」が認識される。このとき、類似度判定テーブル５３には、錠剤医薬品６０のデータ、つまり薬品名「ＡＢＣＤＥ」含むデータが登録されている。なお、薬品名「ＡＢＣＤＥ」の一部が欠損した文字列「ＣＤＥ」，「ＡＢ」，「ＤＥ」，「ＡＢＣ」と完全に一致する商品名は他に存在しないと仮定する。この場合、文字列「ＣＤＥ」と「ＡＢＣ」は薬品名「ＡＢＣＤＥ」に対して一致率が６０％であり、文字列「ＡＢ」と「ＤＥ」は一致率が４０％であり、文字列「ＡＢＣＤＥ」は一致率が１００％である。したがって、最大一致率は１００％であり、有効閾値Ｂを超えるので、スキャナ装置１では、薬品名「ＡＢＣＤＥ」が選択される。そして、この薬品名「ＡＢＣＤＥ」を含むレコードの類似度は確定閾値Ａより高い、つまりは準確定閾値Ｃよりも高いので、スキャナ装置１では、薬品名「ＡＢＣＤＥ」の錠剤医薬品６０が登録商品として確定される。
【００５６】
このように本実施形態によれば、商品認識処理と文字認識処理とを併用することで、例えば医薬品のように外観上は差が殆どない商品が認識対象商品として複数含まれている場合でも、高い認識率をもって登録商品を確定することができる。また、品名が同じであっても、外観上に差があれば、高い認識率をもって登録商品を確定することができる。
【００５７】
［第２の実施形態］
第１の実施形態では、図６に示すように、商品認識処理を先に行い、文字認識処理を後から実行した。この点に関して、先に文字認識処理を実行し、後から商品認識処理を実行しても、同様な作用効果を奏することとなる。
【００５８】
以下、先に文字認識処理を実行し、後から商品認識処理を実行する第２の実施形態について、図１１〜図１３を用いて説明する。なお、第２の実施形態においても、第１の実施形態と同様に、医薬品を取扱う調剤薬局のスキャナ装置１に、商品認識装置としての機能を持たせた場合であり、スキャナ装置１の構成及び商品認識辞書ファイル３１，文字認識辞書ファイル３２のデータ構造は第１の実施形態と共通なので、同一符号を付し、詳しい説明は省略する。
【００５９】
図１１は、第２の実施形態において、商品認識プログラムに従いＣＰＵ２１が実行する情報処理の要部手順を示す流れ図である。すなわち商品認識プログラムが起動すると、ＣＰＵ２１は、カメラコントローラ２６に対して撮像オン信号を出力する（ＳＴ４１）。次いで、ＣＰＵ２１は、文字認識部２９に対して文字認識処理の実行を指令する（ＳＴ４２）。この指令を受けて、文字認識部２９は、図１２の流れ図によって示される手順の文字認識処理を開始する。
【００６０】
先ず、文字認識部２９は、画像バッファから撮像領域のフレーム画像を取込む。そして文字認識部２９は、このフレーム画像のデータを画像データメモリ５１に書き込む（ＳＴ６１）。次いで、文字認識部２９は、文字認識部２９は、画像データメモリ５１内のフレーム画像から、文字が含まれる領域を切り出す（ＳＴ６２）。そして文字認識部２９は、文字領域毎に文字の特徴を検出し、文字認識辞書ファイル３２に登録されている文字列特徴データと照合して、文字領域内の文字列を認識する（ＳＴ６３：文字認識手段）。
【００６１】
文字認識部２９は、文字列を認識できたか否かを判定する（ＳＴ６４）。文字列を１つも認識できない場合（ＳＴ６４にてＮＯ）、文字認識部２９は、文字認識処理の終了をＣＰＵ２１に通知する。
【００６２】
少なくとも１つの文字列を認識できた場合（ＳＴ６４にてＹＥＳ）、文字認識部２９は、認識した全ての文字列を一致率判定テーブル５４の文字列エリアに順に格納する（ＳＴ６５）。しかる後、文字認識部２９は、文字認識処理の終了をＣＰＵ２１に通知する。
【００６３】
ＣＰＵ２１は、文字認識処理終了の通知を待機する（ＳＴ４３）。文字認識処理終了の通知を受けると（ＳＴ４３にてＹＥＳ）、ＣＰＵ２１は、商品認識部２８に対して商品認識処理の実行を指令する（ＳＴ４４）。この指令を受けて、商品認識部２８は、図１３の流れ図によって示されるステップＳＴ７１〜ＳＴ７８までの手順の商品認識処理を開始する。この商品認識処理は、第１の実施形態におけるステップＳＴ２２〜ＳＴ２９までの手順の商品認識処理と同一である。すなわち商品認識部２８は、画像データメモリ５１に格納されたフレーム画像から商品画像が抽出されると（ＳＴ７１のＹＥＳ）、その商品とみなされた輪郭内の画像から商品の形状、表面の色合い、模様、凹凸状況等の外観上の特徴量（外観特徴量）を検出する（ＳＴ７２：特徴量検出手段）。次いで、商品認識部２８は、外観特徴量のデータが商品認識辞書ファイル３１に保存されている商品別辞書データの特徴量データに対してどの程度類似しているかを示す類似度を商品毎に算出し（ＳＴ７３〜ＳＴ７５）、類似度が基準閾値Ｋより高いレベルにある商品の商品ＩＤ、商品名、文字認識フラグＦ及び類似度を、登録商品候補のレコードとして類似度判定テーブル５３に追加する（ＳＴ７６，ＳＴ７７：商品候補抽出手段）。
【００６４】
こうして、全ての商品別辞書データについて前記ステップＳＴ７４〜ＳＴ７７の処理が実行されると（ＳＴ７８にてＮＯ）、商品認識部２８は、商品認識処理の終了をＣＰＵ２１に通知する。
【００６５】
ＣＰＵ２１は、商品認識処理終了の通知を待機する（ＳＴ４５）。商品認識処理終了の通知を受けると（ＳＴ４５にてＹＥＳ）、ＣＰＵ２１は、類似度判定テーブル５３に格納された登録商品候補の類似度の中に、確定閾値Ａを超える類似度が１つだけ存在するか否かを確認する（ＳＴ４６）。
【００６６】
登録商品候補の中で類似度が確定閾値Ａを超える商品が１品のみ存在する場合（ＳＴ４６にてＹＥＳ）、この商品が登録商品として確定される。ＣＰＵ２１は、確定された商品の商品名等をタッチパネル１２に表示させる（ＳＴ５４）。
【００６７】
類似度が確定閾値Ａを超える商品が存在しない場合、あるいは２品以上存在する場合には（ＳＴ４６にてＮＯ）、登録商品は確定されない。この場合、ＣＰＵ２１は、類似度判定テーブル５３を参照して、文字認識処理が必要であるか否かを判定する（ＳＴ４７：判定手段）。文字認識処理が不要な場合（ＳＴ４７にてＮＯ）、ＣＰＵ２１は、商品認識処理によって認識された登録商品候補の中から登録商品を確定させる処理に移行する。
【００６８】
文字認識処理が必要な場合（ＳＴ４７にてＹＥＳ）、ＣＰＵ２１は、一致率判定テーブル５４の文字列エリアに文字列のデータが格納されているか否かを確認する（ＳＴ４８）。文字列データが格納されていない場合（ＳＴ４８にてＮＯ）、ＣＰＵ２１は、商品名が印刷されている面を読取窓１４にかざすことを指示するメッセージをタッチパネル１２に表示させて、ユーザに報知する（ＳＴ４９：報知手段）。しかる後、ＣＰＵ２１は、ステップＳＴ４２の商品認識処理を再度実行する。
【００６９】
一致率判定テーブル５４の文字列エリアに文字列データが格納されている場合（ＳＴ４８にてＹＥＳ）、ＣＰＵ２１は、その文字列毎に、類似度判定テーブル５３に格納されている登録商品候補の商品名との一致率を算出する。そしてＣＰＵ２１は、文字列毎に一致率が最大となる商品名を探し出し、その商品名と一致率とを、当該文字列と関連付けて一致率判定テーブル５４に格納する（ＳＴ５０）。
【００７０】
しかる後、ＣＰＵ２１は、一致率判定テーブル５４から最大一致率を検出する。そしてＣＰＵ２１は、最大一致率が有効閾値Ｂを越えるか否かを確認する（ＳＴ５１）。最大一致率が有効閾値Ｂを超えない場合（ＳＴ５１にてＮＯ）、ＣＰＵ２１は、ステップＳＴ４２の商品認識処理を再度実行する。
【００７１】
最大一致率が有効閾値Ｂを超える場合（ＳＴ５１にてＹＥＳ）、ＣＰＵ２１は、一致率判定テーブル５４から最大一致率に対応する商品名を選択する（ＳＴ５２）。そしてＣＰＵ２１は、この商品名で類似度判定テーブル５３を検索して、当該商品名に対応する類似度が準確定閾値Ｃを越えるか否かを確認する（ＳＴ５３）。類似度が準確定閾値Ｃを超えない場合（ＳＴ５３にてＮＯ）、ＣＰＵ２１は、ステップＳＴ４２の商品認識処理を再度実行する。
【００７２】
一致率判定テーブル５４から選択された商品名の商品に対する類似度が準確定閾値Ｃを超える場合（ＳＴ５３にてＹＥＳ）、登録商品は当該商品名の商品として確定される。ＣＰＵ２１は、確定された商品の商品名等をタッチパネル１２に表示させる（ＳＴ５４）。
【００７３】
このような手順の第２の実施形態においても、第１の実施形態と同様の効果を奏することができる。ただし、第２の実施形態では、文字認識処理が必ず実行されるが、第１の実施形態では、文字認識フラグＦの状態によって文字認識が必要と確認されたときだけ文字認識処理が実行されるので、第１の実施形態の方が第２の実施形態よりも処理負荷が小さいという効果は奏する。
【００７４】
なお、本発明は、前記実施形態に限定されるものではない。  
例えば前記実施形態では、文字認識処理により認識する文字列を商品名としたが、商品名以外、例えば製造メーカ名を認識するようにしてもよい。また、前記実施形態において例示された確定閾値Ａ、有効閾値Ｂ、準確定閾値Ｃ及び基準閾値Ｋの値については、実施形態の値に限定されるものではなく、用途に応じて適切な値が設定されるのは言うまでもないことである。
【００７５】
また、本実施形態の読取対象は、医薬品を例に説明を行ったがこれに限定されるものではない。例えば、個別包装された食品（例えば、飴などの菓子等）や、個別包装された日用品（例えば、電池等）、あるいはネジ、ボルト等の工業用品等を読取対象とするものであってもよい。
【００７６】
また、前記実施形態は、単体のスキャナ装置１に商品認識装置としての機能を持たせた場合を示したが、スキャナ装置１とＰＯＳ端末とを接続してなる会計システムに商品認識装置としての機能を持たせてもよい。この場合、商品認識辞書ファイル３１及び文字認識辞書ファイル３２は、スキャナ装置１側でなくＰＯＳ端末側に設けられていてもよい。あるいは、ＰＯＳ端末の上位サーバであるストアサーバ等に上記辞書ファイルが備えられていてもよい。
【００７７】
なお、前記実施形態は、装置内部のプログラム記憶部に発明の機能を実現させる制御プログラムが予め記録されているものとした。しかしこれに限らず、同様のプログラムがネットワークから装置にダウンロードされてもよい。あるいは、記録媒体に記録された同様のプログラムが、装置にインストールされてもよい。記録媒体は、ＣＤ−ＲＯＭ，メモリカード等のようにプログラムを記憶でき、かつ装置が読み取り可能であれば、その形態は問わない。また、プログラムのインストールやダウンロードにより得る機能は、装置内部のＯＳ（オペレーティング・システム）等と協働してその機能を実現させるものであってもよい。また、本実施形態のプログラムを、通信機能を有する携帯電話やいわゆるＰＤＡのような携帯情報端末に組み込んで、その機能を実現させるものであってもよい。
【００７８】
この他、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７９】
１…スキャナ装置、１２…タッチパネル、１３…ＣＣＤカメラ、２１…ＣＰＵ、２８…商品認識部、２９…文字認識部、３１…商品認識辞書ファイル、３２…文字認識辞書ファイル、５１…画像データメモリ、５２…辞書データメモリ、５３…類似度判定テーブル、５４…一致率判定テーブル。
【図１】
2014049015.tif 000003
【図２】
2014049015.tif 000004
【図３】
2014049015.tif 000005
【図４】
2014049015.tif 000006
【図５】
2014049015.tif 000007
【図６】
2014049015.tif 000008
【図７】
2014049015.tif 000009
【図８】
2014049015.tif 000010
【図９】
2014049015.tif 000011
【図１０】
2014049015.tif 000012
【図１１】
2014049015.tif 000013
【図１２】
2014049015.tif 000014
【図１３】
2014049015.tif 000015