(57)【特許請求の範囲】
【請求項１】
第１のメータを撮像することで得られた画像を取得する画像取得部と、
前記画像内の特徴量に基づいて、前記画像内の前記第１のメータが存在する領域を示すメータ領域を検出する領域検出部と、
検出対象メータ内の特徴を示す領域である特徴領域の位置を示す位置情報に基づいて、前記メータ領域の中から前記特徴領域に対応する領域を特定し、特定した領域である特定領域を示す複数の画素の複数の画素値と、前記特徴領域に対応する複数の画素値とに基づいて、前記第１のメータが前記検出対象メータであるか否かを検出するメータ検出部と、
を有するメータ検出装置。
【請求項２】
前記画像を生成する撮像部をさらに有する、
請求項１に記載のメータ検出装置。
【請求項３】
前記位置情報と前記特徴領域に対応する複数の画素値とを含む特徴領域情報を予め記憶する記憶部をさらに有する、
請求項１又は２に記載のメータ検出装置。
【請求項４】
検出結果を出力する出力部をさらに有する、
請求項１から３のいずれか１項に記載のメータ検出装置。
【請求項５】
前記第１のメータが前記検出対象メータでないことが検出された場合、メータの撮像を促す情報を出力する出力部をさらに有する、
請求項１から３のいずれか１項に記載のメータ検出装置。
【請求項６】
前記第１のメータが前記検出対象メータであることが検出された場合、前記メータ領域内に存在する針を示す箇所の輝度値に基づいて、予め決められた基準線に基づく前記針に対応する角度を検出し、前記検出対象メータの最小値、前記検出対象メータの最大値、前記基準線に基づく前記最小値に対応する角度、前記基準線に基づく前記最大値に対応する角度、及び前記針に対応する角度に基づいて、前記針が示すメータ値を算出する数値読取部をさらに有する、
請求項１から３のいずれか１項に記載のメータ検出装置。
【請求項７】
前記第１のメータが前記検出対象メータであることが検出された場合、前記メータ領域内に存在する針を示す箇所の輝度値に基づいて、予め決められた基準線に基づく前記針に対応する角度を検出し、前記検出対象メータの第１のメータ値、前記基準線に基づく前記第１のメータ値に対応する第１の角度、前記検出対象メータの第２のメータ値、前記基準線に基づく前記第２のメータ値に対応する第２の角度、及び前記針に対応する角度に基づいて、前記針が示すメータ値を算出する数値読取部をさらに有し、
前記針に対応する角度は、前記第１の角度から前記第２の角度の範囲に属する、
請求項１から３のいずれか１項に記載のメータ検出装置。
【請求項８】
メータ検出装置が、
第１のメータを撮像することで得られた画像を取得し、
前記画像内の特徴量に基づいて、前記画像内の前記第１のメータが存在する領域を示すメータ領域を検出し、
検出対象メータ内の特徴を示す領域である特徴領域の位置を示す位置情報に基づいて、前記メータ領域の中から前記特徴領域に対応する領域を特定し、
特定した領域である特定領域を示す複数の画素の複数の画素値と、前記特徴領域に対応する複数の画素値とに基づいて、前記第１のメータが前記検出対象メータであるか否かを検出する、
メータ検出方法。
【請求項９】
メータ検出装置に、
第１のメータを撮像することで得られた画像を取得し、
前記画像内の特徴量に基づいて、前記画像内の前記第１のメータが存在する領域を示すメータ領域を検出し、
検出対象メータ内の特徴を示す領域である特徴領域の位置を示す位置情報に基づいて、前記メータ領域の中から前記特徴領域に対応する領域を特定し、
特定した領域である特定領域を示す複数の画素の複数の画素値と、前記特徴領域に対応する複数の画素値とに基づいて、前記第１のメータが前記検出対象メータであるか否かを検出する、
処理を実行させるメータ検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メータ検出装置、メータ検出方法、及びメータ検出プログラムに関する。
【背景技術】
【０００２】
建物には、メータが備えられている。例えば、メータは、電気メータ、ガスメータなどである。
ここで、画像からメータが写っている部分画像を抽出し、当該部分画像に写っているメータの値を特定する情報処理装置が提案されている（特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−６８４６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、メータには、異なる機種であるが、同じ形状のメータが存在する。ここで、画像内のメータが検出対象メータであるか否かを装置が検出したい場合がある。例えば、装置は、画像内のメータの形状と検出対象メータの形状とを比較し、画像内のメータが検出対象メータであるか否かを検出する。しかし、当該比較では、形状が似ているが、異なる機種のメータが検出対象メータであると検出される。このように、異なる機種のメータが検出対象メータであると検出されることは、問題である。【０００５】
本発明の目的は、同じ機種のメータを検出することである。
【課題を解決するための手段】
【０００６】
本発明の一態様に係るメータ検出装置が提供される。メータ検出装置は、第１のメータを撮像することで得られた画像を取得する画像取得部と、前記画像内の特徴量に基づいて、前記画像内の前記第１のメータが存在する領域を示すメータ領域を検出する領域検出部と、検出対象メータ内の特徴を示す領域である特徴領域の位置を示す位置情報に基づいて、前記メータ領域の中から前記特徴領域に対応する領域を特定し、特定した領域である特定領域を示す複数の画素の複数の画素値と、前記特徴領域に対応する複数の画素値とに基づいて、前記第１のメータが前記検出対象メータであるか否かを検出するメータ検出部と、を有する。
【発明の効果】
【０００７】
本発明によれば、同じ機種のメータを検出できる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１のメータ検出装置の構成を示す機能ブロック図である。
【図２】実施の形態１のメータ検出装置が有するハードウェアの構成を示す図である。
【図３】実施の形態１のメータ機種テーブルの具体例を示す図である。
【図４】実施の形態１の差異領域の具体例を示す図である。
【図５】実施の形態１のメータ検出装置が実行する処理を示すフローチャート（その１）である。
【図６】実施の形態１のメータ検出装置が実行する処理を示すフローチャート（その２）である。
【図７】実施の形態１の針の可動領域を説明するための図である。
【図８】実施の形態１のヒストグラムの例を示す図である。
【図９】実施の形態２のメータ検出装置が有するハードウェアの構成を示す図である。
【図１０】実施の形態２のメータ検出装置の構成を示す機能ブロック図である。
【図１１】実施の形態２のメータ検出装置が実行する処理を示すフローチャート（その１）である。
【図１２】実施の形態２のメータ検出装置が実行する処理を示すフローチャート（その２）である。
【図１３】実施の形態３のメータ検出装置の構成を示す機能ブロック図である。
【図１４】実施の形態３のメータ機種テーブルの具体例を示す図である。
【図１５】実施の形態４のメータ機種テーブルの具体例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照しながら実施の形態を説明する。以下の実施の形態は、例にすぎず、本発明の範囲内で種々の変更が可能である。
【００１０】
実施の形態１．
図１は、実施の形態１のメータ検出装置の構成を示す機能ブロック図である。メータ検出装置１００は、メータ検出方法を実行する装置である。
ここで、メータ検出装置１００が有するハードウェアについて説明する。
図２は、実施の形態１のメータ検出装置が有するハードウェアの構成を示す図である。メータ検出装置１００は、プロセッサ１０１、揮発性記憶装置１０２、及び不揮発性記憶装置１０３を有する。プロセッサ１０１、揮発性記憶装置１０２、及び不揮発性記憶装置１０３は、バスで接続されている。
【００１１】
プロセッサ１０１は、メータ検出装置１００全体を制御する。例えば、プロセッサ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、又はＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などである。プロセッサ１０１は、マルチプロセッサでもよい。メータ検出装置１００は、処理回路によって実現されてもよく、又は、ソフトウェア、ファームウェア若しくはそれらの組み合わせによって実現されてもよい。なお、処理回路は、単一回路又は複合回路でもよい。
【００１２】
揮発性記憶装置１０２は、メータ検出装置１００の主記憶装置である。例えば、揮発性記憶装置１０２は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。不揮発性記憶装置１０３は、メータ検出装置１００の補助記憶装置である。例えば、不揮発性記憶装置１０３は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）である。
【００１３】
図１に戻って、メータ検出装置１００を説明する。
メータ検出装置１００は、記憶部１１０、機種指定部１２０、差異抽出部１３０、画像取得部１４０、領域検出部１５０、メータ検出部１６０、数値読取部１７０、及び出力部１８０を有する。
記憶部１１０は、揮発性記憶装置１０２又は不揮発性記憶装置１０３に確保した記憶領域として実現してもよい。
【００１４】
機種指定部１２０、差異抽出部１３０、画像取得部１４０、領域検出部１５０、メータ検出部１６０、数値読取部１７０、及び出力部１８０の一部又は全部は、プロセッサ１０１によって実現してもよい。
機種指定部１２０、差異抽出部１３０、画像取得部１４０、領域検出部１５０、メータ検出部１６０、数値読取部１７０、及び出力部１８０の一部又は全部は、プロセッサ１０１が実行するプログラムのモジュールとして実現してもよい。例えば、プロセッサ１０１が実行するプログラムは、メータ検出プログラムとも言う。例えば、メータ検出プログラムは、記録媒体に記録されている。
【００１５】
記憶部１１０は、撮像装置がメータを撮像することで得られた画像を記憶する。当該メータは、第１のメータとも言う。また、当該撮像装置は、後述するように、メータ検出装置１００が有してもよい。また、当該撮像装置は、メータ検出装置１００に接続可能な撮像装置でもよい。なお、当該撮像装置がメータ検出装置１００に接続する場合、当該撮像装置は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）又はＩＥＥＥ  １３９４などを用いて、メータ検出装置１００に接続されてもよい。また、当該撮像装置は、インターネットを介してメータ検出装置１００に接続されてもよい。
【００１６】
また、記憶部１１０は、メータが写っていない画像を記憶することもある。
ここで、記憶部１１０が記憶する画像は、カメラ画像と表現する。カメラ画像は、複数の画素を構成するデータである。また、カメラ画像は、ＲＧＢ（Ｒｅｄ  Ｇｒｅｅｎ  Ｂｌｕｅ）又はグレースケールで表現される。
【００１７】
また、記憶部１１０は、メータ機種テーブルを記憶する。ここで、メータ機種テーブルを説明する。
図３は、実施の形態１のメータ機種テーブルの具体例を示す図である。メータ機種テーブル１１１は、記憶部１１０に格納される。
メータ機種テーブル１１１は、機種ＩＤ（ｉｄｅｎｔｉｆｉｅｒ）、テンプレート画像、最小値、最大値、最小角度、最大角度、針領域距離、及び針領域幅の項目を有する。
【００１８】
機種ＩＤの項目は、機種を区別するための識別子を示す。ここで、機種は、メータの表示面の見た目が同じメータの集合とする。但し、メータの針などの可動部分又は製造番号の刻印などの細かな違いは、無視するものとする。すなわち、メータの種類、形状、及び大きさがほぼ同じ、かつ表示面の差がほぼない、複数のメータは、同じ機種とする。
テンプレート画像の項目は、テンプレート画像を示す。テンプレート画像は、メータを撮像することで得られた画像である。なお、テンプレート画像は、カメラ画像と同じファイル形式である。
【００１９】
最小値の項目は、テンプレート画像内のメータの最小値を示す。最大値の項目は、テンプレート画像内のメータの最大値を示す。
最小角度の項目は、最小角度を示す。最小角度は、予め決められた基準線に基づく最小値に対応する角度である。
最大角度の項目は、最大角度を示す。最大角度は、予め決められた基準線に基づく最大値に対応する角度である。
針領域距離の項目は、針領域距離を示す。針領域幅の項目は、針領域幅を示す。
【００２０】
また、メータ機種テーブル１１１は、上記の項目以外の項目を有してもよい。例えば、メータ機種テーブル１１１は、さらに、メータの単位の項目を有する。
機種指定部１２０は、検出対象メータの機種ＩＤを指定する。
【００２１】
差異抽出部１３０は、機種指定部１２０が指定した機種ＩＤのテンプレート画像と、メータ機種テーブル１１１に含まれている当該テンプレート画像以外のテンプレート画像とを比較する。メータ機種テーブル１１１に含まれている当該テンプレート画像以外のテンプレート画像は、比較対象のテンプレート画像と表現する。例えば、差異抽出部１３０は、比較を次のように行う。機種指定部１２０が指定した機種ＩＤのテンプレート画像が、ＩＤ＿１のテンプレート画像とする。比較対象のテンプレート画像は、ＩＤ＿２のテンプレート画像とする。差異抽出部１３０は、ＩＤ＿１のテンプレート画像とＩＤ＿２のテンプレート画像とを比較する。
【００２２】
これにより、差異抽出部１３０は、機種指定部１２０が指定した機種ＩＤのテンプレート画像が比較対象のテンプレート画像と異なる領域を抽出する。当該領域は、差異領域と表現する。
【００２３】
ここで、差異領域の具体例を示す。
図４は、実施の形態１の差異領域の具体例を示す図である。図４は、差異領域を矢印と矩形とで示している。例えば、矢印２００が示す矩形の領域は、差異領域である。ここで、差異領域は、特徴を示す領域である特徴領域とも言える。
画像取得部１４０は、記憶部１１０に格納されているカメラ画像を取得する。
【００２４】
領域検出部１５０は、カメラ画像内の特徴量に基づいて、カメラ画像内のメータが存在する領域を検出する。また、領域検出部１５０は、カメラ画像内の特徴量と、機種指定部１２０が指定した機種ＩＤのテンプレート画像内の特徴量との対応関係に基づいて、メータ領域を算出してもよい。領域検出部１５０の処理については、後で詳細に説明する。なお、以下、メータが存在する領域は、メータ領域と表現する。
【００２５】
メータ検出部１６０は、特徴領域情報とメータ領域内の画像情報とに基づいて、カメラ画像内のメータが検出対象メータであるか否かを検出する。特徴領域情報は、検出対象メータ内の特徴を示す領域である特徴領域の情報である。なお、特徴領域の情報は、機種指定部１２０が指定した機種ＩＤに対応する差異領域である。また、特徴領域情報は、検出対象メータの表示面の特徴を示す領域である特徴領域の情報であると表現してもよい。
【００２６】
例えば、メータ検出部１６０は、次のように、カメラ画像内のメータが検出対象メータであるか否かを検出する。ここで、特徴領域情報は、特徴領域の位置を示す位置情報と特徴領域に対応する複数の画素値とを含む。メータ検出部１６０は、位置情報に基づいて、メータ領域の中から特徴領域に対応する領域を特定する。メータ検出部１６０は、特定した領域である特定領域を示す複数の画素の複数の画素値と、特徴領域に対応する複数の画素値とに基づいて、カメラ画像内のメータが検出対象メータであるか否かを検出する。
【００２７】
また、メータ検出部１６０は、カメラ画像内のメータが検出対象メータであることを検出した場合、カメラ画像内のメータが、機種指定部１２０が指定した機種ＩＤのメータと同じ機種であることを検出できる。
【００２８】
数値読取部１７０は、カメラ画像に存在するメータが検出対象メータであることが検出された場合、メータ領域内に存在する針を示す箇所の輝度値に基づいて、予め決められた基準線に基づく針に対応する角度を検出する。数値読取部１７０は、検出対象メータの最小値、検出対象メータの最大値、最小値に対応する最小角度、最大値に対応する最大角度、及び針に対応する角度に基づいて、針が示すメータ値を算出する。
このように、数値読取部１７０は、カメラ画像に存在するメータの針が示すメータ値を読み取る。
【００２９】
出力部１８０は、読み取られたメータ値を出力する。また、出力部１８０は、検出結果を出力してもよい。例えば、出力部１８０は、カメラ画像内に存在するメータが検出対象メータであることを出力する。また、例えば、出力部１８０は、カメラ画像内に存在するメータが検出対象メータでないことを出力する。
これにより、ユーザは、カメラ画像内に存在するメータが検出対象メータであるか否かを認識することができる。
なお、例えば、出力部１８０は、検出結果をディスプレイに出力してもよい。また、例えば、出力部１８０は、検出結果を音声出力してもよい。また、例えば、出力部１８０は、検出結果を他の装置に出力してもよい。また、例えば、出力部１８０は、検出結果を紙媒体に出力してもよい。
【００３０】
次に、メータ検出装置１００が実行する処理についてフローチャートを用いて説明する。
図５は、実施の形態１のメータ検出装置が実行する処理を示すフローチャート（その１）である。
（ステップＳ１１）機種指定部１２０は、機種ＩＤを指定する。例えば、機種指定部１２０は、ユーザがメータ検出装置１００に入力した機種ＩＤを指定する。また、例えば、機種指定部１２０は、メータ検出装置１００に表示された機種ＩＤ一覧の中からユーザが指定した機種ＩＤを指定する。また、例えば、メータを点検する順番を示す点検順番情報が記憶部１１０に格納されている場合、機種指定部１２０は、点検順番情報に基づいて、機種ＩＤを指定する。また、例えば、機種指定部１２０は、メータ検出装置１００に接続可能な装置が指示した機種ＩＤを指定してもよい。なお、当該装置は、図示を省略されている。
【００３１】
（ステップＳ１２）差異抽出部１３０は、メータ機種テーブル１１１を参照し、機種指定部１２０が指定した機種ＩＤのテンプレート画像を特定する。差異抽出部１３０は、指定された機種ＩＤのテンプレート画像と、メータ機種テーブル１１１に含まれている比較対象のテンプレート画像とを比較する。これにより、差異抽出部１３０は、差異領域を抽出する。
【００３２】
ここで、差異抽出部１３０が実行する差異領域の抽出について、詳細に説明する。また、機種指定部１２０が指定した機種ＩＤのテンプレート画像は、指定テンプレート画像と表現する。差異抽出部１３０は、１画素単位で指定テンプレート画像と比較対象テンプレート画像とを比較する。差異抽出部１３０は、画素値の差が予め決められた閾値よりも大きい画素を差異領域とする。差異領域は、指定テンプレート画像が示すメータの特徴領域とも言える。例えば、メータ機種テーブル１１１には、１０種類の機種ＩＤが登録されているものとする。９種類の比較対象テンプレート画像の画素値がほぼ同じ値であり、１種類の指定テンプレート画像の画素値と９種類の比較対象テンプレート画像の画素値との差が閾値よりも大きい画素は、特徴領域と言える。一方、９種類の比較対象テンプレート画像の画素値のいずれかが、指定テンプレート画像の画素値とほぼ同じ場合、指定テンプレート画像の当該画素値の画素は、特徴領域と言えない。
【００３３】
また、差異抽出部１３０は、１画素単位で比較しなくてもよい。例えば、差異抽出部１３０は、１６×１６画素の単位で比較してもよい。そして、差異抽出部１３０は、指定テンプレート画像の１６×１６画素の各画素値の合計画素値と比較対象のテンプレート画像の１６×１６画素の各画素値の合計画素値との差を算出する。差異抽出部１３０は、差が予め決められた閾値よりも大きい場合、指定テンプレート画像の１６×１６画素を差異領域とする。
【００３４】
このように、差異抽出部１３０は、差異領域を抽出することで、指定テンプレート画像が示すメータの特徴領域を抽出できる。なお、当該特徴領域は、特徴領域情報である。
また、以下、特徴領域は、複数の画素を含むものとする。
【００３５】
（ステップＳ１３）画像取得部１４０は、記憶部１１０からカメラ画像を取得する。
（ステップＳ１４）領域検出部１５０は、カメラ画像の複数の特徴点を抽出する。領域検出部１５０は、抽出した複数の特徴点のそれぞれの特徴量を算出する。特徴点から算出される特徴量は、局所特徴量と表現する。また、複数の特徴点のそれぞれの特徴量は、カメラ画像の局所特徴量一覧と表現する。
【００３６】
なお、特徴点の抽出と局所特徴量の算出では、ＳＩＦＴ（Ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅ  ｔｒａｎｓｆｏｒｍ）、ＳＵＲＦ（Ｓｐｅｅｄ  ｕｐ  ｒｏｂｕｓｔ  ｆｅａｔｕｒｅｓ）、ＯＲＢ（Ｏｒｉｅｎｔｅｄ  ＦＡＳＴ  ａｎｄ  ｒｏｔａｔｅｄ  ＢＲＩＥＦ）、ＫＡＺＥなどが用いられる。
【００３７】
また、領域検出部１５０は、指定テンプレート画像の複数の特徴点を抽出する。領域検出部１５０は、抽出した複数の特徴点のそれぞれの局所特徴量を算出する。また、複数の特徴点のそれぞれの特徴量は、指定テンプレート画像の局所特徴量一覧と表現する。
上記では、領域検出部１５０が指定テンプレート画像の局所特徴量一覧を算出する場合を説明した。しかし、指定テンプレート画像の局所特徴量一覧は、予めメータ機種テーブル１１１に登録されてもよい。
【００３８】
（ステップＳ１５）領域検出部１５０は、カメラ画像の局所特徴量一覧と指定テンプレート画像の局所特徴量一覧とを比較し、カメラ画像の複数の特徴点のそれぞれと指定テンプレート画像の複数の特徴点のそれぞれとの対応関係を決める。対応関係は、局所特徴量同士の距離によって求められる。局所特徴量は他の局所特徴量との比較が可能であり、比較により局所特徴量同士の類似度を表す距離と呼ばれる値を算出できる。距離の値が小さいほど２つの局所特徴量は類似しており、距離の値が大きいほど２つの局所特徴量は類似していないということになる。従って、カメラ画像のそれぞれの局所特徴量に対して、指定テンプレート画像の局所特徴量を１つずつ比較して距離を算出し、最も距離の値が小さい指定テンプレート画像の局所特徴量を求める。これにより、カメラ画像の局所特徴量と指定テンプレート画像の局所特徴量との対応関係が求まる。なお、前述の対応関係の算出手法は、総当たりによる手法であり、一例である。例えばｋｄ木による最近傍探索手法を用いてもよい。
【００３９】
図６は、実施の形態１のメータ検出装置が実行する処理を示すフローチャート（その２）である。
（ステップＳ２１）領域検出部１５０は、全ての対応関係に対して算出した各距離の合計値又は平均値が予め決められた閾値以下であるか否かを判定する。
各距離の合計値又は平均値が当該閾値以下である場合、領域検出部１５０は、カメラ画像内にメータが存在すると判定する。すなわち、領域検出部１５０は、カメラ画像内のメータを検出する。そして、領域検出部１５０は、処理をステップＳ２２に進める。
各距離の合計値又は平均値が当該閾値を超える場合、領域検出部１５０は、カメラ画像内にメータが存在しないと判定する。そして、領域検出部１５０は、処理を終了する。
【００４０】
（ステップＳ２２）領域検出部１５０は、ステップＳ１５で求めた、カメラ画像の局所特徴量と、指定テンプレート画像の局所特徴量との対応関係を元に、メータ領域を算出する。領域検出部１５０は、メータ領域を算出するために、射影変換行列と呼ばれる３×３の行列を最小二乗法によって算出する。この射影変換行列は、指定テンプレート画像の座標系を、カメラ画像に写るメータの領域の座標系に変換するものである。従って、この射影変換行列により、カメラ画像に写るメータ領域を特定できる。なお、対応関係には外れ値が含まれている可能性があるため、外れ値を除外するためにＲａｎｄｏｍ  ｓａｍｐｌｅ  ｃｏｎｓｅｎｓｕｓ（ＲＡＮＳＡＣ）と呼ばれる手法を適用しても良い。これにより、領域検出部１５０は、メータ領域を検出する。
【００４１】
（ステップＳ２３）領域検出部１５０は、カメラ画像の特徴点と指定テンプレート画像の特徴点との対応関係に基づいて、カメラ画像の座標系を指定テンプレート画像の座標系に変換する。当該変換では、領域検出部１５０は、ステップＳ２２で算出した射影変換行列を用いる。このように、領域検出部１５０は、射影変換行列を用いて、指定テンプレート画像の座標系に変換されたカメラ画像であるメータ画像を生成する。
【００４２】
なお、領域検出部１５０は、メータ画像を生成しなくてもよい。メータ画像が生成されない場合、領域検出部１５０は、射影変換行列を記憶部１１０に格納する。そして、領域検出部１５０は、カメラ画像のメータ領域を参照する場合、射影変換行列を用いて指定テンプレート画像の座標系に変換されたカメラ画像のメータ領域を参照してもよい。
また、領域検出部１５０は、メータ領域の形状が凸ではないなどの異常がある場合、処理を終了してもよい。
【００４３】
（ステップＳ２４）メータ検出部１６０は、指定テンプレート画像が示すメータの特徴領域の位置を示す位置情報に基づいて、メータ画像の中から、特徴領域に対応する領域を特定する。特定した領域は、メータ画像の特定領域と表現する。なお、指定された機種ＩＤの特徴領域は、検出対象メータの特徴領域である。
【００４４】
メータ検出部１６０は、検出対象メータの特徴領域とメータ画像の特定領域とを比較する。そして、メータ検出部１６０は、検出対象メータの特徴領域の各画素値の合計値とメータ画像の特定領域の各画素値の合計値との差が予め決められた閾値以下であるか否かを判定する。差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理を終了する。
【００４５】
検出対象メータの特徴領域が複数である場合、メータ検出部１６０は、次のような処理を実行する。メータ検出部１６０は、特徴領域毎に、検出対象メータの特徴領域の各画素値の合計値とメータ画像の特定領域の各画素値の合計値との差が閾値以下であるか否かを判定する。全ての特徴領域において、差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理を終了する。
【００４６】
また、メータ検出部１６０は、検出対象メータの特徴領域の各画素値の平均値とメータ画像の特定領域の各画素値の平均値との差が閾値以下であるか否かを判定してもよい。差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理を終了する。
【００４７】
検出対象メータの特徴領域が複数である場合、メータ検出部１６０は、次のような処理を実行する。メータ検出部１６０は、特徴領域毎に、検出対象メータの特徴領域の各画素値の平均値とメータ画像の特定領域の各画素値の平均値との差が閾値以下であるか否かを判定する。全ての特徴領域において、差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理を終了する。
【００４８】
また、メータ検出部１６０は、検出対象メータの特徴領域の各画素とメータ画像の特定領域の各画素との相関係数を算出してもよい。そして、相関係数が閾値以上である場合、メータ検出部１６０は、処理をステップＳ２５に進める。相関係数が閾値よりも小さい場合、メータ検出部１６０は、処理を終了する。
ここで、ステップＳ２４でＮｏの場合、メータ検出部１６０は、カメラ画像内のメータが検出対象メータでないことを検出する。
【００４９】
（ステップＳ２５）メータ検出部１６０は、カメラ画像内に存在するメータが検出対象メータであることを検出する。また、例えば、機種指定部１２０が指定した機種ＩＤがＩＤ＿１である場合、メータ検出部１６０は、カメラ画像内のメータが機種ＩＤのＩＤ＿１であることを検出できる。
（ステップＳ２６）数値読取部１７０は、メータ画像内の針の可動領域に基づいて、ヒストグラムを生成する。ここで、針の可動領域について説明する。
【００５０】
図７は、実施の形態１の針の可動領域を説明するための図である。図７は、メータ画像を示している。
矢印３０１は、最小角度を示す。矢印３０２は、最大角度を示す。図７では、角度は、基準線３００を基準に、時計回りで定義される。しかし、角度は、他の定義で定義されてもよい。
【００５１】
針領域距離３０３は、針領域距離を示す。針領域距離は、メータの中心から針の根元までの距離である。針領域幅３０４は、針領域幅を示す。針領域幅は、針の長さである。また、針領域距離と針領域幅は、メータ画像の画素数で定義してもよい。さらに、針領域距離と針領域幅は、メータ画像の大きさに対する割合で定義してよい。
可動領域３０５は、針の可動領域を示す。可動領域３０５は、最小角度から最大角度までの範囲の領域である。
【００５２】
次に、ヒストグラムについて説明する。
図８は、実施の形態１のヒストグラムの例を示す図である。横軸は、可動領域３０５の角度を示す。縦軸は、各角度の画素の輝度を示す。なお、ヒストグラムのビンの数は、任意である。
このように、数値読取部１７０は、メータ画像内の針の可動領域に基づいて、ヒストグラムを生成する。
【００５３】
（ステップＳ２７）数値読取部１７０は、ヒストグラムに基づいて、メータ画像内の針が示すメータ値を算出する。例えば、メータの針が黒色、背景が白色の場合、数値読取部１７０は、ヒストグラム内で最も輝度が低いビンを検出する。すなわち、メータの針が黒色である場合、針の輝度は、最も低い。そのため、数値読取部１７０は、ヒストグラム内で最も輝度が低いビンを検出する。なお、検出されたビンの角度は、メータ画像内の針に対応する角度である。
【００５４】
数値読取部１７０は、最小値、最大値、最小角度、及び最大角度を用いて、メータ値に算出する。例えば、カメラ画像内のメータがＩＤ＿１であることを検出した場合、数値読取部１７０は、メータ機種テーブル１１１に登録されているＩＤ＿１に対応する最小値、最大値、最小角度、及び最大角度を用いて、メータ値に算出する。具体的には、最小値が０、最大値が１００、最小角度が６６°、最大角度が２９３°、検出されたビンの角度が１００°とする。数値読取部１７０は、１００°に対応するメータ値である１５（＝（１００−６６）÷（２９３−６６）×（１００−０）＋０）を算出する。
また、例えば、数値読取部１７０は、針が白色、背景が黒色の場合、最も輝度が高いビンを検出する。
（ステップＳ２８）出力部１８０は、メータ値を出力する。
【００５５】
実施の形態１によれば、メータ検出装置１００は、検出対象メータ内の特徴領域を用いて、カメラ画像内のメータが検出対象メータであるか否かを判定し、判定結果により、カメラ画像内のメータが検出対象メータであることを検出できる。すなわち、メータ検出装置１００は、カメラ画像内のメータが検出対象メータと同じ機種であることを検出できる。よって、メータ検出装置１００は、同じ機種のメータを検出することができる。
【００５６】
また、メータ検出装置１００は、検出対象メータの特徴領域とメータ画像の特定領域とを比較する。すなわち、メータ検出装置１００は、検出対象メータ内の全領域とカメラ画像内のメータ領域とを比較しない。そのため、メータ検出装置１００は、処理負荷を軽減できる。
【００５７】
実施の形態２．
次に、実施の形態２を説明する。実施の形態２は、実施の形態１と相違する事項を主に説明し、実施の形態１と共通する事項の説明を省略する。実施の形態２は、図１〜８を参照する。
【００５８】
図９は、実施の形態２のメータ検出装置が有するハードウェアの構成を示す図である。メータ検出装置１００は、さらに、撮像装置１０４を有する。
例えば、撮像装置１０４は、レンズ及びセンサを有する。撮像装置１０４は、メータを撮像する。
図２に示される構成と同じ図９の構成は、図２に示される符号と同じ符号を付している。
【００５９】
図１０は、実施の形態２のメータ検出装置の構成を示す機能ブロック図である。メータ検出装置１００は、さらに、撮像部１９０を有する。撮像部１９０の一部又は全部は、撮像装置１０４によって実現してもよい。
撮像部１９０は、カメラ画像を生成する。撮像部１９０は、カメラ画像を記憶部１１０に格納する。
図１に示される構成と同じ図１０の構成は、図１に示される符号と同じ符号を付している。
【００６０】
次に、メータ検出装置１００が実行する処理についてフローチャートを用いて説明する。
図１１は、実施の形態２のメータ検出装置が実行する処理を示すフローチャート（その１）である。図１１の処理では、ステップＳ１２ａが実行される点が、図５の処理と異なる。そのため、図１１では、ステップＳ１２ａを説明する。図１１における他のステップについては、図５のステップ番号と同じ番号を付することによって、処理の説明を省略する。
（ステップＳ１２ａ）撮像部１９０は、カメラ画像を生成する。撮像部１９０は、カメラ画像を記憶部１１０に格納する。
【００６１】
図１２は、実施の形態２のメータ検出装置が実行する処理を示すフローチャート（その２）である。図１２の処理では、ステップＳ２１ａ，Ｓ２４ａが実行される点が、図６の処理と異なる。そのため、図１２では、ステップＳ２１ａ，Ｓ２４ａを説明する。図１２における他のステップについては、図６のステップ番号と同じ番号を付することによって、処理の説明を省略する。
【００６２】
（ステップＳ２１ａ）領域検出部１５０は、全ての対応関係に対して算出した各距離の合計値又は平均値が予め決められた閾値以下であるか否かを判定する。
各距離の合計値又は平均値が当該閾値以下である場合、領域検出部１５０は、カメラ画像内にメータが存在すると判定する。すなわち、領域検出部１５０は、カメラ画像内のメータを検出する。そして、領域検出部１５０は、処理をステップＳ２２に進める。
【００６３】
各距離の合計値又は平均値が当該閾値を超える場合、領域検出部１５０は、カメラ画像内にメータが存在しないと判定する。そして、領域検出部１５０は、処理をステップＳ１２ａに進める。
【００６４】
（ステップＳ２４ａ）メータ検出部１６０は、メータ画像の中から、機種指定部１２０が指定した機種ＩＤの特徴領域に相当する領域を特定する。
メータ検出部１６０は、検出対象メータの特徴領域とメータ画像の特定領域とを比較する。そして、メータ検出部１６０は、検出対象メータの特徴領域の各画素値の合計値とメータ画像の特定領域の各画素値の合計値との差が予め決められた閾値以下であるか否かを判定する。差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理をステップＳ１２ａに進める。
【００６５】
検出対象メータの特徴領域が複数である場合、メータ検出部１６０は、次のような処理を実行する。メータ検出部１６０は、特徴領域毎に、検出対象メータの特徴領域の各画素値の合計値とメータ画像の特定領域の各画素値の合計値との差が閾値以下であるか否かを判定する。全ての特徴領域において、差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理をステップＳ１２ａに進める。
【００６６】
また、メータ検出部１６０は、検出対象メータの特徴領域の各画素値の平均値とメータ画像の特定領域の各画素値の平均値との差が閾値以下であるか否かを判定してもよい。差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理をステップＳ１２ａに進める。
【００６７】
検出対象メータの特徴領域が複数である場合、メータ検出部１６０は、次のような処理を実行する。メータ検出部１６０は、特徴領域毎に、検出対象メータの特徴領域の各画素値の平均値とメータ画像の特定領域の各画素値の平均値との差が閾値以下であるか否かを判定する。全ての特徴領域において、差が閾値以下である場合、メータ検出部１６０は、処理をステップＳ２５に進める。差が閾値を超える場合、メータ検出部１６０は、処理をステップＳ１２ａに進める。
【００６８】
また、メータ検出部１６０は、検出対象メータの特徴領域の各画素とメータ画像の特定領域の各画素との相関係数を算出してもよい。そして、相関係数が閾値以上である場合、メータ検出部１６０は、処理をステップＳ２５に進める。相関係数が閾値よりも小さい場合、メータ検出部１６０は、処理をステップＳ１２ａに進める。
ここで、ステップＳ２４ａでＮｏの場合、メータ検出部１６０は、カメラ画像内のメータが検出対象メータでないことを検出する。
【００６９】
なお、ステップＳ２１ａでＮｏ又はステップＳ２４ａでＮｏの場合、出力部１８０は、カメラ画像内のメータが検出対象メータでないことを示す情報を出力してもよい。これにより、ユーザは、カメラ画像内のメータが検出対象メータでないことを認識することができる。
【００７０】
また、ステップＳ２１ａでＮｏ又はステップＳ２４ａでＮｏの場合、出力部１８０は、メータの撮像を促す情報を出力してもよい。このように、カメラ画像内のメータが検出対象メータでないことが検出された場合、出力部１８０は、メータの撮像を促す情報を出力する。これにより、ユーザは、異なる機種のメータの撮影が必要であることを認識できる。
【００７１】
実施の形態２によれば、メータ検出装置１００は、リアルタイムに撮像することで得られたカメラ画像内のメータが検出対象メータであるか否かを検出できる。
【００７２】
実施の形態３．
次に、実施の形態３を説明する。実施の形態３は、実施の形態１と相違する事項を主に説明し、実施の形態１と共通する事項の説明を省略する。実施の形態３は、図１〜８を参照する。
図１３は、実施の形態３のメータ検出装置の構成を示す機能ブロック図である。また、図１に示される構成と同じ図１３の構成は、図１に示される符号と同じ符号を付している。
差異抽出部１３０は、機種ＩＤ毎に差異領域を抽出する。差異抽出部１３０は、機種ＩＤ毎の差異領域をメータ機種テーブルに登録する。
【００７３】
図１４は、実施の形態３のメータ機種テーブルの具体例を示す図である。メータ機種テーブル１１１ａは、記憶部１１０に格納される。メータ機種テーブル１１１ａの各機種ＩＤには、差異領域が対応付けられている。
このように、差異抽出部１３０は、予め差異領域をメータ機種テーブル１１１ａに登録する。すなわち、記憶部１１０は、予め特徴領域情報を記憶する。これにより、メータ検出装置１００は、ステップＳ１２を実行しなくて済む。そして、例えば、メータ検出部１６０は、ステップＳ２４で、機種指定部１２０が指定した機種ＩＤに対応する差異領域をメータ機種テーブル１１１ａから取得すればよい。
【００７４】
実施の形態３によれば、メータ検出装置１００は、ステップＳ１２を実行しなくて済むので、処理負荷を軽減できる。
【００７５】
実施の形態４．
次に、実施の形態４を説明する。実施の形態４は、実施の形態１と相違する事項を主に説明し、実施の形態１と共通する事項の説明を省略する。実施の形態４は、図１〜８を参照する。
【００７６】
図１５は、実施の形態４のメータ機種テーブルの具体例を示す図である。メータ機種テーブル１１１ｂは、記憶部１１０に格納される。
メータ機種テーブル１１１ｂは、最小値、最大値、最小角度、及び最大角度の項目を有さない。メータ機種テーブル１１１ｂは、最小値、最大値、最小角度、及び最大角度の項目に変えて、メータ値・角度リストの項目を有する。
メータ値・角度リストの項目は、２つ以上のメータ値と、２つ以上のメータ値に対応する角度とを示す。
【００７７】
数値読取部１７０は、ヒストグラムに基づいて検出されたビンの角度と、メータ値・角度リストとに基づいて、メータ値を算出する。例えば、ヒストグラムに基づいて検出されたビンの角度が、１３０°とする。また、カメラ画像内のメータが、ＩＤ＿２とする。数値読取部１７０は、１３０°が１１３°から１５８°の範囲に属することを検出する。数値読取部１７０は、メータ機種テーブル１１１ｂを参照し、１１３°に対応するメータ値２０を検出する。数値読取部１７０は、メータ機種テーブル１１１ｂを参照し、１５８°に対応するメータ値４０を検出する。数値読取部１７０は、１３０°に対応するメータ値である２８（＝（１３０−１１３）÷（１５８−１１３）×（４０−２０）＋２０）を算出する。
【００７８】
なお、例えば、上記の例では、１１３°は、第１の角度とも言う。メータ値２０は、第１のメータ値とも言う。１５８°は、第２の角度とも言う。メータ値４０は、第２のメータ値とも言う。
【００７９】
実施の形態４によれば、メータ検出装置１００は、最小値と最大値を用いて針が示すメータ値を算出するよりも、精度の高いメータ値を算出できる。
【００８０】
以上に説明した各実施の形態における特徴は、互いに適宜組み合わせることができる。また、例えば、実施の形態１〜４のメータ検出装置１００は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、タブレット装置、又はスマートフォンなどの携帯装置と考えてもよい。
【符号の説明】
【００８１】
１００  メータ検出装置、  １０１  プロセッサ、  １０２  揮発性記憶装置、  １０３  不揮発性記憶装置、  １０４  撮像装置、  １１０  記憶部、  １１１，１１１ａ，１１１ｂ  メータ機種テーブル、  １２０  機種指定部、  １３０  差異抽出部、  １４０  画像取得部、  １５０  領域検出部、  １６０  メータ検出部、  １７０  数値読取部、  １８０  出力部、  １９０  撮像部、  ２００  矢印、  ３００  基準線、  ３０１  矢印、  ３０２  矢印、  ３０３  針領域距離、  ３０４  針領域幅、  ３０５  可動領域。
【図１】
0006847337.tif 000002
【図２】
0006847337.tif 000003
【図３】
0006847337.tif 000004
【図４】
0006847337.tif 000005
【図５】
0006847337.tif 000006
【図６】
0006847337.tif 000007
【図７】
0006847337.tif 000008
【図８】
0006847337.tif 000009
【図９】
0006847337.tif 000010
【図１０】
0006847337.tif 000011
【図１１】
0006847337.tif 000012
【図１２】
0006847337.tif 000013
【図１３】
0006847337.tif 000014
【図１４】
0006847337.tif 000015
【図１５】
0006847337.tif 000016