(57)【要約】【課題】  画像処理装置において、手書きの記入用紙を撮像部で撮像した画像データから文字認識を行うときに、ユーザが一文字として記入した文字を画像処理装置が二文字以上に区切って文字認識してしまうことを防ぐことを目的とする。【解決手段】  本発明は、画像処理装置であって、用紙を撮像する撮像手段と、前記用紙にユーザが文字を１文字記入するための文字記入枠を投影する投影手段、前記撮像手段により撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識手段と、を有し、前記文字認識手段は、前記投影手段により投影された１つの文字記入枠内に書かれた文字を１文字として文字認識することを特徴とする。【選択図】  図１３
2017215661.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
用紙を撮像する撮像手段と、
前記用紙にユーザが文字を１文字記入するための文字記入枠を投影する投影手段、
前記撮像手段により撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識手段と、を有し、
前記文字認識手段は、前記投影手段により投影された１つの文字記入枠内に書かれた文字を１文字として文字認識することを特徴とする画像処理装置。
【請求項２】
前記投影手段により投影される前記文字記入枠の位置を記憶する記憶手段を有し、
前記記憶手段により記憶された前記文字記入枠の位置に従って、ひとつの前記文字記入枠内に書かれた文字を１文字として前記文字認識手段が文字認識を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記文字認識手段により文字認識を行った結果を前記投影手段が投影することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記文字認識手段による文字認識を行うための処理を始める前に、前記投影手段が前記文字記入枠の投影を終了することを特徴とする請求項１乃至３のいずれか一項に記載の画像処理装置。
【請求項５】
前記画像処理装置は、
前記撮像手段により撮像された画像データに基づいて、ユーザが記入を行う記入欄を検出する記入欄検出手段を有し、
前記記入欄検出手段により検出された前記記入欄の内側に前記投影手段が前記文字記入枠を投影することを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
前記記憶手段は前記用紙のテンプレート画像を記憶しており、
前記記入欄検出手段は前記撮像手段の撮像した画像と前記記憶手段に記憶された前記テンプレート画像に基づいて前記記入欄を検出することを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
前記画像処理装置は、
ユーザによる操作を検出する操作検出手段を有し、
前記撮像手段により撮像された画像に基づいて、ユーザが文字を記入する前記記入欄を検出し、
前記操作検出手段がユーザによる前記記入欄を選択する操作を検出したことに従って、前記投影手段が前記文字記入枠を前記記入欄に投影することを特徴とする請求項１乃至６のいずれか一項に記載の画像処理装置。
【請求項８】
前記操作検出手段により文字認識処理を開始するための操作を検出されたことに従って、前記文字認識手段が文字認識を行うことを特徴とした請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項９】
前記操作検出手段によりユーザが一つの前記文字記入枠への文字の記入を終えたことが検出されることに従って、前記一つの文字記入枠内に記入された文字について前記文字認識手段が文字認識を行うことを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項１０】
前記操作検出手段はユーザによるジェスチャー操作を検出することが可能であることを特徴とする請求項１乃至９のいずれか一項に記載の画像処理装置。
【請求項１１】
前記画像処理装置は、
前記操作検出手段により第１のジェスチャー操作が検出された場合に、前記投影手段の投影する前記文字記入枠の大きさを変化することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記画像処理装置は、
前記操作検出手段により第２のジェスチャー操作が検出された場合に、前記投影手段の投影する前記文字記入枠の位置を変更することが可能であることを特徴とする請求項１０または１１に記載の画像処理装置。
【請求項１３】
前記第１のジェスチャー操作がピンチインまたはピンチアウトであることを特徴とする請求項１１に記載の画像処理装置。
【請求項１４】
前記操作検出手段によりユーザのピンチイン操作が検出された場合、前記投影手段の投影する文字記入枠の大きさを小さくすることを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記操作検出手段により検出された前記第１のジェスチャー操作がピンチインである場合に、前記投影手段により投影される前記文字記入枠の大きさを予め決められた所定の大きさよりも小さくしないよう制御する制御手段を有することを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
前記投影手段により投影される前記文字記入枠を前記所定の大きさよりも小さくするためのピンチインが前記操作検出手段により検出された場合、
前記文字記入枠をこれ以上、小さくすることができない旨をユーザに通知する通知手段を有する請求項１５に記載の画像処理装置。
【請求項１７】
前記操作検出手段により検出された第１のジェスチャー操作がピンチアウトである場合に、前記投影手段により投影される枠の大きさを大きくすることを特徴とする請求項１６に記載の画像処理装置。
【請求項１８】
画像処理装置の制御方法であって、
用紙を撮像する撮像ステップと、
前記用紙にユーザが文字を１文字記入するための文字記入枠を投影する投影ステップ、
前記撮像ステップにより撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識ステップと、を有し、
前記文字認識ステップは、前記投影ステップにより投影された１つの文字記入枠内に書かれた文字を１文字として文字認識することを特徴とする画像処理装置の制御方法。
【請求項１９】
請求項１８に記載の画像処理装置の制御方法を、コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、机上にデータを投影する投影部と、机上の対象物を撮像する撮像部とを有する画像処理装置に関する。
【背景技術】
【０００２】
机の上においた申し込み用紙や履歴書等の手書きの記入用紙に、用紙の記入の方法や記入時の注意事項をプロジェクタ等の投影装置を用いて上記記入用紙上に重畳して表示する画像処理装置が提案されている。さらに、ユーザが記入をした手書きの記入用紙をカメラ等の撮像装置で撮像し、得られた画像から手書き文字を文字認識して記入された内容に誤字や脱字が無いかを判定することが考えられている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１８０９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来、手書きをする領域に最適な文字サイズや行間を示すガイドを記入用紙上に投影しユーザはそのガイドを参考にしながら用紙の記入を行っていた。記入が完了した用紙はカメラ等の撮像装置で撮像し、得られた画像データからＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）処理等の文字認識処理を行うことで手書き文字を電子データへと変換することができる。このとき、画像処理装置は、文字と文字の境目を検出し、一文字と思われる塊毎に文字認識処理を行っていた。
【０００５】
しかし、手書きの文字は文字と文字の境が分かりにくく、一文字分の文字ガイドの中にユーザが文字を記入した場合にも一文字を正確に抽出することが難しい。例えば、手書きの記入用紙の一文字分のガイドの中に“言吾”と書かれていた場合、ユーザが“語”と記入したつもりにも関わらず“言”と“吾”の二文字として認識されてしまうことがある。上記のように、画像処理装置がユーザの意図した文字の境目と異なるところで文字を区切ってしまうと、文字認識の結果がユーザの意図した文字と異なる文字になってしまう。
【０００６】
このように、手書きの記入用紙を画像処理装置がカメラ等の撮像部を用いて撮像した画像データから、手書き文字の文字認識を行おうとすると、文字と文字を正確に区切って文字認識をすることができない。
【０００７】
本発明では、手書きの記入用紙を撮像部で撮像した画像データから文字認識を行うときに、ユーザが一文字として記入した文字を画像処理装置が二文字以上に区切って文字認識してしまうことを防ぐことを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、画像処理装置であって、用紙を撮像する撮像手段と、前記用紙にユーザが文字を１文字記入するための文字記入枠を投影する投影手段、前記撮像手段により撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識手段と、を有し、前記文字認識手段は、前記投影手段により投影された１つの文字記入枠内に書かれた文字を１文字として文字認識することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、手書きの記入用紙を撮像部で撮像した画像データから文字認識を行うときに、ユーザが一文字として記入した文字を画像処理装置が二文字以上に区切って文字認識してしまうことを防ぐことができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の画像処理装置１００の外観の一例を示す図である。
【図２】本実施形態の画像処理装置１００のハードウェアブロック図である。
【図３】実施例１の動作概要を示す図である。
【図４】実施例１における文字記入枠の形状の例を示す図である。
【図５】実施例１に示す処理のフローチャートの一例である。
【図６】実施例２の動作概要を示す図である。
【図７】実施例２に示す処理のフローチャートの一例である。
【図８】実施例３の動作概要を示す図である。
【図９】実施例３に示す処理のフローチャートの一例である。
【図１０】実施例３の文字記入枠追加処理の詳細のフローチャートの例である。
【図１１】実施例４の文字記入枠を表示する処理のフローチャートの一例である。
【図１２】実施例４に示す処理のフローチャートの一例である。
【図１３】実施例４の動作概要を示す図である。
【発明を実施するための形態】
【００１１】
（実施例１）
以下、本発明を実施するための形態について図面を用いて説明する。
【００１２】
図１は本実施形態の画像処理装置１００の外観の一例を示す図である。
【００１３】
画像処理装置１００は、机から垂直方向に伸びる柱状の形状をしており、プロジェクタ１０８と、赤外線エミッタ内蔵撮像センサ１０９（以下、撮像センサ１０９）を備えている。プロジェクタ１０８は投影部として機能し、机上または机上に置かれた物体や用紙の上に映像を投影する。撮像センサ１０９は撮像部として機能し、机上の物体や用紙の撮像を行う。図中の撮像領域（ａ）は、プロジェクタ１０８により映像を投影する領域であり、かつ、撮像センサ１０９により撮像を行うことのできる撮像領域である。撮像センサ１０９に備えられた赤外線エミッタは赤外線を机上に照射し、反射した赤外線を撮像センサ１０９で撮像する。その情報を基に、画像処理装置１００は撮像センサ１０９と被写体との距離を算出する。撮像センサ１０９の有する撮像センサを用いて、三次元計測を行いユーザの手のジェスチャー操作を検出する。
【００１４】
プロジェクタ１０８が投影を行う領域、および、撮像センサ１０９が撮像を行うことのできる撮影領域（ａ）内であればどこに手書き記入用紙を置いてもよい。プロジェクタ１０８は撮像センサ１０９を用いて手書き記入用紙の位置を検出し、検出した手書き記入用紙に記入時の注意事項や手書き文字を記入するための枠線等を投影する。用紙（ｂ）は撮像領域（ａ）内に置かれた用紙である。ユーザは用紙（ｂ）にペン等の筆記用具で文字を記入する。記入された文字を撮像センサ１０９で撮像し、ＯＣＲ処理等の文字認識処理を画像処理装置１００が行う。
【００１５】
図２は本実施形態の画像処理装置１００のハードウェアブロック図である。
【００１６】
画像処理装置１００は、コントローラ１２０、プロジェクタ１０８、赤外線エミッタ内蔵撮像センサ１０９を有する。
【００１７】
内部バス１１１は、メモリコントローラ１０３、Ｉ／Ｏコントローラ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  コントローラ）１０５間で情報の伝達を行うために、電気信号の授受を行う。メモリコントローラ１０３は、メインメモリ１０４に対するメモリアクセス全般を統括する。Ｉ／Ｏコントローラ１０５は、ＨＤＤ１０７、プロジェクタ１０８、赤外線エミッタ内蔵撮像センサ１０９と内部バス１１１を介して接続している処理部との間で情報の送受信を行う。グラフィックコントローラ１０２は、プロジェクタ１０８による投影を制御する。
【００１８】
ＨＤＤ１０７にはブートローダプログラム及び画像処理装置制御プログラムが格納されている。メインメモリ１０４は高速アクセスが可能な揮発性メモリであり、ＨＤＤ１０７に記憶されている情報や一時的に使用する情報を格納する。画像処理装置１００の電源投入時には、ＣＰＵ１０１がＨＤＤ１０７に格納されているブートローダプログラムを読み出して実行し、ＨＤＤ１０７に格納されている画像処理装置制御プログラムを読み出し、メインメモリ１０４に格納する。そして、ＣＰＵ１０１がメインメモリ１０４に格納された画像処理装置制御プログラムを実行することで、画像処理装置１００の有する各機能を実現する。また、ＣＰＵ１０１がこの画像処理装置制御プログラムを実行することで、撮像センサ１０９で撮像した画像を解析する、プロジェクタ１０８でユーザに情報を投影して示す等の、画像処理装置１００の行う処理が実行される。
【００１９】
画像処理装置１００は、撮像センサ１０９を備えている。撮像センサ１０９は撮影した撮像画像を、ＲＧＢ輝度情報のデジタル信号に変換する。
【００２０】
また、赤外線エミッタ内蔵撮像センサ１０９は、赤外線の撮像素子を備えている。赤外線エミッタ内蔵撮像センサ１０９は、三次元計測を行うために用いられる。撮像センサ１０９に内蔵された赤外線エミッタから赤外線を投射し、撮像センサ１０９でその反射光を撮像する。赤外線エミッタが赤外線を投射した時刻と投射した赤外線の反射光の撮像時刻から撮像センサと被写体との距離を算出する。この距離算出には、ＴＯＦ法（Ｔｉｍｅ−ｏｆ−Ｆｌｉｇｈｔ法）等公知の方法を用いる。赤外線エミッタ内蔵撮像センサ１０９は、Ｉ／Ｏコントローラ１０５との情報の送受信を行う。
【００２１】
画像処理装置１００はプロジェクタ１０８を備えている。プロジェクタ１０８は手書き記入用紙の記入例や記入時の注意事項、文字記入枠等を可視光により投影する。プロジェクタ１０８はＩ／Ｏコントローラ１０５及びグラフィックコントローラ１０２との情報の送受信を行う。
【００２２】
本実施例では、金融機関や役所にて、ユーザが手書きの申込用紙に記入を行う場合を例に説明をする。申込用紙には氏名や生年月日等ユーザが記入すべき記入欄が予め印刷されている。
【００２３】
ユーザが手書きの記入用紙を机上に置き、記入を行う欄を指でタッチすることで記入欄を選択する。その後、画像処理装置１００がプロジェクタ１０８で記入欄の内側に文字記入枠を表示する。ユーザが各文字記入枠に一文字ずつ文字を記入すると、画像処理装置１００がひとつの文字記入枠内に書かれた文字を一文字であるとしてＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）処理を行う。ＯＣＲ処理とは画像データに含まれる文字をコンピュータで処理することのできるテキスト情報へ変換するための処理である。本実施例では、一つの文字記入枠内に書かれた文字を一文字とし、一つの枠内に記入された文字に対応する文字コード等のテキスト情報への変換を画像処理装置１００が行う。プロジェクタ１０８が表示する一つの文字記入枠に記入された文字を一文字としてＯＣＲ処理を行うことで、文字記入枠が予め印刷されているＯＣＲ専用用紙を用いることなく、文字と文字をユーザが意図した通りに区切り、ＯＣＲ処理を行うことができる。
【００２４】
図３は本実施例における申込用紙を真上から見た図を時系列に並べたものである。
【００２５】
図３（ａ）は、画像処理装置１００の撮像領域上に置かれた未記入の申込用紙を真上から見た図である。申込用紙には予め「名前」と「生年月日」を記入するための記入欄が印刷されている。
【００２６】
図３（ｂ）は、ユーザが「名前」欄をタッチ操作で選択したことを示している。タッチ操作とは、ユーザが撮像領域内に置かれた申込用紙に指やペン等で触れ、指やペンを左右に動かすことなく上に持ち上げる操作である。タッチ操作は、指やペンが完全に申込用紙にふれなくとも、指やペン等が申込用紙に所定の距離以上に近づいた後に指やペンが持ち上げられる操作であってもよい。図３（ｂ）はユーザの指が申込用紙の記入欄をタッチすることで、タッチされた記入欄がユーザにより選択された状態を示している。
【００２７】
図３（ｃ）は、ユーザがタッチ操作を行い選択した枠内に、文字を一文字ずつ手書きするための枠（文字記入枠）をプロジェクタ１０８が投影していることを示している。図３（ｃ）では、ユーザがタッチ操作で選択した枠内の「名前」という印刷部分を避けた位置に文字記入枠が投影される。
【００２８】
図３（ｄ）は、ユーザが、１つ目の文字記入枠内に「山」という漢字をペンで記入していることを示している。ユーザはプロジェクタ１０８で投影された文字記入枠内に一文字が収まるよう記入を行う。これにより、ユーザが手書きする文字のサイズが一定となり、手書き後の見栄えをよくすることができる。また、ユーザの手書きした文字と文字の区切りを明確にすることができる。
【００２９】
図３（ｅ）は、「山」の記入が終わり、ユーザが、一つ右の文字記入枠内に「田」という漢字を記入していることを示している。このとき、画像処理装置１００は撮像センサ１０９で撮像した画像データを基に、一つ目の文字記入枠内に書かれた手書き文字を一文字とし、ＯＣＲ処理を行う。ＯＣＲ処理の文字認識の結果を基に、画像処理装置１００は手書き文字に対応する文字データを生成する。ＯＣＲ処理により、文字認識された結果をユーザが手書きした文字の近くに表示をする。このようにすることで、画像処理装置１００がユーザの意図した通りに文字認識を行っているかを確認することができる。画像処理装置１００が認識した文字がユーザの意図した文字と異なっていた場合、文字の修正を行うための方法については実施例３にて後述する。ＯＣＲ処理は公知の方法を用いることとする。文字記入枠内に記入された文字を一文字として、ＯＣＲ処理を行うことで、文字と文字の境目を明らかにし、文字認識処理を行うことができる。また、図３（ｅ）では、ＯＣＲ処理をおこなうときに画像処理装置１００が、１つ目の文字記入枠の表示がされていた位置への文字記入枠の表示を消している。
【００３０】
図３（ｆ）は、ユーザがが、「田」の記入が終わり、３つ目の文字記入枠には何も書かずに４つ目の文字記入枠内に「太」という漢字を記入していることを示している。この時、画像処理装置１００は、ユーザが記入を行わなかった３文字目の文字記入枠の表示を消す。
【００３１】
図４に実施例１における文字記入枠の形状の例を示す。図４（ａ）は、各文字記入枠の外枠をハイライト表示するものである。記入欄４０１は申込用紙に設けられた所定の項目を記入するための欄である。文字記入枠４０２はプロジェクタ１０８により投影されており、ユーザが一文字分の文字を手書きで記入するための枠である。文字列記入領域４０３はユーザが文字列を記入することが可能な領域である。文字列記入領域４０３は記入欄４０１から記入欄４０１内に予め印字されている文字のある領域を除いた領域である。文字列記入領域４０３内に文字記入枠４０２を表示することで、記入欄４０１内のすでに印字のなされている部分にユーザが文字を記入することを防いでいる。
【００３２】
図４（ｂ）は、各文字記入枠の記入領域全体をハイライト表示するものである。図４（ｃ）は、各文字記入枠の区切り線のみをハイライト表示するものである。
【００３３】
図５は本実施例においてＣＰＵ１０１が実行する処理を示すフローチャートである。図５に示す処理を行うためのプログラムはＨＤＤ１０７に記憶されている。画像処理装置１００は電源がＯＮになったのち図５に示す処理を開始する。
【００３４】
画像処理装置１００が、撮像センサ１０９に備えられた赤外線エミッタを用いて机上の撮像領域に赤外光を投射し、撮像を行う（Ｓ５０１）。このとき、撮像センサ１０９はＲＧＢチャネルの画像データおよび、赤外光のＩｒチャネルの画像データを取得する。ＲＧＢチャネルの画像データおよび、Ｉｒチャネルの画像データを合わせてＲＧＢＩｒ画像データと記載する。
【００３５】
ＣＰＵ１０１は、Ｓ５０１で得られた画像データを基に、撮像領域の三次元座標情報を生成する（Ｓ５０２）。ＣＰＵ１０１はＴＯＦ法等公知の技術を用いて、画像データから三次元の座標情報データを生成する。ＲＧＢＩｒ画像データおよび三次元座標情報より、撮像領域内の物体の位置やその高さを検出することができる。
【００３６】
ＣＰＵ１０１は、今回取得したＲＧＢＩｒ画像データ及び三次元座標情報と、直前に取得したＲＧＢＩｒ画像データ及び三次元座標情報とを比較してその差分を抽出する（Ｓ５０３）。ここで抽出される差分を以降、画像差分と記載する。Ｓ５０３では、時間経過に伴い撮像領域内の状況が変化したか否かを判定する。画像差分が無かった場合、不図示であるが、ＣＰＵ１０１は処理をＳ５０１に戻し、ＣＰＵ１０１は撮像センサ１０９による撮像を行う。
【００３７】
ＣＰＵ１０１は、Ｓ５０３で抽出した画像データの差分に基づいて、どのような操作が行われたかを判定する（Ｓ５０４）。図５に示すフローチャートでは、上記の判定結果が、用紙が撮像領域内で停止した、ユーザが用紙をタッチした、文字記入枠内で操作が行われた、のいずれかの場合を示している。ＣＰＵ１０１は上記以外の操作による画像差分を判定することが可能である。例えば、撮像領域内で物体が止まった、ユーザによりドラッグ操作やピンチ操作が行われたことを画像処理装置１００は判定することができる。
【００３８】
撮像領域内で厚みのない四角形の物体が静止した場合、ＣＰＵ１０１は申込用紙が机の上に置かれたと判定する。このとき、ＣＰＵ１０１は撮像センサ１０９が撮影した画像データから画像特徴を算出し、ＨＤＤ１０７に記憶されたテンプレートから撮像している申込用紙の種類を特定する（Ｓ５０５）。ＨＤＤ１０７には、各申込用紙のテンプレートの画像データとユーザによる記入の必要な欄の位置情報が紐づけされて記憶されている。ＣＰＵ１０１は例えばＡＫＡＺＥ（Ａｃｃｅｌｅｒａｔｅｄ  ＫＡＺＥ）特徴のような公知の技術を用いて画像特徴を算出する。ＣＰＵ１０１が算出した画像特徴量とＨＤＤ１０７に予め記憶された申込用紙のテンプレート画像とを比較し、現在、撮像センサ１０９が撮像している申込用紙がいずれの申込用紙であるかを判定する。
【００３９】
ＣＰＵ１０１は、テンプレートに紐づけられてＨＤＤ１０７に記憶された記入欄の位置情報を読み出す（Ｓ５０６）。その後、Ｓ５０１に戻り、再び、撮像領域内の画像データを撮像する。Ｓ５０６においてＣＰＵ１０１はＲＧＢＩｒ画像および三次元座標情報より読みだしたテンプレートに含まれる記入欄に対応する座標を算出し、メインメモリ１０４に記憶する。
【００４０】
Ｓ５０４において、申込用紙をユーザがタッチしたと判断された場合、ＣＰＵ１０１はユーザが申込用紙のどこをタッチしたかを算出し、ユーザがタッチした位置に対応する記入欄を選択状態にする（Ｓ５０７）。たとえば、ユーザがタッチをした位置とＳ５０６においてＣＰＵ１０１が算出した記入欄の位置を比較することで、ユーザがタッチした記入欄を特定する。ユーザのタッチした位置の近傍に記入欄が無い場合、ＣＰＵ１０１は記入欄の特定を行わないこととする。また、ユーザが申込用紙上のいずれかの記入欄を選択していた場合、記入欄のない位置をユーザがタッチすることで、選択されていた記入欄の選択状態を解除することとしてもよい。
【００４１】
ＣＰＵ１０１は、タッチされた記入欄内の画像データを抽出し、画像特徴から画像特徴が存在しない領域を文字列記入領域として選定する（Ｓ５０８）。ＣＰＵ１０１はＳ５０７で選択状態となった枠の画像データを取得する。ＣＰＵ１０１は取得した画像データの画像特徴を算出し、文字や線等による画像特徴のない領域を文字列記入領域とする。例えば、図３に示す原稿の場合、図３（ｂ）でユーザにより選択された「名前」欄には項目名である「名前：」が印刷されている。このように予め印刷された文字のある領域を記入欄から除き、文字列記入領域を選定する。また、記入欄内に予め印刷された文字がなければ、記入欄をそのまま文字列記入領域とする。
【００４２】
ＣＰＵ１０１は、文字列記入領域の位置および大きさから、予め決められた大きさの文字記入枠を表示する位置を決定し、文字記入枠を表示する位置および枠の大きさをメインメモリ１０４に記憶する（Ｓ５０９）。文字記入枠の領域情報は下記に示すテーブルで管理され、下記に示すテーブルはメインメモリ１０４に記憶される。枠ＩＤは文字列記入領域内の何番目の文字記入枠であるかを示す番号であり、座標は文字記入枠の４つの角のうち対角の二角の座標を表している。座標は文字記入枠の位置および大きさがわかればよい。本実施例では、文字列記入領域の左下の角を原点とし、文字記入枠の対角の二つの点の座標が記憶されている場合について示している。しかし、この方法以外でも、例えば、４つの角全ての点の座標を記憶しておいてもよいし、文字記入枠の中央の点の座標と文字記入枠の大きさを記憶しておいてもよい。また、座標の原点は上記の位置に限らない。例えば、撮像領域内の四隅のいずれかの点でもよいし、記入欄の四隅のいずれかの点で合っても構わない。
【００４３】
【表１】
2017215661.tif 000003
また、実施例１では予め決められたサイズの文字記入枠が文字列記入領域に表示される。しかし、文字記入枠のサイズは予め決められたサイズの枠でなくてもよく、ＣＰＵ１０１が検出した文字列記入領域の大きさに合わせて文字記入枠の大きさを決定することとしてもよい。例えば、記入欄や文字列記入領域の高さをもとに文字記入枠の大きさを決定することとしてもよい。このようにすることで、記入欄や文字列記入領域が大きいときには一文字当たりが大きい文字記入枠を表示し、記入欄や文字列記入領域が小さいときには位置文字あたりが小さい文字記入枠を表示することができる。さらに、一度決定された文字記入枠の大きさをユーザがピンチ操作を行うことで後から変更することができるとしてもよい。
【００４４】
ＣＰＵ１０１は、メインメモリ１０４に記憶された各文字記入枠の位置および大きさの情報に従い、文字記入枠をプロジェクタ１０８で投影する（Ｓ５１０）。ＣＰＵ１０１がＳ５１０の処理を実行することで、図３（ｃ）に示すような文字記入枠が申込用紙に重畳して表示される。
【００４５】
Ｓ５０４において文字記入枠内で操作が行われたと判定された場合、ＣＰＵ１０１は以下の処理を行う。
【００４６】
ＣＰＵ１０１は今回、画像差分が抽出された文字記入枠と直前に画像差分が抽出された文字記入枠が同じか否かを判定する（Ｓ５１１）。
【００４７】
今回、画像差分が抽出された文字記入枠と、直前に画像差分が抽出された文字記入枠が同じである場合、今回、画像差分の抽出された文字記入枠において所定の時間（例えば３秒）に画像差分が発生したか否かを判定する（Ｓ５１２）。
【００４８】
Ｓ５１２において、ＣＰＵ１０１は撮像センサ１０９を用いて撮像を行い、所定時間の間に、今回画像差分の生じた文字記入枠内でさらに画像差分が抽出されるかを判定する。
【００４９】
今回、画像差分の発生した文字記入枠内でさらに画像差分が発生した場合、ＣＰＵ１０１は画像差分の発生した文字記入枠においてユーザが文字の記入を続けていると判定し、Ｓ５０１へ戻る。
【００５０】
今回、画像差分が検出された文字記入枠において所定時間画像差分が検出されなかった場合、ＣＰＵ１０１はユーザがその文字記入枠への記入を完了したと判断し、ＯＣＲ処理を行う。
【００５１】
Ｓ５１２では、今回画像差分が抽出されてから所定の時間が経過したか否かでユーザが記入欄内の記入を終えたか否かを判定している。しかし、今回画像差分が抽出されてからの経過時間ではなく直前に画像差分が抽出されてから所定時間が経過したか否かで判定を行うこととしてもよい。
【００５２】
ＣＰＵ１０１が、ユーザが文字の記入を終えた文字記入枠について枠の色を透明にする（Ｓ５１３）。直前に画像差分が発生した文字記入枠と今回画像差分が発生した文字記入枠が異なる場合に、ユーザが直前に画像差分の生じた文字記入枠への記入を終了したとＣＰＵ１０１は判定する。または、文字記入枠内で最後の画像差分が発生してから所定時間が経過しても画像差分の発生した文字記入枠において新たな画像差分が発生しなかった場合に上記文字記入枠における文字の記入が終了したとＣＰＵ１０１は判定する。この処理により、図３の（ｅ）と（ｆ）に示すように記入が完了した「山」の文字記入枠が消え、図３の（ｆ）に示すように記入が完了した「田」と、「田」と記入中の「太」の間に存在する記入が行われなかった文字記入枠が消える。ＯＣＲ処理を開始する前に、文字の記入が完了した文字記入枠の色を透明にすることで、ユーザの書いた文字が文字記入枠に重なってしまった際も、ＯＣＲ処理の精度を下げること無く文字認識を行うことができる。本実施例では文字記入枠の色を透明にしているが、枠の色を透明にする以外の実施形態でも良い。たとえば、枠の輝度をＯＣＲ処理に影響が出ない程度まで低くするであったり、文字記入枠の色をユーザの仕様するペンと異なる色とし、文字記入枠とユーザの書いた文字が十分区別できるようにする等である。
【００５３】
ＣＰＵ１０１が、撮像センサ１０９が撮像した画像データについて枠を透明にした文字記入枠内の画像データを取得する（Ｓ５１４）。
【００５４】
ＣＰＵ１０１は、抽出した画像データを一つの文字としてＯＣＲ処理を行い、ＯＣＲ処理の結果をテキスト情報として得る（Ｓ５１５）。
【００５５】
ＣＰＵ１０１は、ＯＣＲ処理の結果のテキスト情報を、Ｓ５１３で文字記入枠を透明にした文字記入枠近傍にプロジェクタ１０８で表示する（Ｓ５１６）。その後、ＣＰＵ１０１は処理をＳ５０１にもどし、撮像センサ１０９による撮像を行う。この処理により、図３の（ｅ）と（ｆ）に示すようにユーザが文字記入枠に「山」を書き終わり、次の文字記入枠に「田」を書いている間に、「山」を書いた文字記入枠の色が透明になり、文字記入枠の下にＯＣＲ認識結果の漢字が表示される。
【００５６】
本実施例では、ユーザが手書きした文字を撮像センサ１０９で撮像し、ＯＣＲ処理を行うときに、プロジェクタ１０８を用いて文字記入枠を投影し、投影した文字記入枠内に書かれた文字を一文字と考えてＯＣＲ処理を行う。このようにすることで、ユーザが一文字として記入した文字を画像処理装置１００が二文字以上の文字として文字認証することを防ぐことができる。また、画像処理装置１００は文字認識専用の用紙を用いることなく文字と文字の境目を明確にして、ＯＣＲ処理等の文字認識処理を行うことができる。
【００５７】
実施例１では、ユーザが文字記入枠に１文字記入を終える毎にＯＣＲ処理を行い、手書き文字のテキスト情報を生成した。しかし、ユーザが記入欄を書き終えた後に、ＯＣＲ処理をおこなうこととしてもよい。このとき、一つの文字記入枠内に書かれた文字を一文字としてＯＣＲ処理を行う。また、プロジェクタ１０８を用いてＯＣＲ処理の開始を指示するためのボタンを机上に投影し、ユーザがそのボタンをタッチすることに応じてＯＣＲ処理を開始することとしてもよい。
【００５８】
実施例１では、撮像領域内に置かれた申込用紙の撮像画像と予めＨＤＤ１０７に記憶された申込用紙のテンプレート画像とを比較し、撮像領域内に置かれた申込用紙の種類を特定していた。しかし、撮像領域内に置かれた申込用紙の種類を特定しないこととしてもよい。たとえば、撮像領域内に置かれた記入欄の印刷された用紙について、ユーザが記入欄をタッチするとタッチされた位置にある記入欄を検出して、記入欄の中に文字記入枠を表示することとしてもよい。このようにすることで、予め申込用紙のテンプレートをＨＤＤ１０７に記憶しなくても記入欄に文字記入枠を表示することが可能である。
【００５９】
（実施例２）
実施例１では、机上に置かれた申込用紙の記入欄をユーザがタッチすると、その記入欄の内側に所定の大きさの文字記入枠が表示される場合について説明した。しかし、記入欄の印刷されていない用紙に手書きし、手書きした文字についてＯＣＲ処理を行い電子データの作成を行いたい場合がある。実施例２では白紙が置かれた場合を例にとり、ユーザによるジェスチャー操作に従って文字記入枠を表示し、表示した文字記入枠の位置と大きさを変更する処理を説明する。
【００６０】
図６は実施例２において撮像される用紙を真上から見た図を時間経過順に並べたものである。
【００６１】
図６（ａ）は、ユーザが白紙の上でドラッグ操作を行ったことを示している。ドラッグ操作とは、ユーザが用紙に指を置き、指を用紙の紙面上で動かした後に指を離す操作を示している。ユーザが用紙に指を置いた点をドラッグ開始点とし、ユーザが用紙から指を離した点をドラッグ終点とする。
【００６２】
図６（ｂ）は、画像処理装置１００がドラッグ開始点とドラッグ終点を対角とする矩形を文字列記入領域とし、文字列記入領域内に５つの文字記入枠と、用紙の右下隅に「ＯＣＲ実行」ボタンをプロジェクタで表示していることを示している。
【００６３】
図６（ｃ）は、ユーザが２つの文字記入枠のある位置を順番にタッチし、タッチした二つの文字記入枠が選択状態にあることを示している。ユーザはまず第１のタッチの位置をタッチし、その後第２のタッチの位置をタッチした。この時、画像処理装置１００が、ユーザがタッチした位置にある文字記入枠をユーザが選択した文字記入枠であるとし、強調表示を行う。強調表示とは、例えば、文字記入枠を太線としたり、文字記入枠の輝度を選択されていない状態と比較して明るくしたり、文字記入枠の色を変化させたりすることで、選択されている文字記入枠を強調する表示である。
【００６４】
図６（ｄ）は、ユーザが２つの文字記入枠をタッチして選択状態にしたのちに、ドラッグ操作を行った場合を示している。画像処理装置１００は、ユーザのドラッグ操作に合わせて選択状態にある２つの文字記入枠を移動する。
【００６５】
図６（ｅ）は、ユーザがピンチイン操作を行ったときの状態を示している。ピンチイン操作とは、ユーザが二つの指で用紙をつまむように動かす動作である。ユーザがピンチイン操作を行ったことに従って、画像処理装置１００が、プロジェクタ１０８が表示している全ての文字記入枠の大きさを縮小する。このとき、文字記入枠が所定の大きさよりも小さくならないように制御しながら、ＣＰＵ１０１が縮小処理を行う。所定の大きさとは撮像センサ１０９の撮像した画像データをもとにＯＣＲ処理を行った場合の精度が所定以上となる文字記入枠の大きさである。撮像センサの撮像できる解像度と、撮像センサから机上までの距離と、ＯＣＲ処理に必要な画素数等からＯＣＲ処理の認識精度が所定以上となるか否かが決定される。
【００６６】
図６（ｆ）は、ユーザがピンチイン操作を続け、文字記入枠の大きさが上記の所定の大きさに達した際に、画像処理装置１００がそれ以上文字記入枠の大きさを小さくすることが出来ない旨をユーザに提示していることを示している。
【００６７】
図６（ｇ）は、各文字記入枠内に一文字ずつペン等でユーザが記入したことを示している。
【００６８】
図６（ｈ）は、ユーザが「ＯＣＲ実行」ボタンをタッチした後を示している。画像処理装置１００は、「ＯＣＲ実行」ボタンがタッチされたことに従い、文字記入枠毎に文字記入枠内にユーザが記載した文字を一文字としてＯＣＲ処理を行う。画像処理装置１００は認識結果のテキスト情報をプロジェクタ１０８で表示する。
【００６９】
実施例２では、ユーザが「ＯＣＲ実行」ボタンをタッチしたことに従って、ＯＣＲ処理を開始する場合について説明した。しかし、ＯＣＲ処理を開始するタイミングは、上記のタイミングに限らない。例えば、実施例１のように、ユーザが一文字書き終える毎にユーザが書き終えた文字をＯＣＲ処理することとしてもよい。また、ユーザが文字列記入領域に文字を記入し終えた後、所定時間が経過したら自動でＯＣＲ処理を開始することとしてもよい。
【００７０】
図７は実施例２においてＣＰＵ１０１が実施する処理フローの一例を示す図である。これらの処理を実行するためのプログラムはＨＤＤ１０７内に記憶されている。
【００７１】
ＨＤＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することにより、図７に示す処理が実現する。
【００７２】
Ｓ５０１からＳ５０３に示す処理は、実施例１と同様の処理であるため説明を省略する。
【００７３】
ＣＰＵ１０１は、撮像センサ１０９の撮像領域に文字記入枠が表示されているか否かを判断する（Ｓ７０４）。撮像領域内に文字記入枠が表示されていない状態とは、図６（ａ）に示す状態であり、撮像領域内に文字記入枠が表示されている状態とは、図６（ｂ）に示す状態である。
【００７４】
撮像領域内に文字記入枠が表示されていない場合、ＣＰＵ１０１は、ドラッグ操作が検出されたか否かを判定する（Ｓ７０５）。ユーザによるドラッグ操作が検出されなかった場合、ＣＰＵ１０１は処理をＳ５０１に戻し、撮像センサ１０９による撮像を行う。
【００７５】
Ｓ７０５において、ユーザがドラッグ操作を行ったと判定した場合、ＣＰＵ１０１はユーザがドラッグ操作で指定した領域を文字列記入領域としてメインメモリ１０４に記憶する（Ｓ７０６）。ドラッグ操作で指定した領域とは、ドラッグ開始点とドラッグ終点を対角とする長方形の領域である。ＣＰＵ１０１はドラッグ操作の開始点の座標と終点の座標をメインメモリ１０４に記憶する。文字列記入領域を記憶する方法は上記の方法に限らず、文字列記入領域の４角のうち一つの角の座標と領域の大きさを記憶してもよいし、四つの角の座標全てを記憶してもよい。
【００７６】
ＣＰＵ１０１は、メインメモリ１０４に記憶された文字列記入領域を所定の大きさの文字記入枠で分割し、各文字記入枠の位置と大きさを、メインメモリ１０４に記憶する（Ｓ７０７）。文字記入枠の位置と大きさは実施例１と同様に枠ＩＤと座標を紐づけたテーブルとしてメインメモリ１０４に記憶する。
【００７７】
ＣＰＵ１０１は、Ｓ７０７で記憶した文字記入枠の位置と大きさに従って、各文字記入枠をプロジェクタで用紙上に表示する（Ｓ７０８）。
【００７８】
その後、ＣＰＵ１０１は「ＯＣＲ実行」ボタンを、プロジェクタで用紙上に表示し、Ｓ５０１へ戻り、撮像センサ１０９による撮像を行う。ＣＰＵ１０１がＳ７０５からＳ７０９に示す処理を実行することにより、図６の（ｂ）に示す表示が行われる。
【００７９】
Ｓ７０４において、すでに文字記入枠が用紙上に表示されていた場合、ＣＰＵ１０１はＳ５０３で取得した撮像画像の差分に基づいて、どのような操作が行われたかを判定する（Ｓ７１０）。
【００８０】
ユーザがタッチ操作を行ったと判定された場合、ＣＰＵ１０１はタッチされた位置が「ＯＣＲ実行」ボタンの表示されている位置であるかを判定する（Ｓ７１１）。ユーザがタッチした位置が「ＯＣＲ実行」ボタンの表示されている位置でない場合、ＣＰＵ１０１はユーザのタッチした位置に文字記入枠が表示されていればその文字記入枠を選択状態として、ハイライト表示する（Ｓ７１５）。ＣＰＵ１０１がＳ７１５を実行することにより、図６（ｃ）に示すようにユーザの選択した文字記入枠をハイライト表示することができる。このとき、ユーザのタッチした位置に文字記入枠が表示されていなければ、ＣＰＵ１０１は文字記入枠の選択を行わない。そして、その後Ｓ５０１に戻り、ＣＰＵ１０１は撮像センサ１０９で撮像を行う。
【００８１】
ユーザがタッチした位置が「ＯＣＲ実行」ボタンの表示位置である場合、ＣＰＵ１０１は画像データとメインメモリ１０４に記憶している文字記入枠の位置と大きさの情報から各文字記入枠内の画像データを抽出する（Ｓ７１２）。
【００８２】
ＣＰＵ１０１は抽出した画像データをもとに、１つの文字記入枠内に書かれた文字を一文字としてＯＣＲ処理を行い、テキスト情報を生成する（Ｓ７１３）。各文字記入枠内に書かれた文字を一文字としてＯＣＲ処理を行うことで、ユーザの手書きした文字をユーザの意図した通りに一文字ずつに区切りＯＣＲ処理を行うことができる。
【００８３】
ＯＣＲ処理が終わった後、ＣＰＵ１０１はＯＣＲ処理で得られたテキスト情報をプロジェクタ１０８で表示する（Ｓ７１４）。その後、Ｓ５０１に戻り、ＣＰＵ１０１は撮像センサ１０９による撮像を行う。
【００８４】
ＣＰＵ１０１がＳ７１１からＳ７１４の処理を行うことで、図６の（ｈ）に示すようにユーザが手書きした文字列のＯＣＲ処理結果が表示される。
【００８５】
Ｓ７１０において、ユーザがドラッグ操作を行ったと判定された場合、ＣＰＵ１０１は選択状態にある文字記入枠があるか否かを判定する（Ｓ７１６）。選択状態にある文字記入枠が無い場合、ＣＰＵ１０１は処理をＳ５０１に進めて、撮像センサ１０９による撮像を行う。本実施例では、すでに文字記入枠が表示された状態で用紙上の文字記入枠以外の部分をドラッグ操作しても用紙上の表示に変化は現れないものとした。しかし、文字記入枠以外の領域をドラッグすることで、新たな文字記入枠が表示されることとしてもよい。
【００８６】
選択中の文字記入枠がある場合、ＣＰＵ１０１は選択状態にある文字記入枠をユーザのドラッグ操作に合わせて移動する（Ｓ７１７）。その後、ＣＰＵ１０１は処理をＳ５０１に戻し、撮像センサ１０９による撮像を行う。ＣＰＵ１０１がＳ７１６およびＳ７１７の処理を行うことで図６（ｄ）に示すように選択状態にある文字記入枠の位置を移動させることができる。
【００８７】
Ｓ７１０において、ユーザが用紙上でピンチ操作を行ったと判定された場合、ＣＰＵ１０１はピンチ操作の種類を判定する（Ｓ７１８）。ピンチ操作には二つの種類があり、ピンチインは二本の指で用紙をつまむように操作することで文字記入枠を縮小して表示するための操作である。ピンチアウトは二本指で用紙を広げるように操作することで、文字記入枠を拡大して表示するための操作である。
【００８８】
ユーザの行った操作がピンチインであった場合、ＣＰＵ１０１は各文字記入枠が所定の大きさよりも大きいかを判定する。所定の大きさとは、ＣＰＵ１０１が一定以上の精度でＯＣＲ処理を行うために必要な文字の大きさを示している。
【００８９】
文字記入枠が所定の大きさより大きい場合、ＣＰＵ１０１は文字記入枠をピンチイン操作にあわせて縮小する（Ｓ７２０）。その後、ＣＰＵ１０１は処理をＳ５０１に戻し、撮像センサ１０９で撮像を行う。
【００９０】
文字記入枠の大きさが所定の大きさよりも小さいとき、ＣＰＵ１０１はプロジェクタ１０８でこれ以上縮小することができない旨を表示する（Ｓ７２１）。その後、ＣＰＵ１０１は処理をＳ５０１に戻し、撮像センサ１０９による撮像を行う。ＣＰＵ１０１がＳ７１８からＳ７２１までの処理を行うことで、図６（ｅ）および図６（ｆ）に示す動作を実行することができる。
【００９１】
Ｓ７１８において、ユーザの行った操作がピンチアウトであった場合、ＣＰＵ１０１はユーザのピンチアウト操作に合わせて文字記入枠の拡大を行う（Ｓ７２２）。文字記入枠の拡大を行った後、ＣＰＵ１０１は処理をＳ５０１に戻して、撮像センサ１０９による撮像を行う。実施例２では、文字記入枠の拡大上限をもうけていない場合について説明した。しかし、文字記入枠の大きさに上限を設けて、ユーザが所定の大きさ以上に文字記入枠を拡大しようとした場合にこれ以上拡大できない旨の通知を行うこととしてもよい。
【００９２】
実施例２では、Ｓ７０７において各文字記入枠の位置と大きさをメインメモリ１０４に記憶し、その情報をＣＰＵ１０１が読み出すことで各文字記入枠の位置と大きさを把握している。各文字記入枠の大きさと位置を把握する方法は上記の方法に限らない。例えば、Ｓ７１２において撮像センサ１０９が撮像して得られた画像データを基に、プロジェクタ１０８で表示した文字記入枠の位置と大きさを判定することとしてもよい。
【００９３】
また、実施例２では、ＯＣＲ処理を行うときに、プロジェクタ１０８による文字記入枠の表示を行ったまま撮像センサ１０９による撮像を行った。しかし、撮像センサ１０９による撮像を行う前に、プロジェクタ１０８の表示する文字記入枠の色を透明にする処理を行うこととしてもよい。撮像を行う前にプロジェクタ１０８の表示する文字記入枠の色を透明にすることで、ユーザの手書きした文字が文字記入枠と重なってしまった場合も、ユーザが手書きした文字を精度よくＯＣＲ処理することが可能となる。
【００９４】
本実施例では１つの撮像センサで撮像した画像データを解析することで、人のジェスチャー操作を認識しているが、その他の実現形態であっても良い。例えば、画像処理装置１００に接続された不図示のマウスなどの入力装置で操作できるようにしても良い。実施例２ではタッチ操作やピンチ操作等のジェスチャー操作、入力装置を用いた操作を検出するための操作検出処理を行い、検出した操作に従って、文字記入枠の大きさを変える処理や一を変更する処理を行うことができる。
【００９５】
また、１つの撮像センサでなく、物体を認識するために距離画像を取得するための赤外線センサとＲＧＢ映像を取得するためのＲＧＢセンサといったように複数のセンサが別々に設けられているとしてもよい。
【００９６】
実施例２では、移動させたい文字記入枠をユーザが一度タッチして選択した後、用紙内でドラッグ操作を行うことで文字記入枠を移動することとして説明した。しかし、ユーザがドラッグ操作をしたときに、ドラッグ開始点にある文字記入枠をドラッグ終点まで移動することとしてもよい。
【００９７】
実施例２のような処理をＣＰＵ１０１が実行することにより、予め記入欄の印刷されていない用紙を用いても、ユーザの意図した位置で文字を区切りＯＣＲ処理を行うことが可能となる。
【００９８】
（実施例３）
実施例１、実施例２では、ユーザが文字を記入している途中で文字記入枠が足りなくなってしまうことに気がついた場合に文字記入枠を追加することができない。そこで実施例３では、ユーザの記入状況に応じて追加の文字記入枠が不足しそうな場合に文字記入枠を追加する場合について説明する。
【００９９】
図８は本実施例の動作概要を示す図である。（ａ―１）および（ａ―２）はユーザが記入を行っているときに、ユーザが記入を行っている列の下に追加の文字記入枠を表示する場合の図である。（ａ―１）ではユーザが現在記入している文字記入枠の右に枠が一つしかなく、まもなくユーザが文字記入枠を使い切ってしまう状態を示している。そこで、画像処理装置１００は現在ユーザが文字を記入している文字記入枠のある列の下に新たな文字記入枠を表示している。
【０１００】
図８（ｂ−１）および（ｂ−２）は、現在ユーザが記入をしている文字記入枠を囲むようにして追加の文字記入枠が表示される場合を示している。例えば、（ｂ−１）では、「田」の文字をユーザが記入している文字記入枠に対して点線で囲まれている１０個の文字記入枠が新たに表示される。ユーザが文字の記入を進めて、（ｂ−２）の状態になると、現在ユーザが記入を行っている文字記入枠の上下および左側はすでに文字記入枠があるため追加の表示はなされず、右側のみ６個の文字記入枠が追加される。
【０１０１】
図８（ｃ−１）および（ｃ−２）はユーザが誤記をしてしまった場合に新たに文字を記入するための文字記入枠が表示される場合を示している。図８（ｃ−１）は、ユーザが文字記入枠に「田」と記入するつもりが、間違って「太」と記入した状況を示している。そこで、ユーザは「太」に取り消し線を記入する。すると、画像処理装置１００が、取り消し線を検出して「太」を記入した文字記入枠の近傍に追加の文字記入枠を表示する。これにより、ユーザが文字を書き間違えた際に、当初用意された文字記入枠の数を気にすることなく訂正を行うことが可能になる。
【０１０２】
図９は実施例３の処理を行うためのフローチャートの一例である。図９に示す処理を実行するためのプログラムはＨＤＤ１０７に記憶されており、ＣＰＵ１０１がプログラムを実行することにより処理が実現する。
【０１０３】
Ｓ５０１からＳ５０３に示す処理は実施例１および２と同様であるため、説明を省略する。
【０１０４】
ＣＰＵ１０１は文字記入枠内で撮像画像に差分があるかを判定する（Ｓ９０４）。
【０１０５】
各文字記入枠内で撮像画像に差分が生じた場合、ＣＰＵ１０１は文字記入枠追加処理を行う。文字記入枠追加処理については、図１０を用いて詳細を説明する。ＣＰＵ１０１が文字枠追加処理を行った後に、ＣＰＵ１０１は処理をＳ５０１に戻し、撮像センサ１０９を用いた撮像を行う。
【０１０６】
各文字記入枠内で撮像画像に画像差分が無い場合ＣＰＵ１０１は処理をＳ５０１に戻し、撮像センサ１０９を用いて撮像を行う。
【０１０７】
図１０は実施例３の文字記入枠追加処理を示した図である。
【０１０８】
図１０（ａ）は図８（ａ−１）（ａ−２）に対応した文字記入枠の追加処理である。
【０１０９】
ＣＰＵ１０１は未記入の文字記入枠が所定数未満かどうかを判定する（Ｓ１０ａ−０１）。未記入の文字記入枠の数が所定数以上であれば文字記入枠の追加処理を行うことなく、ＣＰＵ１０１は文字記入枠追加処理を終了する。
【０１１０】
未記入の文字記入枠が所定数未満の場合、ＣＰＵ１０１はプロジェクタ１０８ですでに表示されている文字記入枠の近傍に新たな文字記入枠を表示する（Ｓ１０ａ−０２）。その後、ＣＰＵ１０１は文字記入枠追加処理を終了する。
【０１１１】
図１０の（ｂ）の動作概要は図８の（ｂ−１）、（ｂ−２）に対応した文字記入枠追加処理である。
【０１１２】
ＣＰＵ１０１はユーザが記入をしている途中の文字記入枠の周辺に文字記入枠を表示する（Ｓ１０ｂ−０１）。その後ＣＰＵ１０１は文字記入枠追加処理を終了する。
【０１１３】
図１０の（ｃ）の動作概要は図８の（ｃ−１）、（ｃ−２）に示すものである。
【０１１４】
図１０の（ｃ）のＳ１０ｃ−０１からＳ１０ｃ−０２は画像処理装置１００が実施する処理ステップである。
【０１１５】
ＣＰＵ１０１は、記入が完了した文字記入枠内に所定のマークが記入されたかどうかを判断する（Ｓ１０ｃ−０１）。所定のマークとは、例えば図８（ｃ−２）に示すバツ印等の取り消し線である。所定のマークは予めＨＤＤ１０７に記憶されており、出荷時に予め決められているマークでも、ユーザが任意に変更することができるマークでもよい。文字記入枠内に所定のマークが記入された場合、ＣＰＵ１０１が、記入が完了した文字記入枠近傍に、追加の文字記入枠をプロジェクタで表示する（Ｓ１０ｃ−０２）。文字記入枠内に所定のマークが記入されていない場合、ＣＰＵ１０１は文字記入枠追加処理を終了する。
【０１１６】
実施例３において、ユーザが文字記入枠内に記入した文字をＯＣＲ処理する場合には、撮像センサ１０９が撮像した画像データから、ひとつの文字記入枠内に記入された文字を一文字としてＯＣＲ処理を行う。ＣＰＵ１０１はユーザが全ての文字の記入を終えた後にＯＣＲ処理を開始することとしてもよいし、ユーザが一つの文字記入枠の記入を終える毎に記入を終えた文字記入枠についてＯＣＲ処理を行うこととしてもよい。また、ＯＣＲ処理を開始する前に、ＣＰＵ１０１はＯＣＲ処理を行う文字記入枠について文字記入枠の色を透明にする処理を行う。
【０１１７】
また、新たな文字記入枠を表示する際に、新たな文字記入枠を表示する位置および大きさをメインメモリ１０４に記憶し、記憶された文字記入枠の位置および大きさを基に、一つの文字記入枠内に記入された文字を一文字としてＯＣＲ処理を行う。
【０１１８】
実施例３のように、ユーザの文字記入枠への記入の状況に応じて、新しい文字記入枠を表示することで、ユーザは表示されている文字記入枠の数を気にすることなく記入を行うことができる。
【０１１９】
（実施例４）
実施例１から実施例３ではユーザが記入欄をタッチしたり、白紙の用紙にドラッグすることでユーザがこれから文字を記入する場所を指定し、プロジェクタ１０８による文字記入枠の表示を開始させていた。しかし、ユーザがこれから記入を始める記入欄を指定することなく文字の記入をはじめる場合がある。そこで実施例４では、撮像領域内に置かれた記入用紙について、撮像した画像データから記入欄を検出し、検出した記入欄全てについて文字記入枠を表示する場合について説明する。
【０１２０】
図１３に実施例４における撮像センサ１０９で撮像する用紙を真上から見た図について時系列で並べたものを示す。
【０１２１】
図１３（ａ）は記入用紙を撮像領域内においた状態を表している。画像処理装置１００は記入用紙を撮像し、得られた画像データから記入欄４０１および文字列記入領域４０３を検出する。図１３（ａ）であれば、記入欄４０１として「名前」欄および「生年月日」欄を検出する。そして、「名前」欄の「名前：」と書かれた領域を除く領域を文字列記入領域４０３とし、「生年月日」欄の「生年月日：」と書かれた領域を除く領域を文字列記入領域４０３とする。「撮影」ボタン１３０１はユーザがＯＣＲ処理の開始を指示するためのボタンである。このボタンは実施例２の「ＯＣＲ実行」ボタンと同様の役割である。
【０１２２】
図１３（ｂ）は記入用紙の文字列記入領域に文字記入枠をプロジェクタ１０８が表示した状態である。文字記入枠の大きさは予め決められた大きさであってもよいし、文字列記入領域４０３の大きさから算出される大きさであってもよい。
【０１２３】
図１３（ｃ）はユーザがペン等で文字記入枠に文字を記入した状態である。
【０１２４】
図１３（ｄ）はユーザがペン等で文字記入枠に文字を記入した後、「撮影」ボタン１３０１をタッチして、画像処理装置１００がＯＣＲ処理を行った後の状態である。画像処理装置１００は各文字記入枠内に書かれた文字を一文字として文字の認識を行い、ＯＣＲ処理によって得られたテキストデータを文字の記入された文字記入枠近傍に表示をする。本実施例では、ユーザが「撮影」ボタン１３０１をタッチした後にＯＣＲ処理をおこなうこととして説明するが、ＯＣＲ処理を開始するタイミングは上記のタイミングに限らない。例えば、ユーザが記入を終えた文字記入枠について逐次ＯＣＲ処理を行ったり、ユーザが一列分の文字記入枠を完了したら、文字記入の完了した列についてＯＣＲ処理を開始するとしてもよい。また、ＯＣＲ処理を行った後、ＯＣＲ処理によって得られたテキスト情報を文字記入枠近傍に表示するとしたが、テキスト情報を表示しないまたは、ＰＣのモニタ等外部の表示部にテキスト情報を表示することとしてもよい。
【０１２５】
図１１に実施例４に示す画像処理装置１００が行う文字記入枠を表示するための処理の流れを示す。
【０１２６】
図１１に示す処理はＨＤＤ１０７に記憶されており、ＣＰＵ１０１がこの処理を実行する。
【０１２７】
このフローチャートに書かれた処理はユーザが申込用紙を撮像領域内に置いたことにより開始する。例えば、ユーザが記入用紙を撮像領域内に置き、画像処理装置１００が撮像領域内に置かれた記入用紙を検出することで開始することとする。画像処理装置１００は実施例１と同様に撮像領域内で厚みのない四角形の物体が静止したら記入用紙が撮像領域内に置かれたと判断する。
【０１２８】
ＣＰＵ１０１は撮像センサ１０９をもちいて撮像し、ＲＧＢＩｒ画像データを取得する（Ｓ１１０１）。
【０１２９】
ＣＰＵ１０１は、得られた画像データを基にＦＯＴ法を用いて、三次元座標情報を生成する（Ｓ１１０２）。
【０１３０】
ＣＰＵ１０１は、撮像したＲＧＢＩｒ画像データおよび三次元座標情報より、申込用紙内のユーザが記入する記入欄の位置と大きさを検出する（Ｓ１１０３）。例えば、画像データ内の所定大きさ以上記入用紙の大きさ未満の矩形を記入欄と認識し、４つの角の座標を取得することで記入欄の位置と大きさを検出する。ＣＰＵ１０１は検出した記入欄の位置座標および大きさの情報をメインメモリ１０４に記憶する。
【０１３１】
ＣＰＵ１０１は、検出した各記入欄内について文字列記入領域を算出する（Ｓ１１０４）。文字列記入領域とは、記入欄内のユーザが文字を記入することのできる領域である。例えば、図１３（ａ）では名前の記入欄から「名前：」と印刷された領域を除いた領域が文字列記入領域となる。
【０１３２】
ＣＰＵ１０１は、文字列記入領域を予め決められた大きさの文字記入枠で分割し、各文字記入枠の位置と大きさをメインメモリ１０４に記憶する（Ｓ１１０５）。予め決められた大きさはＨＤＤ１０７に記憶されており、ＣＰＵ１０１がその値を読み出して利用する。
【０１３３】
ＣＰＵ１０１は、メインメモリ１０４に記憶された文字記入枠の位置と大きさに基づいてプロジェクタ１０８を用いて申込用紙上に文字記入枠４０２を表示する（Ｓ１１０６）。
【０１３４】
上記の処理を行うことで、手書きの申込用紙上に文字を一文字ずつ記入するための文字記入枠を重畳して表示することができる。
【０１３５】
図１２に実施例４に示す画像処理装置１００が行う、ユーザが手書きした文字を読み取りＯＣＲ処理するための処理の流れを示す。
【０１３６】
図１２に示す処理を実行するためのプログラムがＨＤＤ１０７に記憶されており、ＣＰＵ１０１がそのプログラムを実行する。
【０１３７】
本実施例ではユーザがプロジェクタの表示する「実行」ボタン１３０１をタッチすることに従って、ＣＰＵ１０１がＯＣＲ処理を開始する。
【０１３８】
まず、ＣＰＵ１０１ユーザが「実行」ボタン１３０１をタッチしたか否かを判定する（Ｓ１２０１）。「実行」ボタン１３０１は申込用紙に記入された内容を読み取る処理を開始させるためのものであればよい。例えば、プロジェクタ１０８の表示するボタンのタッチでなくても、所定のジェスチャーをユーザが行ったときにＣＰＵ１０１が撮像センサ１０９の撮像する画像データを取得し、ＯＣＲ処理が行うとしてもよい。
【０１３９】
ＣＰＵ１０１が「実行」ボタン１３０１のタッチを検出したのち、撮像センサ１０９は申込用紙を撮像し、画像データを取得する（Ｓ１２０２）。本実施例では、文字記入枠を表示したままＣＰＵ１０１が文字認識を行う場合について説明した。しかし、「実行」ボタンがタッチされた後、ＣＰＵ１０１は文字記入枠の表示を透明にした後、ＯＣＲ処理を行うこととしてもよい。
【０１４０】
取得した画像データおよび、Ｓ１１０５で記憶した文字記入枠の位置と大きさの情報を基にＣＰＵ１０１はＯＣＲ処理を行う（Ｓ１２０３）。ＣＰＵ１０１は、一つの文字記入枠内に記入された文字を一文字とし、ＯＣＲ処理を行う。一つの文字記入枠に書かれた文字を一つの文字としてＯＣＲ処理を行うことで、文字と文字の境目を明らかにすることができ、一つの文字記入欄に書かれた文字が二つ以上の文字であると認識されてしまうことを防ぐことができる。
【０１４１】
最後に、ＣＰＵ１０１はＯＣＲ処理により得られたテキスト情報を文字の記入された文字記入枠の近傍に表示する。
【０１４２】
実施例４では、ユーザが撮像領域内に記入用紙を置いたことを画像処理装置１００が検知することで文字記入枠を表示するための処理が開始された。文字記入枠を表示するための処理を開始する方法は上記の方法に限らない。たとえば、文字記入枠を表示するための処理を開始するためのボタンがプロジェクタ１０８により表示されており、ユーザがそのボタンが表示された位置をタッチすることによって、文字記入枠を表示するための処理を開始することとしてもよい。
【０１４３】
実施例４を実施することにより、ユーザが記入用紙を撮像領域におくだけで、用紙内の記入欄を検出するための記入欄検出処理を行い、記入欄の内の文字列記入領域に文字記入枠を表示することができる。そのため、実施例１または２のようにユーザが撮像領域に用紙を置いた後、記入欄をタッチする等所定の動作を行わなくてもペン等による文字記入を行うことができる。
【０１４４】
また、実施例４では撮像センサ１０９が撮像した画像データから記入欄を検出して文字記入枠の表示をするための処理を行う。したがって、予め記入用紙のテンプレート画像を画像処理装置１００のＨＤＤ１０７に記憶する必要がなく、ユーザの利用したい任意の用紙に文字記入枠を表示することができる。
【０１４５】
実施例４より、撮像領域内に置かれた用紙にプロジェクタ等の投影装置でユーザが一文字を記入するための文字記入枠を投影し、一つの文字記入枠内に書かれた文字を一文字としてＯＣＲ処理等の文字認識処理を行う。これにより、ユーザが一文字として記入した文字を画像処理装置１００が二文字以上に分けて文字認識することを防ぐことができる。また、文字認識専用の用紙を用いることなく、ユーザの意図した位置で文字と文字を区切り、文字認識処理を行うことができる。
【０１４６】
（その他の実施例）
実施例１から４では、プロジェクタ１０８および撮像センサ１０９の両方を備えた画像処理装置１００が撮像領域内の画像データの取得および、撮像領域内への投影の両方を行っている。しかし、プロジェクタ１０８と撮像センサ１０９が異なる装置であって、この両方の装置を含む画像処理システムであってもよい。
【０１４７】
実施例１から４では、一つの撮像センサが画像差分を検出するための画像データの取得および、ＯＣＲ処理を行うための画像データの取得の両方を行っている。ＯＣＲ処理の精度を上げるためには、ユーザの記入した文字をよりはっきりと撮像することが必要となるため、撮像センサの解像度をできるだけ高くした。一方、画像差分を抽出するための撮像センサは撮像領域内の物体の動きや変化をとらえることができればよいのでＯＣＲ処理を行うための画像を撮像する撮像センサほど高解像度のものは必要としていない。そこで、画像差分を抽出するための画像を撮像する撮像センサとＯＣＲ処理を行うための撮像画像を撮像するための撮像センサを別々にしてもよい。このよき、ＯＣＲ処理を行うための画像を撮像する撮像センサは画像差分を検出するためのセンサよりも高解像度である。
【０１４８】
実施例１から実施例４では、ＣＰＵ１０１がＯＣＲ処理を開始する前に、ＯＣＲ処理を行う文字記入枠について文字記入枠の色を透明にする処理を行った。文字記入枠の色を透明にする処理とは、プロジェクタ１０８が文字記入枠の表示を終了するための処理と同様である。
【０１４９】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのコンピュータプログラム、及び該コンピュータプログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2017215661.tif 000004
【図２】
2017215661.tif 000005
【図３】
2017215661.tif 000006
【図４】
2017215661.tif 000007
【図５】
2017215661.tif 000008
【図６】
2017215661.tif 000009
【図７】
2017215661.tif 000010
【図８】
2017215661.tif 000011
【図９】
2017215661.tif 000012
【図１０】
2017215661.tif 000013
【図１１】
2017215661.tif 000014
【図１２】
2017215661.tif 000015
【図１３】
2017215661.tif 000016