特許第6143199号(P6143199)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特許6143199画像補正装置、画像補正方法、及びプログラム
<>
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000002
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000003
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000004
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000005
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000006
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000007
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000008
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000009
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000010
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000011
  • 特許6143199-画像補正装置、画像補正方法、及びプログラム 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6143199
(24)【登録日】2017年5月19日
(45)【発行日】2017年6月7日
(54)【発明の名称】画像補正装置、画像補正方法、及びプログラム
(51)【国際特許分類】
   H04N 1/387 20060101AFI20170529BHJP
   H04N 5/232 20060101ALI20170529BHJP
   G06T 3/00 20060101ALI20170529BHJP
【FI】
   H04N1/387
   H04N5/232 Z
   G06T3/00 700
【請求項の数】6
【全頁数】17
(21)【出願番号】特願2015-54266(P2015-54266)
(22)【出願日】2015年3月18日
(65)【公開番号】特開2016-174323(P2016-174323A)
(43)【公開日】2016年9月29日
【審査請求日】2016年1月8日
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】100096699
【弁理士】
【氏名又は名称】鹿嶋 英實
(72)【発明者】
【氏名】二村 亮
【審査官】 石田 信行
(56)【参考文献】
【文献】 特開2014−192901(JP,A)
【文献】 特開昭62−125470(JP,A)
【文献】 特開2005−045723(JP,A)
【文献】 特開平08−087541(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/387
H04N 1/10
H04N 5/232
G06T 3/00
(57)【特許請求の範囲】
【請求項1】
処理対象の画像と当該画像に重畳させたメッシュ画像とを表示手段に表示させる表示制御手段と、
ユーザからの指示入力を受け付ける入力手段と、
前記入力手段からのユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させる変形手段と、
前記変形されたメッシュ画像の形状に基づいて、処理対象の前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成する変換用行列作成手段と、
前記変換用行列作成手段によって作成された前記変換用行列が表す座標に基づいて、元画像を構成する画素の変換履歴を表す記録用行列を更新する更新手段と、
前記更新手段によって更新された前記記録用行列に基づいて、前記元画像に対して湾曲補正を行う補正手段と、
を備え
前記表示制御手段は、2回目以降の湾曲補正に際しては、始めに、前記補正手段によって湾曲補正された処理画像と当該処理画像に重畳させた直交する前記メッシュ画像とを前記表示手段に表示させる、
ことを特徴とする画像補正装置。
【請求項2】
前記更新手段は、前記補正手段による2回目以降の湾曲補正に際しては、前記補正手段による1回前の湾曲補正に用いた前記記録用行列が表す座標を、前記変換用行列が表す対応する画素の座標に置き換えることにより、前記記録用行列を更新する、
ことを特徴とする請求項1に記載の画像補正装置。
【請求項3】
前記補正手段は、前記更新手段によって更新された前記記録用行列に基づいて前記元画像に対して透視変換を行うことによって前記湾曲補正を行う、
ことを特徴とする請求項1又は2に記載の画像補正装置。
【請求項4】
前記表示制御手段は、前記メッシュ画像を4次のベジェ曲線で描画し、
前記変形手段は、前記入力手段からのユーザの指示入力に基づいて、前記ベジェ曲線の制御点を移動させることによって、前記メッシュ画像の形状を変形させる、
ことを特徴とする請求項1乃至のいずれか一項に記載の画像補正装置。
【請求項5】
処理対象の画像と当該画像に重畳させたメッシュ画像とを表示部に表示させるステップと、
ユーザからの指示入力を受け付けるステップと、
前記ユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させるステップと、
前記変形されたメッシュ画像の形状に基づいて、処理対象の前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成するステップと、
前記作成された変換用行列が表す座標に基づいて、元画像を構成する画素の変換履歴を表す記録用行列を更新するステップと、
前記更新された記録用行列に基づいて、前記元画像に対して湾曲補正を行うステップと、
を含み、
前記表示させるステップでは、2回目以降の湾曲補正に際しては、始めに、前記湾曲補正された処理画像と当該処理画像に重畳させた直交する前記メッシュ画像とを前記表示部に表示させる、
ことを特徴とする画像補正方法。
【請求項6】
画像補正装置を制御するコンピュータに、
処理対象の画像と当該画像に重畳させたメッシュ画像とを表示部に表示させる表示制御機能、
ユーザからの指示入力を受け付ける入力機能、
前記ユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させる変形機能、
前記変形されたメッシュ画像の形状に基づいて、処理対象の前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成する変換用行列作成機能、
前記作成された変換用行列が表す座標に基づいて、元画像を構成する画素の変換履歴を表す記録用行列を更新する更新機能、
前記更新された記録用行列に基づいて、前記元画像に対して湾曲補正を行う補正機能、
を実現させるプログラムであって、
前記表示制御機能は、2回目以降の湾曲補正に際しては、始めに、前記補正機能によって湾曲補正された処理画像と当該処理画像に重畳させた直交する前記メッシュ画像とを前記表示部に表示させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像補正装置、画像補正方法、及びプログラムに関する。
【背景技術】
【0002】
従来より、本を裁断することなく、そのままの状態で頁を捲りながらカメラで撮影して電子化する技術が提案されている。本を自然な状態で開いて上部から撮影すると、本の頁の撓(たわ)みにより、画像中の文字列や図表が歪み、画像中の文字列や図表を読解することが難しい。
【0003】
そこで、例えば、特許文献1では、歪んだ画像の上にメッシュ画像を表示し、紙面の湾曲具合に合わせるようにメッシュ画像を操作し、当該メッシュ画像に基づいて画像の歪みを補正する技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2014−192901号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、メッシュ画像に基づいて画像の補正処理を一回行うのみで、指定したメッシュ画像で良い処理画像を得られなかった場合には、もう一度元の歪んだ画像に対してメッシュ画像を調整して補正を実行する必要があり、処理画像が更新されるのにタイムラグ(切替期間)が生じるという問題がある。また、既に補正した処理画像にメッシュ画像を表示して再度補正する方法も考えられるが、処理画像から補正を行うので画像劣化の度合いが大きくなってしまうという問題がある。
【0006】
そこで本発明は、画像劣化させることなく、補正処理を円滑に繰り返し行うことを目的とする。
【課題を解決するための手段】
【0007】
この発明に係る画像補正装置は、処理対象の画像と当該画像に重畳させたメッシュ画像とを表示手段に表示させる表示制御手段と、ユーザからの指示入力を受け付ける入力手段と、前記入力手段からのユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させる変形手段と、前記変形されたメッシュ画像の形状に基づいて、処理対象の前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成する変換用行列作成手段と、前記変換用行列作成手段によって作成された前記変換用行列が表す座標に基づいて、元画像を構成する画素の変換履歴を表す記録用行列を更新する更新手段と、前記更新手段によって更新された前記記録用行列に基づいて、前記元画像に対して湾曲補正を行う補正手段と、を備え、前記表示制御手段は、2回目以降の湾曲補正に際しては、始めに、前記補正手段によって湾曲補正された処理画像と当該処理画像に重畳させた直交する前記メッシュ画像とを前記表示手段に表示させる、ことを特徴とする。
【0008】
この発明に係る画像補正方法は、処理対象の画像と当該画像に重畳させたメッシュ画像とを表示部に表示させるステップと、ユーザからの指示入力を受け付けるステップと、前記ユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させるステップと、前記変形されたメッシュ画像の形状に基づいて、処理対象の前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成するステップと、前記作成された変換用行列が表す座標に基づいて、元画像を構成する画素の変換履歴を表す記録用行列を更新するステップと、前記更新された記録用行列に基づいて、前記元画像に対して湾曲補正を行うステップと、を含み、前記表示させるステップでは、2回目以降の湾曲補正に際しては、始めに、前記湾曲補正された処理画像と当該処理画像に重畳させた直交する前記メッシュ画像とを前記表示部に表示させる、ことを特徴とする。
【0009】
この発明に係るプログラムは、画像補正装置を制御するコンピュータに、処理対象の画像と当該画像に重畳させたメッシュ画像とを表示部に表示させる表示制御機能、ユーザからの指示入力を受け付ける入力機能、前記ユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させる変形機能、前記変形されたメッシュ画像の形状に基づいて、処理対象の前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成する変換用行列作成機能、前記作成された変換用行列が表す座標に基づいて、元画像を構成する画素の変換履歴を表す記録用行列を更新する更新機能、前記更新された記録用行列に基づいて、前記元画像に対して湾曲補正を行う補正機能、を実現させるプログラムであって、前記表示制御機能は、2回目以降の湾曲補正に際しては、始めに、前記補正機能によって湾曲補正された処理画像と当該処理画像に重畳させた直交する前記メッシュ画像とを前記表示部に表示させる、ことを特徴とする。
【発明の効果】
【0010】
この発明によれば、画像劣化させることなく、補正処理を円滑に繰り返し行うことができる。
【図面の簡単な説明】
【0011】
図1】本発明の実施形態による画像補正装置としての携帯情報端末1の構成を示すブロック図である。
図2】本実施形態の携帯情報端末1による全体動作を説明するためのフローチャートである。
図3】本実施形態において、元画像と当該元画像上に重畳させた初期の歪んでいないメッシュ画像とを示す模式図である。
図4】本実施形態において、元画像20上にメッシュ画像21を重畳させて表示させた様子を示す模式図である。
図5】本実施形態において、メッシュ画像21の制御点を説明するための模式図である。
図6】本実施形態による変換用マップテーブル30の一例を示す概念図である。
図7】本実施形態による変換用マップテーブル30の作成方法を説明するための概念図である。
図8】本実施形態による記録用マップテーブル31(1回目の補正直前)の一例を示す概念図である。
図9】本実施形態による記録用マップテーブル31の更新処理を説明するための概念図である。
図10】本実施形態による記録用マップテーブル31の更新処理を説明するための概念図である。
図11】本実施形態による記録用マップテーブル31の更新処理で用いたバイリニア法について説明するための概念図である。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を、図面を参照して説明する。
【0013】
A.実施形態の構成
図1は、本発明の実施形態による画像補正装置としての携帯情報端末1の構成を示すブロック図である。図において、携帯情報端末1は、例えば、スマートフォンや、タブレット端末などからなる。携帯情報端末1は、通信部10、撮像部11、ROM12、RAM13、表示部14、操作部(タッチパネル)15、記録媒体16、及びCPU17を備えている。
【0014】
通信部10は、例えば、移動体通信、Bluetooth(登録商標)、又は/及び無線LAN(WiFi)を用いてインターネットなどのネットワークに接続する。撮像部11は、光学レンズ群からなるレンズブロックと、CCDや、CMOSなどの撮像素子からなり、レンズブロックから入った画像を撮像素子により撮像する。特に、本実施形態では、撮像部11は、本の頁を撮像する。
【0015】
ROM12は、後述するCPU17により実行されるプログラムや動作等に必要とされる各種パラメータなどを記憶している。RAM13は、後述するCPU17がプログラムを実行した際の一時的なデータや、各種アプリケーションプログラム、アプリケーションの実行に必要な各種パラメータなどのデータを記憶する。特に、本実施形態では、RAM13には、本の頁を撮像した元画像又は湾曲補正後の処理画像にユーザ操作により形状を合わせたメッシュ画像から作成される変換用マップテーブルや、記録用マップテーブル等が記憶される。
【0016】
記録用マップテーブル及び変換用マップテーブルは、元画像又は処理画像の湾曲を補正すべく、上記メッシュ画像から取得される変換後の画素の座標を示すマトリックス(行列)である。変換用マップテーブルは、現時点のメッシュ画像から取得される変換後の画素の座標を示し、記録用マップテーブルは、1つ前の変換時における、変換後の画素の座標を示している。該記録用マップテーブルは、湾曲補正処理の度に、上記変換用マップテーブルに基づいて更新され、現時点のメッシュ画像に基づく元画像に対する湾曲補正に用いられる。これら記録用マップテーブル及び変換用マップテーブルの詳細については後述する。
【0017】
表示部14は、液晶表示器や有機EL(Electro Luminescence)表示器などからなり、特定の機能やアプリケーションなどに紐付けられているアイコンや、アプリケーション画面、各種のメニュー画面などを表示する。操作部(タッチパネル)15は、指やスタイラス(ペン)などの直接接触、あるいは、近接を検出する。なお、操作部(タッチパネル)15には、電源ボタンや音量ボタンなどの機械的なスイッチ類が含まれてもよい。また、本実施形態では、操作部(タッチパネル)15から、撮像した画像の曲面(歪み)を補正する際のパラメータとしてのメッシュ画像の形状を、撮像された本の頁の画像(元画像、補正後の処理画像)の形状に合わせるためのタッチ操作が入力される。
【0018】
記録媒体16は、撮像された画像データなどの各種データを保存する。CPU17は、上述したROM12に記憶されているプログラムを実行することで各部の動作を制御する。特に、本実施形態では、CPU17は、画像処理プログラムを実行することにより、撮像した画像に対して湾曲補正を実行する。
【0019】
本実施形態は、撮像部11、あるいは他の撮像機能を有する機器で撮像された本又は冊子(今後は本と省略する)の画像を湾曲補正するためのパラメータ(メッシュ画像)の設定をユーザが容易に行えるようにするための支援技術である。CPU17は、メッシュ方式によるメッシュ画像を元画像又は処理画像に重畳させ、ユーザ操作によりメッシュ画像の形状を元画像又は処理画像に合せるように調整させる。
【0020】
また、CPU17は、調整されたメッシュ画像から、現時点における画素の移動先の座標を示す変換用マップテーブル30(後述)と、元画像から処理画像へそれぞれの画素がどのように座標変換されたのかを記録する記録用マップテーブル31(後述)とを作成する。CPU17は、湾曲補正処理を行う度に、その記録用マップテーブル31の座標を更新することで、処理画像に対して繰り返しメッシュ画像を設定可能としつつ、その都度、元画像から処理画像に変換して表示する。これにより、画像劣化させることなく、補正処理を円滑に繰り返し行うことが可能となる。
【0021】
B.実施形態の動作
次に、上述した実施形態の動作について説明する。
図2は、本実施形態の携帯情報端末1による全体動作を説明するためのフローチャートである。携帯情報端末1において、CPU17は、まず、撮影された本の頁からなる元画像を記録媒体16からRAM13に入力し(ステップS10)、元画像と当該元画像上に重畳させた初期の歪んでいないメッシュ画像とを表示部14に出力する(ステップS12)。
【0022】
図3は、本実施形態において、元画像と当該元画像上に重畳させた初期の歪んでいないメッシュ画像とを示す模式図である。ステップS12では、図3に示すように、元画像20と歪んでいないメッシュ画像21とが表示される。元画像は、撮影時の本の頁の撓みにより湾曲している。メッシュ画像21は、実装するプラットフォームで実行可能なアプリケーションで描画する。アプリケーションで描画できない場合には、他の周知の方法により、元画像とメッシュ画像とを合成して表示するようにしてもよい。また、メッシュ画像21は、複数の領域(縦n×横m)から構成されている。当該メッシュ画像21の詳細については後述する。
【0023】
次に、CPU17は、元画像20を元に、操作部(タッチパネル)15から湾曲補正のためのパラメータ(メッシュ画像の形状)を設定する(ステップS14)。メッシュ画像は、ユーザが操作部(タッチパネル)15からタッチ操作によって任意に変形可能となっている。ユーザのタッチ操作以外には、別アルゴリズム(画像認識)によって自動的に導出するようにしてもよい。以下に、ユーザがメッシュ画像の形状を設定する場合について詳細に説明する。
【0024】
図4は、本実施形態において、元画像20上にメッシュ画像21を重畳させて表示させた様子を示す模式図である。また、図5は、本実施形態において、メッシュ画像21の制御点を説明するための模式図である。
【0025】
ユーザは、図4に示すように、元画像20上に重ねて表示されているメッシュ画像21の形状をタッチ操作によって伸縮させて湾曲した元画像20の形状に合わせる。図4、及び図5に示すように、メッシュ画像21の点は、ベジェ曲線の制御点22−1〜22−10であり、タッチ操作で移動させることができる。ユーザは、タッチ操作によって元画像20の形状とメッシュ画像21の形状とが一致するように制御点22−1〜22−10を移動させると、メッシュ画像21の全体形状がタッチ操作に追従するようにして変形するようになっている。
【0026】
メッシュ画像21の最上部の上線ULと最下部の下線DLは、4次のベジェ曲線で描画している。この上線ULの5点の制御点22−1〜22−5と下線DLの5点の制御点22−6〜22−10とそれぞれ動かすことによって上線ULと下線DLを自由に動かすことができる。CPU17は、この上線ULと下線DLを基準に所定のメッシュ生成アルゴリズムを用いて、上線ULと下線DLとに挟まれた横線や縦線の幅や、曲線の曲がり具合などを導出してリアルタイムでメッシュ画像21の形状を変形させる。
【0027】
なお、本実施形態では、メッシュ画像21を変形させるための制御点22−1〜22−10を上下合計10点としたが、これに限らず、メッシュ画像21を構成する複数の領域の各交点を制御点としてもよい。また、上線ULと下線DLに限定せずに、ユーザが変形させたい箇所をタッチ操作することで、そのタッチ操作された箇所を含む周囲の交点を、変形させるための制御点として機能させるようにしてもよい。この場合、制御点として有効であることを示すために、該当する交点のドットを大きくしたり、色を変えたりしてもよい。さらに、制御点の移動操作を容易にするために、タッチ操作された箇所を含む周囲を拡大表示するようにしてもよい。
【0028】
次に、CPU17は、上記リアルタイムで変形されるメッシュ画像21に基づいて、元画像20を湾曲補正するための変換用マップテーブルを作成する(ステップS16)。より具体的には、上記リアルタイムで変形されるメッシュ画像21に対応する、元画像20又は処理画像20aの全画素の座標に対応する変換後の座標を記録した変換用マップテーブルを作成する。
【0029】
図6は、本実施形態による変換用マップテーブル30の一例を示す概念図である。図6において、変換用マップテーブル30は、元画像20における、横方向(x)にM個、縦方向(y)にN個の全画素の座標を格納したテーブルである。記録形式の一例としては、図6に示すように、元画像20の画素の座標を行列の添え字にし、その要素に2成分の実数が入るデータ形式で、対応する変換後の座標を格納する。すなわち、変換用マップテーブル30には、元画像20の全画素に対する変換後の座標が記録される。
【0030】
図7は、本実施形態による変換用マップテーブル30の作成方法を説明するための概念図である。メッシュ画像21は、上述したように、複数の領域からなる。各領域は、小さい一つの四辺形からなり、それぞれの四辺形の頂点はメッシュの交点である。CPU17は、図7の上段に示すように、歪んだメッシュ画像21の各領域に合わせて、元画像20を複数の領域に分割する。つまり、図示のメッシュ画像21は、元画像20にほぼ等しい。歪んだ元画像20の紙面自体は曲面であるが、分割した領域を同一平面に近似することによってポリゴン化する。メッシュ画像21の形状は、タッチ操作によって元画像20の形状に一致するように変形されるため、例えば、7行2列目の領域21−72のように、各領域の形状も変形されることになる。つまり、各領域も元画像20の湾曲程度に応じて変形される。
【0031】
本実施形態では、元画像20の全ての領域に対してその歪みを補正するために、各領域を台形に近似して透視変換(台形補正)する手法を用いて、画素の変換後の座標を取得する。図7の下段に示すように、変換後の元画像20の各領域は、全て同一の長方形となり、これらを集めたものが補正後の処理画像20aとなる。例えば、7行2列目の領域21−72は、領域21−72aのように長方形となる。各領域の変換前の四辺形の頂点の座標と変換後の長方形の頂点の座標とを対応付けることができるので、この頂点の座標の対応関係から当該領域に含まれる画素の変換後の座標を取得することが可能となる。
【0032】
CPU17は、このように、透視変換(台形補正)の手法に従って、元画像20の画素が透視変換(台形補正)後にどこに移動するかを演算し、元画像20の各画素の変形後の座標を導出する。この元画像20の変換前の画素の座標(xy)と各画素の変形後の座標とを対応付けてテーブル化したものが、図6に示す変換用マップテーブル30である。但し、この時点では、実際の透視変換(台形補正)は行っていない。
【0033】
次に、CPU17は、記録用マップテーブルを作成する(ステップS18)。なお、この時点で上記変換用マップテーブル30は削除してもよい。
【0034】
図8は、本実施形態による記録用マップテーブル31(1回目の補正直前)の一例を示す概念図である。記録用マップテーブル31は、前述したように、元画像20から湾曲補正後の処理画像20aへそれぞれの画素がどのように座標変換されたのかを記録するテーブルである。この時点では、1回目の湾曲補正前であるので、記録用マップテーブル31は、上記ステップS16で作成した変換用マップテーブル30をコピー又はリネームして用いればよい。
【0035】
次に、CPU17は、記録用マップテーブル31を用いて、元画像20に対して湾曲補正を施す画像処理を行う(ステップS20)。すなわち、CPU17は、記録用マップテーブル31を用いて、元画像20に対して上述した透視変換(台形補正)を行い、元画像20の全画素を移動する画像変換を行う。この透視変換(台形補正)後の画像が処理画像20aとなる。
【0036】
画像処理が終了すると、CPU17は、画像処理を施した処理画像、すなわち記録用マップテーブル31に基づいて湾曲補正を施した補正後の処理画像20aと当該処理画像20a上に重畳させたメッシュ画像21とを表示部14に出力する(ステップS22)。次に、CPU17は、処理画像20aが所定の条件を満たしているか否かを判断する(ステップS24)。
【0037】
本実施形態では、ユーザが表示部14に表示された湾曲補正を施した処理画像20aを確認して、十分な湾曲補正が行われたか、あるいは湾曲補正の程度が強すぎたか、弱すぎたかを判断し、操作部(タッチパネル)15から湾曲補正を継続するか、終了するかを指示する。しかしながら、これに限らず、CPU17が、画像認識を用いて、補正後の処理画像20aの歪みが許容範囲内であるかを判断することで、所定の条件を満たしているか否かを判断するようにしてもよい。
【0038】
そして、処理画像20aが所定の条件を満たしていない場合には(ステップS24のNO)、処理画像20aを元に、操作部(タッチパネル)15から湾曲補正のためのパラメータ(メッシュ画像21の形状)の再設定を行う(ステップS26)。より具体的には、ユーザは、湾曲補正の程度を強くしたり、弱くしたり、あるいは部分的に調整したりするために、操作部(タッチパネル)15から処理画像20a上に重畳させて表示されているメッシュ画像21の制御点22−1〜22−10をタッチ操作によって移動させて形状を変更する。CPU17は、上述したステップS14での処理と同様に、メッシュ画像21の制御点22−1〜22−10の移動に基づいて、メッシュ画像21を伸縮させる。
【0039】
湾曲補正のためのパラメータ(メッシュ画像21の形状)が再設定されると、CPU17は、表示部14に表示されている処理画像20aを破棄し(ステップS28)、新たに設定されたメッシュ画像21に基づいて、上述したステップS16と同様に、湾曲補正のための変換用マップテーブル30を作成する(ステップS30)。但し、このときの変換用マップテーブル30は、ステップS26で設定されたメッシュ画像21に基づいて作成されたもので、ステップS16で作成された変換用マップテーブル30の内容とは異なることは言うまでもない。
【0040】
次に、CPU17は、記録用マップテーブル31を更新する(ステップS32)。より具体的には、CPU17は、変換用マップテーブル30の各画素の座標と、上述したステップS18で作成した記録用マップテーブル31の各画素の座標とを比較し、変換用マップテーブル30の各画素の座標に基づいて、記録用マップテーブル31の各画素の座標を更新する。このように、記録用マップテーブル31の各画素の座標を更新することで、元画像に対する新たな処理画像の座標変換を行うことができる。なお、この時点で上記変換用マップテーブル30は削除してもよい。
【0041】
図9は、本実施形態による記録用マップテーブル31の更新処理を説明するための概念図である。なお、ここでは説明を簡単するため、各画素の座標の値を整数としている。図9において、上段に湾曲補正を行う1つ前の記録用マップテーブル31(n−1)を示し、中段に現在の変換用マップテーブル30(n)を示し、更に、下段に更新した記録用マップテーブル31(n)を示している。現在の湾曲補正をn回目とし、1つ前の湾曲補正を(n−1)回目とし、各テーブルの符号の添え字に記している。
【0042】
記録用マップテーブル31の更新は以下のようにして行われる。1つ前の記録用マップテーブル31(n−1)の各要素は、湾曲補正前の各画素の座標を示している。一方、変換用マップテーブル30(n)の各要素は、湾曲補正後の各画素の座標を示している。したがって、記録用マップテーブル31(n−1)の座標は、現在、その座標で示される、変換用マップテーブル30(n)の画素の座標に移動することになる。
【0043】
例えば、1つ前の記録用マップテーブル31(n−1)の2列1行目(x=2、y=1)の画素の座標が(3,2)であったとすると、その画素()は、今回の湾曲補正で、変換用マップテーブル30(n)の3列2行目(x=3、y=2)で示される座標、すなわち、変換用マップテーブル30(n)の3列2行目(x=3、y=2)の座標(7,8)に移動することなる。
【0044】
つまり、処理画像20a(n−1)に対して設定した現在のメッシュ画像21による、元画像に対する湾曲補正では、画素(2,1)は、座標(7,8)に移動することなる。そこで、記録用マップテーブル31(n−1)の対応する要素を、変換用マップテーブルの座標で置き換えることで、更新された記録用マップテーブル31(n)が作成される。このような更新操作を、記録用マップテーブル31(n−1)の全ての要素に対して行うことによって、記録用マップテーブル31(n)として更新されることになる。
【0045】
但し、上述した説明、及び図9に示す例は、説明を簡単にするために、各テーブルの要素を整数としたが、実際には、各テーブルの要素は実数となるため、単純に更新することができない。そこで、本実施形態では、各テーブルの座標を補間することで、記録用マップテーブル31を更新している。以下に詳細に説明する。
【0046】
図10は、本実施形態による記録用マップテーブル31の更新処理を説明するための概念図である。なお、図9に対応する部分には同一の符号を付けている。本実施形態では、各テーブルの座標を補間するために、バイリニア法を用いたが、バイキュービック法や、画像変形処理で用いられる補間法などを用いてもよく、特に限定するものではない。
【0047】
1つ前の記録用マップテーブル31(n−1)のi列j行目(x=i、y=j)の画素の座標が(1.8,2.3)であったとすると、当該座標(1.8,2.3)の近傍の画素は、1<1.8<2、2<2.3<3であるので、図10の中段に示すように、変換用マップテーブル30(n)の、1列2行目、2列2行目、1列3行目、2列3行目の4つの要素に相当することになる。そこで、この4つの要素からバイリニア法により(1.8,2.3)の変換後の座標をx成分、y成分でそれぞれ補間すると(2.39,2.40)となる。すなわち、画素()は、今回の湾曲補正で、変換用マップテーブル30(n)の4つの要素で示される座標を補間した座標(2.39,2.40)に移動することなる。
【0048】
ここで、バイリニア法について簡単に説明する。
図11は、本実施形態による記録用マップテーブル31の更新処理で用いたバイリニア法について説明するための概念図である。本実施形態では、バイリニア法を用いて、周囲の4つの画素の座標値から、その座標(実数値)に応じて線形の座標補間を行う。図11に示すc1、c2、c3、c4は、変換後の座標である。したがって、変換用マップテーブル30(n)の4つの画素の座標を、c1(x,y)=c1(1,2)、c2(x+1,y)=c2(2,2)、c3(x,y+1)=c3(1,3)、c4(x+1,y+1)=c4(2,3)に設定する。すなわち、x=1、y=2である。
【0049】
バイリニア法では、P(x_r,y_r)における座標C_pを導出する場合、x_r、y_rの小数部のみを取り出した値を、x_s、y_sとして、
d=c1*(1.0−x_s)+c2*x_s …(1)
e=c3*(1.0−x_s)+c4*x_s …(2)
C_p=d*(1.0−y_s)+e*y_s …(3)
となる。
【0050】
dはc1とc2の間(x_r,y)の補間値であり、eはc3とc4の間(x_r,y+1)の補間値であり、C_pが求めたい要素の座標の補間値である。
【0051】
まず、この4点の要素のx座標について考える。x_rは、x=1、x+1=2の間で1.8であり、x_sは、x_rの小数部のみを取り出した値であるので、x_s=0.8となる。したがって、上記式(1)から、d=1.5*(1.0−0.8)+2.5*0.8=2.3となる。
【0052】
同様にして、上記式(2)から、e=1.8*(1.0−0.8)+2.8*0.8=2.6となる。一方、y_rは、y=2、y+1=3の間で2.3であり、y_sは、y_rの小数部のみを取り出した値であるので、y_s=0.3となる。したがって、C_pは、上記式(3)から、C_p=2.3*(1.0−0.3)+2.6*0.3=2.39となる。
【0053】
次に、4点の要素のy座標について考える。上記式(1)から、d=2.3*(1.0−0.8)+2.4*0.8=2.38となる。同様にして、上記式(2)から、e=2.3*(1.0−0.8)+2.5*0.8=2.46となる。したがって、C_pは、上記式(3)から、C_p=2.38*(1.0−0.3)+2.46*0.3=2.40となる。
【0054】
このように、バイリニア法により(1.8,2.3)の変換後の座標をx成分、y成分でそれぞれ補間すると、図10の下段に示すように(2.39,2.40)となる。同様に、バイリニア法を用いて、周囲の4つの画素の座標値から、その座標(実数値)に応じて線形の座標補間を行うことで、記録用マップテーブル31(n−1)の全ての要素を、変換用マップテーブル30(n)の座標で置き換えることで、記録用マップテーブル31(n)に更新する。
【0055】
次に、CPU17は、ステップS20に戻り、更新した記録用マップテーブル31(n)を用いて、元画像20に対して湾曲補正を施す画像処理を行う。そして、ステップS22で、湾曲補正を施した補正後の処理画像20aと当該処理画像に重畳させたメッシュ画像21とを表示部14に出力する。
【0056】
以下、ステップS20〜ステップS24のNO、ステップS26〜S32において、上述したメッシュ画像21の再設定、変換用マップテーブル30の作成、記録用マップテーブル31の更新、記録用マップテーブル31による元画像20に対する湾曲補正処理、処理画像20aの表示部14への出力を繰り返す。この繰り返し処理は、湾曲補正後の処理画像20aの歪みが許容範囲内なるまで、すなわち、十分な湾曲補正が行われたと判断されるまで繰り返し実行される。
【0057】
そして、処理画像20aが所定の条件を満たした場合には(ステップS24)、CPU17は、最後の処理画像20aを記録媒体16に保存する(ステップS34)。次に、CPU17は、処理すべき他の画像があるか否かを判断する(ステップS36)。そして、処理すべき他の画像がある場合には(ステップS36のYES)、ステップS14に戻り、次の画像に対して上述した処理を繰り返す。一方、処理すべき他の画像がない場合には(ステップS36のNO)、当該処理を終了する。
【0058】
上述した本実施形態によれば、ユーザのタッチ操作に応じて変形させたメッシュ画像21の形状に基づいて、元画像20を構成する画素の湾曲補正後の座標を記した変換用マップテーブル30を作成し、当該変換用マップテーブル30に記した座標に基づいて、画像を構成する画素の過去の変換履歴を記した記録用マップテーブル31の座標を更新し、当該更新した記録用マップテーブル31に基づいて、元画像20に対して湾曲補正を行うようにしたので、画像劣化させることなく、補正処理を円滑に繰り返し行うことができる。
【0059】
また、上述した本実施形態によれば、1回前の湾曲補正に用いた記録用マップテーブル31に記した座標を、変換用マップテーブル30に記した対応する画素の座標に置き換えることにより、記録用マップテーブル31に記した座標を更新するようにしたので、元画像20に対して湾曲補正を行うため、画像劣化させることなく、補正処理を円滑に繰り返し行うことができる。
【0060】
また、上述した本実施形態によれば、2回目以降の湾曲補正に際しては、湾曲補正された処理画像20aと当該処理画像20aに重畳させたメッシュ画像21とを表示するようにしたので、ユーザは、ストレスなく、補正処理を円滑に繰り返し行うことができる。
【0061】
また、上述した本実施形態によれば、記録用マップテーブル31に基づいて元画像20に対して透視変換を行うことによって湾曲補正を行うようにしたので、処理能力がそれほど高くないタブレットやスマートフォンなどの情報機器でも補正処理を円滑に繰り返し行うことができる。
【0062】
また、上述した本実施形態によれば、メッシュ画像21を4次のベジェ曲線で描画し、ユーザのタッチ操作に応じて、ベジェ曲線の制御点を移動させることによって、メッシュ画像21を変形させるようにしたので、処理能力がそれほど高くないタブレットやスマートフォンなどの情報機器でも容易にメッシュ画像21の変形処理を実現することができ、円滑に補正処理を繰り返し行うことができる。
【0063】
なお、上述した本実施形態では、湾曲補正処理として、透視変換(台形補正)を用いたが、これ限らず、画像の上下端における2本の基準線から台形補正、並びに各点の縦方向湾曲補正及び横方向の湾曲補正を行うようにしてもよい。
【0064】
以上、この発明のいくつかの実施形態について説明したが、この発明は、これらに限定されるものではなく、特許請求の範囲に記載された発明とその均等の範囲を含むものである。
以下に、本願出願の特許請求の範囲に記載された発明を付記する。
【0065】
(付記1)
付記1に記載の発明は、処理対象の画像と当該画像に重畳させたメッシュ画像とを表示手段に表示させる表示制御手段と、ユーザからの指示入力を受け付ける入力手段と、前記入力手段からのユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させる設定手段と、前記メッシュ画像の形状に基づいて、前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成する変換用行列作成手段と、前記変換用行列作成手段によって作成された前記変換用行列が表す座標に基づいて、前記画像を構成する画素の変換履歴を表す記録用行列を更新する更新手段と、前記更新手段によって更新された前記記録用行列に基づいて、前記画像に対して湾曲補正を行う補正手段と、を備えることを特徴とする画像補正装置である。
【0066】
(付記2)
付記2に記載の発明は、前記更新手段は、前記補正手段による2回目以降の湾曲補正に際しては、前記補正手段による1回前の湾曲補正に用いた前記記録用行列が表す座標を、前記変換用行列が表す対応する画素の座標に置き換えることにより、前記記録用行列が表す座標を更新する、ことを特徴とする付記1に記載の画像補正装置である。
【0067】
(付記3)
付記3に記載の発明は、前記表示制御手段は、2回目以降の湾曲補正に際しては、前記補正手段によって湾曲補正された処理画像と当該処理画像に重畳させた前記メッシュ画像とを前記表示手段に表示させる、ことを特徴とする付記1又は2に記載の画像補正装置である。
【0068】
(付記4)
付記4に記載の発明は、前記補正手段は、前記更新手段によって更新された前記記録用行列に基づいて前記画像に対して透視変換を行うことによって湾曲補正を行う、ことを特徴とする付記1乃至3のいずれか一項に記載の画像補正装置である。
【0069】
(付記5)
付記5に記載の発明は、前記表示制御手段は、前記メッシュ画像を4次のベジェ曲線で描画し、前記設定手段は、前記入力手段からのユーザの指示入力に基づいて、前記ベジェ曲線の制御点を移動させることによって、前記メッシュ画像を変形させる、ことを特徴とする付記1乃至4のいずれか一項に記載の画像補正装置である。
【0070】
(付記6)
付記6に記載の発明は、処理対象の画像と当該画像に重畳させたメッシュ画像とを表示部に表示させるステップと、ユーザからの指示入力を受け付けるステップと、前記ユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させるステップと、前記メッシュ画像の形状に基づいて、前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成するステップと、前記作成された変換用行列が表す座標に基づいて、前記画像を構成する画素の変換履歴を表す記録用行列を更新するステップと、前記更新された記録用行列に基づいて、前記画像に対して湾曲補正を行うステップと、を含むことを特徴とする画像補正方法である。
【0071】
(付記7)
付記7に記載の発明は、画像補正装置を制御するコンピュータに、処理対象の画像と当該画像に重畳させたメッシュ画像とを表示部に表示させる表示制御機能、ユーザからの指示入力を受け付ける入力機能、前記ユーザの指示入力に基づいて、前記メッシュ画像の形状を変形させる設定機能、前記メッシュ画像の形状に基づいて、前記画像を構成する画素の湾曲補正後の座標を表す変換用行列を作成する変換用行列作成機能、前記作成された変換用行列が表す座標に基づいて、前記画像を構成する画素の変換履歴を表す記録用行列を更新する更新機能、前記更新された記録用行列に基づいて、前記画像に対して湾曲補正を行う補正機能、を実現させることを特徴とするプログラムである。
【符号の説明】
【0072】
1…携帯情報端末、10…通信部、11…撮像部、12…ROM、13…RAM、14…表示部、15…操作部(タッチパネル)、16…記録媒体、17…CPU、20…元画像、21…メッシュ画像、22−1〜22−10…制御点、30、30(n)…変換用マップテーブル、31、31(n−1)、31(n)…記録用マップテーブル

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11