(58)【調査した分野】(Int.Cl.,DB名)
前記予備画像の前記エッジの前記静マージンの前記サイズは、前記少なくとも1つの計算処理装置によって、前記予備画像のエッジの領域におけるピクセル値に基づいて算出される、請求項1に記載の装置。
【発明を実施するための形態】
【0023】
本明細書に組み込まれ、本明細書の部分を構成する添付の図面は、実施例を示し、記述と共に、本発明の原理を説明し、例示する。
【0024】
以下の詳細な記述において、添付の図面を参照する。図面において、同様の機能を有する要素には同様の参照符号が付される。上記添付の図面は例示であり、本発明を限定するものではない。特定の実施例及び実装は例示的な実施例の原理と矛盾しない。これらの実装は例示的な実施例を当業者が実施することができる程度に十分詳細に記述されている。例示的な実施例の範囲及び思想から離脱することなく、その他の実装が使用されてもよく、様々な要素の構成の変更及び/または置き換えが行われてもよいことが理解されるべきである。したがって、以下の詳細な記載は限定的に解釈されるべきではない。さらに、記述される本発明の様々な実施例は、汎用計算機で稼働するソフトウェアの形態で実装されてもよいし、専用ハードウェアの形態で実装されてもよいし、ソフトウェアとハードウェアとの組み合わせによって実装されてもよい。
【0025】
この出願には、取得されるべき画像(すなわち、まだ取得されていないが、将来取得される可能性がある画像)の推定される品質についてユーザにリアルタイムでフィードバックを提供する例示的な方法及び例示的な装置が記述されている。取得されるべき画像の品質は、過去に取得された予備画像の品質測定に基づいて推定される。予備画像の品質測定の例は、テキストのページ、もしくは、ページの一つまたは複数のコラムの鮮明さ及びフレーミングを含むが、これらに限定されるものではない。予備画像の品質測定のリアルタイムのフィードバックを提供することによって、カメラ位置を調整することが可能となり、品質測定値を改善することができる。
【0026】
例示的な実施例において、カメラの位置(及びタイミング)が走査もしくは画像認識の実施に適切な品質の画像を生成するために適切であると判断されると、二次的な、もしくは最終の画像が自動的に取得されてもよい。
【0027】
代替的に、例示的な実施例において、取得されるべき画像が適切な品質を有することが推定される程度に品質測定値が適切であることをユーザに示すために、(視認可能な指標もしくは可聴音あるいは可聴トーンなどの)フィードバックがユーザに提供されてもよい。ユーザはそのフィードバックに基づいて写真を取得するタイミングを判断することができる。
【0028】
図1は、画像を取得するように構成されている携帯型装置100の実施例を示す。携帯型装置100は、表示手段105を含み、表示手段105はユーザに情報を表示することができる。情報は、予備画像及び画像品質に関する視認可能なフィードバックを含む。携帯型装置100は命令を実行するためにユーザによって使用される一つもしくは複数のボタン(115、120、125、130)も含むことができる。命令を起動すると、携帯型装置100による動作が行われる。表示手段105は命令を実行するためにユーザによって使用されるタッチ・スクリーン・ディスプレイであってもよい。タッチ・スクリーン・ディスプレイは、ボタン(115、120、125、130)に加えて、もしくは、ボタン(115、120、125、130)に代えて、備えられることができる。命令を実行すると、携帯型装置100による動作が行われる。さらに、携帯型装置100はLEDもしくは電球110を含んでいてもよい。LEDもしくは電球110は画像品質に関する視認可能なフィードバックをユーザに伝達する。
【0029】
実施例は携帯型装置100のカメラによってドキュメントの画像を取得するための指示を提供することができる携帯型装置100で稼働するアプリケーションを含んでもよい。このような実施例において、アプリケーションは外部の支援なしに携帯型装置100で稼働してもよく、アプリケーションは携帯型装置100のカメラへのアクセスのみを必要としてもよい。カメラがドキュメントを撮影しようとするとき、アプリケーションは(以下に記載する)2つの異なる品質スコアを用いてプレビュー・フレームを解析してもよい。品質スコアが変化すると、携帯型装置100は品質スコアをユーザへのフィードバックに変換する。
【0030】
フィードバックは可聴トーン(例えば、音声)を含むことができ、また、視認可能な指標(例えば、携帯型装置100のLED110の色もしくは色合い(hue)の変化、もしくは、表示されるプレビュー画像の変化(例えば、適切なフレーミングを示すためにプレビュー画像のエッジを強調する、など)など)を含んでもよい。当業者には明らかなように、例えば、比較的低いスコアは連続スケールもしくは離散スケールの低周波トーンに対応し、比較的高いスコアは連続スケールもしくは離散スケールの高周波トーンに対応してもよいし、異なるトーンを使用してもよい。
【0031】
フィードバックは、スコアに基づいて色もしくは色合いを変更するように携帯型装置100のLED110を制御することによって提供されてもよい。例えば、比較的低いスコアはLED110を赤に変化させることに対応し、比較的高いスコアはLED110を緑に変化させることに対応することができる。LED110は連続的なスケールで変化してもよいし、離散的なスケールで変化してもよい。当業者には明らかであるように、代替的な色構成が使用されてもよい。
【0032】
携帯型装置100は画像を取得する際に、現在のフィードバック・モードに応じて、異なる可聴トーンを再生してもよい。さらに、LED110はスコアが範囲を越えることを示すためにある色(例えば、青など)でフラッシュを出してもよい。さらに、実施例の応用では、品質スコアに基づいて、物理的なドキュメントの画像を自動的に取得してもよい。代替的に、実施例の応用では、ユーザの手作業による入力(例えば、ボタン115、120、125、130を押下する、タッチ・スクリーン・ディスプレイ105のアイコンを触る、など)に基づいてのみ、物理的なドキュメントの画像を取得するようにしてもよい。
【0033】
図2は、以下に説明する処理の実施例を用いて取得される画像で必要とされる「静マージン」(以下で説明する)の内部エッジの可能な範囲の実施例を示す。
図2には例示的なページ200が示されている。ページ200は8個の区域(205、210、215、220、225、230、235、240)を含む。フレーミング・スコアを判断するために、マージン(静マージン)を、以下で詳細に説明する処理を用いて、推定もしくは測定することができる8個の領域を、8個の区域(205、210、215、220、225、230、235、240)は強調している。「静マージン」はテキストのコラムの間の「溝」もしくはテキストのコラムとページのエッジとの間とのマージン(すなわち、ページのテキスト領域を囲むブランク・スペースの領域)に対応する。8個の領域は、左上区域205、右上区域210、右上横区域215、右下横区域220、左下区域230、右下区域225、左上横区域240、左下横区域235を含む。しかし、静マージンは8個の区域に分割される必要はない。当業者には明らかなように、8個を越える個数の区域に分割されてもよいし、8個を下回る個数の区域に分割されてもよい。さらに、静マージンの配置及び向きは
図2に示す形状もしくは大きさに限定されない。以下に記載されるように、さらなる分析のために複数の区域に取得画像のエッジ近辺の領域を分割するための任意の形状もしくは大きさであってよい。
【0034】
「プロセス概略」
図3は画像を取得する方法の実施例を示す。上記したように、実施例は、携帯型装置で稼働し、携帯型装置のカメラを制御するアプリケーションを含んでもよい。しかし、実施例は、携帯型装置で稼働するアプリケーションに特に限定されるものではない。代替的に、サーバもしくは任意の他の計算処理装置で稼働し、携帯型装置と通信を行うソフトウェアであってもよいし、ハードウェアであってもよい。
【0035】
図3に示されるように、実施例の方法では、S300で予備画像を取得する。予備画像の取得方法は、電荷結合素子(CCD)による画像取得、能動ピクセル・センサ(APS)による画像取得、もしくは当業者には明らかな任意のその他の画像取得方法であってよいが、これらに限定されるものではない。次に、S305で、予備画像の一つもしくは複数の画像品質測定値(例えば、フレーミング・スコア及び/もしくは鮮明度スコア)が決定される(例えば、取得される、及び/もしくは計算される)。S310及びS315に関して以下で記述されるように、品質測定値に関するフィードバックが提供されてもよい。フィードバックは品質測定値が取得される画像について適切であるか否かを含む。取得される、及び/もしくは、計算される品質測定値は以下で詳細に記述される。
【0036】
S310で、決定された画像品質測定値が評価され、画像品質測定値が画像取得に適切であるか否か判断される(例えば、品質測定値が画像取得の閾値を越えているか否かが判断される)。以下に詳細に記述するように、一つもしくは複数の品質測定値(例えば、鮮明度スコア及び/もしくはフレーミング・スコア)が独立して、もしくは組み合わせで、上記背景に関する記述において概要を記述したドキュメント画像に関するいくつかのもしくは全ての問題を識別するために、もしくはそれらに対処するために使用されてもよい。例えば、ドキュメントの鮮明度スコアは焦点合わせの問題を識別するために使用されることができ、ドキュメントのフレーミング・スコアはフレーミングの問題を識別するために使用されることができる。さらに、ドキュメントの鮮明度スコア及びドキュメントのフレーミング・スコアは、回転、影/照明、及び、深度の変動の問題を識別するために、組み合わせて使用されてもよい。
【0037】
品質測定値が十分高くない場合、S315で画像品質が十分でないことを示すフィードバックがユーザに提供される。上記したように、フィードバックは可聴トーンもしくは音声、及び/もしくは視認可能な指標を含むことができる。品質測定値が適切でないことを示すフィードバックに基づいて、ユーザは携帯型装置の位置を修正し、S300で新しい予備画像を取得することができる。
【0038】
品質測定値が十分高い場合、S320で、画像品質が適切であることを示すフィードバックがユーザに提供される。
【0039】
画像品質測定値が適切である場合、ユーザ入力(例えば、
図1の携帯型装置100のボタン115、120、125、130を押下すること、もしくは、タッチ・スクリーン・ディスプレイ105のアイコンに触れること)を受信することによって、二次画像(すなわち、最終画像)をS325で取得してもよい。もしくは、代替的に、品質測定値が適切である場合、ユーザ入力を要求せずに、自動的に二次画像(すなわち、最終画像)を取得するようにしてもよい。
【0040】
以下で記述する
図4〜7は、
図3のプロセスのS305、S310、S315、S325を実行するために使用されることができる方法の実施例を示す。
【0041】
「品質測定値」
上記したように、予備画像の品質を評価するために、一つもしくは複数の品質測定値を使用することができる。実施例において、鮮明度スコア及びフレーミング・スコア(例えば、以下で記述する静マージンの大きさなど)の双方が使用されてもよい。さらに、実施例のいくつかにおいて、位置揃えもしくは向きの測定値が、カメラのエッジに対するテキストの位置揃えを推定するために使用される品質測定値であってもよい。
【0042】
しかしながら、位置揃えもしくは向きの測定値を計算することは、計算処理的に負荷が高く、したがって、携帯型装置による画像のリアルタイム取得の際に行うことは困難である。したがって、実施例においては、画像の鮮明度の測定値及びフレーミングの測定値(例えば、静マージンの大きさなど)が位置揃えもしくは向きの測定値を計算する必要なく、テキスト・ラインの位置揃えを示す指標を間接的に提供するために使用されてもよい。このように、画像の鮮明度の測定値及びフレーミングの測定値を組み合わせることによって、テキストの位置揃えを間接的に測定することができる。
【0043】
品質測定値の他の例は、動き、もしくは、詳細には、動きの欠如であってもよい。例えば、動きは、携帯型装置において利用可能な加速度計の測定値を読み取ることによって推定されてもよい。加速度計の測定値の読み取りを確認することは、鮮明度の計算値を確認することより、時間を必要としない。したがって、ユーザがカメラをどこかへ向けることを決定した場合すぐに、写真を撮影するための支援となり得る。しかしながら、動きの欠如だけでは画像が鮮明であることを保証しない。不鮮明さは他の原因でも生じ得る。例えば、焦点が合っていない場合などである。したがって、複数の品質測定値が組み合わせられてもよい。
【0044】
「フレーミング・スコア−静マージンの推定」
物理的なドキュメントのページの画像を取得する場合、ユーザは物理的なドキュメントのページ全体の画像を取得してもよいし、ページのテキストのコラムの一部の画像を取得してもよい。ユーザがページ全体の画像を取得しようとしている場合、ページ全体をフレーミングする(撮影する)ためにページのエッジが使用されてもよい。テキストのコラムの一部だけをフレームに収めるために、静マージンの大きさが推定されてもよい。「静マージン」はテキストのコラム間の「溝」もしくはテキストのコラムとページのエッジとの間のマージン(すなわち、ページのテキスト領域を囲むブランク・スペースの領域)に対応する。
【0045】
実施例において、閾値は静マージンの大きさを最小化するように設定されてもよいし、最大化するように設定されてもよい。静マージンの大きさを最大化すると、利用可能な解像度のより多くを使用するために取得画像のほとんどを関心領域が満たすことを保証する。ページの静マージンの内部エッジの許容可能な範囲の例が
図2に示される。
図2において、例示的なページ200は、静マージンが例示的なページ200で測定されることができる8個の領域を強調する8個の区域(205、210、215、220、225、230、235、240)を有している。領域は左上区域205、右上区域210、右上横区域215、右下横区域220、左下区域230、右下区域225、左上横区域240、左下横区域235を含む。しかしながら、当業者には明らかなように、静マージンは8個の区域に分割される必要はなく、8個を越える区域に分割されてもよいし、8個を越えない区域に分割されてもよい。さらに、静マージンの配置及び向きは
図2に示される形状及び大きさに限定されるものではなく、以下に記述されるように、取得画像のエッジ付近の領域をさらなる分析のための複数の区域に分割するための任意の形状もしくは大きさであってよい。
【0046】
実施例において、縦長の向きで取得されたページで、左右の最小の静マージンの大きさは画像の幅の約2%であってよく、左右の最大の静マージンの大きさは画像の幅の約8%であってよい。最小及び最大の上下の静マージンの大きさは最小及び最大の左右の静マージンの大きさと同様であってよい。最大及び最小の静マージンの大きさの変動幅は例示のために記載されただけであり、約2%と約8%との間に特に限定されるものではない。
【0047】
実施例において、以下の条件の一つもしくは複数の下で、フレーミング・スコアは適切であると判断されてよい。
【0048】
a.左右マージンが静マージンの大きさの制限(上記変動幅)に適合し、かつ、上下マージンの少なくとも一方が静マージンの大きさの制限に適合している場合。
【0049】
図8Aに状況を示す。この状況は、例えば、一つもしくは複数のコラムで画像の幅方向を満たすことをユーザが希望する場合に使用される。いくつかの実施例において、コラムの上下の部分は一つの行の部分だけを含むように制限されてもよい。
【0050】
b.上下マージンが静マージンの大きさの制限(上記変動幅)に適合し、かつ、左右マージンの少なくとも一方が静マージンの大きさの制限に適合する場合。
【0051】
この状況を
図8Bに示す。この状況は、例えば、画像の高さ方向を一つのコラムで満たすことをユーザが希望する場合に使用される。いくつかの実施例において、コラムの左もしくは右のエッジは切り取られていてもよい。
【0052】
4つのマージンの全て(上下左右)が静マージンの大きさの制限(上記変動幅)に適合している場合、画像のフレーミング・スコアは適切であると判断されてもよい。
図8Cにこの状況を示す。
【0053】
画素値、テキスト文字位置、特徴点位置(例えば、SIFT(Scale-Invariant Feature Transform)特徴が使用されてもよい)を含む多くの特徴が、静マージンの大きさを識別するために使用されてもよい。さらに、単一の方法に代えて、複数の方法の組み合わせが使用されてもよい。
【0054】
取得されるべき物理的なドキュメントのページは白い背景を有するかもしれないが、雑誌、スライド及びそのほかのドキュメントは白以外の色の背景を有するかもしれない。走査された画像と異なり、携帯型装置を使用して取得される画像は、取得された画像においてマージンもしくはコラムが観察されないページにたいへん近接して、もしくは、他の無関係なオブジェクトが観察されるページからたいへん離れて配置されたカメラによって撮影されるかもしれない。さらに、照明が注意深く制御されない可能性がある。異なる照明条件は、画像の異なる部分で取得された色を変化させるかもしれない。
【0055】
したがって、以下に記載する実施例において、2つの補完的な方法の組み合わせを、静マージンを識別するために使用することができる。この実施例において、補完的な方法は以下の2つを含むことができる。
【0056】
(1)画素ベース方法:均一な背景において動作し、写真を扱うことができる。
(2)文字検出ベース方法:テキストにおいて動作し、画素ベース方法よりも適切に不均一な背景を扱うことができるが、徐々に色が変化する写真は、画素ベース方法と同様には扱うことができない。
【0057】
これらの例示的な方法の各々は以下で詳細に記述される。
【0058】
「画素ベース方法」
特徴として画素値を使用して静マージンの大きさを検出する例示的な方法のブロック・ダイアグラムを
図4及び
図5に示す。
図4は画像全体を処理する方法を示し、
図3のプロセスのS305、S310、S315、S320の実施例を提供する。
図5は、
図4の方法において、画像の部分を構成する個々の区域を処理する方法を示す。
【0059】
画素値を使用して静マージンを調べるために、S400で、画像はまず二値化される(すなわち、画素値は二値フォーマットに変換される)。さらに、実施例のいくつかにおいて、形態ベース、フィルタ・ベース、もしくは、エッジ検出方法などの画像を処理する方法が、例えば、画像を二値化する前、もしくは、後で、画像に適用されてもよい。画像が二値化されると、S405で画像は複数の区域に分割される。区域の各々は、S410で、静マージンの値が許容可能であるか否か判断されるために処理される。エッジに沿った横列もしくは縦列を少数の区域に分割し、各区域における静マージンの値が許容可能であるか否かを判断することによって、画像に現れる傾き量を制御することができる。
図2の上記例では、エッジの各々は2つの区域(左上区域205及び右上区域210;右上横区域215及び右下横区域220;左下区域230及び右下区域225;左上横区域240及び左下横区域235)に分割され、これらの区域はエッジの各々の静マージンを調べるために使用される。区域の各々の処理は、
図5を用いて、以下に詳細に記載する。
【0060】
S415において、画像のエッジの周辺の全ての区域が処理されたか否かが判断される。S415で、まだ処理されていないエッジがあると判断された場合、処理はS400に戻る。S400、S405、S410、S415は、
図3の「画像品質測定値を決定する」ステップ(S305)の例である。
【0061】
S415で、全ての区域が処理されたと判断されると、S420で、全ての区域が適切であるか否か(すなわち、区域の各々が適切な静マージンの大きさを有するか否か)が判断される。実施例のいくつかにおいて、個々の区域の各々は、静マージンの大きさが最小のマージンの大きさ(例えば、画像の高さもしくは幅の2%)よりも大きい場合に、適切な静マージンの大きさを有すると判断される。他の実施例において、個々の区域の各々は、静マージンの大きさが最小のマージンの大きさ(例えば、画像の高さもしくは幅の2%)以上であり、かつ、静マージンの大きさが最大のマージンの大きさ(例えば、画像の高さもしくは幅の8%)以下である場合に、適切な静マージンの大きさを有すると判断される。S420は、
図3の「品質測定値は適切?」判断ステップ(S310)の一例である。
【0062】
エッジの周辺のいずれかの区域が適切でない場合、S430で、エッジが不適切であることを示すフィードバックが提供される。S430は、
図3の「品質測定値に関するフィードバックを提供」(S315)ステップの例である。処理は
図3のS300に戻り、新しい予備画像が取得され、エッジ周辺の全ての区域が適切であると判断されるまで上記処理が繰り返される。
【0063】
エッジの周辺の全ての区域が適切であると判断された場合、静マージンの大きさが適切であると判断され、S425で、エッジが適切であることを示すフィードバックが提供される。S425は
図3の「品質測定値が適切であることを示すフィードバックを提供」ステップ(S320)の一例である。処理は
図3のS325に進むことができるが、S325を実行するか否かは任意である。S325では、最終画像が取得され、光学的文字認識(OCR)のような次の処理が取得された最終画像に実行されてもよい。
【0064】
図5は、
図4のS410における個々の区域の各々を処理する方法を示す。横列もしくは縦列が、いくつかのノイズである可能性のある画素を除いて、全てもしくはほとんど全てが背景画素値(例えば、紙の色)を有する画素であるか否か判断するために、エッジから開始して区域の画素の横列もしくは縦列の各々が処理される。これにより、横列もしくは縦列が背景であるとみなされるか、もしくは、横列もしくは縦列が背景だけではなく前景画素値(例えば、テキストの色、ダイアグラム、写真)を有する画素を十分含むとみなされる。解析される区域の横列もしくは縦列の各々は、画像のエッジにもっとも近接する横列もしくは縦列から開始して、連続的に評価される。
【0065】
区域の解析を開始する際に、S500で、横列もしくは縦列の計数手段を0に設定する。横列/縦列の計数手段は静マージンの画素幅を決定するために使用される。S505において、前景画素値(例えば、取得される物理的なドキュメントのページに印刷されているテキスト、ダイアグラムもしくは写真の画素値)が、色に基づいて、背景画素値(例えば、取得される物理的なドキュメントのページのブランク領域の画素値)と区別されることができるように、二値画像の背景色が予め決定されているか否かが判断される。
【0066】
二値画像の背景色がまだ決定されていない場合、S510で、画像のエッジに近接する横列もしくは縦列について、画素値が0である画素数が計数され、画素値が1である画素数が計数される。優勢な色(すなわち、横列もしくは縦列により多くある1もしくは0)が背景色として設定される。S515において、優勢でない画素の数(例えば、優勢な画素値が「1」であると判断されると、値が「0」である画素の数であり、優勢な画素値が「0」であると判断されると、値が「1」である画素の数である。)が閾値を越えているか否かが判断される。
【0067】
優勢でない画素の数が閾値を越えないと判断されると、S520で、優勢な色が背景画像の色として設定される。S520で、優勢な色が背景色として設定された後、S530で、横列/縦列計数手段は1増加される。したがって、横列/縦列計数手段は、静かな横列もしくは静かな縦列であると判断された画像の外側のエッジから連続する横列もしくは縦列の数を示す。
【0068】
S530で、横列/縦列計数手段が1加算されると、処理はS505に戻り、解析された横列もしくは縦列の内側に位置する横列もしくは縦列に対して解析を行う。したがって、S505で、二値画像の背景画素値が以前に決定されているか否か、再び判断される。実施例のいくつかにおいて、二値画像の背景画素値及び前景画素値は、最初の静かな横列もしくは縦列の値に基づいて決定され、連続する横列もしくは縦列については、同じ背景色及び前景色であるとみなす。しかし、代替的な実施例では、横列もしくは縦列の各々の間で、同様の背景色もしくは前景色であるとみなされる必要はない。横列もしくは縦列の各々が、S510、S515、S520で、優勢な色を判断するために、別個に評価されてもよいし、横列もしくは縦列は、横列/縦列の画素の多くが物理的なドキュメントのページの背景と関連する値を有する場合、静かであるとみなされてもよい。
【0069】
S520で区域の全体について背景画素値が設定される実施例において、S525まで、さらに内側の横列もしくは縦列の解析が行われ、前景画素(すなわち、非優勢画素)の数が閾値を越えているか否かが判断される。この閾値は、横列もしくは縦列において許容される前景画素の最大数を示し、縦列もしくは横列は静か(すなわち、ブランクの横列もしくは縦列)であるとして分類される。前景画素の数が少ない場合、予備画像のマージンに生じる可能性があるノイズであると考えることができる。
【0070】
S525で、前景画素数が閾値を越えないと判断されると、横列もしくは縦列は静かな横列もしくは縦列(すなわち、静マージンの一部である可能性がある横列もしくは縦列(すなわち、マージンの横列/縦列の全てが静かであれば、マージンは静かである))であると判断され、S530で、横列/縦列計数手段に再び1加算される。再び、横列/縦列計数手段は、静かな横列もしくは縦列であると判断される画像のもっとも外側のエッジから連続する横列もしくは縦列の数を示す。上記したように、「ブランク」すなわち静かである(閾値はある程度のノイズを許容する)横列もしくは縦列の数を計数することにより、静マージンの大きさが判断される。
【0071】
S505、S525、S530は、前景画素の数がS525の閾値を越えるかもしくは等しいと(閾値以上であると)判断されるまで、さらに内側の連続する横列もしくは縦列について、順に繰り返される。
【0072】
横列もしくは縦列の前景画素の数が閾値を越えるかもしくは等しい場合、横列もしくは縦列は静かではない(すなわち、「ブランク」の横列もしくは縦列ではない)と判断され、S535で静かである(すなわち、「ブランク」の横列もしくは縦列である)と判断された横列もしくは縦列の数を示す横列/縦列計数手段の計数値がリターンされる。静マージンの大きさは、静か(「ブランク」)であると判断されたエッジからの連続する横列もしくは縦列の画素数として決定される。
【0073】
S515において、非優勢画素の数が閾値より大きいと判断された場合、横列もしくは縦列もまた静かではない(「ブランク」の横列もしくは縦列ではない)と判断され、S535で、静かである(すなわち、「ブランク」の横列もしくは縦列である)と判断された横列もしくは縦列の数を示す横列/縦列計数手段の計数値がリターンされる。再び、静マージンの大きさは、静かである(ブランクである)と判断されたエッジから連続する画素の横列もしくは縦列の数および個々の横列もしくは縦列の大きさ(例えば、横列/縦列計数手段の計数値×画素の大きさ=静マージンの大きさ)に基づいて判断されてもよい。実施例のいくつかにおいて、静マージンの大きさが最小マージンの大きさ(例えば、画像の高さもしくは幅の2%)より大きい場合、個々の区域の各々は適切な静マージンの大きさを有すると判断される。他の実施例において、静マージンの大きさが最小マージンの大きさ(例えば、画像の高さもしくは幅の2%)以上であり、かつ、静マージンのサイズが最大マージンの大きさ(例えば、画像の高さもしくは幅の8%)より小さい場合に、個々の区域の各々は適切な静マージンの大きさを有すると判断される。実施例のいくつかにおいて、異なるエッジについて計算された静マージンは等しくない値を有してもよく、そのような関心領域はわずかにオフセットされる。
【0074】
上記したように、静マージンの大きさを判断するために区域の各々が解析された後、S420(
図4)で、区域の全てが許容可能であるか否か判断される(すなわち、区域の全てが適切な静マージンの大きさを有しているか否か判断される)。判断に基づいて、新しい予備画像が取得され、処理を繰り返すか(S430)、もしくは、S425で静マージンが許容可能である画像であることを示す指標が提供され、二次的な(すなわち、最終の)画像が取得され、引き続いて、光学的文字認識(OCR)処理のような後処理が実行されてもよい。
【0075】
「文字検出ベースの方法」
図6及び
図7のブロック・ダイアグラムは、文字サイズ関連付け手段を用いた静マージンの検出方法の特徴を例示する。
図6は画像全体の処理についての方法を例示し、
図3の処理のS305、S310、S315、S320の実施例を提供する。
図7は、
図6の方法において画像の部分である個々の区域を処理する方法を例示する。
【0076】
S600において、1つもしくは複数のコンピュータ・ビジョン技術を使用して、連結コンポーネント(例えば、連結テキスト領域)をまず識別するために、画像が解析される。例えば、OpenCVライブラリのコンピュータ・ビジョン・ツールを使用してもよい。しかしながら、当業者には明らかなように、コンピュータ・ビジョン技術はOpenCVライブラリに限定されるものではなく、連結コンポーネントを識別するために他のコンピュータ・ビジョン技術が使用されてもよい。
【0077】
S600において連結コンポーネントが識別されると、テキストの特性を満足する大きさ及び/もしくはアスペクト比を有さない連結コンポーネントは、S605で(フィルタを適用することにより)取り除かれる。S605で取り除かれない連結コンポーネントの各々を囲むボックス(境界ボックス)の位置が計算され、S610で、処理するために、1つもしくは複数の区域に割り当てられる。例えば、画像の上半分に重心を有する全ての境界ボックスは、左マージンに沿って上区域に割り当てられ、画像の下半分に重心を有する全ての境界ボックスは左マージンに沿って下区域に割り当てられてもよい。
【0078】
S610において、大きさ及び/もしくはアスペクト比に基づいて取り除かれなかった境界ボックスの全てが一つもしくは複数の区域に割り当てられた後、区域の各々はS615及びS620でマージンの大きさを判断するために処理される。個々の区域の各々の処理は、
図7を参照して、以下で詳細に記述される。S620において、区域の全てが処理されたか否かが判断される。区域の全てが処理されるまで、S615が繰り返される。S600、S605、S610、S615、S620は、
図3の「画像品質測定値を決定」(S305)の一例である。
【0079】
区域の全てが処理された後で、S625で区域の全てが適切であるか否か(すなわち、区域の各々が、静マージンの適切な大きさを有するか否か)判断される。実施例のいくつかにおいて、個々の区域の各々は、静マージンの大きさが最小のマージンの大きさ(例えば、画像の高さもしくは幅の2%)よりも大きい場合、適切な静マージンの大きさを有すると判断される。他の実施例において、静マージンの大きさが最小マージンの大きさ(例えば、画像の高さもしくは幅の2%)以上であり、かつ、静マージンの大きさが最大マージンの大きさ(例えば、画像の高さもしくは幅の8%)より小さいかもしくは等しい場合、個々の区域の各々は適切なマージンの大きさを有すると判断される。S625は
図3の「品質測定値は適切?」を判断するステップ(S310)の一例である。
【0080】
エッジの周辺の任意の区域が適切でないと判断されると、S635でエッジが不適切であることを示すフィードバックが提供される。S635は
図3の「品質測定値に関するフィードバックを提供」ステップ(S315)の一例である。処理は、
図3のS300に戻り、新しい予備画像が取得され、上記したように、エッジ周辺の区域の全てが適切であると判断されるまで、処理は繰り返される。
【0081】
エッジの周辺の区域の全てが適切であると判断されると、S630で、静マージンの大きさが適切であると判断され、エッジが適切であることを示すフィードバックが提供される。S630は、
図3の「品質測定値が適切であることを示すフィードバックを提供」ステップ(S320)の一例である。処理は
図3のS325に進んでもよいがS325の処理を実行するか否かは任意である。S325で、最終画像が取得され、取得された画像に引き続いてOCRのような処理が実行されてもよい。
【0082】
図7は、
図6のS615において個々の区域の各々を処理する方法を例示する。S700において、ある位置の連結コンポーネントの各々の境界ボックスがソートされる。例えば、左マージンの区域が適切であるか否か計算するために、その区域の境界ボックスの値がソートされる。左マージンを計算する実施例のいくつかにおいて、もっとも左の値である数(N−1)は無視されてもよく、少なくとも画像のエッジと概ね平行な他の境界ボックスの所定の数と揃わないのであれば、ノイズとして除去されてもよい。
【0083】
S705において、区域のマージンの大きさは、区域の画像のエッジの位置(例えば、0、画像の幅、もしくは、画像の高さ)及び区域の画像の該エッジに最も近接した境界ボックスのエッジの間の差異に基づいて推定される。例えば、最も左の、ノイズとして無視されない残りの値と画像の左エッジとの間の差異が左マージンの大きさを推定するために使用されてもよい。実施例のいくつかにおいて、非テキスト領域を補償するために、領域の文字の数が決定される。文字の所定の最少数よりも文字数が少ない場合、含まれる文字数が過小であると、境界ボックスに注釈が付される。
【0084】
S710において、マージンに関連する区域の少なくとも一つが適切であり、かつ、該マージンに関連する他の区域も適切であるか、もしくは、含まれる文字数が過小であると記録されている場合、該マージンは適切であるとみなされる。実施例のいくつかにおいて、静マージンの大きさがマージンの最小の大きさ(例えば、画像の高さもしくは幅の2%)より大きい場合、個々の区域の各々は適切な静マージンの大きさを有するものと判断される。その他の例示的な実施例において、静マージンの大きさがマージンの最小の大きさ(例えば、画像の高さもしくは幅の2%)以上であり、かつ、静マージンの大きさがマージンの最大の大きさ(例えば、画像の高さもしくは幅の8%)以下である場合に、個々の区域の各々は適切なマージンの大きさを有するものと判断される。上記の実施例は左マージンに関連するものであるが、右マージン、上マージン、下マージンに属する区域が同様の方法を用いて計算されてもよい。
【0085】
マージンの大きさを推定する上記方法の何れかが異なる方法によって組み合わせられてもよい。実施例のいくつかにおいて、一つもしくは二つの方法が、予備画像全体のフレーミングが適切であるように決定されていることを判断するならば、フレーミングは適切であるとみなされてもよい。その他の実施例において、予備画像のエッジの区域が適切であるとみなす少なくとも一つの方法が適切であるとみなす場合、エッジ区域の全ては適切であると判断する。代替的に、エッジの全ての区域が適切であると判断される場合のみ、エッジ全体は適切であると判断されてもよい。
【0086】
「鮮明度スコア−画像の鮮明度推定」
品質のよい画像を生成するために、プレビュー画像のテキストは
図14に示されるように不鮮明であるべきではない。したがって、プレビュー画像が不鮮明であるか否かを判断するために、鮮明度が計測される。鮮明度を計測するために使用される技術は特に限定されない。実施例において使用することが可能な鮮明度を計測する技術の一例が、米国特許出願第13/293,845号(2011年11月10日出願)に記述されている。この計測技術はテキストのために開発されたものであるが、画像にも使用することができる。当業者には明らかであるように、他の鮮明度の計測技術が使用されてもよい。
【0087】
鮮明度推定技術のいくつかは、水平方向の鮮明度の推定のみを含む。米国特許出願第13/293,845号の技術は、画像の垂直方向及び水平方向の双方の鮮明度を推定する。テキストは垂直方向及び水平方向のストロークを優勢的に有する傾向があるため、米国特許出願第13/293,845号の技術は、テキスト・ラインがカメラ画像のエッジに揃えられている場合に、より正確に鮮明度を推定する。したがって、テキスト・ラインが取得画像のエッジに揃えられている場合、ドキュメントの鮮明度は高くなる傾向を有する。水平方向の鮮明度だけを推定する技術が実施例において使用されてもよいが、テキスト方向に関するより強いフィードバックが、水平方向及び垂直方向の鮮明度を推定することによって、提供されてもよい。
【0088】
「品質測定値の組み合わせ」
画像鮮明度及び静マージンの測定値は相互に独立して使用されてもよいし、様々な方法で組み合わせられてもよい。実施例のいくつかにおいて、予備画像の焦点が合うと最初の指標がまず提供され、フレーミングが十分である場合に第二の指標が次に提供されてもよい。代替的な実施例のいくつかにおいて、別個の画像鮮明度及び静マージンの測定値が一つのスコアに組み合わせられてもよい(例えば、加重平均が使用されてもよい)。
【0089】
実施例のいくつかにおいて、上記した組み合わせにおいて使用されるドキュメント鮮明度及び静マージンの計測値は、上記背景技術の説明において概要を示したドキュメント画像の問題点のいくつかもしくは全てに対処することができる。
●焦点合わせ−鮮明度計測値は、オートフォーカスが成功した場合を示すことができ、オートフォーカスが画像取得の直前に再度焦点合わせを行う場合、画像の取得を差し止めることができる。
●フレーミング−静マージンの狭い測定値は、達成されるべき比較的直線的なフレーミングを許容することができる。
●回転−上記したように、テキスト・ラインが取得画像のエッジに沿っている場合、ドキュメントの鮮明度は大きくなる傾向がある。したがって、モバイル・デバイスがページに対して回転している場合、鮮明度は高くならない可能性がある。さらに、テキストが回転されている場合、静マージンの制限は適切であることが困難であるかもしれない。したがって、ドキュメントの鮮明度及び静マージンの測定値が適切であるならば、画像の回転は適切であるとみなされてもよい。
●影及び照明不足−画像にわたって影がある場合、もしくは、照明不足の場合、エッジが鮮明でない可能性があり、ドキュメントの鮮明度測定値は低くなる。したがって、鮮明度測定値が適切であることを保証することによって、照明は適切であるとみなされてもよい。
●深度変動−ユーザが画像を横から取得する場合(携帯型装置のサイドを保持して取得する場合)、ドキュメントの鮮明度及び静マージンの計測値の双方が不適切となる可能性がある。したがって、ドキュメントの鮮明度及び静マージンの測定値が適切である場合、画像の深度変動は十分小さいとみなされてもよい。
【0090】
「方法の使用」
上記した例示的な方法の使用とは異なるいくつかの例示的なアプローチが高品質な走査を取得するために使用されてもよい。例えば、2つのアプローチ「ホバー」・アプローチ及び「持ち上げて降ろす」アプローチを以下に記載する。
【0091】
「ホバー・アプローチ」
オートフォーカス機能を有する携帯型装置について、十分な時間を与えられた携帯型装置はやがては焦点を合わせると、ユーザは仮定してもよい。したがって、ユーザの注意の概ねはページのフレーミングが適切であるか否かに向けることができる。上記した画像鮮明度計算方法を使用することによって、画像のフレーミングを試みるユーザによって、携帯型装置があちこち移動させられる間、画像が鮮明である場合、画像が鮮明であることを示す指標が提供されてもよい。
【0092】
さらに、カメラが連続的に複数回焦点合わせを行うことによって、焦点合わせのプロセスが何秒かを費やすことがある。さらに、携帯型装置が離されて、所定の位置に戻されることを必要とする焦点合わせが済んでいる場合であっても、画像が鮮明でない場合がある。画像が鮮明であることを示す指標を用いることは、取得画像が鮮明であることをより適切に保証することができる。
【0093】
これらの問題を踏まえて、上記鮮明度及び静マージンの計測値の方法を用いて物理的なドキュメントを走査するためのホバー・アプローチを以下に記載する。
●ユーザはモバイル・デバイスを関心領域の略上に保持し、画像の焦点が合っていることを示すフィードバック(例えば、音声もしくはビデオによる指標)が示されるまで待機する。
●ユーザがモバイル・デバイスの位置をゆっくりと調整する間、カメラは鮮明度のフィードバック(例えば、音声もしくはビデオの指標)を継続的に提供する。テキストがフレーミングされると(例えば、左マージン及び右マージンが許容可能となると)、携帯型装置はさらなるフィードバック(例えば、異なるもしくは同様の音声もしくはビデオの指標)を提供する。代替的に、テキストがフレーミングされると、携帯型装置は最終画像を自動的に取得する。
●最終画像が撮影された後、最終画像が表示される。ユーザは画面に適合した画像を見ることができ、その画像を見るために画像ギャラリーへ移動することができ、鮮明度及び静マージンの測定技術を使用して、他の画像の撮影を継続することができ、もしくは、最終画像を消去し、他の画像を撮影することができる。
【0094】
実施例のいくつかにおいて、最小レベルの鮮明度が達成されるように鮮明度の測定値は閾値処理され、鮮明度は「適切である」と判断され、フィードバックは安定する。例えば、鮮明度が不足している場合に低いピッチの警告音を提供し、より適切な鮮明度の値に対してより高いピッチの警告音を提供する場合、鮮明度が「適切である」限り、警告音は高いピッチを維持し、継続される。視認可能なフィードバックが使用される場合、画像が鮮明であることを示すために、LEDの色が変更されてもよい(例えば、緑)。
【0095】
ピッチが高くなく、かつ、一定でない場合、もしくは、LEDが安定的に緑でない場合、カメラのオートフォーカスが焦点を合わせることができず、カメラが、再度、自動的に焦点を合わせるために、モバイル・デバイスが離されたり、近付けたりされる必要があるか、もしくは、ユーザのセットアップに問題がある可能性がある。例えば、照明があまりにも暗い、画像のあまりにも多くの部分が影を有している、もしくは、テキストがたいへん小さい、などの可能性がある。照明の問題に対して、影の源(例えば、ユーザ)が光源とページとの間に入らないように、ユーザは環境光を調整するか、もしくは、移動する必要があるかもしれない。いくつかの実施例において、鮮明度の閾値はユーザによって調整することができる。
【0096】
画像が鮮明であれば、フレーミングが適切となるまで、ユーザはカメラの位置調整に集中することができる。このアプローチによれば、ユーザの主なタスクは所望されるテキスト及び/もしくは画像をフレーミングすることである。2つ〜4つの端(サイド)が同時に適切に配置されていることを、手動によって確認することは困難であるが、実施例のいくつかにおいて、2つ〜4つの端が適切に配置されていることを携帯型装置は認識することができ、最終画像を自動的に取得することができる。ボタンを押下することは、カメラを揺らしてしまうかもしれないが、カメラが画像を自動的に取得するので、ユーザはボタンを押下する必要がない。
【0097】
「持ち上げて降ろすアプローチ」
ページのコンテンツをフレーミングするための他のアプローチは以下のいずれかを含む。
●取得されるべきページの付近に配置された携帯型装置によって開始し、物理的なドキュメントの部分について適切なフレーミングを示すフレーミング・フィードバック指標が示されるまで、携帯型装置が物理的なドキュメントから離れるように移動させる。
●ページと離して配置された携帯型装置によって開始し、携帯型装置が適切なマージンを有するページ全体を取得するためにページから適切な距離となるまで、携帯型装置を徐々に近付ける。
【0098】
図9A〜
図9Eは、ページに対して携帯型装置の位置が揃えられていると仮定するページに向けて、あるいは、離すように、携帯型装置を移動させると、取得された画像が通過するフレーミングの5つの異なるレベルを例示する。
●
図9Aにおいて、携帯型装置はページに近接し、テキストのラインは少なくとも一つのエッジに沿って切断されている。このレベルでは、静マージンが不適切であることを示す(否定的な)フィードバックが提供されるかもしれない。
●
図9Bにおいて、部分の周囲に静かな区域を有する物理的なドキュメントの部分が見えるようになるように、携帯型装置がページからさらに離される。このレベルでは、静マージンが十分であることを示す(肯定的な)フィードバック指標が提供されるかもしれない。
●
図9Cでは、物理的なドキュメントのより多くの部分が見えるようになるように、携帯型装置がページからさらに離される。テキストのラインは再び切断され、静マージンが不適切であることを示す(否定的な)フィードバック指標が提供されるかもしれない。
●
図9Dにおいて、物理的なドキュメントのより多くの部分が見えるように、より多くの静かな区域が再度現れるように、そして、静マージンが適切であることを示す(肯定的な)フィードバックが提供されるように、携帯型装置はページからさらに離される。
●
図9Eにおいて、携帯型装置のカメラがテキストをもはや明確な像として捉えることができず、推定される鮮明度が低く、そして、否定的な鮮明度を示すフィードバックが提供されるように、携帯型装置がページからさらに離される。
【0099】
したがって、物理的なドキュメントの部分の写真を撮影する場合、ユーザはカメラをその部分に近接させて保持し、携帯型装置をゆっくりと移動させればよい。同様に、ドキュメントの全体の写真を撮影する場合、ユーザはその物理的なドキュメントの上方に携帯型装置を保持し、その物理的なドキュメントに向けて携帯型装置をゆっくりと移動させればよい。(代替的に、ユーザは、携帯型装置を持ち上げて、最初の局所極大を通り過ぎるようにゆっくりと移動させてもよい。)いずれの場合であっても、十分な位置合わせがされていることが仮定され、予測される画像の品質は局所最大に到達するべきである。
【0100】
適切な画像を取得することができる程度に局所最大が十分高くない場合、画像の鮮明度を改良するための戦略を試みてもよい。たとえば、照明状態をよりよくするために移動する、影を落とさないように物理的なドキュメントに覆いかぶさらないよう離れる、もしくは、焦点合わせの閾値を調整する、などの戦略を試みてもよい。
【0101】
「ホバー」方法についても、写真を撮影した後に、写真が表示され、同様のオプションを利用することができる。
【0102】
このアプローチの欠点は、レベルの各々でカメラが再度焦点を合わせるまで、ユーザが待機する必要があることである。しかし、この欠点に対処するために、ユーザが手動で(例えば、ボタンを押下することによって)起動した場合のみ、カメラのオートフォーカスが作動するように、設定を調整してもよい。しかし、この調整を行うか否かは任意である。
【0103】
「他の利用方法」
他の多くの取得方法を使用することができる。例えば、複数ページのドキュメントを撮影する場合、最初のページを取得する際に、ユーザは焦点を設定し、焦点を固定して、残りのページを取得するために、カメラの取得位置を適切にするために「持ち上げて降ろす」技術を使用することができる。
【0104】
他の例では、フレーミング・スコアだけのフィードバックが与えられてもよい。フレーミングが適切であることをフィードバックが示す場合、ユーザはカメラを保持したまま静止させ、自動的に焦点を合わせるようカメラに伝えるため「ボタン」を押下し、写真を撮影することができる。
【0105】
代替的に、フレーミングが適切になると、写真が自動的に取得されることができるように、常に焦点を維持する瞬間オートフォーカス技術をカメラは使用してもよい。
【0106】
さらに、カメラが複数のページのドキュメントのために焦点を合わせる場合、鮮明度スコアだけのフィードバックが、ユーザに示すために使用されてもよい。この場合、ファインダーで見ることによってユーザは画像をフレーミングすることができる。物理的なドキュメントのページのエッジを検出するようなフレーミングのための代替的な方法が使用されてもよい。例えば、名刺のエッジを自動的に識別する技術が実施例において使用されてもよい。
【0107】
「他の特徴」
プレビュー画像が鮮明であったとしても、取得される最終画像が鮮明になるという保証はされない。最終画像が取得されるときまでにフレームの各々を処理するために長い時間が経過するかもしれないし、カメラが再度焦点合わせをしようとするかもしれないし、カメラが移動したり、揺らされたりするかもしれない。この問題に対処するために、いくつかの実施例において、取得された最終画像の鮮明さを自動的に推定し、最終画像が鮮明でないと判断されると、最終画像が適切な鮮明度を有するようになるまで、最終画像が継続的に取得され処理される。代替的に、固定数の画像を継続的に取得し、鮮明度がもっともよい一つを選択してもよいが、この処理を行うか否かは任意である。他の代替では、動きが過多であるか否かを品質に関するフィードバックが示すことができるように、特徴の一つとして動きの特徴を含むが、この処理を行うか否かは任意である。すなわち、実施例において、動きの量が測定され、測定された動きの量が過多であれば(すなわち、動きのための閾値を越えていれば)、適切な品質の画像を取得するには動きが多すぎることを示すフィードバックが提供されてもよい。
【0108】
上記した要因の一つについて品質が不足していても、ユーザはとにかく画像を取得することを望む場合がある。ユーザが画像品質を調整することができるスライダがメニューもしくは携帯型装置に提供されていてもよい。
【0109】
音声フィードバック(例えば、音声トーン)及び視認可能なフィードバック(例えば、LEDによる照明)の例について記載されているが、フィードバックを提供するために他の方法が使用されてもよい。例えば、
図10に示すように、画像表示をプレビューする間、画面上で直接的に鮮明度及び/もしくはフレーミング・スコアを図形的に示すフィードバック・バー1000上に、視認可能なフィードバックが示されてもよい。このダイレクトなフィードバックはインタラクティブ・スライダと結びつき、ユーザは画像を自動的に取得する閾値1010を設定できる。鮮明度及び/もしくはフレーミングが(
図10(b)に示すように)閾値を越えている場合に、画像は自動的に取得されてもよい。フィードバック・バー1000を越える領域に、ユーザがアイコン1010を移動させると、画像を取得する機能は自動的に停止させられてもよい。この場合であっても、ユーザは手動で画像を取得することができる。
【0110】
さらに、他の視認可能なフィードバックによる合図が、画像品質スコアを改善するためにユーザを支援してもよい。
図11は、物理的なドキュメントをユーザがより適切にフレーミングすることができるように支援するために、マージンの各々が設定済みの制限と適合するか否か示す視認可能なフィードバックを提供する、代替的なインターフェイスを示す。
図11(a)において、設定済みの制限に適合しないマージン(すなわち、大き過ぎるか、もしくは、小さ過ぎる)はグレー表示で示されている。
図11(b)において、上マージン及び右マージンは、設定済み制限に適合するとして、グレー表示されていない。しかし、下マージン及び左マージンは設定済み制限に適合しないので、グレー表示されている。
図11(c)において、下マージンだけがグレー表示されている。4個の内3個のマージンが設定済み制限に適合しているので、画像が自動的に取得されてもよい。画像が取得された場合に、音声指標(例えば、「パシャッ(snap!)」というカメラのシャッター音効果)もしくは視認可能な指標(例えば、画面のフラッシュ)が、画像が撮影されたことをユーザに報知するために、提供されてもよいが、この処理を行うか否かは任意である。適合しないマージンはこの例のようにグレー表示されてもよいが、実施例は、適合しないマージンがグレー表示されることに限定されるものではない。当業者には明らかであるように、適合しないマージンを強調するために異なる色が使用されてもよいし、適合しないマージンを強調するのではなく、適合するマージンを強調してもよい。さらに、適合しないマージンは他の方法で示されてもよい。例えば、矩形に色を付けるのではなく、適合しないマージンの矩形のエッジに異なる色を付けてもよい。強調のための色は「透明」を含んでもよく、例えば、適合するマージンの色は「消去」されてもよい。
【0111】
さらに、3個のエッジで適切な静マージンが必要とされるのではなく、代替的に、静マージンをユーザに一つの方向の中心(例えば、水平)に置かせる形態が提供されてもよく、垂直方向のエッジで適切な静マージンが必要とされてもよい。このような実施例では、エッジでのみ静マージンを検出するのではなく、ページの中心の溝(コラムとコラムとの間のブランクなど)を識別することが必要とされてもよい。この実施例は、投影のプロファイルを計算し、値が0に近い(二値画像の色が反転される場合、1に近い)箇所を識別することにより、実行できる。例えば、画素の特徴が使用される場合、0である画素の数をカウントすることができる。文字が使用される場合、横列/縦列の境界ボックスの幅/高さが各々合計されてもよいし、横列/縦列の境界ボックスの数がカウントされてもよい。投影プロファイルを計算するために(一例では、画像解析方法)、縦列もしくは横列の各々の画素値が合計される(投影される)。背景画素が0であれば、合計が0に近い場合に、溝があることとなる。
【0112】
さらに、3個のエッジに適切な静マージンを必要とするのではなく、異なる数のエッジに沿った静マージンが必要とされてもよい。例えば、ページの全体だけが取得されるのであれば、4個のエッジ全てが静マージンに入ることが要求されるように、静マージンの大きさが調整されてもよい。その他の例として、他の適用において、静マージンの2つだけが必要とされてもよいし、静マージンがないことが必要とされてもよい。
【0113】
「計算処理装置及び環境の例」
図12は、少なくとも一つの実施例を実装するのに適している例示的な計算処理装置を備えた計算処理環境の例を示す。計算処理環境1200の計算処理装置1205は、一つもしくは複数の処理手段、コア、もしくは、プロセッサ1210、メモリ1215(例えば、RAM、ROMなど)、内部記憶手段1220(例えば、磁気、光学、半導体及び/もしくは有機の記憶装置)、及び、I/Oインターフェイス1225を含むことができる。これらの構成要素の全ては、情報を伝達するために、通信機構であるバス1230によって接続されている。
【0114】
計算処理装置1205は、入力/ユーザ・インターフェイス1235、出力装置/インターフェイス1240、及び、画像取得装置1285と接続され、入力/ユーザ・インターフェイス1235、出力装置/インターフェイス1240、及び、画像取得装置1285と情報の授受を行うことができる。入力/ユーザ・インターフェイス1235、出力装置/インターフェイス1240、もしくは、画像取得装置1285の一つもしくは全ては有線で接続されていてもよいし、無線で接続されていてもよい。さらに、入力/ユーザ・インターフェイス1235、出力装置/インターフェイス1240、もしくは、画像取得装置1285の一つもしくは全ては着脱可能であってよい。入力/ユーザ・インターフェイス1235は、入力を提供するために使用することができる、物理的なもしくは仮想的な、任意のデバイス、コンポーネント、センサ、もしくは、インターフェイス(例えば、キーボード、ポインティング/カーソル・コントロール(例えば、マウス)、マイク、カメラ、点字キーボード、動きセンサ、光学読み取り装置など)を含んでいてもよい。出力装置/インターフェイス1240は、表示装置、モニター、プリンタ、スピーカ、点字プリンタなどを含んでいてもよい。画像取得装置1285は、画像を取得するために使用することができる任意のデバイス、コンポーネント、もしくは、センサ(例えば、カメラ、動きセンサ、光学読み取り装置など)を含んでいてもよい。実施例のいくつかにおいて、入力/ユーザ・インターフェイス1235及び出力装置/インターフェイス1240は計算処理装置1205に埋め込まれていてもよいし、計算処理装置1205に物理的に接続されていてもよい(例えば、ボタンもしくはタッチ−スクリーン入力/ユーザ・インターフェイス及び出力すなわち印字表示装置、もしくはテレビを備えたモバイル計算処理装置)。さらに、実施例のいくつかにおいて、画像取得装置1285は計算処理装置1205に埋め込まれていてもよいし、計算処理装置1205に物理的に接続されていてもよい(例えば、一体型カメラを備えたモバイル計算処理装置)。
【0115】
計算処理装置1205は、外部記憶手段1245及びネットワーク1250に接続され、任意の数のネットワーク・コンポーネント、デバイス、及び、同様のもしくは異なる構成を有する一つもしくは複数の計算処理装置を含むシステムと通信することができるように、外部記憶手段1245及びネットワーク1250と通信することができる。計算処理装置1205もしくは任意の接続されている計算処理装置は、サーバ、クライアント、シン・サーバ、汎用機械、専用機械、もしくは、その他のものとして機能してもよいし、それらのサービスを提供してもよいし、それらの名称によって参照されてもよい。
【0116】
I/Oインターフェイス1225は、計算処理環境1200の、少なくとも接続されているコンポーネント、デバイス、及び、ネットワークとの間で情報を授受するための、任意の通信すなわちI/Oプロトコルもしくは標準(例えば、イーサネット(登録商標)、802.11x、ユニバーサル・システム・バス(USB)、WiMax、モデム、携帯電話ネットワーク・プロトコルなど)を用いた有線及び/もしくは無線インターフェイスを含むことができるが、これらに限定されるものではない。ネットワーク1250は、任意の単一のネットワークもしくは複数のネットワークの組み合わせであってよい(例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、電話ネットワークなど)。
【0117】
計算処理装置1205は、一時的な媒体及び非一時的な媒体を含む、コンピュータ使用可能もしくはコンピュータ読取可能な媒体を使用してもよいし、これらの媒体を用いて通信してもよい。一時的な媒体は、伝送媒体(例えば、金属ケーブル、ファイバー・オプティックス)、信号、搬送波などを含む。非一時媒体は、磁気媒体(例えば、ディスク及びテープ)、光学媒体(例えば、CD ROM、デジタル・ビデオ・ディスク、ブルーレイ・ディスク)、半導体媒体(例えば、RAM、ROM、フラッシュ・メモリ、半導体記憶装置)及びその他の不揮発性記憶装置もしくはメモリを含む。
【0118】
計算処理装置1205は、少なくとも一つの実施例(例えば、上記した実施例)において、技術、方法、アプリケーション、処理、実装するためのコンピュータ実行可能な指示を実装するために使用されてもよい。コンピュータ実行可能な指示は、一時的な媒体から取り出され、非一時的な媒体に記憶され、非一時的な媒体から取り出されることができる。実行可能な指示は、任意のプログラム言語、スクリプト言語、機械言語(例えば、C、C++、C#、Java(登録商標)、Visual Basic、Python、Perl、JavaScript(登録商標)など)の一つもしくは複数に由来してもよい。
【0119】
プロセッサ1210は、自然環境もしくは仮想環境において、(図示されない)任意のオペレーティング・システム(OS)のもとで動作することができる。上記実施例を実装するために、論理手段1260、アプリケーション・プログラミング・インターフェイス(API)手段1265、入力手段1270、出力手段1275、フレーミング手段1280、鮮明度手段1290、及び、異なるユニット(手段)が相互に、OSと、あるいは(図示されない)他のアプリケーションと通信するためのユニット間通信機構1295、を含む、一つもしくは複数のアプリケーションが展開されてもよい。例えば、フレーミング手段1280及び鮮明度手段1290は
図3、4、5、6、7に示される一つもしくは複数の処理を実装してもよい。上記ユニット(手段)及び構成要素は、設計、機能、構成、もしくは、実装について変更可能であり、上記されたものに限定されない。
【0120】
「ハードウェア実装」
本発明の実施例は、例えば、携帯型装置上で稼働するソフトウェアとして実装されてもよいが、実施例はソフトウェアによる実装に限定されない。
図13は、例示的なハードウェアによる実装の実施例を示す。
【0121】
図13において、画像品質フィードバック提供装置1300を示す。画像品質フィードバック提供装置1300は、画像取得装置1305、フレーミング解析手段1310、制御手段1340を含んでもよい。画像品質フィードバック提供装置1300は、さらに、鮮明度解析手段1315、表示手段1320、視認可能フィードバック提供手段1325、音声フィードバック提供手段1330、及び、画像処理装置1335の一つもしくは複数を含んでいてもよいが、これらを含むか否かは任意である。画像取得装置1305、フレーミング解析手段1310、制御手段1340、鮮明度解析手段1315、表示手段1320、視認可能フィードバック提供手段1325、音声フィードバック提供手段1330、及び、画像処理装置1335の全ては、相互に情報を伝達することができるように接続されている。画像取得装置1305は、画像を取得するために使用されることができる任意のデバイス、コンポーネント、もしくはセンサ(例えば、カメラ、動きセンサ、光学読み取り装置など)を含むことができる。フレーミング解析手段1310は、
図1、3、4、5、6に示され、上記された一つもしくは複数の処理を用いて、取得画像のフレーミングを解析してもよい。同様に、鮮明度解析手段1315は、上記した一つもしくは複数の処理を用いて取得画像の鮮明度を解析してもよい。
【0122】
さらに、表示手段1320は、ユーザに情報を表示するために使用されることができる任意のデバイスもしくはコンポーネントであってよい(例えば、CRT表示装置、プラズマ表示装置、LED表示装置、LCD表示装置など)。表示手段1320は、ユーザに予備画像もしくはその他の情報を提供するために使用されてもよい(例えば、フラッシュ設定、絞り値設定、シャッター・スピード設定、照明レベルなど)。
【0123】
さらに、音声フィードバック提供手段1330は、フレーミング解析手段1310によって実行されたフレーミング解析(例えば、静かなマージン)及び/もしくは、鮮明度解析手段1315によって実行された鮮明度解析に関するフィードバックを伝達するために、ユーザに音声情報を提供するために使用することができる任意のデバイスもしくはコンポーネントを含むことができる(例えば、音声生成装置及びスピーカなど)。同様に、視認可能フィードバック提供手段1325は、フレーミング解析手段1310によって実行されたフレーミング解析(例えば、静マージン)及び/もしくは、鮮明度解析手段1315によって実行された鮮明度解析に関するフィードバックを伝達するために、ユーザに視認可能情報を提供するために使用することができる任意のデバイスもしくはコンポーネントを含むことができる(例えば、LED素子、照明、第二の表示装置もしくは表示装置に情報を提供させる制御手段など)。
【0124】
さらに、画像処理装置1335は、一つもしくは複数の画像認識処理(例えば、光学的文字認識(OCR)処理、顔認識処理、オブジェクト認識処理など)を取得画像に実行するために使用される任意のデバイスもしくはコンポーネントを含むことができ、画像認識処理の結果をユーザに提供する。
【0125】
制御手段1340は、上記動作の一つもしくは複数を実行するために、その他のコンポーネント(1305〜1335)の一つもしくは複数を制御してもよい。例えば、制御手段1340は、画像取得装置1305によって取得された予備画像を表示するために表示手段1320を制御してもよく、フレーミング解析手段1310によって実行されたフレーミング解析及び/もしくは鮮明度解析手段1315によって実行された鮮明度解析が、予備画像が画像取得のために適切であるか否か、を判断してもよい。さらに、制御手段1340は、フレーミング解析手段1310によって実行されたフレーミング解析及び/もしくは鮮明度解析手段1315によって実行された鮮明度解析に基づいて、フィードバックを提供するために、音声フィードバック提供手段1330及び/もしくは視認可能フィードバック提供手段1325を制御してもよい。制御手段1340は、フレーミング解析手段1310によって実行されるフレーミング解析及び/もしくは鮮明度解析手段1315によって実行される鮮明度解析が、画像取得のために、予備画像が適切であると判断する場合、最終画像を取得するために画像取得装置1305を制御してもよい。さらに、制御手段1340は、最終画像が画像取得装置1305によって取得された場合、最終画像に画像認識処理を実行するために、画像処理装置1335を制御してもよい。
【0126】
「その他の実施例」
いくつかの実施例について記述したが、これらの実施例は、当業者にここで記述された主題を伝えるために提供されている。ここで記述された主題は、記述された実施例に限定されず様々な形態で実施されてよいことは明らかである。ここで記述された主題は、詳細に限定もしくは記述することなしに、もしくは、記述されていないその他のもしくは異なる構成要素もしくは事項とともに、実施されてもよい。当業者によって、ここで記述された主題から逸脱することなく、添付される請求項もしくはその等価物において定義されるように、これらの実施例に変更がなされてもよいことは明らかである。
【0127】
実施例に関連する態様は上記において部分的に記載され、記述から部分的に明らかであり、もしくは、本発明の実施によって学習されてもよい。実施例の態様は、様々な構成要素もしくは構成要素の組み合わせ及び詳細な記述及び添付の請求項において特に指摘される態様によって実現されてもよいし、達成されてもよい。
【0128】
上記は例示及び説明だけを目的としており、限定を意図するものでないことを理解されたい。