(57)【要約】【課題】セグメントディスプレイに表示された文字の読み取り精度を向上できる、読取システム、読取方法、プログラム、記憶媒体、及び移動体を提供する。【解決手段】実施形態に係る読取システムは、処理装置を備える。前記処理装置は、抽出部と、細線化部と、設定部と、識別部と、を含む。前記抽出部は、入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出する。前記細線化部は、前記部分画像において、文字を示す画素の集合を細線化する。前記設定部は、前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定する。前記識別部は、前記複数の判定領域のそれぞれにおいて、細線化された前記集合に含まれる画素の数を検出し、検出結果に基づいて前記文字を識別する。【選択図】図１
2020086615.tif 000002
【特許請求の範囲】
【請求項１】
入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出する抽出部と、
前記部分画像において、文字を示す画素の集合を細線化する細線化部と、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定する設定部と、
前記複数の判定領域のそれぞれにおいて、細線化された前記集合に含まれる画素の数を検出し、検出結果に基づいて前記文字を識別する識別部と、
を含む処理装置を備えた読取システム。
【請求項２】
前記設定部は、前記部分画像のサイズに基づいて、前記複数の判定領域の位置を決定する請求項１記載の読取システム。
【請求項３】
入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出する抽出部と、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定し、前記複数の判定領域の位置は前記部分画像のサイズに基づいて決定される、設定部と、
前記複数の判定領域のそれぞれにおいて、文字を示す画素の数を判定し、判定結果に基づいて前記文字を識別する識別部と、
を含む処理装置を備えた読取システム。
【請求項４】
前記処理装置は、前記入力画像を前処理する前処理部をさらに含み、
前記前処理は、前記入力画像を二値化して第１色と第２色で表す二値化処理を含み、
前記抽出部は、前処理された前記入力画像から、前記第１色の画素の集合を含む部分を前記部分画像として抽出する請求項１〜３のいずれか１つに記載の読取システム。
【請求項５】
前記前処理は、
前記入力画像において、前記第１色の画素に隣接する画素を前記第１色に変更する処理と、
前記入力画像において、前記第２色の画素に隣接する画素を前記第２色に変更する処理と、
をさらに含む請求項４記載の読取システム。
【請求項６】
前記抽出部は、第１方向と、前記第１方向と交差する第２方向と、に配列された複数の画素からなる四角形の前記部分画像を抽出し、
前記設定部は、前記複数の判定領域の一部を前記第１方向に沿って並べ、前記複数の判定領域の別の一部を前記第２方向に沿って並べて設定する請求項１〜５のいずれか１つに記載の読取システム。
【請求項７】
前記複数の判定領域の数は、前記セグメントディスプレイにおいて１つの文字の表示に用いられる前記セグメントの数と同じである請求項６記載の読取システム。
【請求項８】
前記セグメントディスプレイを撮影し、前記入力画像を生成する撮像装置をさらに備えた請求項１〜７のいずれか１つに記載の読取システム。
【請求項９】
前記撮像装置が搭載され、所定の領域内を移動する移動体をさらに備えた請求項８記載の読取システム。
【請求項１０】
前記移動体は、無人搬送装置、ドローン、又はロボットである請求項９記載の読取システム。
【請求項１１】
前記移動体は、前記撮像装置により前記セグメントディスプレイを撮影可能な位置で減速又は停止し、
前記撮像装置は、前記移動体が減速又は停止している間に、前記セグメントディスプレイを撮影する請求項９又は１０に記載の読取システム。
【請求項１２】
固有の識別情報を有する識別体から前記識別情報を取得し、前記処理装置へ送信する取得部をさらに備え、
前記処理装置は、前記識別情報と識別された前記文字とを紐付ける紐付部をさらに含む請求項１〜８のいずれか１つに記載の読取システム。
【請求項１３】
前記セグメントディスプレイ及び前記識別体が設けられた所定の領域内を移動し、前記取得装置が搭載された移動体をさらに備えた請求項１２記載の読取システム。
【請求項１４】
出力装置をさらに備え、
前記処理装置は、識別して読み取った前記文字に基づく情報を前記出力装置へ送信し、
前記出力装置は、前記情報を出力する請求項１〜１３のいずれか１つに記載の読取システム。
【請求項１５】
入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出し、
前記部分画像において、文字を示す画素の集合を細線化し、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定し、
前記複数の判定領域のそれぞれにおいて、細線化された前記集合に含まれる画素の数を判定し、判定結果に基づいて前記文字を識別する読取方法。
【請求項１６】
前記複数の判定領域の位置は、前記部分画像のサイズに基づいて決定される請求項１４記載の読取方法。
【請求項１７】
入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出し、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定し、前記複数の判定領域の位置は前記部分画像のサイズに基づいて決定され、
前記複数の判定領域のそれぞれにおいて、文字を示す画素の数を判定し、判定結果に基づいて前記文字を識別する読取方法。
【請求項１８】
前記セグメントディスプレイが設けられた領域内に、撮像装置を搭載した移動体を移動させ、
前記撮像装置により前記セグメントディスプレイを撮影することで前記入力画像を取得する請求項１５〜１７のいずれか１つに記載の読取方法。
【請求項１９】
処理装置に、
入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出させ、
前記部分画像において、文字を示す画素の集合を細線化させ、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定させ、
前記複数の判定領域のそれぞれにおいて、細線化された前記集合に含まれる画素の数を判定させ、判定結果に基づいて前記文字を識別させる、
プログラム。
【請求項２０】
前記処理装置に、前記部分画像のサイズに基づいて前記複数の判定領域の位置を決定させる請求項１９記載のプログラム。
【請求項２１】
処理装置に、
入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出させ、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定させ、前記複数の判定領域の位置は前記部分画像のサイズに基づいて決定させ、
前記複数の判定領域のそれぞれにおいて、文字を示す画素の数を判定させ、判定結果に基づいて前記文字を識別させる、
プログラム。
【請求項２２】
請求項１９〜２１のいずれか１つに記載のプログラムを記憶した記憶媒体。
【請求項２３】
複数のセグメントを含むセグメントディスプレイが設けられた所定の領域内を移動し、撮像装置が搭載された移動体であって、
前記撮像装置により撮影された前記セグメントディスプレイの画像が入力される処理装置を備え、
前記処理装置は、
入力された画像から、前記セグメントディスプレイの文字が撮影された部分画像を抽出する抽出部と、
前記部分画像において、文字を示す画素の集合を細線化する細線化部と、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定する設定部と、
前記複数の判定領域のそれぞれにおいて、細線化された前記集合に含まれる画素の数を検出し、検出結果に基づいて前記文字を識別する識別部と、
を含む移動体。
【請求項２４】
複数のセグメントを含むセグメントディスプレイが設けられた所定の領域内を移動し、撮像装置が搭載された移動体であって、
前記撮像装置により撮影された前記セグメントディスプレイの画像が入力される処理装置を備え、
前記処理装置は、
入力された画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出する抽出部と、
前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定し、前記複数の判定領域の位置は前記部分画像のサイズに基づいて決定される、設定部と、
前記複数の判定領域のそれぞれにおいて、文字を示す画素の数を判定し、判定結果に基づいて前記文字を識別する識別部と、
を含む移動体。
【請求項２５】
前記移動体及び前記撮像装置を制御する制御装置をさらに備え、
前記撮像装置により前記セグメントディスプレイを撮影可能な位置に前記移動体が移動すると、前記制御装置は、前記撮像装置に前記セグメントディスプレイを撮影させる請求項２３又は２４に記載の移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、読取システム、読取方法、プログラム、記憶媒体、及び移動体に関する。
【背景技術】
【０００２】
セグメントディスプレイに表示された文字（例えば数字）を読み取るシステムがある。このシステムにおいて、文字の読み取りの精度は、高いことが望ましい。  
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１７７６５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、セグメントディスプレイに表示された文字の読み取り精度を向上できる、読取システム、読取方法、プログラム、記憶媒体、及び移動体を提供することである。
【課題を解決するための手段】
【０００５】
実施形態に係る読取システムは、処理装置を備える。前記処理装置は、抽出部と、細線化部と、設定部と、識別部と、を含む。前記抽出部は、入力画像から、複数のセグメントを含むセグメントディスプレイの文字が撮影された部分画像を抽出する。前記細線化部は、前記部分画像において、文字を示す画素の集合を細線化する。前記設定部は、前記複数のセグメントにそれぞれ対応する複数の判定領域を前記部分画像に設定する。前記識別部は、前記複数の判定領域のそれぞれにおいて、細線化された前記集合に含まれる画素の数を検出し、検出結果に基づいて前記文字を識別する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態に係る読取システムの構成を表すブロック図である。
【図２】第１実施形態に係る読取システムによる処理を例示する図である。
【図３】第１実施形態に係る読取システムによる処理を例示する図である。
【図４】判定結果の組み合わせと数字との対応を例示する表である。
【図５】第１実施形態に係る読取システムによる処理を例示する図である。
【図６】第１実施形態に係る読取システムによる処理を表すフローチャートである。
【図７】セグメントディスプレイ及び判定領域の設定を例示する模式図である。
【図８】第１実施形態の第１変形例に係る読取システムの構成を表すブロック図である。
【図９】第１実施形態の第２変形例に係る読取システムの構成を表すブロック図である。
【図１０】第２実施形態に係る読取システムの構成を表すブロック図である。
【図１１】第３実施形態に係る読取システムの構成を表すブロック図である。
【図１２】第３実施形態に係る読取システムの動作を説明する模式図である。
【発明を実施するための形態】
【０００７】
以下に、本発明の各実施形態について図面を参照しつつ説明する。本願明細書と各図において、既に説明したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
【０００８】
（第１実施形態）
図１は、第１実施形態に係る読取システムの構成を表すブロック図である。
実施形態に係る読取システムは、セグメントディスプレイが撮影された画像から、セグメントディスプレイに表示された文字を読み取るために用いられる。セグメントディスプレイでは、複数のセグメントにより１つの文字が表示される。複数のセグメントの少なくとも一部が発光し、残りのセグメントが消灯することで、文字が表示される。実施形態に係る読取システムは、この文字を画像から識別する。
【０００９】
読み取り対象のセグメントディスプレイに含まれるセグメントの数は、任意である。例えば、読み取り対象のセグメントディスプレイは、７つのセグメントにより１つの文字が表示される、いわゆる７セグメントディスプレイである。７セグメントディスプレイは、数を示す文字（数字）を表示する。アルファベットを表示する１４セグメントディスプレイ又は１６セグメントディスプレイが読み取り対象であっても良い。ここでは、主として、実施形態に係る読取システムにより、７セグメントディスプレイに表示された数字を読み取る場合について説明する。
【００１０】
図１に表したように、第１実施形態に係る読取システム１は、処理装置１０及び記憶装置２０を備える。処理装置１０は、例えば、受付部１１、前処理部１２、抽出部１３、細線化部１４、設定部１５、及び識別部１６を含む。
【００１１】
図２（ａ）〜図２（ｄ）、図３（ａ）、図３（ｂ）、図５（ａ）〜図５（ｅ）は、第１実施形態に係る読取システムによる処理を例示する図である。
図４は、判定結果の組み合わせと数字との対応を例示する表である。
第１実施形態に係る読み取りシステムによる処理について、図２〜図５を参照して説明する。
【００１２】
処理装置１０には、セグメントディスプレイが撮影された画像が入力される。受付部１１は、入力された画像を受け付ける。例えば、外部の撮像装置がセグメントディスプレイを撮影し、画像を生成する。撮像装置は、処理装置１０へ画像を送信する。又は、画像は、外部の記憶装置から処理装置１０へ送信されても良い。受付部１１は、処理装置１０へ送信された画像を受け付ける。画像には、セグメントディスプレイ以外のものが写っていても良い。ここでは、受付部１１が受け付けた画像を、入力画像と呼ぶ。
【００１３】
図２（ａ）は、処理装置１０に送信された入力画像Ａの一例である。図２（ａ）の例では、複数の数字がセグメントディスプレイに表示されている。それぞれの数字は、複数のセグメントにより表示されている。
【００１４】
前処理部１２は、セグメントディスプレイに表示された数字を識別する前に、入力画像に前処理を加える。前処理により、数字の識別の精度を向上させることができる。例えば、前処理部１２は、二値化部１２ａ、膨張処理部１２ｂ、及び収縮処理部１２ｃを含む。
【００１５】
二値化部１２ａは、入力画像を二値化する。二値化された入力画像は、互いに異なる２つの色（第１色と第２色）で表される。ここでは、第１色が白であり、第２色が黒である場合を説明する。
【００１６】
例えば、セグメントディスプレイの背景は、暗い色である。発光しているセグメントは、背景よりも明るい。このため、二値化された入力画像において、発光しているセグメントは、白色で表される。消灯しているセグメント及び背景は、黒色で表される。すなわち、二値化された入力画像では、白色の画素により数字が示される。
【００１７】
又は、液晶ディスプレイを用いたセグメントディスプレイでは、文字が背景よりも暗い色で表される。この場合、二値化された入力画像において、各画素の色を反転させる。反転させることで、上述した場合と同様に、白色の画素により数字が示される。以降では、発光しているセグメントが白色で表され、消灯しているセグメント及び背景が黒色で表される場合について説明する。
【００１８】
例えば、入力画像は、赤（Ｒｅｄ）と緑（Ｇｒｅｅｎ）と青（Ｂｌｕｅ）との３つの原色を用いて示されるＲＧＢカラーモデルとしてデータ化されている。二値化処理では、まず、この入力画像を、色相（Ｈｕｅ）と彩度（Ｓａｔｕｒａｔｉｏｎ）と輝度（Ｖａｌｕｅ）との三つの成分からなるＨＳＶ色空間で示すデータに変換する。次に、ＨＳＶ色空間のデータのヒストグラム解析を行う。続いて、各画素のヒストグラムに基づいて閾値を算出する。この閾値と各画素のヒストグラムに基づき、各画素を白色と黒色に二値化する。
【００１９】
膨張処理部１２ｂは、二値画像において、白色の画素を膨張させる。例えば、膨張処理部１２ｂは、白色画素に隣接する画素を白色に変更する。隣接する画素が元から白色の場合は、変更されない。例えば、ノイズ等の影響により、白色画素が集まった部分に黒色の画素が点在することがある。膨張処理により、点在する黒色画素が白色画素に変更される。これにより、ノイズ等の影響を低減し、数字の読み取り精度を向上させることができる。また、膨張処理により、近接する白色画素の集合同士を繋げることができる。近接する白色画素の集合同士が繋がることで、１つの数字に対応して１つの画素の集合が生成される。これにより、後述する部分画像の抽出が容易となる。
【００２０】
収縮処理部１２ｃは、二値画像において、白色画素を収縮させる。例えば、収縮処理部１２ｃは、黒色の画素に隣接する画素を黒色に変更する。隣接する画素が元から黒色の場合は、変更されない。収縮処理により、膨張した白色画素の数が減少する。
【００２１】
図２（ｂ）は、前処理（二値化、膨張処理、及び収縮処理）が行われた入力画像Ａの一例である。図２（ｂ）に表すように、これらの前処理により、各数字に対応した白色画素の集合が生成される。
【００２２】
前処理部１２は、上述した膨張処理及び収縮処理を、複数回実行しても良い。例えば、前処理部１２は、膨張処理を２回以上実行した後に、収縮処理を２回以上実行する。前処理部１２は、収縮処理を２回以上実行した後に、膨張処理を２回以上実行しても良い。例えば、膨張処理の実行回数と、収縮処理の実行回数は、同じに設定される。又は、膨張処理の実行回数が、収縮処理の実行回数と異なっていても良い。例えば、膨張処理の実行回数は、収縮処理の実行回数よりも多く設定される。
【００２３】
前処理部１２は、１回の膨張処理及び１回の収縮処理を含む処理セットを、複数回実行しても良い。１つの処理セットでは、膨張処理及び収縮処理の一方が実行された後、他方が実行される。１つの処理セットにおける膨張処理と収縮処理の順序が、別の処理セットにおける膨張処理と収縮処理の順序と異なっていても良い。
【００２４】
前処理部１２は、別の処理をさらに実行しても良い。例えば、入力画像にセグメントディスプレイ以外の物体が含まれる場合、前処理部１２は、入力画像からセグメントディスプレイが撮影された部分を切り出しても良い。入力画像が歪んでいる場合、前処理部１２は、歪みの補正を行っても良い。
【００２５】
前処理部１２は、処理された入力画像を抽出部１３へ出力する。抽出部１３は、入力画像から部分画像を抽出する。部分画像は、入力画像の一部であり、セグメントディスプレイの数字が撮影された部分を含む。
【００２６】
例えば、抽出部１３は、ラベリング処理部１３ａ及び切出部１３ｂを含む。前処理部１２から抽出部１３には、二値化された入力画像が出力される。ラベリング処理部１３ａは、白色画素の集合に、ラベル（値）を付与する。「白色画素の集合」とは、白色画素同士が互いに隣接し、１つの白色の塊となっている部分を言う。白色画素の集合において、ある白色画素は、少なくとも１つの白色画素に隣接している。１つの白色画素の集合は、セグメントディスプレイに表示された１つの数字に対応する。白色画素の集合が複数存在する場合、ラベリング処理部１３ａにより、それぞれの白色画素の集合にラベルが付与される。
【００２７】
切出部１３ｂは、入力画像から、ラベリングされた集合を含む部分を切り出す。切り出された部分が、部分画像となる。ラベリングされた集合が複数存在する場合、切出部１３ｂは、複数の部分画像を切り出す。複数の部分画像は、それぞれ複数のラベリングされた集合を含む。例えば、部分画像は、四角形である。部分画像は、第１方向と、第１方向と交差する第２方向と、に配列された複数の画素を含む。例えば、部分画像は、各辺が集合の外縁に接し、且つ面積（画素数）が最小となるように切り出される。
【００２８】
図２（ｃ）は、入力画像Ａと、切出部１３ｂにより切り出された部分画像Ｂ１〜Ｂ４と、を表す。部分画像Ｂ１〜Ｂ４のそれぞれの辺は、白色画素の集合の外縁に接する。このため、各部分画像の大きさは、集合の大きさに応じて変化する。
【００２９】
抽出部１３は、抽出した（切り出した）部分画像を、細線化部１４へ出力する。細線化部１４は、部分画像に細線化処理を行う。すなわち、細線化部１４は、部分画像に含まれる白色画素の集合に対して、線幅が１画素となるように処理する。
【００３０】
図２（ｄ）は、図２（ｃ）で表した部分画像Ｂ１〜Ｂ４を細線化した結果を表す。図２（ｃ）の状態では、部分画像の辺は、白色画素の集合の外縁に接していた。細線化が行われることで、白色画素の集合が、部分画像Ｂ１〜Ｂ４の辺から離れる。
【００３１】
細線化部１４は、前処理部１２から出力された二値画像を細線化しても良い。例えば、切出部１３ｂは、部分画像を切り出すと、その切り出した位置を保存する。細線化部１４は、細線化した二値画像を、抽出部１３へ出力する。切出部１３ｂは、細線化された二値画像の一部を、保存した切り出し位置で切り出す。これにより、図２（ｄ）に表した、細線化された部分画像が得られる。
【００３２】
設定部１５は、細線化された部分画像に、複数の判定領域を設定する。設定される判定領域の数は、１つの文字の表示に用いられるセグメントの数以上であれば良い。例えば、設定される判定領域の数は、１つの数字を表示するために用いられるセグメントの数と同じである。例えば、７セグメントディスプレイに表示された数字を読み取る場合、７つの判定領域が１つの部分画像に設定される。各判定領域の位置は、抽出された部分画像のサイズに基づいて決定される。例えば、記憶装置２０は、判定領域の設定位置に関する情報を記憶している。設定部１５は、記憶装置２０に記憶された情報と、部分画像のサイズと、に基づいて判定領域の位置を決定する。
【００３３】
図３（ａ）は、判定領域の設定方法を説明するための模式図である。図３（ａ）に表した部分画像Ｃは、複数の画素Ｐから構成される。部分画像Ｃには、判定領域ＤＲ１〜ＤＲ７が設定される。判定領域ＤＲ１及びＤＲ２は、第１方向Ｄ１に沿って並んでいる。判定領域ＤＲ３及びＤＲ４は、第１方向Ｄ１に沿って並んでいる。判定領域ＤＲ１及びＤＲ２は、判定領域ＤＲ３及びＤＲ４と第２方向Ｄ２において離れている。判定領域ＤＲ５〜ＤＲ７は、第２方向Ｄ２に沿って並んでいる。
【００３４】
図３（ａ）に表した判定領域ＤＲ５〜ＤＲ７のように、一部の判定領域の配列方向は、第２方向Ｄ２に平行ではなく、第２方向Ｄ２に対して傾いていても良い。例えば、一部の判定領域の配列方向と第２方向Ｄ２との間の角度は、０度よりも大きく２０度以下に設定される。同様に、別の一部の判定領域の配列方向が、第１方向Ｄ１に対して傾いていても良い。例えば、別の一部の判定領域の配列方向と第１方向Ｄ１との間の角度は、０度よりも大きく２０度以下に設定される。このような配列も、複数の判定領域が第１方向Ｄ１又は第２方向Ｄ２に沿って並ぶ場合に含まれる。
【００３５】
図３（ａ）に表した部分画像Ｃの第１方向Ｄ１における長さ（画素数）をＬ１とする。部分画像Ｂの第２方向Ｄ２における長さをＬ２とする。また、部分画像Ｃは、第１辺Ｓ１〜第４辺Ｓ４を有する。第１辺Ｓ１及び第２辺Ｓ２は、第１方向Ｄ１に平行である。第３辺Ｓ３及び第４辺Ｓ４は、第２方向Ｄ２に平行である。
【００３６】
例えば、判定領域ＤＲ１及びＤＲ２は、第１辺Ｓ１からＬ２／４離れた位置を基準に設定される。例えば、判定領域ＤＲ３及びＤＲ４は、第２辺Ｓ２からＬ２／４離れた位置を基準に設定される。例えば、判定領域ＤＲ５〜ＤＲ７は、第３辺Ｓ３と第４辺Ｓ４の中間位置を基準に設定される。例えば、判定領域ＤＲ５及びＤＲ７は、中間位置から第１方向Ｄ１にずれた位置に設定される。例えば、判定領域ＤＲ５〜ＤＲ７のそれぞれの第２方向Ｄ２における長さは、Ｌ２／３に設定される。これらの基準となる位置に関する情報は、例えば記憶装置２０に記憶される。また、判定領域は、別の判定領域と重ならないように設定される。各判定領域には、基準となる位置の画素Ｐと、その周囲の画素Ｐと、が含まれる。各判定領域のサイズは、例えば、部分画像Ｃのサイズに応じて設定される。
【００３７】
部分画像のサイズに対して判定領域を設定する基準となる位置、部分画像のサイズに対する判定領域のサイズは、読み取り対象のセグメントディスプレイ、入力画像の特性などに応じて適宜変更可能である。
【００３８】
このように、複数の判定領域の位置は、部分画像のサイズ（第１方向における長さ及び第２方向における長さ）に基づいて決定される。設定部１５は、設定した判定領域を、識別部１６へ出力する。
【００３９】
識別部１６は、それぞれの判定領域における、細線化された数字を構成する画素の数に基づき、数字を識別する。例えば、識別部１６は、判定部１６ａ及び比較部１６ｂを含む。
【００４０】
判定部１６ａは、各判定領域において、細線化された集合に含まれる画素の数を検出する。発光するセグメントが白色で表される場合、判定部１６ａは、各判定領域における白色画素の数を検出する。判定部１６ａは、検出された画素数を予め設定された閾値と比較し、各判定領域において、数字の一部が存在するか判定する。具体的には、判定部１６ａは、検出された画素数が閾値以上であれば、その判定領域に数字の一部が存在すると判定する。閾値は、例えば１に設定される。
【００４１】
判定部１６ａは、例えば、各判定領域における判定結果を“０”又は“１”で示す。“０”は、その判定領域に数字の一部が存在しないことを示す。“１”は、その判定領域に数字の一部が存在することを示す。
【００４２】
図３（ｂ）は、図２（ｄ）に表した複数の部分画像の１つである。図３（ｂ）に表したように、部分画像Ｂ２の大きさに基づき、判定領域ＤＲ１〜ＤＲ７が設定される。図３（ｂ）の例では、判定領域ＤＲ２、ＤＲ３、及びＤＲ５〜ＤＲ７で、数字の一部が存在すると判定される。この結果は、例えば、０と１を用いて、“０１１０１１１”と表される。
【００４３】
比較部１６ｂは、記憶装置２０を参照する。記憶装置２０には、各判定領域における判定結果の組み合わせと数字との対応が予め記憶されている。図４は、その対応を記憶したテーブルを例示している。比較部１６ｂは、記憶装置２０に記憶された判定結果の組み合わせから、判定部１６ａによる判定結果の組み合わせと一致するものを検索する。比較部１６ｂは、一致した判定結果の組み合わせに対応する数字を、部分画像に示された数字として識別する。
【００４４】
例えば、図３（ｂ）の例では、判定結果の組み合わせは、“０１１０１１１”と表される。比較部１６ｂは、この組み合わせと一致する組み合わせを検索する。検索の結果、判定部１６ａによる判定結果の組み合わせは、数字の“２”に対応する判定結果の組み合わせと一致する。これにより、比較部１６ｂは、部分画像に示される数字が“２”であると識別する。
なお、判定結果の組み合わせと、検索される組み合わせと、が同じ規則に従って並んでいれば、判定結果の組み合わせの態様は、適宜変更可能である。
【００４５】
図５（ａ）〜図５（ｅ）は、その他の数字が示された部分画像と、各部分画像における判定領域の設定例と、を表す。図５（ａ）〜図５（ｅ）に表したように、設定領域の位置及びサイズは、部分画像のサイズに応じて設定される。
【００４６】
抽出部１３により複数の部分画像が抽出された場合、設定部１５及び識別部１６は、それぞれの部分画像について、判定領域の設定及び数字の識別を行う。識別部１６は、識別した数字を出力する。
【００４７】
処理装置１０は、例えば、外部の出力装置へ読み取った数字に基づく情報を出力する。例えば、情報は、読み取った数字を含む。情報は、読み取った数字に基づいて算出された結果を含んでも良い。処理装置１０は、複数の読み取った数字を基に、別の数字を算出し、その算出結果を出力しても良い。処理装置１０は、読み取った時刻などの情報をさらに出力しても良い。又は、処理装置１０は、読み取った数字及び読み取った時刻などの情報を含むファイルを、ＣＳＶなどの所定の形式で出力しても良い。処理装置１０は、ＦＴＰ（File Transfer Protocol）などを用いて外部のサーバへデータを送信しても良い。又は、処理装置１０は、データベース通信を行い、ＯＤＢＣ（Open Database Connectivity）などを用いて外部のデータベースサーバへデータを挿入してもよい。
【００４８】
処理装置１０は、例えば、中央演算処理装置からなる処理回路を含む。記憶装置２０は、例えば、ハードディスクドライブ（ＨＤＤ）、ネットワーク接続ハードディスク（ＮＡＳ）、組み込み用マルチメディアカード（ｅＭＭＣ）、ソリッドステートドライブ（ＳＳＤ）、及びソリッドステートハイブリッドドライブ（ＳＳＨＤ）の少なくともいずれかを備える。処理装置１０と記憶装置２０は、有線又は無線で接続される。又は、処理装置１０と記憶装置２０は、ネットワークを介して相互に接続されていても良い。
【００４９】
図６は、第１実施形態に係る読取システム１による処理を表すフローチャートである。
受付部１１は、処理装置１０へ送信された入力画像を受け付ける（ステップＳｔ１１）。二値化部１２ａは、入力画像を二値化する（ステップＳｔ１２ａ）。膨張処理部１２ｂは、二値化された入力画像を膨張処理する（ステップＳｔ１２ｂ）。収縮処理部１２ｃは、二値化及び膨張処理された入力画像を収縮処理する（ステップＳｔ１２ｃ）。ラベリング処理部１３ａは、入力画像に含まれる白色画素の集合にラベルを付与する（ステップＳｔ１３ａ）。切出部１３ｂは、入力画像から、ラベリングされた白色画素の集合を含む部分画像を切り出す（ステップＳｔ１３ｂ）。細線化部１４は、入力画像又は部分画像における白色画素の集合を細線化する（ステップＳｔ１４）。設定部１５は、１つの部分画像に複数の判定領域を設定する（ステップＳｔ１５）。判定部１６ａは、各判定領域において細線化された集合に含まれる画素の数を検出する。判定部１６ａは、その数に基づいて、各判定領域に数字の一部が存在するか判定する（ステップＳｔ１６ａ）。比較部１６ｂは、判定部１６ａによる判定結果の組み合わせを、予め登録されたテーブルと比較する（ステップＳｔ１６ｂ）。比較部１６ｂは、判定部１６ａによる判定結果の組み合わせに対応する数字を、部分画像に含まれる数字とする。
【００５０】
ステップＳｔ１５〜Ｓｔ１６ｂは、ｉがラベル数と同じになるまで繰り返される。すなわち、最初に、ｉは０に設定される。１つの白色画素の集合について、数字の識別が完了すると、ｉに１が加えられる。ステップＳｔ１５〜Ｓｔ１６ｂは、ｉがラベル数未満である間、繰り返される。従って、ラベリングされた白色画素の集合が複数存在する場合、それぞれの集合について、数字の識別が行われる。全ての集合について、数字の識別が完了すると、数字を出力する（ステップＳｔ１６ｃ）。
【００５１】
参考例に係る読取方法を参照しつつ、第１実施形態の効果を説明する。
参考例に係る読取方法では、セグメントディスプレイの数字が撮影された画像から、特定の線分上におけるヒストグラムのピークを検出する。そして、ピークの数及び位置に基づいて、セグメントディスプレイの数字を識別する。この読取方法では、セグメントディスプレイの数字の太さ（線幅）が大きいと、ピークを正しく検出することが困難となる。また、ピークの位置は、数字の書体及び画像の大きさにより変化する。ピークの位置が基準となる位置と異なる場合、数字を正しく識別することが困難となる。
【００５２】
第１実施形態に係る読取システム１では、セグメントディスプレイに表示された文字を読み取る際、細線化処理が行われる。細線化処理では、文字を示す画素の集合が細線化される。これにより、入力画像におけるセグメントディスプレイの文字の太さに拘わらず、文字を示す画素の集合の幅を均一にできる。このため、セグメントディスプレイの文字の太さに拘わらず、文字を高精度に識別することができる。
【００５３】
また、第１実施形態に係る読取システム１では、セグメントディスプレイの文字が撮影された部分画像に、複数の判定領域が設定される。複数の判定領域の位置は、部分画像のサイズに基づいて決定される。そして、セグメントディスプレイの文字は、複数の判定領域のそれぞれにおいて、文字を示す画素の数の検出結果に基づいて識別される。文字を示す画素の数の検出結果を用いることで、文字の書体に拘わらず、文字を識別することができる。さらに、複数の判定領域の位置を部分画像のサイズに基づいて決定することで、部分画像のサイズに拘わらず、文字を高精度に識別することができる。
【００５４】
第１実施形態に係る読取システム１において、細線化部１４は、任意である。細線化部１４による細線化処理と、設定部１５による部分画像のサイズに基づいた複数の判定領域の設定と、を組み合わせることで、文字をより高精度に識別することができる。文字を示す画素の集合が細線化されることで、集合の線幅を均一にできる。文字の太さに拘わらず、画素の数の判定結果に基づいて、文字をより高精度に識別することが可能となる。
【００５５】
図７（ａ）〜図７（ｄ）は、セグメントディスプレイ及び判定領域の設定を例示する模式図である。
第１実施形態に係る読取システム１は、７セグメントディスプレイ以外にも適用可能である。例えば、１４セグメントディスプレイ又は１６セグメントディスプレイについても、上述した処理と同様の処理により、文字を読み取ることができる。
【００５６】
図７（ａ）は、１４セグメントディスプレイの一例を表す。１４セグメントディスプレイでは、１４のセグメントにより１つの文字が表示される。この場合、設定部１５は、部分画像に対して、１４以上の判定領域を設定する。設定部１５は、例えば図７（ｂ）に表したように、部分画像Ｃに対して、１４の判定領域ＤＲを設定する。記憶装置２０は、１４の領域における判定結果と、文字と、の対応を示すテーブルを記憶する。判定部１６ａは、各判定領域ＤＲにおいて、文字の一部が存在するか判定する。比較部１６ｂは、記憶装置２０のテーブルを参照し、その判定結果に対応する数字を検索する。これにより、１４セグメントディスプレイに表示された文字が識別される。
【００５７】
図７（ｃ）は、１６セグメントディスプレイの一例を表す。１６セグメントディスプレイでは、１６のセグメントにより１つの文字が表示される。この場合、設定部１５は、部分画像に対して、１６以上の判定領域を設定する。設定部１５は、例えば図７（ｄ）に表したように、部分画像Ｃに対して、１６の判定領域ＤＲを設定する。以降は、上述した例と同様に、判定部１６ａによる判定結果に基づき、１６セグメントディスプレイに表示された文字が識別される。
【００５８】
（第１変形例）
図８は、第１実施形態の第１変形例に係る読取システムの構成を表すブロック図である。
第１変形例に係る読取システム１ａでは、前処理の前に、抽出部１３による切り出しが行われる。例えば、記憶装置２０には、入力画像における切り出し位置が予め記憶されている。切出部１３ｂは、記憶装置２０にアクセスし、記憶された切り出し位置を参照する。切出部１３ｂは、その切り出し位置において、入力画像の一部を切り出す。抽出部１３は、切り出した入力画像の一部を、部分画像として前処理部１２に送信する。
【００５９】
前処理部１２では、二値化部１２ａにより部分画像が二値化される。前処理部１２は、二値化された入力画像を細線化部１４へ送信する。前処理部１２において、二値化された入力画像に対して、膨張処理及び収縮処理が行われても良い。
【００６０】
第１変形例に係る読取システム１ａにおいても、セグメントディスプレイに表示された文字を、より高精度に読み取ることが可能である。また、読取システム１ａによれば、ラベリング処理が不要となる。部分画像の抽出にラベリング処理を用いる場合、１つの文字を示す白色画素の集合が２つ以上に分断されていると、分断された集合がそれぞれ部分画像として抽出される。従って、セグメントディスプレイに表示された数字を正しく読み取れなくなる。ラベリング処理が不要であると、分断された２つ以上の集合を、１つの文字を識別するための部分画像として抽出できる。
【００６１】
ただし、予め定められた切り出し位置で入力画像の一部を切り出すと、文字の一部が切れたり、部分画像において文字が小さくなる可能性がある。従って、読み取りの精度を向上させるためには、図１に表したように、ラベリング処理を用いた部分画像の抽出が望ましい。
【００６２】
（第２変形例）
図９は、第１実施形態の第２変形例に係る読取システムの構成を表すブロック図である。
第２変形例に係る読取システム１ｂでは、前処理部１２が、閾値算出部１２ｄ及び画素抽出部１２ｅを含む。閾値算出部１２ｄは、入力画像に基づいて、閾値を算出する。例えば、記憶装置２０は、閾値を算出するための式を記憶している。閾値算出部１２ｄは、記憶装置２０にアクセスし、式を参照する。閾値算出部１２ｄは、適応的閾値を算出する。すなわち、閾値算出部１２ｄは、１つ画素について、その画素の明度又は輝度と、式と、を用いて、閾値を算出する。閾値算出部１２ｄは、各画素の閾値を算出し、画素抽出部１２ｅへ送信する。
【００６３】
画素抽出部１２ｅは、入力画像を構成する各画素について、画素の明度又は輝度と、閾値と、を比較する。例えば、画素抽出部１２ｅは、明度又は輝度が閾値以上であった画素のみを抽出する。これにより、例えば、点灯しているセグメントの部分のみが抽出される。すなわち、数字を示す画素のみが抽出される。例えば、画素が抽出されなかった点は、黒色に設定する。画素抽出部１２ｅは、加工された入力画像を、抽出部１３へ送信する。
【００６４】
抽出部１３以降では、図１に表した読取システム１と同様の処理が実行される。又は、読取システム１ｂの抽出部１３において、図８に表した読取システム１ａの抽出部１３と同様の処理が実行されても良い。
【００６５】
（第２実施形態）
図１０は、第２実施形態に係る読取システムの構成を表すブロック図である。
第２実施形態に係る読取システム２は、撮像装置３０をさらに備える。撮像装置３０は、セグメントディスプレイを撮影し、画像を生成する。撮像装置３０は、生成した画像を処理装置１０へ送信する。又は、撮像装置３０は、画像を記憶装置２０に記憶しても良い。処理装置１０は、記憶装置２０にアクセスし、記憶された画像を参照する。撮像装置３０が動画を取得する場合、撮像装置３０は、その動画から静止画像を取り出して処理装置１０に送信する。撮像装置３０は、例えばカメラを含む。
【００６６】
処理装置１０は、識別して読み取った文字に基づく情報を出力装置４０へ送信する。出力装置４０は、処理装置１０から受信した情報を、ユーザが認識できるように出力する。出力装置４０は、例えば、モニタ、プリンタ、及びスピーカの少なくともいずれかを含む。
【００６７】
処理装置１０、記憶装置２０、撮像装置３０、及び出力装置４０は、例えば、有線又は無線で相互に接続される。又は、これらはネットワークを介して相互に接続されていても良い。又は、処理装置１０、記憶装置２０、撮像装置３０、及び出力装置４０の少なくとも２つ以上が、１つの装置に組み込まれていても良い。例えば、処理装置１０が、撮像装置３０の画像処理部などと一体に組み込まれていても良い。
【００６８】
（第３実施形態）
図１１は、第３実施形態に係る読取システムの構成を表すブロック図である。
第３実施形態に係る読取システム３は、移動体５０をさらに備える。移動体５０は、所定の領域内を移動する。移動体５０が移動する領域内には、セグメントディスプレイが設けられている。移動体５０は、例えば、無人搬送車（ＡＧＶ）である。移動体５０は、ドローンなどの飛翔体であっても良い。移動体５０は、自立歩行するロボットであっても良い。移動体５０は、無人で所定の作業を行うフォークリフトやクレーンなどであっても良い。
【００６９】
例えば、処理装置１０及び撮像装置３０は、移動体５０に搭載される。処理装置１０は、移動体５０とは別に設けられ、移動体５０とネットワークを介して接続されても良い。移動体５０がセグメントディスプレイを撮影可能な位置に移動したとき、撮像装置３０は、セグメントディスプレイを撮影し、画像を生成する。
【００７０】
図１１に表したように、読取システム３は、取得装置６０をさらに備えても良い。取得装置６０は、移動体５０に搭載される。例えば、セグメントディスプレイに対応して、固有の識別情報を有する識別体が設けられる。取得装置６０は、識別体が有する識別情報を取得する。
【００７１】
図１１に表したように、読取システム３は、制御装置７０をさらに備えても良い。制御装置７０は、移動体５０を制御する。移動体５０は、制御装置７０から送信される指令に基づいて、所定の領域内を移動する。制御装置７０は、移動体５０に搭載されても良いし、移動体５０とは別に設けられても良い。制御装置７０は、例えば、中央演算処理装置からなる処理回路を含む。１つの処理回路が、処理装置１０及び制御装置７０の両方として機能しても良い。
【００７２】
例えば、識別体は、ＩＤ情報を有するradio frequency（ＲＦ）タグである。識別体は、ＩＤ情報を含む電磁界又は電波を発する。取得装置６０は、識別体から発せられた電磁界又は電波を受信し、ＩＤ情報を取得する。
【００７３】
又は、識別体は、１次元又は２次元のバーコードであっても良い。取得装置６０は、バーコードリーダである。取得装置６０は、バーコードを読み取ることで、そのバーコードが有する識別情報を取得する。
【００７４】
図１１に表したように、処理装置１０は、紐付部１７をさらに含んでも良い。例えば、取得装置６０は、識別情報を取得すると、処理装置１０に送信する。紐付部１７は、送信された識別情報と、読み取った文字と、を紐付け、記憶装置２０に記憶する。
【００７５】
図１２は、第３実施形態に係る読取システムの動作を説明する模式図である。
例えば、移動体５０は、所定の軌道Ｔに沿って移動する移動体である。移動体５０には、撮像装置３０及び取得装置６０が搭載されている。処理装置１０は、移動体５０に搭載されても良いし、移動体５０とは別に設けられても良い。軌道Ｔは、移動体５０が、セグメントディスプレイＳＤ１及びＳＤ２の前を通過するように設けられている。
【００７６】
例えば、移動体５０は、軌道Ｔに沿って移動し、撮像装置３０によりセグメントディスプレイＳＤ１又はＳＤ２を撮影可能な位置に着くと、減速又は停止する。例えば、移動体５０は、減速又は停止すると、撮像装置３０に撮像の指令を送信する。又は、制御装置７０から撮像装置３０へ撮像の指令が送信されても良い。撮像装置３０は、指令を受信すると、移動体５０が減速又は停止している間に、セグメントディスプレイＳＤ１又はＳＤ２を撮影する。
【００７７】
又は、移動体５０は、撮像装置３０がセグメントディスプレイＳＤ１又はＳＤ２をぶれずに撮影できる程度の速度で軌道Ｔに沿って移動する。撮像装置３０によりセグメントディスプレイＳＤ１又はＳＤ２を撮影可能な位置に着くと、移動体５０又は上記制御装置から撮像の指令が送信される。撮像装置３０は、指令を受信すると、セグメントディスプレイＳＤ１又はＳＤ２を撮影する。撮像装置３０は、撮影して画像を生成すると、移動体５０に搭載された又は移動体５０とは別に設けられた処理装置１０へ、画像を送信する。
【００７８】
セグメントディスプレイＳＤ１近傍には、識別体ＩＤ１が設けられている。セグメントディスプレイＳＤ２近傍には、識別体ＩＤ２が設けられている。例えば、取得装置６０は、移動体５０が減速又は停止している間に、識別体ＩＤ１又はＩＤ２の識別情報を取得する。
【００７９】
例えば、移動体５０がセグメントディスプレイＳＤ１の前に移動する。撮像装置３０は、セグメントディスプレイＳＤ１を撮影し、画像を生成する。処理装置１０は、この画像から、セグメントディスプレイＳＤ１に表示された文字を識別する。また、取得装置６０は、セグメントディスプレイＳＤ１に対応する識別体ＩＤ１の識別情報を取得する。処理装置１０は、識別された文字と、識別情報と、を紐付ける。
【００８０】
又は、移動体５０がセグメントディスプレイの前に移動した際、最初に、取得装置６０が識別体の識別情報を取得しても良い。例えば、移動体５０には、特定のセグメントディスプレイの文字を読み取るよう指令が送信される。この指令には、そのセグメントディスプレイの位置を示す情報が含まれる。記憶装置２０には、各識別情報と各識別体の位置とが紐付けられて記憶されている。取得装置６０が識別情報を取得すると、移動体５０は、記憶装置２０にアクセスする。移動体５０は、その識別情報に紐付けられた識別体の位置を参照する。移動体５０は、参照した識別体の位置が、文字を読み取るよう指令されたセグメントディスプレイの位置と合致しているか判定する。合致している場合、移動体５０は、撮像装置３０によりセグメントディスプレイＳＤ１を撮影する。すなわち、この方法では、識別情報の読み取りが、セグメントディスプレイの文字を読み取る際のインターロックとして機能する。
【００８１】
以上で説明した実施形態に係る読取システム、読取方法、及び移動体を用いることで、セグメントディスプレイに表示された数字を、より高精度に読み取ることが可能となる。同様に、コンピュータを、読取システムとして動作させるためのプログラムを用いることで、セグメントディスプレイに表示された数字を、より高精度にコンピュータに読み取らせることが可能となる。
【００８２】
上記の種々のデータの処理は、例えば、プログラム（ソフトウェア）に基づいて実行される。例えば、コンピュータが、このプログラムを記憶し、このプログラムを読み出すことにより、上記の種々の情報の処理が行われる。
【００８３】
上記の種々の情報の処理は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フレキシブルディスク及びハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ±Ｒ、ＤＶＤ±ＲＷなど）、半導体メモリ、または、他の記録媒体に記録されても良い。
【００８４】
例えば、記録媒体に記録された情報は、コンピュータ（または組み込みシステム）により読み出されることが可能である。記録媒体において、記録形式（記憶形式）は任意である。例えば、コンピュータは、記録媒体からプログラムを読み出し、このプログラムに基づいてプログラムに記述されている指示をＣＰＵで実行させる。コンピュータにおいて、プログラムの取得（または読み出し）は、ネットワークを通じて行われても良い。
【００８５】
実施形態に係る処理装置及び制御装置は、１つまたは複数の装置（例えばパーソナルコンピュータなど）を含む。実施形態に係る処理装置及び制御装置は、ネットワークにより接続された複数の装置を含んでも良い。
【００８６】
以上、本発明のいくつかの実施形態を例示したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更などを行うことができる。これら実施形態やその変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。また、前述の各実施形態は、相互に組み合わせて実施することができる。
【符号の説明】
【００８７】
１、１ａ、１ｂ、２、３ 読取システム、  １１ 受付部、  １２ 前処理部、  １２ａ 二値化部、  １２ｂ 膨張処理部、  １２ｃ 収縮処理部、  １２ｄ 閾値算出部、  １２ｅ 画素抽出部、  １３ 抽出部、  １３ａ ラベリング処理部、  １３ｂ 切出部、  １４ 細線化部、  １５ 設定部、  １６ 識別部、  １６ａ 判定部、  １６ｂ 比較部、  １７ 紐付部、  ２０ 記憶装置、  ３０ 撮像装置、  ４０ 出力装置、  ５０ 移動体、  ６０ 取得装置、  ７０ 制御装置、  Ｂ、Ｃ 部分画像、  Ｄ１ 第１方向、  Ｄ２ 第２方向、  ＤＲ１〜ＤＲ７ 判定領域、  Ｓ１〜Ｓ４ 辺、  ＳＤ１、ＳＤ２ セグメントディスプレイ、  Ｔ 軌道
【図１】
2020086615.tif 000003
【図２】
2020086615.tif 000004
【図３】
2020086615.tif 000005
【図４】
2020086615.tif 000006
【図５】
2020086615.tif 000007
【図６】
2020086615.tif 000008
【図７】
2020086615.tif 000009
【図８】
2020086615.tif 000010
【図９】
2020086615.tif 000011
【図１０】
2020086615.tif 000012
【図１１】
2020086615.tif 000013
【図１２】
2020086615.tif 000014