画像処理装置、画像処理方法及びプログラム
【課題】自然画中の文字を、配置に必要な面積が異なる文字コードに変換しそのまま元の画像に合成すると、変換後の文字の可読性が下がることを防止するため、視認性の保持を図る。
【解決手段】画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識手段と、前記文字コードを用いて表示用の表示データを生成する生成手段と、前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置手段と、を備える。
【解決手段】画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識手段と、前記文字コードを用いて表示用の表示データを生成する生成手段と、前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置手段と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタルカメラ等で撮影された情景画中から抽出した文字を変換し表示する技術に関するものである。
【背景技術】
【0002】
近年、デジタルカメラは情景を撮影するだけでなく、情景中の文字情報を記録するために用いられるケースが増えてきている。また、記録した画像を活用するために、情景画像から文字情報を抽出し、翻訳等、文字情報をユーザが利用しやすい形態に変換されることも多い。
【0003】
例えば、特許文献1には、観光案内掲示板、建造物、看板、パンフレット、レストランのメニュー等々に記述されている文字を、カメラ画像データとして取り込み、文字認識して翻訳する技術が開示されている。また、翻訳後の文字情報を元の画像に反映させる場合、原文と訳文の文字数の変化が発生する。このため、特許文献2には、文書を対象とした翻訳装置であって、自動訳文の文字の大きさ等を自動的に変え、元の原文位置に訳文を適切に埋め込む技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平09−138802号公報
【特許文献2】特開平07−013969号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に開示される技術は、ユーザに情報を提示するのは文字の翻訳結果だけであるが、結果表示は文字だけより文字と画像と重ね合わせて表示させた方が一覧できるので可読性も高い。しかし、翻訳は言語によって文字数が大幅に変動する。このため単純に翻訳後の単語を画像の文字領域に配置しても、変換後の単語が情景画中の本来の文字があった領域からはみだしてしまう。このようなケースに、特許文献2に開示されている翻訳後の文字サイズを配置領域に合わせて調整する技術を適用させても、情景画像は文書と比べて文字が配置可能な領域の面積が大幅に狭いため、翻訳後の文字が小さくなりすぎる可能性がある。また、デジタルカメラに付属する画像表示装置は撮影画像を等倍率で表示できるほどは大きくないので、表示領域上では撮影画像を縮小した画像を表示する。このような場合、ユーザは見たい被写体があれば、その被写体の領域を拡大する操作をするので、一枚の撮影画像であってもユーザに見えている文字領域の大きさは変化する。このため、見た目の画像表示にあった読みやすい文字情報を提供する必要がある。
【0006】
そこで、本発明の目的は、画像中の文字に翻訳等の改編処理しても画像中の文字の視認性を保つことにある。
【課題を解決するための手段】
【0007】
本発明の画像処理装置は、画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識手段と、前記文字コードを用いて表示用の表示データを生成する生成手段と、前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置手段と、を備えたことを特徴とする。
【発明の効果】
【0008】
本発明によれば、画像中の文字に翻訳等の改編処理しても画像中の文字の視認性を保つことができる。
【図面の簡単な説明】
【0009】
【図1】本発明の実施形態に係る画像処理装置のシステム構成を示す図である。
【図2】本発明の実施形態に係る画像処理装置の機能的な構成を示す図である。
【図3】入力画像、文字領域、配置領域、合成情報の一例を示す図である。
【図4】配置部の処理を示すフローチャートである。
【図5】順次表示データの例を示す図である。
【図6】表示領域をもつ入力機器を示す図である。
【図7】表示領域上の合成情報の例を示す図である。
【図8】表示領域上の合成情報の例を示す図である。
【図9】第2の実施形態における合成情報の例を示す図である。
【図10】第3の実施形態における配置部の処理を示すフローチャートである。
【図11】第3の実施形態における合成情報の例を示す図である。
【図12】第4の実施形態における固定表示データの合成情報の例を示す図である。
【図13】第4の実施形態における固定表示データの合成情報の例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。なお、以下に説明する実施形態は飽くまでも本発明の適用例であり、本発明の範囲を限定する趣旨のものではない。
【0011】
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係る画像処理装置のシステム構成を示す図である。図1において、101は、本実施形態の実行プログラムを実行するCPUである。102は、RAM(Random Access Memory)である。処理プログラムや入出力データはRAM上に展開されて処理される。106は、処理対象となる画像データや処理済の電子ファイルを記憶する記憶装置である。110は、処理データを外部から入力するための入力装置である。111は、処理データを外部に表示するための表示装置である。デジタルカメラ等の入力装置110から入力された画像データは、ハードディスク等の記憶装置に入力データ108として記憶される。記憶装置に記憶されている処理プログラム107は、RAM102上の処理プログラム展開領域103に展開され、CPU101によって実行される。処理プログラムは入力データを記憶装置から呼び出し、RAM102上の入力データ領域104を展開する。処理プログラムは入力データに対して処理を施し、RAM102上の出力データ領域105に処理結果を出力し、記憶装置に出力データ109として保存する。出力データはディスプレイ等の表示装置111に出力される。なお、CPU101、RAM102、記憶装置106は入力装置110の内部に組み込まれていてもよいし、入力装置110の外部装置として存在してもよい。また、表示装置111は入力装置110に付属していてもよい。例えば、入力装置110がデジタルカメラであれば、本体に付属する表示画面が表示装置111となる。
【0012】
図2は、第1の実施形態に係る画像処理装置の機能的な構成を示す図である。本実施形態では、各々の機能ブロックの概略を一通り説明した後、本実施形態の要点となる機能の詳細及び生成したデータの表示例について説明する。
【0013】
図2の201は、入力装置110から入力される入力画像である。201の具体例を図3(a)の301に挙げる。図3(a)の301には風景と交通標識が被写体となっている。本実施形態では301を例にその後の処理についての詳細を説明する。図2の202は、入力画像から文字が存在する領域、すなわち看板文字の部分を抽出する文字領域抽出部である。ここでは公知技術を用いればよく、例えば特開2009−123206号に開示される技術が挙げられる。この本従来技術では以下の方法で文字領域を抽出している。入力画像からエッジ画像を生成し、エッジ画像から連結画素塊(Connected Component、以下CCと称す)を生成する。CCの大きさなどの特徴量から文字らしいと推定される候補CCの座標位置をハフ変換した結果、直線に並ぶ候補CC群を文字領域と判定する。
【0014】
図3(b)の302は入力画像301から抽出した文字領域を示している。図2の203は文字領域抽出部202によって抽出された文字領域について文字認識を行い、認識された文字を文字コードに変換する文字認識部である。ここでは公知の文字認識技術を用いればよく、本実施形態では文字認識処理で得られた文字に関する情報、すなわち、文字コードが生成されたとする。ほかにも認識処理で得られた文字領域に関する情報、例えば、文字領域の外接矩形の座標情報、文字の色なども先の文字コードと合わせて文字情報として出力する。なお、本実施形態では文字領域302から”歩行者優先”の文字コードが得られたとする。
【0015】
図2の204は、文字認識部203によって生成された文字コードを、配置に必要な面積が異なる文字コードに変換する変換部である。即ち、他言語への翻訳、漢字を平仮名にする、同等の意味で平易な用語に置き換える等を指す。例えば、日本語の”歩行者優先”を英語に翻訳すると、”Yield to Pedestrians”と配置に必要な面積の異なる文字コードに変換したことになる。また、日本語の”歩行者優先”をすべて平仮名にすると、”ほこうしゃゆうせん”、平易な用語に置き換えると、”あるくひとがさき”となる。本実施形態では日本語の”歩行者優先”を、英語の”Yield to Pedestrians”としたとして説明を進める。
【0016】
図2の205は、入力画像から文字が配置されている配置領域を抽出する配置領域抽出部である。配置領域とは、看板文字の下地部分となる看板本体を指す。配置領域の抽出には、公知のナンバープレート本体を認識する技術を用い、抽出された領域を配置領域とすればよい。例えば、特開2009−151759には次のような技術が開示されている。入力画像からエッジ画像を生成し、エッジ強度が規定値以上の画素を抽出する。ここで抽出した画素位置をハフ変換し、変換結果の線分で囲まれた領域をナンバープレート本体の領域としている。
【0017】
図3(c)の303は、入力画像301から抽出した配置領域を示している。図2の206は、変換部204で変換した文字情報を205で抽出した配置領域に配置する配置部である。配置部206は、判定部207、表示データ生成部208、合成部209から構成される。配置部206で最も問題になるのは、入力画像から取り出した文字コードデータと変換部で翻訳、要約等の改編処理、変換した文字コードデータの文字数の変動である。
具体例をあげる。入力画像301を入力した場合、文字認識部203で認識される文字コードデータは”歩行者優先”の5文字である。しかし、”歩行者優先”を変換部204で他言語である英語に変換すると、”Yield to Pedestrians”と空白も入れて20文字となり、変換前の文字数の4倍になる。このため、変換後の文字情報を、入力画像上の元の文字の大きさのまま配置領域である看板本体の領域に配置すると、文字が看板の形状、領域からはみ出してしまう(図3(e))。また、変換後の文字情報を配置領域に収めようとすると、大幅に文字サイズを小さくしなければならない(図3(d))。しかも、表示装置111上に表示される画像は、本来入力された入力画像そのもののサイズに比べて小さいので、本来は十分目視可能な大きさで撮影された文字であっても表示領域上では小さく表示されるため可読性が低下する。
【0018】
この問題を解決するため、配置部206は以下の3つの処理部を内包する。207は、変換した文字コードを十分目視可能な大きさで配置領域に配置できるかを判定する判定部である。208は表示領域上で読める大きさの文字サイズを確保し、配置領域に収まるようなデータを生成する表示データ生成部208である。209は表示データを配置領域に合成する合成部である。配置部206については、後ほど詳細に説明する。図2の210は配置部206にて入力画像に変換後の文字情報を合成した合成情報である。合成情報の表示例については、後ほど説明する。
【0019】
次に、配置部206についての詳細を説明する。図4は配置部206の処理を示すフローチャートである。S401、S402、S403が判定部207に、S404、S405が表示データ生成部208に、S406、S407は合成部209に該当する。以下、各ステップについて説明する。
【0020】
S401では、配置領域抽出部205で抽出した配置領域が表示装置111上に表示される面積S1を求める。S402では、S401で算出した面積S1に対し、変換後の文字コードを配置する場合の文字サイズT1を算出する。S403では、文字サイズT1と予め設定した下限文字サイズと比較する。下限文字サイズとは、表示装置111上において、人の目で文字が読める最低の文字サイズである。下限文字サイズより文字サイズT1が大きければ変換後の文字コードは配置領域に収まると判断し、S404へ遷移する。文字サイズT1が下限文字サイズより小さい場合は配置領域に収まらないと判断し、S405へ遷移する。S404では、S403で算出した文字サイズT1で文字コードを一覧表示にした固定表示データを生成し、S406へ遷移する。S405では、文字コードを配置領域に収まるように順次文字を配置する順次表示データを生成し、S406へ遷移する。
具体的な順次表示データの例は後ほど説明する。S406では、表示データを配置する前準備として配置領域にもともと存在していた文字を消す。具体的には、配置領域の文字領域以外の色情報の平均をとり、その色で文字領域を塗りつぶす。なお、塗りつぶす対象は配置領域全体であってもよい。S407では、表示用データを配置領域に配置する。表示データを配置した合成情報の例については後ほど説明する。
【0021】
次に、表示データ生成部208で順次生成される表示データの具体例を説明する。なお、本実施形態では変換後の文字コード”Yield to Pedestrians”を例にして順次表示データを図示する。
【0022】
図5は、文字コードを配置領域に収まるように順次文字を配置する順次表示データの例を示す図である。図5(a)は、文字コード全体”Yield to Pedestrians”を一般的なスクロール表示、すなわち右から左へ連続して文字コード全体を移動させる表示データである。時間軸としては、501、502、503、501・・・と遷移する。また、文字コード中の単語単位に分けて順次表示させてもよい。図5(b)では、文字コード全体を”Yield””to””Pedestrians”の3つの単語に分割し、それぞれの単語を順次表示させる。時間軸としては504、505、506、504・・・と遷移する。図5(b)の発展形として、図5(c)のように分割した単語の前後の合わせても配置領域に収まるならば、2つ以上の単語を同時に配置して表示してもよい。図5(c)では、”Yield””to”と合わせて配置した507と”Pedestrians”508を交互に表示する。また、配置領域が小さい場合などには、1文字単位で順次表示させてもよい。図5(d)は”Y”,”i”,”e”と1文字ごとに表示させた例である。時間軸としては509、510、511と遷移し、511の後も文字コードの次の文字を1文字ごとに表示させる。
【0023】
今まで例示した(a)〜(d)では、文字サイズは一定とし、配置する位置を変更させて順次表示させていたが、文字サイズ或いは表示領域の大きさ等の形状も変化させてもよい。例えば、図5(e)の512は文字コードを配置領域に収まるサイズとし、次に文字サイズを下限文字サイズまで大きくさせる。513は文字サイズ拡大の途中経過であり、515は目視可能な下限文字サイズまで拡大した例である。515以降の文字表示は先に説明した図5(a)、(b)、(c)、(d)のいずれかに準じる。なお、図5に挙げたパターンのうち、どのパターンを用いるかはユーザの指示で予め決めておく。
【0024】
次に、順次表示データを配置領域に配置した合成情報の表示例について説明する。なお、順次表示データは図5(a)に挙げたような文字コードを連続してスクロール移動させたものを代表例として図示するが、順次表示データのどのパターンでも適用できる。合成情報は図6に挙げるような一般的なデジタルカメラの表示領域602に表示する。ユーザが操作をする際は、表示領域602上に表示されるアイコンをタップする、もしくは、603にあるボタン群のうちいずれか1つ、もしくは2つ以上の組み合わせを順次押下して実行指示を出す。なお、ボタン群603はあくまで一例であり、何らかの操作ができるユーザインタフェースであれば何でもよい。表示領域602上における入力画像301と順次表示データを合成した場合の表示状態について、表示データ静止、表示データ動作、拡大の順で説明する。なお、データ表示時の初期状態は表示データ静止/動作どちらでもよい。
【0025】
図7(a)は順次表示データが静止している例である。順次表示データは少なくとも下限文字サイズと同等、もしくはそれより大きい文字サイズで提示されている。また、701はこの近辺の配置領域上に表示データが存在することを示すアイコンである。このアイコンの図例はあくまで一例であり、何らかの表示がある旨がユーザに理解できる図例であればなんでもよい。図7(a)の表示データはスクロール動作をしていないものとする。表示データを順次表示させるには、図7(a)の状態からアイコン701をタップする。次に、603の操作ボタンのうちいずれかを押下し、603の操作ボタンのうちいずれかを押下してアイコン701を選択し、603の操作ボタンのうちいずれかを押下する操作のいずれかで実行される。
【0026】
図7(b)、(c)、(d)は順次表示データが表示されている様子を示している。3つの図の時系列関係は、(b)、(c)、(d)、(b)、(c)、(d)・・・となり、文字コード”Yield to Pedestrians”が右から左へ連続して移動して表示されている。図7(b)、(c)、(d)には図7(a)の701と同じく、この近辺の配置領域上に表示データが存在することを示すアイコン702、703、704が存在している。なお、現在表示データが動作中である旨がユーザに理解できる図例であればなんでもよい。表示データの順次表示を停止するには、アイコン702、703、704のいずれかをタップする、603の操作ボタンのうちいずれかを押下する、603の操作ボタンのうちいずれかを押下してアイコン702、703,704のいずれかを選択し、603の操作ボタンのうちいずれかを押下する、の操作のいずれかで実行される。
【0027】
図7(e)、(f)は表示領域上の画像を拡大した場合の表示データの様子を示している。表示領域の拡大は、ユーザが603の操作ボタンのうちいずれかを押下することで実行される。文字コードを順次表示するか否かの判定は、判定部207で実行する表示領域上の配置領域に配置できる文字サイズの大きさによって決定する。このとき、拡大操作で表示領域上の配置領域の面積は変化するので、判定部207が動作し、文字コードの配置の可否を判定する。
【0028】
図7(e)は目視可能な下限文字サイズですべての文字コードを配置領域内で収めることができると判定されたため、固定表示データが配置されている。さらに拡大をした図7(f)でも固定表示データが配置されている。文字サイズは拡大した配置領域に合わせて拡大されている。なお、図7(e)、(f)のような拡大状態から、再度縮小し配置領域に文字が収まらないと判定された時点で、図7(a)、(b)、(c)、(d)のいずれかに遷移する。
【0029】
次に、配置領域の一部が表示領域上に表示されている場合における表示データ例を説明する。具体的には、図8(a)のような拡大率を上げた場合、図8(c)のような表示範囲を動かしたために配置領域が表示領域の中心から外れた場合が挙げられる。先に述べたように、配置部206の処理ステップS401では、表示領域上における配置領域の面積S1を求める。よって、配置領域の一部が表示領域上に表示されている場合では、配置領域の面積のうち表示領域上に表示されている部分領域のみがS1となる。これを踏まえて図8(a)、図8(c)から合成情報を生成する例の詳細を説明する。
【0030】
図8(a)では表示領域上に表示されている文字配置領域の面積S1は元の画像の配置領域の一部分ではあるが、S1に文字を配置した場合の文字サイズT1は下限文字サイズより十分大きい。よって、文字サイズT1で文字コードを一覧表示にした固定表示データを生成し、合成する。図8(b)は図8(a)の合成情報である。
【0031】
図8(c)における文字配置領域の面積S1に文字を配置した場合の文字サイズT1は下限文字サイズを下回る。このため、順次表示データを生成する。図8(d)、(e)は図8(c)の合成情報の一例である。本実施形態では1文字単位で順次表示させるパターン(図5(d)に該当)で表示データを生成した。図8(d)は表示データ静止状態、図8(e)は表示データ動作状態となる。
【0032】
なお、拡大率をさらに上げた場合もしくは、配置領域がさらに表示領域の中心から外れた場合など、配置領域が表示領域上に存在するが文字領域は存在しないケースも想定される。こういった例では、例外処理として配置部206をスキップする処理を追加してもよい。
【0033】
以上のように、本実施形態によれば、情景画像中の文字領域を抽出し変換した後の合成において、変換後の文字コードが表示領域上の配置領域に配置する際の文字サイズに基づいて表示データを生成し、配置することで、変換後の文字の視認性が確保できる。
【0034】
次に、本発明の第2の実施形態について説明する。先ず、第1の実施形態に挙げた順次表示データおよび合成情報の派生例について図9を用いて説明する。
【0035】
図7では、認識部203で認識した文字および変換部204で変換した文字の文字組み方向はともに横であった。しかし、認識部203で文字領域の文字コードの文字組み方向が縦、変換後の文字組み方向は横と、2つの文字組み方向が異なる場合がありえる。このような場合、変換後の文字コードを回転させてから配置判定をするか否かの判断が必要になる。変換後の文字コードの回転判定には、下記の方法が考えられる。
【0036】
変換前後の文字方向の組み合わせによって予め変換後の文字コードの回転方向を決めておく。具体的には、文字組み方向が変換前は縦、変換後は横であれば、変換後の文字を90度回転させてから配置部206へ遷移すると定義しておく。変換後の文字コードを回転前、回転後についてそれぞれ配置判定を行い、文字サイズの大きい方を採用する。配置領域の縦横の長さの比率を算出し、横の方が縦に比べて長ければ横書きを採用、縦の方が長ければ、横書きを90度回転させたものを採用する。この際、横書きを配置する場合には配置領域が縦に長い構成であっても、十分な横の長さがあれば横書きにする等の考慮も加える。変換後の文字コードのうち、最も文字数の多い単語が折り返しなく横書きで配置できれば横書きを採用、そうでなければ横書きを90度回転させたものを採用する。
【0037】
以上に挙げた方法のいずれかで変換後の文字コードの回転が必要かを判定する。実際の処理では以下の通りになる。図9(a)を入力し、認識部において縦書きで”立入禁止”と文字が認識できたとする。これを英語に変換させた文字コード”DO NOT ENTER”の文字組み方向は横方向となる。つまり、文字組み方向が変換前は縦、変換後は横となる。このため先にあげた回転判定のいずれかを実施する。その結果、”DO NOT ENTER”は90度回転させる、かつ、配置領域に収まらないと判定され、90度回転させた文字コードから順次表示データを生成する。
【0038】
合成情報の例が図9(b)、(c)となる。図9(b)、(c)は変換した文字コード”DO NOT ENTER”を横書きのまま90度回転させ、下から上へスクロール表示している。図7では、画像上に表示データがある旨はアイコンを表示していたが、図9(b)、(c)のように、配置領域境界の色を変える、フラッシュさせるなどの強調処理をして提示してもよい。この場合の順次表示データの動作/停止は配置領域上をタップする、603の操作ボタンのうちいずれかを押下する、603の操作ボタンのうちいずれかを押下して配置領域を選択し、603の操作ボタンのうちいずれかを押下する、の操作のいずれかで実行される。
【0039】
次に、本発明の第3の実施形態について説明する。第1の実施形態での配置部206内の判定部207において、表示領域上の配置面積に換後の文字コードを配置する場合の文字サイズと、予め設定した下限文字サイズと比較して配置の可否判定をしていた。しかし、配置後の文字サイズが目視可能かを判定できるのであれば他の方法でもよい。また、配置後の文字サイズが目視できないと判定された場合に表示データ生成部208で生成される表示データは、順次表示データ以外であってもよい。第3の実施形態の配置部206について、図10を用いて説明する。なお、図4と同一の番号の処理は第1の実施形態と同じであるため、説明は省く。
【0040】
S1001では、変換部204で変換後の文字コードの表示領域上での配置面積S2を求める。配置面積S2の算出は、元の画像の文字サイズと変換後の文字コードの文字数を積算すればよい。また、変換後の文字のサイズを予め設定しておき、その設定した文字サイズと文字コードの文字数を掛け合わせてもよい。S1002では、表示領域上の配置領域の面積S1と変換後の文字コードの配置面積S2を比較し、変換後の文字コードが配置領域に収まるかを判定する。S1よりS2が小さい場合(S1≧S2)は変換後の文字コードは目視可能なサイズで配置領域に収まると判断し、S404へ遷移する。S1よりS2が大きい場合(S1<S2)は、変換後の文字コードは現在の配置領域に収まらないと判断し、S1003へ遷移する。S1003では、配置領域に収まるように文字コードを要約した表示データを生成する。例えば、入力画像が図11(a)から抽出された文字領域から”自転車通行可 ここから”の文字コードが得られ、”Passable bicycle lane”、”From here”と変換されたとする。しかし、これを配置領域に収めることはできないため、公知の文書要約技術を用いて元の内容として同一な”Bike OK”、”Here”に要約された表示データが生成される。図11(b)は本実施形態で生成された合成情報の一例である。
【0041】
次に、本発明の第4の実施形態について説明する。以上の実施形態では順次表示データおよび要約表示データについて説明した。本実施形態では配置部206のS404で生成する固定表示データの派生例について説明する。
【0042】
第1の実施形態で説明した固定表示データ(図7(e))は、元の文字領域の配置と同じ1行で配置していた。しかし、固定表示データの文字の配置は必ずしも元の文字領域の配置と同一でなくてもよく、公知の文字再配置技術を用いて再レイアウトしてもよい。
【0043】
第2の実施形態で挙げたように、固定表示データであっても、変換前後の文字コードの文字組み方向が異なる場合がありえる。このような場合、変換後の文字コードを回転させてから配置判定をするか否かの判断が必要になる。例えば、図13(a)は縦書きの日本語だが、これを横書き言語の英語に変換するとなると、変換後の文字コードを回転させてから配置判定をするか否かの判断を実行する。変換後の文字コードの回転判定には、下記の方法が考えられる。変換前後の文字方向の組み合わせによって予め変換後の文字コードの回転方向を決めておく。具体的には、文字組み方向が変換前は縦、変換後は横であれば、変換後の文字を90度回転させてから配置部206へ遷移すると定義しておく。変換後の文字コードを回転前、回転後についてそれぞれ配置判定を行い、文字サイズの大きい方を採用する。配置領域の縦横の長さの比率を算出し、横の方が縦に比べて長ければ横書きを採用、縦の方が長ければ、横書きを90度回転させたものを採用する。この際、横書きを配置する場合には配置領域が縦に長い構成であっても、十分な横の長さがあれば横書きにする等の考慮も加える。変換後の文字コードのうち、最も文字数の多い単語が折り返しなく横書きで配置できれば横書きを採用、そうでなければ横書きを90度回転させたものを採用する。
【0044】
以上に挙げた方法のいずれかもしくは組み合わせて変換後の文字コードの回転判定を行う。図13(b)は、図13(a)の文字領域を示していて、1301、1302の文字の大きさが異なる2つの文字領域の集合がある。これらの文字領域は、文字コードの回転判定の結果、横書きのまま配置すると判定される。複数の文字領域の相対的な大きさの差を考慮して、変換後の文字コードは元の文字サイズの相対的な大きさの差を考慮して設定してもよい。変換後の文字コードは、元の文字領域の位置にこだわることなく、公知の文字再配置技術を用いて再レイアウトしてもよい。
【0045】
図12は、1行で文字が配置されていた入力画像(図3(a))を2行に段組み変更した合成情報の例、図13は文字組み方向の判定で横書きのままで配置可能と判定され、文字サイズの相対的な差を考慮しおよび文字レイアウトを再構成した例である。
【0046】
以上、本発明の実施形態について説明をしてきたが、実施にあたって下記に挙げる形態であってもなんら問題ない。
【0047】
本実施形態では、判定部207の判定と表示データ生成部208でのデータ生成は、拡大、縮小の実行時に逐次行うとしている。しかし、画像表示の高速化のため、拡大率ごとの合成情報を予めキャッシュしておき、ユーザから表示指示があった際にはキャッシュしたデータを切り替える方法をとってもよい。
【0048】
文字が配置領域に収まりきれない場合、まず他の前景がない範囲に配置領域を拡大し、固定表示データを配置する方法もある。しかし、配置領域の拡大ができなかった場合、例えば、図8のように配置領域の周囲にオブジェクト(この場合は金網)があった場合には本実施形態で説明した表示データ生成部に遷移し、配置領域に収まるような表示データを生成してもよい。
【0049】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0050】
201:入力画像、202:文字領域抽出部、203:文字認識部、204:変換部、205:配置領域抽出部、206:配置部、207:判定部、208:表示データ生成部、209:合成部、210:合成情報
【技術分野】
【0001】
本発明は、デジタルカメラ等で撮影された情景画中から抽出した文字を変換し表示する技術に関するものである。
【背景技術】
【0002】
近年、デジタルカメラは情景を撮影するだけでなく、情景中の文字情報を記録するために用いられるケースが増えてきている。また、記録した画像を活用するために、情景画像から文字情報を抽出し、翻訳等、文字情報をユーザが利用しやすい形態に変換されることも多い。
【0003】
例えば、特許文献1には、観光案内掲示板、建造物、看板、パンフレット、レストランのメニュー等々に記述されている文字を、カメラ画像データとして取り込み、文字認識して翻訳する技術が開示されている。また、翻訳後の文字情報を元の画像に反映させる場合、原文と訳文の文字数の変化が発生する。このため、特許文献2には、文書を対象とした翻訳装置であって、自動訳文の文字の大きさ等を自動的に変え、元の原文位置に訳文を適切に埋め込む技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平09−138802号公報
【特許文献2】特開平07−013969号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に開示される技術は、ユーザに情報を提示するのは文字の翻訳結果だけであるが、結果表示は文字だけより文字と画像と重ね合わせて表示させた方が一覧できるので可読性も高い。しかし、翻訳は言語によって文字数が大幅に変動する。このため単純に翻訳後の単語を画像の文字領域に配置しても、変換後の単語が情景画中の本来の文字があった領域からはみだしてしまう。このようなケースに、特許文献2に開示されている翻訳後の文字サイズを配置領域に合わせて調整する技術を適用させても、情景画像は文書と比べて文字が配置可能な領域の面積が大幅に狭いため、翻訳後の文字が小さくなりすぎる可能性がある。また、デジタルカメラに付属する画像表示装置は撮影画像を等倍率で表示できるほどは大きくないので、表示領域上では撮影画像を縮小した画像を表示する。このような場合、ユーザは見たい被写体があれば、その被写体の領域を拡大する操作をするので、一枚の撮影画像であってもユーザに見えている文字領域の大きさは変化する。このため、見た目の画像表示にあった読みやすい文字情報を提供する必要がある。
【0006】
そこで、本発明の目的は、画像中の文字に翻訳等の改編処理しても画像中の文字の視認性を保つことにある。
【課題を解決するための手段】
【0007】
本発明の画像処理装置は、画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識手段と、前記文字コードを用いて表示用の表示データを生成する生成手段と、前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置手段と、を備えたことを特徴とする。
【発明の効果】
【0008】
本発明によれば、画像中の文字に翻訳等の改編処理しても画像中の文字の視認性を保つことができる。
【図面の簡単な説明】
【0009】
【図1】本発明の実施形態に係る画像処理装置のシステム構成を示す図である。
【図2】本発明の実施形態に係る画像処理装置の機能的な構成を示す図である。
【図3】入力画像、文字領域、配置領域、合成情報の一例を示す図である。
【図4】配置部の処理を示すフローチャートである。
【図5】順次表示データの例を示す図である。
【図6】表示領域をもつ入力機器を示す図である。
【図7】表示領域上の合成情報の例を示す図である。
【図8】表示領域上の合成情報の例を示す図である。
【図9】第2の実施形態における合成情報の例を示す図である。
【図10】第3の実施形態における配置部の処理を示すフローチャートである。
【図11】第3の実施形態における合成情報の例を示す図である。
【図12】第4の実施形態における固定表示データの合成情報の例を示す図である。
【図13】第4の実施形態における固定表示データの合成情報の例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。なお、以下に説明する実施形態は飽くまでも本発明の適用例であり、本発明の範囲を限定する趣旨のものではない。
【0011】
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係る画像処理装置のシステム構成を示す図である。図1において、101は、本実施形態の実行プログラムを実行するCPUである。102は、RAM(Random Access Memory)である。処理プログラムや入出力データはRAM上に展開されて処理される。106は、処理対象となる画像データや処理済の電子ファイルを記憶する記憶装置である。110は、処理データを外部から入力するための入力装置である。111は、処理データを外部に表示するための表示装置である。デジタルカメラ等の入力装置110から入力された画像データは、ハードディスク等の記憶装置に入力データ108として記憶される。記憶装置に記憶されている処理プログラム107は、RAM102上の処理プログラム展開領域103に展開され、CPU101によって実行される。処理プログラムは入力データを記憶装置から呼び出し、RAM102上の入力データ領域104を展開する。処理プログラムは入力データに対して処理を施し、RAM102上の出力データ領域105に処理結果を出力し、記憶装置に出力データ109として保存する。出力データはディスプレイ等の表示装置111に出力される。なお、CPU101、RAM102、記憶装置106は入力装置110の内部に組み込まれていてもよいし、入力装置110の外部装置として存在してもよい。また、表示装置111は入力装置110に付属していてもよい。例えば、入力装置110がデジタルカメラであれば、本体に付属する表示画面が表示装置111となる。
【0012】
図2は、第1の実施形態に係る画像処理装置の機能的な構成を示す図である。本実施形態では、各々の機能ブロックの概略を一通り説明した後、本実施形態の要点となる機能の詳細及び生成したデータの表示例について説明する。
【0013】
図2の201は、入力装置110から入力される入力画像である。201の具体例を図3(a)の301に挙げる。図3(a)の301には風景と交通標識が被写体となっている。本実施形態では301を例にその後の処理についての詳細を説明する。図2の202は、入力画像から文字が存在する領域、すなわち看板文字の部分を抽出する文字領域抽出部である。ここでは公知技術を用いればよく、例えば特開2009−123206号に開示される技術が挙げられる。この本従来技術では以下の方法で文字領域を抽出している。入力画像からエッジ画像を生成し、エッジ画像から連結画素塊(Connected Component、以下CCと称す)を生成する。CCの大きさなどの特徴量から文字らしいと推定される候補CCの座標位置をハフ変換した結果、直線に並ぶ候補CC群を文字領域と判定する。
【0014】
図3(b)の302は入力画像301から抽出した文字領域を示している。図2の203は文字領域抽出部202によって抽出された文字領域について文字認識を行い、認識された文字を文字コードに変換する文字認識部である。ここでは公知の文字認識技術を用いればよく、本実施形態では文字認識処理で得られた文字に関する情報、すなわち、文字コードが生成されたとする。ほかにも認識処理で得られた文字領域に関する情報、例えば、文字領域の外接矩形の座標情報、文字の色なども先の文字コードと合わせて文字情報として出力する。なお、本実施形態では文字領域302から”歩行者優先”の文字コードが得られたとする。
【0015】
図2の204は、文字認識部203によって生成された文字コードを、配置に必要な面積が異なる文字コードに変換する変換部である。即ち、他言語への翻訳、漢字を平仮名にする、同等の意味で平易な用語に置き換える等を指す。例えば、日本語の”歩行者優先”を英語に翻訳すると、”Yield to Pedestrians”と配置に必要な面積の異なる文字コードに変換したことになる。また、日本語の”歩行者優先”をすべて平仮名にすると、”ほこうしゃゆうせん”、平易な用語に置き換えると、”あるくひとがさき”となる。本実施形態では日本語の”歩行者優先”を、英語の”Yield to Pedestrians”としたとして説明を進める。
【0016】
図2の205は、入力画像から文字が配置されている配置領域を抽出する配置領域抽出部である。配置領域とは、看板文字の下地部分となる看板本体を指す。配置領域の抽出には、公知のナンバープレート本体を認識する技術を用い、抽出された領域を配置領域とすればよい。例えば、特開2009−151759には次のような技術が開示されている。入力画像からエッジ画像を生成し、エッジ強度が規定値以上の画素を抽出する。ここで抽出した画素位置をハフ変換し、変換結果の線分で囲まれた領域をナンバープレート本体の領域としている。
【0017】
図3(c)の303は、入力画像301から抽出した配置領域を示している。図2の206は、変換部204で変換した文字情報を205で抽出した配置領域に配置する配置部である。配置部206は、判定部207、表示データ生成部208、合成部209から構成される。配置部206で最も問題になるのは、入力画像から取り出した文字コードデータと変換部で翻訳、要約等の改編処理、変換した文字コードデータの文字数の変動である。
具体例をあげる。入力画像301を入力した場合、文字認識部203で認識される文字コードデータは”歩行者優先”の5文字である。しかし、”歩行者優先”を変換部204で他言語である英語に変換すると、”Yield to Pedestrians”と空白も入れて20文字となり、変換前の文字数の4倍になる。このため、変換後の文字情報を、入力画像上の元の文字の大きさのまま配置領域である看板本体の領域に配置すると、文字が看板の形状、領域からはみ出してしまう(図3(e))。また、変換後の文字情報を配置領域に収めようとすると、大幅に文字サイズを小さくしなければならない(図3(d))。しかも、表示装置111上に表示される画像は、本来入力された入力画像そのもののサイズに比べて小さいので、本来は十分目視可能な大きさで撮影された文字であっても表示領域上では小さく表示されるため可読性が低下する。
【0018】
この問題を解決するため、配置部206は以下の3つの処理部を内包する。207は、変換した文字コードを十分目視可能な大きさで配置領域に配置できるかを判定する判定部である。208は表示領域上で読める大きさの文字サイズを確保し、配置領域に収まるようなデータを生成する表示データ生成部208である。209は表示データを配置領域に合成する合成部である。配置部206については、後ほど詳細に説明する。図2の210は配置部206にて入力画像に変換後の文字情報を合成した合成情報である。合成情報の表示例については、後ほど説明する。
【0019】
次に、配置部206についての詳細を説明する。図4は配置部206の処理を示すフローチャートである。S401、S402、S403が判定部207に、S404、S405が表示データ生成部208に、S406、S407は合成部209に該当する。以下、各ステップについて説明する。
【0020】
S401では、配置領域抽出部205で抽出した配置領域が表示装置111上に表示される面積S1を求める。S402では、S401で算出した面積S1に対し、変換後の文字コードを配置する場合の文字サイズT1を算出する。S403では、文字サイズT1と予め設定した下限文字サイズと比較する。下限文字サイズとは、表示装置111上において、人の目で文字が読める最低の文字サイズである。下限文字サイズより文字サイズT1が大きければ変換後の文字コードは配置領域に収まると判断し、S404へ遷移する。文字サイズT1が下限文字サイズより小さい場合は配置領域に収まらないと判断し、S405へ遷移する。S404では、S403で算出した文字サイズT1で文字コードを一覧表示にした固定表示データを生成し、S406へ遷移する。S405では、文字コードを配置領域に収まるように順次文字を配置する順次表示データを生成し、S406へ遷移する。
具体的な順次表示データの例は後ほど説明する。S406では、表示データを配置する前準備として配置領域にもともと存在していた文字を消す。具体的には、配置領域の文字領域以外の色情報の平均をとり、その色で文字領域を塗りつぶす。なお、塗りつぶす対象は配置領域全体であってもよい。S407では、表示用データを配置領域に配置する。表示データを配置した合成情報の例については後ほど説明する。
【0021】
次に、表示データ生成部208で順次生成される表示データの具体例を説明する。なお、本実施形態では変換後の文字コード”Yield to Pedestrians”を例にして順次表示データを図示する。
【0022】
図5は、文字コードを配置領域に収まるように順次文字を配置する順次表示データの例を示す図である。図5(a)は、文字コード全体”Yield to Pedestrians”を一般的なスクロール表示、すなわち右から左へ連続して文字コード全体を移動させる表示データである。時間軸としては、501、502、503、501・・・と遷移する。また、文字コード中の単語単位に分けて順次表示させてもよい。図5(b)では、文字コード全体を”Yield””to””Pedestrians”の3つの単語に分割し、それぞれの単語を順次表示させる。時間軸としては504、505、506、504・・・と遷移する。図5(b)の発展形として、図5(c)のように分割した単語の前後の合わせても配置領域に収まるならば、2つ以上の単語を同時に配置して表示してもよい。図5(c)では、”Yield””to”と合わせて配置した507と”Pedestrians”508を交互に表示する。また、配置領域が小さい場合などには、1文字単位で順次表示させてもよい。図5(d)は”Y”,”i”,”e”と1文字ごとに表示させた例である。時間軸としては509、510、511と遷移し、511の後も文字コードの次の文字を1文字ごとに表示させる。
【0023】
今まで例示した(a)〜(d)では、文字サイズは一定とし、配置する位置を変更させて順次表示させていたが、文字サイズ或いは表示領域の大きさ等の形状も変化させてもよい。例えば、図5(e)の512は文字コードを配置領域に収まるサイズとし、次に文字サイズを下限文字サイズまで大きくさせる。513は文字サイズ拡大の途中経過であり、515は目視可能な下限文字サイズまで拡大した例である。515以降の文字表示は先に説明した図5(a)、(b)、(c)、(d)のいずれかに準じる。なお、図5に挙げたパターンのうち、どのパターンを用いるかはユーザの指示で予め決めておく。
【0024】
次に、順次表示データを配置領域に配置した合成情報の表示例について説明する。なお、順次表示データは図5(a)に挙げたような文字コードを連続してスクロール移動させたものを代表例として図示するが、順次表示データのどのパターンでも適用できる。合成情報は図6に挙げるような一般的なデジタルカメラの表示領域602に表示する。ユーザが操作をする際は、表示領域602上に表示されるアイコンをタップする、もしくは、603にあるボタン群のうちいずれか1つ、もしくは2つ以上の組み合わせを順次押下して実行指示を出す。なお、ボタン群603はあくまで一例であり、何らかの操作ができるユーザインタフェースであれば何でもよい。表示領域602上における入力画像301と順次表示データを合成した場合の表示状態について、表示データ静止、表示データ動作、拡大の順で説明する。なお、データ表示時の初期状態は表示データ静止/動作どちらでもよい。
【0025】
図7(a)は順次表示データが静止している例である。順次表示データは少なくとも下限文字サイズと同等、もしくはそれより大きい文字サイズで提示されている。また、701はこの近辺の配置領域上に表示データが存在することを示すアイコンである。このアイコンの図例はあくまで一例であり、何らかの表示がある旨がユーザに理解できる図例であればなんでもよい。図7(a)の表示データはスクロール動作をしていないものとする。表示データを順次表示させるには、図7(a)の状態からアイコン701をタップする。次に、603の操作ボタンのうちいずれかを押下し、603の操作ボタンのうちいずれかを押下してアイコン701を選択し、603の操作ボタンのうちいずれかを押下する操作のいずれかで実行される。
【0026】
図7(b)、(c)、(d)は順次表示データが表示されている様子を示している。3つの図の時系列関係は、(b)、(c)、(d)、(b)、(c)、(d)・・・となり、文字コード”Yield to Pedestrians”が右から左へ連続して移動して表示されている。図7(b)、(c)、(d)には図7(a)の701と同じく、この近辺の配置領域上に表示データが存在することを示すアイコン702、703、704が存在している。なお、現在表示データが動作中である旨がユーザに理解できる図例であればなんでもよい。表示データの順次表示を停止するには、アイコン702、703、704のいずれかをタップする、603の操作ボタンのうちいずれかを押下する、603の操作ボタンのうちいずれかを押下してアイコン702、703,704のいずれかを選択し、603の操作ボタンのうちいずれかを押下する、の操作のいずれかで実行される。
【0027】
図7(e)、(f)は表示領域上の画像を拡大した場合の表示データの様子を示している。表示領域の拡大は、ユーザが603の操作ボタンのうちいずれかを押下することで実行される。文字コードを順次表示するか否かの判定は、判定部207で実行する表示領域上の配置領域に配置できる文字サイズの大きさによって決定する。このとき、拡大操作で表示領域上の配置領域の面積は変化するので、判定部207が動作し、文字コードの配置の可否を判定する。
【0028】
図7(e)は目視可能な下限文字サイズですべての文字コードを配置領域内で収めることができると判定されたため、固定表示データが配置されている。さらに拡大をした図7(f)でも固定表示データが配置されている。文字サイズは拡大した配置領域に合わせて拡大されている。なお、図7(e)、(f)のような拡大状態から、再度縮小し配置領域に文字が収まらないと判定された時点で、図7(a)、(b)、(c)、(d)のいずれかに遷移する。
【0029】
次に、配置領域の一部が表示領域上に表示されている場合における表示データ例を説明する。具体的には、図8(a)のような拡大率を上げた場合、図8(c)のような表示範囲を動かしたために配置領域が表示領域の中心から外れた場合が挙げられる。先に述べたように、配置部206の処理ステップS401では、表示領域上における配置領域の面積S1を求める。よって、配置領域の一部が表示領域上に表示されている場合では、配置領域の面積のうち表示領域上に表示されている部分領域のみがS1となる。これを踏まえて図8(a)、図8(c)から合成情報を生成する例の詳細を説明する。
【0030】
図8(a)では表示領域上に表示されている文字配置領域の面積S1は元の画像の配置領域の一部分ではあるが、S1に文字を配置した場合の文字サイズT1は下限文字サイズより十分大きい。よって、文字サイズT1で文字コードを一覧表示にした固定表示データを生成し、合成する。図8(b)は図8(a)の合成情報である。
【0031】
図8(c)における文字配置領域の面積S1に文字を配置した場合の文字サイズT1は下限文字サイズを下回る。このため、順次表示データを生成する。図8(d)、(e)は図8(c)の合成情報の一例である。本実施形態では1文字単位で順次表示させるパターン(図5(d)に該当)で表示データを生成した。図8(d)は表示データ静止状態、図8(e)は表示データ動作状態となる。
【0032】
なお、拡大率をさらに上げた場合もしくは、配置領域がさらに表示領域の中心から外れた場合など、配置領域が表示領域上に存在するが文字領域は存在しないケースも想定される。こういった例では、例外処理として配置部206をスキップする処理を追加してもよい。
【0033】
以上のように、本実施形態によれば、情景画像中の文字領域を抽出し変換した後の合成において、変換後の文字コードが表示領域上の配置領域に配置する際の文字サイズに基づいて表示データを生成し、配置することで、変換後の文字の視認性が確保できる。
【0034】
次に、本発明の第2の実施形態について説明する。先ず、第1の実施形態に挙げた順次表示データおよび合成情報の派生例について図9を用いて説明する。
【0035】
図7では、認識部203で認識した文字および変換部204で変換した文字の文字組み方向はともに横であった。しかし、認識部203で文字領域の文字コードの文字組み方向が縦、変換後の文字組み方向は横と、2つの文字組み方向が異なる場合がありえる。このような場合、変換後の文字コードを回転させてから配置判定をするか否かの判断が必要になる。変換後の文字コードの回転判定には、下記の方法が考えられる。
【0036】
変換前後の文字方向の組み合わせによって予め変換後の文字コードの回転方向を決めておく。具体的には、文字組み方向が変換前は縦、変換後は横であれば、変換後の文字を90度回転させてから配置部206へ遷移すると定義しておく。変換後の文字コードを回転前、回転後についてそれぞれ配置判定を行い、文字サイズの大きい方を採用する。配置領域の縦横の長さの比率を算出し、横の方が縦に比べて長ければ横書きを採用、縦の方が長ければ、横書きを90度回転させたものを採用する。この際、横書きを配置する場合には配置領域が縦に長い構成であっても、十分な横の長さがあれば横書きにする等の考慮も加える。変換後の文字コードのうち、最も文字数の多い単語が折り返しなく横書きで配置できれば横書きを採用、そうでなければ横書きを90度回転させたものを採用する。
【0037】
以上に挙げた方法のいずれかで変換後の文字コードの回転が必要かを判定する。実際の処理では以下の通りになる。図9(a)を入力し、認識部において縦書きで”立入禁止”と文字が認識できたとする。これを英語に変換させた文字コード”DO NOT ENTER”の文字組み方向は横方向となる。つまり、文字組み方向が変換前は縦、変換後は横となる。このため先にあげた回転判定のいずれかを実施する。その結果、”DO NOT ENTER”は90度回転させる、かつ、配置領域に収まらないと判定され、90度回転させた文字コードから順次表示データを生成する。
【0038】
合成情報の例が図9(b)、(c)となる。図9(b)、(c)は変換した文字コード”DO NOT ENTER”を横書きのまま90度回転させ、下から上へスクロール表示している。図7では、画像上に表示データがある旨はアイコンを表示していたが、図9(b)、(c)のように、配置領域境界の色を変える、フラッシュさせるなどの強調処理をして提示してもよい。この場合の順次表示データの動作/停止は配置領域上をタップする、603の操作ボタンのうちいずれかを押下する、603の操作ボタンのうちいずれかを押下して配置領域を選択し、603の操作ボタンのうちいずれかを押下する、の操作のいずれかで実行される。
【0039】
次に、本発明の第3の実施形態について説明する。第1の実施形態での配置部206内の判定部207において、表示領域上の配置面積に換後の文字コードを配置する場合の文字サイズと、予め設定した下限文字サイズと比較して配置の可否判定をしていた。しかし、配置後の文字サイズが目視可能かを判定できるのであれば他の方法でもよい。また、配置後の文字サイズが目視できないと判定された場合に表示データ生成部208で生成される表示データは、順次表示データ以外であってもよい。第3の実施形態の配置部206について、図10を用いて説明する。なお、図4と同一の番号の処理は第1の実施形態と同じであるため、説明は省く。
【0040】
S1001では、変換部204で変換後の文字コードの表示領域上での配置面積S2を求める。配置面積S2の算出は、元の画像の文字サイズと変換後の文字コードの文字数を積算すればよい。また、変換後の文字のサイズを予め設定しておき、その設定した文字サイズと文字コードの文字数を掛け合わせてもよい。S1002では、表示領域上の配置領域の面積S1と変換後の文字コードの配置面積S2を比較し、変換後の文字コードが配置領域に収まるかを判定する。S1よりS2が小さい場合(S1≧S2)は変換後の文字コードは目視可能なサイズで配置領域に収まると判断し、S404へ遷移する。S1よりS2が大きい場合(S1<S2)は、変換後の文字コードは現在の配置領域に収まらないと判断し、S1003へ遷移する。S1003では、配置領域に収まるように文字コードを要約した表示データを生成する。例えば、入力画像が図11(a)から抽出された文字領域から”自転車通行可 ここから”の文字コードが得られ、”Passable bicycle lane”、”From here”と変換されたとする。しかし、これを配置領域に収めることはできないため、公知の文書要約技術を用いて元の内容として同一な”Bike OK”、”Here”に要約された表示データが生成される。図11(b)は本実施形態で生成された合成情報の一例である。
【0041】
次に、本発明の第4の実施形態について説明する。以上の実施形態では順次表示データおよび要約表示データについて説明した。本実施形態では配置部206のS404で生成する固定表示データの派生例について説明する。
【0042】
第1の実施形態で説明した固定表示データ(図7(e))は、元の文字領域の配置と同じ1行で配置していた。しかし、固定表示データの文字の配置は必ずしも元の文字領域の配置と同一でなくてもよく、公知の文字再配置技術を用いて再レイアウトしてもよい。
【0043】
第2の実施形態で挙げたように、固定表示データであっても、変換前後の文字コードの文字組み方向が異なる場合がありえる。このような場合、変換後の文字コードを回転させてから配置判定をするか否かの判断が必要になる。例えば、図13(a)は縦書きの日本語だが、これを横書き言語の英語に変換するとなると、変換後の文字コードを回転させてから配置判定をするか否かの判断を実行する。変換後の文字コードの回転判定には、下記の方法が考えられる。変換前後の文字方向の組み合わせによって予め変換後の文字コードの回転方向を決めておく。具体的には、文字組み方向が変換前は縦、変換後は横であれば、変換後の文字を90度回転させてから配置部206へ遷移すると定義しておく。変換後の文字コードを回転前、回転後についてそれぞれ配置判定を行い、文字サイズの大きい方を採用する。配置領域の縦横の長さの比率を算出し、横の方が縦に比べて長ければ横書きを採用、縦の方が長ければ、横書きを90度回転させたものを採用する。この際、横書きを配置する場合には配置領域が縦に長い構成であっても、十分な横の長さがあれば横書きにする等の考慮も加える。変換後の文字コードのうち、最も文字数の多い単語が折り返しなく横書きで配置できれば横書きを採用、そうでなければ横書きを90度回転させたものを採用する。
【0044】
以上に挙げた方法のいずれかもしくは組み合わせて変換後の文字コードの回転判定を行う。図13(b)は、図13(a)の文字領域を示していて、1301、1302の文字の大きさが異なる2つの文字領域の集合がある。これらの文字領域は、文字コードの回転判定の結果、横書きのまま配置すると判定される。複数の文字領域の相対的な大きさの差を考慮して、変換後の文字コードは元の文字サイズの相対的な大きさの差を考慮して設定してもよい。変換後の文字コードは、元の文字領域の位置にこだわることなく、公知の文字再配置技術を用いて再レイアウトしてもよい。
【0045】
図12は、1行で文字が配置されていた入力画像(図3(a))を2行に段組み変更した合成情報の例、図13は文字組み方向の判定で横書きのままで配置可能と判定され、文字サイズの相対的な差を考慮しおよび文字レイアウトを再構成した例である。
【0046】
以上、本発明の実施形態について説明をしてきたが、実施にあたって下記に挙げる形態であってもなんら問題ない。
【0047】
本実施形態では、判定部207の判定と表示データ生成部208でのデータ生成は、拡大、縮小の実行時に逐次行うとしている。しかし、画像表示の高速化のため、拡大率ごとの合成情報を予めキャッシュしておき、ユーザから表示指示があった際にはキャッシュしたデータを切り替える方法をとってもよい。
【0048】
文字が配置領域に収まりきれない場合、まず他の前景がない範囲に配置領域を拡大し、固定表示データを配置する方法もある。しかし、配置領域の拡大ができなかった場合、例えば、図8のように配置領域の周囲にオブジェクト(この場合は金網)があった場合には本実施形態で説明した表示データ生成部に遷移し、配置領域に収まるような表示データを生成してもよい。
【0049】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0050】
201:入力画像、202:文字領域抽出部、203:文字認識部、204:変換部、205:配置領域抽出部、206:配置部、207:判定部、208:表示データ生成部、209:合成部、210:合成情報
【特許請求の範囲】
【請求項1】
画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識手段と、
前記文字コードを用いて表示用の表示データを生成する生成手段と、
前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置手段と、
を備えたことを特徴とする画像処理装置。
【請求項2】
前記表示データに基づく表示領域は、前記文字領域とは異なる面積の領域であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記表示データは、前記文字を翻訳したデータであることを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記生成手段は、文字コードの内容を要約したデータにすることを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記生成手段は、文字コードの配置を変更したデータにすることを特徴とする請求項1に記載の画像処理装置。
【請求項6】
画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識工程と、
前記文字コードを用いて表示用の表示データを生成する生成工程と、
前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置工程と、
を備えたことを特徴とする画像処理方法。
【請求項7】
請求項6に記載の方法の各工程をコンピュータにて実行させるプログラム。
【請求項1】
画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識手段と、
前記文字コードを用いて表示用の表示データを生成する生成手段と、
前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置手段と、
を備えたことを特徴とする画像処理装置。
【請求項2】
前記表示データに基づく表示領域は、前記文字領域とは異なる面積の領域であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記表示データは、前記文字を翻訳したデータであることを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記生成手段は、文字コードの内容を要約したデータにすることを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記生成手段は、文字コードの配置を変更したデータにすることを特徴とする請求項1に記載の画像処理装置。
【請求項6】
画像中の文字領域を抽出して文字を認識し、文字コードを生成する文字認識工程と、
前記文字コードを用いて表示用の表示データを生成する生成工程と、
前記表示データに応じて前記文字領域の形状を設定して前記表示データに応じた文字を配置する配置工程と、
を備えたことを特徴とする画像処理方法。
【請求項7】
請求項6に記載の方法の各工程をコンピュータにて実行させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2013−45226(P2013−45226A)
【公開日】平成25年3月4日(2013.3.4)
【国際特許分類】
【出願番号】特願2011−181499(P2011−181499)
【出願日】平成23年8月23日(2011.8.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年3月4日(2013.3.4)
【国際特許分類】
【出願日】平成23年8月23日(2011.8.23)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]