(58)【調査した分野】(Int.Cl.,DB名)
前記合成頁画像取得手段は、前記第1補正手段及び前記第2補正手段で補正されたn個の前記分割領域を、前記分割手段で分割されたときの前記幅方向の並び順のまま繋げるように合成することを特徴とする請求項1乃至5のいずれか1項に記載の頁画像補正装置。
頁数の離れた2つの頁の前記射影行列に基づき、1頁当たりの前記射影行列の摂動量ΔAを求め、2つの前記頁のうちの一方の頁を基準頁として、前記基準頁から離れた頁の前記射影行列を、離れた頁数分だけ前記基準頁の前記射影行列を前記摂動量ΔAで摂動させたものとすることを特徴とする請求項7に記載の頁画像補正装置。
頁数の離れた2つの頁の前記歪み補正後の前記上側基準線に基づき、1頁当たりの前記歪み補正後の前記上側基準線の摂動量ΔULを求めるとともに2つの頁の前記歪み補正後の前記下側基準線に基づき、1頁当たりの前記歪み補正後の前記下側基準線の摂動量ΔDLを求め、2つの前記頁のうちの一方の頁を基準頁として、前記基準頁から離れた頁の前記歪み補正後の前記上側基準線を離れた頁数分だけ前記基準頁の前記歪み補正後の前記上側基準線を前記摂動量ΔULで摂動させたものとするとともに、前記基準頁から離れた頁の前記歪み補正後の前記下側基準線を離れた頁数分だけ前記基準頁の前記歪み補正後の前記下側基準線を前記摂動量ΔDLで摂動させたものとすることを特徴とする請求項1乃至8のいずれか1項に記載の頁画像補正装置。
前記基準線取得手段は、前記合成頁画像において真直ぐな直線となるべき前記頁画像の上側に位置する線を前記上側基準線として取得するとともに、前記合成頁画像において真直ぐな直線となるべき前記頁画像の下側に位置する線を前記下側基準線として取得することを特徴とする請求項1乃至10のいずれか1項に記載の頁画像補正装置。
前記基準線取得手段は、前記合成頁画像において真直ぐな直線となるべき前記頁画像の上側又は下側に位置する線を前記上側基準線又は前記下側基準線として取得するとともに、残る前記下側基準線又は前記上側基準線を前記取得した前記上側基準線又は前記下側基準線を前記頁画像の略中央を基準に折り返した線として取得することを特徴とする請求項1乃至10のいずれか1項に記載の頁画像補正装置。
前記真直ぐな直線となるべき線が太く、点が繋がった直線と見なせない場合は、前記真直ぐな直線となるべき線の中央を通る点が繋がったと見なせる細い線を前記真直ぐな直線となるべき線とすることを特徴とする請求項11又は12に記載の頁画像補正装置。
前記真直ぐな直線となるべき線が頁の左右方向の端から端まで届いていない場合は、前記真直ぐな直線となるべき線を延長して頁の左右方向の端から端まで届くようにした線を前記真直ぐな直線となるべき線とすることを特徴とする請求項11乃至13のいずれか1項に記載の頁画像補正装置。
前記歪み補正後の前記頁画像において、前記第1補正手段及び前記第2補正手段で補正したい画像部分が、前記歪み補正後の前記上側基準線および前記下側基準線の間に位置するように、前記歪み補正後の前記上側基準線および前記下側基準線の位置をシフトさせることを特徴とする請求項1乃至13のいずれか1項に記載の頁画像補正装置。
【発明を実施するための形態】
【0012】
以下、本発明を実施するための形態(以下、「実施形態」という)を、添付図面に基づいて詳細に説明する。
なお、実施形態の説明では、全体を通じて同じ要素には同じ番号を付している。
【0013】
(第1実施形態)
図1は、本発明に係る第1実施形態の頁画像補正装置としての書画カメラシステムの概略構成を示す斜視図である。
図1に示すように、書画カメラシステム1は、本Bの頁P1を撮像する撮像手段としての書画カメラ2と、本Bが載置される載置台3と、書画カメラ2に通信自在に接続されたパソコン4と、本Bの頁P1を自動でめくる自動頁めくり装置5と、を備えている。
なお、本発明に係る本Bとしては一般的な書籍の他、綴じられた書類等も含むものとする。
【0014】
書画カメラ2は、スタンド部21と、スタンド部21の上端に取付けられたカメラ22とを備えている。
スタンド部21は、本Bとカメラ22との相対的な位置関係を調整できるように、前後方向、左右方向に傾倒自在であるとともに、上下方向の伸縮自在になっている。
【0015】
また、カメラ22とスタンド部21との接合部には位置調整機構が設けられており、カメラ22のレンズが向く方向も調節できるようになっている。
そして、カメラ22は、載置台3上で開かれた本Bの右側の頁PRの画像を1回の撮影で取得できる位置に配置されている。
【0016】
自動頁めくり装置5は、頁めくり方向に回動自在に設けられたアーム5aと、アーム5aの先端に設けられた頁めくり部5bと、エアを吹き出す送風部5cと、を備えている。
【0017】
アーム5aは、図示しないモータによって頁をめくるための回動動作ができるようになっている。
頁めくり部5bは、アーム5aに対して回動可能に取付けられているとともに、表面が粘着性を有するようになっている。
【0018】
そして、アーム5aが右側の頁PRに頁めくり部5bを接触させるようにモータ駆動すると、頁めくり部5bは粘着力によって右側の頁PRを保持する。
その後、アーム5aが右側の頁PRをめくるように左側の頁PL側にモータ駆動されると、頁めくり部5bに粘着した右側の頁PRが頁めくり部5bとともに左側の頁PL側に移動する。
【0019】
そして、送風部5cからは、頁めくり部5bに粘着した右側の頁PRを頁めくり部5bから外すようにエアが吹き出しているので、その風力によって頁めくり部5bに粘着している右側の頁PRが左側の頁PL側に押さえつけられる。
【0020】
このとき、頁めくり部5bがアーム5aに対して回転可能に取付けられているので、右側の頁PRが滑るように頁めくり部5bが回転し、左側の頁PL上に重なるように右側の頁PRは頁めくり部5bから外れることで頁めくりが可能になっている。
【0021】
次に、第1実施形態の書画カメラシステム1の主制御構成について説明する。
図2は書画カメラシステム1の主制御構成を示すブロック図である。
パソコン4は、記憶部(HDD)41と、演算部42と、通信部43と、を備えている。
【0022】
記憶部(HDD)41には、撮像した頁画像並びに補正した補正画像等が記憶される。
演算部42には、自動頁めくり装置5およびカメラ22を制御して自動で頁画像を撮像するためのプログラム(以下、自動撮影用のプログラムともいう)や撮像した頁画像を補正するプログラム(以下、画像処理プログラムともいう)等の各種プログラムが記録されたROM(図示せず)と、ROM中のプログラムの実行時に当該プログラムが展開されるRAM(図示せず)と、ROM中のプログラムをRAMに展開し実行するCPU(図示せす)とが備えられている。
【0023】
通信部43は、自動頁めくり装置5との間での同期を取った通信を行なう。
なお、
図2には、図示していないが、パソコン4は、キーボード、タッチパネル、マウス等の操作手段や液晶モニタ等の表示手段なども備えている。
【0024】
一方、自動頁めくり装置5は、通信部51と、モータ制御部52と、モータ53と、を備えている。
通信部51は、パソコン4の通信部43との間での同期を取った通信を行なう。
【0025】
モータ制御部52は、パソコン4の演算部42からの頁めくり指令に応じてモータ53を制御する。
モータ53は、モータ制御部52の指令に従って本Bの頁P1をめくる動作を実現するためにアーム5aを回動させる。
【0026】
以下、書画カメラシステム1による画像読み取り方法について説明する。
まず、ユーザは、本Bの最初の頁P1を開いた状態で本Bを載置台3の上にセットする。
本Bのセットが終ったら、パソコン4の操作手段を操作して自動撮影用のプログラムをパソコン4に実行させる。
【0027】
自動撮影用のプログラムが実行されるとパソコン4の演算部42は、カメラ22に撮影指令を出し、最初の右側の頁PRの撮像が行われ、撮像した頁画像が記憶部(HDD)41に記憶される。
最初の撮像が終ると、演算部42は、通信部43を介して自動頁めくり装置5に頁をめくる指令を出す。
【0028】
自動頁めくり装置5は、頁をめくる指示を受け取るとモータ制御部52によってモータ53を駆動させ、上述したように頁めくり動作を実行する。
頁めくり動作が済むと自動頁めくり装置5は頁めくり動作が完了した動作完了信号をパソコン4に通信部51を介して送信する。
パソコン4は動作完了信号を受け取ると、再び、カメラ22に撮像指令を出し、2頁目の右側の頁PRの撮像が実行される。
この操作が全ての右側の頁PRの撮像が終了するまで繰り返される。
【0029】
そして、右側の頁PRの撮像が終了したら、ユーザは、本Bの上下が逆になるように載置台3上に本Bをセットする。
つまり、先ほど右側の頁PRがあった側に本Bの左側の頁PLが位置するように本Bを載置台3の上にセットし、最初の頁を開く。
なお、左側の頁PRは逆向きにセットされるので頁番号からすると最後の頁を開くようにセットすることになる。
【0030】
そして、載置台3への本Bのセットが終ったら、先ほどと同様にパソコン4の操作手段を操作して自動撮影用のプログラムを実行させ、左側の頁PLの撮像を行う。
このようにして、左右全ての頁の撮像が終ると、次にユーザは、パソコン4の操作手段を操作して画像処理プログラムを実行させる。
【0031】
この画像処理は、撮像した頁画像が、頁の見開き方向に湾曲していたり、頁の各ポジションとカメラ22との距離が異なることにより、文字の大きさや画像の大きさ等が拡大されているように見える場所と縮小されているように見える場所などがあり、見づらい歪んだ頁画像になっているのを画像補正によって、歪みの無い頁画像にすることを目的とする処理である。
【0032】
画像処理プログラムによる画像処理は、左側の頁PLの頁画像群および右側の頁PRの頁画像群に分けて処理を行うが、左側の頁画像群と右側の頁画像群に施す処理内容は同じであるので、以下では、左側の頁画像群を代表して画像処理の内容を説明する。
【0033】
図3は、画像処理の流れを示すフローチャートである。
パソコン4の演算部42(以下、演算部42と記載する)は、先に撮像された左側の頁画像群の中から、初めの頁画像PLSと最後の頁画像PLEを選択し(ステップ1)、選択した頁画像PLSおよび頁画像PLEに処理Aを実行し(ステップ2)、画像補正のための基準となる基礎データを取得する。
【0034】
(
図3:ステップ2(
図4の処理A))
以下、
図4に示す処理Aのフローチャートを参照しながら、処理Aの説明を行う。
【0035】
(
図4:ステップA1)
まず、演算部42は、頁画像PLSと頁画像PLEのそれぞれから上側基準線と下側基準線を取得する(ステップA1)。
上側基準線および下側基準線とは、実際の本Bの頁を平らにしたときに、真直ぐな直線となる頁幅方向に延びる線である。
つまり、この画像処理を終えたときに、真直ぐな直線となるべき線である。
【0036】
このような真直ぐな直線となるべき線は、頁画像PLSと頁画像PLEの状態では、頁画像自体が歪んだ画像状態になっているため曲線となっており、その曲線(基準曲線とも記載する)を取得する処理である。
上側基準線は、頁画像の上側に位置する基準曲線のことであり、下側基準線は、頁画像の下側に位置する基準曲線のことである。
【0037】
なお、頁画像PLSおよび頁画像PLEの上側基準線を取得するときには、実際の本Bの頁において同じ上下方向の同じ位置にある線を取得する。
また、頁画像PLSおよび頁画像PLEの下側基準線も上側基準線と同様に実際の本Bの頁において同じ上下方向の位置にある線を取得する。
【0038】
具体的に、どのようにして上側基準線および下側基準線を取得するのかについて、以下、
図5および
図6を参照して説明する。
図5には、本Bの上側に位置する上側基準線とする曲線と下側に位置する下側基準線とする曲線を示している。
この線は、本Bの頁を平らにしたときに真直ぐな直線となる線であり、このような線が初めから本Bに設けられている場合には、この線を上側基準線および下側基準線とすればよい。
【0039】
また、
図5のように、本Bに上側基準線と下側基準線とできる線がない場合には、
図6に示すように、本Bの一番上にある行を上側基準線とし、一番下にある行を下側基準線とするようにすればよい。
なお、上側基準線と下側基準線を自動で取得するようにしてもよいし、どこを基準線とするのかの判別が行い難いような頁画像の場合は、パソコン4の操作手段(マウス等)を用いてユーザが指定するようにしてもよい。
【0040】
ここで、後ほどの処理のために、上側基準線および下側基準線は、点座標で表現される点が繋がったような直線として取得する。
このため、例えば、上側基準線および下側基準線としようとする基準曲線の幅が厚く点座標として取得できない場合には、点座標として取得するための処理を施す。
なお、基準曲線の具体的な取得方法については、後ほど、この画像処理の説明を終えてから説明する。
【0041】
また、
図6に示すように本Bの行を基準曲線とするような場合には、この基準曲線は、本Bの幅方向両端に届いていないので、このような場合は、点座標として取得した上側基準線および下側基準線を幅方向に延長するようにして、その延長処理を行った曲線を上側基準線および下側基準線とする。
【0042】
例えば、
図7に示すように、一番端から連続する3点を用いて放物線の式を求め、得られた放物線に沿って単位ベクトルの長さずつ、線(点列)を追加するようにして、必要な分だけ端を延長する。
【0043】
また、別の方法としては、
図8に示すように、一番端の点と隣接する隣の点とを用いて、単位ベクトルの方向に必要な分だけ線(点列)を追加するようにして、必要な分だけ端を延長する。
なお、
図7および
図8では、左側の端だけについて示しているが右側の端についても同様にして必要な分だけ延長する。
【0044】
上記のようにして、演算部42は、頁画像PLSの上側基準線SBULおよび下側基準線SBDLと、頁画像PLEの上側基準線EBULおよび下側基準線EBDLと、を取得する。
このとき、演算部42は、基準線取得手段を構成している。
図4に戻って、説明を続ける。
【0045】
(
図4:ステップA2)
次に、演算部42は、頁画像PLSおよび頁画像PLEの中の4つの基準点を上側基準線および下側基準線に基づき取得する(ステップA2)。
具体的には、頁画像PLSの上側基準線SBULの両端の点を2つの基準点とし、頁画像PLSの下側基準線SBDLの両端の点を2つの基準点として、合計4つの基準点を取得する。
【0046】
また、頁画像PLEにおいても同様に、頁画像PLEの上側基準線EBULの両端の点を2つの基準点とし、頁画像PLEの下側基準線EBDLの両端の点を2つの基準点として、合計4つの基準点を取得する。
このとき、演算部42は、基準点取得手段を構成している。
【0047】
(
図4:ステップA3)
引き続き、演算部42は、4つの基準点に基づき、頁画像PLSおよび頁画像PLEの歪み補正を行う(ステップA3)。
この処理について頁画像PLSを代表して説明すると、ステップA2で求めた頁画像PLSの4つの基準点は、頁画像PLSの上側基準線SBULおよび下側基準線SBDLの端に位置する4点である。
【0048】
頁画像PLSの上側基準線SBULおよび下側基準線SBDLは、頁画像PLS中では曲線であるが、本来、実際の本Bの頁を平らにしたときには、きれいな真直ぐの直線となる上下に位置する2つの線である。
したがって、頁画像PLSの上側基準線SBULおよび下側基準線SBDLの端に位置する4点は、実際の本Bの頁を平らにした状態では、きれいな四角形(例えば、正方形や長方形等の矩形状)の隅の4点である。
【0049】
しかしながら、頁画像PLSは撮像時の歪みを有しているため、ステップA2で求めた4つの基準点を真直ぐな直線で結んだとしても台形やひし形等のような幾何学形状となり、きれいな四角形(矩形状)の状態にならない。
【0050】
そこで、この4つの基準点が歪み補正後に位置すべき4つの目標点(本来あるべき4点)に射影される射影行列を求め、その射影行列に基づき頁画像PLSの全体の歪み補正を実施する。
つまり、演算部42は、頁画像PLSの4つの基準点と、歪み補正後に位置すべき、きれいな四角形(矩形状)の四隅の点に当たる所定の4つの目標点とから4つの基準点を4つの目標点に射影する射影行列SAを演算し、その射影行列SAで頁画像PLS全体の歪み補正を行う。
【0051】
同様に、演算部42は、頁画像PLEの4つの基準点と、歪み補正後に位置すべき、きれいな四角形(矩形状)の四隅の点に当たる所定の4つの目標点とから4つの基準点を4つの目標点に射影する射影行列EAを演算し、その射影行列EAで頁画像PLS全体の歪み補正を行う。
【0052】
この歪み補正によって、頁画像PLSの上側基準線SBULおよび下側基準線SBDLの点座標も射影されるので、この射影された後の点座標によって規定される歪み補正後の上側基準線SBUL’および歪み補正後の下側基準線SBDL’については、以後、補正後上側基準線SBUL’および補正後下側基準線SBDL’と記載する。
頁画像PLEについても同様に歪み補正後の上側基準線EBUL’および歪み補正後の下側基準線EBDL’を補正後上側基準線EBUL’および補正後下側基準線EBDL’と記載する。
【0053】
また、歪み補正後の頁画像PLS’および歪み補正後の頁画像PLE’についても補正後頁画像PLS’および補正後頁画像PLE’と記載する。
このとき、演算部42は、歪み補正手段を構成する。
なお、ステップA3において演算部42が求めた頁画像PLSの補正後頁画像PLS’、射影行列SA、補正後上側基準線SBUL’および補正後下側基準線SBDL’は、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
【0054】
また、同様に、ステップA3において演算部42が求めた頁画像PLEの補正後頁画像PLE’、射影行列EA、補正後上側基準線EBUL’および補正後下側基準線EBDL’も、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
そして、ステップA3が終ると再び
図3のフローに戻る。
【0055】
ここで、
図3のフローの続きを説明する前に、上記ステップA1〜A3、つまり、処理Aによって、どのように頁画像PLSおよび頁画像PLEがどのような状態になっているのかについて
図9および
図10を参酌しながら、簡単に説明する。なお、以下の説明も頁画像PLSを代表して説明する。
【0056】
図9は、歪み補正を行う前の頁画像PLSを示したものである。
なお、
図9では、頁画像PLSの上側基準線SBULと下側基準線SBDLの間の部分だけを模式的に示している。
図9に示すように、頁画像PLSの上側基準線SBULの両端の点r2、r3と下側基準線SBDLの両端の点r1、r4を真直ぐな直線で結んだときの形状は台形状をしている。
【0057】
一方、
図10には、射影行列SAで頁画像PLSを歪み補正した後の補正後頁画像PLS’を示している。
なお、
図10では、図が見やすいように、4つの目標点r1’、r2’、r3’およびr4’を真直ぐな直線で結んで出来る四角形を正面向きに図示している。
【0058】
射影行列SAは、4つの基準点を4つの目標点に射影する行列であり、4つの基準点は、それぞれ頁画像PLSの上側基準線SBULと下側基準線SBDLの両端の点であったので、この射影行列SAで射影された補正後頁画像PLS’の補正後上側基準線SBUL’および補正後下側基準線SBDL’の両端の点は、
図10に示すように、4つの目標点r1’、r2’、r3’およびr4’に一致するようになっている。
【0059】
また、4つの目標点は、本来あるべききれいな四角形の四隅の点として与えられているので、
図10に示されるように、4つの目標点r1’、r2’、r3’およびr4’を真直ぐな直線で結んだ形状は、
図9の台形状から、きれいな四角形(矩形状)に変換されている。
但し、
図10を見るとわかるように、補正後頁画像PLS’全体は、まだ、きれいな四角形の状態になっているわけではなく、完全に歪みが除去されているわけではない。
【0060】
したがって、補正後頁画像PLS’および補正後頁画像PLE’の状態から、さらに、残る歪みを補正する処理を行う必要があり、これから
図3のフローに戻って、この残る歪みを補正する処理について説明する。
【0061】
ところで、上記では、初めの頁画像PLSと最後の頁画像PLEについてのみ処理を行っている。
当然、全ての頁の歪みを取り除くためには、その間にある左側の頁画像についても同様の処理を施す必要がある。
しかしながら、上記手順の全てを左側の頁について行うようにすると演算回数が多くなるので処理が遅くなる。
そこで、これまでに得られたデータで間にある左側の頁の補正に必要なデータ(射影行列、補正後上側基準線および補正後下側基準線)を求める処理を行う。
【0062】
左側の頁は、
図1に示したように、自動的に頁がめくられ、頁がめくられる度にカメラ22で撮像されることで取得されている。
このときに、本Bなどを動かすことは行っていないので、各頁の連続的な変化は、頁がめくられることにより、順次左側の頁の頁数が減少することに伴う線形的な変化が主である。
【0063】
このため、最初の左側の頁画像PLSの射影行列SAが、一定の摂動量ΔAで線形に変化していった結果、最後の左側の頁画像PLEの射影行列EAの状態に至ると考えられる。
なお、補正後上側基準線および補正後下側基準線についても同様に、最初の左側の頁画像PLSの補正後頁画像PLS’の補正後上側基準線SBUL’および補正後下側基準線SBDL’が一定の摂動量で変化していった結果、最後の左側の頁画像PLEの補正後上側基準線EBUL’および補正後下側基準線EBDL’の状態に至ると考えられる。
【0064】
実際に、何度か実験を実施した結果でもそれを裏付ける結果が得られている。
したがって、頁画像PLSおよび頁画像PLEの間にある頁画像については、この線形性に着目して必要なデータ(射影行列、補正後上側基準線および補正後下側基準線)の算出を行う。
【0065】
(
図3:ステップ3)
そのために、
図3のフローのステップ3では、先ず、頁画像PLSの補正後上側基準線SBUL’および補正後下側基準線SBDL’と、頁画像PLEの補正後上側基準線EBUL’および補正後下側基準線EBDL’とから、補正後上側基準線の1頁当たりの摂動量ΔBUL’および補正後下側基準線の1頁当たりの摂動量ΔBDL’を求める。
【0066】
具体的には、演算部42は、頁数の大きい頁画像PLEの補正後上側基準線EBUL’から頁数の小さい頁画像PLSの補正後上側基準線SBUL’の座標の差を取り、トータルの変化量TUL’を求める(式(2)参照)。
TUL’=EBUL’の座標 − SBUL’の座標・・・(2)
【0067】
そして、演算部42は、求めたトータルの変化量TUL’を頁画像PLSと頁画像PLEとの間にある左側の頁の数Xに1加えた数(X+1)で割ることで補正後上側基準線の1頁当たりの摂動量ΔBUL’を求める(式(3)参照)。
ΔBUL’=TUL’/(X+1)・・・(3)
【0068】
同様に、演算部42は、頁数の大きい頁画像PLEの補正後下側基準線EBDL’から頁数の小さい頁画像PLSの補正後下側基準線SBDL’の座標の差を取り、トータルの変化量TDL’を求める(式(4)参照)。
TDL’=EBDL’の座標 − SBDL’の座標・・・(4)
【0069】
そして、演算部42は、求めたトータルの変化量TDL’を頁画像PLSと頁画像PLEとの間にある左側の頁の数Xに1加えた数(X+1)で割ることで補正後下側基準線の1頁当たりの摂動量ΔBDL’を求める(式(5)参照)。
ΔBDL’=TDL’/(X+1)・・・(5)
【0070】
なお、ステップ3において演算部42が求めた補正後上側基準線のトータルの変化量TUL’、補正後上側基準線の1頁当たりの摂動量ΔBUL’、補正後下側基準線のトータルの変化量TDL’および補正後下側基準線の1頁当たりの摂動量ΔBDL’は、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
【0071】
(
図3:ステップ4)
次に、頁画像PLSの射影行列SAと、頁画像PLEの射影行列EAとから、射影行列の1頁当たりの摂動量ΔAを求める(ステップ4)。
具体的には、演算部42は、頁数の大きい頁画像PLEの射影行列EAから頁数の小さい頁画像PLSの射影行列SAの差を取り、トータルの変化量TAを求める(式(6)参照)。
TA = EA − SA・・・(6)
【0072】
そして、演算部42は、求めたトータルの変化量TAを頁画像PLSと頁画像PLEとの間にある左側の頁の数Xに1加えた数(X+1)分の1倍することで射影行列の1頁当たりの摂動量ΔAを求める(式(7)参照)。
ΔA = TA×[1/(X+1)]・・・(7)
【0073】
なお、ステップ4において演算部42が求めた射影行列のトータルの変化量TAおよび射影行列の1頁当たりの摂動量ΔAは、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
【0074】
(
図3:ステップ5)
次に、頁画像PLSおよび頁画像PLEの間にある頁画像PLMの補正後上側基準線MBUL’および補正後下側基準線MBDL’を求める(ステップ5)。
なお、補正後上側基準線MBUL’を算出するのと補正後下側基準線MBDL’を算出するのとは、使用するデータが異なるだけであり、処理自体は同じであるので補正後上側基準線MBUL’を求める処理を代表して説明する。
【0075】
頁数の小さい頁画像PLSを基準頁とし、補正後上側基準線MBUL’を求めようとする頁画像PLSおよび頁画像PLEの間にある頁画像PLMの基準頁からの頁数をYとする。
【0076】
この補正後上側基準線MBUL’は、上述した線形性から頁画像PLSの補正後上側基準線SBUL’を、Y頁分(Y回)、補正後上側基準線の1頁当たりの摂動量ΔBUL’で摂動させたものに等しい。
【0077】
このことから、演算部42は、以下の式(8)に従って、頁画像PLSおよび頁画像PLEの間にある頁画像PLMの補正後上側基準線MBUL’を求める。
MBUL’=SBUL’+ΔBUL’×Y・・・(8)
【0078】
同様に、演算部42は、以下の式(9)に従って、頁画像PLSおよび頁画像PLEの間にある頁画像PLMの補正後下側基準線MBDL’を求める。
MBDL’=SBDL’+ΔBDL’×Y・・・(9)
【0079】
なお、ステップ5において演算部42が求めた頁画像PLSおよび頁画像PLEの間にある頁画像PLMの補正後上側基準線MBUL’および頁画像PLSおよび頁画像PLEの間にある頁画像PLMの補正後下側基準線MBDL’は、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
【0080】
(
図3:ステップ6)
次に、頁画像PLSおよび頁画像PLEの間にある頁画像PLMの射影行列MAを求める(ステップ6)。
頁数の小さい頁画像PLSを基準頁とし、射影行列MAを求めようとする頁画像PLSおよび頁画像PLEの間にある頁画像PLMの基準頁からの頁数をYとする。
【0081】
この射影行列MAは、上述した線形性から頁画像PLSの射影行列SAを、Y頁分(Y回)、射影行列の1頁当たりの摂動量ΔAで摂動させたものに等しい。
このことから、演算部42は、以下の式(10)に従って、頁画像PLSおよび頁画像PLEの間にある頁画像PLMの射影行列MAを求める。
MA = SA + ΔA×Y・・・(10)
【0082】
なお、ステップ6において演算部42が求めた頁画像PLSおよび頁画像PLEの間にある頁画像PLMの射影行列MAは、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
【0083】
(
図3:ステップ7)
ステップ6で頁画像PLSおよび頁画像PLEの間にある頁画像PLMの射影行列MAが求まったので、演算部42は、頁画像PLSおよび頁画像PLEの間にある頁画像PLMについて、求めた射影行列MAで頁画像PLM全体を射影し、頁画像PLSおよび頁画像PLEの間にある頁画像PLMの補正後頁画像PLM’を求める。
【0084】
なお、ステップ7において演算部42が求めた頁画像PLMの補正後頁画像PLM’は、パソコン4の記憶部(HDD)41若しくは演算部42のRAMに記憶される。
【0085】
(
図3:ステップ8)
次に、補正後上側基準線と補正後下側基準線のシフトが必要か判断する(ステップ8)。
これは、例えば、
図6に示したように、頁画像の一番上の行を上側基準線とし、一番下の行を下側基準線とした場合、補正を行うべき画像部分の一部が上側基準線と下側基準線との間に収まっていない場合がある。
【0086】
そこで、補正すべき画像部分が上側基準線と下側基準線との間に収まるようにするために、補正後上側基準線と補正後下側基準線とを余白側に平行移動(シフト)する必要があるかを判定する。
【0087】
この場合、本Bは、各頁において、一番上の行と一番下の行は、紙面上の同じ位置に位置し、上側の余白および下側の余白も各頁で同じだけ取られているのが一般的であるため、例えば、頁画像PLSを代表頁として、上記シフトが必要かを判断すればよい。
そして、シフトの必要がなければステップ8(NO)としてステップ10へ進み、シフトが必要であればステップ8(YES)としてステップ9に進む。
【0088】
(
図3:ステップ9)
ステップ8でシフトの必要があると判断された場合(ステップ8:YES)、補正後上側基準線を、余白を超えない範囲で上側に平行移動(シフト)させるとともに、補正後下側基準線を、余白を超えない範囲で下側に平行移動(シフト)させる。
【0089】
上述したように、本Bにおいて、各頁で、一番上の行と一番下の行は、紙面上の同じ位置に位置し、上側の余白および下側の余白も同じだけ取られているのが一般的であるため、例えば、頁画像PLSを代表頁として、どの程度、シフトさせるのかを決めて、残る頁も同じだけシフトさせればよい。
【0090】
このようなシフトを行っても単に平行移動を実施しただけであるので、補正後上側基準線の両端の2点および補正後下側基準線の両端の2点の合計4点を真直ぐな直線で結んだときの形状は、きれいな四角形(矩形状)を保ったままである。
【0091】
(
図3:ステップ10(
図11の処理B))
ステップ9までの処理によって、全ての左側の頁PLについて、補正後頁画像PL’、つまり、頁画像PLSの補正後頁画像PLS’、頁画像PLEの補正後頁画像PLE’および頁画像PLSと頁画像PLEとの間にある頁画像PLMの補正後頁画像PLM’が得られた。
【0092】
また、ステップ9までの処理によって、全ての左側の頁PLについて、補正後上側基準線BUL’および補正後下側基準線BDL’、つまり、頁画像PLSの補正後上側基準線SBUL’および補正後下側基準線SBDL’、頁画像PLEの補正後上側基準線EBUL’および補正後下側基準線EBDL’、および、頁画像PLSと頁画像PLEとの間にある頁画像PLMの補正後上側基準線MBUL’および補正後下側基準線MBDL’が得られたので、補正後頁画像PLS’、PLE’およびPLM’の残る歪みを除去する処理を実施する。
【0093】
つまり、
図4のフロー(処理A)の説明を終えた後に、
図10を参照しながら説明したように、補正後頁画像PLS’、PLE’およびPLM’は、まだ、完全に歪みがなくなっているわけではなく、さらに、残る歪みを補正する処理を行う必要があると述べた残る歪みを補正する処理Bを実施する(ステップ10)。
【0094】
以下、
図11に示す処理Bのフローチャートを参照しながら、処理Bの説明を行う。
先ず、演算部42は、初めに処理する補正後頁画像を選択する(ステップB1)。
ここでは、例えば、頁数が一番小さい補正後頁画像PLS’を選択するものとする。
図12に、この選択した補正後頁画像PLS’の状態を模式的に示した図を示している。
【0095】
補正後頁画像PLS’は、射影行列SAで射影された後の頁画像であるので補正後上側基準線SBUL’の両端の2点(r2’およびr3’)と補正後下側基準線SBDL’の両端の2点(r1’およびr4’)との合計4点を真直ぐな直線で結んだ輪郭R2(以下、矩形輪郭R2とも呼ぶ)は、きれいな四角形(矩形状)の状態となるように歪み補正が済んでいるが、補正後上側基準線SBUL’および補正後下側基準線SBDL’の状態を見るとわかるように、補正後頁画像PLS’自体は、綴じ目方向(Y方向)における湾曲が残ったままである。
【0096】
ここで、上記湾曲は、実際の撮像時の頁の湾曲に伴うものであるが、補正後頁画像PLS’の最も湾曲している部分(U参照)は、補正後頁画像PLS’の左右の端部よりもカメラ22に近い状態で撮像されているため、左右の端部と比べて大きく撮影されている。
つまり、補正後頁画像PLS’の幅方向の略中央付近の補正後上側基準線SBUL’から補正後下側基準線SBDL’まで綴じ目方向に沿って延在する領域Uは、矩形輪郭R2よりも綴じ目方向に大きい(長い)。
【0097】
このように、補正後頁画像PLS’の綴じ目方向の長さは、補正後頁画像PLS’の幅方向でばらついており、これを均一化し、矩形輪郭R2内に収めるべく、縦方向補正処理を実行する。
【0098】
先ず、
図11のステップB2の補正後頁画像の縦方向補正のフローを説明する前に、
図13に示す模式図を参照して、縦方向補正処理で用いる変換式について説明する。
なお、以下では、
図12の補正後頁画像PLS’の補正後上側基準線SBUL’および補正後下側基準線SBDL’と、補正後上側基準線SBUL’および補正後下側基準線SBDL’の両端を真直ぐな直線で結んだ輪郭を補正後頁画像PLS’の輪郭R1と呼ぶ。
【0099】
図13中のFは便宜上置かれた焦点である。A’は補正後頁画像PLS’の輪郭R1における任意の領域Uの上点、B’は領域Uにおける任意の領域Uの下点、P’はA’−B’線上における任意の点、Aは矩形輪郭R2内で領域Uに対応する部分の上点、Bは矩形輪郭R2内で領域Uに対応する部分の下点、PはA−B線上における点P’に対応する点を示している。
【0100】
この
図13から以下の関係がわかる。
ΔA’FB’∝ΔAFB
∴FP:FP’=h:H
ΔAFP∝ΔA’FP’
∴AP:A’P’=h:H
∴AP=h/H・A’P’
ここで、A点のY座標値をyaとし、P点のY座標値をypとし、A’点のY座標値をya’とし、P’点のY座標値をyp’とすると、
A’P’=ya’-yp’
AP= ya -yp
となる。
∴yp=h/H・(yp’ -ya’)+ya・・・(11)
この式(11)によって任意の点P’の変換後のPのY座標値を求めることができる。
実際には、矩形輪郭R2内のメッシュ内の各点の階調に、対応する輪郭R1の点における階調を当てはめていく補正を行う。
【0101】
(
図11:ステップB2(
図14の縦方向補正処理))
次に、上記で説明した補正後頁画像の縦方向補正(縦方向補正処理)の流れについて
図14に示すフローチャートを参照して説明する。
先ず、演算部42は矩形輪郭R2の綴じ目方向の長さhを取得する(ステップS61)。
具体的には、補正後頁画像PLS’の輪郭R1の右側若しくは左側の上下の角部の間隔、つまり、
図12のr1’とr2’との間の間隔若しくは
図12のr4’とr3’との間の間隔を長さhとする。
次に、演算部42は補正後頁画像PLS’の輪郭R1を幅方向にn分割し、各分割領域U1の横座標x(i)を設定する(ステップS62)。つまり、演算部42が本発明に係る分割手段である。
【0102】
続いて、演算部42はiを1に設定する(ステップS63)。
さらに、演算部42は補正後頁画像PLS’の輪郭R1を基にx(i)での縦方向の長さHを取得する(ステップS64)。
そして、演算部42は分割領域U1間の境目のP’点に対応するY座標値(yp’)を、式(11)を用いて算出し、当該P’点の画像を変換する(ステップS65)。
【0103】
続いて、演算部42は、x(i)での綴じ目方向全ての点で変換処理が終わったか否かを判断し(ステップS66)、終わっていない場合(ステップS66:NO)はステップS65に移行して、終わっている場合(ステップS66:YES)はステップS67に移行する。
【0104】
次に、ステップS67では、演算部42は、iがn−1であるか否かを判断し(ステップS67)、n−1である場合(ステップS67:YES)は縦方向補正処理を終了して
図11のフローに戻り、n−1でない場合(ステップS67:NO)はステップS68に移行する。
【0105】
ステップS68に移行した場合、演算部42は、i=i+1としてステップS64に移行する。これによってn−1個ある分割領域U1間の境目の全てに対して縦方向補正が実行される。
このように、演算部42は、分割領域U1毎に綴じ目方向の長さを補正する本発明に係る第1補正手段を構成している。
【0106】
図11に戻って説明を続ける。ステップB3では、演算部42は、縦方向補正後の補正後頁画像PLS’に対して幅方向補正処理を実行する。つまり、演算部42は本発明に係る第2補正手段を構成している。
図15は縦方向補正を終えた後の補正後頁画像PLS’とその輪郭R1と、矩形輪郭R2とを模式的に示した図である。
なお、以下では、特に断りがない限り、縦方向補正を終えた後の補正後頁画像PLS’のことを、単に、補正後頁画像PLS’と記載する。
【0107】
補正後頁画像PLS’およびその輪郭R1においては、
図15に示すように綴じ目方向の湾曲が残ったままであるので、
図15に示すように湾曲W1を直線L1に戻す処理を行う必要がある。この際、幅方向の場所によって補正量が変動するため、ステップB3で幅方向補正を実行する。
【0108】
(
図11:ステップB3(
図16の幅方向補正処理))
図16は幅方向補正処理の流れを示すフローチャートである。
演算部42は、矩形輪郭R2の綴じ目方向の長さhを取得する(ステップS71)。
次に、演算部42は補正後頁画像PLS’の輪郭R1を幅方向にn分割し、各分割領域U1の横座標x(i)を設定する(ステップS72)。
【0109】
続いて、演算部42はiを1に設定する(ステップS73)。
そして、演算部42はx(i)での撓み量dz(i)を推定する(ステップS74)。つまり、演算部42が本発明に係る推定手段である。
図17は分割領域U1における撓み量d(z)を示す説明図であり、(a)は実際の頁P1の断面図、(b)は補正後頁画像PLS’を示す正面図である。
図17(a)に示すように、実際の頁P1の法線方向(Z方向)の撓み量dz(i)は、厳密に言うとi番目の分割領域U1と、i−1番目の分割領域U1とのZ方向の差分によって求まる。しかしながら、この算出にはカメラ22から紙面までの距離や、角度が必要であり、それらの測定が手間となる。ここで、分割領域U1の幅が微小であれば、i番目の分割領域U1の綴じ目方向の長さH(i)と、i−1番目の分割領域U1の長さH(i−1)との差分が撓み量dz(i)と近似的に等しくなる。この関係性を用いて、分割領域U1の撓み量dz(i)を推定する。
具体的には、式(1)により撓み量dz(i)を推定する。
dz(i)=k・{H(i)−H(i−1)}・・・(1)
なお、ここでkは任意の係数である。この係数kを用いることで、幅方向補正処理後の画像を幅方向で調整することができる。ここで暫定的にk=1で計算していく。
【0110】
図16のフローに戻って、演算部42は実際の幅dx’(i)を求める(ステップS75)。
dx(i)は補正後頁画像PLS’におけるi番目の分割領域U1の幅である。
dx(i)=x(i)−x(i−1)={x(n)−x(0)}/n
実際の幅dx’(i)は、x(i)の高さz(i)によって修正を受けている。z(i)が高い場合、Hが大きくなると同様に幅も大きくなっている。つまり、実際の幅dx’(i)は小さい。この関係は以下の式にまとめられる。
dx’(i)=h/H(i)・dx(i)
【0111】
次に、演算部42はds(i)を求める(ステップS76)。
ds(i)は、i番目の分割領域U1における実際の頁P1の微小長さである。
図18は、ds(i)、dz(i)及びdx’(i)の関係を示す説明図である。
図18に示すように、ds(i)は、ステップS74で求めたZ方向の長さdz(i)とステップS75で求めたX方向の長さdx’(i)とを基にした三平方の定理によって算出される。
ds(i)={dz(i)
2+dx’(i)
2}
1/2
【0112】
続いて、演算部42はiがnであるか否かを判断し(ステップS77)、nである場合(ステップS77:YES)はステップS79に移行し、nでない場合(ステップS77:NO)はステップS78に移行する。
ステップS78では、演算部42は、i=i+1としてステップS74に移行する。これによってn個ある分割領域U1の全てに対してdz(i)、dx’(i)及びds(i)が求められる。
【0113】
一方、ステップS79では、演算部42は、実際の頁P1の幅方向の長さSを求める。具体的には、n個ある分割領域U1の全てのds(i)の総和を求めることで、実際の頁P1の幅方向の長さSが算出される。
そして、演算部42は、iを再び1に設定する(ステップS80)。
【0114】
次に、演算部42は、1からi番目まで分割領域U1のds(i)を求め、その累積値S(i)を算出する(ステップS81)。
【0115】
続いて、演算部42は、x(i)をx’(i)に対応させて画像を変換する(ステップS82)。
図19は、幅方向補正処理前のx’(i)と、幅方向補正処理後のx(i)との関係を示す説明図である。
図19に示すように、頁P1の実際のSとS(i)との比は、x(0)からx(n)までの長さとx(0)からx(i)までの長さの比と同値であるから、以下の式のような関係となる。
S:S(i)=x(n)−x(0):x(i)−x(0)
この関係性を基に、x’(i)をx(i)に変換することにより、任意の点Pの画像を変換する。なお、変換式はx(i)=f(x’(i))であるが、この式については明確なものはなく、S(i)に対応するx’(i)を逐次的に見つけ出してx(i)と対応させている。
【0116】
そして、演算部42は、x(i)での綴じ目方向全ての点で変換処理が終わったか否かを判断し(ステップS83)、終わっていない場合(ステップS83:NO)はステップS82に移行して、終わっている場合(ステップS83:YES)はステップS84に移行する。
【0117】
次に、演算部42は、iがnであるか否かを判断し(ステップS84)、nである場合(ステップS84:YES)は幅方向補正処理を終了して
図11のフローに戻り、nでない場合(ステップS84:NO)はステップS85に移行する。
ステップS85では、演算部42は、i=i+1としてステップS81に移行する。これによってn個ある分割領域U1の全てに対して幅方向補正が実行される。
【0118】
(
図11:ステップB4)
そして、ステップS84(YES)として
図11のフローに戻ると、次に、演算部42は、縦方向補正処理及び幅方向補正処理が施されたn個の分割領域U1を合成し、全体の画像を作成する(ステップB4)。つまり、演算部42が本発明に係る合成手段である。
【0119】
具体的には、幅方向補正処理によって補正された幅方向の長さを累積加算することにより、高さ方向補正処理後のn個の分割領域U1を合成し、記憶部(HDD)41に保存する。
【0120】
(
図11:ステップB5)
引き続き、演算部42は、全ての左側の頁PLについて処理を行ったかを判断し(ステップB5)、処理を終えていない頁がある場合(ステップB5:NO)は頁数が1つ大きい処理前の補正後頁画像PL’を選択し(ステップB6)、再び、ステップB2に戻り、先ほどと同様の手順で、この新たな処理前の補正後頁画像PL’に対して縦方向補正、横方向補正および分割領域の合成を行う。
【0121】
一方、全ての左側の頁PLについて処理を行った場合(ステップB5:YES)は、全ての左側の頁画像PLについて、歪みのない画像が得られたので処理を終了し、今度は、上記で説明したのと同様の手順で右側の頁画像PRについての処理を行う。
【0122】
なお、上記で説明した処理Bのフローは、各頁画像毎に射影行列で射影を行った補正後頁画像の残る歪みを補正する処理である。
この処理を行うに当たり、補正後頁画像およびその補正号頁画像に対応した補正後上側基準線および補正後下側基準線を用いる。
【0123】
本実施形態では、この処理Bのフローに入る前の前処理として補正後頁画像およびその補正後頁画像に対応した補正後上側基準線および補正後下側基準線を求める場合を示したが、前処理として求める必要はない。
この処理Bで各頁画像を選択する毎に、その頁画像についての射影行列を線形性に基づいて求め、その求めた射影行列で補正後頁画像を得るとともに、その補正後頁画像に対応した補正後上側基準線および補正後下側基準線を線形性に基づいて求めた後、ステップB2〜B5の処理を行うようにしてもよい。
【0124】
また、本実施形態では、幅方向補正処理におけるdz(i)を求める際に、式(1)に対して係数k(暫定的にk=1)を用いている。
上記処理により、各分割領域U1の幅方向の均一化が図られるものの、幅全体の長さの正確性に問題が生じる。
【0125】
例えば、
図20(a)では、湾曲度が小さい頁P1に対して補正を施した場合を示し、
図20(b)では、(a)の場合と同じ頁P1をより大きく湾曲させて補正を施した場合を示している。この
図20でも明らかなように、補正後の画像Q1、Q2は幅方向の長さが異なることになる。これは実際の頁P1の幅が同じであってもその湾曲度によってH(i)とH(i−1)との差分が大きく異なってしまうことに起因する。このばらつきを抑制するべく、係数kを考慮し、処理を行うことができる。
【0126】
すなわち、実際は、頁P1のアスペクト比(例えば規定の紙サイズ)がわかっているので、
図11のステップB4で求められた画像の横幅と頁P1のアスペクト比から求められる横幅との比が係数kに相当する。
したがって、ステップB4で求められた画像をこの比に対応して幅方向に拡縮することにより、所望のアスペクト比で歪みのない画像を求めることができる。
具体的には、余白部分を含めた補正後の画像が所定のサイズ(例えば規定の紙サイズ)になるように幅方向に拡縮することが好ましい。
【0127】
以上のように、本実施形態によれば、射影行列で歪み補正を行った後の補正後頁画像を綴じ目方向に延在する略矩形状の分割領域U1に分割する前に、先ず、補正後頁画像の全体の輪郭が補正されるので、分割領域U1に分割しやすくすることができる。
【0128】
そして、分割領域U1毎に綴じ目方向の長さを補正した後に、実際の頁P1における分割領域U1の法線方向の撓み量を推定し、当該推定した撓み量に基づいて幅方向の長さも補正されているので、綴じ目方向の補正と幅方向の補正とを効率的に行うことができる。
したがって、湾曲した紙面を撮像した場合であっても、切り取った画像が判読しやすくなるように適切に効率よく補正することができる。
【0129】
また、分割領域U1の撓み量が、当該分割領域U1の綴じ目方向の長さに基づいて推定されているので、撓み量を実測しなくともよく、それだけ効率的に撓み量を求めることができる。
さらに、幅方向補正処理によって補正された幅方向の長さを累積加算することにより、高さ方向補正処理後のn個の分割領域U1が合成されているので、幅方向の長さを画像全体として適切に補正することができる。
【0130】
ここで、全ての頁画像について、上側基準線および下側基準線を定めて、4つの基準点に基づき射影行列を求め、射影行列で射影した後の補正後上側基準線および補正後下側基準線を求めるようにすることも可能であるが、本実施形態のように、初めの頁と終わりの頁だけについて、上側基準線および下側基準線を定めて、4つの基準点に基づき射影行列を求め、射影行列で射影した後の補正後上側基準線および補正後下側基準線を求めるようにして、間の頁に関しては線形性に基づいて射影行列、補正後上側基準線および補正後下側基準線を求めるようにすることで大幅に演算量を低減し、処理速度を向上させることが可能になる。
【0131】
なお、本実施形態では、上側基準線および下側基準線を定めて、4つの基準点に基づき射影行列を求め、射影行列で射影した後の補正後上側基準線および補正後下側基準線を求める頁を、初めの頁と終わりの頁としたが、必ずしも初めの頁と終わりの頁とする必要はない。
初めの方の頁と終わりの方の頁を選択し、その間にある頁の射影行列、補正後上側基準線および補正後下側基準線を線形性に基づき求めるようにしてもよいことは言うまでもない。
【0132】
(上側基準線および下側基準線の取得)
以上、画像処理の全体の説明を終えたので、先に、
図4のステップA1の所で後ほど説明すると述べた基準曲線(上側基準線および下側基準線)の具体的な取得方法について引き続き説明を行う。
【0133】
図21は、基準曲線の取得手順を示したフローチャートである。
なお、上側基準線を取得する手順と下側基準線を取得する手順は、頁画像における位置が異なるだけであり、処理内容自体は同じであるので、以下では、これらを代表して基準曲線として説明する。
【0134】
まず、
図5で示したような基準曲線として適切な曲線が存在する場合は、自動処理が可能であり、この場合、先ず、演算部42は、全ての輪郭を抽出する(ステップC1)。
【0135】
次に、演算部42は、その抽出された輪郭の中から、2次モーメント(慣性モーメント)を求め、得られた2次モーメントm02、m20を基に重心周りの2次モーメントI=m02+m20を求めて、この量が一番大きい輪郭を基準曲線とすべき輪郭として取得する(ステップC2)。
なお、
図5の場合、ステップC1およびC2を頁画像の上側(上側基準線の抽出)と頁画像の下側(下側基準線の抽出)に分けて行えばよい。
この重心周りの2次モーメントは、細長い形状で大きな値を有するので、
図5の上側および下側に見られる幅方向に細長く延びる曲線が抽出される。
【0136】
図22は、輪郭の状態で抽出された基準線とすべき曲線を模式的に示した図である。
図22の黒丸は、輪郭を構成する座標点の一部を示したものであり、この輪郭として抽出したものを1つの点列の曲線として取得する必要がある。
【0137】
ここで単純に座標の位置だけでは、この輪郭の中で上に位置する点列よりも上側に位置する下の点列が存在することなどから、座標点の採用の仕方で複数のパターンの曲線が生まれ、ばらつきが生じる。
このようなバラツキを起こさないようにするためには、この輪郭の真ん中を通る曲線を取得することが考えられる。
つまり、
図22において、白丸で示すような中点を求め、これら中点の集まり(点列)を基準曲線として取得すれば良いと考えられる。
【0138】
しかしながら、輪郭線上の座標点(黒丸)において、どの座標点(黒丸)同士を対として中点を求めればよいかが定かでない。そこで、以下の手順で輪郭線の中央を通る曲線を求める。
【0139】
先ず、演算部42は、取得した輪郭に対してドロネーの三角分割で輪郭の点列を3点1組の単位に分割する(ステップC3)。
つまり、輪郭の座標点を可能な限り小さい面積で、且つ、正三角形に近い組を3点1組とするように結んで輪郭を三角分割する。
【0140】
図23は、輪郭線内が三角分割された状態を示している。
なお、
図23には、示していないが三角形を形成することができない2点については、
図24に示すように無限遠に仮想的な点を設定し、三角形を形成させるようにしている。
【0141】
次に、三角形を形成する組について不適切な組を除く作業をしていく。
例えば、三角形を形成する組が輪郭線の外側に描かれる組も含めn組あったものとする。
演算部42は、i=0として、この不適切な三角形の組を除去するための走査を開始する(ステップC4)。
【0142】
三角形の組のうち、輪郭の外側に位置する三角形は、輪郭内の中点を含まないので、演算部42は、選択されたi番目の組が輪郭の外側に位置する三角形を形成する組かを判断し(ステップC5)、輪郭内の三角形を形成する組の場合(ステップC5:NO)、輪郭内の中点を含む三角形を形成する組である可能性があるので、削除せず、そのままステップC8に進む。
【0143】
一方、i番目の組が、輪郭の外側に位置する三角形を形成する組の場合(ステップC5:YES)、このi番目の組を別の配列に記憶させた後(ステップC6)、三角分割のデータが記憶されている配列からi番目の組を削除する(ステップC7)。
なお、ステップC6で別の配列にi番目の組を記憶させて完全に削除しないのは、不要な三角形の組を求めるのに後ほど使用するからである。
【0144】
次に、演算部42は、全ての組を操作したか(i=n−1か?)を判断し(ステップC8)、全ての組の走査が終了していない場合(ステップC8:NO)、i=i+1として(ステップC15)、再びステップC5に戻る。
全ての組の走査が終了している場合(ステップC8:YES)、演算部42は、i=0として新たに組の走査を開始する(ステップC9)。
【0145】
ここで、上記走査によって削除されずに三角分割のデータの配列内に残っている組が、m組であるとして、以下の説明を進める。
演算部42は、先ほど別の配列に記憶させた削除すべき組のうちのいずれかの組の2点(削除した組の2点)と、i番目の組の2点が、一致するかを判断し(ステップC10)、i番目の組が一致する2点を有していない場合(ステップC10:NO)、i番目の組を削除して(ステップC16)、ステップC13に進む。
【0146】
これは、三角形の辺が輪郭上に位置する場合、無限遠に仮想的な点を設けた三角形(先に別の配列に記憶させた除去すべき三角形)と辺を共有するが、ステップC10でNOとなる場合、2点が一致していないので辺を共有しておらず、このi番目の組は、輪郭上に辺を有していない。
【0147】
このような三角形は、
図25に示すように、隣接する輪郭内の三角形から求められる中点と同じ中点を有するだけであるので中点を求めるのに不要であるだけでなく、この三角形を利用して中点を求める処理を行うと、重複した中点が出現するので後ほど、重複した中点を1つの中点にするために、余計な中点のデータを除く重複処理も必要になるため削除を行う。
【0148】
図21のフローに戻って、先ほど別の配列に記憶させた削除すべき組のうちのいずれかの組の2点と、i番目の組の2点が一致した場合(ステップC10:YES)、演算部42は、今比較した2点が一致した組以外の別の組で、2点が一致する組が別の配列に記憶させた削除すべき組にあるか、つまり、別の削除した組の2点と、i番目の組の2点が一致するかを判断する(ステップC11)。
【0149】
ここで、別の削除した組の2点と、i番目の組の2点が一致する場合(ステップC11:YES)、先ほどのステップC10で発見された組と合わせると、i番目の組は、輪郭の外の三角形として削除される2つの三角形と辺を共有していることになる。
つまり、i番目の組が形成する三角形は、
図25に点線で囲まれている位置にある三角形を形成している。
【0150】
そして、
図25を見るとわかるように、この点線で囲まれている三角形は、輪郭の一方側の線上に3点を有し、輪郭内を横断する三角形ではないので輪郭の中点を含まない。
このため、ステップC11(YES)の場合は、演算部42は、i番目の組を削除し(ステップC12)、ステップC13に進む。
【0151】
一方、ステップC11(NO)の場合、輪郭の中点を含む三角形を形成しているので、i番目の組の3点の内、削除した組の2点と一致した点以外の1つの点と各々一致した2点とを結ぶ辺の中点(
図25の斜線ありの三角形の白丸参照)を取得した後(ステップC17)、ステップC13に進む。
【0152】
なお、この処理においても隣接する中点を含む三角形が取得する中点と同じ点が重複取得されることになるため、余計な中点のデータを除く重複処理を行う必要がある。
但し、全ての中点を取得した後に重複処理を行ってもよく、また、中点を取得する処理中に重複する中点が現れたときに、余計な中点のデータを除くようにしてもよい。
【0153】
そして、演算部42は、全ての組を走査したか(i=m−1?)を判断し(ステップC13)、全ての組の走査が終っていない場合(ステップC13:NO)、演算部42は、i=i+1として(ステップC18)、再びステップC10に戻る。
【0154】
一方、全ての組の走査が終了している場合(ステップC13:YES)、演算部42は、中点を曲線として表すように整列させて点列(点座標)とした基準曲線(上側基準線、下側基準線)を作成する(ステップ14)。
なお、上記では
図5に示すような基準曲線とすべき曲線がある場合について説明したが、そのような適切な線がない場合には、
図6で説明したように、1番上の行や1番下の行の部分に仮想的なマーカーを設け、それを認識させるようにすればよい。
【0155】
(第2実施形態)
図26は、第2実施形態の構成を示す図である。
以下では、第1実施形態と異なる点について主に説明し、同様の部分についての説明については割愛する。
【0156】
図26に示すように、第2実施形態の書画カメラシステム1では、カメラ付タブレット6をタブレット据置台7上に設置し、本Bの片側の頁(図では右側の頁PR)の略中央にカメラ付タブレット6の背面に設けられたカメラ6bを位置させるようにして頁画像の撮像を行うようにしている。
また、カメラ付タブレット6は、カメラ6bと反対側となる表面にタッチパネル式の表示部6aを備えている。
【0157】
図27は第2実施形態の書画カメラシステム1の主制御構成を示すブロック図である。
カメラ付タブレット6は、記憶部(STG:ストレージ)61と、演算部62と、通信部63と、カメラ6bとを備えている。
記憶部(STG)61には、撮像した頁画像並びに補正した補正後頁画像等や各種演算で求めた値(基準曲線、摂動量等)が記憶される。
なお、
図27では、カメラ付タブレット6内に記憶部(STG)61を設けている場合を示しているが、クラウドなど保存データのみ外部のストレージを使うようにしてもよい。
【0158】
演算部62には、自動頁めくり装置5およびカメラ6bを制御して自動で頁画像を撮像するためのプログラム(以下、自動撮影用のプログラムともいう)や撮像した頁画像を補正するプログラム(以下、画像処理プログラムともいう)等の各種プログラムが記録されたROM(図示せず)と、ROM中のプログラムの実行時に当該プログラムが展開されるRAM(図示せず)と、ROM中のプログラムをRAMに展開し実行するCPU(図示せす)とが備えられている。
【0159】
通信部63は、自動頁めくり装置5との間での同期を取った通信を行なう。
なお、
図27には、図示していないが、カメラ付タブレット6は、タッチパネル式の表示部を備え、この表示部が操作手段となる。
また、
図26では、カメラ付タブレット6と自動頁めくり装置5との間の通信を無線通信としている場合を示しているが、有線通信としてもよい。
【0160】
このように、書画カメラシステム1をカメラ付タブレット6で構成するとタッチ操作のような優れた操作性を有する操作手段によって基準曲線の取得などを行えるという利点がある。
【0161】
一方、第2実施形態でも、第1実施形態で説明した処理と同様の処理を演算部62が行う点では同じであるが、上述のように、第2実施形態では、カメラ6bの位置が本Bの片側の頁(図では右側の頁PR)の略中央に位置するようにして撮像を行っているため、上側基準線と下側基準線のうちの一方を取得すれば、画像処理によって他方の基準線を取得することが可能である。
【0162】
具体的に、
図28を参照して説明すると、
図28の上側にある頁幅方向に延びる実線は、実際に取得する上側基準線である。
ここで、カメラ6bの位置が実際の頁の略中央に位置した状態で頁画像が撮像されているため、撮像された頁画像の湾曲(歪み)状態は、頁画像の中央線(紙面の中心線参照)を基準に上下対称の状態になる。
【0163】
このため、下側基準線は、取得した上側基準線を頁画像の中央線で折り返した形状として仮想的に取得することが可能である。
このように、第2実施形態によれば、基準曲線(上側基準線、下側基準線)を取得する演算を低減することが可能である。
【0164】
(第3実施形態)
図29は、第3実施形態の構成を示す図である。
以下では、第2実施形態と異なる点について主に説明し、同様の部分についての説明については割愛する。
【0165】
図29に示すように、第3実施形態の書画カメラシステム1では、カメラ付タブレット6がパソコン4に接続されている点が異なる。
図30に第3実施形態の書画カメラシステム1の主制御構成を示すブロック図を示しているが、
図30に示されるように、パソコン4は、主に演算部42と、記憶部(HDD)41とを備える。
【0166】
このような書画カメラシステム1の構成とすることで、カメラ付タブレット6は、頁画像の撮像処理と、
図3のフローのステップ1〜4の処理を主に行い、必要なデータをパソコン4側に送信し、ステップ5以降の演算量が多くなる処理部分については、高速なデータ処理が可能であるパソコン4側で行わせるようにする。
【0167】
このように、第3実施形態では、基準曲線の取得など操作性が求められるような部分を高い操作性を有するカメラ付タブレット6で行い、演算量が多くなり、処理が重くなる画像処理の主な部分を高速処理が可能なパソコン4で行うことができるので、良好な操作性と高速な画像処理とを両立することが可能となる。
【0168】
以上、具体的な実施形態に基づき、本発明の説明を行ってきたが、本発明は、上記実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれる。以下に、本願出願当初の特許請求の範囲に記載された発明を付記する。
【0169】
(付記1)
書籍の厚み方向が撮像されるように前記書籍における複数頁の紙面を頁毎に撮像した頁画像を取得する取得手段と、
前記取得した頁画像のうちの所定の第一の頁に対応する頁画像と前記第一の頁とは異なる第二の頁に対応する頁画像とに基づいて前記第一の頁を開いたときと前記第二の頁を開いたときの厚みの変化量を導出する導出手段と、
前記厚みの変化量に基づいて前記第一の頁と前記第二の頁との間にある第三の頁に対応する紙面の画像を補正する補正手段と、
を備えることを特徴とする頁画像補正装置。
【0170】
(付記2)
書籍の厚み方向が撮像されるように前記書籍における複数頁の紙面を頁毎に撮像した頁画像を取得するステップと、
前記取得した頁画像のうちの所定の第一の頁に対応する頁画像と前記第一の頁とは異なる第二の頁に対応する頁画像とに基づいて前記第一の頁を開いたときと前記第二の頁を開いたときの厚みの変化量を導出するステップと、
前記厚みの変化量に基づいて前記第一の頁と前記第二の頁との間にある第三の頁に対応する紙面の画像を補正するステップと、
を含むことを特徴とする頁画像補正方法。
【0171】
(付記3)
本の頁画像を取得する頁画像取得手段と、
前記頁画像の上側に位置する頁幅方向に延びる上側基準線と下側に位置する頁幅方向に延びる下側基準線を取得する基準線取得手段と、
前記上側基準線と前記下側基準線に基づき4つの基準点を取得する基準点取得手段と、
前記基準点に基づいて前記頁画像の歪みを補正する歪み補正手段と、
前記歪み補正後の前記頁画像を前記歪み補正後の前記上側基準線と前記下側基準線との間で綴じ目方向に沿って延在する略矩形状の分割領域が前記綴じ目方向に直交する幅方向にn個配列されるように分割する分割手段と、
前記分割領域毎に前記綴じ目方向の長さを補正する第1補正手段と、
前記第1補正手段で補正された前記分割領域毎に、実際の頁での前記分割領域の法線方向の撓み量を推定する推定手段と、
前記推定手段によって推定された前記撓み量に基づいて前記分割領域毎の前記幅方向の長さを補正する第2補正手段と、
前記第1補正手段及び前記第2補正手段で補正されたn個の前記分割領域を合成して合成頁画像を取得する合成頁画像取得手段と、
を備えることを特徴とする頁画像補正装置。
【0172】
(付記4)
前記基準点取得手段は、上側基準線の両端の2点と下側基準線の両端の2点を4つの前記基準点として取得することを特徴とする付記3に記載の頁画像補正装置。
【0173】
(付記5)
前記推定手段は、前記撓み量の推定が前記分割領域の前記綴じ目方向の長さに基づいて行われることを特徴とする付記3又は4に記載の頁画像補正装置。
【0174】
(付記6)
i番目の前記分割領域の前記綴じ目方向の長さをH(i)とし、i−1番目の前記分割領域の前記綴じ目方向の長さをH(i−1)とし、任意の係数をkとして、
前記推定手段は、前記i番目の前記分割領域の前記撓み量dz(i)を下記式(1)にて推定することを特徴とする付記5に記載の頁画像補正装置。
dz(i)=k・{H(i)−H(i−1)}・・・(1)
【0175】
(付記7)
前記任意の係数kは、前記合成頁画像のアスペクト比が平らな状態にしたときの実際の頁のアスペクト比と略等しくなるように定められることを特徴とする付記6に記載の頁画像補正装置。
【0176】
(付記8)
前記合成頁画像取得手段は、前記第1補正手段及び前記第2補正手段で補正されたn個の前記分割領域を、前記分割手段で分割されたときの前記幅方向の並び順のまま繋げるように合成することを特徴とする付記3乃至7のいずれか1つに記載の頁画像補正装置。
【0177】
(付記9)
前記歪み補正手段は、4つの前記基準点が歪み補正後に位置すべき4つの目標点に射影される射影行列に基づき前記歪み補正を行うことを特徴とする付記3乃至8のいずれか1つに記載の頁画像補正装置。
【0178】
(付記10)
頁数の離れた2つの頁の前記射影行列に基づき、1頁当たりの前記射影行列の摂動量ΔAを求め、2つの前記頁のうちの一方の頁を基準頁として、前記基準頁から離れた頁の前記射影行列を、離れた頁数分だけ前記基準頁の前記射影行列を前記摂動量ΔAで摂動させたものとすることを特徴とする付記9に記載の頁画像補正装置。
【0179】
(付記11)
頁数の離れた2つの頁の前記歪み補正後の前記上側基準線に基づき、1頁当たりの前記歪み補正後の前記上側基準線の摂動量ΔULを求めるとともに2つの頁の前記歪み補正後の前記下側基準線に基づき、1頁当たりの前記歪み補正後の前記下側基準線の摂動量ΔDLを求め、2つの前記頁のうちの一方の頁を基準頁として、前記基準頁から離れた頁の前記歪み補正後の前記上側基準線を離れた頁数分だけ前記基準頁の前記歪み補正後の前記上側基準線を前記摂動量ΔULで摂動させたものとするとともに、前記基準頁から離れた頁の前記歪み補正後の前記下側基準線を離れた頁数分だけ前記基準頁の前記歪み補正後の前記下側基準線を前記摂動量ΔDLで摂動させたものとすることを特徴とする付記3乃至10のいずれか1つに記載の頁画像補正装置。
【0180】
(付記12)
2つの前記頁がどちらも左側頁若しくは右側頁であることを特徴とする付記10又は11に記載の頁画像補正装置。
【0181】
(付記13)
前記基準線取得手段は、前記合成頁画像において真直ぐな直線となるべき前記頁画像の上側に位置する線を前記上側基準線として取得するとともに、前記合成頁画像において真直ぐな直線となるべき前記頁画像の下側に位置する線を前記下側基準線として取得することを特徴とする付記3乃至12のいずれか1つに記載の頁画像補正装置。
【0182】
(付記14)
前記基準線取得手段は、前記合成頁画像において真直ぐな直線となるべき前記頁画像の上側又は下側に位置する線を前記上側基準線又は前記下側基準線として取得するとともに、残る前記下側基準線又は前記上側基準線を前記取得した前記上側基準線又は前記下側基準線を前記頁画像の略中央を基準に折り返した線として取得することを特徴とする付記3乃至12のいずれか1つに記載の頁画像補正装置。
【0183】
(付記15)
前記真直ぐな直線となるべき線が太く、点が繋がった直線と見なせない場合は、前記真直ぐな直線となるべき線の中央を通る点が繋がったと見なせる細い線を前記真直ぐな直線となるべき線とすることを特徴とする付記13又は14に記載の頁画像補正装置。
【0184】
(付記16)
前記真直ぐな直線となるべき線が頁の左右方向の端から端まで届いていない場合は、前記真直ぐな直線となるべき線を延長して頁の左右方向の端から端まで届くようにした線を前記真直ぐな直線となるべき線とすることを特徴とする付記13乃至15のいずれか1つに記載の頁画像補正装置。
【0185】
(付記17)
前記歪み補正後の前記頁画像において、前記第1補正手段及び前記第2補正手段で補正したい画像部分が、前記歪み補正後の前記上側基準線および前記下側基準線の間に位置するように、前記歪み補正後の前記上側基準線および前記下側基準線の位置をシフトさせることを特徴とする付記3乃至15のいずれか1つに記載の頁画像補正装置。
【0186】
(付記18)
本の頁画像を取得するステップと、
前記頁画像の上側に位置する頁幅方向に延びる上側基準線と下側に位置する頁幅方向に延びる下側基準線を取得するステップと、
前記上側基準線と前記下側基準線に基づき4つの基準点を取得するステップと、
前記基準点に基づいて前記頁画像の歪みを補正するステップと、
前記歪み補正後の前記頁画像を前記歪み補正後の前記上側基準線と前記下側基準線との間で綴じ目方向に沿って延在する略矩形状の分割領域が前記綴じ目方向に直交する幅方向にn個配列されるように分割するステップと、
前記分割領域毎に前記綴じ目方向の長さを補正する第1補正をするステップと、
前記第1補正で補正された前記分割領域毎に、実際の頁での前記分割領域の法線方向の撓み量を推定するステップと、
推定された前記撓み量に基づいて前記分割領域毎の前記幅方向の長さを補正する第2補正をするステップと、
前記第1補正及び前記第2補正で補正されたn個の前記分割領域を合成して合成頁画像を取得するステップと、
を含むことを特徴とする頁画像補正方法。
【0187】
(付記19)
頁画像補正装置を制御するコンピュータに、
本の頁画像を取得する機能、
前記頁画像の上側に位置する頁幅方向に延びる上側基準線と下側に位置する頁幅方向に延びる下側基準線を取得する機能、
前記上側基準線と前記下側基準線に基づき4つの基準点を取得する機能、
前記基準点に基づいて前記頁画像の歪みを補正する機能、
前記歪み補正後の前記頁画像を前記歪み補正後の前記上側基準線と前記下側基準線との間で綴じ目方向に沿って延在する略矩形状の分割領域が前記綴じ目方向に直交する幅方向にn個配列されるように分割する機能、
前記分割領域毎に前記綴じ目方向の長さを補正する第1補正をする機能、
前記第1補正で補正された前記分割領域毎に、実際の頁での前記分割領域の法線方向の撓み量を推定する機能、
推定された前記撓み量に基づいて前記分割領域毎の前記幅方向の長さを補正する第2補正をする機能、
前記第1補正及び前記第2補正で補正されたn個の前記分割領域を合成して合成頁画像を取得する機能、
を実現させるためのプログラム。