(57)【要約】【課題】ＭＰ４ファイルのような動画ファイルをゴミ情報を用いてゴミ補正処理を行いながら再生し、ユーザーにゴミなどの写りこみが補正された高品位な動画の再生を提供する。【解決手段】入力された動画像データから、その動画像データを撮像した撮像装置における撮像素子の前方に配置された光学素子に付着した異物の位置と大きさとを含む異物情報を取得する異物情報取得部と、動画像データから、その動画像データを分割したマクロブロックの動きベクトルを取得する動きベクトル情報取得部と、取得された異物情報に基づいて、異物による画質の劣化を補正して、動画像データを再生する補正再生部と、補正再生部により再生する動画像データにおける、異物の位置と一致するマクロブロックの動きベクトルに基づいて、マクロブロックの異物補正再生をするか否かを判定する判定部とを備える。【選択図】図２０
2010081115.tif 000002
【特許請求の範囲】
【請求項１】
入力された動画像データから、該動画像データを撮像した撮像装置における撮像素子の前方に配置された光学素子に付着した異物の位置と大きさとを含む異物情報を取得する異物情報取得手段と、
前記動画像データから、該動画像データを分割したマクロブロックの動きベクトルを取得する動きベクトル情報取得手段と、
前記異物情報取得手段により取得された前記異物情報に基づいて、前記異物による画質の劣化を補正して、動画像データを再生する補正再生手段と、
前記補正再生手段により再生する動画像データにおける、前記異物の位置と一致するマクロブロックの動きベクトルに基づいて、該マクロブロックの異物補正再生をするか否かを判定する判定手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記異物情報取得手段により得られた異物情報において、前記異物の大きさが一定の大きさ以上である場合は、前記判定手段は、前記異物の位置と一致するマクロブロックの動きベクトルに関わらず、該マクロブロックの異物補正再生を行うと判定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記異物情報取得手段により得られた異物情報において、前記異物が指定された領域内にある場合は、前記判定手段は、前記異物の位置と一致するマクロブロックの動きベクトルに関わらず、該マクロブロックの異物補正再生を行うと判定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記異物情報取得手段により得られた異物情報において、前記異物の数が一定の数より多い場合は、前記判定手段は、異物補正再生を行うか否かの判定基準を変更することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
入力された動画像データから、該動画像データを撮像した撮像装置における撮像素子の前方に配置された光学素子に付着した異物の位置と大きさとを含む異物情報を取得する異物情報取得工程と、
前記動画像データから、該動画像データを分割したマクロブロックの動きベクトルを取得する動きベクトル情報取得工程と、
前記異物情報取得工程において取得された前記異物情報に基づいて、前記異物による画質の劣化を補正して、動画像データを再生する補正再生工程と、
前記補正再生工程において再生する動画像データにおける、前記異物の位置と一致するマクロブロックの動きベクトルに基づいて、該マクロブロックの異物補正再生をするか否かを判定する判定工程と、
を備えることを特徴とする画像処理方法。
【請求項６】
請求項５に記載の画像処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＣＤやＣＭＯＳセンサ等の撮像素子を用いた撮像装置における、撮像素子の前方に配置された光学ローパスフィルター等の表面に付着した異物による画質劣化を抑制する技術に関し、特に動画撮影時の異物による画質劣化を抑制する技術に関する。
【背景技術】
【０００２】
近年、動画像情報をデジタルデータとして取り扱い、蓄積・伝送に用いるために、高圧縮率かつ高画質で符号化する技術が望まれている。画像情報の圧縮には、動画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き予測・動き補償とにより、画像情報を圧縮符号化するＭＰＥＧなどの方式が提案され広く普及している。
【０００３】
各メーカーはこれらの符号化方式を利用して画像を記録可能としたデジタルカメラやデジタルビデオカメラといった撮像装置或いはＤＶＤレコーダーなどを開発し、製品化している。そして、ユーザーはこれらの装置或いはパーソナルコンピュータやＤＶＤプレーヤーなどを用いて簡単に画像を視聴することが可能となっている。
【０００４】
また、近年、更なる高圧縮率、高画質を目指した符号化方式としてＨ．２６４（ＭＰＥＧ４−Ｐａｒｔ１０  ＡＶＣ）がある。このＨ．２６４はＭＰＥＧ２やＭＰＥＧ４といった従来の符号化方式と比較して、その符号化、復号により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている（非特許文献１参照）。
【０００５】
図１は、Ｈ．２６４方式で画像データを圧縮する画像処理装置の構成を示す図である。
【０００６】
図１において、入力された画像データは、マクロブロックに分けられ、減算部１０１に送られる。図２には、入力された画像データがマクロブロックに分けられた際の模式図を示す。また、図３には一般的なマクロブロック・パーティションを示す。Ｈ．２６４ではブロックサイズは、１６ｘ１６画素、１６ｘ８画素、８ｘ１６画素、８ｘ８画素、のいずれかを選択することができ、８ｘ８画素の場合には、更に８ｘ８画素、８ｘ４画素、４ｘ８画素及び４ｘ４画素のいずれかを選択することができる。
【０００７】
減算部１０１は、画像データと予測値との差分を求めて、整数ＤＣＴ（Discrete Cosine Transform）変換部１０２に出力する。整数ＤＣＴ変換部１０２は、入力されたデータを整数ＤＣＴ変換して量子化部１０３に出力する。量子化部１０３は、入力されたデータを量子化する。量子化されたデータの一方は、差分画像データとしてエントロピー符号化部１１５に送られる。もう一方は、逆量子化部１０４で逆量子化された後、逆整数ＤＣＴ変換部１０５で逆整数ＤＣＴ変換される。逆整数ＤＣＴ変換されたデータは、加算部１０６で予測値が加えられる。これにより、画像が復元される。
【０００８】
復元された画像の一方は、イントラ（フレーム内）予測のためのフレームメモリ１０７に送られる。他方は、デブロッキングフィルター１０９でデブロッキングフィルター処理が行われた後、インター（フレーム間）予測のためのフレームメモリ１１０に送られる。イントラ予測のためのフレームメモリ１０７内の画像は、イントラ予測部１０８でのイントラ予測で使用される。このイントラ予測では、同一ピクチャ内で、既に符号化されたブロックの隣接画素の値を予測値として用いる。
【０００９】
インター予測のためのフレームメモリ１１０内の画像は、後述するように、複数のピクチャで構成される。これら複数のピクチャは、「Ｌｉｓｔ  ０」と「Ｌｉｓｔ  １」の２つのリストに分けられる。２つのリストに分けられた複数のピクチャは、インター予測部１１１でのインター予測で使用される。インター予測がなされた後に、メモリコントローラー１１３によって、内部の画像が更新される。インター予測部１１１で行われるインター予測では、フレームの異なる画像データに対して動き検出部１１２で行われた動き検出の結果に基づく最適な動きベクトルを用いて、予測画像を決定する。
【００１０】
イントラ予測とインター予測の結果、最適な予測が選択部１１４で選択される。また、上記の動きベクトルは、エントロピー符号化部１１５に送られ、差分画像データと共に符号化される。こうして出力ビットストリームが形成される。
【００１１】
ここで、Ｈ．２６４方式のインター予測について、図４から図７を用いて詳細に説明する。
【００１２】
Ｈ．２６４方式のインター予測では、複数のピクチャを予測に用いることができる。このため、参照ピクチャを特定するためにリストを２つ（「Ｌｉｓｔ  ０」及び「Ｌｉｓｔ  １」）用意する。各リストには最大５枚の参照ピクチャが割り当てられるようにしている。
【００１３】
Ｐピクチャでは「Ｌｉｓｔ  ０」のみを使用して、主に前方向予測を行う。Ｂピクチャでは「Ｌｉｓｔ  ０」及び「Ｌｉｓｔ  １」を用いて、双方向予測（または前方あるいは後方のみの予測）を行う。すなわち、「Ｌｉｓｔ  ０」には主に前方向予測のためのピクチャが割り当てられ、「Ｌｉｓｔ  １」には主に後方向予測のためのピクチャが収められる。
【００１４】
図４に、符号化の際に使用される参照リストの例を示す。ここでは、Ｉピクチャ、Ｐピクチャ及びＢピクチャの割合が、標準的な場合を例に挙げて説明する。すなわち、Ｉピクチャが１５フレーム間隔、Ｐピクチャが３フレーム間隔、その間のＢピクチャが２フレームである場合で説明する。図４において、４０１は、表示順に並べた画像データを示す。画像データ４０１の四角の中にはピクチャの種類と表示順を示す番号が記入されている。例えば、ピクチャＩ１５は表示順が１５番目のＩピクチャであり、イントラ予測のみを行う。ピクチャＰ１８は表示順が１８番目のＰピクチャであり、前方向予測のみを行う。ピクチャＢ１６は表示順が１６番目のＢピクチャであり、双方向予測を行う。
【００１５】
符号化を行う順序は表示順序と異なり、予測を行う順となる。すなわち、図４では、符号化を行う順序は、「Ｉ１５、Ｐ１８、Ｂ１６、Ｂ１７、Ｐ２１、Ｂ１９、Ｂ２０、…」となる。
【００１６】
また、図４において、４０２は、参照リスト（Ｌｉｓｔ  ０）を示す。この参照リスト（Ｌｉｓｔ０）４０２には、一旦符号化され復号化されたピクチャが収められている。例えば、ピクチャＰ２１（表示順が２１番目のＰピクチャ）でインター予測を行う場合、参照リスト（Ｌｉｓｔ  ０）４０２内の既に符号化が終わって復号化されたピクチャを参照する。図４に示す例では、ピクチャＰ０６、Ｐ０９、Ｐ１２、Ｉ１５、Ｐ１８が参照リスト４０２に収められている。
【００１７】
インター予測では、マクロブロック毎に、この参照リスト（Ｌｉｓｔ  ０）４０２中の参照ピクチャ内から最適な予測値をもつ動きベクトルを求め、符号化する。参照リスト（Ｌｉｓｔ  ０）４０２内のピクチャは、参照ピクチャ番号が順に与えられ、区別される（図示した番号とは別に与えられる）。
【００１８】
ピクチャＰ２１の符号化が終わると、こんどは新たにピクチャＰ２１が復号化され参照リスト（Ｌｉｓｔ  ０）４０２に追加される。参照リスト（Ｌｉｓｔ  ０）４０２から、最も古い参照ピクチャ（ここではピクチャＰ０６）が除去される。この後符号化は、ピクチャＢ１９、Ｂ２０と行われ、ピクチャＰ２４へと続く。このときの参照リスト（Ｌｉｓｔ  ０）４０２の様子を図５に示す。
【００１９】
図６に、参照リストの変化の様子をピクチャ毎に示す。
【００２０】
図６では、上から順番にピクチャが符号化されるようにしている。また、符号化中のピクチャと、その符号化中のピクチャに対する参照リスト（Ｌｉｓｔ  ０及びＬｉｓｔ  １）の内容を示している。図６に示す様に、Ｐピクチャ（またはＩピクチャ）が符号化されると、参照リスト（Ｌｉｓｔ  ０及びＬｉｓｔ  １）が更新され、参照リスト（Ｌｉｓｔ  ０及びＬｉｓｔ  １）中の最も古いピクチャが除去される。この例では、参照リスト（Ｌｉｓｔ  １）は１つのピクチャしか持っていない。これは、後方向予測のために参照するピクチャの数を多くすると、復号までのバッファ量が増えてしまうためである。すなわち、符号化中のピクチャとあまりに離れたところにある後方のピクチャの参照を避けたためである。
【００２１】
ここで挙げた例では、参照に用いるピクチャを、Ｉピクチャ及びＰピクチャとし、Ｉピクチャ及びＰピクチャの全てを参照リスト（Ｌｉｓｔ  ０及びＬｉｓｔ  １）に順次加えている。また、後方向予測のために参照リスト（Ｌｉｓｔ  １）で使うピクチャはＰピクチャだけとした。以上のようにしたのは、通常最もよく用いられるであろうピクチャの構成であるからである。ただし、このような参照リストにおけるピクチャの構成は、最も良く使用されるであろう一例に過ぎず、Ｈ．２６４自体は、参照リストの構成に、より高い自由度を持っている。
【００２２】
例えば、Ｉピクチャ及びＰピクチャの全てを参照リストに加える必要は無く、またＢピクチャを参照リストに加えることも可能である。また明示的に指示されるまで参照リストにとどまる長期参照リストも定義されている。図７に、Ｂピクチャを参照リストに加える場合の参照リストの変化の様子を示す。Ｂピクチャを参照リストに加える場合、通常、全てのＢピクチャを符号化する度に、符号化したピクチャを参照リストに追加することが考えられる。
【００２３】
次に、このように圧縮された動画像データを記録するファイルフォーマットについて説明する。
【００２４】
前述したようにデジタルビデオカメラ、デジタルスチルカメラ等で撮影されたＭＰＥＧ（ＭＰＥＧ−２またはＭＰＥＧ−４フォーマット）の画像データを記録する汎用フォーマットとしてＭＰ４（ＭＰＥＧ−４）ファイルフォーマットが用いられ、ＭＰ４ファイルとして記録することで、他のデジタル機器で再生できるなどの互換性が保証される。
【００２５】
ＭＰ４ファイルは 基本的には、図８（ａ）に示すように、符号化されたストリーム画像データが入っている mdat ボックスと、ストリーム画像データに関連する情報が入っている moov ボックスとから構成されている。 mdat ボックスの中はさらに、図８（ｂ）に示すように複数のチャンク（chunk cN）で構成され、各チャンクは図８（ｄ）に示すように複数のサンプル（sample sM）から構成される。各サンプルは例えば図８（ｅ）に示すように、sample s1、sample s2、sample s3、samples4、…に対してＩ０、Ｂ−２、Ｂ−１、Ｐ３、…の符号化されたＭＰＥＧ画像データが対応する。
【００２６】
ここで、Ｉ０、Ｉ１、Ｉ２、…、Ｉｎはイントラ符号化（フレーム内符号化）されたフレーム画像データであり、Ｂ０、Ｂ１、Ｂ２、…、Ｂｎは双方向から参照して符号化（フレーム間符号化）されるフレーム画像データである。また、Ｐ０、Ｐ１、Ｐ２、…、Ｐｎは一方向（順方向）から参照して符号化（フレーム間符号化）されるフレーム画像データであり、いずれも可変長符号データである。
【００２７】
moov ボックスは図８（ｃ）に示すように、作成日時等が記録されるヘッダ情報から成るmvhd ボックスと mdat ボックスに格納されたストリーム画像データに関する情報を入れるtrak ボックスから成る。trak ボックスに格納される情報としては、図８（ｈ）に示すように、 mdat ボックスの各チャンクへのオフセット値の情報を格納する stco ボックスや、図８（ｇ）に示すように各チャンク内のサンプル数の情報を格納する stsc ボックス、図８（ｆ）に示すように各サンプルのサイズの情報を格納する stsz ボックスがある。
【００２８】
従って上記の stcoボックス、stscボックス、stsz ボックスに格納されるデータのデータ量は、記録された画像データの量、すなわち記録時間と伴に増大していく。例えば１秒間３０フレームの画像を１５フレーム毎に１チャンクに格納するようにしてＭＰ４ファイルとして記録していった場合、２時間で１Ｍbytesほどのデータとなり、１Ｍbytesの容量を有する moov ボックスが必要となる。
【００２９】
このＭＰ４ファイルを再生する場合、記録媒体からＭＰ４ファイルの moov ボックスを読み込み、その moov ボックスから上記の stco ボックス、stsc ボックス、stsz ボックスを解析して、mdat ボックス内の各チャンクへのアクセスが出来るようになる。
【００３０】
ＭＰ４ファイルフォーマットで記録する場合、ストリームデータは時間とともに増大し、そのサイズも非常に大きいため、記録中にもファイルへストリームデータを書き出す必要がある。しかしながら上述の通り、moov ボックスも記録時間に応じてサイズが増加するため、記録が終了するまではＭＰ４ヘッダのサイズも不明なため、ストリームデータのファイル中への書き出しオフセット位置を決定することができない。したがって、一般的な動画処理装置での記録では、ＭＰ４ファイルフォーマットの柔軟性を利用し、以下のように対応する。
（１）mdat ボックスをファイル先頭に配置し、記録終了時に moov ボックスをmdat ボックスの後ろに配置する（図９（ａ））
（２）特許文献１に提案されるように、moov ボックスのサイズをあらかじめ決めてしまい、mdat ボックスのオフセット位置を決定して、記録を行う（図９（ｂ））。記録時間が短く、ヘッダ領域が余る場合でも、その領域は free ボックスとして残す。ヘッダサイズを越えて記録する場合には、随時Ｉピクチャのフレーム番号情報を間引いて記録することで、ヘッダサイズをあらかじめ決定したサイズで維持する。
（３）moov ボックスとmdat ボックスのペアを、複数に分割して配置する（図９（ｃ）。なお、２つ目以降のヘッダ領域を moof ボックスと呼ぶ。
【００３１】
以上が一般的なＭＰ４ファイルの構成である。
【００３２】
前述のＭＰ４ファイルの一般的な再生方法を以下に説明する。
【００３３】
図１０は、Ｈ．２６４の方式により圧縮符号化された動画像を再生する動画再生装置の基本的な構成例を示す。
【００３４】
図１０において動画再生装置は、記録媒体１００１、記録媒体からデータを再生する再生回路１００２、バッファ回路１００３、可変長復号化回路１００４、逆量子化回路１００５、逆ＤＣＴ回路１００６、加算回路１００７、メモリ１００８、動き補償回路１００９、スイッチ回路１０１０、並べ替え回路１０１１、出力端子１０１２、ヘッダ情報解析回路１０１３、再生制御回路１０１４、制御信号の入力端子１０１５を有している。
【００３５】
次に、図１０における動画再生装置の再生処理の流れについて説明する。
【００３６】
再生制御回路１０１４の指示を受け、再生回路１００２は記録媒体１００１に記録されたＭＰ４ファイルを再生し、バッファ回路１００３に供給し始める。それと同時に、再生制御回路１０１４は、ヘッダ情報解析回路１０１３で moov ボックスの mdat 内の格納状況を示す stco ボックス、stsc ボックス、stsz ボックスからオフセットやchunkやsampleの情報を解析するよう制御する。また、記録媒体１００１から mdat ボックスのストリーム画像データを再生し始めるように再生回路１００２を制御する。
【００３７】
再生回路１００２は記録媒体１００１に記録されたファイルの mdat ボックスのストリーム画像データをその先頭アドレスから再生し、バッファ回路１００３に供給する。バッファ回路１００３に記憶されたストリーム画像データは、バッファ回路１００３の占有状態等をみて読み出しが開始され、可変長復号化回路１００４にストリーム画像データが供給される。可変長復号化回路１００４はバッファ回路１００３から供給される再生されたストリーム画像データを可変長復号し、逆量子化回路１００５に供給する。
【００３８】
逆量子化回路１００５は可変長復号化回路１００４から供給される可変長復号されたストリーム画像データを逆量子化し、逆ＤＣＴ回路１００６に供給する。逆ＤＣＴ回路１００６は逆量子化回路１００５から供給される逆量子化されたデータに逆ＤＣＴを施し、加算回路１００７に供給する。加算回路１００７は逆ＤＣＴ回路１００６から供給される逆ＤＣＴデータとスイッチ回路１０１０から供給されるデータを加算する。
【００３９】
ここで記録媒体１００１から再生されるストリーム画像データは、図１１に示すようにまずＧＯＰ０（Group Of Picture）のフレーム内符号化されたＩ０が再生される。そのため、再生制御回路１０１４はスイッチ回路１０１０の端子ａを選択するよう制御し、スイッチ回路１０１０は加算回路１００７にデータ”０”を供給する。加算回路１００７はスイッチ回路１０１０から供給される”０”データと逆ＤＣＴ回路１００６から供給される逆ＤＣＴデータとを加算して、再生されたフレームＦ０としてメモリ１００８と並べ替え回路１０１１に供給する。メモリ１００８は加算回路１００７から供給される加算データを記憶する。
【００４０】
ＧＯＰ０のフレーム内符号化データＩ０の次に再生されるのは双方向予測符号化されたピクチャデータＢ−２、Ｂ−１であり、逆ＤＣＴ回路１００６までの再生手続きは上記フレーム内符号化データＩ０で説明した再生手続きと同様であるので省略する。
【００４１】
逆ＤＣＴ回路１００６から逆ＤＣＴ双方向予測符号化画像データが加算回路１００７に供給される。再生制御回路１０１４はこの時、スイッチ回路１０１０の可動端子ｃが固定端子ｂを選択するようスイッチ回路１０１０を制御し、加算回路１００７に動き補償回路１００９からのデータを供給する。
【００４２】
動き補償回路１００９は再生されてくるストリーム画像データから、符号化時に生成され、ストリーム画像データ内に記録された動きベクトルを検出し、参照ブロックのデータ（この場合は記録開始時であるため、再生されたフレーム内符号化データＦ０からのデータのみ）をメモリ１００８から読み出してスイッチ回路１０１０の可動端子ｃに供給する。
【００４３】
加算回路１００７は逆ＤＣＴ回路１００６から供給される逆ＤＣＴされたデータとスイッチ回路１０１０から供給される動き補償されたデータを加算し、再生されたフレームＦ−２、Ｆ−１として並べ替え回路１０１１に供給する。
【００４４】
次に片方向予測符号化されたピクチャデータＰ３が再生されるが、逆ＤＣＴ回路１００６までの再生手続きは上記フレーム内符号化データＩ０で説明した再生手続きと同様であるので省略する。
【００４５】
逆ＤＣＴ回路１００６から逆ＤＣＴされた片方向予測符号化されたピクチャデータが加算回路１００７に供給される。再生制御回路１０１４はこの時、スイッチ回路１０１０の可動端子ｃが固定端子ｂを選択するようスイッチ回路１０１０を制御し、加算回路１００７に動き補償回路１００９からのデータを供給する。
【００４６】
動き補償回路１００９は再生されてくるストリーム画像データから、符号化時に生成されてストリーム画像データ内に記録された動きベクトルを検出し、参照ブロックのデータ（再生されたフレーム内符号化データＦ０からのデータ）をメモリ１００８から読み出してスイッチ回路１０１０の可動端子ｃに供給する。
【００４７】
加算回路１００７は逆ＤＣＴ回路１００６から供給される逆ＤＣＴデータとスイッチ回路１０１０から供給される動き補償されたデータを加算し、再生されたフレームＦ３としてメモリ１００８と並べ替え回路１０１１に供給する。メモリ１００８は加算回路１００７から供給される加算データを記憶する。
【００４８】
次にピクチャＢ１、Ｂ２が再生されるが、記録開始時のフレームではないため、双方向予測としてフレームＦ０とＦ３から再生されるということ以外は上記Ｂ−２、Ｂ−１で説明したのと同様の手続きをとって再生される。かくして上記で説明したように順次Ｐ６、Ｂ４、Ｂ５、…、と再生されていく。
【００４９】
並べ替え回路１０１１は順次再生されてくるフレームＦ０、Ｆ−２、Ｆ−１、Ｆ３、Ｆ１、Ｆ２、Ｆ６、Ｆ４、Ｆ５、…、をＦ−２、Ｆ−１、Ｆ０、Ｆ１、Ｆ２、Ｆ３、Ｆ４、Ｆ５、Ｆ６、…、の順に並べ換えて出力端子１０１２に出力する。
【００５０】
上記ファイル再生開始時にヘッダ情報解析回路１０１３はＭＰ４ファイルの moov ボックスの mdat 内の格納状況を示す stco ボックス、stsc ボックス、stsz ボックスからオフセットやchunkやsampleの情報を解析しているので、再生制御回路１０１４はＧＯＰ１まで読み飛ばしてＧＯＰ１から次の再生を始めるように働く。
【００５１】
ところで、レンズ交換式のデジタルカメラでは、レンズをカメラ本体から取り外した際にカメラ本体の内部に空気中に浮遊する埃などが侵入する可能性がある。また、カメラ内部には、例えばシャッター機構等の機械的に動作する各種の機構部が配設されており、これらの機構部が動作することにより、カメラ本体内で金属片などのゴミ等が発生する場合もある。
【００５２】
このようなゴミや埃などの異物がデジタルカメラの撮像部を構成する撮像素子の前方に配置された光学ローパスフィルタ等の表面に付着すると、その異物は撮影された画像に影となって写り込んでしまい、撮影画像の品位を低下させてしまう。
【００５３】
このような問題点を解決するため、異物の影を補正することが考えられるが、その補正に応用できる技術として、例えば特許文献１には、撮像素子の画素欠陥を補正するための画像欠陥補正方法が提案されている。
【００５４】
また特許文献２には、画素欠陥の位置情報の設定を簡略化するために、ゴミ取得モードで撮影した画像ファイルの拡張子などを通常画像と異ならせることで、ＰＣ側でゴミ情報画像を自動判別し、その情報を用いて補正対象画像を補正する方法が提案されている。さらに、上記のゴミ情報を撮影した画像ファイルに撮影情報として記録し、後にその情報を用いて補正対象画像を補正するような製品もある。
【特許文献１】特開２００３−２８９４９５号公報
【特許文献２】特開平６−１０５２４１号公報
【特許文献３】特開２００４−２４２１５８号公報
【非特許文献１】ISO/IEC 14496-10,"Advanced Video Coding"
【発明の開示】
【発明が解決しようとする課題】
【００５５】
しかしながら、前述したＭＰ４ファイルのような動画ファイルを、前述のゴミ情報をもとに補正対象画像の補正を行いながら再生することは、ゴミ補正を行うために使用するメモリ量を増やしてしまう問題がある。また、動作速度の低下による動画再生の品位の低下という問題にもつながる。
【００５６】
というのも、静止画再生ではゴミ補正後の静止画を再生するため、１画像につき、１度のゴミ補正処理を行えばよい。仮にメモリなどの制限によりゴミ補正処理に時間がかかる場合やゴミ補正処理それ自体に時間がかかる場合でも、静止画像の再生であることから、ゴミ補正処理が完了するまで待たせることの弊害は少ない。
【００５７】
しかし、動画再生では一秒間に１５フレーム、３０フレームといった、複数の静止画像を連続で再生することにより画像の動きを表現している。そのため、一般的な再生処理に加えて、一秒間に１５フレームでは１５回の１フレーム分のゴミを補正する処理を、３０フレームでは３０回の１フレーム分のゴミを補正する処理を行わなければならない。さらに、１フレーム分のゴミを補正する処理では、ゴミの数分だけのゴミを補正する処理が行われることになる。
【００５８】
つまり１秒間に行わなければならないゴミ補正処理の回数は１５フレームでは、
ゴミ補正処理回数＝（１５フレーム）ｘ（ゴミの数）
となる。
【００５９】
また、３０フレームでは、
ゴミ補正処理回数＝（３０フレーム）ｘ（ゴミの数）
となる。
【００６０】
そのため、これらの一連の処理を一秒間という限られた時間内に終えないと自然な動画再生を行うことはできない。
【００６１】
従って、本発明は上述した課題に鑑みてなされたものであり、その目的は、ＭＰ４ファイルのような動画ファイルをゴミ情報を用いてゴミ補正処理を行いながら再生し、ユーザーにゴミなどの写りこみが補正された高品位な動画の再生を提供することである。
【課題を解決するための手段】
【００６２】
上述した課題を解決し、目的を達成するために、本発明に関わる画像処理装置は、入力された動画像データから、該動画像データを撮像した撮像装置における撮像素子の前方に配置された光学素子に付着した異物の位置と大きさとを含む異物情報を取得する異物情報取得手段と、前記動画像データから、該動画像データを分割したマクロブロックの動きベクトルを取得する動きベクトル情報取得手段と、前記異物情報取得手段により取得された前記異物情報に基づいて、前記異物による画質の劣化を補正して、動画像データを再生する補正再生手段と、前記補正再生手段により再生する動画像データにおける、前記異物の位置と一致するマクロブロックの動きベクトルに基づいて、該マクロブロックの異物補正再生をするか否かを判定する判定手段と、を備えることを特徴とする。
【００６３】
また、本発明に関わる画像処理方法は、入力された動画像データから、該動画像データを撮像した撮像装置における撮像素子の前方に配置された光学素子に付着した異物の位置と大きさとを含む異物情報を取得する異物情報取得工程と、前記動画像データから、該動画像データを分割したマクロブロックの動きベクトルを取得する動きベクトル情報取得工程と、前記異物情報取得工程において取得された前記異物情報に基づいて、前記異物による画質の劣化を補正して、動画像データを再生する補正再生工程と、前記補正再生工程において再生する動画像データにおける、前記異物の位置と一致するマクロブロックの動きベクトルに基づいて、該マクロブロックの異物補正再生をするか否かを判定する判定工程と、を備えることを特徴とする。
【発明の効果】
【００６４】
本発明によれば、ＭＰ４ファイルのような動画ファイルをゴミ情報を用いてゴミ補正処理を行いながら再生し、ユーザーにゴミなどの写りこみが補正された高品位な動画の再生を提供することが可能となる。
【発明を実施するための最良の形態】
【００６５】
以下、本発明の好適な実施形態について、添付図面を参照して詳細に説明する。
【００６６】
（第１の実施形態）
まず、本発明の第１の実施形態に係わる撮像装置の構成を図１２を参照して説明する。本実施形態においては、撮像装置として一眼レフタイプのデジタルスチルカメラを例にとって説明する。なお撮像装置としては、他にレンズ交換が可能なデジタルビデオカメラ等にも、本発明を適用することが可能である。
【００６７】
図１２に示すように、本実施形態の撮像装置は、主にカメラ本体１００と、交換レンズタイプのレンズユニット３００により構成されている。
【００６８】
レンズユニット３００において、３１０は複数のレンズから成る撮像レンズ、３１２は絞り、３０６は、レンズユニット３００をカメラ本体１００と機械的に結合するレンズマウントである。レンズマウント３０６内には、レンズユニット３００をカメラ本体１００と電気的に接続する各種機能が含まれている。３２０は、レンズマウント３０６において、レンズユニット３００をカメラ本体１００と接続するためのインターフェース、３２２はレンズユニット３００をカメラ本体１００と電気的に接続するコネクタである。
【００６９】
コネクタ３２２は、カメラ本体１００とレンズユニット３００との間で制御信号、状態信号、データ信号などを伝え合うと共に、各種電圧の電流を供給される機能も備えている。また、コネクタ３２２は電気通信のみならず、光通信、音声通信などを伝達する構成としても良い。
【００７０】
３４０は測光制御部４６からの測光情報に基づいて、後述するカメラ本体１００のシッター１２を制御するシャッター制御部４０と連携しながら、絞り３１２を制御する絞り制御部である。３４２は撮像レンズ３１０のフォーカシングを制御するフォーカス制御部、３４４は撮像レンズ３１０のズーミングを制御するズーム制御部である。
【００７１】
３５０はレンズユニット３００全体を制御するレンズシステム制御回路である。レンズシステム制御回路３５０は、動作用の定数、変数、プログラムなどを記憶するメモリを備えている。更に、レンズユニット３００固有の番号などの識別情報、管理情報、開放絞り値や最小絞り値、焦点距離などの機能情報、現在や過去の各設定値などを保持する不揮発性メモリも備えている。
【００７２】
次に、カメラ本体１００の構成について説明する。
【００７３】
１０６はカメラ本体１００とレンズユニット３００を機械的に結合するレンズマウント、１３０，１３２はミラーで、撮像レンズ３１０に入射した光線を一眼レフ方式によって光学ファインダ１０４に導く。なお、ミラー１３０はクイックリターンミラーの構成としても、ハーフミラーの構成としても、どちらでも構わない。１２はシャッター、１４は被写体像を光電変換する撮像素子である。撮像レンズ３１０に入射した光線は、一眼レフ方式によって光量制限手段である絞り３１２、レンズマウント３０６及び１０６、ミラー１３０、シャッター１２を介して導かれ、光学像として撮像素子１４上に結像する。なお、撮像素子１４の前方には、光学ローパスフィルター等の光学素子１４ａが配置されており、この光学素子１４ａの表面に付着したゴミ等の異物が撮像素子１４で生成される画像に写りこみ、画質を劣化させる。本実施形態は、この画質劣化を抑制する技術に関するものである。
【００７４】
１６は、撮像素子１４から出力されるアナログ信号をデジタル信号に変換するＡ／Ｄ変換器である。１８は撮像素子１４、Ａ／Ｄ変換器１６、Ｄ／Ａ変換器２６にそれぞれクロック信号や制御信号を供給するタイミング発生回路であり、メモリ制御回路２２及びシステム制御回路５０により制御される。
【００７５】
２０は画像処理回路であり、Ａ／Ｄ変換器１６からのデータ或いはメモリ制御回路２２からのデータに対して所定の画素補間処理や色変換処理を行う。また、画像処理回路２０は、必要に応じて、Ａ／Ｄ変換器１６から出力される画像データを用いて所定の演算処理を行う。得られた演算結果に基づいてシステム制御回路５０がシャッター制御部４０、焦点調節部４２を制御するための、ＴＴＬ（スルー・ザ・レンズ）方式のオートフォーカス（ＡＦ）処理、自動露出（ＡＥ）処理、フラッシュプリ発光（ＥＦ）処理を行うことができる。さらに、画像処理回路２０は、Ａ／Ｄ変換器１６から出力される画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてＴＴＬ方式のオートホワイトバランス（ＡＷＢ）処理も行っている。
【００７６】
なお、本実施形態では、焦点調節部４２及び測光制御部４６を専用に備えている。従って、焦点調節部４２及び測光制御部４６を用いてＡＦ処理、ＡＥ処理、ＥＦ処理の各処理を行い、画像処理回路２０を用いたＡＦ処理、ＡＥ処理、ＥＦ処理の各処理を行わない構成としても構わない。また、焦点調節部４２及び測光制御部４６を用いてＡＦ処理、ＡＥ処理、ＥＦ処理の各処理を行い、さらに、画像処理回路２０を用いたＡＦ処理、ＡＥ処理、ＥＦ処理の各処理を行う構成としてもよい。
【００７７】
２２はメモリ制御回路であり、Ａ／Ｄ変換器１６、タイミング発生回路１８、画像処理回路２０、画像表示メモリ２４、Ｄ／Ａ変換器２６、メモリ３０、圧縮・伸長回路３２を制御する。Ａ／Ｄ変換器１６から出力される画像データは、画像処理回路２０、メモリ制御回路２２を介して、或いはメモリ制御回路２２のみを介して、画像表示メモリ２４或いはメモリ３０に書き込まれる。
【００７８】
２４は画像表示メモリ、２６はＤ／Ａ変換器、２８はＴＦＴ方式のＬＣＤ等から成る画像表示部であり、画像表示メモリ２４に書き込まれた表示用の画像データはＤ／Ａ変換器２６を介して画像表示部２８により表示される。画像表示部２８を用いて、撮像した画像データを逐次表示することで、電子ビューファインダー（ＥＶＦ）機能を実現することができる。また、画像表示部２８は、システム制御回路５０の指示により任意に表示をＯＮ／ＯＦＦすることが可能であり、表示をＯＦＦにした場合にはカメラ本体１００の電力消費を大幅に低減することができる。
【００７９】
３０は撮影した静止画像あるいは動画像を格納するためのメモリであり、所定枚数の静止画像あるいは所定量の動画像を格納するのに十分な記憶容量を備えている。これにより、複数枚の静止画像を連続して撮影する連写撮影やパノラマ撮影の場合にも、高速かつ大量の画像書き込みをメモリ３０に対して行うことが可能となる。また、動画撮影時には、所定レートで連続的に書き込まれる画像のフレームバッファとして使用される。さらに、メモリ３０はシステム制御回路５０の作業領域としても使用することが可能である。
【００８０】
３１は後述する不揮発性メモリ５６に格納されているゴミ情報と、レンズユニット３００から得られる光学情報を用いて、画像データに含まれるゴミを画像処理により除去するためのゴミ除去回路である。
【００８１】
３２は公知の圧縮方法を用いて画像データを圧縮・伸長する圧縮・伸長回路である。圧縮・伸長回路３２は、メモリ３０に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータを再びメモリ３０に書き込む。
【００８２】
４０はシャッター制御部であり、測光制御部４６からの測光情報に基づいて絞り３１２を制御する絞り制御部３４０と連携しながらシャッター１２を制御する。４２はＡＦ（オートフォーカス）処理を行うための焦点調節部である。レンズユニット３００内の撮像レンズ３１０に入射した光線を絞り３１２、レンズマウント３０６、１０６、ミラー１３０及び焦点調節用サブミラー（不図示）を介して一眼レフ方式で入射させることにより、光学像として結像された画像の合焦状態を測定する。
【００８３】
４６はＡＥ（自動露出）処理を行うための測光制御部である。レンズユニット３００内の撮像レンズ３１０に入射した光線を、絞り３１２、レンズマウント３０６、１０６、ミラー１３０及び測光用サブミラー（図示せず）を介して一眼レフ方式で入射させることにより、光学像として結像された画像の露出状態を測定する。４８はフラッシュであり、ＡＦ補助光の投光機能、フラッシュ調光機能も有する。測光制御部４６はフラッシュ４８と連携することにより、ＥＦ（フラッシュ調光）処理機能も有する。
【００８４】
また、焦点調節部４２による測定結果と、Ａ／Ｄ変換器１６からの画像データを画像処理回路２０によって演算した演算結果とを用いて、ＡＦ制御を行うようにしてもよい。さらに、測光制御部４６による測定結果と、Ａ／Ｄ変換器１６からの画像データを画像処理回路２０によって演算した演算結果とを用いて露出制御を行うようにしてもよい。
【００８５】
５０はカメラ本体１００全体を制御するシステム制御回路であり、周知のＣＰＵなどを内蔵する。５２はシステム制御回路５０の動作用の定数、変数、プログラム等を記憶するメモリである。
【００８６】
５４はシステム制御回路５０でのプログラムの実行に応じて、文字、画像、音声などを用いて動作状態やメッセージなどを外部に通知するための通知部である。通知部５４としては、例えばＬＣＤやＬＥＤなどによる視覚的な表示を行う表示部や音声による通知を行う発音素子などが用いられるが、これらのうち１つ以上の組み合わせにより構成される。特に、表示部の場合には、カメラ本体１００の操作部７０近辺の、視認しやすい、単数あるいは複数箇所に設置される。また、通知部５４は、その一部の機能が光学ファインダ１０４内に設置されている。
【００８７】
通知部５４の表示内容の内、ＬＣＤなどの画像表示部２８に表示するものとしては以下のものがある。まず、単写／連写撮影表示、セルフタイマ表示等、撮影モードに関する表示がある。また、圧縮率表示、記録画素数表示、記録枚数表示、残撮影可能枚数表示等の記録に関する表示がある。また、シャッター速度表示、絞り値表示、露出補正表示、調光補正表示、外部フラッシュ発光量表示、赤目緩和表示等の撮影条件に関する表示がある。その他に、マクロ撮影表示、ブザー設定表示、電池残量表示、エラー表示、複数桁の数字による情報表示、記録媒体２００及びＰＣ２１０の着脱状態表示がある。更に、レンズユニット３００の着脱状態表示、通信Ｉ／Ｆ動作表示、日付・時刻表示、外部コンピュータとの接続状態を示す表示等も行われる。
【００８８】
また、通知部５４の表示内容のうち、光学ファインダ１０４内に表示するものとしては、例えば、以下のものがある。合焦表示、撮影準備完了表示、手振れ警告表示、フラッシュ充電表示、フラッシュ充電完了表示、シャッター速度表示、絞り値表示、露出補正表示、記録媒体書き込み動作表示等である。
【００８９】
５６は後述するプログラムなどが格納された電気的に消去・記録可能な不揮発性メモリであり、例えばＥＥＰＲＯＭ等が用いられる。
【００９０】
６０，６２，６４，６６，６８，７０は、システム制御回路５０の各種の動作指示を入力するための操作手段であり、スイッチやダイアル、タッチパネル、視線検知によるポインティング、音声認識装置等の単数或いは複数の組み合わせで構成される。
【００９１】
ここで、これらの操作手段の具体的な説明を行う。
【００９２】
６０はモードダイアルスイッチで、自動撮影モード、プログラム撮影モード、シャッター速度優先撮影モード、絞り優先撮影モード、マニュアル撮影モード、焦点深度優先（デプス）撮影モード等の各機能撮影モードを切り替え設定することができる。他に、ポートレート撮影モード、風景撮影モード、接写撮影モード、スポーツ撮影モード、夜景撮影モード、パノラマ撮影モードなどの各機能撮影モードを切り替え設定することもできる。また、本実施形態の特徴でもある動画撮影モードへの移行もこのモードダイアルで切り替えることができる。
【００９３】
６２はシャッタースイッチＳＷ１で、不図示のシャッターボタンの操作途中（例えば半押し）でＯＮとなり、ＡＦ処理、ＡＥ処理、ＡＷＢ処理、ＥＦ処理等の動作開始を指示する。
【００９４】
６４はシャッタースイッチＳＷ２で、不図示のシャッターボタンの操作完了（例えば全押し）でＯＮとなり、露光処理、現像処理、及び記録処理からなる一連の処理の動作開始を指示する。まず、露光処理では、撮像素子１４から読み出した信号をＡ／Ｄ変換器１６、メモリ制御回路２２を介してメモリ３０に書き込み、更に、画像処理回路２０やメモリ制御回路２２での演算を用いた現像処理が行われる。更に、記録処理では、メモリ３０から画像データを読み出し、圧縮・伸張回路３２で圧縮を行い、記録媒体２００あるいはＰＣ２１０に書き込む、または送信する。
【００９５】
６６は再生スイッチであり、撮影モード状態で撮影した画像をメモリ３０あるいは記録媒体２００、ＰＣ２１０から読み出して画像表示部２８に表示する再生動作の開始を指示する。再生スイッチ６６は、他に、再生モード、マルチ画面再生・消去モード、ＰＣ接続モード等の各機能モードを設定することができる。
【００９６】
６８は単写／連写スイッチで、シャッタースイッチＳＷ２（６４）を押した場合に、１コマの撮影を行って待機状態とする単写モードと、シャッタースイッチＳＷ２（６４）を押している間、連続して撮影を行い続ける連写モードとを設定することができる。
【００９７】
７０は各種ボタンやタッチパネルなどから成る操作部である。一例として、ライブビュー開始／停止ボタン、動画記録開始／停止ボタン、メニューボタン、セットボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写／連写／セルフタイマー切り換えボタン、メニュー移動＋（プラス）ボタン、メニュー移動−（マイナス）ボタンを含む。更に、再生画像移動＋（プラス）ボタン、再生画像移動−（マイナス）ボタン、撮影画質選択ボタン、露出補正ボタン、調光補正ボタン、外部フラッシュ発光量設定ボタン、日付／時間設定ボタンなども含む。なお、上記プラスボタン及びマイナスボタンの各機能は、回転ダイアルスイッチを備えることによって、より軽快に数値や機能を選択することが可能となる。
【００９８】
また、画像表示部２８のＯＮ／ＯＦＦを設定する画像表示ＯＮ／ＯＦＦスイッチ、撮影直後に撮影した画像データを自動再生するクイックレビュー機能を設定するクイックレビューＯＮ／ＯＦＦスイッチがある。また、ＪＰＥＧ圧縮の圧縮率を選択するため、あるいは撮像素子の信号をそのままデジタル化して記録媒体に記録するＲＡＷモードを選択するためのスイッチである圧縮モードスイッチがある。また、ワンショットＡＦモードとサーボＡＦモードとを設定可能なＡＦモード設定スイッチなどがある。ワンショットＡＦモードでは、シャッタースイッチＳＷ１（６２）を押した際にオートフォーカス動作を開始し、一旦合焦した場合、その合焦状態を保ち続ける。サーボＡＦモードでは、シャッタースイッチＳＷ１（６２）を押している間、連続してオートフォーカス動作を続ける。更に、後述するようにゴミ検出用画像を撮影してゴミ情報を取得する、ゴミ情報取得モードを設定することができる設定スイッチを含む。
【００９９】
７２は電源スイッチであり、カメラ本体１００の電源オン、電源オフの各モードを切り替え設定することができる。また、カメラ本体１００に接続されたレンズユニット３００、外部フラッシュ１１２、記録媒体２００、ＰＣ２１０等の各種付属装置の電源オン、電源オフの設定も合わせて切り替え設定可能である。
【０１００】
８０は電源制御部で、電池検出回路、ＤＣ−ＤＣコンバータ、通電するブロックを切り替えるスイッチ回路等により構成されている。電源制御部８０は、電池の装着の有無、電池の種類、電池残量の検出を行い、検出結果及びシステム制御回路５０の指示に基づいてＤＣ−ＤＣコンバータを制御し、必要な電圧を必要な期間、記録媒体を含む各部へ供給する。
【０１０１】
８２，８４はコネクタ、８６はアルカリ電池やリチウム電池等の一次電池、ＮｉＣｄ電池やＮｉＭＨ電池、Ｌｉ‐ｉｏｎ電池、Ｌｉポリマー電池等の二次電池、ＡＣアダプター等からなる電源部である。
【０１０２】
９０及び９４はメモリカードやハードディスク等の記録媒体やＰＣとのインタフェース、９２及び９６はメモリカードやハードディスク等の記録媒体やＰＣと接続を行うコネクタである。９８はコネクタ９２及び／或いは９６に記録媒体２００或いはＰＣ２１０が装着されているか否かを検知する記録媒体着脱検知回路である。
【０１０３】
なお、本実施形態では記録媒体を取り付けるインタフェース及びコネクタを２系統持つものとして説明しているが、記録媒体を取り付けるインタフェース及びコネクタは、単数或いは複数、いずれの系統数を備える構成としても構わない。また、異なる規格のインタフェース及びコネクタを組み合わせて備える構成としても構わない。
【０１０４】
インターフェース及びコネクタとしては、種々の記憶媒体の規格に準拠したものを用いて構成することが可能である。例えば、ＰＣＭＣＩＡ（Personal Computer Memory Card International Association）カードやＣＦ（コンパクトフラッシュ（登録商標））カード、ＳＤカード等である。インターフェース９０及び９４、そしてコネクタ９２及び９６をＰＣＭＣＩＡカードやＣＦカード等の規格に準拠したものを用いて構成した場合、各種通信カードを接続することができる。通信カードとしては、ＬＡＮカードやモデムカード、ＵＳＢ（Universal Serial Bus）カード、ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４カードがある。他にも、Ｐ１２８４カード、ＳＣＳＩ（Small Computer System Interface）カード、ＰＨＳ等がある。これら各種通信カードを接続することにより、他のコンピュータやプリンタ等の周辺機器との間で画像データや画像データに付属した管理情報を転送し合うことができる。
【０１０５】
１０４は光学ファインダであり、撮像レンズ３１０に入射した光線を、一眼レフ方式によって、絞り３１２、レンズマウント３０６、１０６、ミラー１３０、１３２を介して導き、光学像として結像させて表示することができる。これにより、画像表示部２８による電子ファインダー機能を使用すること無しに、光学ファインダーのみを用いて撮影を行うことが可能である。また、光学ファインダー１０４内には、通知部５４の一部の機能、例えば、合焦状態、手振れ警告、フラッシュ充電、シャッター速度、絞り値、露出補正などが表示される。
【０１０６】
１１２は、アクセサリシュー１１０を介して装着される、外部フラッシュ装置である。
【０１０７】
１２０はレンズマウント１０６内でカメラ本体１００をレンズユニット３００と接続するためのインターフェースである。
【０１０８】
１２２はカメラ本体１００をレンズユニット３００と電気的に接続するコネクタである。また、レンズマウント１０６及びコネクタ１２２にレンズユニット３００が装着されているか否かは、不図示のレンズ着脱検知部により検知される。コネクタ１２２はカメラ本体１００とレンズユニット３００との間で制御信号、状態信号、データ信号などを伝え合うと共に、各種電圧の電流を供給する機能も備えている。また、コネクタ１２２は電気通信だけでなく、光通信、音声通信などを伝達する構成としてもよい。
【０１０９】
２００はメモリカードやハードディスク等の記録媒体である。この記録媒体２００は、半導体メモリや磁気ディスク等から構成される記録部２０２、カメラ本体１００とのインタフェース２０４、カメラ本体１００と接続を行うコネクタ２０６を備えている。
【０１１０】
記録媒体２００としては、ＰＣＭＣＩＡカードやコンパクトフラッシュ（登録商標）等のメモリカード、ハードディスク等を用いることができる。また、マイクロＤＡＴ、光磁気ディスク、ＣＤ−ＲやＣＤ−ＲＷ等の光ディスク、ＤＶＤ等の相変化型光ディスク等で構成されていても勿論構わない。
【０１１１】
２１０はＰＣであり、磁気ディスク（ＨＤ）等から構成される記録部２１２、カメラ本体１００とのインターフェース２１４、カメラ本体１００と接続を行うコネクタ２１６を備えている。インターフェース９４はＵＳＢやＩＥＥＥ１３９４などが挙げられるが、特に限定はない。
【０１１２】
次に、上記構成を有する撮像装置おける撮像素子の前方に配置されたローパスフィルタやカバーガラス等の光学素子１４ａ上のゴミの影響を補正する再生処理について説明する。
【０１１３】
本実施形態では、まず、ゴミ情報（異物情報）を得るためのゴミ検出用画像を撮影し、ゴミデータを抽出し、以降撮影される通常の画像に対して、ゴミデータを付加することで、ＰＣなどでゴミ補正しながら再生を行う方法を示す。ここでゴミ検出用画像は、できるだけ均一な輝度面を撮影した画像が望ましいが、身近な場所で容易に撮影できることが望ましいため、厳密な均一性を要求するものではない。例えば、青空や白い壁面を撮影することを想定している。また、本実施形態の特徴を述べるために主に動画ファイルであるＭＰ４ファイルフォーマットでの動作について詳細に述べるものとする。
【０１１４】
図１３は、本実施形態におけるゴミ情報を取得する際の撮像装置における処理を示すフローチャートである。
【０１１５】
まずステップＳ１３０１において、操作部７０によりゴミ情報取得モードが選択されたかどうかを判定する。ゴミ情報取得モードが選択されるまでステップＳ１３０１の判定を繰り返し、ゴミ情報取得モードが選択されるとステップＳ１３０２へ進み、シャッタースイッチＳＷ１（６２）がＯＮされたかどうかを判断する。ＯＦＦであればステップＳ１３０１に戻って上記処理を繰り返す。
【０１１６】
一方、ＯＮであれば、ステップＳ１３０３に進み、絞り、ＩＳＯ値、シャッタースピード、その他撮影関連のパラメータを設定する。
【０１１７】
ここで設定されるパラメータを図１４に示す。絞りはＦ２２など、絞りを絞り込んだ設定とする。レンズマウント３０６に接続されるレンズユニット３００において設定可能な範囲内で最も絞り込んだ状態で撮影するものとしてもよい。このように絞りを絞るのは、ゴミは通常撮像素子１４の表面ではなく、撮像素子１４を保護する保護用ガラスや、撮像素子より被写体側に配置される光学フィルター上に付着しているため、レンズユニット３００の絞り値によって結像状態が異なるためである。そのため、絞りが開放値に近いとぼやけてしまい、適切なゴミ検出用の画像が取得できないので、できるだけ絞り込んだ状態で撮影するのが好ましい。
【０１１８】
図１３のフローチャートの説明に戻ると、この時までに撮影者はできるだけ白い壁などの均一輝度面に撮像装置を向け、シャッタースイッチＳＷ２（６４）を操作することとなる。
【０１１９】
ステップＳ１３０４ではシャッタースイッチＳＷ２（６４）がＯＮされたかどうかを判断する。ＯＦＦであればステップＳ１３０２に戻りシャッタースイッチＳＷ１（６２）の判定を行う。ＯＮであればステップＳ１３０５へ進む。
【０１２０】
ステップＳ１３０５ではゴミ検出用画像（均一輝度面の撮影）を行って、メモリ３０内に画像データを取り込む。次にステップＳ１３０６ではメモリ３０内に記憶した画像データからゴミ情報を取得する。
【０１２１】
ここで、ゴミ情報の取得について説明する。具体的には、撮影したゴミ検出用画像からゴミ領域の位置（座標）と大きさを求めるものである。まず、撮影したゴミ検出用画像の領域を複数のブロックに分割し、ブロック内の最大輝度Ｌmax、平均輝度Ｌaveを算出し、次式を用いてブロック内のスレッショルド値Ｔ１を算出する。
【０１２２】
Ｔ１＝Ｌave×０.６＋Ｌmax×０.４
次に、スレッショルド値Ｔ１を超えない画素をゴミ画素とし、ゴミ画素によって構成される孤立領域を各々一つのゴミ領域ｄｉ（ｉ＝０，１，…，ｎ）とする。
【０１２３】
図１５は、ゴミ領域サイズ算出の概要を示す図である。図１５に示すように、ゴミ領域毎に、ゴミ領域を構成する画素の水平方向の座標の最大値Ｘmaxおよび最小値Ｘmin、垂直方向の座標の最大値Ｙmaxおよび最小値Ｙminを求め、ゴミ領域ｄｉのサイズを表す半径ｒｉを次式によって算出する。
【０１２４】
ｒｉ＝［√｛（Ｘmax−Ｘmin）2＋（Ｙmax−Ｙmin）2｝］／２
また、このときの中心座標（Ｘｄｉ，Ｙｄｉ）は、近似的に
Ｘｄｉ＝（Ｘmax＋Ｘmin）／２
Ｙｄｉ＝（Ｙmax＋Ｙmin）／２
で求めるものとする。このように求められた位置（座標）と半径を、ゴミ情報プロファイルとして記録する。
【０１２５】
このゴミ情報プロファイルは、図１６に示すような構造をとる。図１６に示す通り、ゴミ情報プロファイルには、ゴミ検出用画像撮影時の、レンズ情報とゴミの位置、大きさの情報が格納される。更に具体的には、検出画像撮影時のレンズ情報として、検出画像撮影時における実際の絞り値（Ｆ値）と、そのときのレンズ瞳位置を格納する。続いて記憶領域に検出したゴミ領域の数（整数値）を格納し、これに続き、個々の具体的なゴミ領域のパラメータを、ゴミ領域の数だけ繰返して格納する。ゴミ領域のパラメータは、ゴミの半径（例えば２バイト）、有効画像領域における中心のｘ座標（例えば２バイト）、おなじく中心のｙ座標（例えば２バイト）の３つの数値のセットである。
【０１２６】
特に前述したＭＰ４ファイルのような動画ファイルにおいては、moovボックス内のヘッダ情報から成る mvhd ボックス、もしくは moofボックス内の mvhd ボックスにゴミ情報プロファイルを格納しておく。
【０１２７】
本実施形態では、ゴミ情報として、検出したゴミの位置及び大きさをデータ化して、本画像ファイルに記述するように構成したが、これに限られるものではない。例えば、画像全体に対するゴミ領域を示すビットマップデータなどをそのまま記録しておくように構成しても良い。また、上記のゴミ情報プロファイルをファイル化したゴミ情報ファイルを別途作成し、本画像ファイルには、このゴミ情報ファイルに対するリンク情報のみを持たせるようにしても良い。従って、ゴミ情報のデータ形式などに関して特に限定するものではない。また、ゴミを検出するための方法は、撮像素子１４の前方の光学素子１４ａにゴミが付着すると、ゴミの付着位置に該当する画素に入射する光量が減少することを利用すれば良い。例えば、個々の画素データを予め設定された輝度値と比較することで、入射光量の低下が生じている画素を検出することができる。なお、均一輝度面を撮影することが期待できない場合は、単に輝度の閾値ではなく、近傍の画素出力との差などを併用して判断しても良い。なお、上述したゴミの検出方法は一例であり、本発明はゴミを検出するための方法に関して特に限定するものではない。
【０１２８】
取得したゴミ情報はステップＳ１３０７で不揮発性メモリ５６に記憶され、ゴミ情報取得のための処理を終了する。ここで不揮発性メモリ５６にゴミ情報を記憶するのは、ゴミ情報の取得以降、次にゴミ情報を取得するまでに行われる通常撮影で、得られた画像データに継続してゴミ情報を付加するためである。そのため、電源オン操作の度に撮影者にゴミ情報の取得を要求するような構成をとる場合は不揮発性メモリでなくとも構わない。
【０１２９】
また、ゴミ情報取得モードにおける撮影動作は、ゴミ情報を取得することを目的とするため、本実施の形態では撮影した画像そのものに対して、圧縮及び記録媒体２００への記録処理は行わない。これは撮影者にとって不要な画像データで記録媒体２００内の容量を無駄に消費することがないようにするためであるが、通常画像と同様に、圧縮後、記録媒体２００へ保存しても良く、また、その際に拡張子を変更するなど何らかの手を加えても構わない。
【０１３０】
次に、ゴミ補正再生（異物補正再生）処理の流れについて説明する。以下では、ゴミ補正再生処理をデジタルカメラ本体内ではなく、別途用意した画像処理装置上で行う場合について説明する。
【０１３１】
図１７は、画像処理装置のシステム構成の概略を示した図である。ＣＰＵ１７０１は、システム全体の動作をコントロールし、一次記憶部１７０２に格納されたプログラムの実行などを行う。一次記憶部１７０２は、主にメモリであり、二次記憶部１７０３に記憶されたプログラムなどを読み込んで格納する。二次記憶部１７０３は、例えばハードディスクなどがこれに該当する。一般に一次記憶部の容量は二次記憶部の容量より小さく、一次記憶部に格納しきれないプログラムやデータなどは二次記憶部に格納される。また、長時間記憶しなくてはならないデータなども二次記憶部に格納される。
【０１３２】
本実施形態では、プログラムを二次記憶部１７０３に格納し、プログラム実行時に一次記憶部１７０２に読み込んでＣＰＵ１７０１が実行処理を行う。入力デバイス１７０４とは、例えば、システムのコントロールに用いるマウスやキーボードの他、画像データの入力に必要なカードリーダー、スキャナ、フィルムスキャナなどがこれに該当する。出力デバイス１７０５とは、例えば、モニタやプリンタなどが考えられる。この装置の構成方法は他にも様々な形態が考えられるが、本発明の主眼ではないので説明を省略する。
【０１３３】
画像処理装置には、複数のプログラムを並列実行可能なオペレーティングシステムが搭載され、操作者はＧＵＩを使ってこの装置上で動作するプログラムの操作が可能である。
【０１３４】
図１８は、画像処理装置における画像編集プログラムのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を示す図である。ウィンドウにはクローズボタン１８００とタイトルバー１８０１が備えられ、クローズボタンを押すことでプログラムを終了する。ファイルを画像表示領域１８０２にドラッグアンドドロップすることで補正再生対象画像を指定する。補正再生対象画像が決定された場合、タイトルバー１８０１にファイル名を表示した後、画像表示領域１８０２に対象画像をＦiｔ表示する。補正再生実行ボタン１８０３を押すと、後述するゴミ補正再生処理を実行し、画像表示領域１８０２に表示する。
【０１３５】
画像処理装置におけるゴミ補正再生処理の流れを、図１９に示す。
【０１３６】
まず、ステップＳ１９０１ではデジタルカメラ内又はデジタルカメラから取り外された記録媒体２００からゴミ位置補正データが付加された動画像ファイルを画像処理装置に取り込む。そして、表示するストリーム画像データを一次記憶部１７０２又は二次記憶部１７０３に記憶する。前述したように、ストリーム画像データの取得方法は記録媒体からＭＰ４ファイルの moov ボックスを読み込み、その moov ボックスから上記の stco ボックス、stsc ボックス、stsz ボックスを解析して、mdat ボックス内の各チャンクへのアクセスを行うことにより行われる。
【０１３７】
次に、ステップＳ１９０２で、動画像ファイルから画像表示領域１８０２に表示する動画像の各フレームからゴミ補正再生処理を行うブロックを選択するゴミ補正ブロック選択処理を行う。ゴミ補正ブロック選択処理に関しては図２０を使って、後述する。
【０１３８】
次にステップＳ１９０３で、表示処理を行う。表示処理とは画像を画像表示領域１８０２に表示する処理を行うことであるが、この処理に関しては、背景技術で述べた公知の技術なので詳細な説明は省略する。
【０１３９】
次にステップＳ１９０４で全ストリームの処理を終えたかどうかの判断を行う。もし、全ストリームの処理を終えたと判断されれば、ゴミ補正再生処理を終了する。全ストリームの処理を終えていなければ、ゴミ補正フレーム選択処理に戻り、全ストリームが終了するまで、これらを繰り返す。
【０１４０】
以上のような流れで、ゴミ補正再生処理が行われる。
【０１４１】
次に、前述のゴミ補正ブロック選択処理の流れを、図２０に示す。
【０１４２】
まず、ステップＳ２００１では moov もしくは moof から、ゴミ位置補正データを抽出する（異物情報取得）。前述のとおり本実施形態では moov ボックス内のヘッダ情報から成る mvhd ボックス、もしくは moof ボックス内の mvhd ボックスにゴミ情報プロファイルを格納しているが、ゴミ情報のデータ形式などに関して特に限定するものではなく、それら以外の取得方法については特にその詳細を述べないが、ゴミ位置補正データを抽出する処理が行われることが重要となる。
【０１４３】
次に、ステップＳ２００１で抽出したゴミ位置補正データから、まずゴミ補正データを抽出し、座標列Ｄｉ（ｉ＝１，２，…ｎ）、半径列Ｒｉ（ｉ＝１，２，…，ｎ）、絞り値ｆ１とレンズ瞳位置Ｌ１を得る（ステップＳ２００２）。さらに、撮影時の絞り値ｆ２とレンズの瞳位置Ｌ２を取得する。ここでＲｉは、図１３のステップＳ１３０６で算出した座標Ｄｉのゴミの大きさである。ステップＳ２００２でＤｉを次式で変換する。ここで、ｄは画像中心から座標Ｄｉまでの距離、Ｈは撮像素子１４の表面とゴミとの距離であるとする。変換後の座標Ｄｉ’と変換後の半径Ｒｉ’は例えば次式で定義する。
【０１４４】
Ｄｉ’（ｘ，ｙ）＝（Ｌ２×（Ｌ１−Ｈ）×ｄ／（（Ｌ２−Ｈ）×Ｌ１））×Ｄｉ（ｘ，ｙ）
Ｒｉ’＝（Ｒｉ×ｆ１／ｆ２＋３）              （１）
ここでの単位はピクセルであり、Ｒｉ’についての「＋３」はマージン量である。
【０１４５】
これにより、ゴミ位置補正データから画像のゴミの位置と大きさがわかる。
【０１４６】
次に、ステップＳ１９０１で取得したストリーム画像データの復号（再生）処理を行う（ステップＳ２００３）。その方法は前述したような基本の構成と手順により、ストリーム画像データの復号（再生）が行われるが、本構成ではＣＰＵ１７０１、一次記憶部１７０２が主にこの部分にあたる。
【０１４７】
ステップＳ２００３で行われる復号化の際には、再生されてくるストリーム画像データから、符号化時に生成されてストリーム画像データ内に記録された動きベクトルを検出し、参照ブロックのデータをメモリ１００８から読み出す処理が行われる。よって、ステップＳ２００４のゴミ位置マクロブロック・動きベクトル情報取得処理では、ステップＳ２００２で得られたゴミの位置と大きさからゴミが含まれる（一致する）マクロブロック・動きベクトル情報をゴミに関連付けて一次記憶部１７０２に記憶しておく。
【０１４８】
次にステップＳ２００５では取得したゴミ情報とそれに関連付けられたマクロブロック・動きベクトル情報からそのゴミ位置がどのマクロブロック上でどのような大きさの動きベクトルを持っているかの判断を行う。もし、ゴミ位置と一致するマクロブロックの動きベクトルが閾値（Ｍｖ）よりも小さいと判断された場合、ステップＳ２００６で座標Ｄｉ’、半径Ｒｉ’で示される領域内のゴミを検出し、必要に応じて補間処理を適用する。補間処理の詳細については後述する。一方、閾値（Ｍｖ）以上と判断された場合、ステップＳ２００６の補間処理を行わず、ステップＳ２００７に進む。ここで、閾値（Ｍｖ）は静的に決まった値でもよいし。再生の動作環境によって動的に選択・変更することができるものでよい。もちろん、ユーザーが任意に決定する値としてもよい。
【０１４９】
このような判断を行うのは、ストリーム画像データはフレームの異なる画像データに対して動き検出の結果に基づく最適な動きベクトルを用いて、予測画像を決定し、動きベクトルは、差分画像データと共にエントロピー符号化され出力ビットストリームを形成することから、動きベクトルが大きいほどフレーム間における、そのマクロブロック部分が大きく、激しく動いたことが判断ができるためである。つまり、閾値（Ｍｖ）はフレーム間における、あるマクロブロックの動きの大きさを図る一つの尺度になる数字といえる。
【０１５０】
図２１は、動きベクトルと参照フレームの関係を模式的に示している。フレーム２１００のＡブロックは参照フレーム２１０１からａブロックを参照しており、ａブロックからＡブロックへの動きベクトルの値をＭｖ＝左１０として、かつ予測誤差がなかった場合を示している。
【０１５１】
また、フレーム２１００のＢブロックは参照フレーム２１０１からｂブロックを参照しており、ｂブロックからＢブロックへの動きベクトルの値をＭｖ＝０として、かつ予測誤差がなかった場合を示している。
【０１５２】
これはつまり、ａブロック上にあったものがＡブロックに動いたことを示している。また、ｂブロック上にあったものはＢブロック上にとどまっていたことを示している。Ａブロック上にあるゴミ２１０２は、動きにまぎれているゴミであることがわかる。また、Ｂブロック上にあるゴミ２１０３は動きのない部分のゴミであることがわかる。
【０１５３】
青空や白い壁面のような比較的均一的で動きのない画面にゴミがあると、ゴミの映りこみが目立つのに対して、動きのある画面にゴミあったとしても、その写りこみが目立ったものになりにくい。これは激しく移り変わる画面内では小さなゴミを人間の目が捉えにくいからである。
【０１５４】
さらに、本実施形態ではゴミの位置と一致するマクロブロックの動きベクトルだけを選択して判断することにより、すべてのマクロブロックの動きベクトルで判断をしなくてもよい。
【０１５５】
以上のことより、ゴミ位置と一致するマクロブロックの動きベクトルの大きさがある閾値（Ｍｖ）よりも小さいか大きいかという判断を行うことにより、ゴミ補正処理を行うべきマクロブロックとゴミ補正処理を行わなくてもよいマクロブロックの判断を行うことができる。
【０１５６】
次にステップＳ２００７では全ての座標についてゴミ除去処理を適用したかどうかを判定し、全ての座標について処理が終わっていれば処理を終了し、そうでなければステップＳ２００５に戻る。
【０１５７】
以上が、ゴミ補正ブロック選択処理の流れである。
【０１５８】
次に、ゴミ領域の補間処理の詳細について述べる。補間ルーチンの流れを示すフローチャートを図２２に示す。まずステップＳ２２０１で、ゴミ領域判定を行う。ゴミ領域とは、次の条件全てを満たす領域とする。
（１）図２０のステップＳ２００２で算出した中心座標Ｄｉ’、半径Ｒｉ’（式（１）で求められたＤｉ’，Ｒｉ’）に含まれる画素の平均輝度Ｙaveと最高輝度Ｙmaxを用いて次式で求められるスレッショルド値Ｔ２より暗い領域。
【０１５９】
Ｔ２＝Ｙave×０.６＋Ｙmax×０.４
（２）上記の中心座標Ｄｉ’、半径Ｒｉ’の円と接しない領域。
（３）（１）で選択された輝度の低い画素によって構成される孤立領域に対し、図１３中のステップＳ１３０６と同様の方法で算出した半径値がＸ１画素以上、Ｘ２画素未満である領域。
（４） 円の中心座標Ｄｉを含む領域。
【０１６０】
本実施形態では、Ｘ１は３画素、Ｘ２は３０画素とする。このようにすることで、孤立した小領域だけをゴミ領域として扱うことが可能になる。また、レンズ瞳位置が正確に取得できない場合には、（４）の条件は幅を持たせても良い。例えば、着目領域が座標ＤｉからＸ方向、Ｙ方向に夫々±３画素の範囲の座標を含めば、ゴミ領域と判定するなどという条件が考えられる。
【０１６１】
ステップＳ２２０２で、このような領域があればステップＳ２２０３へ進みゴミ領域補間を行い、存在しない場合は処理を終了する。ステップＳ２２０３で実行するゴミ領域補間処理は、公知の欠損領域補間法で行う。公知の欠損領域補間法には、例えば、特開２００１−２２３８９４号公報に開示されているパターン置換がある。特開２００１−２２３８９４号公報では赤外光を用いて欠損領域を特定しているが、本実施形態ではステップＳ２２０１で検出したゴミ領域を欠損領域として扱い、パターン置換によりゴミ領域を周囲の正常画素で補間する。パターン置換で埋められない画素については、パターン補間後の画像データに対し、補間対象画素に最も近い順に正常画素をｐ個選択し、その平均色を用いて補間する。
【０１６２】
以上が、ゴミ領域の補間処理の流れである。
【０１６３】
以上、説明したように、本実施形態によればＭＰ４ファイルのような動画ファイルをゴミ情報を用いて、ゴミ補正処理を行いながら再生する際における動作速度の向上、ゴミ補正処理によるメモリなどのリソース使用量の削減を行い、かつユーザーに目立つゴミなどの写りこみが補正された高品位な動画の再生を提供することができる。
【０１６４】
（第２の実施形態）
本発明の第２の実施形態における画像処理装置の要部構成は、図１７と基本的には同じであるため、同じ構成部分の説明は省略し、異なる構成部分だけを掻い摘んで説明する。
【０１６５】
図２３は第２の実施形態におけるゴミ補正ブロック選択処理であり、第１の実施形態と異なる部分である。
【０１６６】
まず、選択されたフレームが含まれる moov もしくは moof から、ゴミ位置補正データを抽出し（ステップＳ２３０１）、第１の実施形態と同様の方法でゴミの大きさを取得する（ステップＳ２３０２）。次にステップＳ２３０３で第１の実施形態と同様に復号処理を行い、ステップＳ２３０４でゴミ位置マクロブロック・動きベクトル情報取得処理を行う。
【０１６７】
ステップＳ２３０５ではステップＳ２３０１、ステップＳ２３０２で取得したゴミの大きさが規定した閾値（Ｙ）より小さいかの判断を行う。ここで閾値（Ｙ）は静的に決まった値でもよいし、再生の動作環境によって動的に選択することができるものでもよい。もちろん、ユーザーが任意に決定する値としてもよい。
【０１６８】
ゴミが大きいとゴミの写りこみが目立つので、このようにゴミの大きさがある閾値（Ｙ）よりも小さいか大きいかという判断を行うことにより、ゴミ補正を必ず行わなければならないゴミなのかの判断を行うことができる。
【０１６９】
もし、ゴミサイズが閾値（Ｙ）より小さいと判断された場合、ステップＳ２３０６に進み、第１の実施形態と同様、ゴミ位置と一致するマクロブロックの動きベクトルからゴミ補正するしないの判断を行うが、その詳細は第１の実施形態と同様であるので省略する。
【０１７０】
一方、ステップＳ２３０５でゴミサイズが閾値（Ｙ）以上で、ゴミ補正を必ず行うべきゴミと判断された場合、そのマクロブロック上のゴミは動きベクトルの大きさに関わらず、ステップＳ２３０７で、必要に応じて補間処理を適用する。補間処理に関しては、第１の実施形態ですでに述べたので省略する。
【０１７１】
以上のように、ゴミが一定以上の大きさの場合はゴミ位置と一致するマクロブロックの動きベクトルに関わらず、少なくともそのゴミのゴミ補正は行う。これにより、ＭＰ４ファイルのような動画ファイルをゴミ情報を用いて、ゴミ補正処理を行いながら再生する際における動作速度の向上、ゴミ補正処理によるメモリなどのリソース使用量の削減を行い、かつユーザーに目立つゴミなどの写りこみが補正された高品位な動画の再生を提供することができる。
【０１７２】
（第３の実施形態）
本発明の第３の実施形態における画像処理装置の要部構成は、図１７と基本的には同じであるため、同じ構成部分の説明は省略し、異なる構成部分だけを掻い摘んで説明する。
【０１７３】
また、第２の実施形態で述べたゴミ補正ブロック選択処理と非常に似ており、図２４を参照しながら異なる部分を掻い摘んで説明する。
【０１７４】
図２４が第３の実施形態のゴミ補正ブロック選択処理であり、第１及び第２の実施形態とは異なる部分である。
【０１７５】
第２の実施形態では、ステップＳ２３０１、Ｓ２３０２において、ゴミの大きさを取得したが、第３の実施形態では同様の方法により、ステップＳ２４０１、Ｓ２４０２によりゴミの位置を取得する。
【０１７６】
次にステップＳ２４０３で第１及び第２の実施形態と同様に復号処理を行い、ステップＳ２４０４でゴミ位置マクロブロック・動きベクトル情報取得処理を行う。
【０１７７】
次にステップＳ２４０５ではステップＳ２４０１、Ｓ２４０２で取得したゴミの位置と規定した閾値（Ｚ）を比較する。ここで閾値（Ｚ）は位置情報で領域を表現する値であり、その判断は取得したゴミの位置が閾値（Ｚ）が規定する領域内にあるか、ないかの判断を行う。ここで閾値（Ｚ）は静的に決まった値でもよいし、再生の動作環境によって動的に選択することができるものでもよい。もちろん、ユーザーが任意に決定する値としてもよい。
【０１７８】
ゴミ位置が中央部やユーザーが注目する位置にある場合、ゴミの写りこみが目立つ。したがって閾値（Ｚ）の値を画面中央部やユーザー注目位置の情報にすれば、このようにゴミの位置がある閾値（Ｚ）内にあるのか、ないのかの判断を行うことにより、ゴミ補正を必ず行うべきゴミなのかの判断を行うことができる。なお、閾値（Ｚ）は拡大表示で使われる際にも有効である。
【０１７９】
もし、閾値（Ｚ）内にゴミがないと判断された場合、ステップＳ２４０６に進み、第１及び第２の実施形態と同様、ゴミ位置と一致するマクロブロックの動きベクトルからゴミ補正の判断を行うが、その詳細はすでに述べたので省略する。
【０１８０】
一方、ステップＳ２４０５で閾値（Ｚ）内にゴミがあり、ゴミ補正を必ず行うべきゴミと判断された場合、そのマクロブロック上のゴミは動きベクトルの大きさに関わらず、ステップＳ２４０７で、必要に応じて補間処理を適用する。補間処理に関しては、第１及び第２の実施形態ですでに述べたので省略する。
【０１８１】
以上のように、ゴミがある指定領域内にある場合はフレームデータサイズに関わらず、少なくともそのゴミのゴミ補正は行う。これにより、ＭＰ４ファイルのような動画ファイルをゴミ情報を用いて、ゴミ補正処理を行いながら再生する際における動作速度の向上、ゴミ補正処理によるメモリなどのリソース使用量の削減を行い、かつユーザーに目立つゴミなどの写りこみが補正された高品位な動画の再生を提供することができる。
【０１８２】
（第４の実施形態）
本発明の第４の実施形態における画像処理装置の要部構成は、図１７と基本的には同じであるため、同じ構成部分の説明は省略し、異なる構成部分だけを掻い摘んで説明する。
【０１８３】
図２５は、第４の実施形態のゴミ補正ブロック選択処理であり、第１乃至第３の実施形態とは異なる部分である。
【０１８４】
第２の実施形態では、ステップＳ２３０１、Ｓ２３０２において、ゴミの大きさを取得したが、第４の実施形態では同様の方法により、ステップＳ２５０１、Ｓ２５０２においてゴミの数を取得する。
【０１８５】
次にステップＳ２５０３で第１乃至第３の実施形態と同様に復号処理を行い、ステップＳ２５０４でゴミ位置マクロブロック・動きベクトル情報取得処理を行う。
【０１８６】
次にステップＳ２５０５ではステップＳ２５０１、ステップＳ２５０２で取得したゴミの数と規定した閾値（Ｎ）を比較する。ここで閾値（Ｎ）は静的に決まった値でもよいし、再生の動作環境によって動的に選択することができるものでもよい。もちろん、ユーザーが任意に決定する値としてもよい。
【０１８７】
もし、閾値（Ｎ）以下であれば、そのままステップＳ２５０７に進み、第１乃至第３の実施形態と同様、ゴミ位置と一致するマクロブロックの動きベクトルからゴミ補正の判断を行うが、その詳細はすでに述べたので省略する。
【０１８８】
一方、閾値（Ｎ）より多いと判断された場合、ステップＳ２５０６で閾値（Ｍｖ）を引き下げる処理（判定基準を変更する処理）を行う。引き下げる値は任意だが、テーブルのようなもので管理するのもよい。つまり、１００個以上２００個以内なら、引き下げ値はＭｖ５、２００個以上３００個以内なら、引き下げ値はＭｖ１０というような処理が望ましい。以降の処理は第１の実施形態と同様なので省略する。
【０１８９】
以上のように、ゴミの数が多いことにより、ゴミ補正処理やゴミ補正処理によるメモリ使用量が増えることを考慮し、閾値（Ｍｖ）をゴミの数により変化させる。これにより、動作速度の向上、ゴミ補正処理によるメモリなどのリソース使用量の削減を行い、かつユーザーに目立つゴミなどの写りこみが補正された品位のある動画の再生を提供することができる。
【０１９０】
（第５の実施形態）
第１乃至第４の実施形態では、別途用意した画像処理装置上でゴミ補正再生処理を行う場合について説明した。しかし、撮像装置内に同様の画像処理装置を配置し、同様の処理を行うことにより、撮像装置上でＭＰ４ファイルのような動画ファイルをゴミ情報を用いて、ゴミ補正処理を行いながら再生することもできる。その際には、やはり動作速度の向上、ゴミ補正処理によるメモリなどのリソース使用量の削減を行い、かつユーザーに目立つゴミなどの写りこみが補正された高品位な動画の再生を提供できるという効果が得られる。
【０１９１】
（他の実施形態）
また、各実施形態の目的は、次のような方法によっても達成される。すなわち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、本発明には次のような場合も含まれる。すなわち、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【０１９２】
さらに、次のような場合も本発明に含まれる。すなわち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【０１９３】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した手順に対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１９４】
【図１】従来の技術を示し、画像処理装置の構成を示す図である。
【図２】画像データがマクロブロックに分けられた様子を示す模式図である。
【図３】一般的なマクロブロック・パーティションを示す図である。
【図４】従来の技術を示し、ピクチャＰ２１を符号化する際の参照リストの例を示す図である。
【図５】従来の技術を示し、ピクチャＰ２４を符号化する際の参照リストの例を示す図である。
【図６】従来の技術を示し、参照リストの変化の様子をピクチャ毎に示す図である。
【図７】従来の技術を示し、Ｂピクチャを参照リストに加える場合の参照リストの変化の様子を示す図である。
【図８】ＭＰ４ファイルの構成を説明するための図である。
【図９】ＭＰ４ファイルの構成例を示す図である。
【図１０】従来の技術を示し、再生回路を説明するためのブロック図である。
【図１１】従来の技術を示し、符号化のフレーム順序を説明するための図である。
【図１２】本発明の第１の実施形態に係わる撮像装置の構成を示すブロック図である。
【図１３】第１の実施形態におけるゴミ情報を取得する際の撮像装置における処理を示すフローチャートである。
【図１４】第１の実施形態におけるゴミ情報を取得する際の撮影関連のパラメータの設定例を示す図である。
【図１５】第１の実施形態における図１３のステップＳ１３０６で行われるゴミ領域サイズ算出の概要を示す図である。
【図１６】第１の実施形態におけるゴミ補正データのデータ形式例を示す図である。
【図１７】第１の実施形態における画像処理装置のシステム構成の概略を示した図である。
【図１８】画像処理装置におけるＧＵＩの例を示す図である。
【図１９】第１の実施形態におけるゴミ補正再生処理を説明するフローチャートである。
【図２０】第１の実施形態におけるゴミ補正ブロック選択処理の詳細を説明するフローチャートである。
【図２１】動きベクトルと参照フレームの関係を模式的に示した図である。
【図２２】第１の実施形態における補間ルーチンの詳細を説明するフローチャートである。
【図２３】本発明の第２の実施形態におけるゴミ補正ブロック選択処理の詳細を説明するフローチャートである。
【図２４】本発明の第３の実施形態におけるゴミ補正ブロック選択処理の詳細を説明するフローチャートである。
【図２５】本発明の第４の実施形態におけるゴミ補正ブロック選択処理の詳細を説明するフローチャートである。
【図１】
2010081115.tif 000003
【図２】
2010081115.tif 000004
【図３】
2010081115.tif 000005
【図４】
2010081115.tif 000006
【図５】
2010081115.tif 000007
【図６】
2010081115.tif 000008
【図７】
2010081115.tif 000009
【図８】
2010081115.tif 000010
【図９】
2010081115.tif 000011
【図１０】
2010081115.tif 000012
【図１１】
2010081115.tif 000013
【図１２】
2010081115.tif 000014
【図１３】
2010081115.tif 000015
【図１４】
2010081115.tif 000016
【図１５】
2010081115.tif 000017
【図１６】
2010081115.tif 000018
【図１７】
2010081115.tif 000019
【図１８】
2010081115.tif 000020
【図１９】
2010081115.tif 000021
【図２０】
2010081115.tif 000022
【図２１】
2010081115.tif 000023
【図２２】
2010081115.tif 000024
【図２３】
2010081115.tif 000025
【図２４】
2010081115.tif 000026
【図２５】
2010081115.tif 000027