(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023111319
(43)【公開日】2023-08-10
(54)【発明の名称】プログラム、情報処理装置、および情報処理方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20230803BHJP
G06V 30/412 20220101ALI20230803BHJP
G06V 30/00 20220101ALI20230803BHJP
G08C 19/00 20060101ALI20230803BHJP
【FI】
G06T7/00 300F
G06K9/20 340C
G06K9/00 L
G08C19/00 301G
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022013121
(22)【出願日】2022-01-31
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】櫻井 強一
(72)【発明者】
【氏名】峯邑 隆司
【テーマコード(参考)】
2F073
5B029
5B064
5L096
【Fターム(参考)】
2F073AA03
2F073AA04
2F073AA06
2F073AA12
2F073AA25
2F073AA31
2F073AA40
2F073AB01
2F073AB04
2F073AB05
2F073BB01
2F073BC02
2F073BC04
2F073CC03
2F073CC12
2F073CD05
2F073CD11
2F073DD01
2F073DE02
2F073DE07
2F073DE13
2F073EF05
2F073EF09
2F073EF10
2F073FF01
2F073FG01
2F073FG02
2F073FG09
2F073FG11
2F073GG01
2F073GG05
2F073GG08
5B029AA01
5B029BB02
5B029CC21
5B029CC27
5B029EE04
5B029EE08
5B064AA03
5B064AB02
5B064AB13
5B064BA01
5B064CA08
5L096AA06
5L096CA02
5L096DA02
5L096EA16
5L096FA62
5L096FA67
5L096FA69
5L096JA11
(57)【要約】
【課題】 アナログメータの検針における数値読み取りの精度を高めること。
【解決手段】 実施形態によれば、プログラムは、コンピュータを、記憶部と、傾き情報取得部と、補正部と、数字認識部と、指針検出部と、計測値検出部として機能させる。記憶部は、傾き認識モデルを記憶する。傾き情報取得部は、アナログメータを撮影した画像データより抽出した複数の数字画像データについて、傾き認識モデルより数字画像データの夫々の傾き情報を取得する。補正部は、数字画像データを傾き情報に基づいて回転補正する。数字認識部は、回転補正された数字画像データより数字の値を認識する。指針検出部は、アナログメータの指針の先端の位置を検出する。計測値検出部は、アナログメータの表示板上に表された複数の数字の位置と数字が示す値、および指針の先端の位置より、指針が示す計測値を検出する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
コンピュータを、
アナログメータの数字の画像に係る数字画像データにおける前記数字の傾きに関する学習用データより生成された傾き認識モデルを記憶する記憶部と、
前記アナログメータを撮影した画像データより抽出した複数の前記数字画像データについて、前記傾き認識モデルより前記数字画像データの夫々の傾き情報を取得する傾き情報取得部と、
前記数字画像データを前記傾き情報に基づいて回転補正する補正部と、
前記回転補正された数字画像データより数字の値を認識する数字認識部と、
前記アナログメータの指針の先端の位置を検出する指針検出部と、
前記アナログメータの表示板上に表された複数の数字の位置と前記数字が示す値、および前記指針の先端の位置より、前記指針が示す計測値を検出する計測値検出部と
して機能させるためのプログラム。
【請求項2】
前記補正部は、前記数字画像データの中心点を抽出し、当該数字画像データを当該中心点で回転させて前記数字画像データの傾きを補正し、
さらに、前記コンピュータを、
前記数字画像データの表記数字の位置を通る擬似円と、当該擬似円の中心の位置とを検出する円検出部として機能させる、請求項1に記載のプログラム。
【請求項3】
前記円検出部は、
前記アナログメータの指針に係る回転中心点と、複数の前記数字画像データの前記中心点とを検出し、
前記指針に係る回転中心点を中心とし、前記数字画像データの中心点が円弧上となる前記擬似円を求め、
前記計測値検出部は、
前記擬似円における、前記指針による前記擬似円の分割比より前記指針が示す計測値を算出することを特徴とする請求項2記載のプログラム。
【請求項4】
記憶部とプロセッサとを有する情報処理装置であって、
前記記憶部は、
アナログメータの数字の画像に係る数字画像データにおける前記数字の傾きに関する学習用データより生成された傾き認識モデルを記憶し、
前記プロセッサは、
前記アナログメータを撮影した画像データより抽出した複数の前記数字画像データについて、前記傾き認識モデルより前記数字画像データの夫々の傾き情報を取得する傾き情報取得部と、
前記数字画像データを前記傾き情報に基づいて回転補正する補正部と、
前記回転補正された数字画像データより数字の値を認識する数字認識部と、
前記アナログメータの指針の先端の位置を検出する指針検出部と、
前記アナログメータの表示板上に表された複数の数字の位置と前記数字が示す値、および前記指針の先端の位置より、前記指針が示す計測値を検出する計測値検出部と
を備える、情報処理装置。
【請求項5】
コンピュータが、
アナログメータを撮影した画像データより抽出した数字の画像に係る複数の数字画像データについて、当該数字画像データにおける前記数字の傾きに関する学習用データより生成された傾き認識モデルより、前記数字画像データの夫々の傾き情報を取得する分類工程と、
前記数字画像データを前記傾き情報に基づいて回転補正する補正工程と、
前記回転補正された数字画像データより数字の値を認識する数字認識工程と、
前記アナログメータの指針の先端の位置を検出する指針検出工程と、
前記アナログメータの表示板上に表された複数の数字の位置と前記数字が示す値、および前記指針の先端の位置より、前記指針が示す計測値を検出する計測値検出工程と
を具備する、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
この発明の実施形態は、プログラム、情報処理装置、および情報処理方法に関する。
【背景技術】
【0002】
近時、タブレットを利用して設備点検を支援するサービスが提供されている。例えば、設備の状態を示すメータの検針作業を支援するサービスが知られている。この種のサービスでは、メータを撮影して得られた画像データ処理して数値に変換するソフトウェアを利用して、メータ値が読み取られる。数値読み取りには例えばAI(Artificial Intelligence)が活用される。一方、メータの種類は、メータ値が直接数値で計測値が示される数値メータと、指針の位置で計測値が示されるアナログメータとに大別される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007-114828号公報
【特許文献2】特開2016-212044号公報
【特許文献3】特開2018-45655号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
アナログメータにも様々な種類があり、目盛り板の数値が略同心円状に印字されているものがある。このアナログメータは数値の一つ一つの傾きが異なることから、従来、画像認識による検針のための読み取りが難しく、読み取り精度を上げる技術が要望されていた。
そこで、目的は、アナログメータの検針における数値読み取りの精度を高めたプログラム、情報処理装置、および情報処理方法を提供することにある。
【課題を解決するための手段】
【0005】
実施形態によれば、プログラムは、コンピュータを、記憶部と、傾き情報取得部と、補正部と、数字認識部と、指針検出部と、計測値検出部として機能させる。記憶部は、アナログメータの数字の画像に係る数字画像データにおける数字の傾きに関する学習用データより生成された傾き認識モデルを記憶する。傾き情報取得部は、アナログメータを撮影した画像データより抽出した複数の数字画像データについて、傾き認識モデルより数字画像データの夫々の傾き情報を取得する。補正部は、数字画像データを傾き情報に基づいて回転補正する。数字認識部は、回転補正された数字画像データより数字の値を認識する。指針検出部は、アナログメータの指針の先端の位置を検出する。計測値検出部は、アナログメータの表示板上に表された複数の数字の位置と数字が示す値、および指針の先端の位置より、指針が示す計測値を検出する。
【図面の簡単な説明】
【0006】
【
図1】
図1は、実施形態に係わる設備点検支援サービスを提供するクラウドシステムの一例を示す図である。
【
図2】
図2は、角型メータの一例を示す外観図である。
【
図3】
図3は、モバイル端末100の一例を示す機能ブロック図である。
【
図4】
図4は、学習済みモデル600について説明するための図である。
【
図5】
図5は、画像処理部114に備わる機能を説明するための機能ブロック図である。
【
図6】
図6は、分類部114a、補正部114b、および、表記数字検出部114cの作用について説明するための図である。
【
図7】
図7は、検針データ集計処理部116に備わる機能を説明するための機能ブロック図である。
【
図8】
図8は、アナログメータ検針部116cに備わる機能を説明するための機能ブロック図である。
【
図9】
図9は、実施形態に係わるモバイル端末100の処理手順の一例を示すフローチャートである。
【
図10】
図10は、実施形態に係わるモバイル端末100の処理手順の一例を示すフローチャートである。
【
図11】
図11は、アナログメータから表記数字を検出する動作を説明するための図である。
【
図12】
図12は、アナログメータから中心点を検出する動作を説明するための図である。
【
図13】
図13は、アナログメータから指針を検出する動作を説明するための図である。
【
図14】
図14は、アナログメータから指針を検出する動作を説明するための図である。
【
図15】
図15は、アナログメータから指針を検出する動作を説明するための図である。
【
図16】
図16は、アナログメータから表記数字の配列を検出する動作を説明するための図である。
【
図17】
図17は、アナログメータから表記数字の値を検出する動作を説明するための図である。
【
図18】
図18は、アナログメータから表記数字の値を検出する動作を説明するための図である。
【
図19】
図19は、アナログメータから表記数字を通る円と指針の交点を検出する動作を説明するための図である。
【
図20】
図20は、アナログメータから交点の左右の表記数字を検出する動作を説明するための図である。
【
図21】
図21は、アナログメータから交点の左右の表記数字を検出する動作を説明するための図である。
【
図22】
図22は、アナログメータから指針と左右の表記数字とがなす角度を検出する動作を説明するための図である。
【
図23】
図23は、アナログメータから指針と左右の表記数字とがなす角度を検出する動作を説明するための図である。
【
図24】
図24は、アナログメータから小数点下の桁数を検出する動作を説明するための図である。
【
図25】
図25は、アナログメータから小数点下の桁数を検出する動作を説明するための図である。
【
図26】
図26は、検出した指針値を修正するためのインタフェースの一例を示す図である。
【
図27】
図27は、検出した指針値の小数点の位置を修正するためのGUIの一例を示す図である。
【
図28】
図28は、水平補正処理について補足的に説明するための図である。
【
図29】
図29は、数値枠と擬似円について補足的に説明するための図である。
【発明を実施するための形態】
【0007】
以下、図面を参照して、一実施形態について説明する。
(構成)
図1は、実施形態に係わる設備点検支援サービスを提供するクラウドシステムの一例を示す図である。以下では、工場、事業所の設備、あるいは種々の計測器などで用いられるメータの検針作業への適用例について説明する。
【0008】
図1において、クラウドシステムは、ネットワーク500に接続されたサーバ400を中核とする。クライアント端末300が、ネットワーク500経由でサーバ400にアクセスすることができる。さらに、ネットワーク500の基地局200を介して、モバイル端末100がサーバ400にアクセスすることができる。
【0009】
モバイル端末100は、スマートフォン、タブレット、あるいはノートパソコン等であって、メータの検針作業を行う検針員に携帯される、モバイル端末100は、実施形態に係わる帳票作成支援アプリをインストールした状態で使用される。モバイル端末100は、現場に設置されたメータMT1~MTnの計測値を光学的に読み取り、帳票作成支援アプリにより帳票データを作成してサーバ400に送信する。
【0010】
基地局200は、モバイル端末100とネットワーク500とを通信可能に接続する。ネットワーク500がLAN(Local Area Network)であれば、基地局200は、無線LAN(IEEE802.11シリーズ)を実装するアクセスポイントである。ネットワーク500が公共あるいはローカルの移動通信網であれば、基地局200は、3G、LTE(登録商標)、4G、5G等の無線基地局である。
【0011】
クライアント端末300は、デスクトップ型あるいはラップトップ型のパーソナルコンピュータ等の情報処理装置である。クライアント端末300は、例えば、検針サービスのベンダの管理部門に設置され、その部門のオペレータにより操作される。クライアント端末300は、例えば、モバイル端末100からサーバ400にアップロードされたデータファイルを取得し、参照、閲覧、編集、集計、データ変換・ファイル作成、帳票の発行などを行う機能を備える。
【0012】
サーバ400は、モバイル端末100やクライアント端末300からアップロードされるデータの保存、管理、データ処理、あるいは利用者間でのデータ共有等のサービスを提供する。
【0013】
メータMT1~MTnは、各種の設備や計測器に関わり、例えば、電流、電圧、気体や液体の圧力や流量などの計測値や、設備や機器の稼働状態を示す値を表示する。メータMT1~MTnには、数値メータと、アナログメータの2つのタイプがあり、検針員による検針の対象には、両タイプが混在し得る。
【0014】
数値メータは、回転式、またはデジタル式で、計測値などを視覚的に表示する。デジタル式の数値メータは、例えば、0~9までの数字が表示される7セグメントディスプレイを複数使用して、数値を示す。回転式の数値メータは、例えば、0~9までの算用数字が記載された数字車を複数連ねて並べた機構を備え、数字車を回転させて数値を示す。
【0015】
アナログメータは、算用数字や目盛りが記された表示盤上を移動する指針の位置により、数値を示す。つまり、数字や目盛りと指針との相対的な位置関係により、計測値などの数値がアナログ的に示される。
【0016】
図2は、角型メータの一例を示す外観図である。例えば交流電流計には、表示盤上の目盛りの数値が同心円状に描画されているものが多い。この種のメータは、目盛り板の数値が同心円状に表記されているものが多い。この場合、文字盤の数値は、水平のものとそうでないものが混在するだけでなく、一つ一つの数値の傾きが異なるので機械では読み取りにくい。また、目盛りの幅が途切れていたり、幅が不均等なものもある。実施形態ではこのような事態に対応することの可能な技術について説明する。なお、以下では、メータの読み値として表示盤上に表記された数字を表記数字と称して説明する。
【0017】
図3は、モバイル端末100の一例を示す機能ブロック図である。情報処理装置の一例としてのモバイル端末100は、通信部101、入力部102、表示部103、カメラ104、GNSS(Global Navigation Satellite System)受信部105、記憶部106、および、プロセッサ110を備える。すなわちモバイル端末は、プロセッサとメモリを備えるコンピュータである。
【0018】
通信部101は、無線通信インターフェースであり、基地局200との間に無線通信リンクを確立しネットワーク500経由でサーバ400と通信する。
【0019】
入力部102は、表示部103のタッチパネルや、モバイル端末100の外装に設けられたキースイッチなどの入力デバイスを備え、検針員による入力操作や指示を受け付ける。
表示部103は、タッチパネルなどの表示デバイスを備え、検針員に視覚的な情報を提供する。タッチパネルは、尖筆(スタイラス)や指などによる情報入力を受け付ける。静電容量方式や抵抗膜方式、投影型赤外線方式など種々の方式のタッチパネルがある。表示デバイスとしては、液晶パネルや有機EL(Electro Luminescence)パネル、電子ペーパーなどがある。
【0020】
表示部103は、例えば、情報の入力欄やソフトキー、各種画像(写真、CG(コンピュータグラフィックス)画像)を表示デバイスに表示する。表示部103における情報の入力欄やソフトキーに関する表示は、入力部102に対する操作に対応するように、プロセッサ110により制御される。
【0021】
カメラ104は、デジタルの画像データを生成するデジタルカメラである。カメラ104は、例えばメータMT1~MTn(
図1)を撮影して、表記数字の画像などのデータを含む画像データを取得する。すなわちカメラ104は、レンズを含む光学系、CMOS(Complementary MOS)などのイメージセンサを備えた撮像部、および、撮像部からの撮像信号から所定の形式(例えば、JPEG(Joint Photographic Experts Group))の画像データを生成する信号処理部を備える。撮影した日時や場所、撮影条件(シャッター速度や絞り値、画角、緯度や経度など)を示すメタデータ(例えば、Exif(Exchangeable image file format)データ)をプロセッサ110が画像データに付加しても良い。
【0022】
GNSS受信部105は、GPS(Global Positioning System)衛星に代表される複数のGNSS衛星や、地上の基準局などから送信される測位信号を受信し、モバイル端末100の位置を測定する。測位信号は時刻情報も含み、これを利用して現在時刻を知ることもできる。
【0023】
記憶部106は、RAM(Random Access Memory)やROM(Read Only Memory)、SSD(Solid State Drive)などのフラッシュメモリ、HDD(Hard Disk Drive)などの記録デバイスである。取り扱うデータの特性に合わせて、異種の記録デバイスが組み合わせて設けられてもよい。
【0024】
記憶部106は、例えば、プロセッサ110の動作に伴って生成されたデータ、各種パラメータ、検針員から入力されたデータ、カメラ104で取得された画像データ(例えばメータMT1~MTnの計測値を撮影した画像データ)、サーバ400から取得(ダウンロード)したデータ、あるいは、情報処理のための一時的なデータ等を記憶する。
実施形態において、記憶部106は、帳票データ106a、設定情報データ106b、画像データ106c、学習済みモデル600、およびプログラム700を記憶する。
【0025】
帳票データ106aは、所定の検針期間毎に、各メータの指針値を集計して作成される。新たな帳票データ106aが作成されると、ただちにサーバ400にアップロードされる。帳票データ106aは、例えば、検針現場ごとに作成されるデータで、「メータ情報」、「メータ画像」、「今回の検針値」、「前回との差」、「前回の検針値」、「前回に求めた差」などの情報を含む。検針現場に複数のメータが設置されている場合には、帳票データ106aは、各メータについての上記情報を含む。
【0026】
ここで、「メータ情報」は、メータを識別するためのマスターコード、メータが計測する対象(例えば、テナント、駐車場、共有スペースなど)を示す識別情報、種別(例えば、ガス、電気、水道など)を含む。「メータ画像」は、検針値の根拠となる画像、すなわち、検針の際に撮影した画像である。
【0027】
「今回の検針値」は、今回の検針で読み取った値である。「前回との差」は、今回の検針値と前回の検針値の差分である。「前回の検針値」は、前回の検針で読み取った値である。「前回に求めた差」は、前回の検針値と前々回の検針値の差分である。
【0028】
設定情報データ106bは、各メータの検針値を集計するために必要な設定情報である。設定情報データ106bは、帳票データ106aと同様に、各検針現場の各メータ毎に作成される。
【0029】
画像データ106cは、検針値を示すメータをカメラ104で撮影して生成された画像データであり、証拠用のメータ画像として上記帳票データ106aに記録される。その際、撮影直後の画像から、数値を含む必要な部分だけを選択し切り出してもよい。
【0030】
学習済みモデル600は、例えばDNN(Deep Neural Network)やCNN(Convolutional Neural Network)などのニューラルネットワークを機械学習させて生成される。実施形態では、数値の画像を含む数字画像データと、当該数字画像データに示される数値の傾きとを含む学習用データを上記ニューラルネットワークに繰り返し入力し、出力された傾きと正しい値との誤差を勾配降下法などで最小化する機械学習により、学習済みモデル600が生成される。
【0031】
ここで、数字画像データとは、画像データから必要最小限の領域を切り出した画像データである。切り出し加工を行っていない画像データを数字画像データとして用いても良いが、学習効率は高まらないことが考えられる。
【0032】
図4は、学習済みモデル600について説明するための図である。傾き認識モデルとしての学習済みモデル600は、例えばサーバ400において生成される。そして、モバイル端末100にインストールされた帳票作成支援アプリが初回起動される際に、学習済みモデル600はサーバ400からダウンロードされて記憶部106に記憶される。
【0033】
図4(a)に示されるように、数値を含む数字画像データと、当該数値の傾きとをセットにした教師データを未学習のニューラルネットワークに繰り返し与え、誤差をフィードバックする手順を積み重ねることで、
図4(b)の学習済みモデル600が生成される。例えば数値”3878”を含む画像と、4度、という傾きをセットにした教師データ、あるいは数値”10”を含む画像と、18度、という傾きをセットにした教師データなどを予め用意し、CNNやDNN等に繰り返し与えて学習させる。このような機械学習により得られた学習済みモデル600に数値を含む画像データを別途与えると、その数値そのものではなく、画像数値の傾き(傾き情報)が出力される。ここで、教師データは、例えばサーバ400や他のコンピュータで既存のフレームワークにより作成しても良いし、検針員が現場で収集した画像データを教師データとして利用しても良い。
【0034】
図3に戻って説明を続ける。記憶部106のプログラム700は、OS(Operating System)、ファームウェア、アプリケーションソフトウェア等を含み、実施形態に係わる諸機能をモバイル端末100に実行させる。
【0035】
プロセッサ110は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサ、チップセット、RAMやROMなどを含み、モバイル端末100の各部を制御する。ROMは、ファームウェアや設定値(各種パラメータ)などを記憶する。プロセッサ110は、記憶部106のプログラム700をRAMに読み込み、また、RAMをワークエリア(作業領域)として使用して各種の機能を実現する。
【0036】
プロセッサ110は、プログラム700に含まれる命令を実行して、少なくとも以下の機能を実現する。すなわち、プロセッサ110は、通信制御部111、入力制御部112、表示制御部113、画像処理部114、位置情報処理部115、および、検針データ集計処理部116として機能する。ここで、プログラム700は、コンピュータとしてのモバイル端末100を、記憶部106、通信制御部111、入力制御部112、表示制御部113、画像処理部114、位置情報処理部115、および、検針データ集計処理部116として機能させるための命令を含む。
【0037】
通信制御部111は、既定の通信プロトコルに従ってモバイル端末100と基地局200、ネットワーク500、およびサーバ400との通信を制御する。通信制御部111は、例えば、サーバ400からのファイルやデータのダウンロード、およびサーバ400へのデータのアップロードを行う。
【0038】
入力制御部112は、入力部102への操作から検針員の要求を解釈したり、情報(文字列など)の入力や、データの取り込み、データ間の対応付けの変更などを受け付ける。また、入力制御部112は、カメラ104で生成された画像データを取得し、記憶部106に転送し、画像データ106cとして記憶させる。
【0039】
表示制御部113は、文字や画像を含む種々の情報や、各種アイコン、情報の入力欄やソフトキー等のGUI(Graphical User Interface)などを、表示部103に表示する。また、表示制御部113は、画像の取り込み位置を示したりするガイド表示を行う。
【0040】
画像処理部114は、カメラ104により撮像された画像データに対して画像処理を施す。画像処理部114は、例えば、認識エンジンとしての機能と、解析エンジンとしての機能を備える。
【0041】
認識エンジンは、カメラ104で取得された画像データに基づく画像から、例えばAI(Artificial Intelligence)を適用したパターン認識により、種々の情報を認識する。認識エンジンは、例えば、QRコード(登録商標)を検出したり、画像に写るメータを数値メータかアナログメータか区別(判定)したり、そのメータの表示盤上の計測値を表示している部分を検出したり、また表示盤内のオブジェクト(数値メータの計測値の数字列、アナログメータの指針や表記数字など)やその配置(座標)を検出する機能を備える。
【0042】
解析エンジンは、認識エンジンにより検出された情報を解析する処理を行うものである。解析エンジンは、例えば、メータ部分の画像について、QRコード(登録商標)の解読や、光学的文字認識などの文字認識処理(OCR:Optical Character Recognition)により数値メータの計測値をテキスト化したり、アナログメータのメータ部分に記されたオブジェクトの位置関係から指針が示す値を検出する。
【0043】
なお、文字認識処理については、複数種類の解析エンジンが予め準備される。それぞれの解析エンジンは、例えばメータの種類毎に対応し、それぞれ対応するメータの表記数字に合った解析アルゴリズムを用いて、表示される計測値をテキスト化する。つまり、メータにより算用数字の書体が異なっていたり、表記数字と背景色の組み合わせが異なるので、各メータの表示に合った解析アルゴリズムを有する解析エンジンが準備されている。
【0044】
位置情報処理部115は、加速度センサ、ジャイロセンサなどを備え、これらの検出結果と、GNSS受信部105による測位結果、および/または通信制御部111により基地局200から得た測位情報に基づいて、モバイル端末100の位置を測位する。
検針データ集計処理部116は、検針データの集計に関わる種々の処理を統括して制御する。
【0045】
図5は、画像処理部114に備わる機能を説明するための機能ブロック図である。画像処理部114は、分類部114a、補正部114b、および、表記数字検出部114cを備える。すなわち、プログラム700は、モバイル端末100を、分類部114a、補正部114b、および表記数字検出部114cとして機能させるための命令を含む。
【0046】
分類部114aは、表記数字のデータを含む画像データ106cを学習済みモデル600に与えて、当該画像データ106cの傾き情報を取得する。
補正部114bは、画像データ106cを、傾き情報に基づいて回転補正する。
表記数字検出部114cは、回転補正された画像データ106cに基づいて、表記数字の値および位置を検出する。
【0047】
図6は、分類部114a、補正部114b、および、表記数字検出部114cの作用について説明するための図である。分類部114aは、学習済みモデル600に画像データ106cを与え、それぞれの画像データについての傾き情報を取得する。例えば表記数字”0.04”を含む画像データの傾きは0度、例えば”45”を含む画像データの傾きは52度、”0”を含む画像データの傾きは-45度といった傾き情報が取得される。この傾き情報は、各画像データとセットにして補正部114bに入力される。
【0048】
補正部114bは、それぞれの画像データ106cを、傾き情報を打ち消して正立するように、つまり角度が0になるように回転補正する。画像の回転補正は、例えばオープンソースソフトウェアやライブラリなどを用いて、既存の技術により実施することができる。
【0049】
表記数字検出部114cは、回転補正された画像データ106cに基づいて、表記数字の値および位置を検出する。
図6においては、それぞれ”0.04”、”45”、”0”という値が得られている。
【0050】
図7は、検針データ集計処理部116に備わる機能を説明するための機能ブロック図である。検針データ集計処理部116は、帳票作成部116a、数値メータ検針部116b、アナログメータ検針部116c、修正処理部116dを備える。
【0051】
帳票作成部116aは、数値メータ検針部116b、あるいはアナログメータ検針部116cにより読み取られた検針値、あるいは、修正処理部116dにより修正された指針値に基づいて、帳票データを作成する。
【0052】
数値メータ検針部116bは、画像処理部114の認識エンジンと解析エンジンを必要に応じて利用し、数値メータを撮影した画像に基づいて、数値メータに表示される計測値の数字列を指針値として読み取る。
【0053】
アナログメータ検針部116cは、画像処理部114の認識エンジンと解析エンジンを必要に応じて利用し、アナログメータを撮影した画像に基づいて、アナログメータに指針で示される値を指針値として読み取る。
【0054】
修正処理部116dは、入力部102を介した検針員の操作に応じ、指針値を修正する指示を受け付けて、数値メータ検針部116bやアナログメータ検針部116cが読み取った指針値を修正する。
【0055】
図8は、アナログメータ検針部116cに備わる機能を説明するための機能ブロック図である。アナログメータ検針部116cは、指針検出部6a、円検出部6b、交点検出部6c、交点数字検出部6d、および、計測値検出部6eを備える。すなわち、プログラム700は、モバイル端末100を、指針検出部6a、円検出部6b、交点検出部6c、交点数字検出部6d、および計測値検出部6eとして機能させるための命令を含む。
【0056】
指針検出部6aは、アナログメータを撮影して得られた画像データ106cに基づいて、指針の先端の位置を検出する。
円検出部6bは、表記数字検出部114cが検出した表記数字の位置を通る円と、この円の中心の位置を検出する。
【0057】
交点検出部6cは、指針検出部6aが検出した指針の先端と、円検出部6bが検出した円の中心を結ぶ線分と、円検出部6bが検出した円の円周との交点の位置を求める。
交点数字検出部6dは、表記数字検出部114cが検出した表記数字のうち、交点の一方の円周上に位置する第1の表記数字と、交点の他方の円周上に位置する第2の表記数字をそれぞれ検出する。
計測値検出部6eは、第1の表記数字の位置、第2の表記数字の位置、円の中心の位置、交点の位置、第1の表記数字の値、および第2の表記数字の値に基づいて、指針が示す計測値を検出する。
【0058】
(作用)
次に、上記構成のクラウドシステムにおける作用について説明する。
図9、および
図10は、実施形態に係わるモバイル端末100の処理手順の一例を示すフローチャートである。
図9、
図10を参照して、アナログメータから検針値を読み取るための、アナログメータ検針処理について説明する。
【0059】
図9のステップS301において、モバイル端末100のアナログメータ検針部116cは、記憶部106から設定情報データ106bを読み出し、ステップS302に移行する。読み出された設定情報データ106bは、以後の処理において、初期設定のパラメータ(初期設定値)として用いられる。
【0060】
設定情報データ106bの一例としては、種々のアナログメータについて、メータの識別情報に対応づけて、表示盤上に表示されている数値の最小値と最大値などを記録した情報、あるいは、メータを識別するためにAI(Artificial Intelligence)学習させた学習データなどが含まれる。
【0061】
学習データは、アナログメータを撮影した画像において、メータの中心点、指針の可動範囲の開始点と終了点、表示盤の最も下側の底点、指針の範囲(最小値、最大値)、しきい値など設定した情報に基づいて、機械学習によって生成される。
【0062】
ステップS302において、アナログメータ検針部116cは、カメラ104を起動して、アナログメータMT(例えば、メータMT1~MTnのいずれか)を撮像して画像データを取得し、処理手順はステップS303に移行する。
【0063】
具体的には、ステップS302において、カメラ104が起動され、カメラ104により撮像された映像が表示部103に表示される。検針員は、この表示を確認して撮影構図を調整し、アナログメータMT全体が写る状態でシャッタ操作を行う。これにより、アナログメータMT全体が写る画像データを得られ、表示部103には、撮影されたアナログメータMTが表示される。
【0064】
ステップS303において、アナログメータ検針部116cは、ステップS302で得た画像データに基づいて、撮影したアナログメータMTを表示部103に表示するとともに、画像データに写るアナログメータMTの表示盤上の表記数字と指針を検出する。なお、この検出には、画像処理部114の認識エンジンが用いられる。
【0065】
またステップS303において、アナログメータ検針部116cは、上記表示したアナログメータMT上に、上記検出した表記数字と指針をそれぞれ矩形の枠線(数値枠)で囲って表示し、ステップS304に移行する。
【0066】
図11は、表記数字をそれぞれ囲う枠線の一例を示す図である。これらの表示は、表示制御部113を通じて行われ、以下で説明する表示についても同様である。なお、アナログメータMT上の表記数字と指針の検出は、例えば、AIを利用することで実現できる。
【0067】
すなわち、設定情報データ106bに含まれる学習データと画像データに基づいて、アナログメータ検針部116cがアナログメータMTの種類などを特定するとともに、さらに、この特定したアナログメータMTについての学習データから表示盤上の表記数字と指針を検出する。
【0068】
ステップS304において、アナログメータ検針部116cは、ステップS303で表示した表記数字を囲う枠線の中心の位置(座標)を検出し、ステップS305に移行する。ここで検出された座標は、以下の説明において、表記数字座標と称する。表記数字座標は、表示したアナログメータMT上に設定した2次元の座標軸に基づくものであって、以下の説明における座標についても、上記座標軸を基準にしたものである。
【0069】
ステップS305において、アナログメータ検針部116cは、ステップS304で検出した表記数字座標に基づいて、枠線の中心を通る近似した円(擬似円)を求める。すなわちアナログメータ検針部116cは、表記数字座標が円周上に存在する擬似円を求める。さらに、アナログメータ検針部116cは、この円の中心点Oの座標とその半径Rを算出し、ステップS306に移行する。
【0070】
図12は、擬似円と中心点Oの一例を示す図である。ステップS306において、アナログメータ検針部116cは、指針を囲う枠線と擬似円の中心点Oに基づいて、指針の先端Aの座標Acを検出し、処理手順はステップS307に移行する。
【0071】
図13は、指針を囲う枠線と円の中心点Oの一例を示す図である。また、
図14に、奥向きに傾斜した文字盤を含む画像の例を示す。
図14の例では、指針を囲う矩形の枠線の4つの頂点のうち、円の中心点Oから近い頂点と対角をなす頂点を指針の先端Aの座標Acとして検出する。
【0072】
ただし、指針の角度によっては、
図15に示すように、円の中心Oから近い点である頂点b1ではなく、ふさわしくない頂点b2を検出する可能性がある。このため、枠線の各辺の中点c1~c4と中心Oの距離を考慮して頂点b1を検出し、この頂点b1と対角をなす、指針の先端Aに相当する頂点aの座標を検出するようにしてもよい。
【0073】
ステップS307において、アナログメータ検針部116cは、ステップS304で検出した表記数字座標を順番に配列し、処理手順はステップS308に移行する。
【0074】
ステップS307において、アナログメータ検針部116cは、具体的には、
図16に矢印で示すように、円の中心点Oの下方の円周上を起点Sとして、時計回りに円周上の表記数字座標を順に並べる。これは、一般的なアナログメータが、時計回りに読み値が変化する(大きくなる)ことを考慮したものである。
【0075】
次に、ステップS501において、画像処理部114は、枠線(数値枠)の数値画像を切り出し、ステップS502において、切り出された数値画像における数値の回転角度を認識する。回転角度は、学習済みモデル600から傾き情報として出力される。この傾き情報を用いて、画像処理部114はステップS503において、切り出された数値画像に水平補正処理を施して、傾きの無い表記数字の画像データを生成する。これにより、
図17に示されるように、文字盤の数値が全て水平になった画像データが生成される。
【0076】
ステップS308において、アナログメータ検針部116cは、
図17に示すように、ステップS303で囲った枠線内の表記数字の数値を読み取り、処理手順はステップS309に移行する。
【0077】
表記数字の数値の読み取り(検出)は、例えば、AIを利用することで実現できる。すなわち、設定情報データ106bに含まれる学習データと画像データに基づいて、アナログメータ検針部116cがアナログメータMTの種類などを特定できる。さらに、この特定したアナログメータMTについての学習データから表示盤上の表記数字の数値を検出することができる。
【0078】
ステップS309において、アナログメータ検針部116cは、ステップS308で読み取った数値に「0」があるか否かを判定する。ここで、ステップS308で読み取った数値に「0」がある場合には、処理手順はステップS310に移行し、「0」がない場合には、処理手順はステップS312に移行する。
【0079】
ステップS310において、アナログメータ検針部116cは、ステップS307で行った配列とステップS308で読み取った数値に基づいて、中心点Oからみて、数値「0」の表記数字の左側に数値が存在するか否かを判定する。ここで、左側に数値が存在する場合には、処理手順はステップS311に移行し、左側に数値が存在しない場合には、処理手順はステップS314に移行する。
【0080】
ステップS311において、アナログメータ検針部116cは、ステップS308で読み取った数値のうち、数値「0」より左側に存在する数値については、同じ大きさのマイナス(負)の値に変換し、ステップS314に移行する。なお、右側に存在する数値については、プラス(正)の値のままとする。
【0081】
図18に示すようなアナログメータの場合、数値「0」の左側に数値「0.05」と「0.1」が存在する。よってアナログメータ検針部116cは、これらの数値をそれぞれ「-0.05」と「-0.1」に変換する。
【0082】
ステップS312において、アナログメータ検針部116cは、ステップS307で行った配列とステップS308で読み取った数値に基づいて、隣接する2つの数値を比較し、数値が右側の数値以上となっている数値が存在するか否かを判定する。すなわち、中心点Oからみて、左側の数値が右側の数値以上の数値となっているものが存在するか否かを判定する。右側の数値以上の数値が存在する場合には、処理手順はステップS311に移行し、右側の数値以上の数値が存在しない場合には、処理手順はステップS314に移行する。
【0083】
ステップS313において、アナログメータ検針部116cは、ステップS308で読み取った数値のうち、数値が右側の数値以上となっている数値の符号を反転し、処理手順はステップS314に移行する。
【0084】
図18に示すようなアナログメータの場合、左端の数値「0.1」の右側には数値「0.05」が存在する。よってアナログメータ検針部116cは、この数値「0.1」を「-0.1」に変換する。同様に、左側の数値「0.05」の右側には数値「0」が存在するため、アナログメータ検針部116cは、この数値「0.05」を「-0.05」に変換する。
【0085】
図9のステップS314において、アナログメータ検針部116cは、例えば
図19に示すように、ステップS306で検出した指針の先端Aの座標AcとステップS305で検出した円の中心点Oの座標を結ぶ線分と、ステップS305で求めた円Oの円周との交点Xの座標Xcを検出する。そののち、交点Xの有無によらず、処理手順は
図10のステップS401に移行する。
【0086】
図10のステップS401において、アナログメータ検針部116cは、ステップS314で交点Xの座標Xcが検出できたか否かを判定する。交点Xの座標Xcが検出できた(すなわち交点Xがある)場合には、処理手順はステップS403に移行する。交点Xが無いなど、交点Xの座標Xcが検出できない場合には、処理手順はステップS402に移行する。
【0087】
ステップS402において、アナログメータ検針部116cは、指針を延長して、延長した指針と円周の交点Xを作成し、その交点Xの座標Xcを検出する。そして、処理手順はステップS402に移行する。なお、交点Xの座標Xcの検出は、例えば、ステップS306で検出した指針の先端Aの座標Acと中心点Oに基づいて、中心点Oから座標Acの方向に延長することで実現できる。
【0088】
ステップS403において、アナログメータ検針部116cは、ステップS314、またはステップS402で検出した交点Xの座標Xcの左右の円周上にある表記数字を探索し、それらの表記数字があるか否かを判定する。
【0089】
図20の例では、交点Xの座標Xcの左の円周上に表記数字NLとして「20」が存在し、右の円周上の表記数字NRとして「40」が存在する。
【0090】
ここで、左右ともに表記数字を検出できた場合には、処理手順はステップS404に移行する。表記数字が左または右の一方にしか無い場合には、指針値として、最小値(NRのみ検出時)あるいは最大値(NLのみ検出時)を検出したものとして、処理手順はステップS409に移行する。
【0091】
図21(a)では、
図20と同様に、交点Xの座標Xcの左の円周上に表記数字NLとして「20」が存在し、右の円周上の表記数字NRとして「40」が存在する。よって処理手順はステップS404に移行する。
【0092】
一方、
図21(b)に示すように、中心点Oから見て交点Xの左側(円周の起点まで)には、表記数字が存在しない場合、指針値として、初期設定値に基づく最小値を検出したものとして確定し、処理手順はステップS409に移行する。
【0093】
なお、交点Xの右側(円周の終点まで)に表記数字が存在しない場合には、指針値として、初期設定値に基づく最大値を検出したものとして確定し、処理手順はステップS409に移行する。
【0094】
また、
図21(c)に示すように、指針が表記数字「40」と重なったことにより、ステップS303やステップS304で表記数字「40」が検出されない場合には、この表記数字「40」は検出されない。よって「40」は、ステップS403の判定で用いられることはない。しかし、それ以外の左右の表記数字「20」と「60」がそれぞれNL、NRとしてステップS303やステップS304で検出されているので、ステップS403でこれらの表記数字の存在が検出されたのち、処理手順はステップS404に移行する。
【0095】
さらに、
図21(d)に示すように、指針が表記数字「40」と重なるととともに、何らかの理由で、表記数字「60」が検出されない場合には、表記数字「40」と「60」はステップS403の判定で用いられることはない。しかし、それ以外の左右の表記数字「20」と「80」がステップS303やステップS304で検出されているので、ステップS403でこれらの表記数字がそれぞれNL、NRとして検出されたのち、処理手順はステップS404に移行する。
【0096】
図22に示されるように、ステップS404においてアナログメータ検針部116cは、まず、ステップS403で検出した2つ表記数字NL、NRのうち、交点Xの左側の表記数字NLの座標と中心点Oの座標を結ぶ線分と、交点Xの座標と中心点Oの座標を結ぶ線分とがなす角度S1を検出する。
【0097】
次にアナログメータ検針部116cは、ステップS403で検出した2つ表記数字NL、NRのうち、交点Xの右側の表記数字NRの座標と中心点Oの座標を結ぶ線分と、交点Xの座標と中心点Oの座標を結ぶ線分とがなす角度S2を検出し、ステップS405に移行する。
【0098】
図23に示されるように、ステップS405においてアナログメータ検針部116cは、角度S1、S2、半径R、左側の表記数字NLの数値VL、右側の表記数字NRの数値VRとに基づいて、交点Xに相当する指針値VDを算出する。こののち処理手順はし、ステップS406に移行する。
【0099】
ここで、指針値VDは、例えばVD=(S1*VR+S2*VL)/(S1+S2)として算出することができる。
【0100】
ステップS406において、アナログメータ検針部116cは、ステップS308で読み取った表記数字の数値に基づいて、小数点下の桁数のうち、最大の桁数を検出し、処理手順はステップS402に移行する。
【0101】
図24に示されるようなアナログメータであれば、読み取った数値は、整数値であるため、小数点下の最大の桁数は0と検出する。
図25のようなアナログメータであれば、読み取った数値には、「0.1」と「0.05」が含まれており、「0.05」に基づいて、最大の桁数は2と検出する。
【0102】
ステップS407において、アナログメータ検針部116cは、ステップS406で検出した最大桁数に1を加えた値を有効小数点下桁数として求める。そして、アナログメータ検針部116cは、ステップS405の算出結果のうち、有効小数点下桁数までの値を指針値として確定し、処理手順はステップS408に移行する。
【0103】
図24に示すようなアナログメータにおいて、ステップS405において、指針値として「30.04567…」が算出された場合、有効小数点下桁数が1であることより、指針値は小数第1位までの「30.0」として確定する。なお、小数第1位の値は、小数第2位の値を四捨五入することにより決定する。
【0104】
ステップS408において、アナログメータ検針部116cは、ステップS302で得た画像データに基づいて、撮影したアナログメータMTの画像のうち、指針とその近傍の表記数値や、交点Xを含む範囲をトリミングしたトリミング画像のデータ(以下、トリミング画像データと称する)を生成し、ステップS409に移行する。
【0105】
ステップS409において、修正処理部116dは、表示中の画像に代えて、ステップS408で生成したトリミング画像データに基づいて、上記トリミング画像を表示部103に表示し、ステップS403で確定した指針値、あるいはステップS407で確定した指針値を表示部103に表示する。そして処理手順はステップS410に移行する。
【0106】
図26は、検出した指針値を修正するためのインタフェースの一例を示す図である。すなわち、画像データのうち交点Xを含む範囲を拡大したトリミング画像が表示されるとともに、ソフトキーとして機能するGUIとして、ドラムロールとスライドバーが表示部103に表示される。
【0107】
ドラムロール表示は、指針値を修正するための入力インタフェースであり、指針値の各桁の値にそれぞれ対応するドラムロール(数字車)をグラフィックにより仮想的に表示する。ドラムロールは、表示部103上に載置されたタッチパネル(入力部102)を通じて操作することが可能である。
【0108】
例えば、各ドラムロールを上下に回転させるフリック入力を入力部102が検出して、これに応動してドラムロールの映像を回転させて表示し、それに合わせて表示される任意の値に指針値を変更することができる。
【0109】
スライドバー表示は、ドラムロール間に小数点を設定するための入力インタフェースであり、ドラムロールの位置に上下方向で対応しており、ポインタPを左右にスライドさせることで、桁(ドラムロール)の間に小数点を設定することができる。
【0110】
図27は、検出した指針値の小数点の位置を修正するためのGUIの一例を示す図である。
図27(a)~(e)では、ポインタPの位置に応じて、指針値の小数点の位置が変化する様子を示したものである。
図27では、指針値の小数点の位置とポインタPの位置が上下方向で一致するように設定したものである。
【0111】
なお、ポインタPの位置と、ドラムロールで表される数字列中の小数点の位置は、必ずしも上下方向で一致するものでなくてもよい。例えば、指針値の数字列の表示範囲に対して、それよりも広い範囲でスライドバーを表示するなど、表示部103上で表示可能な範囲を小数点の入力のために最大限に用いてもよい。その場合には、ポインタPの可動範囲内におけるポインタPの相対的な位置に応じて、小数点の位置が可変される。
【0112】
図10に戻ってさらに説明を続ける、ステップS410において、修正処理部116dは、表示部103に表示される指針値について、検針員に対して確認の入力を求める。ここで、OKの入力操作が入力部102に対して行われた場合には、表示している指針値を検針値として決定し、処理手順はステップS412に移行する。対して、NGの入力操作が入力部102に対して行われた場合には、処理手順はステップS411に移行する。
【0113】
ステップS411において、修正処理部116dは、ドラムロール表示およびスライドバー表示に対する操作を入力部102を通じて検出する。修正処理部116dは、検針員から指針値の修正指示を受け付け、修正(表示)された指針値を検針値として決定し、処理手順はステップS412に移行する。
【0114】
ステップS412において、帳票作成部116aは、検針の対象のアナログメータの識別情報に対応づけて、ステップS302で得た画像データ、ステップS408で生成したトリミング画像データ、ステップS410またはステップS411で決定された検針値を帳票データ106aとして記憶部106に保存する。こののち処理手順はステップS413に移行する。
【0115】
ステップS413において、アナログメータ検針部116cは、入力部102を通じて検針員から作業終了の指示が与えられたか否かを判定する。ここで、作業終了の指示を検出した場合には、一連の処理手順は終了する。引き続き作業を行う旨の指示があった場合には、処理手順はステップS302に移行して、改めてアナログメータMTの検針が開始される。
【0116】
(効果)
以上述べたように、実施形態によれば、画像データを、当該画像に示される「数値」ではなく「傾き」に分類する学習済みモデル600を機械学習により作成し、モバイル端末100に記憶させる。モバイル端末100は、表記数字を含む画像データ106cを学習済みモデル600に与え、傾き情報を取得する。
【0117】
図28に示されるように、モバイル端末100は認識した数値枠で画像データを切り出して数字画像データを生成し、AIベースの学習済みモデル600に数字画像データを入力する。そうすると、AIにより各数値の回転角度が認識される。そして、数値枠の中心を軸として、回転角度認識で得られた角度で数字画像データを回転させ、水平補正処理を施す。
【0118】
ここで、
図28の数値枠は四角形なので、例えば4つの頂点の対角線の交点を数値枠の中心点として抽出することができる。そして実施形態では、数値枠の中心点を通過する擬似円を検出し、この擬似円を水平補正処理に用いるようにする。擬似円は、数字画像データの中心点が描く円弧に沿って求められる。
【0119】
図29は、数値枠と擬似円について補足的に説明するための図である。
図29(a)に示されるように、数値枠と指針の認識結果に基づいて、数値枠の中心点の座標と、擬似円の中心(中心点)の座標とを検出する。さらに、擬似円の中心と数値枠の中心点とを結ぶ線分を検出する。そして、この線分と、数値枠の4辺のうち線分と交差する辺(例えば数値枠の底辺)との角度を検出し、この角度を打ち消すように回転補正することで、
図29(b)のように、数値を水平にした状態の画像データを得ることができる。そうして、擬似円における、メータの指針による擬似円の分割比より、指針が示す計測値を算出することができる。
【0120】
なお擬似円を設定するには、幾何学的には3つの点があれば必要十分と言える。数値枠の中心点が3個であれば、この3点を通過する擬似円が一意に定まる。一方、数値枠の中心点が4個以上ある場合には、各中心点の座標を用いて例えば最小二乗法を適用して、唯一の擬似円を計算することができる。
【0121】
このように実施形態によれば、撮像した画像データに斜めの表記数字が、水平になるように補正される。従って、水平な状態の数値を読み取れば良いので、斜めの状態のままの数値を含む画像データを直接、数値認識処理にかけるよりも数値読み取りの精度を飛躍的に高めることができる。
【0122】
すなわち、実施形態では、画像データを直接数値に分類するのではなく、画像データを一旦、傾き情報に分類したうえで画像データを水平に補正する。そして、水平になった状態の画像データを用いて画像認識処理を行って数値を読み取るようにした。従って実施形態によれば、アナログメータの検針における数値読み取りの精度を高めたプログラム、情報処理装置、および情報処理方法を提供することが可能になる。ひいては、検針作業に係わる人的負荷を軽減することができる。
【0123】
なお、この発明は上記実施の形態に限定されるものではない、例えば、適用例は、工場、事業所の設備、あるいは種々の計測器に限定されるものではない。例えば、メータMT1~MTnは、電流、電圧、気体や液体の圧力や流量などの計測値、、設備や機器の稼働状態に限らず、他の物理量や状態を示すものであってもよい。
【0124】
また、
図1のモバイル端末100と基地局200との間のエアインタフェースは、無線LAN、4G、5G等に限定されるものではない。要するにモバイル端末100を無線リンクでネットワーク500に接続することができれば、どのような無線通信方式を適用してもよい。
【0125】
また、
図2のプロセッサ110に含まれる各機能の一部または全部を他の機能と統合したり、あるいは各機能を別の観点で複数の機能ブロックに切り分けて別の表現で説明することも可能である。また、
図4のニューラルネットワークについてもCNNやDNNに限定されず、SVM(Support Vector Machine)等の、形式の異なるニューラルネットワークを適宜使用することができる。
【0126】
また、検針員が数値メータの検針かアナログメータの検針かを入力部102から指示するようにしてもよい。また、カメラ104で検針対象のメータを撮影し、認識エンジンが画像に写るメータのタイプを数値メータかアナログメータかを区別(判定)するようにしてもよい。
【0127】
また、上記実施形態では、アナログメータの撮影と、アナログメータの測定値の検出と、その検出値を記録した帳票データ106aの作成をモバイル端末100で行う場合を例に挙げて説明したが、これに限定されるものではない。例えば、アナログメータの撮影についてのみモバイル端末100で行い、アナログメータの測定値の検出と、その検出値を記録した帳票データ106aの作成については、クライアント端末300やサーバ400における情報処理で実現するようにしてもよい。
【0128】
つまり、モバイル端末100の全ての機能、または一部の機能をクライアント端末300、またはサーバ400に実装しても良い。例えば、モバイル端末100で取得した画像をクライアント端末300に転送し、画像処理、角度認識、回転補正、数値認識等の処理をクライアント端末300で実施しても良い。どこまでの処理をエッジ(モバイル端末100)、およびクラウド(クライアント端末300、サーバ400)で分担するかはシステム要件に応じて柔軟に決めることが可能である。
【0129】
さらに、サーバ400により提供されるサービスは、サービスの提供を受けるクライアントが所有する(あるいは貸与された)モバイル端末100やクライアント端末300に対して、サブスクリプション方式で提供することも考えられる。
【0130】
さらに、
図29を参照して説明したように、擬似円の中心と数値枠とのなす角度を画像処理により検出し、この角度を打ち消すように回転補正することでも、水平になった状態の画像データを生成することが可能である。このような手順によれば、学習済みモデル600に頼ることなく水平補正処理を実施することが可能である。
【0131】
本発明の実施形態を説明したが、この実施形態は例として提示するものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0132】
6a…指針検出部、6b…円検出部、6c…交点検出部、6d…交点数字検出部、6e…計測値検出部、100…モバイル端末、101…通信部、102…入力部、103…表示部、104…カメラ、105…GNSS受信部、106…記憶部、106a…帳票データ、106b…設定情報データ、106c…画像データ、110…プロセッサ、111…通信制御部、112…入力制御部、113…表示制御部、114…画像処理部、114a…分類部、114b…補正部、114c…表記数字検出部、115…位置情報処理部、116…検針データ集計処理部、116a…帳票作成部、116b…数値メータ検針部、116c…アナログメータ検針部、116d…修正処理部、200…基地局、300…クライアント端末、400…サーバ、500…ネットワーク、600…学習済みモデル、700…プログラム、MT1~MTn…メータ。