(57)【要約】【課題】本発明は、手ブレ判定における誤判定を抑制することが可能な技術を提供する。【解決手段】プリンタ１０は、画像を周波数領域で表したパワースペクトルを生成する周波数変換部３２０と、パワースペクトルにおける振幅値の手ブレ方向を特定する手ブレ方向推定部３３０と、手ブレ方向の振幅値を一次元化した一次元振幅データを生成する一次元化部３４０と、一次元振幅データを周波数に応じて重み付けする重み付け部３５０と、一次元振幅データにおいて振幅値が谷状に変化する領域の周波数に基づいて手ブレ画像であるか否かを判定する判定部３６０とを備える。【選択図】図２
2009230598.tif 000002
【特許請求の範囲】
【請求項１】
画像データに基づく画像が手ブレによってぼやけているか否かを判定する画像判定装置であって、
前記画像を周波数領域で表したパワースペクトルを生成する周波数変換部と、
前記周波数変換部によって生成されたパワースペクトルにおける振幅値の第二主成分方向を特定する手ブレ方向推定部と、
前記パワースペクトルにおいて前記第二主成分方向に略沿った領域における振幅値を周波数軸上に一次元化した一次元振幅データを生成する一次元化部と、
前記一次元化部によって生成された一次元振幅データを周波数に応じて重み付けする重み付け部と、
前記重み付け部によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数に基づいて、前記画像が手ブレによってぼやけているか否かを判定する判定部と
を備える画像判定装置。
【請求項２】
前記一次元化部は、前記第二主成分方向を含む所定の中心角を有する扇状領域における振幅値を周波数軸上に一次元化することによって、前記一次元振幅データを生成する請求項１記載の画像判定装置。
【請求項３】
前記重み付け部は、前記一次元化部によって生成された一次元振幅データを、周波数５０ヘルツ近傍で平滑化し、該一次元振幅データを周波数に応じて重み付けする請求項１または２記載の画像判定装置。
【請求項４】
前記重み付け部は、前記一次元化部によって生成された一次元振幅データに周波数を掛け合わせることによって、該一次元振幅データを重み付けする請求項１ないし３のいずれか記載の画像判定装置。
【請求項５】
前記判定部は、前記重み付け部によって重み付けされた一次元振幅データにおいて周波数５０ヘルツから５７５ヘルツの範囲で振幅値が最小値をとる周波数に基づいて、前記画像が手ブレによってぼやけているか否かを判定する請求項１ないし４のいずれか記載の画像判定装置。
【請求項６】
前記判定部は、前記重み付け部によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数が６０ヘルツから３００ヘルツである場合、前記画像が手ブレによってぼやけていると判定する請求項１ないし５のいずれか記載の画像判定装置。
【請求項７】
コンピュータを用いて、画像データに基づく画像が手ブレによってぼやけているか否かを判定する画像判定方法であって、
コンピュータが備える周波数変換手段が、前記画像を周波数領域で表したパワースペクトルを生成する工程と
コンピュータが備える手ブレ方向推定手段が、前記周波数変換手段によって生成されたパワースペクトルにおける振幅値の第二主成分方向を特定する工程と、
コンピュータが備える一次元化手段が、前記パワースペクトルにおいて前記第二主成分方向に略沿った領域における振幅値を周波数軸上に一次元化した一次元振幅データを生成する工程と、
コンピュータが備える重み付け手段が、前記一次元化手段によって生成された一次元振幅データを周波数に応じて重み付けする工程と、
コンピュータが備える判定手段が、前記重み付け手段によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数に基づいて、前記画像が手ブレによってぼやけているか否かを判定する工程と
を備える画像判定方法。
【請求項８】
画像データに基づく画像が手ブレによってぼやけているか否かを判定する機能をコンピュータに実現させるためのプログラムであって、
前記画像を周波数領域で表したパワースペクトルを生成する周波数変換機能と
前記周波数変換機能によって生成されたパワースペクトルにおける振幅値の第二主成分方向を特定する手ブレ方向推定機能と、
前記パワースペクトルにおいて前記第二主成分方向に略沿った領域における振幅値を周波数軸上に一次元化した一次元振幅データを生成する一次元化機能と、
前記一次元化機能によって生成された一次元振幅データを周波数に応じて重み付けする重み付け機能と、
前記重み付け機能によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数に基づいて、前記画像が手ブレによってぼやけているか否かを判定する判定機能と
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに基づく画像の特性を判定する画像判定技術に関し、特に、画像データに基づく写真画像が手ブレによってぼやけているか否か、すなわち「手ブレ」していないか否かの判定（以下、「手ブレ判定」とも呼ぶ）を実施する技術に関する。
【背景技術】
【０００２】
手ブレした画像（以下、「手ブレ画像」とも呼ぶ）は、手ブレしていない正常な画像に比べて、印刷や編集などの二次的な利用に供される可能性が低いため、写真画像が記録された複数の画像データの中から正常な画像と手ブレ画像とを区別するために種々の手ブレ判定技術が提案されてきた。例えば、下記特許文献１には、画像から分離して抽出された高周波成分と低周波成分との成分比に基づいて、手ブレやピンぼけ等でぼやけた不良画像であるか否かを判定する不良画像判定技術が開示されている。
【０００３】
【特許文献１】特開２００６−５８７４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の不良画像判定技術では、接写（マクロ）モードで撮影された画像や、比較的に小さなＦ値で撮影された画像は、焦点の合った部分が少なく相対的に高周波成分も少ないため、正常な画像であっても不良画像であると誤判定してしまう場合があるという問題があった。
【０００５】
本発明は、上記した課題を踏まえ、手ブレ判定における誤判定を抑制することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００７】
［適用例１］  適用例１の画像判定装置は、画像データに基づく画像が手ブレによってぼやけているか否かを判定する画像判定装置であって、前記画像を周波数領域で表したパワースペクトルを生成する周波数変換部と、前記周波数変換部によって生成されたパワースペクトルにおける振幅値の第二主成分方向を特定する手ブレ方向推定部と、前記パワースペクトルにおいて前記第二主成分方向に略沿った領域における振幅値を周波数軸上に一次元化した一次元振幅データを生成する一次元化部と、前記一次元化部によって生成された一次元振幅データを周波数に応じて重み付けする重み付け部と、前記重み付け部によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数に基づいて、前記画像が手ブレによってぼやけているか否かを判定する判定部とを備えることを特徴とする。適用例１の画像判定装置によれば、手や体などの直線的な移動に起因する手ブレ画像が、実空間上の被写体に対し矩形関数を畳み込んだ画像になり、周波数空間上ではシンク関数（ｓｉｎｃ関数）を畳み込んだ画像になると考えられることから、周波数領域の画像において手ブレ方向に現れるシンク関数の影響の度合いに基づいて手ブレ判定を実施することができる。その結果、相対的に高周波成分の少ない画像であっても、手ブレ判定における誤判定を抑制することができる。
【０００８】
［適用例２］  適用例１の画像判定装置において、前記一次元化部は、前記第二主成分方向を含む所定の中心角を有する扇状領域における振幅値を周波数軸上に一次元化することによって、前記一次元振幅データを生成するとしても良い。適用例２の画像判定装置によれば、第二主成分方向に交差する主成分方向に近い方向の振幅値を一次元振幅データから排除することができる。
【０００９】
［適用例３］  適用例１または２の画像判定装置において、前記重み付け部は、前記一次元化部によって生成された一次元振幅データを、周波数５０ヘルツ近傍で平滑化し、該一次元振幅データを周波数に応じて重み付けするとしても良い。周波数５０ヘルツ近傍の低周波数領域は、被写体による影響を比較的に大きく受ける。適用例３の画像判定装置によれば、被写体に依存する振幅特性が一次元振幅データに与える影響を抑制することができる。
【００１０】
［適用例４］  適用例１ないし３のいずれかの画像判定装置において、前記重み付け部は、前記一次元化部によって生成された一次元振幅データに周波数を掛け合わせることによって、該一次元振幅データを重み付けするとしても良い。適用例４の画像判定装置によれば、周波数に応じた振幅値の影響度合いを考慮して一次元振幅データを分析することができる。
【００１１】
［適用例５］  適用例１ないし４のいずれかの画像判定装置において、前記判定部は、前記重み付け部によって重み付けされた一次元振幅データにおいて周波数５０ヘルツから５７５ヘルツの範囲で振幅値が最小値をとる周波数に基づいて、前記画像が手ブレによってぼやけているか否かを判定するとしても良い。適用例５の画像判定装置によれば、手ブレ判定に有用な周波数範囲を絞り込むことによって手ブレ判定に要する処理負荷を軽減することができる。
【００１２】
［適用例６］  適用例１ないし５のいずれかの画像判定装置において、前記重み付け部によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数が６０ヘルツから３００ヘルツである場合、前記画像が手ブレによってぼやけていると判定するとしても良い。適用例６の画像判定装置によれば、手ブレ画像であると人間が認識可能な度合いで手ブレ判定を実施することができる。
【００１３】
また、適用例１ないし６のいずれかの画像判定装置において、前記周波数変換部は、離散フーリエ変換（Discrete Fourier Transform, DFT）および高速フーリエ変換（Fast Fourier Transform, FFT）のいずれかによって、前記画像を周波数領域で表したパワースペクトルを生成するとしても良い。この画像判定装置によれば、シンク関数の影響によって振幅値が谷状に変化する領域を特定するのに十分な周波数分解能を得ることができる。
【００１４】
また、適用例１ないし６のいずれかの画像判定装置において、前記手ブレ方向推定部は、前記周波数変換部によって生成されたパワースペクトルに窓関数を掛け合わせ、該パワースペクトルにおける振幅値の第二主成分方向を特定するとしても良い。この画像判定装置によれば、画像の端部における輝度値偏差の影響を軽減することによって、第二主成分方向の誤差を抑制することができる。適用例３における窓関数には、ハニング窓関数（Hanning Window）を用いることができる。
【００１５】
また、適用例１ないし６のいずれかの画像判定装置において、前記手ブレ方向推定部は、前記周波数変換部によって生成されたパワースペクトルにおける直流成分の振幅値を零に置き換えた主成分分析によって、前記第二主成分方向を特定するとしても良い。この画像判装置によれば、画像の平均輝度（直流成分）が手ブレ画像か否かに関係しないことから、主成分分析において直流成分の影響を排除することによって、第二主成分方向の特定誤差を抑制することができる。
【００１６】
また、適用例１ないし６のいずれかの画像判定装置であって、更に、前記画像データから再生される画像を印刷する印刷部と、前記画像データから再生される画像のうち前記判定部によって手ブレと判定された画像が前記印刷部によって印刷されるのを禁止する禁止部とを備えても良い。これによって、画像データから再生される画像を印刷する場合に、手ブレ画像が印刷されてしまうのを抑制することができる。
【００１７】
また、適用例１ないし６のいずれかの画像判定装置であって、更に、前記判定部によって手ブレではないと判定された画像と、該判定部によって手ブレと判定された画像とを区別して表示する表示部を備えても良い。これによって、画像データから再生する画像を表示する場合に、手ブレであるか否かを区別して画像を表示することができる。
【００１８】
本発明の形態は、画像処理装置に限るものではなく、画像処理装置が組み込まれた印刷装置（プリンタ），画像表示装置（ビューア）や、コンピュータを用いた画像判定方法、コンピュータプログラムなど他の形態に適用することもできる。また、本発明は、前述の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。
【発明を実施するための最良の形態】
【００１９】
以上説明した本発明の構成および作用を一層明らかにするために、以下本発明を適用した画像処理装置について説明する。なお、本実施例では、画像処理装置の一形態として、画像処理装置としての機能を有するプリンタを例に挙げて説明する。
【００２０】
Ａ．第１実施例：
Ａ１．プリンタの構成：
図１は、プリンタ１０の外観構成を主に示す説明図である。プリンタ１０は、紙やラベルなどの印刷媒体９００にインク滴を噴射して文字や画像などのデータを印刷するインクジェット式プリンタである。本実施例では、プリンタ１０は、いわゆる複合機としてスキャナやコピーなどの各種機能を有する。
【００２１】
プリンタ１０は、カードスロット１４０と、通信コネクタ１５０とを備える。プリンタ１０のカードスロット１４０は、フラッシュメモリや小型ハードディスクなどの記憶媒体を内蔵するメモリカード８１０とデータをやり取り可能に接続するインタフェースである。プリンタ１０の通信コネクタ１５０は、パーソナルコンピュータやデジタルスチルカメラ，デジタルビデオカメラなどの外部機器８２０とデータをやり取り可能に接続するインタフェースである。本実施例では、プリンタ１０は、カードスロット１４０に接続されたメモリカード８１０や、通信コネクタ１５０に接続された外部機器８２０に記憶されている画像データを印刷する機能を有する。本実施例では、更に、プリンタ１０は、メモリカード８１０や外部機器８２０に記憶されている画像データについて手ブレ判定を実施することによって、手ブレしていない画像を印刷対象として選定し、手ブレ画像を印刷対象から除外する「手ブレ判定付き印刷機能」を有する。プリンタ１０にて実行される「手ブレ判定付き印刷機能」の詳細については後述する。
【００２２】
プリンタ１０は、更に、スキャナ部１３０と、ディスプレイ１６０と、操作パネル１７０とを備える。プリンタ１０のスキャナ部１３０は、原稿台に載置された原稿を読み取ってデジタルデータに変換（スキャン、scan）する。プリンタ１０のディスプレイ１６０は、プリンタ１０のユーザに向けて文字や画像を表示する。プリンタ１０の操作パネル１７０は、プリンタ１０のユーザからの指示入力を受け付ける。
【００２３】
図２は、プリンタ１０の内部構成を主に示す説明図である。プリンタ１０は、図１で説明したカードスロット１４０や通信コネクタ１５０などの他、更に、プリンタ１０の各部を制御するメイン制御部１１０と、印刷媒体９００への印刷を実行する印刷機構部１２０とを備える。
【００２４】
プリンタ１０のメイン制御部１１０は、「手ブレ判定付き印刷機能」を実現するための機能要素として、画像読出部３１０と、周波数変換部３２０と、手ブレ方向推定部３３０と、一次元化部３４０と、重み付け部３５０と、判定部３６０と、印刷指示部３７０とを備える。メイン制御部１１０の画像読出部３１０は、カードスロット１４０に接続されたメモリカード８１０や、通信コネクタ１５０に接続された外部機器８２０から画像データを読み出す。メイン制御部１１０の周波数変換部３２０は、画像読出部３１０によって読み出された画像データに基づく画像を周波数領域で表したパワースペクトルを生成する。メイン制御部１１０の手ブレ方向推定部３３０は、周波数変換部３２０によって生成されたパワースペクトルにおける振幅値の第二主成分方向を特定する。メイン制御部１１０の一次元化部３４０は、手ブレ方向推定部３３０によって特定された第二主成分方向に略沿ったパワースペクトルの領域における振幅値を周波数軸上に一次元化した一次元振幅データを生成する。メイン制御部１１０の重み付け部３５０は、一次元化部３４０によって生成された一次元振幅データを周波数に応じて重み付けする。メイン制御部１１０の判定部３６０は、重み付け部３５０によって重み付けされた一次元振幅データにおいて振幅値が谷状に変化する領域の周波数に基づいて、画像データに基づく画像が手ブレによってぼやけているか否かを判定する。メイン制御部１１０の印刷指示部３７０は、判定部３６０によって手ブレしていないと判断された正常な画像を印刷するよう印刷機構部１２０に指示する。
【００２５】
本実施例では、プリンタ１０のメイン制御部１１０は、セントラルプロセッシングユニット（Central Processing Unit、以下、ＣＰＵという）,リードオンリメモリ（Read Only Memory、以下、ＲＯＭという）,ランダムアクセスメモリ（Random Access Memory、以下、ＲＡＭという）などのハードウェアを有するＡＳＩＣ（Application Specific Integrated Circuits）を備える。本実施例では、メイン制御部１１０には、画像読出部３１０，周波数変換部３２０，手ブレ方向推定部３３０，一次元化部３４０，重み付け部３５０，判定部３６０，印刷指示部３７０の各機能を実現させるためのソフトウェアがインストールされている。メイン制御部１１０の動作についての詳細は後述する。
【００２６】
プリンタ１０の印刷機構部１２０は、図２に示すように、ヘッドユニット２１０と、キャリッジ２００と、キャリッジ駆動部２４０と、搬送部２５０とを備える。印刷機構部１２０のヘッドユニット２１０は、ブラック，シアン，ライトシアン，マゼンダ，ライトマゼンダ，イエロの各色のインク毎に計６個の噴射ヘッド２１１，２１２，２１３，２１４，２１５，２１６を有する。噴射ヘッド２１１〜２１６の各々は、ピエゾ素子（図示しない）の電圧調整によってインクを噴射する。印刷機構部１２０のキャリッジ２００は、ヘッドユニット２１０を保持する。印刷機構部１２０のキャリッジ駆動部２４０は、印刷媒体９００の上方で、キャリッジ２００を主走査方向に駆動する。印刷機構部１２０の搬送部２５０は、キャリッジ２００が移動する主走査方向に交差する副走査方向に、印刷媒体９００を搬送する。印刷機構部１２０の噴射ヘッド２１１〜２１６，キャリッジ駆動部２４０，搬送部２５０の各部が、メイン制御部１１０の指示に基づいて協働することによって、印刷媒体９００への印刷が実現される。
【００２７】
Ａ２．プリンタの動作：
図３は、プリンタ１０のメイン制御部１１０によって実行される画像印刷処理を示すフローチャートである。図３の画像印刷処理は、前述した「手ブレ判定付き印刷機能」を実現するための処理である。本実施例では、カードスロット１４０に取り付けられたメモリカード８１０や通信コネクタ１５０に取り付けられた外部機器８２０に記憶された画像データについて「手ブレ判定付き印刷機能」を実施するようにとの実施要求が、プリンタ１０のユーザから操作パネル１７０を介して受け付けられた場合に、プリンタ１０のメイン制御部１１０は、図３の画像印刷処理を開始する。本実施例では、図３の画像印刷処理は、メイン制御部１１０のＣＰＵがソフトウェアに基づいて動作することによって実現されるが、他の実施形態として、メイン制御部１１０の電子回路がその物理的な回路構成に基づいて動作することによって実現されても良い。
【００２８】
プリンタ１０のメイン制御部１１０は、図３の画像印刷処理を開始すると、印刷条件を設定する印刷条件設定処理を実行する（ステップＳ１００）。印刷条件設定処理（ステップＳ１００）で設定される印刷条件には、印刷対象となる画像データ，印刷用紙，印刷サイズ，印刷枚数，印刷品質などが含まれる。本実施例では、印刷条件設定処理（ステップＳ１００）で設定される印刷条件は、プリンタ１０のユーザから操作パネル１７０を介して受け付けられた情報に基づいて設定されるが、他の実施形態として、予め設定されている既定の印刷条件に基づいて設定されるとしても良い。
【００２９】
印刷条件設定処理（ステップＳ１００）の後、メイン制御部１１０は、印刷条件設定処理（ステップＳ１００）で設定された印刷条件の範囲で、メモリカード８１０や外部機器８２０に記憶されている画像データを順次選定することによって、手ブレ判定の判定対象となる画像データを準備する（ステップＳ３０２）。本実施例では、判定対象となる画像データは、そのファイル名の順序に従って選定されるが、他の実施形態として、ファイル形式、撮影日時、ファイル更新日時などの各種属性に応じた順序に従って選定されるとしても良い。
【００３０】
画像データが準備された後（ステップＳ３０２）、メイン制御部１１０は、その準備された画像データに基づく画像が手ブレによってぼやけているか否かを判定する手ブレ判定処理を実行する（ステップＳ４００）。
【００３１】
図４および図５は、図３における手ブレ判定処理（ステップＳ４００）の詳細を示すフローチャートである。プリンタ１０のメイン制御部１１０は、図４の手ブレ判定処理を開始すると、画像読出部３１０として動作することによって画像読出処理を実行する（ステップＳ４１０）。画像読出処理（ステップＳ４１０）では、メイン制御部１１０は、判定対象となる画像データをメモリカード８１０や外部機器８２０から読み出す。本実施例では、画像読出処理（ステップＳ４１０）で読み出された画像データは、非圧縮のラスタデータとしてメイン制御部１１０のメモリ上に準備される。なお、ラスタデータとは、色情報を有する複数の画素（ピクセル）を縦横に羅列して画像を表現したデータを意味する。本実施例では、画像読出処理（ステップＳ４１０）で読み出された画像データが、ＢＭＰ（ビットマップ）形式を始めとする非圧縮データではなく、ＪＰＥＧ（ジェイペグ）形式を始めとする圧縮データである場合、メイン制御部１１０は、画像読出処理（ステップＳ４１０）で読み出された画像データを、非圧縮のラスタデータに変換する。
【００３２】
画像読出処理（ステップＳ４１０）の後、メイン制御部１１０は、周波数変換部３２０として動作することによって周波数変換処理を実行する（ステップＳ４２０）。周波数変換処理（ステップＳ４２０）では、メイン制御部１１０は、画像読出処理（ステップＳ４１０）で読み出された画像データを周波数領域で表したパワースペクトルを生成する。
【００３３】
本実施例では、周波数変換処理（ステップＳ４２０）において、メイン制御部１１０は、パワースペクトルの元となるサンプル画像を、画像読出処理（ステップＳ４１０）で読み出された画像データから抽出する（ステップＳ４２２）。
【００３４】
図６は、周波数変換処理（ステップＳ４２０）が実施される様子の一例を示す説明図である。図６のサンプル画像７０は、画像読出処理（ステップＳ４１０）で読み出された画像データから抽出された空間領域の画像データを模式的に表したものである。本実施例では、メイン制御部１１０は、画像読出処理（ステップＳ４１０）で読み出された画像データを、平均値補完によって縦横８００×６００ピクセルのサイズに変換した後、その画像の中央部における縦横６００×６００ピクセルの領域をサンプル画像７０として抽出する（ステップＳ４２２）。なお、サンプル画像７０の抽出サイズは、縦横６００×６００ピクセルに限られるものではなく、メイン制御部１１０の演算能力の他、印刷サイズや印刷品質などの印刷条件に応じて適宜設定されるとしても良い。
【００３５】
図４および図５の説明に戻り、サンプル画像７０が抽出された後（ステップＳ４２２）、メイン制御部１１０は、サンプル画像を高速フーリエ変換することによってパワースペクトルを生成する（ステップＳ４２４）。本実施例では、パワースペクトルの生成に高速フーリエ変換が用いられるが、他の実施形態として、離散フーリエ変換が用いられるとしても良い。
【００３６】
図６のパワースペクトル８０は、サンプル画像７０を高速フーリエ変換することによって生成された周波数領域の画像データを模式的に表したものである。図６のパワースペクトル８０には、横軸であるｘ軸に水平周波数をとると共に、縦軸であるｙ軸に垂直周波数をとることによって、高速フーリエ変換後の複素係数の絶対値が振幅値（パワー）としてスケーリング表示されている。パワースペクトル８０における振幅値は、白く見える部分ほど比較的に大きな振幅値であることを示し、黒く見える部分ほど比較的に小さな振幅値であることを示す。図６に示す例では、サンプル画像７０が手ブレ画像であるため、パワースペクトル８０における振幅値の分布は、第二象限および第四象限から原点に向かう手ブレ方向に圧縮された態様を示す。
【００３７】
図４および図５の説明に戻り、周波数変換処理（ステップＳ４２０）の後、メイン制御部１１０は、手ブレ方向推定部３３０として動作することによって手ブレ方向推定処理を実行する（ステップＳ４３０）。手ブレ方向推定処理（ステップＳ４３０）では、メイン制御部１１０は、周波数変換処理（ステップＳ４２０）で生成されたパワースペクトル８０における振幅値の第二主成分方向を特定する。
【００３８】
本実施例では、手ブレ方向推定処理（ステップＳ４３０）において、メイン制御部１１０は、周波数変換処理（ステップＳ４２０）で生成されたパワースペクトル８０において画像の平均輝度を示す直流成分（ＤＣ成分）に依存する振幅値を「０（零）」に置き換える（ステップＳ４３２）。その後、メイン制御部１１０は、そのパワースペクトル８０にハニング窓関数を掛け合わせる。本実施例では、ハニング窓係数を掛け合わせることによってパワースペクトル８０を処理したが、他の実施形態として、ハニング窓関数に代えて、ハミング窓関数やブラックマン窓関数などの窓関数を利用しても良い。
【００３９】
図７は、手ブレ方向推定処理（ステップＳ４３０）が実施される様子の一例を示す説明図である。図７のパワースペクトル８２は、周波数変換処理（ステップＳ４２０）で生成されたパワースペクトル８０について直流成分を「０」に置き換えた後にハニング窓関数を掛け合わせた周波数領域の画像データを模式的に表したものである。パワースペクトル８２には、水平周波数をとった横軸であるｘ軸と、垂直周波数をとった縦軸であるｙ軸とが示され、図面の理解を容易にするために、パワースペクトル８２において比較的に大きな振幅値が分布する部位を領域８２８として表現することによって、振幅値の分布が簡略化して図示されている。
【００４０】
図４および図５の説明に戻り、ハニング窓関数で処理されたパワースペクトル８２が生成された後（ステップＳ４３４）、メイン制御部１１０は、主成分分析（Principal Component Analysis, PCA）を応用して、次の数式１から求められる第二主成分方向「ｙ／ｘ」を手ブレ方向として推定する（ステップＳ４３６）。
【００４１】
【数１】
2009230598.tif 000003
【００４２】
ここで、λは固有ベクトルであり、係数Ｖｘｘ，Ｖｙｙ，Ｖｘｙは、次の数式２から求められる。
【００４３】
【数２】
2009230598.tif 000004
【００４４】
ここで、係数ａｘｙは、パワースペクトル８２における位置（ｘ，ｙ）上の周波数振幅値である。なお、本実施例では、サンプル画像７０の大きさから「−６００≦ｘ，ｙ≦５９９」であり、直流成分に依存する係数ａｘ０，ａ０ｙは「０」である。
【００４５】
数式１から「ｙ／ｘ」として求められた第二主成分方向は、図７に示すように、パワースペクトル８２においてｘ軸およびｙ軸の原点を通り主成分方向８２１に直交する手ブレ方向８２２として特定される。
【００４６】
図４および図５の説明に戻り、手ブレ方向推定処理（ステップＳ４３０）の後、メイン制御部１１０は、一次元化部３４０として動作することによって一次元化処理を実行する（ステップＳ４４０）。一次元化処理（ステップＳ４４０）では、メイン制御部１１０は、手ブレ方向推定処理（ステップＳ４３０）で特定された手ブレ方向８２２に略沿ったパワースペクトル８２の領域における振幅値を周波数軸上に一次元化した一次元振幅データを生成する。
【００４７】
本実施例では、一次元化処理（ステップＳ４４０）において、メイン制御部１１０は、パワースペクトル８２における領域のうち、手ブレ方向推定処理（ステップＳ４３０）で推定された手ブレ方向８２２を含む中心角を有する扇型領域を特定する（ステップＳ４４２）。その後、メイン制御部１１０は、その扇型領域における振幅値を円周方向に合計することによって一次元振幅データを生成する（ステップＳ４４４）。
【００４８】
図８は、一次元化処理（ステップＳ４４０）が実施される様子の一例を示す説明図である。図８のパワースペクトル８２は、手ブレ方向推定処理（ステップＳ４３０）によって手ブレ方向８２２が推定された画像データを模式的に表したものである。本実施例では、図８のパワースペクトル８２には、ｘ軸およびｙ軸の原点を中心として第一象限および第二象限にわたる１８０度の半円領域を八等分した扇型領域が設定されている。これら八個の扇型領域のうち、手ブレ方向８２２を含む中心角を有する扇型領域８２４が、メイン制御部１１０によって特定される（ステップＳ４２２）。図８には、手ブレ方向８２２の扇型領域８２４における振幅値を円周方向に合算することによって、振幅値の合計値が一次元の周波数軸上に分布する一次元振幅データ８４が生成される様子が図示されている（ステップＳ４４４）。図８の一次元振幅データ８４には、周波数振幅値が、横軸に周波数をとり縦軸に振幅をとって図示されている。なお、一次元振幅データ８４のためにパワースペクトル８２から抽出される領域は、半円領域を八等分した扇型領域に限るものではなく、半円領域を８以下や８以上に等分した扇型領域であっても良いし、手ブレ方向８２２に沿った帯状領域であっても良い。
【００４９】
図４および図５の説明に戻り、一次元化処理（ステップＳ４４０）の後、メイン制御部１１０は、重み付け部３５０として動作することによって重み付け処理を実行する（ステップＳ４５０）。重み付け処理（ステップＳ４５０）では、メイン制御部１１０は、一次元化処理（ステップＳ４４０）で生成された一次元振幅データ８４を周波数に応じて重み付けする。
【００５０】
本実施例では、重み付け処理（ステップＳ４５０）において、メイン制御部１１０は、一次元化処理（ステップＳ４４０）で生成された一次元振幅データ８４を、周波数５０ヘルツ近傍で平滑化する（ステップＳ４５２）。本実施例における一次元振幅データ８４を平滑化する範囲である周波数５０ヘルツの値は、本発明者による検証によって好適な値として設定されたものであるが、一次元振幅データ８４を平滑化する範囲は、周波数５０ヘルツに限定するものではなく、判定対象となる画像に応じて適切な値を適宜設定しても良い。本実施例では、一次元振幅データ８４が平滑化された後（ステップＳ４５２）、メイン制御部１１０は、平滑化された一次元振幅データ８４に周波数の値を掛け合わせることによって重み付けを実施する（ステップＳ４５４）。
【００５１】
図９は、重み付け処理（ステップＳ４５０）が実施される様子の一例を示す説明図である。図９の一次元振幅データ８４には、周波数５０ヘルツ近傍で平滑化された周波数振幅値が、横軸に周波数をとり縦軸に振幅をとって図示されている。図９の一次元振幅データ８６には、周波数を掛け合わせることによって重み付けされた周波数振幅値が、横軸に周波数をとり縦軸に振幅をとって図示されている。一次元振幅データ８６の周波数振幅値は、重み付け処理（ステップＳ４５０）によって周波数が大きくなるほど大きな重み付けがなされている。例えば、一次元振幅データ８４における周波数６０ヘルツの周波数振幅値には、その周波数の値である「６０」が掛け合わされ、周波数３００ヘルツの周波数振幅値には、その周波数の値である「３００」が掛け合わされる。
【００５２】
図４および図５の説明に戻り、重み付け処理（ステップＳ４５０）の後、メイン制御部１１０は、判定部３６０として動作することによって判定処理を実行する（ステップＳ４６０）。判定処理（ステップＳ４６０）では、メイン制御部１１０は、重み付け処理（ステップＳ４５０）で生成された一次元振幅データ８６において振幅値が谷状に変化する領域の周波数に基づいて、画像読出処理（ステップＳ４１０）で読み出された画像データが手ブレ画像であるか否かを判定する。
【００５３】
本実施例では、判定処理（ステップＳ４６０）において、メイン制御部１１０は、重み付け処理（ステップＳ４５０）で生成された一次元振幅データ８６における周波数５０ヘルツから５７５ヘルツの範囲で周波数振幅が最小値をとる周波数ｆｂを特定する（ステップＳ４６２）。本実施例における周波数振幅の最小値を検索する範囲である周波数５０ヘルツから５７５ヘルツの値は、本発明者による検証によって好適な値として設定されたものであるが、周波数振幅の最小値を検索する範囲は、周波数５０ヘルツから５７５ヘルツの値に限定するものではなく、判定対象となる画像に応じて適切な値を適宜設定しても良い。
【００５４】
周波数ｆｂが周波数６０ヘルツよりも大きく周波数３００ヘルツより小さい場合、メイン制御部１１０は、画像読出処理（ステップＳ４１０）で読み出された画像データが手ブレ画像であると判定した後（ステップＳ４６６）、手ブレ判定処理（ステップＳ４００）を終了する。一方、周波数ｆｂが周波数６０ヘルツ以下または周波数３００ヘルツ以上である場合、メイン制御部１１０は、画像読出処理（ステップＳ４１０）で読み出された画像データが手ブレ画像はない正常な画像であると判定した後（ステップＳ４６８）、手ブレ判定処理（ステップＳ４００）を終了する。本実施例における周波数ｆｂの判定範囲である周波数６０ヘルツから３００ヘルツの値は、本発明者による検証によって好適な値として設定されたものであるが、周波数ｆｂの判定範囲は、周波数６０ヘルツから３００ヘルツの値に限定するものではなく、判定対象となる画像に応じて適切な値を適宜設定しても良い。なお、本実施例における周波数ｆｂの判定範囲である周波数３００ヘルツは、Ｌ版サイズ（１２７ｍｍ×８９ｍｍ）で印刷した場合に手ブレ幅が約０．３ｍｍとなる値に相当する。
【００５５】
図１０は、判定処理（ステップＳ４６０）が実施される様子の一例を示す説明図である。図１０には、重み付け処理（ステップＳ４５０）で生成された一次元振幅データ８６が、周波数を横軸にとり振幅を縦軸にとって図示されている。図１０に示す例では、周波数５０ヘルツから５７５ヘルツの範囲において、一次元振幅データ８６が最小値ｐｂをとる周波数ｆｂは、周波数６０ヘルツよりも大きく３００ヘルツよりも小さな手ブレ範囲にある。この場合、メイン制御部１１０は、画像読出処理（ステップＳ４１０）で読み出された画像データが手ブレ画像であると判定する（ステップＳ４６６）。本実施例では、一次元振幅データ８６において振幅値が谷状に変化する領域の周波数を、振幅値が最小値ｐｂをとる周波数ｆｂとして特定したが、他の実施形態として、振幅値が一次元振幅データ８６に施された重み付けに応じた条件を満たす極小値をとる周波数として特定しても良い。
【００５６】
図３の説明に戻り、手ブレ判定処理（ステップＳ４００）の後、メイン制御部１１０は、手ブレ判定処理（ステップＳ４００）にて判定された画像データが手ブレ画像か否かを判断する（ステップＳ３０４）。手ブレ判定処理（ステップＳ４００）にて判定された画像データが正常な画像である場合（ステップＳ３０４）、メイン制御部１１０は、印刷指示部３７０として動作することによって、その画像を印刷対象として選定し、その画像を印刷媒体９００に印刷するよう印刷機構部１２０に指示する（ステップＳ３０６）。一方、手ブレ判定処理（ステップＳ４００）にて判定された画像データが手ブレ画像である場合（ステップＳ３０４）、メイン制御部１１０は、その画像を印刷対象から除外することによって、その画像が印刷機構部１２０によって印刷されるのを禁止する（ステップＳ３０７）。
【００５７】
手ブレ判定された画像について印刷実行または印刷禁止を処理した後（ステップＳ３０６，Ｓ３０７）、メイン制御部１１０は、手ブレ判定を実施すべき画像データの全てについて処理するまで、手ブレ判定処理（ステップＳ４００）からの処理を繰り返し実行する（ステップＳ３０８，Ｓ３０９）。全ての画像データについて処理を終えた後（ステップＳ３０８）、メイン制御部１１０は、手ブレ判定（ステップＳ４００）の処理結果をユーザに向けて表示する結果表示処理を実行する（ステップＳ５００）。
【００５８】
図１１は、結果表示処理（ステップＳ５００）でディスプレイ１６０に表示される結果表示画面６０の一例を示す説明図である。図１１の結果表示画面６０は、手ブレ判定処理（ステップＳ４００）で判定された画像データの一覧を表示する画像一覧部６１０を備える。本実施例では、画像一覧部６１０に表示される画像データのうち、手ブレ判定処理（ステップＳ４００）にて手ブレ画像と判定された画像データ、すなわち、印刷が禁止された画像データには太枠６２０が付され、手ブレ画像と正常な画像とが区別して表示される。
【００５９】
Ａ３．効果
以上説明したプリンタ１０によれば、手や体などの直線的な移動に起因する手ブレ画像が、実空間上の被写体に対し矩形関数（数式３）を畳み込んだ画像になり、周波数空間上ではシンク関数（数式４）を畳み込んだパワースペクトル８０になると考えられることから、周波数領域の画像において手ブレ方向に現れるシンク関数の影響の度合いに基づいて手ブレ判定を実施することができる。
【００６０】
【数３】
2009230598.tif 000005
【００６１】
【数４】
2009230598.tif 000006
【００６２】
ここで、γは、手ブレ幅、すなわち手ブレによる直線移動距離を示し、ｋは周波数を示す。
【００６３】
図１２は、手ブレ画像とシンク関数の関係を示す説明図である。図１２には、周波数振幅Ｌａ，Ｌｂ，Ｌｃが、横軸に周波数をとり縦軸に振幅をとって図示されている。周波数振幅Ｌａは、手ブレなしで正常に撮影された被写体の周波数振幅を示す。周波数振幅Ｌｂは、次の数式４で表されるシンク関数の周波数振幅を示す。周波数振幅Ｌｂは、被写体の周波数振幅Ｌａにシンク関数の周波数振幅Ｌｂを畳み込んだ手ブレ画像の周波数振幅を示す。図１２において、数式４のシンク関数が「０」になる点Ｂ１，Ｂ２，Ｂ３では、周波数ｋが１／γ，２／γ，３／γをとる。
【００６４】
本発明者による検証において、デジタルカメラで撮影した正常写真３７０枚および手ブレ写真１１０枚について、本実施例の手ブレ判定処理（ステップＳ４００）を実施したところ、正常写真３７０枚のうち３５８枚を正常画像であるとして判定（正答率９６．８％）し、手ブレ写真１１０枚のうち６９枚を手ブレ画像であると判定（正答率６２．７％）することができた。これらのことから、プリンタ１０によれば、相対的に高周波成分の少ない画像であっても、手ブレ判定における誤判定を抑制することができる。
【００６５】
また、プリンタ１０の周波数変換部３２０は、高速フーリエ変換によってパワースペクトル８０を生成するため（ステップＳ４２４）、シンク関数の影響によって振幅値が谷状に変化する領域を特定するのに十分な周波数分解能を得ることができる。また、プリンタ１０の手ブレ方向推定部３３０は、ハニング窓関数を掛け合わせたパワースペクトル８２から手ブレ方向８２２を推定するため（ステップＳ４３４）、手ブレ方向８２２の特定誤差を抑制することができる。また、プリンタ１０の手ブレ方向推定部３３０は、パワースペクトル８０における直流成分の振幅値ａｘ０，ａ０ｙを零に置き換えた主成分分析によって手ブレ方向８２２を推定するため（ステップＳ４３２）、直流成分の影響を排除することによって手ブレ方向８２２の特定誤差を抑制することができる。
【００６６】
また、プリンタ１０の一次元化部３４０は、手ブレ方向８２２の扇型領域８２４から一次元振幅データ８４を生成するため（ステップＳ４４２）、主成分方向に近い方向の振幅値を一次元振幅データ８４から排除することができる。また、プリンタ１０の重み付け部３５０は、一次元振幅データ８４を、周波数５０ヘルツ近傍で平滑化するため（ステップＳ４５２）、被写体に依存する振幅特性が一次元振幅データ８４に与える影響を抑制することができる。また、プリンタ１０の重み付け部３５０は、一次元振幅データ８４に周波数を掛け合わせて重み付けするため（ステップＳ４５４）、周波数に応じた振幅値の影響度合いを考慮して一次元振幅データ８６を分析することができる。
【００６７】
また、プリンタ１０の判定部３６０は、周波数５０ヘルツから５７５ヘルツの範囲で周波数ｆｂを特定するため（ステップＳ４６２）、手ブレ判定に有用な周波数範囲を絞り込むことによって手ブレ判定に要する処理負荷を軽減することができる。また、プリンタ１０の判定部３６０は、周波数ｆｂが６０ヘルツから３００ヘルツの間である場合に手ブレ画像であると判定するため（ステップＳ４６６）、手ブレ画像であると人間が認識可能な度合いで手ブレ判定を実施することができる。
【００６８】
Ｂ．その他の実施形態：
以上、本発明の実施の形態について説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。また、上述の実施例では、本発明をプリンタに適用した例について説明したが、他の実施形態として、例えば、パーソナルコンピュータ，デジタルカメラ，ビューワなど画像データを取り扱う電子機器に本発明を適用しても良い。
【図面の簡単な説明】
【００６９】
【図１】プリンタ１０の外観構成を主に示す説明図である。
【図２】プリンタ１０の内部構成を主に示す説明図である。
【図３】プリンタ１０のメイン制御部１１０によって実行される画像印刷処理を示すフローチャートである。
【図４】図３における手ブレ判定処理（ステップＳ４００）の詳細を示すフローチャートである。
【図５】図３における手ブレ判定処理（ステップＳ４００）の詳細を示すフローチャートである。
【図６】周波数変換処理（ステップＳ４２０）が実施される様子の一例を示す説明図である。
【図７】手ブレ方向推定処理（ステップＳ４３０）が実施される様子の一例を示す説明図である。
【図８】一次元化処理（ステップＳ４４０）が実施される様子の一例を示す説明図である。
【図９】重み付け処理（ステップＳ４５０）が実施される様子の一例を示す説明図である。
【図１０】判定処理（ステップＳ４６０）が実施される様子の一例を示す説明図である。
【図１１】結果表示処理（ステップＳ５００）でディスプレイ１６０に表示される結果表示画面６０の一例を示す説明図である。
【図１２】手ブレ画像とシンク関数の関係を示す説明図である。
【符号の説明】
【００７０】
１０...プリンタ
６０...結果表示画面
７０...サンプル画像
８０...パワースペクトル
８２...パワースペクトル
８４...一次元振幅データ
８６...一次元振幅データ
１１０...メイン制御部
１２０...印刷機構部
１３０...スキャナ部
１４０...カードスロット
１５０...通信コネクタ
１６０...ディスプレイ
１７０...操作パネル
２００...キャリッジ
２１０...ヘッドユニット
２１１...噴射ヘッド
２４０...キャリッジ駆動部
２５０...搬送部
３１０...画像読出部
３２０...周波数変換部
３３０...手ブレ方向推定部
３４０...一次元化部
３５０...重み付け部
３６０...判定部
３７０...印刷指示部
６１０...画像一覧部
６２０...太枠
８１０...メモリカード
８２０...外部機器
８２１...主成分方向
８２２...手ブレ方向
８２４...扇型領域
８２８...領域
９００...印刷媒体
ｆｂ...周波数
ｐｂ...最小値
【図１】
2009230598.tif 000007
【図２】
2009230598.tif 000008
【図３】
2009230598.tif 000009
【図４】
2009230598.tif 000010
【図５】
2009230598.tif 000011
【図６】
2009230598.tif 000012
【図７】
2009230598.tif 000013
【図８】
2009230598.tif 000014
【図９】
2009230598.tif 000015
【図１０】
2009230598.tif 000016
【図１１】
2009230598.tif 000017
【図１２】
2009230598.tif 000018