(57)【要約】【課題】セグメントディスプレイの数値の読み取り精度を向上できる、読取システム、読取方法、プログラム、及び記憶媒体を提供する。【解決手段】実施形態に係る読取システムは、抽出部、判定部、及び読取部を備える。前記抽出部は、入力画像からセグメントディスプレイが撮影された部分の候補画像を抽出する。前記判定部は、前記候補画像から検出された複数の直線のそれぞれの基準線に対する角度を算出し、前記角度と前記直線の数との関係を示す分布に基づいて前記候補画像がセグメントディスプレイの画像であるか判定を行う。前記読取部は、セグメントディスプレイの画像と判定された前記候補画像から、セグメントディスプレイに表示された数値を読み取る。【選択図】図１
2019144704.tif 000002
【特許請求の範囲】
【請求項１】
入力画像からセグメントディスプレイが撮影された部分の候補画像を抽出する抽出部と、
前記候補画像から検出された複数の直線のそれぞれの基準線に対する角度を算出し、前記角度と前記直線の数との関係を示す分布に基づいて前記候補画像がセグメントディスプレイの画像であるか判定を行う判定部と、
セグメントディスプレイの画像と判定された前記候補画像から、セグメントディスプレイに表示された数値を読み取る読取部と、
を備えた読取システム。
【請求項２】
前記判定部は、前記分布において、第１角度の近傍における前記直線の数と、前記第１角度に対して傾斜した第２角度の近傍における前記直線の数と、の和が、予め設定された値以上である場合に、前記候補画像がセグメントディスプレイの画像であると判定する請求項１記載の読取システム。
【請求項３】
前記判定部は、さらに、
前記候補画像において端点が集まった端点群を検出し、
隣接する端点群同士を結ぶベクトルを算出し、
前記分布に加えて、隣接するベクトル同士の大きさの比、及び、隣接するベクトル同士の間の角度の少なくともいずれかに基づいて前記判定を行う、
請求項１記載の読取システム。
【請求項４】
前記判定部は、前記分布において、第１角度の近傍における前記直線の数と、前記第１角度に対して傾斜した第２角度の近傍における前記直線の数と、の和が、予め設定された値以上である第１条件と、前記大きさの比が予め設定された第１範囲にあり、且つ、前記角度が予め設定された第２範囲にある第２条件と、が満たされた場合に、前記候補画像がセグメントディスプレイの画像であると判定する請求項３記載の読取システム。
【請求項５】
入力画像からセグメントディスプレイが撮影された部分の候補画像を抽出する抽出部と、
前記候補画像において端点が集まった端点群を検出し、
隣接する端点群同士を結ぶベクトルを算出し、
隣接するベクトル同士の大きさの比、及び、隣接するベクトル同士の間の角度の少なくともいずれかに基づいて、前記候補画像がセグメントディスプレイの画像であるか判定を行う、判定部と、
セグメントディスプレイの画像と判定された前記候補画像から、セグメントディスプレイに表示された数値を読み取る読取部と、
を備えた読取システム。
【請求項６】
前記判定部は、前記大きさの比が予め設定された第１範囲にあり、且つ、前記角度が予め設定された第２範囲にある場合に、前記候補画像がセグメントディスプレイの画像であると判定する請求項５記載の読取システム。
【請求項７】
前記候補画像が歪んでいる場合に、前記候補画像を正面から撮影された画像に近づけるよう変換する第１処理と、
前記候補画像のサイズが、予め設定された規定サイズと異なる場合に、前記候補画像の前記サイズを前記規定サイズに近づけるよう補正する第２処理と、
を行う変換部をさらに備え、
前記判定部は、変換された前記候補画像を用いて前記判定を行う請求項１〜６のいずれか１つに記載の読取システム。
【請求項８】
前記抽出部は、
前記入力画像から輪郭を抽出し、
前記輪郭で囲まれた領域の面積を算出し、
前記面積が予め設定された閾値以上の場合、前記輪郭に基づいて、前記入力画像から所定の形状の画像を抽出し、
予め設定された条件を満たす前記抽出された画像を、前記候補画像として出力する、
請求項１〜７のいずれか１つに記載の読取システム。
【請求項９】
前記抽出部は、前記入力画像から、予め用意された、読み取り対象のセグメントディスプレイのテンプレート画像とマッチングする部分を探索し、マッチングした前記部分を候補画像として抽出する請求項１〜６のいずれか１つに記載の読取システム。
【請求項１０】
前記抽出部は、
前記入力画像から特徴量を抽出し、
抽出された前記特徴量が、前記テンプレート画像の特徴量とマッチングするように、前記入力画像を補正し、
補正された前記入力画像から、前記テンプレート画像とマッチングする前記候補画像を抽出する、
請求項９記載の読取システム。
【請求項１１】
前記抽出部は、
前記入力画像のデータを、予め学習されたニューラルネットワークに入力し、
前記ニューラルネットワークの出力結果に基づいて、前記入力画像においてセグメントディスプレイが撮影された前記部分を検出し、前記候補画像として抽出する、
請求項１〜６のいずれか１つに記載の読取システム。
【請求項１２】
前記抽出部は、前記ニューラルネットワークの前記出力結果に基づいて、さらに、前記候補画像の歪みを補正する請求項１１記載の読取システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、読取システム、読取方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
セグメントディスプレイに表示された数値を読み取るシステムがある。このシステムにおいて、数値の読み取りの精度は、高いことが望ましい。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１０１７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、セグメントディスプレイの数値の読み取り精度を向上できる、読取システム、読取方法、プログラム、及び記憶媒体を提供することである。
【課題を解決するための手段】
【０００５】
実施形態に係る読取システムは、抽出部、判定部、及び読取部を備える。前記抽出部は、入力画像からセグメントディスプレイが撮影された部分の候補画像を抽出する。前記判定部は、前記候補画像から検出された複数の直線のそれぞれの基準線に対する角度を算出し、前記角度と前記直線の数との関係を示す分布に基づいて前記候補画像がセグメントディスプレイの画像であるか判定を行う。前記読取部は、セグメントディスプレイの画像と判定された前記候補画像から、セグメントディスプレイに表示された数値を読み取る。
【図面の簡単な説明】
【０００６】
【図１】実施形態に係る読取システムの構成を表すブロック図である。
【図２】実施形態に係る読取システムの動作を表すフローチャートである。
【図３】実施形態に係る読取システムにおける処理を例示する図である。
【図４】実施形態の第１変形例に係る読取システムの構成を表すブロック図である。
【図５】実施形態の第２変形例に係る読取システムの構成を表すブロック図である。
【図６】実施形態の第３変形例に係る読取システムの構成を表すブロック図である。
【図７】実施形態に係る読取システムを実現するためのハードウェア構成を表すブロック図である。
【発明を実施するための形態】
【０００７】
以下に、本発明の各実施形態について図面を参照しつつ説明する。
また、本願明細書と各図において、既に説明したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
【０００８】
図１は、実施形態に係る読取システムの構成を表すブロック図である。
実施形態に係る読取システムは、セグメントディスプレイを含む画像から、セグメントディスプレイに表示された数値を読み取るために用いられる。
本実施形態において、セグメントディスプレイとは、複数のセグメントの表示によって構成される数字や文字等の何らかの表示情報を含むものを表す。
【０００９】
図１に表したように、実施形態に係る読取システム１は、撮像部１１、抽出部１２、変換部１３、判定部１５、読取部１６、及び記憶部１８を備える。
【００１０】
撮像部１１は、セグメントディスプレイを撮影し、静止した画像を取得する。撮像部１１は、取得した画像を抽出部１２に出力する。撮像部１１により動画が撮影される場合は、その動画から静止画像を切り出して抽出部１２に出力する。撮影される画像には、セグメントディスプレイ以外のものが写っていても良い。
【００１１】
抽出部１２は、入力された画像から、セグメントディスプレイの画像の候補を抽出する。ここでは、撮像部１１によって撮影され、抽出部１２に入力される画像を、入力画像と呼ぶ。入力画像の一部であって、セグメントディスプレイの候補となる画像を、候補画像と呼ぶ。候補画像は、セグメントディスプレイが撮影されていると抽出部１２によって判定された、入力画像の一部である。抽出部１２から出力される候補画像は複数であっても良い。
【００１２】
具体的な一例として、抽出部１２は、加工部１２ａ、二値化部１２ｂ、輪郭抽出部１２ｃ、第１選定部１２ｄ、四角形抽出部１２ｅ、第２選定部１２ｆを有する。
【００１３】
加工部１２ａは、例えば、入力画像を、グレイスケールに変換した加工画像を生成する。加工部１２ａは、加工画像を二値化部１２ｂに出力する。この際に、加工部１２ａは、例えば、入力画像を予め設定されたサイズに縮小した加工画像を、二値化部１２ｂに出力してもよい。その際、加工部１２ａは、縮小されていない原寸画像を記憶部１８に記憶する。
【００１４】
二値化部１２ｂは、入力された加工画像を二値化し、白色と黒色で表される二値画像を生成する。輪郭抽出部１２ｃは、二値画像において、例えば白色で表されている領域の輪郭を抽出する。
【００１５】
第１選定部１２ｄは、輪郭で囲まれた領域の面積を算出する。複数の輪郭が抽出された場合は、それぞれの領域の面積を算出する。第１選定部１２ｄは、算出された各面積と所定の閾値とを比較し、面積が閾値以上の領域のみを選定する。これにより、面積が小さすぎる領域が候補から除外される。
【００１６】
四角形抽出部１２ｅは、選定された領域を直線近似し、四角形を抽出する。例えば、四角形抽出部１２ｅは、抽出された四角形の頂点の座標を取得する。
【００１７】
第２選定部１２ｆは、抽出された四角形の領域を予め設定された条件と比較し、条件に適合する領域を選定する。条件としては、例えば、四角形の縦寸法と横寸法の比率が所定範囲内にあること、頂点の角度が所定範囲内にあること、四角形のいずれかの頂点も画像の外枠近傍（例えば、外枠から３ピクセル以内）にないこと、などが用いられる。第２選定部１２ｆは、選定された四角形を、最終的な候補画像として、変換部１３に出力する。
【００１８】
変換部１３は、以下の第１処理及び第２処理を行う。
第１処理において、変換部１３は、抽出部１２から入力された候補画像が歪んでいないか判定する。候補画像が歪んでいると判定された場合、変換部１３は、候補画像が正面から撮影された画像に近づくように、その歪みを補正する。
第２処理において、変換部１３は、候補画像のサイズが、予め設定された規定サイズと一致するか判定する。候補画像のサイズが規定サイズと一致しない場合、変換部１３は、候補画像のサイズが規定サイズに近づくように、候補画像を補正する。
変換部１３は、例えば、候補画像を射影変換することで、歪み及びサイズを補正する。変換部１３は、補正した候補画像を判定部１５に出力する。候補画像が歪んでおらず、候補画像のサイズが規定サイズに一致すると判定された場合、変換部１３は、入力された候補画像をそのまま判定部１５に出力する。
【００１９】
判定部１５は、直線検出部１５ａ、角度算出部１５ｂ、分布生成部１５ｃ、第１比較部１５ｄ、端点群検出部１５ｅ、評価部１５ｆ、及び第２比較部１５ｇを有する。
【００２０】
直線検出部１５ａは、エッジ検出を行った画像に含まれる複数の直線を検出する。例えば、直線の検出では、線分の始点と終点が検出される。直線検出部１５ａは、検出結果を、角度算出部１５ｂに出力し、且つ記憶部１８に記憶する。直線検出部１５ｂは、所定の長さ以上の線分を所定の角度分解能にて検出する。
【００２１】
角度算出部１５ｂは、それぞれの直線の基準線に対する角度を算出する。角度算出部１５ｂは、例えば、画像底辺（真横に延びる直線）を基準線とし、この基準線とそれぞれの直線との間の角度を算出する。分布生成部１５ｃは、算出結果に基づいて、角度と直線の数との関係を示す分布を生成する。
【００２２】
第１比較部１５ｄは、生成された分布と、予め設定された第１条件と、を比較する。第１条件は、例えば、生成された分布において、第１角度近傍における直線の総数と、第１角度に対して傾斜した第２角度近傍における直線の総数と、の和が、予め設定された値以上となっていることである。
例えば、第１角度は０度であり、第２角度は８０度である。「近傍」は、例えば、第１角度または第２角度を中心として、−１０度以上＋１０度以下の範囲を含む。この場合、第１比較部１５ｄは、分布において、−１０度以上１０度以下の範囲に含まれる直線の総数と、７０度以上９０度以下の範囲に含まれる直線の総数と、の和を、予め設定された値と比較する。
【００２３】
例えば、画像において、横方向に平行な線の角度を０度、縦方向に平行な線の角度を９０度とする。読み取り対象のセグメントディスプレイが、７セグメントディスプレイである場合、約０度の直線と約８０度の直線が多く検出される。読み取り対象のセグメントディスプレイが、１４セグメントディスプレイまたは１６セグメントディスプレイである場合、約０度の直線、約４５度の直線、及び約８０度の直線が多く検出される。
第１条件は、この特性に基づいて設定される。分布が第１条件を満たす場合、候補画像はセグメントディスプレイを含む可能性が高い。
【００２４】
第１比較部１５ｄは、分布が第１条件を満たす場合、その判定結果を端点群検出部１５ｅに出力する。分布が第１条件を満たさない場合は、候補画像がセグメントディスプレイを含まない可能性が高いため、例えば処理を終了する。
【００２５】
第１比較部１５ｄから判定結果が入力されると、端点群検出部１５ｅは、例えば、記憶部１８に記憶された直線の検出結果を参照する。そして、端点群検出部１５ｅは、直線の検出結果から、各直線の端点（始点及び終点）が集まった端点群を検出する。
【００２６】
端点群検出部１５ｅは、例えば、候補画像を横方向及び縦方向において所定の間隔で複数のエリア（マトリクス状）に分割し、所定数以上の端点が存在するエリアを端点群として抽出する。候補画像にセグメントディスプレイが含まれている場合は、候補画像から複数の端点群が検出されうる。これらの端点群が検出された位置は、セグメントの端部の位置に対応する。
【００２７】
例えば、評価部１５ｆは、それぞれの端点群について、ある端点群からそれに隣り合う端点群へ向かうベクトルを算出する。ベクトルは、例えば、ある端点群を別の端点群へ重ね合わせるために必要な移動量を求めることで得られる。評価部１５ｆは、隣接するベクトル同士の大きさの比、及び、ベクトル同士の間の角度を算出する。評価部１５ｆは、これらの評価値を、第２比較部１５ｇに出力する。
【００２８】
第２比較部１５ｇは、評価値と第２条件とを比較する。第２条件は、例えば、上記大きさの比に関する第１範囲、及び上記角度に関する第２範囲を含む。第２比較部１５ｇは、上記大きさの比が第１範囲内にあり、上記角度が第２範囲内にある場合、候補画像が、セグメントディスプレイの画像であると判定し、候補画像を読取部１６に出力する。
【００２９】
例えば、一般的な７セグメントディスプレイは、正面視において、縦方向に延びるセグメント（縦セグメント）と、横方向に延びるセグメント（横セグメント）と、を含む。典型的には、縦セグメント同士の長さの比は、略１である。縦セグメントの長さに対する横セグメントの長さの比は、１以下である。また、縦セグメントと横セグメントとの間の角度は、略８０度または略１００度である。縦セグメント同士の間の角度は、１８０度である。
【００３０】
評価部１５ｆによって算出される、ベクトル同士の大きさの比は、縦セグメント同士の長さの比または縦セグメントと横セグメントの長さの比に対応する。また、評価部１５ｆによって算出される、ベクトル同士の間の角度は、縦セグメントと横セグメントとの間の角度、または縦セグメント同士の間の角度に対応する。従って、これらの評価値を、それぞれ、予め設定された第１範囲及び第２範囲と比較することで、候補画像がセグメントディスプレイの画像であるか判定することができる。
【００３１】
なお、評価部１５ｆにより、複数の大きさの比及び複数の角度が算出された場合、第２比較部１５ｇは、例えば、それぞれの大きさの比を第１範囲と比較し、それぞれの角度を第２範囲と比較する。
第２比較部１５ｇは、例えば、算出された大きさの比の全体の数を検出する。また、第２比較部１５ｇは、第１範囲に含まれる大きさの比の数を検出する。そして、第２比較部１５ｇは、全体の数に対する第１範囲に含まれる大きさの比の数の割合を算出する。
同様に、第２比較部１５ｇは、例えば、算出された角度の全体の数に対する、第２範囲に含まれる角度の数の割合を算出する。
第２比較部１５ｇは、算出された２つの割合が、それぞれ、予め設定された閾値以上の場合に、候補画像が、セグメントディスプレイの画像であると判定する。
【００３２】
読取部１６は、入力された候補画像から、セグメントディスプレイに表示された数値を読み取る。例えば、読取部１６は、入力された候補画像から数字を切り出し、点灯しているセグメントを検出することで、数値を読み取る。読取部１６は、例えば、読み取った数値を、モニタに表示させたり、データベースに出力したりする。
【００３３】
記憶部１８は、読取システム１の処理に必要な情報や、処理の過程で生成されたデータを記憶する。例えば、記憶部１８には、判定が行われる際に比較される閾値や条件等が記憶される。
【００３４】
図２及び図３を参照して、実施形態に係る読取システム１の動作について説明する。
図２は、実施形態に係る読取システムの動作を表すフローチャートである。
図３は、実施形態に係る読取システムにおける処理を例示する図である。
【００３５】
撮像部１１は、セグメントディスプレイを撮影し、画像を取得する（図２のステップＳ１１）。加工部１２ａは、入力画像を加工する（ステップＳ１２ａ）。これにより、入力画像を縮小してグレイスケール化した加工画像と、入力画像をグレイスケール化のみした原寸画像と、が生成される。図３（ａ）は、加工画像の一例である。二値化部１２ｂは、加工画像を二値化し、図３（ｂ）に表したように、二値画像を生成する（ステップＳ１２ｂ）。輪郭抽出部１２ｃは、二値画像の輪郭を抽出する（ステップＳ１２ｃ）。
【００３６】
第１選定部１２ｄは、輪郭で囲まれた領域を選定する（ステップＳ１２ｄ）。これにより、例えば、図３（ｃ）に表したように、枠Ａで囲まれた領域が選定される。四角形抽出部１２ｅは、選定された領域における四角形の抽出結果に基づき、原寸画像から四角形を抽出する（ステップＳ１２ｅ）。第２選定部１２ｆは、抽出された四角形を選定し（ステップＳ１２ｆ）、候補画像として出力する。図３（ｄ）は、候補画像として出力される四角形を表す。変換部１３は、図３（ｅ）に表したように、歪みを補正するよう候補画像を変換する。変換部１３は、例えば、候補画像を射影変換することで、歪み及びサイズを補正する（ステップＳ１３）。
【００３７】
直線検出部１５ａは、図３（ｆ）に表したように、候補画像から複数の直線ＳＬを検出する（ステップＳ１５ａ）。なお、図３（ｆ）以降では、候補画像の一部のみを例示している。角度算出部１５ｂは、それぞれの直線ＳＬの角度を算出する（ステップＳ１５ｂ）。分布生成部１５ｃは、図３（ｇ）に表したように、角度θと直線の数Ｎとの関係を示す分布を生成する（ステップＳ１５ｃ）。
【００３８】
第１比較部１５ｄは、分布が第１条件を満たすか判定する（ステップＳ１５ｄ）。例えば、第１比較部１５ｄは、０度近傍のピークと、８０度近傍のピークと、をこれらの中間の角度で折り返して重ね合わせる。これにより、図３（ｇ）の破線で例示した分布が生成される。第１比較部１５ｄは、この分布において、−１０度以上１０度以下の範囲に含まれる直線の数Ｎの総数を算出し、予め設定された値と比較する。
【００３９】
第１条件が満たされている場合（総数が当該値以上である場合）、端点群検出部１５ｅは、図３（ｆ）に表した直線の検出結果から、図３（ｈ）に表したように、端点群ＥＧを検出する（ステップＳ１５ｅ）。評価部１５ｆは、隣り合う端点群同士を結ぶベクトルを算出し、評価値（大きさの比及び角度）を算出する（ステップＳ１５ｆ）。
【００４０】
第２比較部１５ｇは、評価値が第２条件を満たすか判定する（ステップＳ１５ｇ）。評価値が第２条件を満たす場合、読取部１６は、候補画像から、セグメントディスプレイの数値を読み取る（ステップＳ１６）。
【００４１】
判定部１５は、ステップＳ１５ａ〜Ｓ１５ｇが未だ行われていない、他の候補画像が無いか判定する（ステップＳ１７）。他の候補画像がある場合、その候補画像について、ステップＳ１５ａが行われる。他の候補画像がない場合、処理を終了する。
【００４２】
実施形態の効果を説明する。
セグメントディスプレイを読み取る際には、上述したように、入力画像の中から、セグメントディスプレイが撮影された部分の候補となる候補画像が抽出される。従来は、例えば、抽出された候補画像に対して歪みなどの補正を適宜行い、候補画像からセグメントディスプレイの数値を読み取っていた。
しかし、候補画像には。例えば、セグメントディスプレイに似た表示器が含まれる場合がある。この場合、別の表示器の数値をセグメントディスプレイの数値として読み取ってしまい、誤検出が生じる可能性がある。
【００４３】
実施形態に係る読取システム１は、このような誤検出を抑制するために、候補画像について、直線検出の結果及び端点群検出の結果に基づいて、候補画像がセグメントディスプレイを含むか判定を行っている。セグメントディスプレイを含むと判定された候補画像のみを読み取ることで、誤検出の可能性を低減できる。
【００４４】
また、直線検出の結果及び端点群検出の結果に基づく判定は、一般的なセグメントディスプレイの特徴（セグメントの長さ及び角度）を利用している。このため、読取システム１は、多様なセグメントディスプレイに対して適用でき、その数値をより精度良く読み取ることが可能である。
【００４５】
なお、図１〜図３に表した例では、第１比較部１５ｄと第２比較部１５ｇの２つで判定が行われていたが、読取システム１において、第１比較部１５ｄ及び第２比較部１５ｇの一方のみにより判定が行われても良い。この場合でも、読取部１６による読み取りの前に、セグメントディスプレイを含む可能性が低い候補画像を除外できるため、セグメントディスプレイの数値の読み取り精度を向上できる。ただし、読み取り精度をより向上させるためには、第１比較部１５ｄ及び第２比較部１５ｇの両方が設けられていることが望ましい。
【００４６】
なお、図１に表した例では、実施形態に係る読取システム１が撮像部１１を備えているが、読取システム１は撮像部１１を備えていなくても良い。例えば、他の撮像装置で撮影された画像が読取システム１へ入力され、その入力画像から読取システム１によってセグメントディスプレイの数値が読み取られても良い。
【００４７】
また、読取システム１は、変換部１３を備えていなくても良いが、読取の精度を向上させるためには、変換部１３を備えていることが望ましい。
例えば、変換部１３により候補画像の歪みが補正されることで、適合率の精度を向上させることができる。これにより、セグメントディスプレイが撮影された候補画像をより正確に選別できるようになる。
【００４８】
また、図３では、７セグメントディスプレイに表示された数値を読み取る例を示した。しかし、実施形態に係る読取システム１で読み取り可能なセグメントディスプレイは、７セグメントディスプレイに限定されない。読み取り対象のセグメントディスプレイは、１４セグメントディスプレイまたは１６セグメントディスプレイであっても良い。
【００４９】
また、抽出部１２における処理は、候補画像を抽出できれば、適宜変更可能である。例えば、入力画像のサイズが小さい場合、または入力画像が予め二値化されている場合などは、加工部１２ａまたは二値化部１２ｂは不要である。また、入力画像から候補画像を抽出するための処理も適宜変更可能である。これらの変形例について、以下で説明する。
【００５０】
（第１変形例）
図４は、実施形態の第１変形例に係る読取システムの構成を表すブロック図である。
図１〜図３の例では、セグメントディスプレイの表示領域の枠が四角形であった。そのため、当該表示領域の形状に合わせて、抽出部１２には、四角形抽出部１２ｅが設けられていた。
【００５１】
表示領域の枠が円形の場合には、図４に表した読取システム２のように、抽出部１２において、四角形抽出部１２ｅに代えて、楕円抽出部１２ｇが設けられる。楕円抽出部１２ｇは、第１選定部１２ｄによって選定された領域から楕円を抽出する。このとき、楕円抽出部１２ｇは、抽出された楕円の座標を取得する。楕円抽出部１２ｇは、原寸画像において、上記座標に対応する楕円の画像を抽出し、第２選定部１２ｆに出力する。
【００５２】
第２選定部１２ｆは、入力された楕円の画像を予め設定された条件と比較し、条件に適合する楕円を選定する。条件としては、例えば、楕円の扁平率、輝度の分布などが用いられる。第２選定部１２ｆは、選定された楕円の画像を候補画像として変換部１３に出力する。以降の処理は、図１〜図３で説明した例と同様である。すなわち、変換部１３は、候補画像の歪みを補正する。そして、判定部１５による判定を経て、読取部１６によってセグメントディスプレイの数値が読み取られる。
【００５３】
（第２変形例）
図５は、実施形態の第２変形例に係る読取システムの構成を表すブロック図である。
図５に表した読取システム３は、読取システム１との比較において、抽出部１２及び変換部１３に代えて、抽出部２１を備える。
【００５４】
読取システム３では、セグメントディスプレイの数値を読み取る前に、撮像部１１により、読み取り対象のセグメントディスプレイのみを正面から撮影する。ここでは、セグメントディスプレイのみを正面から撮影した画像を、テンプレート画像と呼ぶ。
【００５５】
抽出部２１は、特徴量抽出部２１ａ、マッチング部２１ｂ、変換部２１ｃ、及び探索部２１ｄを有する。
特徴量抽出部２１ａは、入力画像の特徴量を抽出する。また、特徴量抽出部２１ａは、記憶部１８に記憶されたテンプレート画像を参照し、テンプレート画像の特徴量を抽出する。あるいは、予め、特徴量抽出部２１ａによって、テンプレート画像の特徴量が抽出されて記憶部１８に記憶されていても良い。この場合、特徴量抽出部２１ａは、記憶部１８に記憶されたテンプレート画像の特徴量を参照する。特徴量抽出部２１ａは、入力画像の特徴量及びテンプレート画像の特徴量を、マッチング部２１ｂに出力する。
【００５６】
マッチング部２１ｂは、入力画像の特徴量を、テンプレート画像の特徴量とマッチングさせるために必要な、入力画像の補正量を算出する。例えば、マッチング部２１ｂは、入力画像において歪んでいるセグメントディスプレイを、正面から撮影された画像に近づけるために必要な補正量を算出する。マッチング部２１ｂは、算出した補正量及び入力画像を、変換部１３に出力する。
なお、特徴量同士をマッチング出来ない場合は、入力画像にセグメントディスプレイが含まれていない可能性が高い。従って、この場合、例えば、補正量を算出せずに処理を終了する。
【００５７】
変換部２１ｃは、入力された補正量に基づき、入力画像を変換する。これにより、入力画像がテンプレート画像に対して歪んでいる場合には、その歪みが補正される。
【００５８】
探索部２１ｄは、記憶部１８に記憶されたテンプレート画像を参照する。そして、探索部２１ｄは、入力画像から、テンプレート画像とマッチングする部分を探索する。探索部２１ｄは、マッチングした部分を、候補画像として判定部１５に出力する。
以降の判定部１５及び読取部１６における処理は、図１に表した読取システム１と同様である。
【００５９】
なお、特徴量抽出部２１ａによる特徴量の抽出は、例えば、KAZE、AKAZE(Accelerated KAZE)、またはSIFT(Scale-invariant feature transform)などを用いて行われる。マッチング部２１ｂにおけるマッチングは、例えば、KNN(K Nearest Neighbor)、またはFLANN(Fast Library for Approximate Nearest Neighbors)などを用いて行われる。探索部２１ｄによる探索は、例えば、画像間の類似度に基づくパターンマッチングを用いて行われる。
【００６０】
本変形例に係る読取システム３では、特徴量を用いた入力画像の変換、及びテンプレート画像を用いたマッチングが行われる。すなわち、入力画像の全領域を変換するため、読取システム１に比べて、同一平面上に複数のセグメントディスプレイが存在する場合に有効である。
【００６１】
（第３変形例）
図６は、実施形態の第３変形例に係る読取システムの構成を表すブロック図である。
図６に表した読取システム４は、読取システム１との比較において、抽出部１２及び変換部１３に代えて抽出部３１を備える。抽出部３１は、学習部３１ａ、入力部３１ｂ、検出部３１ｃ、及び処理部３１ｄを有する。
【００６２】
読取システム４では、ニューラルネットワークを用いて、入力画像からセグメントディスプレイが撮影された候補画像が抽出される。例えば、抽出部３１には、事前に、教師データが入力され、ニューラルネットワークの学習が行われる。教師データは、例えば、セグメントディスプレイを含む歪んだ画像と、その画像においてセグメントディスプレイの位置を示すデータと、その画像の歪み量と、を含む。
【００６３】
学習部３１ａは、画像データが入力された際に、セグメントディスプレイが撮影された部分のデータに対してニューロンが反応（発火）し、且つ、その画像の歪み量に対応するニューロンが反応するよう、ニューラルネットワークを学習させる。学習部３１ａは、学習させたニューラルネットワークを記憶部１８に記憶する。なお、学習部３１ａによる上記学習は、判定部１５や読取部１６による処理が実行される処理装置で行われても良いし、これとは異なる別の処理装置を用いて行われても良い。上記学習には、好ましくは、より高速な演算性能を有する処理装置が用いられる。
【００６４】
その後、撮像部１１により、セグメントディスプレイの数値を読み取るために画像が取得され、画像が抽出部３１に入力される。画像が入力されると、入力部３１ｂは、記憶部１８に記憶された学習済みのニューラルネットワークを参照する。そして、入力部３１ｂは、このニューラルネットワークに、画像のデータを入力する。
【００６５】
ニューラルネットワークに画像データが入力されている間、ニューロンの反応があると、検出部３１ｃはその反応を検出する。そして、検出部３１ｃは、ニューロンが反応した画像の座標及び歪み量を検出し、処理部３１ｄに出力する。
【００６６】
処理部３１ｄは、入力された座標に基づき、入力画像から候補画像を抽出する。また、処理部３１ｄは、入力された歪み量に基づいて、候補画像の歪みを補正する。処理部３１ｄは、補正された候補画像を判定部１５に出力する。
なお、候補画像の抽出と、歪みの補正と、が行われる順序は、適宜変更できる。例えば、処理部３１ｄにおいて、入力画像の歪みが補正された後に、候補画像が抽出されても良い。
以降の判定部１５及び読取部１６における処理は、図１に表した読取システム１と同様である。
【００６７】
本変形例に係る読取システム３では、ニューラルネットワークを用いて画像の切り出しや補正を行う。このため、セグメントディスプレイの表示領域とその外枠とのコントラスト比が大きくなく、２値化画像から輪郭を抽出しにくい場合にも、より高精度に候補画像を抽出できる。従って、読取システム１に比べて、入力画像中のセグメントディスプレイの数値を、より高精度に読み取ることが可能となる。
【００６８】
図７は、実施形態に係る読取システムを実現するためのハードウェア構成を表すブロック図である。
例えば、実施形態に係る読取システムは、図７に表した読取装置５及び撮像装置６から構成される。読取装置５は、例えばコンピュータであり、ＲＯＭ(Read Only Memory)５１、ＲＡＭ(Random Access Memory)５２、ＣＰＵ(Central Processing Unit)５３、およびＨＤＤ(Hard Disk Drive)５４を有する。
【００６９】
ＲＯＭ５１は、コンピュータの動作を制御するプログラムを格納している。ＲＯＭ５１には、コンピュータを、上述した実施形態における、抽出部、変換部、判定部、読取部、探索部などとして機能させるために必要なプログラムが格納されている。
【００７０】
ＲＡＭ５２は、ＲＯＭ５１に格納されたプログラムが展開される記憶領域として機能する。ＣＰＵ５３は、ＲＯＭ５１に格納された制御プログラムを読み込み、当該制御プログラムに従ってコンピュータの動作を制御する。また、ＣＰＵ５３は、コンピュータの動作によって得られた様々なデータをＲＡＭ５２に展開する。ＨＤＤ５４は、上述した実施形態における記憶部１８として機能し、読み取りに必要な情報や、読み取りの過程で得られた情報を記憶する。
【００７１】
読取装置５を用いて、ニューラルネットワークを利用した読取システム４を実現させる場合、読取装置５は、さらに、ＧＰＵ（Graphics Processing Unit）や、ニューラルネットワークの処理に特化した専用チップを有していても良い。また、読取装置５は、ＨＤＤ５４に代えて、ｅＭＭＣ（embedded Multi Media Card）、ＳＳＤ（Solid State Drive）、ＳＳＨＤ（Solid State Hybrid Drive）などを有していても良い。
【００７２】
撮像装置６は、被写体（セグメントディスプレイ）を撮影し、取得した画像を読取装置５へ送信する。撮像装置６は、例えば、カメラである。
出力装置７は、読取装置５から出力されたデータ（読み取られたセグメントディスプレイの数値）を、ユーザが認識できるように出力する。出力装置７は、例えば、モニタ、プリンタ、またはスピーカなどである。
【００７３】
読取装置５、撮像装置６、及び出力装置７は、例えば、有線又は無線で相互に接続される。または、これらはネットワークを介して相互に接続されていても良い。あるいは、読取装置５、撮像装置６、及び出力装置７の少なくとも２つが、１つの装置に組み込まれていても良い。例えば、読取装置５が、撮像装置６の画像処理部などと一体に組み込まれていても良い。
【００７４】
以上で説明した実施形態に係る読取システム及び読取方法を用いることで、セグメントディスプレイに表示された数値を、より高精度に読み取ることが可能となる。同様に、コンピュータを、読取システムとして動作させるためのプログラムを用いることで、セグメントディスプレイに表示された数値を、より高精度にコンピュータに読み取らせることが可能となる。
【００７５】
以上、本発明のいくつかの実施形態を例示したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更などを行うことができる。これら実施形態やその変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。また、前述の各実施形態は、相互に組み合わせて実施することができる。
【符号の説明】
【００７６】
１〜４ 読取システム、  ５ 読取装置、  ６ 撮像装置、  ７ 出力装置、  １１ 撮像部、  １２、２１、３１ 抽出部、  １３ 変換部、  １５ 判定部、  １６ 読取部、  １８ 記憶部
【図１】
2019144704.tif 000003
【図２】
2019144704.tif 000004
【図３】
2019144704.tif 000005
【図４】
2019144704.tif 000006
【図５】
2019144704.tif 000007
【図６】
2019144704.tif 000008
【図７】
2019144704.tif 000009