説明

画像処理装置、画像処理方法、及び、プログラム

【課題】ユーザにおいて画像の所望領域を確実かつ簡単に指定して変化させることを可能にする。
【解決手段】スルー画像から、注目点領域を推定して抽出する(ステップS105)。次に、タッチパネルから供給されるモニタ上におけるユーザのタッチ検出及びタッチ軌跡の検出処理を実行する(ステップS106)。引き続き、前記ステップS105で推定抽出された注目点領域と、前記ステップS106で検出されたタッチ入力軌跡から、スルー画像における処理対象領域(消去処理又は残存処理する対象とする領域)を判別して選択する(ステップS107)SDRAM内に保存されている撮影画像の選択領域(ステップS107で選択された領域)を対象領域とし、その他の領域にマスクを設定し、設定消去処理量(ステップS109で設定された消去処理量)に応じて、消去処理を施す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、外部からの擦り動作等の継続的な指示に応じて画像の一部のみを処理する技術に関する。
【背景技術】
【0002】
コンパクトカメラでは一般に、一眼レフのようなF値の小さい「明るいレンズ」を搭載しにくい。また、撮像イメージサイズが小さいので、同じ画角を得るには、実際のレンズ焦点距離を短かくする必要があり、被写界深度はどうしても深くなる。このため、前景から背景までピントが合った撮影がしやすい反面、前景や背景をぼかしたり、主要被写体だけにピントを合わせて強調する表現がしにくいなど、問題があった。
【0003】
そこで、画面上でタッチ選択された領域を処理対象領域として、ピンポイントに平滑化フィルタでボケ処理を施す(特許文献1参照)などの技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−079193号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、前述したタッチ選択された領域についてピンポイントに処理を施す場合、主要被写体のみを分離することが困難であり、このため主要被写体周囲までも処理対象にされてしまう不都合が生ずる。
【0006】
本発明は、かかる従来の課題に鑑みなされたものであり、ユーザにおいて画像の所望領域を確実かつ簡単に指定して、この指定された領域を他の領域と分離して処理することができるようにすることを目的とする。
【課題を解決するための手段】
【0007】
前記課題を解決するために、請求項1記載の発明は、撮像手段と、表示手段と、この表示手段の表示面に対して外部から指示を検出する第1の検出手段と、この第1の検出手段による検出に続いて、その指示が検出された位置を始点として継続的に指示が検出された場合、その指示された位置の軌跡を少なくとも含む指示情報を検出する第2の検出手段と、前記撮像手段によって撮像された画像を、前記表示手段に表示するよう制御する第1の表示制御手段と、前記表示される画像の特徴量情報を取得する取得手段と、前記第1の検出手段によって検出された指示位置、前記第2の検出手段によって検出された指示情報、及び、これらの指示位置及び指示情報に対応している画像領域の特徴量情報に基づいて、前記画像領域における特定の領域をその周囲から分離して加工する加工手段とを備えることを特徴とする。
【0008】
また、請求項2記載の発明は、請求項1記載の発明において、更に、前記加工手段によって加工された画像を加工前の画像から徐々に変化させて表示するよう制御する第2の表示制御手段を備えることを特徴とする。
【0009】
また、請求項3記載の発明は、請求項1または2記載の発明において、更に、前記加工手段によって加工された画像を記録媒体に記録する記録制御手段を備えることを特徴とする。
【0010】
また、請求項4記載の発明は、撮像手段と表示手段とを備える機器が有するコンピュータを、前記表示手段の表示面対して外部から指示を検出する第1の検出手段、この第1の検出手段による検出に続いて、その指示が検出された位置を始点として継続的に指示が検出された場合、その指示された位置の軌跡を少なくとも含む指示情報を検出する第2の検出手段、前記撮像手段によって撮像された画像を前記表示手段に表示するよう制御する第1の表示制御手段、前記表示される画像の特徴量情報を取得する取得手段、前記第1の検出手段によって検出された指示位置、前記第2の検出手段によって検出された指示情報、及び、これらの指示位置及び指示情報に対応している画像領域の特徴量情報に基づいて、前記画像領域における特定の領域をその周囲から分離して加工する加工手段、として機能させることを特徴とする。
【0011】
また、請求項5記載の発明は、表示手段の表示面対して外部から指示を検出する第1の検出ステップと、この第1の検出ステップによる検出に続いて、その指示が検出された位置を始点として継続的に指示が検出された場合、その指示された位置の軌跡を少なくとも含む指示情報を検出する第2の検出ステップと、撮像手段によって撮像された画像を前記表示手段に表示するよう制御する第1の表示制御ステップと、前記表示される画像の特徴量情報を取得する取得ステップと、前記第1の検出ステップによって検出された指示位置、前記第2の検出ステップによって検出された指示情報、及び、これらの指示位置及び指示情報に対応している画像領域の特徴量情報に基づいて、前記画像領域における特定の領域をその周囲から分離して加工する加工ステップと、を含むことを特徴とする。
【発明の効果】
【0012】
本発明によれば、ユーザにおいて画像の所望領域を確実かつ簡単に指定して、この指定された領域を他の領域と分離して処理することができるようにすることができる。
【図面の簡単な説明】
【0013】
【図1】本発明の一実施の形態を適用した電子カメラのブロック図である。
【図2】(不要部分の)消去&修復撮影処理の手順の一部を示すフローチャートである。
【図3】図2に続くフローチャートである。
【図4】タッチ検出及びタッチ軌跡の検出処理の手順を示すフローチャートである。
【図5】注目点領域の抽出処理(1)の手順を示すフローチャートである。
【図6】第1の実施の形態における表示例を示す図である。
【図7】図6に続く表示例を示す図である。
【図8】注目点領域の抽出処理(2)の手順を示すフローチャートである。
【図9】階層型画像データの作成処理例を示す図である。
【図10】画像の修復処理のサブルーチンを示すフローチャートである。
【図11】図10及び図12におけるフローチャート内の式の符合の意味を示す説明図である。
【図12】画像の修復処理のサブルーチンを示すフローチャートである。
【図13】修復前の画像と修復後の画像とを示す図である。
【発明を実施するための形態】
【0014】
以下、本発明の一実施の形態を図に従って説明する。
図1は、本発明の各実施の形態に共通するデジタルカメラ1の電気的構成を示す回路ブロック図である。このデジタルカメラ1は、AE(Auto Exposure)、AWB(Auto White Balance)、AF(Auto Focus)等の一般的な機能を有するものである。すなわち、レンズブロック11には、ズームレンズ111や図示しないフォーカスレンズ等の光学系、及び光学系を駆動するための駆動機構が含まれている。前記ズームレンズ111は、駆動機構に設けられているズームモーター12によって光軸方向に駆動される。
【0015】
デジタルカメラ1全体を制御するCPU(Central Processing Unit)13には、バス14及びタイミング発生器(TG:Timing Generator)15を介してモータードライバ16が接続されている。モータードライバ16は、ユーザの操作に応じたCPU13の命令に従いタイミング発生器15が発生するタイミング信号に基づき、ズームモーター12を駆動する。これにより、ズームレンズ111が駆動されて、そのレンズ位置が変化する。
【0016】
このとき、CPU13は、自己が発生する命令を記憶して管理している。したがって、CPU13は、自己が発生する命令を記憶して管理することにより、自己が発生する命令によりタイミング発生器15が発生するタイミング信号に応じて変化するズームレンズ111のレンズ位置を取得することができる。
【0017】
また、図示は省略するが、実際には、フォーカスレンズを駆動するためのフォーカスモーター及びモータードライバや、メカシャッタやメカ絞り及びそれらを駆動するためのモーターを有する駆動機構等が設けられている。
【0018】
また、デジタルカメラ1は、撮像素子としてCCD(Charge Coupled Device)18を有している。CCD18は、レンズブロック11の光軸上に配置されている。被写体は、レンズブロック11によってCCD18の受光面に結像される。CCD18は、CPU13の命令に従いタイミング発生器15が生成するタイミング信号に基づき垂直及び水平ドライバ19によって駆動され、被写体の光学像に応じたアナログの撮像信号をユニット回路20に出力する。ユニット回路20は、CCD18の出力信号に含まれるノイズを相関二重サンプリングによって除去するCDS(Correllated Double Sampling)回路や、ノイズが除去された撮像信号をデジタル信号に変換するA/D(Analog/Digital)変換器等から構成され、デジタル信号をDSP(Digital Signal Processor)21へ出力する。
【0019】
DSP21は、ユニット回路20から出力されたデジタル信号に対しペデスタルクランプやオートホワイトバランス等の各種画像処理を施すことにより、輝度(Y)信号及び色差(UV)信号からなる画像データを生成する。DSP21で変換された画像データは順次SDRAM(Synchronous Dynamic Random Access Memory)22に格納されるとともに、REC(Record)スルー・モードでは1フレーム分のデータ(画像データ)が蓄積される毎にビデオ信号に変換され、液晶のモニタ4へ送られてスルー画像として画面表示される。
【0020】
そして、静止画撮影モードにおいては、レリーズ釦操作をトリガとして、CPU13は、CCD18、垂直及び水平ドライバ19、ユニット回路20、及びDSP21に対してスルー画撮影モードから静止画撮影モードへの切り替えを指示し、この静止画撮影モードによる撮影処理により得られSDRAM22に一時記憶された画像データは、CPU13により圧縮され、最終的には所定のフォーマットの静止画ファイルとして外部メモリ25に記録される。この外部メモリ25に記録された静止画ファイルは、PLAY・モードにおいてユーザの選択操作に応じてCPU13に読み出されるとともに伸張され、画像データとしてSDRAM22に展開された後、画像データに基づく画像がモニタ4に表示される。
【0021】
フラッシュメモリ26には、CPU13に前記各部を制御させるための各種のプログラム、例えばAE、AF、AWB制御用のプログラムや、後述するフローチャートに示す処理を実行するためのプログラム等の各種のプログラムが格納されている。
【0022】
また、デジタルカメラ1は、半押し操作と全押し操作とが可能なレリーズ釦、ズーム釦、OK釦等の複数の操作キー及びスイッチを含むキー入力部27を有している。キー入力部27は、ユーザによっていずれかの操作キーが操作されると、その操作内容に応じた操作信号をCPU13へ供給する。
【0023】
なお、モニタ4には、タッチパネル23が積層されている。タッチパネル23は、モニタ4上におけるユーザのタッチ位置および度合(タッチの太さ、面積、強さ)を検出し、検出した位置及び度合位置を示す信号をCPU13に供給する。
【0024】
(第1の実施の形態)
次に、以上の構成にかかるデジタルカメラ1の第1の実施の形態における動作を説明す
る。図2及び図3は、本実施の形態における(不要部分の)消去&修復撮影処理の手順を示す一連のフローチャートである。ユーザによるキー入力部27での操作により、消去&修復撮影モードが設定されるとCPU13は前記プログラムに従って、このフローチャートに示す処理を実行する。
【0025】
すなわち、CPU13は、撮影モードが設定されているか否かを判断し(ステップS1)、撮影モードが設定されていない場合には、その他のモード処理に移行する(ステップS102)。
【0026】
撮影モードが設定されている場合には、各種撮影条件を設定する(ステップS103)。また、スルー撮像、スルー表示処理を実行し、レンズブロック11を介してCCD18により所定のフレームレートで撮像したスルー画像を液晶のモニタ4に表示させる(ステップS104)。次に、タッチ操作による消去撮影が設定されているか否かを判断し(ステップS105)、設定されていない場合にはステップS106〜S115の処理を行うことなく、ステップS116に進む。
【0027】
タッチ操作による消去撮影が設定されている場合には、液晶表示パネル3に表示されているスルー画像から、注目点領域を推定して抽出する(ステップS106)。なお、このステップS106で実行される注目点領域の推定抽出に関しては、図5に示すフローチャートに基づき後述する。次に、タッチパネル23から供給されるモニタ4上におけるユーザのタッチ検出及びタッチ軌跡の検出処理を実行する(ステップS107)。このステップS107で実行されるタッチ検出及びタッチ軌跡の検出処理に関しては、図4に示すフローチャートに基づき後述する。
【0028】
引き続き、前記ステップS106で推定抽出された注目点領域と、前記ステップS107で検出されたタッチ入力軌跡から、スルー画像における処理対象領域(消去、修復処理する対象とする領域)を判別して選択する(ステップS108)。つまり、前記ステップS107で検出されたタッチ入力軌跡がある領域であっても、前記ステップS106で推定抽出された注目点領域である場合には、この領域を処理対象領域とはせずに、タッチ入力軌跡がある領域であって注目点領域でない領域のみを処理対象領域として判別し選択する。
【0029】
さらに、この処理対象領域に対する処理種別である機能コマンドとして、予め消去処理(ステップS109)と残存処理(ステップS112)のいずれが選択設定されているかを判断する。機能コマンドとして消去処理が選択設定されている場合には(ステップS109→YES)、前記ステップS108で選択されたスルー画像における選択領域を消去処理の対象領域に設定する(ステップS110)。また、消去処理を実行すべきことを示す消去処理Flagに「1」を立てる(ステップS111)。
【0030】
他方機能コマンドが消去処理でない場合には、機能コマンドが残存処理であるか否かを判断する(ステップS112)。残存処理である場合には(ステップS112→YES)、前記ステップS108で選択されたスルー画像における選択領域を残存処理の対象領域に設定する(ステップS113)。また、残存処理を実行すべきことを示す残存処理Flagに「1」を立てる(ステップS114)。さらに、機能コマンドが消去処理と残存処理のいずれでもない場合には、その他のコマンド処理を実行する(ステップS115)。
【0031】
そして、ステップS111、S114、S115のいずれかに続くステップS116においては、キー入力部27に設けられたレリーズ釦が半押し操作されたか否か、又はAEロックなどの撮影準備操作がなされたか否かを判断する(ステップS116)。これら操作のいずれかがなされたならば、測光処理を行うとともに、この測光処理により得られた計測露出値と予め設定されている撮影条件に応じてCCD18の露出条件を設定する(図3のステップS117)。
【0032】
引き続き、レリーズ釦が全押し(又は、撮影指示操作が検出)されたか否か(ステップS118)、又は半押しされているレリーズ釦から手指が離されて、半押しが解除されたか否か(ステップS119)を判断する。レリーズ釦の半押しが解除された場合には、AEロックや処理フラグ(消去処理Flag又は残存処理Flag)を解除して(ステップS120)、リターンする。
【0033】
レリーズ釦が全押し(又は、撮影指示操作が検出)された場合には、前記ステップS116で設定された設定露出条件などの撮影条件に応じて、CCD18を露出させて撮影処理する(ステップS121)。そして、この撮影処理により得られた撮影画像データをSDRAM22に一時的に記憶する(ステップS122)。
【0034】
次に、消去処理Flag=1の状態にあるか否かを判断する(ステップS122)。消去処理Flag=1の状態にあるならば、前記ステップS122でSDRAM22に保存した今回の撮影画像に消去処理を施す(ステップS124)。具体的には、SDRAM22内に保存されている撮影画像の選択領域(ステップS108で選択された領域)を対象領域とし、例外の領域にマスクを設定することにより、他の領域と選択領域とを分離し、消去処理を施す。したがって、本実施の形態によれば、ユーザにおいて画像の所望領域を確実かつ簡単に指定することができ、画像の指定した領域を消去して表示することができる。
また、対象画像から不要な部分を消去したり、目立たなくしたい場合、消去したい画像の領域を、指やペンでタッチして、アバウトにこすったりするだけで、所望部分のみ消去したり、目立たなくしたりすることができる。さらには、多少はみ出したり、アバウトに入力した場合も、画像中の注目点領域を推定検出して、はみ出し入力を自動補正してくれるので、大雑把なタッチ操作で、操作性良く指定できる。
【0035】
そして、このステップS124での消去処理により、画像中に空白部が生ずることから、この空白部を埋める修復処理を行う(ステップS125)。なお、この修復処理の具体的な例については後述する。さらに、この修復処理を施した撮影画像である処理済み画像をモニタ4にレビュー表示する(ステップS126)。しかる後に、この処理済みの画像データを符号化して、画像メモリ媒体である外部メモリ25に保存記録し、消去処理Flag=0に戻す(ステップS127)。したがって、ユーザにおいて画像の所望領域を確実に消去させた画像を外部メモリ25に保存することができる。
【0036】
また、消去処理Flag=1の状態でない場合には、残存処理Flag=1の状態にあるか否かを判断する(ステップS128)。残存処理Flag=1の状態にあるならば、前記ステップS122でSDRAM22に保存された今回の撮影画像に残存処理を施す(ステップS129)。具体的には、SDRAM22内に保存した撮影画像の選択領域(ステップS108で選択された領域)を残存対象領域としてマスクを設定して、他の領域と選択領域とを分離し、それ以外の領域に消去処理を施す。つまり前述のステップS124とは逆の領域に消去処理を施す。
【0037】
また、このステップS124での消去処理により、画像中に空白部が生ずることから、前述と同様にこの空白部を埋める修復処理を行う(ステップS130)。さらに、この修復処理を施した撮影画像である処理済み画像をモニタ4にレビュー表示する(ステップS131)。しかる後に、この処理済みの画像データを符号化して、画像メモリ媒体である外部メモリ25に保存記録し、残存処理処理Flag=0に戻す(ステップS127)。したがって、ユーザにおいて画像の所望領域を確実に残存させた画像を外部メモリ25に保存することができる。
【0038】
また、消去処理Flag=0、かつ、残存処理Flag=0の状態にある場合には、前記ステップS121でSDRAM22に保存された今回の撮影画像に通常の信号処理(デジタル現像処理)を施す(ステップS130)。さらに、この通常の信号処理済み画像をモニタ4にレビュー表示した後(ステップS132)、この通常の信号処理済みの画像データを符号化して、画像メモリ媒体である外部メモリ25に保存記録し(ステップS133)、リターンする。
【0039】
図4は、前記タッチ検出及びタッチ軌跡の検出処理(ステップS107)のサブルーチンを示すフローチャートである。すなわち、CPU13は、タッチパネル23を走査して、モニタ4上におけるユーザのタッチ位置および度合(タッチの太さ、面積、強さ)を検出する(ステップS201)。また、ユーザによるタッチが継続中であるか否かを判断する(ステップS202)。タッチが継続中であるならば、タッチ継続中Flag=1の状態にあるか否かを判断する(ステップS203)。
【0040】
タッチ継続中Flag=1の状態でない場合には、タッチ継続中Flag=0であって検出されたタッチが新たなタッチであるか否かを判断する(ステップS204)。新たなタッチであるならば、タッチ検出動作を開始し(ステップS205)、検出されたタッチ点の位置と度合を開始点としてSDRAM22にメモリする(ステップS206)。また、タッチが継続中となったことを示すタッチ継続中Flagを立てて、タッチ継続中Flag=1にする(ステップS207)。
【0041】
このステップS207での処理によりタッチ継続中Flag=1となると、再度このフローに従ってステップS201からの処理が実行された際に、ステップS203の判断がYESとなる。したがって、ステップS203からステップS208に進み、前記ステップS201で検出されたタッチ点の座標位置、度合を順次SDRAM22にメモリして蓄積する。
【0042】
さらに、このタッチ点の座標位置の蓄積により得られる連続タッチ点から選択された複数点を折れ線(又はスプライン曲線)で連結する(ステップS209)。つまり、ステップS201で検出されるタッチ位置は、このフローチャートに従って処理が実行される毎に得られる点的な位置情報(連続タッチ点)である。したがって、これら点的な位置情報(連続タッチ点)から選択された複数点を連結することにより、点的なタッチ情報を線的なタッチ情報に変換する。
【0043】
さらに、この連結されたタッチ点の軌跡を表示部であるモニタ4にプロット描画し、当該モニタ4に表示されているスルー画像に重畳表示する(ステップS210)。したがって、ユーザがモニタ4に表示されているスルー画像の所望部分を例えば手指で擦ると、当該所望部分に擦った軌跡が重畳表示されることとなる。
【0044】
また、ユーザがスルー画像の所望部分を擦るのをやめてモニタ4から手指を離すと、再度ステップS201からの処理が実行された際にステップS202の判断がNOとなる。したがって、ステップS202からステップS211に進みタッチ入力が終了したか否かを判断する。このタッチ入力が終了したか否かの判断は、タッチ継続中Flag=1の状態でタッチが不継続となったか否かにより判断することができる。
【0045】
タッチ入力が終了したならば、タッチ点の座標位置、度合のSDRAM22へのメモリ処理(ステップS208)と、モニタ4のスルー画像上へのタッチ点の軌跡描画処理(ステップS210)とを終了させる(ステップS212)。引き続き、最後のタッチ点の位置と度合を終了点としてSDRAM22にメモリする(ステップS213)。また、前記ステップS210でモニタ4にプロット描画されているタッチ軌跡の連結プロット線を出力した後(ステップS214)、タッチ継続中Flag=0にする(ステップS215)。
【0046】
そして、前記ステップS214で出力したタッチ位置と軌跡から、機能コマンドの選択か、対象領域の指示かを判別する(ステップS216)。つまり、本実施の形態においては、以上に説明したスルー画像における対象領域の指示入力のみならず、図2のステップS109、S112、S115に示した機能コマンドの設定もモニタ4に対するタッチをタッチパネル23より検出することにより行う。したがって、タッチパネル23より検出したモニタ4に対するタッチが機能コマンドの選択であるのか、対象領域の指示であるのか判別する必要がある。
【0047】
また、この判別は機能コマンドの選択であればタッチ位置は固定的であり、タッチ軌跡も短いことから、タッチ位置とタッチ軌跡とから判別することができる。したがって、ステップS216での判別処理の結果に基づき、タッチが機能コマンドの指示であるか否かを判断する(ステップS217)。機能コマンドの指示であるならば、機能コマンドの設定・変更処理を実行する(ステップS218)。
【0048】
また、機能コマンドの入力でない場合には、対象領域の指定か否かを判断し(ステップS219)、そうである場合には対象領域の設定処理を実行する(ステップS210)。対象領域の指定でもない場合には、対象領域の移動又は伸縮か否かを判断し(ステップS221)、そうである場合には対象領域の移動又は伸縮の設定処理を実行する(ステップS222)。また、機能コマンドの指示、対象領域の指定、対象領域の移動又は伸縮のいずれでもない場合には、その他の入力処理を実行する(ステップS223)。
【0049】
図5は、本発明の第1の実施の形態において前記ステップS105で実行される注目点領域の抽出処理のサブルーチンを示すフローチャートである。すなわち、モニタ4に表示させているスルー画像を構成するフレーム画像I(x,y)をSDRAM22に入力する(ステップS301)。次に、ガウシアン解像度ピラミッドの作成を行う(ステップS302)。このガウシアン解像度ピラミッドの作成に際しては、下記式(1)及び(2)に示すように、入力画像I(x,y)から、順次、ガウシアンフィルタ処理とダウンサンプリング処理を行って、9枚の階層型のスケール画像 I(L)の組を作成する。
I(0)=I(x,y)・・・(1)
I(L+1)=Subsampled(1/2×1/2) [I(L)*G(5×5)]・・・(2)
【0050】
引き続き、ステップS303〜S306の処理で輝度の特徴量マップ(FI)を作成し、ステップS307〜S310の処理で色の特徴量マップ(F)を作成し、ステップS3011〜S314の処理で方向性の特徴量マップ(F)を作成する。まず、輝度の特徴量マップ(FI)の作成について説明すると、階層型のスケール画像における2〜4階層のスケール画像の各注目画素c∈{2、3、4}の輝度成分I(c)求める(ステップS303)。また、階層型のスケール画像における3〜4階層のスケール画像の各注目画素の周辺s=c+δ、δ∈{3、4}の輝度成分I(s)を求める(ステップS304)。さらに、下記式(3)に示すように、各スケール画像について、輝度IのCenter-Surroundのスケール間差分(輝度コントラスト)を求める(ステップS305)。
I(c、s)=|I(c)〔-〕I(s)|・・・(3)
【0051】
しかる後に、下記式(4)に示すように、輝度コントラストの特徴量マップを正規化し、c、sの全範囲にわたって結合し、輝度の特徴量マップ(FI)を作成する(ステップS306)。
FI=〔+〕c〔+〕sN(I(c,s))・・・(4)
ただし、c=2〜4、s=c+3〜c+4。
【0052】
他方、色の特徴量マップ(F)は、ステップS307〜S310の処理により作成する。すなわち、階層型のスケール画像における2〜4階層のスケール画像の各注目画素c∈{2、3、4}の色成分R(c)、G(c)、B(c)、Y(c)を求める(ステップS307)。また、階層型のスケール画像における3〜4階層のスケール画像の各注目画素の周辺s=c+δ、δ∈{3、4}の色成分R(s)、G(s)、B(s)、Y(s)を求める(ステップS308)。さらに、下記式(4)(5)により各スケール画像について、色相(R/G,B/Y)のCenter-Surroundのスケール間差分 (色相コントラスト)を求める(ステップS309)。
RG(c、s)=|(R(c)-G(c))〔-〕(G(s)-R(s))|・・・(4)
BY(c、s)=|(B(c)-Y(c))〔-〕(B(s)-Y(s))|・・・(5)
【0053】
また、下記式(6)により、色相コントラストの特徴量マップを正規化し、c、sの全範囲にわたって結合し、色の特徴量マップ(FCO)を作成する(ステップS310)。
FCO=〔+〕c〔+〕s{N(RG(c,s))+N(BY(c,s))}・・・(6)
ただし、c=2〜4、s=c+3〜c+4。
【0054】
そして、方向性の特徴量マップ(F)は、ステップS3011〜S314の処理により作成する。すなわち、階層型のスケール画像における2〜4階層のスケール画像の各注目画素c∈{2、3、4}の方向性成分O(c,θ)を求める(ステップS311)。また、階層型のスケール画像における3〜4階層のスケール画像の各注目画素の周辺s=c+δ、δ∈{3、4}の方向性成分O(s,θ)を求める(S312)。下記式(7)により、各スケール画像について、方向性OのCenter-Surroundのスケール間差分 (方向性コントラスト)を求める(ステップS313)。
O(c,s,θ)=|O(c,θ)〔-〕O(s,θ)|・・・(7)
【0055】
また、下記式(8)により、方向性コントラストの特徴量マップを正規化し、c、s、θの全範囲にわたって結合し、方向性の特徴量マップ(FO)を作成する(ステップS314)。
FO=Σθ〔+〕c〔+〕s{N(O(c,s,θ))・・・(8)
ただし、θ=0°,45°,90°,135°、
c=2〜4、s=c+3〜c+4
【0056】
以上の処理により、輝度の特徴量マップ(FI)、色の特徴量マップ(FCO)、方向性の特徴量マップ(FO)が作成されることとなる。したがって、下記式(9)に示すように、これら複数の特徴量マップを、線形和で統合して、顕著性マップ(Saliency Map)Sを求める(ステップS315)。
S=w1・N(FI)+w2・N(FCO)+w3・N(FO)・・・(9)
【0057】
そして、顕著性マップSの所定閾値以上の領域(S≧Sth)を、注目点領域として抽出するのである(ステップS316)。
【0058】
図6及び図7は、以上に説明した第1の実施の形態における消去処理、残存処理及び修復処理の表示例を示す図である。スルー画像又は撮影画像を元画像として用いて、モニタ4(図6(A))。この元画像から複数の特徴量マップを生成することにより、特徴量マップFI、特徴量マップFc、及び、特徴量マップFoを得る。そしてこれら特徴量マップを顕著性マップとして統合することにより、単一の顕著性マップSを生成する(図6(B))。そして、図4のステップS316においても説明したように、顕著性マップSの所定閾値以上の領域を、注目点領域として抽出する(図6(C))。
【0059】
また、元画像を平滑化フィルタで処理し、この平滑化処理された元画像のエッジ検出を検出して、エッジ画像(輪郭線)を得る(図6(D))。そして、前記得られた注目点に近接する近傍の輪郭をエッジ画像(輪郭線)から抽出して、注目点の近傍抽出画像を得る(図6(E))。
【0060】
この後、図2のステップS107〜S115(詳細には図4)の処理により、図7に示すように、「Remove(消去)」、「Repair(修復)」、「Leave(残す)」のいずれかの選択と、表示されている元画像へのタッチ、及び、処理対象領域又はそれ以外の領域のタッチパネルへの描画指示を検出すると(図7(F))、タッチパネルによりタッチが検出されるとともに、検出されたタッチの位置、タッチの度合、軌跡が順次記憶されていく(図7(G))。これら記憶されたタッチの位置等を折れ線又はBスプライン曲線等で結合し、タッチ指示領域を判定する(図7(H))。
【0061】
また、前記得られた注目点の近傍抽出画像から、タッチ指示領域に近い注目点領域だけを抽出して、抽出領域を得る(図7(I))。さらに、画像において指示されたと判断された注目点近傍領域を特定して(図7(J))、特定した注目点近傍領域に対応するマスクを作成する。
【0062】
また、「Remove(消去)」が選択された場合には、元画像(スルー画像又は撮影画像、図7(K))から、前記作成されたマスク部分に相当する画像を部分を消去処理する。これにより、図7(L)に示すように、パラソル等が消去されて白色部分となった消去処理された画像が生成されて、モニタ4に表示される。
【0063】
そして、「Repair(修復)」が選択されている場合には、消去処理された画像における修復対象領域(点線内)を修復処理する。これにより、図7(M)に示すように、元画像からパラソル等が消去され、かつ消去による欠損箇所が自動的に修復処理された画像を得ることができ、当該画像がモニタ4に表示されることとなる。
(第2の実施の形態)
図8は、本発明の第2の実施の形態において、前記ステップS105で実行される注目点領域の抽出処理における他の例を示すサブルーチンである。すなわち、モニタ4に表示させているスルー画像を構成するフレーム画像IをSDRAM22に入力する(ステップS401)。次に、9枚の階層型のスケール画像の組(ガウシアン解像度ピラミッド)を作成する(ステップS402)。引き続き、ステップS403〜S410の処理でコントラストの特徴量マップFC(x,I)、center-surroundの色ヒストグラムの特徴量マップFh(x,I)、色の空間分布の特徴量マップFS(x,I)を求める。
【0064】
まず、コントラストの特徴量マップFC(x,I)処理について説明すると、下記式(10)により、マルチ・スケールのコントラストの特徴量マップFC(x,I)を求める(ステップS403)。
fC(x,I)=ΣLΣX'||IL(x)-IL(x')||2・・・(10)
ただし、IL(x)は、ガウシアンピラミッドのL番目の階層の画像
【0065】
また、center-surroundの色ヒストグラムの特徴量マップFh(x,I)を求めるには、矩形を異なるアスペクト比{0.5,0.75,1.0,1.5,2.0}に変えて、各矩形領域の色ヒストグラムR(x)と、周辺輪郭の色ヒストグラムRS(x)とを、それぞれ計算する(ステップS404)。下記式(11)により、色ヒストグラムR(x)とRS(x)のカイ2乗距離が最大となる矩形領域のヒストグラムR*(x)を求める(ステップS405)。
R*(x)=argmax{X2(R(x),RS(x))}・・・(11)
【0066】
さらに、下記式(12)により、center-surroundの色ヒストグラムの特徴量マップFh(x,I)を求める(ステップS406)。
Fh(x,I)∝ΣX'{wXX'・X2(R*(x')R*S(x'))}・・・(12)
【0067】
また、色の空間分布の特徴量マップFS(x,I)を求めるには、下記式(13)を用いて、色の空間分布について、水平方向の分散Vh(c)を計算する(ステップS407)。
Vh(c)=(1/|X|Cx{p(c|Ix)・|xh-Mh(c)|2}・・・(13)
【0068】
また、下記式(14)を用いて、色の垂直方向の分散VV(c)を計算する(ステップS408)。
VV(c)=(1/|Y|Cy{p(c|Iy)・|yh-Nh(c)|2}・・・(14)
【0069】
また、下記式(15)を用いて、色の空間的な分散V(c)を求める(ステップS409)。
V(c)=Vh(c)+VV(c)・・・(14)
【0070】
そして、下記式(15)を用いて、色の空間分布の特徴量マップFS(x,I)を求める(ステップS410)。
FS(x,I)∝Σcp(c|Ix)・(1-V(c))・・・(15)
【0071】
以上の処理により、コントラストの特徴量マップFC(x,I)、center-surroundの色ヒストグラムの特徴量マップFh(x,I)、色の空間分布の特徴量マップFS(x,I)が求められることとなる。したがって、下記式(16)に示すように、各特徴量マップを線形統合して、顕著性マップS(x,I)を求めて出力する(ステップS411)。
S(x,I)=w1・Fc(x,I)+w2・Fh(x,1)+w3・FS(x,1) ・・・(16)
【0072】
そして、顕著性マップSの所定閾値以上の領域(S≧Sth)を、注目点領域として抽出するのである(ステップS412)。
【0073】
図9は、注目点領域の推定抽出の前処理としての階層型画像データ(ガウシアン解像度ピラミッド)の作成処理の例を示す図である。この図に示すように、画像I(3)、画像I(2)、画像I(1)、画像I(0)からなる階層型画像データ(ガウシアン解像度ピラミッド)を作成する。
【0074】
なお、消去処理方法としは、下記(a)(b)を挙げることができる。
【0075】
(a)ガウシアン分布フィルタ(Gaussian Filter)を用いる消去処理
【0076】
【数1】

ただし、上式でGσ(x)は、ガウシアン分布に従い、
【0077】
【数2】

つまり、点pの近傍領域(S)内にある各点qにおける画素値Iqについて、σ(空間パラメータ)により、ぼかす大きさ(点pとの空間的距離に応じた影響の度合)を調整して、任意程度のボケ画像を合成することができる。
【0078】
(b)バイラテラル・フィルタ(Bilateral Filter)を用いる消去処理
下記式(19)に示すように、空間フィルタGσs(x)とインテンシティフィルタ(Gσs(x))とを組み合わせて、任意程度のボケ画像を合成する。
【0079】
【数3】

つまり、点pの近傍領域(S)内にある各点qにおける画素値Iqについて、σs(空間パラメータ)により、ぼかす大きさ(点pとの空間的距離に応じた影響の度合)をσr(強度パラメータ)により、ぼかす強度(点pの輝度Ipとの違いに応じた影響の度合をそれぞれ調整して、ぼかし処理ことができる。
【0080】
図10及び図12は、前記ステップS125及びステップS130で実行される画像の修復処理のサブルーチン各々を示すフローチャートである。
【0081】
先ず、図10のフローチャートは、輝度値を滑らかに補完する方法、又はパターン類似度を用いて「エネルギー関数」を最小化する方法による修復処理の例を示すものである。すなわち、対象画像のフレーム画像Iを入力し(ステップS501)、このフレーム画像Iから修復対象となる欠損Ωを含む領域(Ω′)を検出する(ステップS502)。この検出した欠損領域(Ω′)は無し(ゼロ集合)か、当該フレーム画像Iにおける全ての欠損領域(Ω′)の修復処理が終了したか否かを判断する(ステップS503)。このステップS503の判断がYESであるならば、修復処理が終了した修復処理済みの画像データI′を出力して(ステップS504)、メインルーチンにリターンする。
【0082】
また、ステップS503の判断がNOであるならば、欠損領域(Ω′)内で、修復対象となる画素Xの位置等の初期値を設定する(ステップS505)。そして、輝度勾配が最小となる等照線方向に修復を行う場合には、境界線上の画素の周辺の輝度勾配等に基づいて、輝度勾配が最小となる方向などの修復方向(ベクトル)を決定する(ステップS506)。
【0083】
しかる後に、この決定した修復方向に画素の更新パラメータ(平滑化関数)の変化量を算出し(ステップS507)、隣接画素と処理対象画素との差分から、画素値の更新量、更新情報を算出する(ステップS508)。この算出した更新情報を用いて各画素値を書き換え、フレーム画像Iに修復処理を施す(ステップS509)。次に、各画素値の変化量を評価し(ステップS510)、このステップS510での評価に基づき、
変化量≒0、画素値は十分収束したか、所定回数以上ステップS506からの処理を繰り返したかの三条件のいずれかが満たされたか否かを判断する(ステップS511)。そして、これら三条件のいずれも満たされていない場合には、満たされるまでステップS506からの処理を繰り返す。その結果、前記三条件のいずれかが満たされたならば、次の欠損領域Ω′を修復対象として(ステップS512)、前述したステップS502からの処理を繰り返す。
【0084】
他方、局所形状が類似するよう修復するか、又は、エネルギー巻数が最小化するよう修復を行う場合には、欠陥領域(Ω′)内の画素Xと周辺パターンの局所形状が類似するデータ領域(φ)内の画素Xsを探索する(ステップS513)。
【0085】
しかる後に、下記式(18)を用いて、画素値の更新値を算出し、欠損領域内の画素I(x)を並列的に更新する(ステップS514)。
I(x)=Σ{w(x? p)・I(x-p)-p}Σ(x+p)・・・(18)
ただし、領域Ωでは、wx=1/2^d
領域Ω′∩ ̄Ωではwx=1
【0086】
(なお、式(18)及び以下の式における符号の意味については、図11参照。)
【0087】
そして、下記式(19)に示すように、類似パターン位置を更新する(ステップS515)。
xs=f(x)=argmin(x′∈φ)Σ{I(x+p)−I(x′+p)^2・・・(19)
【0088】
また、下記式(20)に示すように、類似度(エネルギー関数)を評価する(ステップS516)。
E(x)=Σw(x+ p)・{I(x)-I(f(x+p)-p)}^2・・・(20)
【0089】
このステップS516での評価に基づき、
エネルギーが十分小さくなったか、十分収束したか、所定回数以上ステップS513からの処理を繰り返したかの三条件のいずれかが満たされたか否かを判断する(ステップS517)。そして、これら三条件のいずれも満たされていない場合には、満たされるまでステップS513からの処理を繰り返す。その結果、前記三条件のいずれかが満たされたならば、次の欠損領域Ω′を修復対象として(ステップS512)、前述したステップS513からの処理を繰り返す。
【0090】
図12は、前記ステップS125及びステップS130で実行される画像の修復処理の他のサブルーチンを示すフローチャートであり、輝度勾配が最小となる等照線方向に修復する場合の例を示すものである。すなわち、対象画像のフレーム画像Iを入力し(ステップS601)、この画像I中で、修復対象となる欠損Ωを含む領域Ω′を検出する(ステップS602)。この検出した領域Ω′の境界δΩを識別する(ステップS603)。このステップS603の識別結果に基づき、δΩ=0(ゼロ集合)否か、又は全ての修復処理が終了か否かをを判断する(ステップS604)。このステップS604の判断がYESであるならば、修復処理が終了した修復処理済みの画像データを出力して(ステップS605)、メインルーチンにリターンする。
【0091】
また、ステップS604の判断がNOであるならば、境界上の画素の初期値を設定する(ステップS606)。そして、境界線δΩの内側に向けて、周囲画素から輝度勾配等に基づいて(輝度勾配が最小となる等照線方向など)、修復方向(ベクトル)を決定する(ステップS607)。
【0092】
すなわち、グレースケール処理画像I 中の画素(i,j)をI(i,j)とし、補完する領域をΩ(∈I)、領域の境界をδΩ(∈I)とする。補完処理はΩの外側から内側に向けて行われる。各画素の補間する方向を決定するために、境界線δΩ上において画素情報の連続性は等照方向に生じることを用いて、δΩからΩの内側に向いた修復方向ベクトルNを算出する。画像I上のすべての(i,j)において、離散的勾配ベクトル∇I(i,j)は最大空間的変化(largest spatial change)の方向を表す。このことから、このベクトルを90度回転した∇⊥I(i,j)ベクトルは最小空間的変化(smallest spatial change)方向を示し、等照線方向ベクトルN(i,j)は、
N(i,j)=∇⊥I(i,j)={−Iy(i,j),Ix(i,j)}・・・(21)
となる。
ただし、Ix,Iyは、x,yの偏微分(輝度勾配)、
∇(i,j)は、離散的勾配ベクトル(最大変化方向)、
∇⊥I(i,j)は、∇(i,j)を90度回転したベクトル(最小変化方向)。
【0093】
次に、境界δΩ上の画素(i,j)において、下記式(22)を用いて更新パラメータ(i,j)の変化量δL(i,j)を算出する(ステップS608)。
(例)L(i,j)は平滑関数。
δL(i,j)={L(i+1,j)-L(i-1,j),L(i,j+1)-1(i,j-1)}・・・(22)
【0094】
また、βn(i,j)=δLn(i,j)・Nn(i,j)/|Nn(i,j)| ・・・(23)
としたとき、隣接画素と処理画素との差から、画素情報の更新量|∇(i,j)|を算出する(ステップS609)。
なお、(βNn>0のとき)|∇In(i,j)|=√{(In×bm)+(In×fM)+(In×ybm)+(InyfM)}・・・(24)
(βN=0のとき)|∇In(i,j)|=0・・・(25)
(βN<0のとき)|∇In(i,j)|=√{(In×xbm)+(In×fM)+(In×ybM)+(InyfM)}・・・(24)
ここで、添え字f、bは、それぞれ、f:前進差分、および、b:後進差分を示し、mは導関数値と0を比較したときの最小値(min)、同様に、Mは導関数値と0を比較したときの最大値(MAX)、を意味する。
【0095】
引き続き、下記式(25)を用いて、繰り返し回数n回目の更新情報Int(i,j)を算出する(ステップS610)。
Int(i,j)={δLn(i,j)・Nn(i,j)/|Nn(i,j)|}・|∇In(i,j)|・・・(26)
ただし、|∇In(i,j)|は、隣接画素と処理画素との差分から算出した画素情報の更新量。
【0096】
そして、下記式(27)を用いて、Ω′領域内の各画素に対する更新情報Int(i,j)を用いて、修復処理を実行する(ステップS611)。
(n+1)(i,j)=In(i,j)+Δt・In(i,j)・・・(26)
【0097】
次に、当該領域の変化量δL(i,j)≒0であるか否か、更新情報I(n+1)(i,J)≒In(i,J)であるか否か、繰り返し回数n≧n(max)であるか否かの三条件のいずれかが満たされたか否かを判断する(ステップS612)。そして、これら三条件のいずれも満たされていない場合には、満たされるまでステップS607からの処理を繰り返す。その結果、前記三条件のいずれかが満たされたならば、次の領域を修復対象として(ステップS613)、前述したステップS602からの処理を繰り返す。
【0098】
図13は、以上に説明した修復処理フローに従った処理による修復処理例を示す図である。同図(a)に示すように、前記フローチャートにおける画像Iであって、消去処理された画像であり、欠損Ωを有する修復すべき領域である修復対象領域(点線内:領域Ω′)が存在している。このように、欠損Ωを有する領域Ω′が存在している画像Iに対して、図12のフローチャートに従った修復処理が実行されることにより、同図(b)に示すように、欠損箇所が修復処理された画像が得られることとなる。
【符号の説明】
【0099】
1 デジタルカメラ
4 モニタ
11 レンズブロック
12 ズームモーター
13 CPU
18 CCD
19 水平ドライバ
20 ユニット回路
21 DSP
22 SDRAM
23 タッチパネル
25 外部メモリ
26 フラッシュメモリ
27 キー入力部
111 ズームレンズ

【特許請求の範囲】
【請求項1】
撮像手段と、
表示手段と、
この表示手段の表示面に対して外部から指示を検出する第1の検出手段と、
この第1の検出手段による検出に続いて、その指示が検出された位置を始点として継続的に指示が検出された場合、その指示された位置の軌跡を少なくとも含む指示情報を検出する第2の検出手段と、
前記撮像手段によって撮像された画像を、前記表示手段に表示するよう制御する第1の表示制御手段と、
前記表示される画像の特徴量情報を取得する取得手段と、
前記第1の検出手段によって検出された指示位置、前記第2の検出手段によって検出された指示情報、及び、これらの指示位置及び指示情報に対応している画像領域の特徴量情報に基づいて、前記画像領域における特定の領域をその周囲から分離して加工する加工手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
更に、前記加工手段によって加工された画像を加工前の画像から徐々に変化させて表示するよう制御する第2の表示制御手段を備えることを特徴とする請求項1記載の画像処理装置。
【請求項3】
更に、前記加工手段によって加工された画像を記録媒体に記録する記録制御手段を備えることを特徴とする請求項1または2記載の画像処理装置。
【請求項4】
撮像手段と表示手段とを備える機器が有するコンピュータを、
前記表示手段の表示面対して外部から指示を検出する第1の検出手段、
この第1の検出手段による検出に続いて、その指示が検出された位置を始点として継続的に指示が検出された場合、その指示された位置の軌跡を少なくとも含む指示情報を検出する第2の検出手段、
前記撮像手段によって撮像された画像を前記表示手段に表示するよう制御する第1の表示制御手段、
前記表示される画像の特徴量情報を取得する取得手段、
前記第1の検出手段によって検出された指示位置、前記第2の検出手段によって検出された指示情報、及び、これらの指示位置及び指示情報に対応している画像領域の特徴量情報に基づいて、前記画像領域における特定の領域をその周囲から分離して加工する加工手段、
として機能させることを特徴とするプログラム。
【請求項5】
表示手段の表示面対して外部から指示を検出する第1の検出ステップと、
この第1の検出ステップによる検出に続いて、その指示が検出された位置を始点として継続的に指示が検出された場合、その指示された位置の軌跡を少なくとも含む指示情報を検出する第2の検出ステップと、
撮像手段によって撮像された画像を前記表示手段に表示するよう制御する第1の表示制御ステップと、
前記表示される画像の特徴量情報を取得する取得ステップと、
前記第1の検出ステップによって検出された指示位置、前記第2の検出ステップによって検出された指示情報、及び、これらの指示位置及び指示情報に対応している画像領域の特徴量情報に基づいて、前記画像領域における特定の領域をその周囲から分離して加工する加工ステップと、
を含むことを特徴とする画像処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2013−77873(P2013−77873A)
【公開日】平成25年4月25日(2013.4.25)
【国際特許分類】
【出願番号】特願2011−214968(P2011−214968)
【出願日】平成23年9月29日(2011.9.29)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】