JP2017215661A - 画像処理装置、及びその制御方法ならびにコンピュータプログラム - Google Patents
画像処理装置、及びその制御方法ならびにコンピュータプログラム Download PDFInfo
- Publication number
- JP2017215661A JP2017215661A JP2016107414A JP2016107414A JP2017215661A JP 2017215661 A JP2017215661 A JP 2017215661A JP 2016107414 A JP2016107414 A JP 2016107414A JP 2016107414 A JP2016107414 A JP 2016107414A JP 2017215661 A JP2017215661 A JP 2017215661A
- Authority
- JP
- Japan
- Prior art keywords
- character
- image processing
- user
- processing apparatus
- entry frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Character Input (AREA)
- Character Discrimination (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】 画像処理装置において、手書きの記入用紙を撮像部で撮像した画像データから文字認識を行うときに、ユーザが一文字として記入した文字を画像処理装置が二文字以上に区切って文字認識してしまうことを防ぐことを目的とする。【解決手段】 本発明は、画像処理装置であって、用紙を撮像する撮像手段と、前記用紙にユーザが文字を1文字記入するための文字記入枠を投影する投影手段、前記撮像手段により撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識手段と、を有し、前記文字認識手段は、前記投影手段により投影された1つの文字記入枠内に書かれた文字を1文字として文字認識することを特徴とする。【選択図】 図13
Description
本発明は、机上にデータを投影する投影部と、机上の対象物を撮像する撮像部とを有する画像処理装置に関する。
机の上においた申し込み用紙や履歴書等の手書きの記入用紙に、用紙の記入の方法や記入時の注意事項をプロジェクタ等の投影装置を用いて上記記入用紙上に重畳して表示する画像処理装置が提案されている。さらに、ユーザが記入をした手書きの記入用紙をカメラ等の撮像装置で撮像し、得られた画像から手書き文字を文字認識して記入された内容に誤字や脱字が無いかを判定することが考えられている(特許文献1)。
従来、手書きをする領域に最適な文字サイズや行間を示すガイドを記入用紙上に投影しユーザはそのガイドを参考にしながら用紙の記入を行っていた。記入が完了した用紙はカメラ等の撮像装置で撮像し、得られた画像データからOCR(Optical Character Recognition)処理等の文字認識処理を行うことで手書き文字を電子データへと変換することができる。このとき、画像処理装置は、文字と文字の境目を検出し、一文字と思われる塊毎に文字認識処理を行っていた。
しかし、手書きの文字は文字と文字の境が分かりにくく、一文字分の文字ガイドの中にユーザが文字を記入した場合にも一文字を正確に抽出することが難しい。例えば、手書きの記入用紙の一文字分のガイドの中に“言吾”と書かれていた場合、ユーザが“語”と記入したつもりにも関わらず“言”と“吾”の二文字として認識されてしまうことがある。上記のように、画像処理装置がユーザの意図した文字の境目と異なるところで文字を区切ってしまうと、文字認識の結果がユーザの意図した文字と異なる文字になってしまう。
このように、手書きの記入用紙を画像処理装置がカメラ等の撮像部を用いて撮像した画像データから、手書き文字の文字認識を行おうとすると、文字と文字を正確に区切って文字認識をすることができない。
本発明では、手書きの記入用紙を撮像部で撮像した画像データから文字認識を行うときに、ユーザが一文字として記入した文字を画像処理装置が二文字以上に区切って文字認識してしまうことを防ぐことを目的とする。
本発明は、画像処理装置であって、用紙を撮像する撮像手段と、前記用紙にユーザが文字を1文字記入するための文字記入枠を投影する投影手段、前記撮像手段により撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識手段と、を有し、前記文字認識手段は、前記投影手段により投影された1つの文字記入枠内に書かれた文字を1文字として文字認識することを特徴とする。
本発明によれば、手書きの記入用紙を撮像部で撮像した画像データから文字認識を行うときに、ユーザが一文字として記入した文字を画像処理装置が二文字以上に区切って文字認識してしまうことを防ぐことができる。
(実施例1)
以下、本発明を実施するための形態について図面を用いて説明する。
以下、本発明を実施するための形態について図面を用いて説明する。
図1は本実施形態の画像処理装置100の外観の一例を示す図である。
画像処理装置100は、机から垂直方向に伸びる柱状の形状をしており、プロジェクタ108と、赤外線エミッタ内蔵撮像センサ109(以下、撮像センサ109)を備えている。プロジェクタ108は投影部として機能し、机上または机上に置かれた物体や用紙の上に映像を投影する。撮像センサ109は撮像部として機能し、机上の物体や用紙の撮像を行う。図中の撮像領域(a)は、プロジェクタ108により映像を投影する領域であり、かつ、撮像センサ109により撮像を行うことのできる撮像領域である。撮像センサ109に備えられた赤外線エミッタは赤外線を机上に照射し、反射した赤外線を撮像センサ109で撮像する。その情報を基に、画像処理装置100は撮像センサ109と被写体との距離を算出する。撮像センサ109の有する撮像センサを用いて、三次元計測を行いユーザの手のジェスチャー操作を検出する。
プロジェクタ108が投影を行う領域、および、撮像センサ109が撮像を行うことのできる撮影領域(a)内であればどこに手書き記入用紙を置いてもよい。プロジェクタ108は撮像センサ109を用いて手書き記入用紙の位置を検出し、検出した手書き記入用紙に記入時の注意事項や手書き文字を記入するための枠線等を投影する。用紙(b)は撮像領域(a)内に置かれた用紙である。ユーザは用紙(b)にペン等の筆記用具で文字を記入する。記入された文字を撮像センサ109で撮像し、OCR処理等の文字認識処理を画像処理装置100が行う。
図2は本実施形態の画像処理装置100のハードウェアブロック図である。
画像処理装置100は、コントローラ120、プロジェクタ108、赤外線エミッタ内蔵撮像センサ109を有する。
内部バス111は、メモリコントローラ103、I/Oコントローラ(Input/Output コントローラ)105間で情報の伝達を行うために、電気信号の授受を行う。メモリコントローラ103は、メインメモリ104に対するメモリアクセス全般を統括する。I/Oコントローラ105は、HDD107、プロジェクタ108、赤外線エミッタ内蔵撮像センサ109と内部バス111を介して接続している処理部との間で情報の送受信を行う。グラフィックコントローラ102は、プロジェクタ108による投影を制御する。
HDD107にはブートローダプログラム及び画像処理装置制御プログラムが格納されている。メインメモリ104は高速アクセスが可能な揮発性メモリであり、HDD107に記憶されている情報や一時的に使用する情報を格納する。画像処理装置100の電源投入時には、CPU101がHDD107に格納されているブートローダプログラムを読み出して実行し、HDD107に格納されている画像処理装置制御プログラムを読み出し、メインメモリ104に格納する。そして、CPU101がメインメモリ104に格納された画像処理装置制御プログラムを実行することで、画像処理装置100の有する各機能を実現する。また、CPU101がこの画像処理装置制御プログラムを実行することで、撮像センサ109で撮像した画像を解析する、プロジェクタ108でユーザに情報を投影して示す等の、画像処理装置100の行う処理が実行される。
画像処理装置100は、撮像センサ109を備えている。撮像センサ109は撮影した撮像画像を、RGB輝度情報のデジタル信号に変換する。
また、赤外線エミッタ内蔵撮像センサ109は、赤外線の撮像素子を備えている。赤外線エミッタ内蔵撮像センサ109は、三次元計測を行うために用いられる。撮像センサ109に内蔵された赤外線エミッタから赤外線を投射し、撮像センサ109でその反射光を撮像する。赤外線エミッタが赤外線を投射した時刻と投射した赤外線の反射光の撮像時刻から撮像センサと被写体との距離を算出する。この距離算出には、TOF法(Time−of−Flight法)等公知の方法を用いる。赤外線エミッタ内蔵撮像センサ109は、I/Oコントローラ105との情報の送受信を行う。
画像処理装置100はプロジェクタ108を備えている。プロジェクタ108は手書き記入用紙の記入例や記入時の注意事項、文字記入枠等を可視光により投影する。プロジェクタ108はI/Oコントローラ105及びグラフィックコントローラ102との情報の送受信を行う。
本実施例では、金融機関や役所にて、ユーザが手書きの申込用紙に記入を行う場合を例に説明をする。申込用紙には氏名や生年月日等ユーザが記入すべき記入欄が予め印刷されている。
ユーザが手書きの記入用紙を机上に置き、記入を行う欄を指でタッチすることで記入欄を選択する。その後、画像処理装置100がプロジェクタ108で記入欄の内側に文字記入枠を表示する。ユーザが各文字記入枠に一文字ずつ文字を記入すると、画像処理装置100がひとつの文字記入枠内に書かれた文字を一文字であるとしてOCR(Optical Character Recognition)処理を行う。OCR処理とは画像データに含まれる文字をコンピュータで処理することのできるテキスト情報へ変換するための処理である。本実施例では、一つの文字記入枠内に書かれた文字を一文字とし、一つの枠内に記入された文字に対応する文字コード等のテキスト情報への変換を画像処理装置100が行う。プロジェクタ108が表示する一つの文字記入枠に記入された文字を一文字としてOCR処理を行うことで、文字記入枠が予め印刷されているOCR専用用紙を用いることなく、文字と文字をユーザが意図した通りに区切り、OCR処理を行うことができる。
図3は本実施例における申込用紙を真上から見た図を時系列に並べたものである。
図3(a)は、画像処理装置100の撮像領域上に置かれた未記入の申込用紙を真上から見た図である。申込用紙には予め「名前」と「生年月日」を記入するための記入欄が印刷されている。
図3(b)は、ユーザが「名前」欄をタッチ操作で選択したことを示している。タッチ操作とは、ユーザが撮像領域内に置かれた申込用紙に指やペン等で触れ、指やペンを左右に動かすことなく上に持ち上げる操作である。タッチ操作は、指やペンが完全に申込用紙にふれなくとも、指やペン等が申込用紙に所定の距離以上に近づいた後に指やペンが持ち上げられる操作であってもよい。図3(b)はユーザの指が申込用紙の記入欄をタッチすることで、タッチされた記入欄がユーザにより選択された状態を示している。
図3(c)は、ユーザがタッチ操作を行い選択した枠内に、文字を一文字ずつ手書きするための枠(文字記入枠)をプロジェクタ108が投影していることを示している。図3(c)では、ユーザがタッチ操作で選択した枠内の「名前」という印刷部分を避けた位置に文字記入枠が投影される。
図3(d)は、ユーザが、1つ目の文字記入枠内に「山」という漢字をペンで記入していることを示している。ユーザはプロジェクタ108で投影された文字記入枠内に一文字が収まるよう記入を行う。これにより、ユーザが手書きする文字のサイズが一定となり、手書き後の見栄えをよくすることができる。また、ユーザの手書きした文字と文字の区切りを明確にすることができる。
図3(e)は、「山」の記入が終わり、ユーザが、一つ右の文字記入枠内に「田」という漢字を記入していることを示している。このとき、画像処理装置100は撮像センサ109で撮像した画像データを基に、一つ目の文字記入枠内に書かれた手書き文字を一文字とし、OCR処理を行う。OCR処理の文字認識の結果を基に、画像処理装置100は手書き文字に対応する文字データを生成する。OCR処理により、文字認識された結果をユーザが手書きした文字の近くに表示をする。このようにすることで、画像処理装置100がユーザの意図した通りに文字認識を行っているかを確認することができる。画像処理装置100が認識した文字がユーザの意図した文字と異なっていた場合、文字の修正を行うための方法については実施例3にて後述する。OCR処理は公知の方法を用いることとする。文字記入枠内に記入された文字を一文字として、OCR処理を行うことで、文字と文字の境目を明らかにし、文字認識処理を行うことができる。また、図3(e)では、OCR処理をおこなうときに画像処理装置100が、1つ目の文字記入枠の表示がされていた位置への文字記入枠の表示を消している。
図3(f)は、ユーザがが、「田」の記入が終わり、3つ目の文字記入枠には何も書かずに4つ目の文字記入枠内に「太」という漢字を記入していることを示している。この時、画像処理装置100は、ユーザが記入を行わなかった3文字目の文字記入枠の表示を消す。
図4に実施例1における文字記入枠の形状の例を示す。図4(a)は、各文字記入枠の外枠をハイライト表示するものである。記入欄401は申込用紙に設けられた所定の項目を記入するための欄である。文字記入枠402はプロジェクタ108により投影されており、ユーザが一文字分の文字を手書きで記入するための枠である。文字列記入領域403はユーザが文字列を記入することが可能な領域である。文字列記入領域403は記入欄401から記入欄401内に予め印字されている文字のある領域を除いた領域である。文字列記入領域403内に文字記入枠402を表示することで、記入欄401内のすでに印字のなされている部分にユーザが文字を記入することを防いでいる。
図4(b)は、各文字記入枠の記入領域全体をハイライト表示するものである。図4(c)は、各文字記入枠の区切り線のみをハイライト表示するものである。
図5は本実施例においてCPU101が実行する処理を示すフローチャートである。図5に示す処理を行うためのプログラムはHDD107に記憶されている。画像処理装置100は電源がONになったのち図5に示す処理を開始する。
画像処理装置100が、撮像センサ109に備えられた赤外線エミッタを用いて机上の撮像領域に赤外光を投射し、撮像を行う(S501)。このとき、撮像センサ109はRGBチャネルの画像データおよび、赤外光のIrチャネルの画像データを取得する。RGBチャネルの画像データおよび、Irチャネルの画像データを合わせてRGBIr画像データと記載する。
CPU101は、S501で得られた画像データを基に、撮像領域の三次元座標情報を生成する(S502)。CPU101はTOF法等公知の技術を用いて、画像データから三次元の座標情報データを生成する。RGBIr画像データおよび三次元座標情報より、撮像領域内の物体の位置やその高さを検出することができる。
CPU101は、今回取得したRGBIr画像データ及び三次元座標情報と、直前に取得したRGBIr画像データ及び三次元座標情報とを比較してその差分を抽出する(S503)。ここで抽出される差分を以降、画像差分と記載する。S503では、時間経過に伴い撮像領域内の状況が変化したか否かを判定する。画像差分が無かった場合、不図示であるが、CPU101は処理をS501に戻し、CPU101は撮像センサ109による撮像を行う。
CPU101は、S503で抽出した画像データの差分に基づいて、どのような操作が行われたかを判定する(S504)。図5に示すフローチャートでは、上記の判定結果が、用紙が撮像領域内で停止した、ユーザが用紙をタッチした、文字記入枠内で操作が行われた、のいずれかの場合を示している。CPU101は上記以外の操作による画像差分を判定することが可能である。例えば、撮像領域内で物体が止まった、ユーザによりドラッグ操作やピンチ操作が行われたことを画像処理装置100は判定することができる。
撮像領域内で厚みのない四角形の物体が静止した場合、CPU101は申込用紙が机の上に置かれたと判定する。このとき、CPU101は撮像センサ109が撮影した画像データから画像特徴を算出し、HDD107に記憶されたテンプレートから撮像している申込用紙の種類を特定する(S505)。HDD107には、各申込用紙のテンプレートの画像データとユーザによる記入の必要な欄の位置情報が紐づけされて記憶されている。CPU101は例えばAKAZE(Accelerated KAZE)特徴のような公知の技術を用いて画像特徴を算出する。CPU101が算出した画像特徴量とHDD107に予め記憶された申込用紙のテンプレート画像とを比較し、現在、撮像センサ109が撮像している申込用紙がいずれの申込用紙であるかを判定する。
CPU101は、テンプレートに紐づけられてHDD107に記憶された記入欄の位置情報を読み出す(S506)。その後、S501に戻り、再び、撮像領域内の画像データを撮像する。S506においてCPU101はRGBIr画像および三次元座標情報より読みだしたテンプレートに含まれる記入欄に対応する座標を算出し、メインメモリ104に記憶する。
S504において、申込用紙をユーザがタッチしたと判断された場合、CPU101はユーザが申込用紙のどこをタッチしたかを算出し、ユーザがタッチした位置に対応する記入欄を選択状態にする(S507)。たとえば、ユーザがタッチをした位置とS506においてCPU101が算出した記入欄の位置を比較することで、ユーザがタッチした記入欄を特定する。ユーザのタッチした位置の近傍に記入欄が無い場合、CPU101は記入欄の特定を行わないこととする。また、ユーザが申込用紙上のいずれかの記入欄を選択していた場合、記入欄のない位置をユーザがタッチすることで、選択されていた記入欄の選択状態を解除することとしてもよい。
CPU101は、タッチされた記入欄内の画像データを抽出し、画像特徴から画像特徴が存在しない領域を文字列記入領域として選定する(S508)。CPU101はS507で選択状態となった枠の画像データを取得する。CPU101は取得した画像データの画像特徴を算出し、文字や線等による画像特徴のない領域を文字列記入領域とする。例えば、図3に示す原稿の場合、図3(b)でユーザにより選択された「名前」欄には項目名である「名前:」が印刷されている。このように予め印刷された文字のある領域を記入欄から除き、文字列記入領域を選定する。また、記入欄内に予め印刷された文字がなければ、記入欄をそのまま文字列記入領域とする。
CPU101は、文字列記入領域の位置および大きさから、予め決められた大きさの文字記入枠を表示する位置を決定し、文字記入枠を表示する位置および枠の大きさをメインメモリ104に記憶する(S509)。文字記入枠の領域情報は下記に示すテーブルで管理され、下記に示すテーブルはメインメモリ104に記憶される。枠IDは文字列記入領域内の何番目の文字記入枠であるかを示す番号であり、座標は文字記入枠の4つの角のうち対角の二角の座標を表している。座標は文字記入枠の位置および大きさがわかればよい。本実施例では、文字列記入領域の左下の角を原点とし、文字記入枠の対角の二つの点の座標が記憶されている場合について示している。しかし、この方法以外でも、例えば、4つの角全ての点の座標を記憶しておいてもよいし、文字記入枠の中央の点の座標と文字記入枠の大きさを記憶しておいてもよい。また、座標の原点は上記の位置に限らない。例えば、撮像領域内の四隅のいずれかの点でもよいし、記入欄の四隅のいずれかの点で合っても構わない。
また、実施例1では予め決められたサイズの文字記入枠が文字列記入領域に表示される。しかし、文字記入枠のサイズは予め決められたサイズの枠でなくてもよく、CPU101が検出した文字列記入領域の大きさに合わせて文字記入枠の大きさを決定することとしてもよい。例えば、記入欄や文字列記入領域の高さをもとに文字記入枠の大きさを決定することとしてもよい。このようにすることで、記入欄や文字列記入領域が大きいときには一文字当たりが大きい文字記入枠を表示し、記入欄や文字列記入領域が小さいときには位置文字あたりが小さい文字記入枠を表示することができる。さらに、一度決定された文字記入枠の大きさをユーザがピンチ操作を行うことで後から変更することができるとしてもよい。
CPU101は、メインメモリ104に記憶された各文字記入枠の位置および大きさの情報に従い、文字記入枠をプロジェクタ108で投影する(S510)。CPU101がS510の処理を実行することで、図3(c)に示すような文字記入枠が申込用紙に重畳して表示される。
S504において文字記入枠内で操作が行われたと判定された場合、CPU101は以下の処理を行う。
CPU101は今回、画像差分が抽出された文字記入枠と直前に画像差分が抽出された文字記入枠が同じか否かを判定する(S511)。
今回、画像差分が抽出された文字記入枠と、直前に画像差分が抽出された文字記入枠が同じである場合、今回、画像差分の抽出された文字記入枠において所定の時間(例えば3秒)に画像差分が発生したか否かを判定する(S512)。
S512において、CPU101は撮像センサ109を用いて撮像を行い、所定時間の間に、今回画像差分の生じた文字記入枠内でさらに画像差分が抽出されるかを判定する。
今回、画像差分の発生した文字記入枠内でさらに画像差分が発生した場合、CPU101は画像差分の発生した文字記入枠においてユーザが文字の記入を続けていると判定し、S501へ戻る。
今回、画像差分が検出された文字記入枠において所定時間画像差分が検出されなかった場合、CPU101はユーザがその文字記入枠への記入を完了したと判断し、OCR処理を行う。
S512では、今回画像差分が抽出されてから所定の時間が経過したか否かでユーザが記入欄内の記入を終えたか否かを判定している。しかし、今回画像差分が抽出されてからの経過時間ではなく直前に画像差分が抽出されてから所定時間が経過したか否かで判定を行うこととしてもよい。
CPU101が、ユーザが文字の記入を終えた文字記入枠について枠の色を透明にする(S513)。直前に画像差分が発生した文字記入枠と今回画像差分が発生した文字記入枠が異なる場合に、ユーザが直前に画像差分の生じた文字記入枠への記入を終了したとCPU101は判定する。または、文字記入枠内で最後の画像差分が発生してから所定時間が経過しても画像差分の発生した文字記入枠において新たな画像差分が発生しなかった場合に上記文字記入枠における文字の記入が終了したとCPU101は判定する。この処理により、図3の(e)と(f)に示すように記入が完了した「山」の文字記入枠が消え、図3の(f)に示すように記入が完了した「田」と、「田」と記入中の「太」の間に存在する記入が行われなかった文字記入枠が消える。OCR処理を開始する前に、文字の記入が完了した文字記入枠の色を透明にすることで、ユーザの書いた文字が文字記入枠に重なってしまった際も、OCR処理の精度を下げること無く文字認識を行うことができる。本実施例では文字記入枠の色を透明にしているが、枠の色を透明にする以外の実施形態でも良い。たとえば、枠の輝度をOCR処理に影響が出ない程度まで低くするであったり、文字記入枠の色をユーザの仕様するペンと異なる色とし、文字記入枠とユーザの書いた文字が十分区別できるようにする等である。
CPU101が、撮像センサ109が撮像した画像データについて枠を透明にした文字記入枠内の画像データを取得する(S514)。
CPU101は、抽出した画像データを一つの文字としてOCR処理を行い、OCR処理の結果をテキスト情報として得る(S515)。
CPU101は、OCR処理の結果のテキスト情報を、S513で文字記入枠を透明にした文字記入枠近傍にプロジェクタ108で表示する(S516)。その後、CPU101は処理をS501にもどし、撮像センサ109による撮像を行う。この処理により、図3の(e)と(f)に示すようにユーザが文字記入枠に「山」を書き終わり、次の文字記入枠に「田」を書いている間に、「山」を書いた文字記入枠の色が透明になり、文字記入枠の下にOCR認識結果の漢字が表示される。
本実施例では、ユーザが手書きした文字を撮像センサ109で撮像し、OCR処理を行うときに、プロジェクタ108を用いて文字記入枠を投影し、投影した文字記入枠内に書かれた文字を一文字と考えてOCR処理を行う。このようにすることで、ユーザが一文字として記入した文字を画像処理装置100が二文字以上の文字として文字認証することを防ぐことができる。また、画像処理装置100は文字認識専用の用紙を用いることなく文字と文字の境目を明確にして、OCR処理等の文字認識処理を行うことができる。
実施例1では、ユーザが文字記入枠に1文字記入を終える毎にOCR処理を行い、手書き文字のテキスト情報を生成した。しかし、ユーザが記入欄を書き終えた後に、OCR処理をおこなうこととしてもよい。このとき、一つの文字記入枠内に書かれた文字を一文字としてOCR処理を行う。また、プロジェクタ108を用いてOCR処理の開始を指示するためのボタンを机上に投影し、ユーザがそのボタンをタッチすることに応じてOCR処理を開始することとしてもよい。
実施例1では、撮像領域内に置かれた申込用紙の撮像画像と予めHDD107に記憶された申込用紙のテンプレート画像とを比較し、撮像領域内に置かれた申込用紙の種類を特定していた。しかし、撮像領域内に置かれた申込用紙の種類を特定しないこととしてもよい。たとえば、撮像領域内に置かれた記入欄の印刷された用紙について、ユーザが記入欄をタッチするとタッチされた位置にある記入欄を検出して、記入欄の中に文字記入枠を表示することとしてもよい。このようにすることで、予め申込用紙のテンプレートをHDD107に記憶しなくても記入欄に文字記入枠を表示することが可能である。
(実施例2)
実施例1では、机上に置かれた申込用紙の記入欄をユーザがタッチすると、その記入欄の内側に所定の大きさの文字記入枠が表示される場合について説明した。しかし、記入欄の印刷されていない用紙に手書きし、手書きした文字についてOCR処理を行い電子データの作成を行いたい場合がある。実施例2では白紙が置かれた場合を例にとり、ユーザによるジェスチャー操作に従って文字記入枠を表示し、表示した文字記入枠の位置と大きさを変更する処理を説明する。
実施例1では、机上に置かれた申込用紙の記入欄をユーザがタッチすると、その記入欄の内側に所定の大きさの文字記入枠が表示される場合について説明した。しかし、記入欄の印刷されていない用紙に手書きし、手書きした文字についてOCR処理を行い電子データの作成を行いたい場合がある。実施例2では白紙が置かれた場合を例にとり、ユーザによるジェスチャー操作に従って文字記入枠を表示し、表示した文字記入枠の位置と大きさを変更する処理を説明する。
図6は実施例2において撮像される用紙を真上から見た図を時間経過順に並べたものである。
図6(a)は、ユーザが白紙の上でドラッグ操作を行ったことを示している。ドラッグ操作とは、ユーザが用紙に指を置き、指を用紙の紙面上で動かした後に指を離す操作を示している。ユーザが用紙に指を置いた点をドラッグ開始点とし、ユーザが用紙から指を離した点をドラッグ終点とする。
図6(b)は、画像処理装置100がドラッグ開始点とドラッグ終点を対角とする矩形を文字列記入領域とし、文字列記入領域内に5つの文字記入枠と、用紙の右下隅に「OCR実行」ボタンをプロジェクタで表示していることを示している。
図6(c)は、ユーザが2つの文字記入枠のある位置を順番にタッチし、タッチした二つの文字記入枠が選択状態にあることを示している。ユーザはまず第1のタッチの位置をタッチし、その後第2のタッチの位置をタッチした。この時、画像処理装置100が、ユーザがタッチした位置にある文字記入枠をユーザが選択した文字記入枠であるとし、強調表示を行う。強調表示とは、例えば、文字記入枠を太線としたり、文字記入枠の輝度を選択されていない状態と比較して明るくしたり、文字記入枠の色を変化させたりすることで、選択されている文字記入枠を強調する表示である。
図6(d)は、ユーザが2つの文字記入枠をタッチして選択状態にしたのちに、ドラッグ操作を行った場合を示している。画像処理装置100は、ユーザのドラッグ操作に合わせて選択状態にある2つの文字記入枠を移動する。
図6(e)は、ユーザがピンチイン操作を行ったときの状態を示している。ピンチイン操作とは、ユーザが二つの指で用紙をつまむように動かす動作である。ユーザがピンチイン操作を行ったことに従って、画像処理装置100が、プロジェクタ108が表示している全ての文字記入枠の大きさを縮小する。このとき、文字記入枠が所定の大きさよりも小さくならないように制御しながら、CPU101が縮小処理を行う。所定の大きさとは撮像センサ109の撮像した画像データをもとにOCR処理を行った場合の精度が所定以上となる文字記入枠の大きさである。撮像センサの撮像できる解像度と、撮像センサから机上までの距離と、OCR処理に必要な画素数等からOCR処理の認識精度が所定以上となるか否かが決定される。
図6(f)は、ユーザがピンチイン操作を続け、文字記入枠の大きさが上記の所定の大きさに達した際に、画像処理装置100がそれ以上文字記入枠の大きさを小さくすることが出来ない旨をユーザに提示していることを示している。
図6(g)は、各文字記入枠内に一文字ずつペン等でユーザが記入したことを示している。
図6(h)は、ユーザが「OCR実行」ボタンをタッチした後を示している。画像処理装置100は、「OCR実行」ボタンがタッチされたことに従い、文字記入枠毎に文字記入枠内にユーザが記載した文字を一文字としてOCR処理を行う。画像処理装置100は認識結果のテキスト情報をプロジェクタ108で表示する。
実施例2では、ユーザが「OCR実行」ボタンをタッチしたことに従って、OCR処理を開始する場合について説明した。しかし、OCR処理を開始するタイミングは、上記のタイミングに限らない。例えば、実施例1のように、ユーザが一文字書き終える毎にユーザが書き終えた文字をOCR処理することとしてもよい。また、ユーザが文字列記入領域に文字を記入し終えた後、所定時間が経過したら自動でOCR処理を開始することとしてもよい。
図7は実施例2においてCPU101が実施する処理フローの一例を示す図である。これらの処理を実行するためのプログラムはHDD107内に記憶されている。
HDD107に記憶されたプログラムをCPU101が実行することにより、図7に示す処理が実現する。
S501からS503に示す処理は、実施例1と同様の処理であるため説明を省略する。
CPU101は、撮像センサ109の撮像領域に文字記入枠が表示されているか否かを判断する(S704)。撮像領域内に文字記入枠が表示されていない状態とは、図6(a)に示す状態であり、撮像領域内に文字記入枠が表示されている状態とは、図6(b)に示す状態である。
撮像領域内に文字記入枠が表示されていない場合、CPU101は、ドラッグ操作が検出されたか否かを判定する(S705)。ユーザによるドラッグ操作が検出されなかった場合、CPU101は処理をS501に戻し、撮像センサ109による撮像を行う。
S705において、ユーザがドラッグ操作を行ったと判定した場合、CPU101はユーザがドラッグ操作で指定した領域を文字列記入領域としてメインメモリ104に記憶する(S706)。ドラッグ操作で指定した領域とは、ドラッグ開始点とドラッグ終点を対角とする長方形の領域である。CPU101はドラッグ操作の開始点の座標と終点の座標をメインメモリ104に記憶する。文字列記入領域を記憶する方法は上記の方法に限らず、文字列記入領域の4角のうち一つの角の座標と領域の大きさを記憶してもよいし、四つの角の座標全てを記憶してもよい。
CPU101は、メインメモリ104に記憶された文字列記入領域を所定の大きさの文字記入枠で分割し、各文字記入枠の位置と大きさを、メインメモリ104に記憶する(S707)。文字記入枠の位置と大きさは実施例1と同様に枠IDと座標を紐づけたテーブルとしてメインメモリ104に記憶する。
CPU101は、S707で記憶した文字記入枠の位置と大きさに従って、各文字記入枠をプロジェクタで用紙上に表示する(S708)。
その後、CPU101は「OCR実行」ボタンを、プロジェクタで用紙上に表示し、S501へ戻り、撮像センサ109による撮像を行う。CPU101がS705からS709に示す処理を実行することにより、図6の(b)に示す表示が行われる。
S704において、すでに文字記入枠が用紙上に表示されていた場合、CPU101はS503で取得した撮像画像の差分に基づいて、どのような操作が行われたかを判定する(S710)。
ユーザがタッチ操作を行ったと判定された場合、CPU101はタッチされた位置が「OCR実行」ボタンの表示されている位置であるかを判定する(S711)。ユーザがタッチした位置が「OCR実行」ボタンの表示されている位置でない場合、CPU101はユーザのタッチした位置に文字記入枠が表示されていればその文字記入枠を選択状態として、ハイライト表示する(S715)。CPU101がS715を実行することにより、図6(c)に示すようにユーザの選択した文字記入枠をハイライト表示することができる。このとき、ユーザのタッチした位置に文字記入枠が表示されていなければ、CPU101は文字記入枠の選択を行わない。そして、その後S501に戻り、CPU101は撮像センサ109で撮像を行う。
ユーザがタッチした位置が「OCR実行」ボタンの表示位置である場合、CPU101は画像データとメインメモリ104に記憶している文字記入枠の位置と大きさの情報から各文字記入枠内の画像データを抽出する(S712)。
CPU101は抽出した画像データをもとに、1つの文字記入枠内に書かれた文字を一文字としてOCR処理を行い、テキスト情報を生成する(S713)。各文字記入枠内に書かれた文字を一文字としてOCR処理を行うことで、ユーザの手書きした文字をユーザの意図した通りに一文字ずつに区切りOCR処理を行うことができる。
OCR処理が終わった後、CPU101はOCR処理で得られたテキスト情報をプロジェクタ108で表示する(S714)。その後、S501に戻り、CPU101は撮像センサ109による撮像を行う。
CPU101がS711からS714の処理を行うことで、図6の(h)に示すようにユーザが手書きした文字列のOCR処理結果が表示される。
S710において、ユーザがドラッグ操作を行ったと判定された場合、CPU101は選択状態にある文字記入枠があるか否かを判定する(S716)。選択状態にある文字記入枠が無い場合、CPU101は処理をS501に進めて、撮像センサ109による撮像を行う。本実施例では、すでに文字記入枠が表示された状態で用紙上の文字記入枠以外の部分をドラッグ操作しても用紙上の表示に変化は現れないものとした。しかし、文字記入枠以外の領域をドラッグすることで、新たな文字記入枠が表示されることとしてもよい。
選択中の文字記入枠がある場合、CPU101は選択状態にある文字記入枠をユーザのドラッグ操作に合わせて移動する(S717)。その後、CPU101は処理をS501に戻し、撮像センサ109による撮像を行う。CPU101がS716およびS717の処理を行うことで図6(d)に示すように選択状態にある文字記入枠の位置を移動させることができる。
S710において、ユーザが用紙上でピンチ操作を行ったと判定された場合、CPU101はピンチ操作の種類を判定する(S718)。ピンチ操作には二つの種類があり、ピンチインは二本の指で用紙をつまむように操作することで文字記入枠を縮小して表示するための操作である。ピンチアウトは二本指で用紙を広げるように操作することで、文字記入枠を拡大して表示するための操作である。
ユーザの行った操作がピンチインであった場合、CPU101は各文字記入枠が所定の大きさよりも大きいかを判定する。所定の大きさとは、CPU101が一定以上の精度でOCR処理を行うために必要な文字の大きさを示している。
文字記入枠が所定の大きさより大きい場合、CPU101は文字記入枠をピンチイン操作にあわせて縮小する(S720)。その後、CPU101は処理をS501に戻し、撮像センサ109で撮像を行う。
文字記入枠の大きさが所定の大きさよりも小さいとき、CPU101はプロジェクタ108でこれ以上縮小することができない旨を表示する(S721)。その後、CPU101は処理をS501に戻し、撮像センサ109による撮像を行う。CPU101がS718からS721までの処理を行うことで、図6(e)および図6(f)に示す動作を実行することができる。
S718において、ユーザの行った操作がピンチアウトであった場合、CPU101はユーザのピンチアウト操作に合わせて文字記入枠の拡大を行う(S722)。文字記入枠の拡大を行った後、CPU101は処理をS501に戻して、撮像センサ109による撮像を行う。実施例2では、文字記入枠の拡大上限をもうけていない場合について説明した。しかし、文字記入枠の大きさに上限を設けて、ユーザが所定の大きさ以上に文字記入枠を拡大しようとした場合にこれ以上拡大できない旨の通知を行うこととしてもよい。
実施例2では、S707において各文字記入枠の位置と大きさをメインメモリ104に記憶し、その情報をCPU101が読み出すことで各文字記入枠の位置と大きさを把握している。各文字記入枠の大きさと位置を把握する方法は上記の方法に限らない。例えば、S712において撮像センサ109が撮像して得られた画像データを基に、プロジェクタ108で表示した文字記入枠の位置と大きさを判定することとしてもよい。
また、実施例2では、OCR処理を行うときに、プロジェクタ108による文字記入枠の表示を行ったまま撮像センサ109による撮像を行った。しかし、撮像センサ109による撮像を行う前に、プロジェクタ108の表示する文字記入枠の色を透明にする処理を行うこととしてもよい。撮像を行う前にプロジェクタ108の表示する文字記入枠の色を透明にすることで、ユーザの手書きした文字が文字記入枠と重なってしまった場合も、ユーザが手書きした文字を精度よくOCR処理することが可能となる。
本実施例では1つの撮像センサで撮像した画像データを解析することで、人のジェスチャー操作を認識しているが、その他の実現形態であっても良い。例えば、画像処理装置100に接続された不図示のマウスなどの入力装置で操作できるようにしても良い。実施例2ではタッチ操作やピンチ操作等のジェスチャー操作、入力装置を用いた操作を検出するための操作検出処理を行い、検出した操作に従って、文字記入枠の大きさを変える処理や一を変更する処理を行うことができる。
また、1つの撮像センサでなく、物体を認識するために距離画像を取得するための赤外線センサとRGB映像を取得するためのRGBセンサといったように複数のセンサが別々に設けられているとしてもよい。
実施例2では、移動させたい文字記入枠をユーザが一度タッチして選択した後、用紙内でドラッグ操作を行うことで文字記入枠を移動することとして説明した。しかし、ユーザがドラッグ操作をしたときに、ドラッグ開始点にある文字記入枠をドラッグ終点まで移動することとしてもよい。
実施例2のような処理をCPU101が実行することにより、予め記入欄の印刷されていない用紙を用いても、ユーザの意図した位置で文字を区切りOCR処理を行うことが可能となる。
(実施例3)
実施例1、実施例2では、ユーザが文字を記入している途中で文字記入枠が足りなくなってしまうことに気がついた場合に文字記入枠を追加することができない。そこで実施例3では、ユーザの記入状況に応じて追加の文字記入枠が不足しそうな場合に文字記入枠を追加する場合について説明する。
実施例1、実施例2では、ユーザが文字を記入している途中で文字記入枠が足りなくなってしまうことに気がついた場合に文字記入枠を追加することができない。そこで実施例3では、ユーザの記入状況に応じて追加の文字記入枠が不足しそうな場合に文字記入枠を追加する場合について説明する。
図8は本実施例の動作概要を示す図である。(a―1)および(a―2)はユーザが記入を行っているときに、ユーザが記入を行っている列の下に追加の文字記入枠を表示する場合の図である。(a―1)ではユーザが現在記入している文字記入枠の右に枠が一つしかなく、まもなくユーザが文字記入枠を使い切ってしまう状態を示している。そこで、画像処理装置100は現在ユーザが文字を記入している文字記入枠のある列の下に新たな文字記入枠を表示している。
図8(b−1)および(b−2)は、現在ユーザが記入をしている文字記入枠を囲むようにして追加の文字記入枠が表示される場合を示している。例えば、(b−1)では、「田」の文字をユーザが記入している文字記入枠に対して点線で囲まれている10個の文字記入枠が新たに表示される。ユーザが文字の記入を進めて、(b−2)の状態になると、現在ユーザが記入を行っている文字記入枠の上下および左側はすでに文字記入枠があるため追加の表示はなされず、右側のみ6個の文字記入枠が追加される。
図8(c−1)および(c−2)はユーザが誤記をしてしまった場合に新たに文字を記入するための文字記入枠が表示される場合を示している。図8(c−1)は、ユーザが文字記入枠に「田」と記入するつもりが、間違って「太」と記入した状況を示している。そこで、ユーザは「太」に取り消し線を記入する。すると、画像処理装置100が、取り消し線を検出して「太」を記入した文字記入枠の近傍に追加の文字記入枠を表示する。これにより、ユーザが文字を書き間違えた際に、当初用意された文字記入枠の数を気にすることなく訂正を行うことが可能になる。
図9は実施例3の処理を行うためのフローチャートの一例である。図9に示す処理を実行するためのプログラムはHDD107に記憶されており、CPU101がプログラムを実行することにより処理が実現する。
S501からS503に示す処理は実施例1および2と同様であるため、説明を省略する。
CPU101は文字記入枠内で撮像画像に差分があるかを判定する(S904)。
各文字記入枠内で撮像画像に差分が生じた場合、CPU101は文字記入枠追加処理を行う。文字記入枠追加処理については、図10を用いて詳細を説明する。CPU101が文字枠追加処理を行った後に、CPU101は処理をS501に戻し、撮像センサ109を用いた撮像を行う。
各文字記入枠内で撮像画像に画像差分が無い場合CPU101は処理をS501に戻し、撮像センサ109を用いて撮像を行う。
図10は実施例3の文字記入枠追加処理を示した図である。
図10(a)は図8(a−1)(a−2)に対応した文字記入枠の追加処理である。
CPU101は未記入の文字記入枠が所定数未満かどうかを判定する(S10a−01)。未記入の文字記入枠の数が所定数以上であれば文字記入枠の追加処理を行うことなく、CPU101は文字記入枠追加処理を終了する。
未記入の文字記入枠が所定数未満の場合、CPU101はプロジェクタ108ですでに表示されている文字記入枠の近傍に新たな文字記入枠を表示する(S10a−02)。その後、CPU101は文字記入枠追加処理を終了する。
図10の(b)の動作概要は図8の(b−1)、(b−2)に対応した文字記入枠追加処理である。
CPU101はユーザが記入をしている途中の文字記入枠の周辺に文字記入枠を表示する(S10b−01)。その後CPU101は文字記入枠追加処理を終了する。
図10の(c)の動作概要は図8の(c−1)、(c−2)に示すものである。
図10の(c)のS10c−01からS10c−02は画像処理装置100が実施する処理ステップである。
CPU101は、記入が完了した文字記入枠内に所定のマークが記入されたかどうかを判断する(S10c−01)。所定のマークとは、例えば図8(c−2)に示すバツ印等の取り消し線である。所定のマークは予めHDD107に記憶されており、出荷時に予め決められているマークでも、ユーザが任意に変更することができるマークでもよい。文字記入枠内に所定のマークが記入された場合、CPU101が、記入が完了した文字記入枠近傍に、追加の文字記入枠をプロジェクタで表示する(S10c−02)。文字記入枠内に所定のマークが記入されていない場合、CPU101は文字記入枠追加処理を終了する。
実施例3において、ユーザが文字記入枠内に記入した文字をOCR処理する場合には、撮像センサ109が撮像した画像データから、ひとつの文字記入枠内に記入された文字を一文字としてOCR処理を行う。CPU101はユーザが全ての文字の記入を終えた後にOCR処理を開始することとしてもよいし、ユーザが一つの文字記入枠の記入を終える毎に記入を終えた文字記入枠についてOCR処理を行うこととしてもよい。また、OCR処理を開始する前に、CPU101はOCR処理を行う文字記入枠について文字記入枠の色を透明にする処理を行う。
また、新たな文字記入枠を表示する際に、新たな文字記入枠を表示する位置および大きさをメインメモリ104に記憶し、記憶された文字記入枠の位置および大きさを基に、一つの文字記入枠内に記入された文字を一文字としてOCR処理を行う。
実施例3のように、ユーザの文字記入枠への記入の状況に応じて、新しい文字記入枠を表示することで、ユーザは表示されている文字記入枠の数を気にすることなく記入を行うことができる。
(実施例4)
実施例1から実施例3ではユーザが記入欄をタッチしたり、白紙の用紙にドラッグすることでユーザがこれから文字を記入する場所を指定し、プロジェクタ108による文字記入枠の表示を開始させていた。しかし、ユーザがこれから記入を始める記入欄を指定することなく文字の記入をはじめる場合がある。そこで実施例4では、撮像領域内に置かれた記入用紙について、撮像した画像データから記入欄を検出し、検出した記入欄全てについて文字記入枠を表示する場合について説明する。
実施例1から実施例3ではユーザが記入欄をタッチしたり、白紙の用紙にドラッグすることでユーザがこれから文字を記入する場所を指定し、プロジェクタ108による文字記入枠の表示を開始させていた。しかし、ユーザがこれから記入を始める記入欄を指定することなく文字の記入をはじめる場合がある。そこで実施例4では、撮像領域内に置かれた記入用紙について、撮像した画像データから記入欄を検出し、検出した記入欄全てについて文字記入枠を表示する場合について説明する。
図13に実施例4における撮像センサ109で撮像する用紙を真上から見た図について時系列で並べたものを示す。
図13(a)は記入用紙を撮像領域内においた状態を表している。画像処理装置100は記入用紙を撮像し、得られた画像データから記入欄401および文字列記入領域403を検出する。図13(a)であれば、記入欄401として「名前」欄および「生年月日」欄を検出する。そして、「名前」欄の「名前:」と書かれた領域を除く領域を文字列記入領域403とし、「生年月日」欄の「生年月日:」と書かれた領域を除く領域を文字列記入領域403とする。「撮影」ボタン1301はユーザがOCR処理の開始を指示するためのボタンである。このボタンは実施例2の「OCR実行」ボタンと同様の役割である。
図13(b)は記入用紙の文字列記入領域に文字記入枠をプロジェクタ108が表示した状態である。文字記入枠の大きさは予め決められた大きさであってもよいし、文字列記入領域403の大きさから算出される大きさであってもよい。
図13(c)はユーザがペン等で文字記入枠に文字を記入した状態である。
図13(d)はユーザがペン等で文字記入枠に文字を記入した後、「撮影」ボタン1301をタッチして、画像処理装置100がOCR処理を行った後の状態である。画像処理装置100は各文字記入枠内に書かれた文字を一文字として文字の認識を行い、OCR処理によって得られたテキストデータを文字の記入された文字記入枠近傍に表示をする。本実施例では、ユーザが「撮影」ボタン1301をタッチした後にOCR処理をおこなうこととして説明するが、OCR処理を開始するタイミングは上記のタイミングに限らない。例えば、ユーザが記入を終えた文字記入枠について逐次OCR処理を行ったり、ユーザが一列分の文字記入枠を完了したら、文字記入の完了した列についてOCR処理を開始するとしてもよい。また、OCR処理を行った後、OCR処理によって得られたテキスト情報を文字記入枠近傍に表示するとしたが、テキスト情報を表示しないまたは、PCのモニタ等外部の表示部にテキスト情報を表示することとしてもよい。
図11に実施例4に示す画像処理装置100が行う文字記入枠を表示するための処理の流れを示す。
図11に示す処理はHDD107に記憶されており、CPU101がこの処理を実行する。
このフローチャートに書かれた処理はユーザが申込用紙を撮像領域内に置いたことにより開始する。例えば、ユーザが記入用紙を撮像領域内に置き、画像処理装置100が撮像領域内に置かれた記入用紙を検出することで開始することとする。画像処理装置100は実施例1と同様に撮像領域内で厚みのない四角形の物体が静止したら記入用紙が撮像領域内に置かれたと判断する。
CPU101は撮像センサ109をもちいて撮像し、RGBIr画像データを取得する(S1101)。
CPU101は、得られた画像データを基にFOT法を用いて、三次元座標情報を生成する(S1102)。
CPU101は、撮像したRGBIr画像データおよび三次元座標情報より、申込用紙内のユーザが記入する記入欄の位置と大きさを検出する(S1103)。例えば、画像データ内の所定大きさ以上記入用紙の大きさ未満の矩形を記入欄と認識し、4つの角の座標を取得することで記入欄の位置と大きさを検出する。CPU101は検出した記入欄の位置座標および大きさの情報をメインメモリ104に記憶する。
CPU101は、検出した各記入欄内について文字列記入領域を算出する(S1104)。文字列記入領域とは、記入欄内のユーザが文字を記入することのできる領域である。例えば、図13(a)では名前の記入欄から「名前:」と印刷された領域を除いた領域が文字列記入領域となる。
CPU101は、文字列記入領域を予め決められた大きさの文字記入枠で分割し、各文字記入枠の位置と大きさをメインメモリ104に記憶する(S1105)。予め決められた大きさはHDD107に記憶されており、CPU101がその値を読み出して利用する。
CPU101は、メインメモリ104に記憶された文字記入枠の位置と大きさに基づいてプロジェクタ108を用いて申込用紙上に文字記入枠402を表示する(S1106)。
上記の処理を行うことで、手書きの申込用紙上に文字を一文字ずつ記入するための文字記入枠を重畳して表示することができる。
図12に実施例4に示す画像処理装置100が行う、ユーザが手書きした文字を読み取りOCR処理するための処理の流れを示す。
図12に示す処理を実行するためのプログラムがHDD107に記憶されており、CPU101がそのプログラムを実行する。
本実施例ではユーザがプロジェクタの表示する「実行」ボタン1301をタッチすることに従って、CPU101がOCR処理を開始する。
まず、CPU101ユーザが「実行」ボタン1301をタッチしたか否かを判定する(S1201)。「実行」ボタン1301は申込用紙に記入された内容を読み取る処理を開始させるためのものであればよい。例えば、プロジェクタ108の表示するボタンのタッチでなくても、所定のジェスチャーをユーザが行ったときにCPU101が撮像センサ109の撮像する画像データを取得し、OCR処理が行うとしてもよい。
CPU101が「実行」ボタン1301のタッチを検出したのち、撮像センサ109は申込用紙を撮像し、画像データを取得する(S1202)。本実施例では、文字記入枠を表示したままCPU101が文字認識を行う場合について説明した。しかし、「実行」ボタンがタッチされた後、CPU101は文字記入枠の表示を透明にした後、OCR処理を行うこととしてもよい。
取得した画像データおよび、S1105で記憶した文字記入枠の位置と大きさの情報を基にCPU101はOCR処理を行う(S1203)。CPU101は、一つの文字記入枠内に記入された文字を一文字とし、OCR処理を行う。一つの文字記入枠に書かれた文字を一つの文字としてOCR処理を行うことで、文字と文字の境目を明らかにすることができ、一つの文字記入欄に書かれた文字が二つ以上の文字であると認識されてしまうことを防ぐことができる。
最後に、CPU101はOCR処理により得られたテキスト情報を文字の記入された文字記入枠の近傍に表示する。
実施例4では、ユーザが撮像領域内に記入用紙を置いたことを画像処理装置100が検知することで文字記入枠を表示するための処理が開始された。文字記入枠を表示するための処理を開始する方法は上記の方法に限らない。たとえば、文字記入枠を表示するための処理を開始するためのボタンがプロジェクタ108により表示されており、ユーザがそのボタンが表示された位置をタッチすることによって、文字記入枠を表示するための処理を開始することとしてもよい。
実施例4を実施することにより、ユーザが記入用紙を撮像領域におくだけで、用紙内の記入欄を検出するための記入欄検出処理を行い、記入欄の内の文字列記入領域に文字記入枠を表示することができる。そのため、実施例1または2のようにユーザが撮像領域に用紙を置いた後、記入欄をタッチする等所定の動作を行わなくてもペン等による文字記入を行うことができる。
また、実施例4では撮像センサ109が撮像した画像データから記入欄を検出して文字記入枠の表示をするための処理を行う。したがって、予め記入用紙のテンプレート画像を画像処理装置100のHDD107に記憶する必要がなく、ユーザの利用したい任意の用紙に文字記入枠を表示することができる。
実施例4より、撮像領域内に置かれた用紙にプロジェクタ等の投影装置でユーザが一文字を記入するための文字記入枠を投影し、一つの文字記入枠内に書かれた文字を一文字としてOCR処理等の文字認識処理を行う。これにより、ユーザが一文字として記入した文字を画像処理装置100が二文字以上に分けて文字認識することを防ぐことができる。また、文字認識専用の用紙を用いることなく、ユーザの意図した位置で文字と文字を区切り、文字認識処理を行うことができる。
(その他の実施例)
実施例1から4では、プロジェクタ108および撮像センサ109の両方を備えた画像処理装置100が撮像領域内の画像データの取得および、撮像領域内への投影の両方を行っている。しかし、プロジェクタ108と撮像センサ109が異なる装置であって、この両方の装置を含む画像処理システムであってもよい。
実施例1から4では、プロジェクタ108および撮像センサ109の両方を備えた画像処理装置100が撮像領域内の画像データの取得および、撮像領域内への投影の両方を行っている。しかし、プロジェクタ108と撮像センサ109が異なる装置であって、この両方の装置を含む画像処理システムであってもよい。
実施例1から4では、一つの撮像センサが画像差分を検出するための画像データの取得および、OCR処理を行うための画像データの取得の両方を行っている。OCR処理の精度を上げるためには、ユーザの記入した文字をよりはっきりと撮像することが必要となるため、撮像センサの解像度をできるだけ高くした。一方、画像差分を抽出するための撮像センサは撮像領域内の物体の動きや変化をとらえることができればよいのでOCR処理を行うための画像を撮像する撮像センサほど高解像度のものは必要としていない。そこで、画像差分を抽出するための画像を撮像する撮像センサとOCR処理を行うための撮像画像を撮像するための撮像センサを別々にしてもよい。このよき、OCR処理を行うための画像を撮像する撮像センサは画像差分を検出するためのセンサよりも高解像度である。
実施例1から実施例4では、CPU101がOCR処理を開始する前に、OCR処理を行う文字記入枠について文字記入枠の色を透明にする処理を行った。文字記入枠の色を透明にする処理とは、プロジェクタ108が文字記入枠の表示を終了するための処理と同様である。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのコンピュータプログラム、及び該コンピュータプログラムを記憶した記憶媒体は本発明を構成することになる。
Claims (19)
- 画像処理装置であって、
用紙を撮像する撮像手段と、
前記用紙にユーザが文字を1文字記入するための文字記入枠を投影する投影手段、
前記撮像手段により撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識手段と、を有し、
前記文字認識手段は、前記投影手段により投影された1つの文字記入枠内に書かれた文字を1文字として文字認識することを特徴とする画像処理装置。 - 前記投影手段により投影される前記文字記入枠の位置を記憶する記憶手段を有し、
前記記憶手段により記憶された前記文字記入枠の位置に従って、ひとつの前記文字記入枠内に書かれた文字を1文字として前記文字認識手段が文字認識を行うことを特徴とする請求項1に記載の画像処理装置。 - 前記文字認識手段により文字認識を行った結果を前記投影手段が投影することを特徴とする請求項1または2に記載の画像処理装置。
- 前記文字認識手段による文字認識を行うための処理を始める前に、前記投影手段が前記文字記入枠の投影を終了することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
- 前記画像処理装置は、
前記撮像手段により撮像された画像データに基づいて、ユーザが記入を行う記入欄を検出する記入欄検出手段を有し、
前記記入欄検出手段により検出された前記記入欄の内側に前記投影手段が前記文字記入枠を投影することを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。 - 前記記憶手段は前記用紙のテンプレート画像を記憶しており、
前記記入欄検出手段は前記撮像手段の撮像した画像と前記記憶手段に記憶された前記テンプレート画像に基づいて前記記入欄を検出することを特徴とする請求項1乃至5のいずれか一項に記載の画像処理装置。 - 前記画像処理装置は、
ユーザによる操作を検出する操作検出手段を有し、
前記撮像手段により撮像された画像に基づいて、ユーザが文字を記入する前記記入欄を検出し、
前記操作検出手段がユーザによる前記記入欄を選択する操作を検出したことに従って、前記投影手段が前記文字記入枠を前記記入欄に投影することを特徴とする請求項1乃至6のいずれか一項に記載の画像処理装置。 - 前記操作検出手段により文字認識処理を開始するための操作を検出されたことに従って、前記文字認識手段が文字認識を行うことを特徴とした請求項1乃至7のいずれか一項に記載の画像処理装置。
- 前記操作検出手段によりユーザが一つの前記文字記入枠への文字の記入を終えたことが検出されることに従って、前記一つの文字記入枠内に記入された文字について前記文字認識手段が文字認識を行うことを特徴とする請求項1乃至7のいずれか一項に記載の画像処理装置。
- 前記操作検出手段はユーザによるジェスチャー操作を検出することが可能であることを特徴とする請求項1乃至9のいずれか一項に記載の画像処理装置。
- 前記画像処理装置は、
前記操作検出手段により第1のジェスチャー操作が検出された場合に、前記投影手段の投影する前記文字記入枠の大きさを変化することを特徴とする請求項10に記載の画像処理装置。 - 前記画像処理装置は、
前記操作検出手段により第2のジェスチャー操作が検出された場合に、前記投影手段の投影する前記文字記入枠の位置を変更することが可能であることを特徴とする請求項10または11に記載の画像処理装置。 - 前記第1のジェスチャー操作がピンチインまたはピンチアウトであることを特徴とする請求項11に記載の画像処理装置。
- 前記操作検出手段によりユーザのピンチイン操作が検出された場合、前記投影手段の投影する文字記入枠の大きさを小さくすることを特徴とする請求項13に記載の画像処理装置。
- 前記操作検出手段により検出された前記第1のジェスチャー操作がピンチインである場合に、前記投影手段により投影される前記文字記入枠の大きさを予め決められた所定の大きさよりも小さくしないよう制御する制御手段を有することを特徴とする請求項14に記載の画像処理装置。
- 前記投影手段により投影される前記文字記入枠を前記所定の大きさよりも小さくするためのピンチインが前記操作検出手段により検出された場合、
前記文字記入枠をこれ以上、小さくすることができない旨をユーザに通知する通知手段を有する請求項15に記載の画像処理装置。 - 前記操作検出手段により検出された第1のジェスチャー操作がピンチアウトである場合に、前記投影手段により投影される枠の大きさを大きくすることを特徴とする請求項16に記載の画像処理装置。
- 画像処理装置の制御方法であって、
用紙を撮像する撮像ステップと、
前記用紙にユーザが文字を1文字記入するための文字記入枠を投影する投影ステップ、
前記撮像ステップにより撮像された画像データを用いて前記ユーザが前記用紙に記入した文字を文字認識するための文字認識ステップと、を有し、
前記文字認識ステップは、前記投影ステップにより投影された1つの文字記入枠内に書かれた文字を1文字として文字認識することを特徴とする画像処理装置の制御方法。 - 請求項18に記載の画像処理装置の制御方法を、コンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016107414A JP2017215661A (ja) | 2016-05-30 | 2016-05-30 | 画像処理装置、及びその制御方法ならびにコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016107414A JP2017215661A (ja) | 2016-05-30 | 2016-05-30 | 画像処理装置、及びその制御方法ならびにコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017215661A true JP2017215661A (ja) | 2017-12-07 |
Family
ID=60577020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016107414A Pending JP2017215661A (ja) | 2016-05-30 | 2016-05-30 | 画像処理装置、及びその制御方法ならびにコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017215661A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109325557A (zh) * | 2018-09-10 | 2019-02-12 | 四川正狐智慧科技有限公司 | 基于计算机视觉图像识别的数据智能采集方法 |
JP2020086264A (ja) * | 2018-11-29 | 2020-06-04 | 京セラドキュメントソリューションズ株式会社 | 表示装置、表示方法および表示システム |
JP2020173494A (ja) * | 2019-04-08 | 2020-10-22 | 三菱電機株式会社 | 手書き文字認識装置および手書き文字認識方法 |
JP2020182131A (ja) * | 2019-04-25 | 2020-11-05 | 日本電気株式会社 | 入出力装置及び入出力装置の把持方法 |
JP2021092895A (ja) * | 2019-12-09 | 2021-06-17 | Necプラットフォームズ株式会社 | 公営競技投票システム、公営競技投票方法、及び公営競技投票プログラム |
-
2016
- 2016-05-30 JP JP2016107414A patent/JP2017215661A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109325557A (zh) * | 2018-09-10 | 2019-02-12 | 四川正狐智慧科技有限公司 | 基于计算机视觉图像识别的数据智能采集方法 |
CN109325557B (zh) * | 2018-09-10 | 2019-07-16 | 四川正狐智慧科技有限公司 | 基于计算机视觉图像识别的数据智能采集方法 |
JP2020086264A (ja) * | 2018-11-29 | 2020-06-04 | 京セラドキュメントソリューションズ株式会社 | 表示装置、表示方法および表示システム |
JP7180323B2 (ja) | 2018-11-29 | 2022-11-30 | 京セラドキュメントソリューションズ株式会社 | 表示装置、表示方法および表示システム |
JP2020173494A (ja) * | 2019-04-08 | 2020-10-22 | 三菱電機株式会社 | 手書き文字認識装置および手書き文字認識方法 |
JP2020182131A (ja) * | 2019-04-25 | 2020-11-05 | 日本電気株式会社 | 入出力装置及び入出力装置の把持方法 |
JP2021092895A (ja) * | 2019-12-09 | 2021-06-17 | Necプラットフォームズ株式会社 | 公営競技投票システム、公営競技投票方法、及び公営競技投票プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10698560B2 (en) | Organizing digital notes on a user interface | |
JP2017215661A (ja) | 画像処理装置、及びその制御方法ならびにコンピュータプログラム | |
US20160203625A1 (en) | Providing in-line previews of a source image for aid in correcting ocr errors | |
US9292186B2 (en) | Note capture and recognition with manual assist | |
EP2793170A2 (en) | Objects in screen images | |
US9384405B2 (en) | Extracting and correcting image data of an object from an image | |
KR20110091296A (ko) | 문서 작성 장치 및 방법 | |
US10291843B2 (en) | Information processing apparatus having camera function and producing guide display to capture character recognizable image, control method thereof, and storage medium | |
JP6349800B2 (ja) | ジェスチャ認識装置およびジェスチャ認識装置の制御方法 | |
JP2014143548A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
US10684772B2 (en) | Document viewing apparatus and program | |
JP6287382B2 (ja) | ジェスチャ認識装置およびジェスチャ認識装置の制御方法 | |
CN107133615A (zh) | 信息处理设备和信息处理方法 | |
US9678642B2 (en) | Methods of content-based image area selection | |
US20150220800A1 (en) | Note capture, recognition, and management with hints on a user interface | |
CN105607825B (zh) | 用于图像处理的方法和设备 | |
JP6170241B2 (ja) | 文字特定装置、および制御プログラム | |
US20160300321A1 (en) | Information processing apparatus, method for controlling information processing apparatus, and storage medium | |
US20160171297A1 (en) | Method and device for character input | |
JP6322086B2 (ja) | 表示制御装置、表示装置、プログラム、記録媒体 | |
CN112463010B (zh) | 信息处理装置及计算机可读存储介质 | |
US20180336684A1 (en) | Image processing device, image processing method, and information storage medium | |
US20220083290A1 (en) | Printed matter processing apparatus and non-transitory computer readable medium storing program for creating printed matter based on environment | |
JP6880697B2 (ja) | 表示装置、表示方法及びプログラム | |
JP6639257B2 (ja) | 情報処理装置及びその制御方法 |