(57)【要約】【課題】カメラ機能を有するモバイル端末を用いて、被写体上の文字を読み取る場合において、ＯＣＲに適した画像を短時間で取得する。【解決手段】カメラを備えた携帯型の情報処理装置であって、被写体上の文字列を前記カメラで撮影して動画像を取得する取得手段と、前記動画像を構成するフレーム毎に、前記文字列を構成する文字のそれぞれについて、文字認識のための探索領域を設定する設定手段と、前記探索領域の中から候補文字を検出する検出手段と、検出された候補文字の確からしさを表わす評価値が安定しているか判定する第１の判定手段と、前記評価値が安定していると判定された後に取得された前記動画像のフレームを出力する出力手段と、を備えたことを特徴とする。【選択図】図８
2018173818.tif 000002
【特許請求の範囲】
【請求項１】
カメラを備えた携帯型の情報処理装置であって、
被写体上の文字列を前記カメラで撮影して動画像を取得する取得手段と、
前記動画像を構成するフレーム毎に、前記文字列を構成する文字のそれぞれについて、文字認識のための探索領域を設定する設定手段と、
前記探索領域の中から候補文字を検出する検出手段と、
検出された候補文字の確からしさを表わす評価値が安定しているか判定する第１の判定手段と、
前記評価値が安定していると判定された後に取得された前記動画像のフレームを出力する出力手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記検出手段は、設定された前記探索領域において、より小さな単位領域をその位置を変えて設定して各単位領域に対応する画像を抽出し、当該抽出した画像それぞれと辞書データとの比較を行って前記候補文字を検出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記単位領域は、前記文字列を構成する文字の外接矩形となり得る領域であることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記検出手段は、設定された前記探索領域において、さらに前記単位領域のサイズを変えて設定することにより前記各単位領域に対応する画像を抽出し、当該抽出した画像それぞれと辞書データとの比較を行って前記候補文字を検出することを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記設定手段は、前記文字列を構成する文字のうち前記候補文字を最初に検出する文字についての前記探索領域を、二文字目以降の文字についての前記探索領域よりも広めに設定することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記設定手段は、前記二文字目以降の文字についての前記探索領域を、その一文字前に設定された前記探索領域の位置の所定の相対位置に設定することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記文字列を構成する文字のそれぞれについて、前記検出手段で検出された前記候補文字の中から前記評価値が最も高い最有力候補文字を決定し、当該最有力候補文字に対応する前記単位領域が、所定の文字認識範囲の内側に収まっているか判定する第２の判定手段をさらに備え、
前記第１の判定手段は、前記第２の判定手段で前記最有力候補文字に対応する前記単位領域が所定の文字認識範囲の内側に収まっていると判定された場合に、前記文字列を構成する文字のそれぞれについての前記最有力候補文字の評価値が安定しているか判定する
ことを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記第１の判定手段は、連続する複数のフレーム間で前記文字列を構成する文字のそれぞれについての前記最有力候補文字が一致する場合に、前記判定を行うことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記第１の判定手段は、前記一致する最有力候補文字の評価値の合計値を、前記連続する複数のフレームのそれぞれにおいて導出し、導出した合計値のばらつき度に基づいて前記一致する前記最有力候補文字の評価値が安定しているか判定することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記評価値は、前記各単位領域に対応する画像が、前記辞書データ内の文字画像とどれだけ類似しているかを示す度合いであることを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記文字列を構成する文字のうち特定の文字について検出された前記候補文字について、前記評価値が最も高い候補文字の評価値と前記評価値が2番目に高い候補文字の評価値との差が所定の閾値以内の場合、前記第１の判定手段は、前記特定の文字についての前記評価値が最も高い候補文字を、前記判定における前記最有力候補文字から除外することを特徴とする請求項６乃至１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記第１の判定手段は、前記取得手段で取得した前記動画像を構成するフレームのうち、前記文字列を構成する全文字数に対する前記除外する前記特定の文字の数が占める割合が上限を超えたフレームについては、前記判定を行わないことを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
被写体上の文字列を、携帯型の情報処理装置が備えるカメラを用いて撮影して動画像を取得するステップと、
前記動画像を構成するフレーム毎に、前記文字列を構成する文字のそれぞれについて、文字認識のための探索領域を設定するステップと、
前記探索領域の中から候補文字を検出するステップと、
検出された候補文字の確からしさを表わす評価値が安定しているか判定するステップとと、
前記評価値が安定していると判定された後に取得された前記動画像のフレームを出力するステップと、
を含むことを特徴とする方法。
【請求項１４】
コンピュータを、請求項１乃至１２のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯型の情報処理装置における文字認識技術に関する。
【背景技術】
【０００２】
近年、スマートフォンやタブレットといったカメラを搭載した携帯型のデバイス（以下、「モバイル端末」と呼ぶ。）は一般的なものになってきた。例えば紙文書を電子化する際には、従来はスキャナなどを利用していたが、モバイル端末のカメラを利用することで簡単に紙文書を電子化することが出来るようになった。例えば特許文献１は、低解像度のカメラを利用して取り込んだ静止画像に対して文字認識処理（ＯＣＲ）を実施するための技術を開示している。
【０００３】
また、昨今のモバイル端末のカメラには動画撮影機能が備わっている。スキャナを用いて画像を取り込む場合に比べ、モバイル端末を手持ちで動画撮影して画像を取り込む場合は、撮影環境の変化の影響を受けやすい。具体的には、手ぶれによって画像細部のピントのボケが生じたり、フレーム毎に照明の当たり具合が微妙に変化するなどして、得られた画像は文字認識に適さない場合がある。この点、特許文献２は、動画撮影の間にＯＣＲを繰り返し行い、出現率が予め定めた基準値を超えた認識結果を採用して文字を確定することで、ＯＣＲの精度を高める技術を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−００８８０２号公報
【特許文献２】特開２０１３−１６１２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、撮影環境や被写体によっては、得られた動画像を構成するフレーム（静止画像）中にＯＣＲに適さない画像が高い頻度で含まれることになる。このような場合、上記特許文献２の出現率に基づき文字を確定する技術では、基準値とする出現率に達するまでに時間がかかってしまう。例えば、辞書データの中から類似する程度の近い複数の文字候補が見つかってしまうようなケースでは、フレーム間のちょっとした差異により文字認識結果が変化しやすい。そうなると、被写体上の全ての文字についての文字認識結果が確定するまで長い時間を要することになり、その間、ユーザはモバイル端末を動かさずに撮影を続けなければならなくなる。これではユーザの負担が大きいし、精度の良い文字認識結果は期待できない。そこで本発明は、カメラ機能を有するモバイル端末を用いて、被写体上の文字を読み取る場合において、ＯＣＲに適した画像を短時間で取得することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、カメラを備えた携帯型の情報処理装置であって、被写体上の文字列を前記カメラで撮影して動画像を取得する取得手段と、前記動画像を構成するフレーム毎に、前記文字列を構成する文字のそれぞれについて、文字認識のための探索領域を設定する設定手段と、前記探索領域の中から候補文字を検出する検出手段と、検出された候補文字の確からしさを表わす評価値が安定しているか判定する第１の判定手段と、前記評価値が安定していると判定された後に取得された前記動画像のフレームを出力する出力手段と、を備えたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、カメラ機能を有するモバイル端末を用いて被写体上の文字を読み取る場合において、ＯＣＲに適した画像を短時間で得ることができる。
【図面の簡単な説明】
【０００８】
【図１】モバイル端末の外観の一例を示す図
【図２】モバイル端末のハードウェア構成の一例を示す図
【図３】モバイル端末のソフトウェア構成の一例を示す図
【図４】モバイルアプリのＵＩ画面の一例を示す図
【図５】文字画像の一例を示す図
【図６】文字画像リストのデータ構造の一例を示す図
【図７】一文字毎に文字単位領域を決定する様子を説明する図
【図８】文字読取処理の流れを示すフローチャート
【図９】候補文字検出結果のデータ構造の一例を示す図
【図１０】候補文字検出処理の詳細を示すフローチャート
【図１１】マッチング判定処理の詳細を示すフローチャート
【図１２】評価値の一例を示す図
【図１３】文字認識範囲の具体例を示す図
【図１４】安定状態判定処理の詳細を示すフローチャート
【図１５】候補文字テーブルの一例を示す図
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を用いて説明する。なお、実施形態は、本発明を限定するものではなく、また、実施形態で説明されている全ての構成が本発明の課題を解決するための手段に必須であるとは限らない。
【実施例１】
【００１０】
本実施形態に係る、カメラ機能を有する携帯可能な情報処理装置としては、いわゆるタブレットＰＣやスマートフォンに代表される、カメラ付きのモバイル端末が想定される。カメラ付きのモバイル端末は無線通信機能を備えており、自由な場所で撮影やデータ通信などができる。
【００１１】
図１は、モバイル端末の外観の一例を示す図である。図１（ａ）は、表示手段としてのタッチパネル１０１があるモバイル端末１００の表側（正面）を示している。タッチパネル１０１は、例えば静電容量式のＬＣＤ等で構成され、情報の出力（表示）と入力との2つの機能を備えている。図１（ｂ）は、モバイル端末１００の裏側（背面）を示している。モバイル端末１００の背面には、画像を取り込むための撮像用レンズ（以下、「レンズ」）１０２を備える。本実施例では、モバイル端末１００のモバイルアプリケーション（以下、「モバイルアプリ」）を使って撮影し、被写体上の文字を読み取る場合を例に説明するものとする。図１（ｃ）は被写体の一例としてのタイヤを示している。タイヤ１０５には、タイヤを一意に識別するための記号であるシリアルＩＤ（シリアルナンバーもしくはセリアルナンバーともいう）が刻印されている。刻印部分の拡大図１０６から、シリアルＩＤ１０７として「S7Y004790」の文字列が刻印されていることが分かる。本実施例では、このシリアルＩＤ１０７の部分を、モバイル端末１００のカメラ機能を用いて撮影することにより、シリアルＩＤ１０７を構成する各文字の情報を電子化する。後述のモバイルアプリは、被写体を動画モードで撮影しながら文字の読み取りに適したフレーム（静止画像）を取得し、当該取得した静止画像を任意の出力先に出力することができる。
【００１２】
＜ハードウェア構成＞
続いて、モバイル端末１００のハードウェア構成について説明する。図２は、モバイル端末１００のハードウェア構成の一例を示す図である。モバイル端末１００は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、入出力Ｉ／Ｆ２０４、ＮＩＣ２０５、カメラ部２０６、加速度／ジャイロセンサ２０７で構成され、これら各部はバス２０８で相互に接続されている。
【００１３】
ＣＰＵ２０１は、各種のプログラムを実行して、様々な機能を実現する演算処理装置である。ＲＡＭ２０２は、各種の情報を記憶する読み書き可能なメモリである。また、ＲＡＭ２０２は、ＣＰＵ２０１のワークエリアとしても利用される。ＲＯＭ２０３は、ＯＳや上述の撮影アプリ等の各種プログラムを記憶するメモリである。例えば、ＣＰＵ２０１は、ＲＯＭ２０３に記憶されているプログラムをＲＡＭ２０２にロードしてプログラムを実行する。また、ＣＰＵ２０１は、フラッシュメモリ、ＨＤＤ、ＳＳＤといった外部記憶装置（不図示）に記憶されているプログラムをＲＡＭ２０２に読み込んで実行することもできる。なお、モバイル端末１００の機能及び後述するシーケンスに係る処理の全部又は一部については専用のハードウェアを用いて実現してもよい。
【００１４】
入出力Ｉ／Ｆ２０４は、タッチパネル１０１に対して表示データを出力したり、タッチパネル１０１からの入力情報を受け付けるインタフェースである。ＮＩＣ（Network Interface Card）２０５は、モバイル端末１００をネットワーク（不図示）に接続するためのインタフェースである。カメラ部２０６は、レンズ１０２を介して撮影した被写体の動画像をモバイル端末１００に取り込む。バス２０８は、上述した各部を繋ぐデータ通信路である。加速度／ジャイロセンサ２０７は、モバイル端末１００の姿勢情報を検出するセンサである。
【００１５】
＜ソフトウェア構成＞
次に、モバイル端末１００におけるソフトウェア構成について説明する。図３は、モバイル端末１００のソフトウェア構成の一例を示す図である。モバイル端末１００のソフトウェアは、データ管理モジュール３００とモバイルアプリ３１０で構成される。そして、モバイルアプリ３１０は、メイン制御、表示制御、操作情報取得、画像処理、文字認識の各機能に対応する複数のモジュール３１１〜３１５、及び文字画像ＤＢ３１６で構成される。これら各モジュールに相当するプログラム等は、ＲＯＭ２０３等に記憶されている。
データ管理モジュール３００は、画像データやモバイルアプリ３１０における処理データ（アプリデータ）などを管理する。モバイルアプリ３１０は、不図示のＯＳが提供する制御ＡＰＩ（Application Programming Interface）を利用することで、データ管理モジュール３００が管理する画像データやアプリデータの取得や保存を行う。
【００１６】
ユーザは、モバイル端末１００のＯＳのインストール機能を利用することによって、モバイルアプリ３１０のダウンロードとインストールが可能である。モバイルアプリ３１０は、カメラ部２０６を介して取り込んだ画像データに対して各種の処理を行う。
【００１７】
メイン制御モジュール３１１は、モバイルアプリ３１０を統括的に制御するモジュールであり、各モジュール３１２〜３１５及び文字画像ＤＢ３１６に対する指示及び管理を行う。
【００１８】
表示制御モジュール３１２は、メイン制御モジュール３１１からの指示に従い、モバイルアプリ３１０のユーザインタフェース用画面（ＵＩ画面）を提供する。図４は、モバイルアプリ３１０のＵＩ画面の一例を示す図である。ＵＩ画面４００は、モバイル端末１００のタッチパネル１０１に表示される。ＵＩ画面４００の表示・操作領域４０１にはカメラ部２０６を介して取り込んだ画像が表示され、ユーザは当該画像に対して各種操作を行うことができる。
【００１９】
操作情報取得モジュール３１３は、上記ＵＩ画面４００を介したユーザ操作に係る入力情報を取得し、取得した入力情報をメイン制御モジュール３１１に渡す。例えば、表示・操作領域４０１をユーザが手で触れると、操作情報取得モジュール３１３は、触れられたＵＩ画面４００上の位置を検知し、当該検知した位置の情報をメイン制御モジュール３１１に送信する。シャッターボタン４０２は、カメラ部２０６から入力された画像を、ＲＡＭ２０２やデータ管理モジュール３００に保存するためのボタンである。ズームボタン４０３は、表示画像の拡縮を行うためのボタンである。シリアルＩＤ１０７を囲むように表示された４つの鉤形の記号４０４〜４０７は、文字読取処理の対象領域として撮影すべき位置の目安となるガイドである。このガイドの位置は可変であり、ユーザは読取対象の文字列に応じて任意に変更することができる。ユーザは、読取対象となるシリアルＩＤ１０７を４つのガイド４０４〜４０７によって形成される矩形の領域内に収まるように撮影位置を調整して被写体であるタイヤ１０５を撮影する。図４の例では、シリアルＩＤ１０７の直下の領域４０８に、文字の読取結果が表示されている。このとき、文字の読取結果が誤っているとユーザは、領域４０８の中の修正対象の文字部分をタッチして、文字読取結果の修正を行うことができる。なお、モバイルアプリ３１０のＵＩの形態（位置、大きさ、範囲、配置、表示内容など）は、図示するものに限定されないことはいうまでもない。
【００２０】
画像処理モジュール３１４は、カメラ部２０６を介して取り込まれた撮影画像に対して、グレイスケール変換やエッジ抽出、特徴量抽出といった、文字読取処理を行うために必要な画像処理を行う。この画像処理によって、被写体のうち文字読取処理の対象となる部分の画像（以下、「読取対象画像」）が生成される。
【００２１】
文字認識モジュール３１５は、画像処理モジュール３１４で生成された読取対象画像に対し、文字読取処理を行う。具体的には、読取対象画像内に文字が存在すると推定される領域（探索領域）を設定し、その中から当該文字の外接矩形となり得る領域をサイズと位置を変えて切り出し、当該切り出した領域（文字単位領域）に対し文字画像リストを用いたマッチング判定を行なう。文字画像リストとは、マッチング判定において比較対象として使用する文字画像の集合であり、いわゆる辞書データに相当する。図５に、数字の文字画像を一例として示す。文字画像は、対象被写体（ここではタイヤに刻印されたシリアルＩＤ１０７）で使用されている全ての文字種についてそれぞれ用意される。すなわち、本実施例の場合、図５に示す「０〜９」の10個の文字画像５０１〜５１０に加え、大文字のアルファベット「Ａ〜Ｚ」の26個の文字画像（不図示）のデータが予め用意されることになる。図６は、文字画像リストのデータ構造の一例を示す図である。文字画像リストは、複数の文字画像についてのデータがツリー構造になっている。各文字画像のデータは、各文字を識別するキャラクターコードと、各文字の文字画像から抽出した特徴情報とで構成される。特徴情報としては、例えば、ＨＯＧ特徴量が挙げられる。ＨＯＧ（Histograms of Oriented Gradients）とは局所領域の輝度の勾配方向をヒストグラム化したものである。各文字画像のデータは上述の例に限定されず、例えば特徴情報は、タイヤに刻印されている文字のフォントに基づいて作成された各文字の特徴を示す情報であってもよい。さらには、各文字の画像そのものを辞書データとしてもよい。どのような辞書データを用いるかは、マッチング判定対象の文字単位領域の画像と辞書データとを照合する際に用いるアルゴリズムに応じたものとすればよい。マッチング判定によって、文字画像リストの中から最も類似すると評価された文字画像に係る文字がマッチング判定に用いた文字単位領域と紐付けられて、各文字の最有力候補文字に決定される。読取対象画像内のすべての文字について最有力候補文字が決定し、複数フレームで安定して同じ結果が得られることが確認できると、ＯＣＲに適した静止画像（フレーム）が取得・保存される。
【００２２】
文字画像ＤＢ３１６は、文字認識モジュール３１５がマッチング判定時に使用する上述の文字画像リストを管理するデータベースである。
【００２３】
＜モバイルアプリの動作＞
次に、本実施例のモバイルアプリ３１０による被写体上の文字列の読み取り動作について詳しく説明する。図７（ａ）〜（ｄ）は、文字列の読み取り過程において、一文字毎に上述の文字単位領域を決定する様子を説明する図である。図７（ａ）において、矩形７０１は、カメラ部２０６を介して取り込まれた撮影画像から抜き出された読取対象画像の外郭を示している。前述の通り、ユーザは、モバイルアプリ３１０のＵＩ画面４００に提示されたガイド４０４〜４０７に、シリアルＩＤ１０７がちょうど納まるように撮影位置を調整して、被写体であるタイヤ１０５を撮影する。モバイルアプリ３１０は、撮影された画像から、ガイド４０４〜４０７で囲まれた部分を抜き出して、読取対象画像を生成する。なお、一般的にはタイヤのシリアルＩＤはメーカごとにフォーマットが決まっており、本実施例では、桁数は9桁で、数字と大文字のアルファベットの2種類の文字で構成されるものとして説明する。
【００２４】
本実施例のようにタイヤに刻印されているシリアルＩＤなどを撮影した画像の場合、文字と背景とのコントラストが小さかったり、その表面に汚れがあったりするので、文字のアウトラインを正確に検出することが困難である。したがって、文字のアウトラインに基づいて文字を切り出す従来の技術を適用すると、文字の切り出し位置を誤る可能性が高く、その結果、文字認識精度が悪くなってしまう。そのため、本実施例では、まず、文字が存在すると考えられる領域を探索領域として一文字ずつ設定し、当該設定された探索領域内で、切り出し位置とサイズとを変えながら前述の文字単位領域を設定する。そして、探索領域内から切り出した各文字単位領域の画像に対し、文字画像リスト内の各文字画像のデータを用いたマッチング判定を行って、各文字単位領域の画像と各文字画像との類似度を求める。すべての文字単位領域について類似度を得た後、その中から最も類似度が高かった文字画像に係る文字とそのマッチング判定に用いた文字単位領域とを対応付けて、その探索領域における認識結果とする。そして、マッチング判定が終了した探索領域の認識結果における文字単位領域の位置をもとに、次の文字に対する探索領域を設定し、以後、同様の処理を繰り返す。本実施例においては、タイヤの撮影画像から抜き出された読取対象画像７０１に含まれる9桁のシリアルＩＤ１０７を、１桁目（左端の文字）から順に処理していく。以下、時系列に沿って図７（ａ）〜（ｄ）を参照しつつ説明する。
【００２５】
まず、１桁目の文字の探索領域７０２が、ガイド４０４〜４０７に従った読取対象画像７０１の左端から所定の距離だけ離れた位置に設定される。この最初の探索領域７０２の位置は、4つのガイドで形成される矩形内に収まるように撮影した場合において左端の文字が存在する可能性が高い領域として、当該探索領域の四隅を特定する位置座標を用いて予め設定しておくものとする。そして、探索領域７０２内に所定の切り出し位置に文字単位領域７０３を設定してその画像を抽出し、１桁目に出現する可能性のある文字に関する各文字画像と比較して、各文字画像に係る文字との間の類似度を求める。このとき、文字単位領域７０３は、探索領域７０２内で水平方向（ｘ軸方向）と垂直方向（ｙ軸方向）のそれぞれを少しずつずらした複数の位置に設定される。そして、それぞれの切り出し位置における文字単位領域の画像について文字画像リストを用いたマッチング判定が行われ、各文字画像との類似度が導出される。すなわち、探索領域７０２全体を網羅するように所定サイズの文字単位領域を異なる位置に複数設定して、位置毎に辞書データとの比較を行う。その後、さらに、文字単位領域７０３の幅と高さを変更し、再度、探索領域７０２全体を網羅するように異なる切り出し位置で文字単位領域７０３を設定して、文字画像とのマッチング判定を行う。例えば、文字単位領域７０３の幅を3パターン、高さを2パターン変更する場合、文字単位領域７０３のサイズは、全部で3×2＝6パターンとなる。また、文字単位領域７０３の切り出し位置を、水平方向に4回、垂直方向に4回スライドさせて設定する場合、探索領域７０２に対して、文字単位領域７０３を（4＋1）×（4＋1）＝25カ所に設定することになる。文字単位領域のサイズが6パターン、設定する切り出し位置が25カ所であればトータルで150回、探索領域７０２から文字単位領域の画像が切り出されることになる。そして、文字単位領域の画像を切り出す度に、1桁目に出現する可能性のある文字について文字画像リストを用いてマッチング判定を行い、各文字画像との類似度が求められる。
【００２６】
探索領域内のすべての文字単位領域についてマッチング判定を行った後、最も類似度が高かった文字画像に係る文字が、1桁目の認識結果（最有力候補文字）として確定される。そして、その最も類似度が高かった文字単位領域の切り出し位置を、1桁目の文字の位置とする。図７（ｃ）は、類似度が最も高かった文字画像の文字としてアルファベット「Ｓ」が1桁目の認識結果として確定されたこと、及びそのときの文字単位領域の切り出し位置を矩形７０４で示している。
【００２７】
1桁目の認識結果が確定すると、その右側の隣接する文字（左から2桁目の文字）についての探索領域７０５が設定される。この場合の探索領域７０５は、その一文字前である1桁目の文字の位置７０４に基づく所定の相対位置に設定される。2桁目の文字についても、1桁目の文字の場合と同様に、探索領域７０５内で切り出し位置を変えて文字単位領域７０６を設定してそれぞれについてマッチング判定（類似度の導出）を行い、最も類似度が高かった文字画像に係る文字を、2桁目の文字についての認識結果として決定する。3桁目以降も同様に、探索領域の設定、文字単位領域の設定、文字画像リストを用いたマッチング判定を順次行って、一文字ずつ認識結果を確定させていく。
【００２８】
なお、撮影時に左右にずれることを考慮し、最初に検出する文字に対する探索領域７０２はやや広めにとるのが望ましい。一方、文字間のスペースは読取対象の文字列に応じて予め決まっているのが通常である。したがって、二文字目以降の文字に対する探索領域７０５は、最初の文字に対する探索領域７０２より狭めに設定してもよい。また、本実施例で示した文字単位領域の切り出し方は一例であり、複数の異なる切り出し位置から文字単位領域を切り出した上で、一文字ずつ認識結果を決定することができればよい。
【００２９】
＜文字読取処理＞
続いて、モバイル端末１００を用いた手持ち撮影により、被写体上の文字を読み取る処理の詳細について説明する。図８は、本実施例に係る、文字読取処理の流れを示すフローチャートである。本フローは、例えばユーザがモバイルアプリ３１０を起動させることをトリガーに開始する。
【００３０】
ステップ８０１では、後述のステップ８０７における判定処理で使用する判定係数が設定される。ステップ８０７の判定処理は、読取対象画像内の文字認識に適した所定範囲（以下、文字認識範囲）の内側に、文字単位領域が収まっているかどうかを判定する処理である。この判定処理及び判定係数の詳細については後述する。
【００３１】
ステップ８０２では、前述のガイドに従って動画モードで撮影された１フレーム分の読取対象画像が取得される。なお、この動画モード撮影時のフレームレートは例えば30fps程度である。続くステップ８０３では、後述の安定状態判定処理（ステップ８０９）の判定結果に応じて処理の切り分けがなされる。安定状態判定処理の詳細については後述する。安定状態にあるとの判定結果が出ている場合は、ステップ８１０に進む。一方、安定状態にあるとの判定結果が出ていない場合は、ステップ８０４に進む。処理開始直後の段階では、安定状態判定処理そのものが未実行なので、必ずステップ８０４に進むことになる。
【００３２】
ステップ８０４ではステップ８０２で取得した読取対象画像に含まれる文字列（読取対象文字列）内の注目する文字について、前述の探索領域が設定される。ここでは、読取対象文字列の１桁目の文字を最初の注目する文字とするので、処理開始直後の段階では１桁目の文字についての探索領域が設定されることになる。
【００３３】
ステップ８０５では、設定された探索領域を対象に、文字単位領域の設定、辞書データを用いたマッチング判定を順次行って、注目する文字についての認識結果の候補となる文字を検出する処理（候補文字検出処理）が実行される。この候補文字検出処理によって、図９に示すようなデータ構造の候補文字検出結果が得られる。本実施例の場合は、探索領域毎にそれぞれ150個の文字単位領域についてマッチング判定が実施され、候補文字として見つかった文字数に応じた第Ｎ候補（N＞1）までの候補文字情報が得られる。9桁のシリアルＩＤを読取対象文字列とする本実施例の場合、各桁に対応して「探索領域＿1」〜「探索領域＿9」までの情報が得られることになる。各候補文字情報は、矩形情報、コード情報及び評価値情報で構成される。矩形情報は、見つかった候補文字に対応する文字単位領域の切り出し位置を特定する座標情報、及び、当該文字単位領域のサイズ情報からなる。コード情報は見つかった候補文字のキャラクターコードの情報である。評価値情報は、見つかった候補文字の確からしさを表わす情報であって、本実施例では辞書データ内の文字画像とどれだけ類似しているかを示す度合い（類似度）を評価値とする。
【００３４】
≪候補文字検出処理≫
図１０は、上述の候補文字検出処理の詳細を示すフローチャートである。以下、図１０のフローに沿って説明する。
【００３５】
ステップ１００１では、文字単位領域の幅が、初期値（ここでは最小値）に設定される。続くステップ１００２では、文字単位領域の幅が限界値に到達したか（ここでは最大値を超えたか）が判定される。文字単位領域の幅が最大値を超えたと判定された場合は、本処理を終了する。一方、文字単位領域の幅が最大値を超えていないと判定された場合は、ステップ１００３に進む。
【００３６】
ステップ１００３では、文字単位領域の高さが、初期値（ここでは最小値）に設定される。続くステップ１００４では、文字単位領域の高さが限界値に到達したか（ここでは最大値を超えたか）が判定される。文字単位領域の高さが最大値を超えたと判定された場合は、ステップ１０１３にて文字単位領域の幅が更新（ここでは所定量大きくする）され、ステップ１００２に戻って処理が続行される。一方、文字単位領域の高さが最大値を超えていないと判定された場合は、ステップ１００５に進む。
【００３７】
ステップ１００５では、文字単位領域の基準となるｘ座標（ここでは左端のｘ座標）が、初期値（ここでは探索領域の左端のｘ座標）に設定される。続くステップ１００６では、文字単位領域の幅が探索領域の幅を超えたかが判定される。具体的には、文字単位領域の右端のｘ座標が、探索領域の右端のｘ座標を超えたかどうかが判定される。文字単位領域の幅が、探索領域の幅を超えたと判定された場合は、ステップ１０１２にて文字単位領域の高さが更新（ここでは所定量大きくする）され、ステップ１００４に戻って処理が続行される。一方、文字単位領域の幅が探索領域の幅を超えていないと判定された場合は、ステップ１００７に進む。
【００３８】
ステップ１００７では、文字単位領域の基準となるｙ座標（ここでは上端側のｙ座標）が、初期値（ここでは探索領域の上端側のｙ座標）に設定される。続くステップ１００８では、文字単位領域の高さが探索領域の高さを超えたかが判定される。具体的には、文字単位領域の下端側のｙ座標が、探索領域の下端側のｙ座標を超えたかどうかが判定される。文字単位領域の高さが、探索領域の高さを超えたと判定された場合は、ステップ１０１１にて文字単位領域の基準となるｘ座標が更新（ここではｘ座標を大きくすることでx軸方向にスライド）され、ステップ１００６に戻って処理が続行される。一方、文字単位領域の高さが探索領域の高さを超えていないと判定された場合は、ステップ１００９に進む。
【００３９】
ステップ１００９では、現在設定されている文字単位領域の画像に対して、各文字画像とのマッチング判定が実行される。このマッチング判定の詳細については別途フローを参照して説明する。マッチング判定が完了すると、ステップ１０１０にて文字単位領域の基準となるｙ座標が更新（ここではy座標を大きくすることでｙ軸方向にスライド）され、ステップ１００８に戻って処理が続行される。
【００４０】
以上のようにして、文字単位領域のサイズを変えながら、探索領域内の複数の切り出し位置に文字単位領域を設定してマッチング判定を行うことで、注目する文字についての候補文字が特定されることになる。なお、上述の説明において、最小値と最大値、左端側と右端側、上端側と下端側といった対の関係にある部分については、それぞれを入れ替えてもよい。例えば、ステップ１００１で初期値として最大値を設定してもよく、この場合には、ステップ１００２における限界値を最小値にすればよい。これによっても同様の結果を得ることができる。
【００４１】
≪マッチング判定≫
続いて、上述のステップ１００９におけるマッチング判定について説明する。図１１は、マッチング判定処理の詳細を示すフローチャートである。
【００４２】
ステップ１１０１では、所定の文字単位領域の画像が探索領域から切り出される。続くステップ１１０２では、当該切り出された文字単位領域の画像から特徴情報（ここではHOG特徴量）が抽出される。そして、ステップ１１０３では、前述の文字画像リストの中から先頭の文字画像（図７の例では、「文字画像＿１」）のデータが取得される。
【００４３】
ステップ１１０４では、ステップ１１０３で取得した文字画像のデータに含まれる特徴情報と、ステップ１１０２で文字単位領域の画像から抽出した特徴情報とが比較され、両者が類似する程度を表す相関係数が評価値として求められる。図１２の（ａ）と（ｂ）は、図１に示したタイヤ１０５上の文字列１０７について得られた、異なるフレームにおける評価値の一例を示す図である。照明などの撮影条件の僅かな変化や、文字単位領域の切り出し位置やサイズの違いに依って、得られる評価値はフレーム間で異なるものとなる。
【００４４】
そして、比較を行った文字画像のキャラクターコードと、ステップ１１０４で求めた評価値（類似度）の情報を含む候補文字情報が、ステップ１１０１で切り出された文字単位領域について作成される。
【００４５】
ステップ１１０６では、処理中の注目する文字に関して、作成された候補文字情報に係るキャラクターコードと同じキャラクターコードを有する候補文字情報が既に存在するかが判定される。すなわち、一致するキャラクターカードの候補文字情報が前述の図９における第1候補文字情報や第2候補文字情報として検出済みか否かがチェックされる。キャラクターコードが一致する候補文字情報が既に存在している場合は、ステップ１１０７に進む。一方、キャラクターコードが一致する候補文字情報が存在しない場合は、ステップ１１０９に進む。
【００４６】
ステップ１１０７では、ステップ１１０５で作成した候補文字情報の評価値と、既に存在する候補文字情報の評価値とを比較し、いずれが高いかが判定される。判定の結果、既に存在する候補文字情報の評価値の方が低い（ステップ１１０５で作成した候補文字情報の評価値の方が高い）場合は、ステップ１１０８に進む。一方、既に存在する候補文字情報の評価値の方が高い場合は、ステップ１１１０に進む。
【００４７】
ステップ１００８では、既に存在する候補文字情報の内容が更新される。具体的には、既に存在する第Ｎ候補文字情報の矩形情報と評価位置情報の中身を、ステップ１１０５で作成した候補文字情報の内容で上書きする。また、ステップ１１０９では、ステップ１１０５で作成した候補文字情報が、新たな第Ｎ候補文字情報として保持（ＲＡＭ２０２に格納）される。
【００４８】
そして、ステップ１１１０では、文字画像リストにある全ての文字画像との比較が完了したかどうか（文字画像リストの最後に到達したか）が判定される。未処理の文字画像がある場合は、ステップ１１１１に進む。そして、文字画像リスト内にある次の文字画像データが取得され、ステップ１１０４に戻って処理が続行される。一方、文字画像リストにある全ての文字画像との比較が完了していれば、本処理を終了する。以上が、マッチング判定処理の内容である。
【００４９】
文字読取処理（図８のフロー）の説明に戻る。
【００５０】
ステップ８０６では、候補文字検出処理の結果に基づき、ステップ８０４で設定された探索領域についての最有力候補文字が決定される。具体的には、第１〜第Ｎまでの候補文字の中から評価値（類似度）の最も高い候補文字が、最有力候補文字に決定される。そして、ステップ８０７では、ステップ８０６で決定した最有力候補文字の候補文字情報に含まれる矩形情報に基づき、当該最有力候補文字の文字単位領域が文字認識範囲の内側に収まっているかが判定される。このような判定を行う理由は以下のとおりである。
モバイル端末の手持ちによる動画モード撮影で得られる各フレームの画像には、手ぶれによるボケや照明の変化などの影響を受け、文字認識に適さないものが多く含まれ得る。そのような画像をそのまま用いてマッチング判定を行うと、誤認識が発生する可能性が高い。そこで、できるだけ文字認識に適した画像を取得するために、マッチング判定の対象となる文字列が読取対象画像内の望ましい位置にあることを担保する範囲（＝文字認識範囲）を設定することとしている。図１３（ａ）及び（ｂ）に文字認識範囲の具体例を示す。図１３（ａ）及び（ｂ）において、符号１３０１は、図１（ｂ）に示すタイヤ１０５の撮影画像から抜き出された読取対象画像を示している。そして、符号１３０２は文字認識範囲の上端側の上限ラインを示し、符号１３０３は文字認識範囲の上端側の下限ラインを示している。また、符号１３０４は文字認識範囲の下端側の上限ラインを示し、符号１３０５は文字認識範囲の下端側の上限ラインを示している。そして、１桁目〜９桁目の各文字を囲む矩形１３０６は、前述の図１２（ａ）の評価値に対応する文字単位領域を示し、矩形１３０６’は、前述の図１２（ｂ）の評価値に対応する文字単位領域を示している。いま、読取対象画像１３０１の上端をy座標の原点とすると、文字認識範囲の上端側の上限ライン１３０２のy座標には、1桁目〜9桁目の各文字単位領域１３０６のy座標の中から最小値が設定される。同様に、文字認識範囲の下端側の下限ライン１３０５のy座標には、1桁目〜9桁目の各文字単位領域１３０６のy座標の中から最大値が設定される。さらに、上端側の上限ライン１３０２と下端側の下限ライン１３０５と内外判定係数とに基づいて、文字認識範囲の上端側の下限ライン１３０３と下端側の上限ライン１３０４が決定される。
【００５１】
内外判定係数は、上端側の上限ライン１３０２のｙ座標と下端側の下限ライン１３０５のy座標との差を1としたときの、文字認識を行わない領域の割合を示す係数である。具体的には、まず、上端側の上限ライン１３０２のｙ座標と、下端側の下限ライン１３０５のｙ座標から、上端側の上限ライン１３０２と下端側の下限ライン１３０５のy座標間の距離を決定する。さらに、その中心y座標、つまり、｛（上端側の下限ライン１３０３のy座標＋下端側の上限ライン１３０４のy座標）÷2｝を決定する。このとき、上端側の下限ライン１３０３のy座標及び下端側の上限ライン１３０４のy座標は、それぞれ以下の式で求められる。  
上端側の下限ラインのy座標＝中心y座標−[y座標間の距離×内外判定係数÷2]
下端側の上限ラインのy座標＝中心y座標＋[y座標間の距離×内外判定係数÷2]
なお、内外判定係数は、タッチパネル１０１を介してユーザが手動で設定してもよいし、各フレームにおける矩形情報の平均値を用いた演算などによって自動で設定してもよい。そして、以下の条件１及び条件２を満たす場合に、文字単位領域が文字認識範囲の内側に収まっていると判定されることになる。  
条件１：矩形情報で特定される各文字単位領域の上端（y座標の最小値）が、文字認識範囲の上端側上限ライン１３０２と上端側下限ライン１３０３との間に含まれる。  
条件２：矩形情報で特定される各文字単位領域の下端（y座標の最大値）が、文字認識範囲の下端側下限ライン１３０５と下端側上限ライン１３０４との間に含まれる。
【００５２】
図１３（ａ）の場合、1桁目から9桁目の各文字単位領域１３０６は、その上端が、上端側上限ライン１３０２〜上端側下限ライン１３０３の範囲内に含まれ、かつ、その下端が、下端側下限ライン１３０５〜下端側上限ライン１３０４の範囲内に含まれている。この場合は、文字認識範囲の内側に収まっていると判定されることになる。一方、図１２（ｂ）の場合、1桁目から９桁目の各文字単位領域１３０６’のうち8桁目の「9」の文字単位領域において、その下端が、下端側下限ライン１３０５〜下端側上限ライン１３０４の範囲内に含まれず範囲外となっている。この場合は、文字認識範囲の内側に収まっていないと判定されることになる。以上のように、本ステップで最有力候補文字の文字単位領域が文字認識範囲の内側に収まっていると判定された場合はステップ８０８に進む。一方、収まっていないと判定された場合は、ステップ８０２に戻ってガイドに従った１フレーム分の撮影画像（読取対象画像）が改めて取得される。
【００５３】
ステップ８０８では、ガイドに従った１フレーム分の撮影画像（読取対象画像）内の文字列のすべての文字について処理が完了したかどうかが判定される。すべての文字の処理が完了している場合はステップ８０９に進む。一方、未処理の文字がある場合はステップ８０４に戻って次の文字を注目する文字に決定して処理を続行する。
【００５４】
ステップ８０９では、所定数連続するフレームにおいて、読取対象文字列を構成する各文字についての最有力候補文字の評価値が安定しているかどうかを判定する上述の安定状態判定処理が実行される。
【００５５】
≪安定状態判定処理≫
図１４は、安定状態判定処理の詳細を示すフローチャートである。以下、図１４のフローに沿って説明する。
【００５６】
ステップ１４０１では、最有力候補文字の評価値が安定状態にあるか否かを判定するための基準として、基準フレーム数と基準ばらつき度に相当する閾値がそれぞれ設定される。基準フレーム数は、読取対象文字列の各文字の最有力候補文字を表すキャラクターコードが何フレーム連続して一致しているかを判定するための基準であり、例えば5フレームといった閾値が設定される。基準ばらつき度は、連続一致フレーム数に到達した際の各フレームにおける最有力候補文字の評価値の和（評価値合計値）のばらつき度が一定範囲に収まっているかを判定するための基準であり、例えば10％といった閾値が設定される。これら閾値は、タッチパネル１０１を介してユーザが手動で設定してもよいし、文字読取処理の実行履歴から平均値を求めるなどして自動で設定してもよい。
【００５７】
ステップ１４０２では、現在のフレームと直近（１つ前）のフレームにおける前述した候補文字検出結果が取得される。そして、ステップ１４０３では、取得した現フレームと直近フレームにおける候補文字検出結果に含まれるキャラクターコードの情報に基づき、両フレームにおいて最有力候補文字が一致するかどうかが判定される。現フレームと直近フレームとで最有力候補文字が一致する場合は、ステップ１４０４に進む。一方、一致しない場合は本処理を抜ける。
【００５８】
ステップ１４０４では、最有力候補文字が連続一致したフレーム数が、ステップ１４０１で設定された基準フレーム数に到達したか（所定の閾値以上か）が判定される。判定の結果、連続一致フレーム数が基準フレーム数に到達していない場合はステップ１４０５に進んで、現時点での連続一致したフレーム数がＲＡＭ２０２に記憶される。一方、基準フレーム数に到達していた場合は、ステップ１４０６に進む。
【００５９】
ステップ１４０６では、基準フレーム数分の連続一致したフレームのそれぞれにおいて、最有力候補文字についての評価値の和（評価値合計値）が算出される。本実施例の場合、連続一致した所定数のフレームのそれぞれにおいて、1桁目から9桁目までの全文字の評価値の和が評価値合計値として求められることになる。例えば、前述の図１２（ａ）の場合の評価値合計値は、0.23+0.25+0.28+0.25+0.19+0.26+0.29+0.25+0.12＝2.12となる。また、図１２（ｂ）の場合の評価値合計値は、0.65+0.54+0.68+0.64+0.39+0.73+0.55+0.87+0.60＝5.65となる。
【００６０】
ステップ１４０７では、ステップ１４０６で算出された評価値合計値からその変動幅と当該変動幅に基づくばらつき度が求められ、求めたばらつき度がステップ１４０１で設定された基準ばらつき度に収まっているかが判定される。具体的には、連続一致した全フレームについて求めた評価値合計値についての最大値と最小値との差（変動幅）を求め、そのばらつき度を示す割合がステップ１４０１で設定した所定の閾値以内かどうかを判定する。例えば、連続一致する5フレームにおける評価値合計値が、4.8、4.9、5.0、5.1、5.2であったとする。この場合の変動幅は0.4である。そして、この場合のばらつき度は、0.4÷5.0＝0.08（8％）となるので、基準ばらつき度としての閾値が10％であれば、基準ばらつき度に収まっていると判定される。このように、評価値合計値のばらつき度が基準ばらつき度内に収まっていれば、ステップ１４０８に進む。一方、基準ばらつき度内に収まっていなければ、本処理を抜ける。
【００６１】
ステップ１４０８では、基準フレーム数分の連続一致した各フレームにおいて評価値が安定状態にあるとの判断がなされ、そのことを示す情報（例えばフラグ）がＲＡＭ２０２に格納される。
【００６２】
以上が、ステップ８０９における安定状態判定処理の内容である。安定状態判定処理が終了すると、ステップ８０２に戻ってガイドに従った次フレームの読取対象画像が取得される。図８のフローの説明に戻る。
【００６３】
前述のステップ８０３での処理の切り分けにおいて最有力候補文字の評価値が安定状態にあるとの判定結果が出ていた場合のステップ８１０では、直近のステップ８０２で取得した１フレーム分の撮影画像（読取対象画像）が文字読取処理の結果として出力、例えばＲＡＭ２０２或いは外部記憶装置（不図示）に保存される。また、取得した撮影画像に対して改めて候補文字検出処理（ステップ８０５）を行って、その結果を簡易なＯＣＲ結果としてタッチパネル１０１に表示させてもよい。或いは、取得した撮影画像のデータをＮＩＣ２０５を介して外部のＰＣ等に転送し、手法や精度の異なるＯＣＲを別途行うようにしてもよい。
【００６４】
以上が、本実施例に係る文字読取処理の内容である。これにより、例えば動画モードで撮影を行って文字認識に最適な静止画像を特定する自動撮影機能をモバイル端末に設けることが可能となる。
【００６５】
（変形例）
読取対象となる文字列には、例えば、数字の「0」と「9」や、数字の「0」とアルファベットの「O」といったように形状が類似する文字が含まれる場合も少なくない。このようなケースでは、照明の当たり方などの微妙な変化によって最有力候補文字がフレーム間で頻繁に入れ替わって評価値がなかなか安定せず、文字読取処理に想定外の時間が掛かる場合も考えられる。
【００６６】
そこで、候補文字検出処理におけるマッチング判定の結果、評価値が近似する候補文字が複数見つかった場合には、その探索領域の文字については安定状態判定処理の対象外とするように構成してもよい。このように評価値が近い候補文字が複数見つかった探索領域の文字については除外して評価値が安定状態にあるかを判定することで、認識精度を維持しつつ文字読取処理に要する時間が必要以上に長くなる（或いは終了不能になる）のを防止することができる。
【００６７】
図１５は、本変形例で使用する候補文字テーブルの一例である。この候補文字テーブルは、図１（ｃ）に示すタイヤ１０５の読取対象文字列に対応して、9桁分の候補文字情報が入るテーブルとなっている。図示されるように、候補文字テーブルには、評価値（類似度）の高い順に第１候補文字、第２候補文字・・・といった具合に、そのキャラクターコードとその評価値の情報が対応付けて格納される。そして、この候補文字テーブルを参照し、例えば評価値が最も高い第１候補文字の評価値と評価値が2番目に高い第２候補文字の評価値との差が、所定値以内であれば、その探索領域の文字については、安定状態判定処理の対象から除外する。この場合の所定値は、被写体、対象文字列の構成、撮影環境などを考慮して設定すればよく、例えば、0.01〜0.1程度の値が設定される。図１５に示す例では、8桁目の第１候補文字である文字情報“0”（ゼロ）の評価値0.87と第２候補文字“O”（オー）の評価値0.86との差分が0.01と小さい。この場合において、例えば閾値が0.05に設定されていたとすれば、8桁目は除外されることになる。
【００６８】
フレーム毎に撮影環境が変化しやすい場合において、特に第１候補文字と第２候補文字の評価値の差が小さいと、フレーム間で第１候補文字と第２候補文字とが入れ替わりやすい。そのままでは誤認識が発生する可能性が高いことから、ここでは第１候補文字と第２候補文字の評価値の差に着目して、差が小さい探索領域の文字は安定状態判定処理に利用しないようにしている。具体的には、図１５の例の場合であれば、8桁目を除く1桁目〜7桁目と9桁目の8文字のみを使って、現フレームと直近フレームとの間で最有力候補文字が一致するかどうかといった判定処理（ステップ１４０３）がなされることになる。ただし、本変形例はこれに限定されるものではなく、例えば第３候補文字までを考慮に入れてもよい。
【００６９】
さらには、除外する文字数の上限（除外文字率）を設定してもよい。例えば、除外文字率＝（除外文字数）÷（対象文字列を構成する全文字数）とし、除外する文字数が上限を超えた場合には、そのフレームに係る撮影画像を読取対象画像とはしない。例えば、対象文字列の文字数が10文字であったとして、除外文字数の上限を2個（除外文字率=0.2）と設定した場合には、除外文字が2文字以上ある場合は、そのフレームの撮影画像を破棄して次のフレームの撮影画像を取得して処理を続行する。そして、除外文字数の上限を超える撮影画像が連続するような場合は、撮影環境の変更を促すメッセージをタッチパネル１０１に表示するなどしてもよい。
【００７０】
以上のような変形例により、読取対象の文字列内に評価値の近い文字が含まれるなどして評価値が複数フレーム連続して安定しにくいような状況においても本発明を好適に適用することができる。
【００７１】
本実施例によれば、カメラ機能を有するモバイル端末を用いて、文字を含む読取対象を撮影して文字認識結果を得る場合において、ＯＣＲに適した画像を短時間の撮影で得ることができる。
【００７２】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2018173818.tif 000003
【図２】
2018173818.tif 000004
【図３】
2018173818.tif 000005
【図４】
2018173818.tif 000006
【図５】
2018173818.tif 000007
【図６】
2018173818.tif 000008
【図７】
2018173818.tif 000009
【図８】
2018173818.tif 000010
【図９】
2018173818.tif 000011
【図１０】
2018173818.tif 000012
【図１１】
2018173818.tif 000013
【図１２】
2018173818.tif 000014
【図１３】
2018173818.tif 000015
【図１４】
2018173818.tif 000016
【図１５】
2018173818.tif 000017