(57)【特許請求の範囲】
【請求項１】
一方向に曲がっている原稿面を異なる方向から撮像し、この撮像方向の異なった少なくとも２つ原稿面画像から原稿面上の異なる各点の３次元位置情報を求め、これら３次元位置情報を基にして少なくとも１つの原稿面画像の歪みを補正する画像処理方法であって、
前記原稿面における異なる各点の前記３次元位置情報に基づいて、前記異なる各点のうち、任意の点からその近傍点へのベクトルを算出し、原稿面の曲率が最小となる方向を示すベクトルを特定する第１工程と、
このベクトルを前記原稿面の縦軸あるいは横軸に一致させる変換行列を求める第２工程と、
この変換行列から前記原稿面画像を座標変換した変換像画像を求める第３工程と、
この変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する第４工程とを有することを特徴とする画像処理方法。
【請求項２】
一方向に曲がっている原稿面の撮像によって得られた少なくとも２つの原稿面画像から原稿面上の異なる各点の３次元位置情報を求め、これら３次元位置情報を基にして少なくとも１つの原稿面画像の歪みを補正する画像処理装置であって、
前記原稿面における異なる各点の前記３次元位置情報に基づいて、前記異なる各点のうち、任意の点からその近傍点へのベクトルを算出し、原稿面の曲率が最小となる方向を示すベクトルを特定するベクトル演算手段と、
前記ベクトルを前記原稿面の縦軸あるいは横軸に一致させる変換行列を求める変換行列演算手段と、
この変換行列から前記原稿面画像を座標変換した変換画像を求める変換画像演算手段と、
前記変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する歪補正手段とを備えたことを特徴とする画像処理装置。
【請求項３】
請求項１の第１工程ないし第４工程をコンピュータ上で実行できるように記憶したことを特徴とする画像処理方法の記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、撮像装置で撮像した原稿面画像の歪みを補正する画像処理方法および画像処理装置とに関する。
【０００２】
【従来の技術】
従来から、複写機やスキャナに使用される画像処理装置が知られている。かかる画像処理装置は、書籍などの原稿面が曲がった状態で撮像装置で撮像し、この撮像装置で撮像した原稿面画像を入力し、この原稿面画像を原稿面を平面に戻した形で記録や再生することができるようになっており、例えば特許第２８２５３４４号公報、特開平５−１６１０００号公報、特開平５−２１９３２３号公報に開示されものがある。これらは皆、原稿面の３次元位置を検出する計測手段を具備し、それを用いて曲りによって生じる画像歪を補正するものである。
【０００３】
【発明が解決しようとする課題】
ところで、いわゆるモバイル環境では、様々なドキュメント情報を入力したいという要求が増えている。このドキュメントはＡ４紙面から大判のものまで多様な大きさを持っている。この要求に対して、上記公報に記載の画像処理装置に使用される現状のフラットベッドスキャナでは、持ち運びが不可能であり、しかも大判紙面の入力が不可能であるという問題があった。
【０００４】
この発明は、上記事情に鑑みてなされたもので、その目的は、モバイル環境に適したデジタルカメラで撮像した原稿面画像の歪みを補正することのできる画像処理方法と画像処理装置とを提供することにある。
【０００５】
【課題を解決するための手段】
上記目的を達成するため、請求項１の発明は、 一方向に曲がっている原稿面を異なる方向から撮像し、この撮像方向の異なった少なくとも２つ原稿面画像から原稿面上の異なる各点の３次元位置情報を求め、これら３次元位置情報を基にして少なくとも１つの原稿面画像の歪みを補正する画像処理方法であって、
前記原稿面における異なる各点の前記３次元位置情報に基づいて、前記異なる各点のうち、任意の点からその近傍点へのベクトルを算出し、原稿面の曲率が最小となる方向を示すベクトルを特定する第１工程と、
このベクトルを前記原稿面の縦軸あるいは横軸に一致させる変換行列を求める第２工程と、
この変換行列から前記原稿面画像を座標変換した変換像画像を求める第３工程と、
この変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する第４工程とを有することを特徴とする。
【０００６】
請求項２の発明は、一方向に曲がっている原稿面の撮像によって得られた少なくとも２つの原稿面画像から原稿面上の異なる各点の３次元位置情報を求め、これら３次元位置情報を基にして少なくとも１つの原稿面画像の歪みを補正する画像処理装置であって、
前記原稿面における異なる各点の前記３次元位置情報に基づいて、前記異なる各点のうち、任意の点からその近傍点へのベクトルを算出し、原稿面の曲率が最小となる方向を示すベクトルを特定するベクトル演算手段と、
前記ベクトルを前記原稿面の縦軸あるいは横軸に一致させる変換行列を求める変換行列演算手段と、
この変換行列から前記原稿面画像を座標変換した変換画像を求める変換画像演算手段と、
前記変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する歪補正手段とを備えたことを特徴とする。
【０００７】
請求項３の発明は、請求項１の第１工程ないし第４工程をコンピュータ上で実行できるように記憶したことを特徴とする。
【０００８】
【作用】
請求項１の発明によれば、第１工程では３次元位置情報から原稿面の曲率が最小となる方向を示すベクトルを求め、第２ではそのベクトルを原稿面の縦軸あるいは横軸に一致させる変換行列を求め、第３工程ではその変換行列から原稿面画像を座標変換した変換像画像を求め、第４工程ではこの変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する。
【０００９】
請求項２の発明によれば、ベクトル演算手段が３次元位置情報から原稿面の曲率が最小となる方向を示すベクトルを求め、変換行列演算手段が前記ベクトルを原稿面の縦軸あるいは横軸に一致させる変換行列を求め、変換画像演算手段がこの変換行列から原稿面画像を座標変換した変換画像を求め、歪補正手段が前記変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する。
【００１０】
請求項３の発明によれば、請求項１の第１工程ないし第４工程を行うプログラムを記憶媒体に記憶させたものであるから、他のコンピュータで画像処理を行うことができる。
【００１１】
【発明の実施の形態】
以下、この発明に係わる画像処理方法を実施する画像処理装置の実施の形態を図面に基づいて説明する。
［第１実施形態］
図１において、１０は撮影レンズ１１や撮像素子１２を有するデジタルカメラ、２０は撮像素子１２から出力される画像信号を処理する画像処理装置、２５は後述する画像メモリ２１に記憶される画像データの画像等を表示するＬＣＤ等からなる表示装置である。
【００１２】
画像処理装置２０は、撮像素子１２から出力される画像信号をＡ／Ｄ変換するＡ／Ｄ変換器２１と、Ａ／Ｄ変換された画像信号である画像データを記憶する画像メモリ２２と、画像メモリ２２に記憶された画像データに基づいて各種の演算処理を行う演算処理装置２３と、画像の取り込みや電源のオンオフなどの操作を行う操作部２４とを有している。
【００１３】
画像メモリ２２には画像信号を各種の補正処理や圧縮処理して記憶させる。操作部２４にはフォーカシング用の測距センサやズーム倍率の設定機構や各種モードの設定機構をもうけてもよい。
【００１４】
演算処理装置２３は、ＭＰＵ等から構成され、図２に示すように、Ａ／Ｄ変換された画像データを入力する画像入力部１００と、画像メモリ２２に記憶された画像データから図示しない原稿面上の異なる各点の３次元位置情報を演算する３次元位置演算部１０２と、この３次元位置算出部１０２が算出した３次元位置情報を基にして原稿面の各点における曲率が最小となる方向を求めるとともにこれら方向から曲率が最小となる方向ベクトルを演算するベクトル演算部（ベクトル演算手段）１０３と、このベクトル演算部１０３で演算したベクトルを原稿面の縦軸あるいは横軸に一致させる変換行列を求める変換行列演算部（変換行列演算手段）１０４と、この変換行列演算部１０４で求めた変換行列によって原稿面画像を座標変換して変換画像を求める変換画像演算部（変換画像演算手段）１０５と、この変換画像演算部１０５で求めた変換画像を縦および横方向に伸長処理して原稿面画像の歪みを補正する画像伸長部（歪補正手段）１０６とを備えている。
【００１５】
次に、上記実施形態の画像処理装置の動作を図３に示すフロー図を参照しながら説明する。なお、図３に記した符号Ｓはステップを示す。
【００１６】
先ず、デジタルカメラ１０で被写体である原稿面(図示せず)を撮像する。デジタルカメラ１０は、原稿台から独立しており、手持ちでユーザーが自由に位置や方向を決めて撮影することができる。
【００１７】
デジタルカメラ１０の撮像素子１２から出力される画像信号は、操作部２４の操作によりＡ／Ｄ変換器２１によりＡ／Ｄ変換されて、演算処理装置２３の画像入力部１００に取り込まれる。この取り込まれた画像信号である原稿面画像データは画像メモリ２２に記憶される。デジタルカメラ１０での原稿面の撮影はそれぞれ異なる方向から２回以上撮像し、それぞれ撮像した原稿面画像データを画像メモリ２２に記憶させる。
【００１８】
ステップ１では、演算処理装置２３が画像メモリ２２に記憶された少なくとも２枚の原稿面画像データから原稿面上の異なる各点の３次元位置を検出していく。すなわち、演算処理装置２３の３次元位置演算部１０２が少なくとも２枚の原稿面画像データから原稿面上の異なる各点の３次元位置を演算して求めていくものである。
【００１９】
３次元位置の検出方法は、次の通りである。
(１)ある画像の特徴点が他の画像ではどこに映し出されているのか、すなわち画像間で対応している点群を抽出する。
(２)対応情報を用いて、８点アルゴリズムや因子分解法などの手法により、各点の３次元位置を計算する。
【００２０】
ここでの説明では、例えば図４(ａ)に示すように原稿面（被写体面）上のｎ個の点が抽出され、これらｎ個の点の３次元位置が３次元位置演算部１０２の演算によって検出されたとする。
［第１工程］
ステップ２では、原稿面の曲率が最小となる方向を示す方向ベクトルを検出する。
【００２１】
一般に書籍などの原稿は一方向に大きな曲率を持ち、それに直交する方向の曲率は小さい。そこで、この第１工程では、その曲率の最小となる方向を検出する。  図５はその方法の一例を示したものである。原稿面上の位置に相当する任意の点Ｔ0の近傍の点Ｔ1〜点ＴmへのベクトルＶ1〜Ｖmを算出し、Ｖi＝−Ｖjとなる点Ｔi、点Ｔjを発見する。Ｖiと−Ｖjとは必ずしも一致しないので、もっとも等しくなるペアを抽出する。このＶi（あるいはＶj）が曲率最小となる方向ベクトルＶaとなる。一般には、そのベクトルを算出する場合、点Ｔ0の一点を用いるのではなく、点Ｔi（あるいは点Ｔj）からさらにベクトルを伸ばし、Ｖiの延長上付近に点が存在するかを確認したり、点Ｔ0以外の複数の点についても上記の処理を施し、そこで得られたベクトルの平均値を最小曲率の方向ベクトルＶaとする。
【００２２】
ステップ３では、第２工程と第３工程とを行う。
［第２工程］
第２工程では、第１工程で求めた方向ベクトルＶaを縦軸または横軸に一致させて、図４(ａ)に示す原稿面上のｎ個の点を示す画像が図４（ｂ）に示す画像となるように変換する変換行列を算出する。
【００２３】
その方法を以下の式で算出する。ここでは、縦軸に一致させることを考える。すなわち、ＶaをＶb＝（０,１,０）に変換する行列Ｒを次式により算出する。
【００２４】
Ｖc＝Ｖa×Ｖb
Ｖd＝Ｖa×Ｖc
Ｖe＝Ｖb×Ｖc
Ｒ＝［Ｖa｜Ｖc｜Ｖd］・［Ｖb｜Ｖc｜Ｖe］-1
なお、横軸に一致させる場合も同様な方法で実施できる。
［第３工程］
この第３工程では、第２工程で求めた変換行列Ｒから原稿面画像を座標変換した変換像画像を求めるとともに、曲率が最小となる方向を縦軸（Ｙ軸）に一致させる。
［第４工程］
第４工程では、ステップ４の変換画像の縦方向の伸長処理と、ステップ５の変換画像の横方向の伸長処理を行う。
【００２５】
ステップ４では、第３工程で求めた変換画像を図６に示すように縦方向に伸長させ、縦方向の歪みを除去する。なお、図６において、矢印の方向が伸長の方向を示し、矢印の長さが伸長量を示す。また、図６のラインＱ1,Ｑ2が伸長前の歪んだ列を示す仮想線であり、ラインＱ3,Ｑ4が歪みが除去された列を示す仮想線である。以下に、伸長処理の具体的方法を示す。
【００２６】
まず、原稿面画像上における各列の画像の奥行き方向の距離を求めるが、第２工程で、各列内の画素はすべて同じ奥行き距離を持つように変換されており、その値を用いれば良い。ただし、ノイズ等の影響により、各画素で奥行き距離にばらつきがある場合は、例えばそれらの平均を求めるなどすれば良い。また、その列内のどの画素も３次元位置が割り当てられていない場合もある。その時は、スプラインなどの補間処理により、その列の奥行き距離を算出する。また、すべての奥行き距離をその補間処理で決定しても良い。
【００２７】
今、画像のＹ軸（Ｘ0）に相当する原稿面上の各点の奥行き距離をＤ0、i番目の列に相当する原稿面上の各点の奥行き距離をＤiとする。そして、以下の式に従って、i番目の列の、j番目の行の画素位置ＰiＪ1を、ＰiＪ2に列方向に移動させて再配置する。
【００２８】
ＰiＪ2＝ＰiＪ1（Ｄi／Ｄ0）
この再配置処理と、各画素間の補完処理により、縦方向の歪みが除去された画像が生成される。
【００２９】
ステップ５では、ステップ４の処理と同様にして、各行をその方向に伸長すれば横方向の歪みが除去することができる。すなわち、図７に示すように、画像のＸ軸（Ｙ0）からの距離に応じて、行方向に画素を再配置して、横方向に画像を伸長する。図７において、矢印の方向が伸長の方向を示し、矢印の長さが伸長量を示す。また、図７のラインＱ5,Ｑ6が伸長前の歪んだ行を示す仮想線であり、ラインＱ7,Ｑ8が歪みが除去された行を示す仮想線を示す。以下にその具体的な方法を説明する。
【００３０】
図８は、ある行内の画素Ｐi0〜Ｐi3に相当する３次元位置空間上での点の位置を白丸で示しており、Ｐi0はＹ0上の点である。これら点の隣接する点の間の距離Ｌ01〜Ｌ23を求める。そして、再配置すべき画素の位置を、画像の中心線Ｙ0からの距離として、縮尺を合わせて順次足し合せていくことで決定する。例えば、Ｐi3は、（Ｌ01＋Ｌ12＋Ｌ23）・ｆ／Ｆの位置に再配置される。なお、ｆは焦点距離、Ｆは画像の中心点に相当する原稿面上の点までの奥行き距離である。この再配置処理と、各画素間の補完処理により、横方向の歪が除去される。そして、縦方向および横方向の歪みが除去された画像が図４（ｃ）に示すように生成される。なお、画像は適宜拡大あるいは縮小されるように補正しても良い。この場合は、補正時に適当な係数をかければ良い。
【００３１】
そして、縦方向および横方向の歪みが除去された画像は表示装置２３に表示され、図示しないメモリなどに記憶される。なお、歪みが除去された画像は図示しないプリンタによって出力するようにしてもよい。
【００３２】
このように、デジタルカメラ１０で原稿面を異なる方向から撮像し、この撮像した原稿面の画像データを取り込むだけで、歪みが除去された画像を得ることができるので、従来のようなフラットベッドスキャナが不要であり、このため小型軽量化を図ることができ、モバイル環境に適した画像処理装置を提供することができる。
【００３３】
また、上記第１工程ないし第４工程を行うプログラムを記憶媒体に記憶させておくことにより他のコンピュータで画像処理を行うことができる。
［第２実施形態］
図９は第２実施形態の構成を示したものであり、この第２実施形態ではデジタルカメラ１０が撮像する位置や撮像方向（姿勢）の各撮像位置間の相対的な関係を検出する位置姿勢検出部１１０を設けたものである。この位置姿勢検出部１１０により、ステレオ視の原理で３次元位置演算部１０２が３次元位置を検出することができる。
【００３４】
位置姿勢検出部１１０として、加速度センサ、磁気センサ、角速度センサなどを単独乃至これらを組み合わせて構成しても良い。また、エンコーダーを用い、静止物体に対する位置や姿勢を求めても良い。
【００３５】
【発明の効果】
以上説明したように、請求項１および請求項２の発明によれば、デジタルカメラで原稿面を異なる方向から撮像し、この撮像した画像データを取り込めば、歪みが除去された画像を得ることができるので、従来のようなフラットベッドスキャナが不要であり、このため小型軽量化を図ることができ、モバイル環境に適した画像処理装置を提供することができる。
【００３６】
請求項３の発明によれば、請求項１の第１工程ないし第４工程を行うプログラムを記憶媒体に記憶させたものであるから、他のコンピュータで画像処理を行うことができる。また、そのプログラムを他へ伝達したり他へ記録させたりすることができ、また保管することもできることになる。
【図面の簡単な説明】
【図１】この発明に係る画像処理装置の構成をしめしたブロック図である。
【図２】図１の演算処理装置の構成を示したブロック図である。
【図３】画像処理装置の処理動作を示したフロー図である。
【図４】（ａ）は原稿面上のｎ個の点を抽出した状態を示した説明図である。
（ｂ）は方向ベクトルを縦軸または横軸に一致させた状態を示した説明図である。
（ｃ）は縦および横方向の歪みを除去した画像を示した説明図である。
【図５】方向ベクトルの説明図である。
【図６】変換画像を縦方向に伸長させる説明図である。
【図７】変換画像を横方向に伸長させる説明図である。
【図８】横方向の伸長の方法を具体的に示した説明図である。
【図９】第２実施形態の構成を示したブロック図である。
【符号の説明】
２０      画像処理装置
２３      演算処理装置
１０３      ベクトル演算部１０３
１０４      変換行列演算部
１０５      変換画像演算部
１０６      画像伸長部
【図１】
0003904837.tif 000002
【図２】
0003904837.tif 000003
【図３】
0003904837.tif 000004
【図４】
0003904837.tif 000005
【図５】
0003904837.tif 000006
【図６】
0003904837.tif 000007
【図７】
0003904837.tif 000008
【図８】
0003904837.tif 000009
【図９】
0003904837.tif 000010