(57)【要約】【課題】ディジタルスチルカメラ等の画像入力装置において、高速化し且つ消費電力を低くする。【解決手段】ＣＣＤ２１からの画素データに実時間処理を施すためのＲＰＵ２３において、予め用意されない特殊な例外的画像処理だけをＣＰＵ２４でソフトウェアプログラム処理し、その後に一般画像処理を行うポスト処理では、一旦主メモリ２９に蓄えた画素データを再度ＲＰＵ２３に入力して処理する。ソフトウェアプログラム処理で実行する場合に比較して大幅に高速化し、ＣＰＵ２４での長時間にわたる処理を可久的に少なくして消費電力を減らす。【選択図】図１
2004153847.tif 000002
【特許請求の範囲】
【請求項１】
画像入力装置内において、撮像素子で撮像した画像について所定の画像処理を行う画像処理回路であって、
前記撮像素子で撮像されて順次入力される画素データについてラインメモリを使用して順次に接続された複数の画像処理部による実時間処理により所定の一般画像処理を行うリアルタイムプロセッシングユニットと、
少なくとも前記リアルタイムプロセッシングユニットから出力された画素データを画像フレーム単位で記憶する主メモリと、
前記主メモリ内に一旦記憶された画像に対して前記一般画像処理以外の例外的画像処理をソフトウェアプログラム処理として実行して前記主メモリ内に格納する中央制御部と
を備え、
前記リアルタイムプロセッシングユニットは、前記撮像素子で撮像されて順次入力される画素データと、前記主メモリ内に一旦格納された画像の画素データとを選択するセレクタを少なくとも有することを特徴とする画像入力装置の画像処理回路。
【請求項２】
請求項１に記載の画像入力装置の画像処理回路であって、
前記セレクタが前記主メモリ内に一旦格納された画像の画素データを選択した場合に、当該画像データがダイレクトメモリアクセスにより前記セレクタに転送されることを特徴とする画像入力装置の画像処理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像入力装置内において画素補間、色変換、輪郭補正処理、フィルタリング及び間引き処理等の所定の画像処理を行う画像入力装置の画像処理回路に関する。
【背景技術】
【０００２】
一般に、ディジタルスチルカメラ（画像入力装置）は、図３３の如く、ＣＣＤ１の駆動と画像の取り込みを画像処理回路２で行い、この画像処理回路２内で画素補間、色変換、輪郭補正処理、フィルタリング及び間引き処理等の所定の画像処理を行った後、この画像を液晶モニタ３等のファインダに表示するとともに、画像データを所定の内蔵メモリ４に格納するようになっており、また必要に応じて画像データをメモリカード５に保存格納したり、外部インターフェース（Ｉ／Ｆ）６を通じて外部の所定の処理装置（パーソナルコンピュータ）等に出力するようになっている。図３３中の符号７は撮影レンズ、符号８は絞り機構、符号９は光学ローパスフィルタ、符号１０は赤外カットフィルタ、符号１１はストロボ、符号１２は電源をそれぞれ示している。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ここで、一般に、画像処理回路２内には、図３４及び図３５の如く、ＣＰＵ２ａの他に、ＣＣＤ１で得られた画像のリアルタイムな画像処理を実行するリアルタイムプロセッシングユニット（ＲＰＵ）２ｂが備えられることが多い。そして、一旦内蔵メモリ４内に格納された画像の各種画像処理は、ＣＰＵ２ａのみがソフトウェアプログラムによって実行する構成となっていた。即ち、従来のリアルタイムプロセッシングユニット２ｂは、専らファインダー動作等を行うためのリアルタイム画像処理に限定され、完全にソフトウェア処理とは分離されており、処理過程の変更は各部のパラメータを変更する程度であった。
【０００４】
この場合、リアルタイムプロセッシングユニット２ｂでのリアルタイム処理と、ＣＰＵ２ａでのソフトウェア処理とが完全に分離されていたため、リアルタイムプロセッシングユニット２ｂとしてのハードウェアで用意されない特殊な処理が必要となった場合は、一旦リアルタイム処理を中断して、特殊な処理を実行した後、その他の一般的な処理を行うことになるが、一旦内蔵メモリ４内に格納した画像をリアルタイムプロセッシングユニット２ｂで処理することができない構成となっていたため、図３５の如く、それ以降の処理を、すべてソフトウェアで処理しなければならなかった。この場合、ハードウェア処理部（即ち、リアルタイムプロセッシングユニット２ｂ）を全く使用せず、最初から最後までＣＰＵ２ａでのソフトウェア処理によって実行されるため、少しでも例外的画像処理が要求された場合には、極端に処理スピードが低下し、処理に非常に時間がかかることから、撮影の機会を失う等の不都合が生じていた。
【０００５】
ここで、最初からソフトウェア処理を前提にしておき、ＣＰＵ２ａの速度を上げて処理の高速化を図る場合もあるが、この時はＣＰＵ２ａの高速動作のため消費電力が極端に大きくなり、ハードウェア処理に比較して、処理内容を複雑にすることができない。
【０００６】
これらのことから、従来の方法では、必ずしも効率的な画像処理を行っているとは言い難かった。
【０００７】
本発明では、ＣＰＵによりソフトウェア処理で必要な部分のみを修正した後、再びリアルタイムプロセッシングユニットでの高速処理を続行できるようにすることで、高速な画像処理が可能で且つ消費電力を低く抑制できるディジタルスチルカメラの画像処理回路を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決すべく、請求項１に記載の発明は、ディジタルスチルカメラ内において、撮像素子で撮像した画像について所定の画像処理を行う画像処理回路であって、前記撮像素子で撮像されて順次入力される画素データについてラインメモリを使用して順次に接続された複数の画像処理部による実時間処理により所定の一般画像処理を行うリアルタイムプロセッシングユニットと、少なくとも前記リアルタイムプロセッシングユニットから出力された画素データを画像フレーム単位で記憶する主メモリと、前記主メモリ内に一旦記憶された画像に対して前記一般画像処理以外の例外的画像処理をソフトウェアプログラム処理として実行して前記主メモリ内に格納する中央制御部とを備え、前記リアルタイムプロセッシングユニットは、前記撮像素子で撮像されて順次入力される画素データと、前記主メモリ内に一旦格納された画像の画素データとを選択するセレクタを少なくとも有することを特徴とするものである。
【０００９】
請求項２に記載の発明は、前記セレクタが前記主メモリ内に一旦格納された画像の画素データを選択した場合に、当該画像データがダイレクトメモリアクセスにより前記セレクタに転送されるものである。
【発明の効果】
【００１０】
請求項１に記載の発明によれば、撮像素子から次々と入力される画素データについてラインメモリを使用して順次に接続された複数の画像処理部による実時間（リアルタイム）処理を行う場合には、途中の画素データを主メモリに蓄えずに行う一方、リアルタイムプロセッシングユニットで用意されない特殊な例外的画像処理だけを制御部（ＣＰＵ）におけるソフトウェアプログラム処理として実行し、その後に一般画像処理を行う場合（ポスト処理）は、一旦主メモリに蓄えた画素データを再度リアルタイムプロセッシングユニットに入力して処理することで、ソフトウェアプログラム処理で実行する場合に比較して大幅に高速化を達成できるとともに、制御部での長時間にわたる処理を可久的に少なくできるので、消費電力を大幅に低減できる。
【００１１】
請求項２に記載の発明によれば、セレクタが、主メモリ内に一旦格納された画像の画素データを選択した場合に、当該画像データがダイレクトメモリアクセスによりセレクタに転送されるので、高速に処理を行うことができる。
【発明を実施するための最良の形態】
【００１２】
図１はこの発明の一の実施の形態に係るディジタルスチルカメラを示す図である。このディジタルスチルカメラは、図１の如く、ＣＣＤ（撮像素子）２１で撮像した画像をアナログ信号処理回路２２で取り込んでＡ／Ｄ変換し、このディジタル化された画像についての画素補間、色変換、輪郭補正処理、フィルタリング及び間引き処理等の所定の一般画像処理をリアルタイムプロセッシングユニット（ＲＰＵ）２３でリアルタイム処理（実時間処理）にて高速に実行すると共に、ＪＰＥＧ圧縮処理等を含む例外的画像処理をＣＰＵ（中央制御部）２４で実行した後、外部インターフェース（Ｉ／Ｆ）２６を通じて所定の処理装置（パーソナルコンピュータ）等に出力し、併せて、当該画像をファインダーとしてのＬＣＤ２７に表示し、またＤＲＡＭまたはＳＤＲＡＭ等の一般的な主メモリ２９等に格納するようになっている。この際、ファインダー（ＬＣＤ２７）への画像供給に関しては若干の解像度を落とすなどの所定の処理をリアルタイムプロセッシングユニット２３で行った後、次々と画像を出力することで、ファインダー２７での画像表示を行うが、撮像釦等が操作者によって押操作されたときには、主メモリ２９内の詳細な画像をメモリカード３０等の記録装置（Storage Media）に一気に格納するようになっている。
【００１３】
そして、アナログ信号処理回路２２を通じて与えられた画像については、リアルタイム処理を行う場合は途中の画素配列データを主メモリ２９に蓄えずにＲＰＵ２３で直接的に処理を行う一方（図３４参照）、リアルタイム処理を行わない場合には、例えば図２の如く、ＣＰＵ２４で処理されて一旦主メモリ２９のＣＣＤデータバッファ（CCD Data Buffer）２９ａに蓄えた画素配列データを再度ダイレクトメモリアクセス（ＤＭＡ）でリアルタイムプロセッシングユニット２３に入力してやることで、高速に処理を行うようになっている。
【００１４】
即ち、この実施の形態のディジタルスチルカメラでは、一旦主メモリ２９内に格納した画像の画素補間、色変換及び輪郭補正処理等の各種処理を、いつでも再びリアルタイムプロセッシングユニット２３で再実行することが可能となっている。これにより、例えば画像中の所望の部分のみについて、リアルタイムプロセッシングユニット２３で予定していない特殊な処理を、ＣＰＵ２４でソフトウェア処理・修正した後、その他の定型処理等をリアルタイムプロセッシングユニット２３で高速に処理することができ、すべてをソフトウェアで行うときに比較して数倍から数十倍のスピードアップが可能となり、また、このときＣＰＵ２４は処理を行う必要がないので消費電力を削減することができるものである。
【００１５】
ここで、リアルタイムプロセッシングユニット２３、ＣＰＵ２４、外部インターフェース２６等は、主メモリ２９、メモリカード３０及びＪＰＥＧ処理部３１とともにメインバス２８にバス接続されており、これらのデータ相互の受け渡しに際してＣＰＵ２４の負荷を低減すべく、このＣＰＵ２４を介さずにダイレクトメモリアクセス（ＤＭＡ）コントローラ３２の制御に基づいて各要素間のメインバス２８を通じたデータの授受を行っている。
【００１６】
尚、図１中の符号２７ａはＬＣＤ２７を駆動するＬＣＤ駆動回路、符号２７ｂはディジタルエンコーダ、符号２７ｃはディスプレイモジュール、符号３０ａはオートフォーカス機能付きのレンズや絞り機構等を有する光学機構、符号３０ｂはストロボ、符号３０ｃはＣＣＤ２１を駆動するＣＣＤ駆動回路、符号３０ｄはリアルタイムプロセッシングユニット２３及びＣＣＤ駆動回路３０ｃ等の動作タイミングを規律するためのタイミングジェネレータ（ＴＧ）、符号３０ｅはＰＬＬ発信回路、符号３０ｆはＣＰＵ２４の補助演算装置であるコプロセッサをそれぞれ示している。
【００１７】
＜ＣＣＤ２１の構成＞
ＣＣＤ２１は、電荷蓄積部及び電荷転送部を内部に備える一般的なもので、例えば、偶数ラインと奇数ラインが２つのフィールドとして時間的に全く異なるタイミングでアナログ信号処理回路２２に読み出されるインターレース（飛び越し走査）タイプのものと、各ライン順に順次読み出しが行われるプログレッシブ（順次走査）タイプのもののいずれかが選択的に使用される。勿論、電荷転送部を持たないＣＭＯＳセンサタイプのものも適用して差し支えない。
【００１８】
＜リアルタイムプロセッシングユニット２３の構成及び動作＞
リアルタイムプロセッシングユニット２３は、図３の如く、アナログ信号処理回路２２を通じて得られた各画素を各ピクセル単位で処理する単一画素処理部（Single Pixel Proccessing Block）４１と、所定の画素補間を行いながらガンマ処理を行う画素補間・ガンマ処理部（Interpolation & Gamma Block）４２と、色空間変換・色抑圧処理部（Color Space Conversion & False Color Suppression Block）４３と、空間フィルタ・コアリング処理部（Special Filter & Coring Block）４４と、これらの画像処理が行われた画像データをメインバス２８に出力する出力部（Resizing Block）４５とを備えている。
【００１９】
そして、特に、単一画素処理部４１及び画素補間・ガンマ処理部４２については、一旦主メモリ２９内に格納した画像を、ダイレクトメモリアクセス（ＤＭＡ）コントローラ３２での制御によりいつでも取り込めるようになっている。このように、リアルタイムプロセッシングユニット２３の初段の単一画素処理部４１だけでなく、中途段の画素補間・ガンマ処理部４２にも入力できるようになっているので、ＣＰＵ２４で画像の例外的画像処理を行った後、単一画素処理部４１を通過させずに、リアルタイムプロセッシングユニット２３の中途（画素補間・ガンマ処理部４２）からの処理を実行できる。即ち、例外的画像処理を行う部分のみをソフトウェアで行い、その他のすべての処理を高速なリアルタイムプロセッシングユニット２３で処理することにより、処理スピードの低下を最小限に抑えることができる。
【００２０】
また、実際のディジタルスチルカメラにおいては、ＣＣＤ２１によって取り込んだ画素データに対して、例えば「Ｇ（グリーン）」成分だけをガンマ補正するなどの特殊な例外的画像処理を行うことがある。この場合、かかる特殊な処理は、予めリアルタイムプロセッシングユニット２３にハードウェアとして用意された機能を使用できないことが多く、よって、一旦、主メモリ２９内に格納した画像に対して種々の一般画像処理をリアルタイムプロセッシングユニット２３で行う（ポスト処理：Post Processing）ことが行われる。そして、この実施の形態のディジタルスチルカメラでは、かかるポスト処理時において、リアルタイムプロセッシングユニット２３の処理クロックをリアルタイム処理時より高い周波数に設定し、可久的にポスト処理を高速に行うようにしている。尚、一般に、従来のＣＣＤ２１の画素の読み出しクロックとリアルタイムプロセッシングユニット２３でのリアルタイム処理の処理クロックは常に同期するようになっている。このため、ＣＣＤ２１の画像データについてＣＰＵ２４で例外的処理し、一度主メモリ２９に格納した後に、再びリアルタイムプロセッシングユニット２３でポスト処理することとすると、処理時間が全体としてかなり長くかかってしまうことが予想される。そこで、この実施の形態では、リアルタイムプロセッシングユニット２３の処理クロックをＣＣＤ２１の画素の読み出しクロックから非同期に独立して単独で設定できるようにし、ポスト処理時のリアルタイムプロセッシングユニット２３の処理スピードをＣＣＤ２１からのデータ転送速度に比べて大幅に向上させている。これにより、ＣＣＤ２１とリアルタイムプロセッシングユニット２３の処理クロックを同期させる場合に比べて、ポスト処理のスピードを２〜４倍上げることができるものである。
【００２１】
このように、リアルタイムプロセッシングユニット２３の処理クロックをＣＣＤ２１からのデータ転送速度に比べて非同期に高速化しているので、リアルタイムプロセッシングユニット２３の１パスが非常に短時間に終了することになる。このことを考慮すると、ポスト処理において、リアルタイムプロセッシングユニット２３に対してデータを複数回通しても、全体としての処理スピードはＣＣＤ２１の読み出し速度に対してそれほど遅延することがない。したがって、全体的な処理速度を低下させずに、リアルタイムプロセッシングユニット２３にデータを複数回通すことにより、特定の機能をデータに重複して作用させ、個々の機能を拡張させることができ、例えば、後述の空間フィルタ９１の範囲を等価的に増加させる等の機能の拡張を行うことが容易に可能となる。
【００２２】
尚、リアルタイムプロセッシングユニット２３の処理クロックをＣＣＤ２１の画素の読み出しクロックから非同期にできるため、上記とは逆に、リアルタイムプロセッシングユニット２３の処理スピードをＣＣＤ２１からの転送速度に比べて低減させることも可能である。この場合は、リアルタイムプロセッシングユニット２３における消費電力を低減できるものとなる。
【００２３】
このような非同期の場合の処理クロックの変更は、図１に示したタイミングジェネレータ（ＴＧ）３０ｄにより行うものであり、望ましくは、かかるタイミングジェネレータ（ＴＧ）３０ｄによるリアルタイムプロセッシングユニット２３の処理クロックの設定に関して、予め数種類のクロック周波数の設定を用意しておき、ドライバソフトウェアプログラムやジャンパピンの接続切り換え、あるいはディップスイッチの切り換え等によりクロック周波数の設定を容易に切り替えられるようにしておく。これにより、ポスト処理に関して消費電力特性及び処理速度特性を自由に且つ容易に設計できるようになる。
【００２４】
＜単一画素処理部４１の構成及び動作＞
単一画素処理部４１は、アナログ信号処理回路２２から与えられた各画素毎に乗算、加算またはその両方の演算を行うことにより、複数フレームの画像の間での「経時的平均化処理」及び１フレーム内での「シェーディング補正処理」のいずれかを選択的に行うものであって、具体的には、図４の如く、メインバス２８にそれぞれ接続されてデータ入出力のタイミングを調整するための３個のＦＩＦＯ（バッファ）５１ａ〜５１ｃと、このうちの第一ＦＩＦＯ５１ａを通じてメインバス２８からの画素データが入力される１個のシフタ（Shifter）５２と、アナログ信号処理回路２２からの１２ビット長の入力データ（Input Data）と上記のシフタ５２からの１２ビット長のデータとを選択する第一セレクタ（Selector）５３と、第二ＦＩＦＯ５１ｂを通じて得られるメインバス２８からの画素データに対して所定の第一係数（Ratio A）を乗算する第一乗算器５４と、第二ＦＩＦＯ５１ｂを通じて得られるメインバス２８からの画素データと所定の第二係数（Ratio B）とを選択する第二セレクタ５５と、この第二セレクタ５５からの出力値と第一セレクタ５３からの出力値とを乗算する第二乗算器５６と、第一乗算器５４からの出力値と第二乗算器５６からの出力値とを加算する加算器５７と、加算器５７からの出力値を受けて第三ＦＩＦＯ５１ｃを通じてメインバス２８に信号出力を行うために、加算後のデータを一定値に適合させるリミッタ（Limmitter & Shifter）５８とを備えている。
【００２５】
ここで、従来では、単一画素処理部４１において複数フレームの画像の加算処理を行うことが行われていなかったが、この単一画素処理部４１の「経時的平均化処理」では、ＣＣＤ２１の蓄積時間が複数フレームに渡る場合、各フレーム毎にＣＣＤ２１からデータを読み出し、主メモリ２９上の対応する画素のデータと加算することによって、複数フレームのＣＣＤ２１上での蓄積と等価な信号を作成するようになっている。この場合、「累積加算」と「循環加算」のいずれか一方の加算方式を選択できるようになっている。
【００２６】
ここで、まず「累積加算」について説明する。
【００２７】
従来では、対象物が暗く、ＣＣＤ２１の蓄積時間が複数フレーム（フィールド）に渡る場合は、ＣＣＤ２１の電荷蓄積部から電荷転送部への読み出しをその期間停止して電荷レベルを増大させ、十分な信号レベルにした後、読み出しパルスを印加し撮影を行なっていた。しかし、この場合、ＣＣＤ２１内の電荷蓄積部におけるノイズ電荷の湧き出しにより、映像Ｓ／Ｎ特性が低下する。これを避けるため、電荷の読み出しは通常周期で行ない、読み出された信号をアナログの電気回路や、ディジタル回路でゲインを上げて処理することが従来において行われることがあったが、この場合も、読み出し以降のランダムノイズが所定のアンプによって増大されるため、やはりＳ／Ｎ特性は低下する。
【００２８】
これに対し、この実施の形態に係るディジタルスチルカメラでは、上記の場合に、通常読み出しの周期を維持してアナログゲインを増大させ、一度主メモリ２９に格納したデータと、新たに読み出したフレーム（フィールド）のデータを加算器５７で加算して、再度主メモリ２９に格納することを繰り返すことにより、複数フレーム期間に渡る累積加算を行なう。そして、最終的に得られた累積加算データを加算回数で除算することにより、電荷蓄積部のノイズを増大させることなく、Ｓ／Ｎの良い、十分な信号レベルのデータを得ることができる。通常、ＣＣＤ２１内の電荷蓄積部及び電荷転送部やアナログ信号処理回路２２のノイズはランダムノイズが支配的であるため、累積加算する回数をＮ回とすると、ノイズのレベルはＮの１／２乗に比例して小さくなる。このことにより、ランダムノイズを大幅に削減できるようになっている。
【００２９】
この場合、第一セレクタ５３はアナログ信号処理回路２２からの入力データを選択し、第二セレクタ５５は「１．０」という値で与えられた第二係数（Ratio B）を選択し、また第一係数（Ratio A）は「１．０」で与えられることで、加算器５７においては、アナログ信号処理回路２２からの入力データを、メインバス２８及び第二ＦＩＦＯ５１ｂを通じて主メモリ２９から与えられる過去の累積データにさらに累積加算することができるようになる。
【００３０】
このように、累積加算としての各係数（Ratio A，Ratio B）の設定及び各セレクタ５３，５５の選択を行った場合の単一画素処理部４１の処理構造を示したものが図５である。図５のように、ＣＣＤ２１からアナログ信号処理回路２２を通じて与えられた入力データ（Input Data）を、加算器５７によって、主メモリ２９内のＣＣＤデータバッファ（CCD Data Buffer）２９ａに蓄えられたデータに累積的に加算し、再びＣＣＤデータバッファ２９ａに更新記憶するようになっている。かかる累積加算をＮ回繰り返した後、リアルタイムプロセッシングユニット（ＲＰＵ）２３内の他のブロック４２〜４５に与え、主メモリ２９内の処理データバッファ（Processed Data Buffer）２９ｂにフレーム単位で格納した後、必要に応じてＣＰＵ２４により所定のソフトウェア処理を行い、これを主メモリ２９内の一時記憶データバッファ（Temporaly Data Buffer）２９ｃに格納すると共に、メインバス２８を通じて外部Ｉ／Ｆ２６等に出力するようになっている。
【００３１】
ここで、メインバス２８を通じて主メモリ２９から得られる累積データと、アナログ信号処理回路２２から得られる入力データとは、画素配列データ中での同じ位置の各画素データについて個別に累積演算され、その後に同じ位置の画素データとして主メモリ２９に順次格納される。
【００３２】
かかる構成を採用することにより、複数フレーム分の画像をメモリに格納して累積加算する場合に比べて、主メモリ２９の容量が１フレーム分で足りることになるため、メモリ容量が少なくて済み、低コスト化を図ると共に省電力化を図り得るという利点がある。また、ＣＣＤ２１での画像の読み出しに同期してリアルタイムプロセッシングユニット２３で累積加算処理を行うことができるので、例えば、複数フレーム分の画像をメモリに格納した後に何らかのソフトウェアプログラムに従ってＣＰＵの動作により累積加算する場合に比べ、加算処理の速度を大幅に向上できる。
【００３３】
尚、この「累積加算」の場合は、画像データを累積加算する際の加算回数が増大するに従ってビット長が伸びることになる。例えば、８ビットの画像データを２５６回加算するのであれば１６ビットのデータ長を確保しなければならない。このことは、逆に言えば、１６ビットのデータ長を確保している場合は８ビットの画像データであれば加算限度として２５６回しか加算できず、これを超過すると信号の一部がオーバーフローする可能性があることになる。また、例えば、入力データとして１２ビットまで対応できるようにリアルタイムプロセッシングユニット２３を設計する場合は、１６ビットのデータ長を確保している場合は、１２ビットの入力データに対して最大１６（＝２１６−１２）回までしか累積加算できないことになる。このように加算処理回数が少ない場合、被写体の明るさや、ノイズの量によっては、十分な平均化処理ができない可能性がある。したがって、使用環境等の要因によりＳ／Ｎ比の向上が強く求められる場合には、加算回数に制限をなくすことが望ましい場合があり、このような場合を考慮した方式が「循環加算」である。
【００３４】
この「循環加算」は、ＣＣＤ２１の蓄積時間が複数フレームに渡る場合に、各フレーム毎にＣＣＤ２１からデータを読み出し、図４の如く、メインバス２８及び第二ＦＩＦＯ５１ｂを通じて主メモリ２９から与えられる画素データに対し、第一乗算器５４によって第一係数（Ratio A）としてαを乗算するとともに、ＣＣＤ２１からの入力データに対し、第二係数（Ratio B）として（１−α）を第二乗算器５６によって乗算し、これらを加算することによって複数フレームのＣＣＤ上での蓄積と等価な信号を作成するものである。この場合、第一係数（Ratio A＝α）と第二係数（Ratio B＝１−α）の合計は「１」になるように設定されており、αの値は「０」より大で且つ「１」未満の任意の値として実験等の経験により設定されるものである。また、第一セレクタ５３及び第二セレクタ５５でのそれぞれの選択は「累積加算」の場合と同様である。この「循環加算」方式によると、加算された最新の入力データやこれに近い比較的新しい過去の入力データの方が、古い入力データよりも寄与率が高いことになり、データの時間的均衡については若干扱いにくい点もあるが、ランダムノイズを低減するための加算処理において、加算回数に応じてデータ長をデフレートすることで、メモリ上のデータ量を増やさずに、加算回数を大きくすることができるという利点があるものである。したがって、被写体の明るさやノイズの量によって十分な平均化処理を行いたい場合に、蓄積部のデータ長を増加させずに長時間（無限回数）のフレーム加算が可能となる。
【００３５】
このように循環加算としての各係数（Ratio A，Ratio B）の設定及び各セレクタ５３，５５の選択を行った場合の単一画素処理部４１の処理構造を示したものが図６である。図６のように、ＣＣＤ２１からアナログ信号処理回路２２を通じて与えられた入力データ（Input Data）に対して、第二乗算器５６により第二係数（Ratio B＝１−α）を乗算し、また主メモリ２９内のＣＣＤデータバッファ（CCD Data Buffer）２９ａに蓄えられたデータに対して、第一乗算器５４により第一係数（Ratio A＝α）を乗算し、これらを加算器５７によって加算し、再びＣＣＤデータバッファ２９ａに更新記憶するようになっている。かかる循環加算をＮ回繰り返した後、リアルタイムプロセッシングユニット（ＲＰＵ）２３内の他のブロック４２〜４５に与え、主メモリ２９内の処理データバッファ（Processed Data Buffer）２９ｂにフレーム単位で格納した後、必要に応じてＣＰＵ２４により所定のソフトウェア処理を行い、これを主メモリ２９内の一時記憶データバッファ（Temporally Data Buffer）２９ｃに格納すると共に、メインバス２８を通じて外部Ｉ／Ｆ２６等に出力するようになっている。
【００３６】
この図５及び図６のように、図４に示した同一の回路を用いて「累積加算」と「循環加算」を任意に選択することができるため、設計の自由度を確保でき、この単一画素処理部４１の汎用性が向上するという利点がある。
【００３７】
さらに、上記の図４に示した同一の回路を用いて、上記のノイズ緩和のための加算処理以外に、全く異なった機能である「シェーディング補正処理」をも選択して実行できるようになっている。
【００３８】
一般に、ＣＣＤ２１で対象物や風景等を撮影する場合、レンズの光学的作用等に起因して、中心位置の明るさに比べてその周囲が暗くなると言うシェーディングが発生することがある。図７は画像にシェーディングが発生した状態を示す図であり、横軸は画像ラインの位置、縦軸は輝度レベルを示している。図７では、画像ライン中の中心部分に比べてその周囲部分の輝度が相対的に低くなっている。このような現象は、レンズとして広角レンズ等を使用する場合に顕著に現れる。かかるシェーディングを緩和するために、各画素の輝度値等のゲイン調整を行うのが「シェーディング補正処理」である。
【００３９】
尚、例えばＣＰＵ２４によりソフトウェア処理を行ってシェーディング補正処理を行う場合を考えると、１画素毎にシェーディング補正する場合には、従来は、レンズのシェーディング補正等を行なうために、ＲＰＵ内部に乗算係数（シェーディング補正パラメータ）を格納する１ライン分のメモリを用意しておき、そのデータと、ＣＣＤ２１からの入力データを掛け合わせて、補正を行なっていた。しかしながら、この方法では、水平方向の補正しかできないため、垂直方向にも補正したい場合には、複数ラインの乗算係数（シェーディング補正パラメータ）を持てるようにメモリを追加するか、ソフトウェアで定期的にデータを更新してやる必要があった。１ライン中の画素毎に異なった乗算係数（シェーディング補正パラメータ）を乗算するので、大量の係数を持たなければならず、内部のメモリの容量が巨大になり、かつソフトウェアでのデータの更新も非常に頻繁に必要になるため、水平画素の補正単位を複数画素単位とし、垂直のラインも複数ライン単位とせざるを得なかったこともあり、これをソフトウェア処理する場合は非常に時間がかかり好ましくない。
【００４０】
このため、ＣＰＵ２４において、図７中の縦線のように１フレームの画像をいくつかの格子状のブロックに分割し、これらのブロック相互間で、シェーディング補正を行う方法も考えられる。しかしながら、ブロック単位に区切ってシェーディング補正処理を行うと、図８のように、ブロックの区切り部分（図８中の縦線）で輝度値に段差ができてしまい、画像として見た場合に縞状の不自然な画像となってしまう。
【００４１】
これらの問題を考慮し、この実施の形態のリアルタイムプロセッシングユニット２３では、単一画素処理部４１において、個々の画素毎にシェーディング補正処理を高速に実行するようになっている。
【００４２】
具体的には、画素単位のシェーディング補正パラメータを主メモリ２９内の補正データ格納領域２９ｄ上に格納しておき、ＣＣＤ２１での画像データのキャプチャー時にダイレクトメモリアクセス（ＤＭＡ）で補正データをリアルタイムプロセッシングユニット２３に入力することにより画素単位の補正を行なう。これにより、ソフトウェア処理に係るＣＰＵ２４に負担をかけずに、画素単位のシェーディング補正処理を高速に実現できる。特にＣＣＤ２１に代えてＣＭＯＳセンサを使用するような市場の要請があった場合、このＣＭＯＳセンサはＣＣＤセンサと異なり、画素毎に読み出し回路が独立しており、画素単位のエラーが発生しやすいため、この発明は有効となる。また、リアルタイムプロセッシングユニット２３内に特別のレジスタを設置する必要がないため、回路構成を容易にすることでコストを低く抑えることができると共に、消費電力を低減できる。
【００４３】
この「シェーディング補正処理」では、図４及び図９の如く、第二セレクタ５５では、メインバス２８及び第二ＦＩＦＯ５１ｂを通じて主メモリ２９内の補正データ格納領域２９ｄから与えられる画素毎の乗算係数（シェーディング補正パラメータ）を選択しており、ここで選択された乗算係数（シェーディング補正パラメータ）を、第二乗算器５６によってＣＣＤ２１からの画素データに対して各画素毎に乗算し、その結果の画像データをＣＣＤデータバッファ（CCD Data Buffer）２９ａに格納する。尚、ここで、第一乗算器５４で乗算される第一係数（Ratio A）は「０」であり、よってその乗算値が「０」となるため、加算器５７では第二乗算器５６での結果に値「０」を加算することになり、故に加算器５７の出力は第二乗算器５６からの出力値がそのまま維持される。
【００４４】
かかる回路は、上述の図４に示した回路と同一の回路を使用しているだけなので、かかる同一の回路で「累積加算」と「循環加算」と「シェーディング補正処理」との３つの機能を選択して使用できる。尚、かかる複数の機能は、リアルタイムプロセッシングユニット２３の単一画素処理部４１の駆動制御に使用されるドライバプログラム（ＢＩＯＳ）において、各セレクタ５３，５５の選択及び各係数（Ratio A，Ratio B）の設定を変更するだけで容易に選択できる。したがって、「累積加算」と「循環加算」と「シェーディング補正処理」の３つの機能のうち、予めいずれかの機能に限定するようドライバプログラムを設定してもよいし、あるいは、コマンド入力または回路基板上のジャンパピンまたはディップスイッチ等の設定により切り換えできるように設定してもよい。
【００４５】
＜画素補間・ガンマ処理部４２の構成及び動作＞
画素補間・ガンマ処理部４２は、ＣＣＤ２１より画像を読み込んだ場合の画素補間を行うとともに、画像のガンマ補正を行うブロックである。
【００４６】
まず、画素補間・ガンマ処理部４２の画素補間機能について説明する。
【００４７】
一般に、ＣＣＤ２１においてカラー画像の撮像を行うに当たって、１画素毎に異なる色（ＲＧＢ−ＢａｙｅｒまたはＹＭＣＧ系等の補色タイプ等）のフィルタを使用することが多い。
【００４８】
ＲＧＢ−Ｂａｙｅｒは、画素毎に３色系のフィルタをかけるもので、一般に「Ｒ（赤色成分）」，「Ｇ（緑色成分）」，「Ｂ（青色成分）」の３色により画素配列を行っており、例えば図１０の如く、奇数ライン及び偶数ラインの一方を「Ｒ，Ｇ，Ｒ，Ｇ，…」とし、他方を「Ｇ，Ｂ，Ｇ，Ｂ，…」としたものである。この場合、図１０中の太線枠で示したように、２×２＝４ピクセルでもって１組の色を認識するようになっているが、この太線枠内においては、右上位置と左下位置の両方に「Ｇ」が配置される。
【００４９】
また、補色タイプ（ＹＭＣＧ系またはＹＭＣＫ系）は、画素毎に異なる色成分の４色系のフィルタをかけるもので、図１１の如く、奇数ライン及び偶数ラインの一方を「Ｃ（シアン色成分），Ｍ（マゼンダ色成分），Ｃ，Ｍ，…」とし、他方を「Ｙ（イエロー色成分），Ｇ（緑色成分），Ｙ，Ｇ，…（ＹＭＣＧ系の場合）」としたものである。これも一画素毎に異なる色成分のフィルタをかけたもので、図１１中の太線枠で示した通り、２×２＝４ピクセルでもって１組の色を認識するようになっている。
【００５０】
これらのＲＧＢ−Ｂａｙｅｒ及び補色タイプ（ＹＭＣＧ系等）の画素配列を記号「Ａ」，「Ｂ」，「Ｃ」，「Ｄ」で一般化したものが図１２である。ＪＰＥＧ系のディジタルスチルカメラでは、これらの画素配列に基づいて最終的にＪＰＥＧ系色空間であるＹ（輝度），Ｃｒ（＝α１｛Ｒ（赤色成分）−Ｙ（輝度）｝），Ｃｂ（＝α２｛Ｂ（青色成分）−Ｙ（輝度）｝）に１画素毎に変換する必要があるが、ここでは、例えば図１２のＤａｔａＸ１において、「Ｄ」の成分しかなく、この画素について他の「Ａ」，「Ｂ」，「Ｃ」の成分の補間を行うためには、周囲のこれらの成分を参照することになる。
【００５１】
具体的には、例えば補色タイプ（ＹＭＣＧ系等）の場合、図１３の如く、ＤａｔａＸ１において「Ａ」の成分を参照する場合は、斜め四方の「Ａ」の成分の平均化処理を行ってこれをＤａｔａＸ１の成分に加味する。また、ＤａｔａＸ２（「Ｃ」の成分）において「Ａ」の成分を参照する場合は、上下に隣接する「Ａ」の成分の平均化処理を行ってこれをＤａｔａＸ２の成分に加味する。さらに、ＤａｔａＸ３（「Ｂ」の成分）において「Ａ」の成分を参照する場合は、左右に隣接する「Ａ」の成分の平均化処理を行ってこれをＤａｔａＸ３の成分に加味する。他の成分「Ｂ」，「Ｃ」，「Ｄ」の補間についても同様である。ここで、画素配列の信号は、各ライン別に入力されるにも拘わらず、例えば図１３中のＤａｔａＸ１の画素補間を行うためには当該ＤａｔａＸ１のラインと異なる前後ラインを参照しなければならないため、この画素補間・ガンマ処理部４２では、画素補間を行う画素に対して前後の２ラインを格納するためのラインバッファ６１ａ，６１ｂを設置し、このラインバッファ６１ａ，６１ｂと３×３ピクセルレジスタ６２の間で画素の受け渡しをしながら、この３×３ピクセルレジスタ６２の各画素の値を色選択ブロック６３でセレクトしながら、この色選択ブロック６３内において画素補間を行う。即ち、補色タイプ（ＹＭＣＧ系等）のような２×２の４色構成のＣＣＤ２１に対しては、図１３に示した方法のように、すべて同じ演算処理を行うことで画素補間を行う。尚、ラインバッファ６１ａ，６１ｂ及び３×３ピクセルレジスタ６２は、３×３ピクセルレジスタ６２内の中央に位置する注目画素に対して、その周囲の画素を参照するための画素参照ブロックを構成するものである。
【００５２】
これに対し、３色系のＲＧＢ−Ｂａｙｅｒでは、図１０中の太線枠で示したように、「Ｒ」，「Ｇ」，「Ｂ」の３色に加えて４色目の色成分として再び「Ｇ」を使用している。このように、ＲＧＢ−ＢａｙｅｒのＣＣＤ２１に対しては、色選択ブロックの一部（４色目）を置き換えることによって、同一の回路により３色系と４色系の両方をリアルタイム処理できるようになっている。かかる３色系のＲＧＢ−Ｂａｙｅｒについて色補間処理する場合、４色系の補色タイプ（ＹＭＣＧ系等）の処理とは異なった処理が必要とされる。即ち、４色系の補色タイプ（ＹＭＣＧ系等）の色補間処理では、すべての画素について図１３に示したような処理を行うことが可能であるが、３色系のＲＧＢ−Ｂａｙｅｒの「Ｇ」について色補間処理する場合、例えば図１０において「Ｒ」においても「Ｂ」においても、これに「Ｇ」を補間する場合は、上下方向及び左右方向の四方に隣接して「Ｇ」が存在しているので、これらの四方の「Ｇ」に基づいて色補間を行えばよい（第一補間方法）。あるいは、上下方向及び左右方向の四方に隣接して存在する４画素の「Ｇ」のうち、最小値のものと最大値のものを除去した残りの２画素の「Ｇ」の平均値をとってもよい（第二補間方法）。実際には、これらの第一補間方法と第二補間方法とを、色選択ブロック６３の駆動のためのドライバソフトウェアプログラム等の設定により任意に選択できるようにしておく。これにより、設計変更の自由度が大幅に向上するものである。一方、「Ｇ」については、縦（上下）方向に隣接した「Ｒ」を補間し、横（左右）方向に隣接した「Ｂ」を補間するだけで、斜め四方の他の「Ｇ」に基づく補間は必要なく、図１３に示したような処理とは大きく異なった処理となる。
【００５３】
あるいは、このＲＧＢ−Ｂａｙｅｒにおいて、例えば図１０中の太線枠内の２個の「Ｇ」のうちの一方については、かかる部分の画素の全体的な輝度成分や強調成分として擬似的に活用することも可能であり、各画素の色成分として抽出するのではなく画素の輝度成分や強調成分等の所定の特徴を示す「特徴データ（ＫＥＹ信号）」として活用できる。
【００５４】
例えば、「Ｒ」，「Ｇ」，「Ｂ」として各８ｂｉｔにＫＥＹ信号８ｂｉｔを追加した３２ｂｉｔ信号を、４色信号として図１４中の３×３ピクセルレジスタ６２上に配置し、リアルタイムプロセッシングユニット２３の各ブロック４３，４４，４５における処理過程で、各画素毎の「特徴データ（後述）」として使用する。
【００５５】
さらに、４色系の補色タイプ（ＹＭＣＧ系等）においても、例えば「Ｇ」については、かかる部分の画素の全体的な輝度成分や強調成分として擬似的に活用することも可能であり、各画素の色成分として抽出するのではなく画素の輝度成分や強調成分等の所定の特徴を示す「特徴データ（後述）」として活用できる。
【００５６】
尚、一般的には、３色系処理と４色系処理を扱える処理回路において、３色系の処理を行う場合には、３色データを所定のメモリ上で詰めて格納するか、４色目のデータを無視して処理する方法が考えられる。しかしながら、特に後者の場合、メモリや処理回路を有効に活用できないという問題が生じる。
【００５７】
これに対して、この実施の形態のディジタルスチルカメラでは、主メモリ２９内の４色処理のメモリ配置の中に３色データを格納した場合に、４色目に相当する領域に各画素を格納し、後述の色空間変換・色抑圧処理部４３やＣＰＵ２４でのソフトウェア処理において画素毎に所定の特徴づけを行うための後述の「特徴データ（ＫＥＹ信号：例えば「Ｇ」）」として活用するようにする。かかる４色目の画素補間の処理を、リアルタイムプロセッシングユニット２３での処理の中で使用することによって、各ブロック４３，４４，４５における各種の非線型処理や画素単位処理を非常に高速に行うことができるものである。
【００５８】
かかる色補間処理では、図１４の如く、単一画素処理部４１のリミッタ５８から出力されてきた各画素データに対して、上述のようにラインバッファ６１ａ，６１ｂを使用しながら、３×３ピクセルレジスタ６２に各色成分を配置し、これらの各色成分の信号を、水平同期信号に基づくＨ＿Ｃｏｕｎｔ信号及び垂直同期信号に基づくＶ＿Ｃｏｕｎｔ信号の入力に従って色選択ブロック６３でセレクトしながら平均化処理を行って画素補間を行う。これにより、リアルタイムプロセッシングユニット２３の後段の各ブロック４３，４４，４５における処理過程で、各画素毎の「特徴データ（後述）」として使用することが可能となる。
【００５９】
このように、画素補間・ガンマ処理部４２においては、ＲＧＢ−Ｂａｙｅｒのような３色系の処理について、色選択ブロックの一部（４色目）を置き換えることによって処理を行えるので、同一の回路により３色系と４色系の両方をリアルタイム処理できるものである。したがって、従来のように、ＲＧＢ用の画素補間回路と補色（４色系）用の画素補間回路を独立のものとして別々に設置していた場合に比べ、回路規模を非常に小さくでき、また消費電力を抑制することが可能となる。さらに、かかる処理をＣＰＵ２４によりソフトウェアプログラムに基づいて処理する場合を考えると、一旦フレーム単位で画像をメモリに格納した後、その画像中の各画素につき縦横の平均化処理を行って色補間することになるので、これをすべての画素について処理することになると、処理の工程が膨大となり多大な時間を要するのに対して、この実施の形態では、リアルタイムプロセッシングユニット２３内でリアルタイムに処理を行っている分、処理速度が大幅に向上する。
【００６０】
尚、画素補間・ガンマ処理部４２の色選択ブロック６３には、「Ｇ」信号の高域成分（Ｇｈ信号）を抜き出して、これに基づいてＡＦ（オートフォーカス）用の高周波成分の評価（ＡＦ評価）を行うＡＦ評価機能が有せしめられている。図１５は、ＲＧＢ−ＢａｙｅｒでのＧｈ信号に基づいてＡＦ評価用の高周波成分の評価値（高周波成分評価値）を作成する機能において、ある瞬間の画素配列中の一部のタイミングのデータ（「Ｇ」信号）を抜き出してＡＦ評価を行う様子を示したブロック図である。ＡＦ評価は、その瞬間にエッジが明確に出てきているかどうかを検出することで行うことが可能であり、一般に、ＦＦＴ（高速フーリエ変換）等により高周波成分のみのレベルを抽出し、この抽出値に基づいて判定すれば、最良のＡＦ評価値を得ることができる。しかしながら、リアルタイムプロセッシングユニット２３において入力データ（Input Data）が次々と入力される状況でＦＦＴの処理を行うことは極めて困難であり、また、フレーム単位で画像を主メモリ２９に格納し、ＣＰＵ２４によりソフトウェア処理でＦＦＴの処理を行う場合は、処理が複雑になると共に多大な時間を要するため効率的でない。そこで、近隣の同一色成分の画素をセレクタ６４で選択して抽出し、抽出された同一色成分の画素の差分値を演算回路６５で絶対値化して求め、かかる一連の処理で連続して得られる絶対値を、バッファ６６及び加算器６７からなる帰還回路としての累積加算器６８で積分し、その積分値（累積値）の変化値（微分値）の極大点を求めることでＡＦ評価を行っている。即ち、セレクタ６４、演算回路６５及び累積加算器６８で、オートフォーカスのための高周波成分評価値を出力するオートフォーカス評価部を構成するものである。
【００６１】
そして、この色選択ブロック６３内のオートフォーカス評価部では、入力データに対してＡＦ評価を行う際に、ＲＧＢ−Ｂａｙｅｒ中の同一色の色成分として最も多い「Ｇ」成分を使用することとし、特にこの色選択ブロック６３では、「Ｇ」成分の値の差分抽出対象として直近のものであるか、あるいはこれより離隔した「Ｇ」成分の値を差分抽出対象として選択するかについて、セレクタ６４によって任意に選択的に変更できるようになっている。即ち、ある場合には、演算回路６５の一方のＢ入力端子６５ｂに入力される「Ｇ」信号（注目画素）に最も近い「Ｇ」信号として、セレクタ６４のＤ入力端子に入力される「Ｇ」信号を選択し、またある場合には、演算回路６５の一方のＢ入力端子６５ｂに入力される注目画素の「Ｇ」信号に最も遠い「Ｇ」信号として、セレクタ６４のＡ入力端子に入力される「Ｇ」信号を選択し、さらにある場合には、セレクタ６４のＢ入力端子またはＣ入力端子に入力される「Ｇ」信号を選択して注目画素の「Ｇ」信号との差分値を演算することが可能となっている。このように、セレクタ６４によって注目画素からの離間距離を変更して差分値を求めることができるので、ＡＦ評価における着目周波数を容易に変更できる。これは、人間が画像を肉視した場合にピントが合ったと感じる周波数は、必ずしも隣接画素レベルの最大周波数とは限らず、２〜４ピクセル程度離間した画素でピントを合わせても十分にフォーカスが合ったように感じる。これに対して、例えばＣＣＤ２１の撮像画素に異変が見られた場合や、ここからの信号出力の過程でノイズがコンデンサに混入する場合のように、画素中に何らかのノイズが発生した場合には、殆どの場合、隣接画素毎に大きな変化が生じるため、隣接画素のみで差分を求める場合には、ノイズの影響でＡＦ評価が過大評価されるおそれがあることを考慮したものである。即ち、セレクタ６４でＡＦ評価における着目周波数を変更することで、ノイズの影響を低減しながら、肉視に耐えるフォーカス合わせが可能となるものである。尚、このセレクタ６４の選択は、実際のＣＣＤ２１の画素ピッチ等の特性に応じて変化させればよい。同じ被写体や風景等を撮像する場合でも、ＣＣＤ２１の画素ピッチ等の特性によって隣接する注目画素のピッチも変化することになるため、実際のＣＣＤ２１の画素ピッチ等の特性に応じてセレクタ６４で着目周波数を変化させることで、ＡＦ評価の精度を一定レベルに維持でき、故に同一のリアルタイムプロセッシングユニット２３として様々な特性のＣＣＤ２１に対応することが可能となる。
【００６２】
また、画素補間・ガンマ処理部４２の色選択ブロック６３には、ＣＣＤ２１の欠陥画素を補正する欠陥画素補正機能が有せしめられている。
【００６３】
一般に、ＣＣＤ２１の欠陥画素補正では、画像中にピクセル単位で欠陥画素が含まれて入力された場合に、これをそのまま使用すると画像が不自然になってしまうため、例えば、この欠陥画素と同じ色成分として１つ前に入力された色データ（例えば図１５の例では同じ色成分の画素が１つおきに入力されるため、２画素前の色データが対象となる）で画素補充を行う方法がある。通常のＣＣＤ２１はフレーム中に１００万画素程度の画素を有するため、まれに欠陥画素が発生しても、上記の比較的単純な方法で画素の補充を行っても十分に肉視に耐える画像を得ることができる。
【００６４】
この場合、従来のＣＣＤの欠陥画素補正においては、欠陥画素の垂直方向（Ｖ）と水平方向（Ｈ）のアドレス情報をＲＰＵ（リアルタイムプロセッシングユニット）の内部の複数（予想される欠陥画素の総数分）のレジスタに格納しておき、アドレス値がＣＣＤのＴＧ（タイミングジェネレータ）の垂直（Ｖ）カウント値及び水平（Ｈ）カウント値と一致したタイミングで欠陥信号を発生し、そのタイミングの画素データを周囲の画素（一般的には直前の同色の画素）で置き換える等の動作を行なって補正することが行われていた。
【００６５】
しかし、この従来の方法では、予想される欠陥画素の総数分だけのアドレスデータを格納するのに十分な数のレジスタをＲＰＵ内部に持つ必要がある。ところが、近年のＣＣＤの画素数の増大に伴って、欠陥画素も増大する傾向にあるため、次第に内部のレジスタの個数が増大し、消費電力の増大等の問題を生じてきた。また、欠陥画素の総数は、通常は数個〜２０個程度と予想されるものの、必ずしもこの個数内に収まるとは限らず、特に、欠陥であるか否かの評価におけるしきい値によって欠陥画素と判断される画素の個数も大きく変化するため、１つのＣＣＤに対して数個〜２０個程度の数の欠陥では十分とは言えなかった。しかしながら、例えば、１０００個程度の欠陥画素が予想される場合に、上記の従来の方法ではＲＰＵ内に１０００個程度のレジスタを設置しなければならないことになるが、これは回路規模の制限から現実的でなく、多くの場合は１つのＣＣＤに対して数個〜２０個程度の数の欠陥しか補正できないこととなっていた。
【００６６】
これに対し、この実施の形態に係るディジタルスチルカメラでは、リアルタイムプロセッシングユニット２３内に欠陥画素アドレス格納用のレジスタを設置するのではなく、ＣＣＤ２１の欠陥画素の位置情報を時間位置順に主メモリ２９上に格納しておき、この主メモリ２９中の欠陥画素の位置情報を、図１６の如く、シフトレジスタ７１ａ，７１ｂと比較器（ＣＭＰ）７２ａ，７２ｂを組み合わせてなる欠陥画素タイミング発生回路７３にダイレクトメモリアクセス（ＤＭＡ）で入力してやることで、ＣＣＤの欠陥画素補正を行うようになっている。即ち、このシフトレジスタ７１ａ，７１ｂと比較器（ＣＭＰ）７２ａ，７２ｂとで、欠陥画素補正部を構成するものである。
【００６７】
具体的には、ＣＣＤの欠陥画素アドレスを主メモリ２９（図１参照）中の任意の格納領域に当該欠陥画素の発生時間の順序で格納しておき、ダイレクトメモリアクセス（ＤＭＡ）により１ｗｏｒｄ長のレジスタ（ＦＩＦＯ）７４を通じて画素補間・ガンマ処理部４２内の欠陥画素タイミング発生回路７３内に平行に設置された各シフトレジスタ７１ａ，７１ｂに入力し、それぞれのシフトレジスタ７１ａ，７１ｂの最終段からそれぞれの比較器７２ａ，７２ｂにデータ入力して垂直（Ｖ）カウント値及び水平（Ｈ）カウント値に対して比較してやることにより、実際上、欠陥画素数の制限なしに補正を行なうことができる。
【００６８】
ここで、一方のシフトレジスタ７１ａとこれに接続された一方の比較器７２ａは、水平方向（Ｈ）の欠陥画素の出現タイミング（アドレス）を認識するものであり、他方のシフトレジスタ７１ｂとこれに接続された他方の比較器７２ｂは、垂直方向（Ｖ）の欠陥画素の出現タイミング（アドレス）を認識するものである。
【００６９】
そして、リアルタイムプロセッシングユニット２３内でカウントされた垂直（Ｖ）カウント値及び水平（Ｈ）カウント値がそれぞれ比較器７２ａ，７２ｂに入力されており、この比較器７２ａ，７２ｂにおいて、シフトレジスタ７１ａ，７１ｂの最終段（７１ａｆ，７１ｂｆ）の出力アドレスと、前述の垂直（Ｖ）カウント値及び水平（Ｈ）カウント値とが一致したと判断した場合に、論理積回路７５及びレジスタ（DMA Req. Trigger）７６を通じて欠陥画素タイミング（CCD Detect Timing）信号を出力するようになっている。
【００７０】
これと同時に、最終段のシフトレジスタ７１ａｆ（ＨＣＲｅｇ０），７１ｂｆ（ＶＣＲｅｇ０）には、その１つ前段のシフトレジスタ７１ａｆ−１（ＨＣＲｅｇ１），７１ｂｆ−１（ＶＣＲｅｇ１）の値がロードされる。また最前段のシフトレジスタ７１ａ１（ＨＣＲｅｇＮ），７１ｂ１（ＶＣＲｅｇＮ）へはその前段の１ｗｏｒｄ長のレジスタ（ＦＩＦＯ）７４を通じて得られた主メモリ２９内の欠陥画素アドレス（DMA Data）がロードされる。
【００７１】
ここで、欠陥画素アドレス（DMA Data）を主メモリ２９から受け入れるためのレジスタ（ＦＩＦＯ）７４を単一にのみ設ける場合、レジスタ（ＦＩＦＯ）７４内の値を、新たに受け入れた欠陥画素アドレス（DMA Data）の値に書き換える課程で様々に変化する。その課程において、レジスタ７４内の値が一瞬でも偶然に垂直（Ｖ）カウント値及び水平（Ｈ）カウント値と同じ値になったときには、比較器７２ａ，７２ｂは誤って肯定的な比較結果を出力してしまうおそれがある（ハザードの発生の問題）。
【００７２】
しかしながら、この実施の形態では、レジスタ７４と比較器７２ａ，７２ｂとの間にシフトレジスタ７１ａ，７１ｂを介在させているので、かかるハザードの発生の問題を解消できる。具体的には、比較器７２ａ，７２ｂへの入力はシフトレジスタ７１ａ，７１ｂの最終段のシフトレジスタ７１ａｆ，７１ｂｆからの信号が入力されるようになっており、レジスタ７４が直接比較器７２ａ，７２ｂに接続される訳ではない。そして、各シフトレジスタ７１ａ，７１ｂのシフトは、比較器７２ａ，７２ｂでの比較結果が肯定的に得られた場合（一致信号が出力される場合）に限り、この比較器７２ａ，７２ｂからの出力信号に基づいたタイミングで実行されるようになっている。この場合、比較器７２ａ，７２ｂで比較されるデータは常に最終段のシフトレジスタ７１ａｆ，７１ｂｆからのものに限られるので、レジスタ７４のデータがいつ書き換えられても、比較器７２ａ，７２ｂから一致信号が出力されることはなく、故にハザードの発生の問題を解消できる。
【００７３】
尚、シフトレジスタ７４からのロードが発生する際には、比較器７２ａ，７２ｂからの一致信号に応じて、レジスタ（DMA Req. Trigger）７６がＤＭＡコントローラ３２（図１参照）に対して主メモリ２９内の欠陥画素アドレス（DMA Data）についてのデータ転送要求（DMA Request to DMA Controller）を発生する。これに応答したＤＭＡによる実際のデータ転送は、次の欠陥画素のタイミングまでに終了していればよい。尚、図１６とは異なる例として、最終段のシフトレジスタ７１ａｆ，７１ｂｆより前段のシフトレジスタ７１ａ１〜７１ａｆ−１，７１ｂ１〜７１ｂｆ−１の動作をＤＭＡでのデータ転送の完了信号で制御すれば、ＤＭＡによる実際のデータ転送に関して、ある程度の時間的な余裕を稼ぐことができる。
【００７４】
また、ＤＭＡによるデータ転送を使用しない場合には、最終段のシフトレジスタ７１ａｆ，７１ｂｆからの出力データを、セレクタ７７ａ，７７ｂによって最前段の最前段のシフトレジスタ７１ａ１，７１ｂ１に切り換えて入力しておくことにより、シフトレジスタ７１ａ，７１ｂの段数分の数の欠陥画素を補正することが可能である。
【００７５】
いずれの場合も、アドレスデータは、シフトレジスタ７１ａ，７１ｂの最終段のシフトレジスタ７１ａｆ，７１ｂｆから遡って、主メモリ２９のアドレスデータまで発生時間順に並んでいることが必要となる。
【００７６】
このような構成により、容量の大きい主メモリ２９内に欠陥画素アドレスを格納することで、欠陥画素の総数が例えば１０００個程度に多大な場合にも容易に欠陥画素補正処理を行うことができる。そして、内部のレジスタ７４，７６は図１６のように最低２つだけでよいので、予想される欠陥画素の総数分だけの数のレジスタをＲＰＵ内部に持つ場合に比べて、回路規模を大幅に削減できる。
【００７７】
尚、画素補間・ガンマ処理部４２の色選択ブロック６３は、「Ｇ」信号の高域成分（Ｇｈ）のみを抜き出して色空間変換・色抑圧処理部４３に出力するようになっている。
【００７８】
次に、画素補間・ガンマ処理部４２のガンマ補正機能について説明する。この画素補間・ガンマ処理部４２では、図１７及び図１８の如く、入力データが１２ビット信号となる１個のガンマ補正テーブル７８（図１７）を、１０ビット×４（＝２１２−１０）個のガンマ補正用ルックアップテーブル７８ａ〜７８ｄ（図１８）として使用するようにしている。
【００７９】
即ち、アナログ信号処理回路２２でＡ／Ｄ変換されたＣＣＤ２１は、単一画素処理部４１を経て、画素補間・ガンマ処理部４２の画素補間処理を経た後に、このガンマ補正処理が行われるが、このガンマ補正処理に入力される入力データが１２ビット長のときには、この１２ビット長で入力された信号について、上述のガンマ補正テーブル７８がメモリサイズとして４０９６バイトの８ビット出力のものとして機能する一方、入力データが１０ビットのときは、入力データの各色毎に独立な１０ビット入力、８ビット出力の４個のガンマ補正用ルックアップテーブルとして機能するルックアップテーブル（ＬＵＴ）として機能するようになっている。
【００８０】
前段の画素補間処理を行った後、４色系の画素データの場合は一度に４色の入力データが与えられることになるため、ガンマ補正テーブル７８の入力ポートとして４つの入力ポートＩＰｏｒｔ１〜ＩＰｏｒｔ４が用意されており、これに対応してガンマ補正テーブル７８の出力ポートも４つの出力ポートＯＰｏｒｔ１〜ＯＰｏｒｔ４が用意されている。
【００８１】
一般に、入力データが１２ビット長の場合は、ルックアップテーブル７８は１２ビット長のものが必要とされる。ところで、１２ビット長の入力データから８ビット長の出力信号へ変換するためのルックアップテーブル７８は、各色毎の非線形性が除去できないという問題があるため、すべての色に対して１種類しか定義することができない。この場合に、４色系の画素データを扱う場合は、４種類の１２ビット長のルックアップテーブルを内蔵することが望ましいのであるが、この場合は回路規模が４倍となり、消費電力等の点で問題となる。
【００８２】
一方、常に１２ビット長の入力データが要求されるとは限らず、１０ビット長の入力データが適用される場合もある。この場合に、上記の１２ビット長の入力データの処理同様にデータを扱うとすれば、余剰ビットが発生し、非効率であった。
【００８３】
そこで、この実施の形態に係るディジタルスチルカメラでは、１２ビット長の入力データを扱う場合には、ルックアップテーブル７８が単一の１２ビット長ルックアップテーブルとして動作する一方、１０ビット長の入力データを扱う場合には、４色それぞれに独立な４種類のルックアップテーブル７８ａ〜７８ｄを使用することができるようになっている。
【００８４】
具体的には、メモリサイズとして４０９６バイトのルックアップテーブル７８を、予め４個の１０２４バイトのルックアップテーブル７８ａ〜７８ｄに分割して設計しておき、各ルックアップテーブル７８ａ〜７８ｄの入力側において、上位２ビットの上位入力端子（Upper）と、下位１０ビットの下位入力端子（Lower）とを形成するとともに、上位２ビットの上位入力端子（Upper）にはそれぞれセレクタ７９ａ〜７９ｄからの出力信号が入力されるように接続しておき、この各セレクタ７９ａ，７９ｂにおいて、各ルックアップテーブル７８ａ〜７８ｄのポート番号（０ｘ０〜０ｘ３）（Ａ入力端子）と入力データの上位２ビットの値（Ｂ入力端子）とを選択できるようになっている。そして、１２ビット長の入力データを扱う場合には、ＣＰＵ２４等による制御切換でセレクタ７９ａ〜７９ｄをＢ入力端子側（入力データの上位２ビットの値）に切り換える一方、１０ビット長の入力データを扱う場合には、同様にしてセレクタ７９ａ〜７９ｄをＡ入力端子側（各ルックアップテーブル７８ａ〜７８ｄのポート番号（０ｘ０〜０ｘ３））に切り換えるようになっている。
【００８５】
これにより、１２ビット長の入力データを扱う場合には、セレクタ７９ａ〜７９ｄのＢ入力端子側への切り換えにより入力データの上位２ビットの値が各ルックアップテーブル７８ａ〜７８ｄの上位２ビットの上位入力端子（Upper）に入力され、また入力データの下位１０ビットの値が各ルックアップテーブル７８ａ〜７８ｄの下位１０ビットの下位入力端子（Lower）にそのまま入力される。
【００８６】
一方、１０ビット長の入力データを扱う場合には、セレクタ７９ａ〜７９ｄのＡ入力端子側への切り換えにより入力データの各ルックアップテーブル７８ａ〜７８ｄのポート番号（０ｘ０〜０ｘ３）が各ルックアップテーブル７８ａ〜７８ｄの上位２ビットの上位入力端子（Upper）に入力され、また入力データの下位１０ビットの値が各ルックアップテーブル７８ａ〜７８ｄの下位１０ビットの下位入力端子（Lower）にそのまま入力される。
【００８７】
これにより、１０ビット長の入力データを扱う場合には、４色すべての色に対してそれぞれ１０ビット長（１０２４ビット）のルックアップテーブル７８ａ〜７８ｄを互いに独立に且つ任意に定義できる。
【００８８】
また、このガンマ補正処理における入力データは、図１４の如く、主メモリ２９内に格納されている画素データがＦＩＦＯ７３及びカラーサンプリングモジュール（Color Over Sampling Module）７４を通じてセレクタ７９ａ〜７９ｄに入力されるようになっており、これにより、一旦主メモリ２９内に格納した画像に対して、上記のリアルタイムによるガンマ補正処理と同様の処理をいつでも行えるようになっている（ポスト処理：Post Processing）。
【００８９】
尚、ここでのガンマ補正処理を、上述の画素補間処理より前段階で実行する場合は、入力ポートとして１つの入力ポート及び１つの出力ポートのみを容易するだけでよい。この場合は、かかる１つの入力ポート及び１つの出力ポートに対してセレクタ（図示せず）を設置し、このセレクタによりデータを４色に振り分けて、４種類のルックアップテーブル７８ａ〜７８ｄに対して入出力するようにすればよい。したがって、この場合でも、ルックアップテーブル７８（７８ａ〜７８ｄ）自体の構造は、図１７及び図１８に示したものと同様となる。
【００９０】
また、ここでは、１２ビット長と１０ビット長の両方の入力データに対応できるルックアップテーブルについて説明したが、必ずしもこれに限定されるものではなく、一般に入力データがＮビット長の場合は、このＮビット長の処理を行うガンマ補正テーブル７８として機能し、入力データが（Ｎ−２）ビット長のときは、４（＝２Ｎ−（Ｎ−２））個のガンマ補正用ルックアップテーブル７８ａ〜７８ｄとして機能するようにすればよい。これによって、それぞれの入力データのビット長に合わせて、余剰ビットが生じることなく、同一のルックアップテーブル７８（７８ａ〜７８ｄ）を有効に活用することができる。
【００９１】
＜色空間変換・色抑圧処理部４３の構成及び動作＞
この色空間変換・色抑圧処理部４３は、３色系のＲＧＢ−Ｂａｙｅｒまたは４色系の補色タイプ（ＹＭＣＧ系等）の画素データを、例えば、ＹＣｒＣｂ等の所定の色空間に変換する色空間変換機能と、さらに画像中の明部と暗部の色抑圧（クロマサプレス：偽色防止）を行う色抑圧機能とを備えたものである。
【００９２】
色空間変換・色抑圧処理部４３の色空間変換機能は、上述のように、３色系のＲＧＢ−Ｂａｙｅｒまたは４色系の補色タイプ（ＹＭＣＧ系等）の画素データを、例えば、ＹＣｒＣｂ等の所定の色空間に変換する機能であるが、特に３色系の処理と４色系の処理の両方を扱えるようになっており、さらに３色系の処理を行う場合に、４色目の色データ領域の信号を各画素の「特徴データ（ＫＥＹ信号）」として使用できるようにしたものである。
【００９３】
例えばＲＧＢ−Ｂａｙｅｒの場合、「Ｒ」，「Ｇ」，「Ｂ」の各８ビット長の信号に「特徴データ」としての８ビット長の信号を追加した合計３２（＝８×４）ビット長の信号を、４色信号として主メモリ２９内に配置し、リアルタイムプロセッシングユニット２３の処理過程で、「特徴データ」を各画素毎の例えば「強調成分」等の「特徴データ」として使用する。
【００９４】
一般に、３色系処理と４色系処理の両方を扱える処理回路においては、３色系の処理を行う場合に、３色の画素データを主メモリ内に詰めて格納するか、４色目のデータを無視して処理する方法が考えられるが、特に後者の場合は、主メモリや処理回路を有効に活用できないという問題がある旨は前述の通りである。そこで、この実施の形態に係るディジタルスチルカメラでは、４色処理の主メモリ２９の中に３色系の画素データを格納する場合に、４色目に相当する領域に各画素を画素毎に特徴づけるための「特徴データ」を併せて格納し、後に再びリアルタイムプロセッシングユニット２３での何らかの処理に使用したり、あるいは一旦主メモリ２９内に格納した後にＣＰＵ２４でのソフトウェア処理で活用したりすることによって、各種の非線型処理や画素単位処理を非常に高速に行うことが可能となるものである。
【００９５】
具体的には、この色空間変換・色抑圧処理部４３は、図１９の如く、画素補間・ガンマ処理部４２のガンマ補正テーブル７８から出力されてきた画素データの４色目の成分と、画素補間・ガンマ処理部４２の色選択ブロック６３から出力されてきた「Ｇ」信号の高域成分（Ｇｈ信号）とを選択するセレクタ８１と、このセレクタ８１で選択された側のデータが格納される特徴データ用ルックアップテーブル（8 to 8 LUT）８２と、画素補間・ガンマ処理部４２のガンマ補正テーブル７８から出力されてきた画素データの１色目から３色目までの各成分及びセレクタ８１で選択された側のデータに基づいてＹＣｒＣｂ等の輝度成分（ＹＣｒＣｂ空間においては「Ｙ」成分）を有する所定の３成分色空間への変換を行う色空間変換回路８３と、ＹＣｒＣｂ等の所定の３成分色空間のうちの輝度成分（「Ｙ」成分）のみが入力される輝度用ルックアップテーブル（8 to 8 LUT）８４と、色空間変換回路８３からの３成分（例えば「Ｙ」「Ｃｒ」「Ｃｂ」）が入力されて当該３成分によりＣＣＤ２１の撮像時の露出決定（オートエクスポージャー）のための評価値を出力する露出決定評価器（AE Evaluation Value Detector）８５と、露出決定評価器８５から出力された３成分（例えば「Ｙ」「Ｃｒ」「Ｃｂ」）のそれぞれに対して輝度用ルックアップテーブル８４内の輝度データを用いて変調する３個の乗算器８６ａ〜８６ｃと、各乗算器８６ａ〜８６ｃを経由した３成分（例えば「Ｙ」「Ｃｒ」「Ｃｂ」）のそれぞれに対して特徴データ用ルックアップテーブル８２内で変換された特徴データを用いて変調する３個の乗算器８７ａ〜８７ｃとを備える。
【００９６】
このように、セレクタ８１で選択した４色目の色成分を特徴データ用ルックアップテーブル８２に特徴データとして入力し、この特徴データを用いて３個の画素データのそれぞれの変調を容易に行うことができる。これにより、例えば所定の空間フィルタを設け、この空間フィルタにより特定の周波数（高周波成分等）に注目した値を４色目のデータとして抽出し、その特定の周波数の値が所定のスレッシュレベルより大きい場合等に色信号抑圧等の様々な例外的画像処理を容易に実行できる。あるいは、図１９には図示していないが、特徴データに所定の係数を積算した後、加算器を用いて３個の画素データに加算するようなことも容易に可能となる。さらに、図１９には図示していないが、画素データの３成分（例えば「Ｙ」「Ｃｒ」「Ｃｂ」）に加えて、特徴データ（４色目の信号）をメインバス２８を通じて主メモリ２９に格納することが可能となり、この一旦主メモリ２９に格納されたデータ中の特徴データについていつでも容易に様々な例外的画像処理を行うことができる。この場合は、ＣＰＵ２４でのソフトウェア処理で活用してもよいし、また、４色目のデータとして主メモリ２９内に一旦格納した後に再度リアルタイムプロセッシングユニット２３で活用してもよいものである。
【００９７】
また、上述のように、図２０の如く、セレクタ８１での選択動作により、ガンマ補正テーブル７８からの入力データの４色目の信号（「色４」）と、色選択ブロック６３より出力されるグリーン（Ｇ）の高域成分（Ｇｈ信号）を特徴データ用ルックアップテーブル８２に入力し、ここからの出力を露出決定評価器８５から出力された３成分（例えば「Ｙ」「Ｃｒ」「Ｃｂ」）のそれぞれに対し乗算するかどうかを決定するようにしているので、実際に搭載するＣＣＤ２１の光学的特性に適するようにセレクタ８１での選択を行い、上述のポスト処理（Post Processing）における「Ｙ」または「Ｃｒ」「Ｃｂ」の画素毎の変調等の処理を、ＣＰＵ２４でのソフトウェア処理に依らずに高速に行うことができる。
【００９８】
また、色選択ブロック（画素補間ブロック）６３から出力される「Ｇｈ」信号をセレクタ８１ａで選択して色空間変換回路８３の４色目に入力できるようにしている。これにより、例えばＲＧＢ−Ｂａｙｅｒのような３色系画素配列のデータ処理時には、「Ｇｈ」信号の成分を色空間変換回路８３において各色成分に任意に加算することができる。もともと、グリーン（Ｇ）の画素成分は、「Ｙ（輝度）（＝０．６Ｇ＋０．３Ｒ＋０．１Ｂ）」信号の生成過程において、６割の重み付けがなされるため、輝度表示への寄与率が高い。そして、「Ｇ」成分の高域信号である「Ｇｈ」信号は、「Ｙ（輝度）」信号の高域成分としてそのまま使用することも可能である。したがって、この「Ｇｈ」信号を各色成分へ容易に加算することができる。例えば、ＲＧＢ−Ｂａｙｅｒの場合、「Ｒ」，「Ｇ」，「Ｂ」の各成分に「Ｇｈ」信号の成分を一種の輝度特性として一定の係数で足し込めば、そのまま各成分の輝度の調整が容易に可能となる。
【００９９】
ここで、一般に、Ｇｈ等の高域成分を「Ｙ」信号に独立加算すると、ゲイン調整用の乗算器とＹ信号等への加算器が独立に必要となってしまい、回路規模が増大してしまう。その一方、４色系の処理も行なえる色空間変換回路の場合、この色空間変換回路が４成分の入力機能を持っているのが常であるが、ＲＧＢ−Ｂａｙｅｒのような３色系画素配列のデータ処理に対しては、４色目の係数は通常すべて「０」に設定され使用しておらず、余剰な入力端子となって非効率である。このことを考慮し、この実施の形態では、「Ｇｈ」信号をこの４色目の色成分としてセレクタ８１で選択的に入力できるようにすることによって、ＲＧＢ−Ｂａｙｅｒのような３色系画素配列のデータ処理においても、乗算器，加算器を追加せずに、「Ｇｈ」信号のゲイン調整と各色成分への加算が達成できる。
【０１００】
色空間変換・色抑圧処理部４３の輝度用ルックアップテーブル（8 to 8 LUT）８４は、色空間変換回路８３から出力される「Ｙ（輝度成分）」「Ｃｒ（第一色信号）」「Ｃｂ（第二色信号）」の色空間領域の信号において、特に「Ｙ」信号のみが入力され、その出力を露出決定評価器８５からの「Ｙ」，「Ｃｒ」，「Ｃｂ」の各成分に対して乗算するかどうかを決定する機能を有している。
【０１０１】
そして、特に「Ｃｒ」信号及び「Ｃｂ」信号の乗算をＯＮにし、「Ｙ」信号の乗算をＯＦＦにした場合は、暗部と明部の色抑圧（クロマサプレス）等を行うことができる（色抑圧機能）ものである。
【０１０２】
一般に、画像中の暗部は、様々なノイズの影響を受けやすい性質があり、故に暗部ではできるだけ発色を抑制することが自然な画質を出力することにつながる。一方、画像中の明部は、これを撮像したＣＣＤ２１やその他の種々のハードウェア部品の特性に応じて変調がかかりやすい部分であり、ホワイトバランスが狂いやすい部分であるため、やはりできるだけ発色を抑制することが自然な画質を出力することに寄与する。これらのことを考慮し、画像中の明部と暗部において発色を抑制するのが色抑圧（クロマサプレス）機能の目的である。尚、図２１はクロマサプレス処理時の動作例を示すブロック図である。ここでは、色空間変換回路８３中に示した各演算関数に基づいて「色１」〜「色４」までの４色の成分を「Ｙ」，「Ｃｒ」，「Ｃｂ」の各成分に変換した後、「Ｙ」信号のみを輝度用ルックアップテーブル８４に留保し、これを各乗算器８６ａ〜８６ｃで「Ｙ」以外の各成分「Ｃｒ」，「Ｃｂ」に乗算している。
【０１０３】
一般に、例えばクロマサプレス処理の場合、画像中の明部のクロマサプレスを行うためには、「Ｙ」信号を一定のしきい値と比較し、「Ｙ」信号がある一定レベルを超えたところで「Ｙ」信号の傾きを変更するようにした演算回路を使用する方法がある。また、画像中の暗部でのクロマサプレスを行う場合、明部の回路と独立にサプレス回路を追加して設置することが多い。しかしながら、このような一般的な方法では、回路点数が多大となり、回路構成の複雑化によりコストが上昇し、また回路の面積効率も良いものとは言えない。
【０１０４】
これに対し、この実施の形態に係るディジタルスチルカメラでは、「Ｙ」信号を８ビット信号として輝度用ルックアップテーブル（8 to 8 LUT）８４に入力し、ここから８ビット出力信号として出力するようにしているので、「Ｙ」信号，「Ｃｒ」信号，「Ｃｂ」信号にのそれぞれに対して独立に乗算することができる。これにより、画像中の暗部及び明部のクロマサプレスを単一の回路で行うことができるようになる。
【０１０５】
ここで、このクロマサプレス処理について、例えば、ＣＰＵ２４でのソフトウェア処理でＧｈ信号等の高域信号を所定のしきい値と比較し、高域信号がその閾値を超えていればクロマサプレスを行うようにする場合を考えると、このＣＰＵ２４での処理ではクロマサプレスの方法が固定され、特定の画像で色の付くべき領域に色がつかない等の不具合を発生していた。これらの場合はソフトウェアで色の抑圧を行なう等の方法で対応していたが、処理時間が非常に長くなってしまい問題となっていた。
【０１０６】
しかしながら、この実施の形態では、一旦主メモリ２９内に画像を格納し、ＣＰＵ２４等により画素毎にで特徴データを付加して再び主メモリ２９内に格納した後、さらにリアルタイムプロセッシングユニット２３での処理を行うことができるようになっているので、一つの回路で状況に応じてＧｈ成分によるクロマサプレスとソフトウェアで生成された特徴データ信号によるクロマサプレスをリアルタイム処理にてスピードの低下を発生させずに使用することができる。
【０１０７】
また、色空間変換回路８３からの「Ｙ」信号の乗算のみをＯＮにすることで、「Ｙ」信号に対してのみガンマ変換を行うことができるものである（ガンマ変換機能）。ここで、図２２はガンマ変換処理時の動作を示すブロック図である。ここでは、色空間変換回路８３中に示した各演算式に基づいて「色１」〜「色４」までの４色の成分を「Ｙ」，「Ｃｒ」，「Ｃｂ」の各成分に変換した後、「Ｙ」信号のみを輝度用ルックアップテーブル８４に留保し、これを各乗算器８６ａ〜８６ｃで各成分「Ｙ」，「Ｃｒ」，「Ｃｂ」のすべてにそれぞれ乗算している。
【０１０８】
そして、かかるガンマ変換処理と上述のクロマサプレス処理とを同一の回路で行っているので、回路構成は非常に簡単なものでよい。特に、２個の輝度用ルックアップテーブル（8 to 8 LUT）８４を独立に持てば、色抑圧機能とガンマ変換機能の両者を同時に発揮することができる。一般のリアルタイムプロセッシングユニットでは、この「クロマサプレス」と「ガンマ補正」の２つの機能を持たせる場合はこれらの機能を同時に使用できないという不都合が生じるが、この実施の形態に係るディジタルスチルカメラのリアルタイムプロセッシングユニット２３では、一旦リアルタイムプロセッシングユニット２３で処理された画素データについて、主メモリ２９及びメインバス２８を通じてダイレクトメモリアクセス（ＤＭＡ）により何度でも繰り返しリアルタイムプロセッシングユニット２３を通過させることができるので、それぞれを別のパスに分けて使用することで、不都合なく処理することができる。
【０１０９】
尚、ここでは「Ｙ」，「Ｃｒ」，「Ｃｂ」の色空間信号に対する処理を説明したが、これに限るものではなく、例外的画像処理によりこれと全く異なる色空間信号に対しても、全く同様に実行することができる。
【０１１０】
色空間変換・色抑圧処理部４３の露出決定評価器８５は、シャッタスピードや絞りの大きさ等を決定する際の前提として、実際の画像データの適正輝度に基づいて露出レベルの決定を行うためのもので、１フレームの画像を複数のブロックに区分けし、ブロック同士の輝度（明るさ）を平準化するための輝度評価を行うものである。
【０１１１】
一般に、露出決定の評価を行う場合、フレーム中の中心に位置する長方形領域のブロックとその周辺部のブロックの「Ｙ（輝度）」信号（または「Ｇ（緑色成分）」信号）の平均値を評価値とする方法（第一の露出決定評価方法：図２３参照）がある。通常、中央部分の画像は被写体が映し出されるために比較的露出決定を厳密に行いたいのに対して、周辺部分については画像中の重要度が低いと予想されるために中央部分に比べて露出決定の厳密性が要求されないことが多い。このような場合には、この第一の露出決定評価方法が有効となる。
【０１１２】
この他、全領域を例えば５×５に等間隔に区切った各ブロックの各々の「Ｙ」信号（または「Ｇ」信号）の平均値を露出決定に使用する評価値とする方法（第二の露出決定評価方法：図２４参照）もある。
【０１１３】
しかしながら、中心位置とその周囲のブロックをそれぞれ平均して行う第一の露出決定評価方法では、中央重点露出決定と全体的な逆光補正は可能であるが、よりきめ細かな露出決定アルゴリズムの使用は難しい。また、等間隔のブロック分割を行う第二の露出決定評価方法では、中央重点の露出決定を行なうときとスポット的な露出決定を行なうときでそれぞれ異なるブロックの合成処理が必要となり、演算に時間がかかる。また、ブロック境界を最適な位置に設定する際、すべてのブロックの面積が同一でなければならないという制約があるため、かかる制約を満たすためにはブロックの分割数が増大しがちであり、この場合は回路規模が大きくなって消費電力を増大したり、露出決定評価の処理時間が多大となってしまう。
【０１１４】
これらのことを考慮し、この実施の形態に係るディジタルスチルカメラの露出決定評価器８５は、複数のブロックに分割する際に、図２３及び図２４の如く、各ブロックの境界の位置を任意に変更可能としたものである。
【０１１５】
ここで、図２３は中心位置とその周囲のそれぞれのブロックと同士の境界線を任意の位置に設定した場合の図、図２４は各ブロックを同一面積に設定する場合の図である。
【０１１６】
即ち、露出決定の領域を少なくとも３×３以上のブロックに分割し、各ブロックの境界位置を自由に移動可能としており、例えば図２３の場合は、各ブロック同士の境界線を全く任意の位置に設定している。また図２４の場合は、同図中の太線の部分のみを確定することで、細線のように等間隔のブロックを設定する。これらの方法により、少ないブロック数で最適なブロック境界を選択することが可能となり、演算時間の増加を抑えつつ、露出決定の精度を向上させることができる。
【０１１７】
具体的には、この露出決定評価器８５においては、リアルタイムプロセッシングユニット２３のを駆動制御するためのドライバソフトウェアプログラムによって、ＣＣＤ２１の光学的特性に応じた最適なブロック同士の間の境界線を任意の位置に設定しておき、かかる境界線によって区画される各ブロック毎にすべての画素の「Ｙ」信号等の輝度値を積分演算し、これらの各ブロック毎の積分値を評価の対象とする。具体的な露出決定評価器８５のハードウェア構成としては、カウンター及び加算器等が内蔵されて構成される。あるいは、ディジタルスチルカメラのユニットの表面に何らかのモード切換用の入力釦を設けておき、この入力釦によりブロック同士の間の境界線をいくつかのモード設定の位置に変更できるようにドライバソフトウェアプログラムを設定しておけば、ユーザーの意思により、状況に応じて最適な露出決定領域を選択できる。
【０１１８】
＜空間フィルタ・コアリング処理部４４の構成及び動作＞
図２５は空間フィルタ・コアリング処理部４４の内部構成を示すブロック図である。ここでは、色空間変換・色抑圧処理部４３の各乗算器８７ａ〜８７ｃからの色空間信号（「Ｙ」，「Ｃｒ」，「Ｃｂ」）を、空間フィルタ９１（R00〜R48）に対して複数のラインメモリ（2048 Variable Length FIFO）９２ａ〜９２ｄを用いながら格納し、その後に輪郭補正処理を行うものである。
【０１１９】
このように、輪郭補正処理を行う場合に、この実施の形態では、各成分の信号（「Ｙ」，「Ｃｒ」，「Ｃｂ」）と、これを強調した高周波成分の信号に分解して取り扱うことを可能としており、これにより各データにおけるビット長を小さくすることを可能としている。この理由を説明する。
【０１２０】
一般に、空間フィルタでの処理は、単に任意設定可能な一定の空間フィルタを通すだけであったが、この方法では、２つの問題点が存在する。
【０１２１】
まず、一般的なフィルタ処理を行なう際には、図２６の如く、通常、中心画素の係数の絶対値Ｓｏは大きな値となるが、この中心画素から周辺に遠ざかるに従って絶対値Ｓｖが小さくなる。これは、輪郭補正処理を行った後のデータでも同様である（図２７）。しかし空間フィルタの汎用性を確保しようとすると、周辺画素のビット長を小さくすることはできない。この場合、すべての画素の係数のビット長を中心画素のビット長に合わせて長くする必要があり、ほとんどの場合、用意したビット長を有効に使用することとはならなくなってしまう。
【０１２２】
そこで、この実施の形態では、空間フィルタ９１（図２５）の出力と、中心画素の元データに各々係数を乗算し、その後で加算する構成とすることにより、各画素のビット長を増加することなく、必要十分なフィルタ演算を実行することを可能としている。
【０１２３】
具体的には、「Ｙ」，「Ｃｒ」，「Ｃｂ」の色空間信号において輪郭補正処理を行う場合に、「Ｃｒ」成分及び「Ｃｂ」成分といった各色成分に対しては輪郭補正処理を行わず、「Ｙ（輝度）」成分のみに対して輪郭補正処理を行うようにすれば、画像のコントラストが十分に強調され、これをもって輪郭を強調することができる。即ち、図２５において、空間フィルタ９１内の中心画素（R24）の「Ｙ」成分のみを配線９３を通じて取り出し、乗算器９４で所定の任意の係数を乗算する。一方、空間フィルタ９１内の１２ビット長の中心画素（R24）の全成分の合計値を配線９６で取り出し、これらに乗算器９７で所定の任意の係数（Ratio）を乗算して、非線形処理（コアリング）を施すための第一コアリングファンクション（Coring Function）ブロック９８に入力する。そして、この第一コアリングファンクションブロック９８からの出力（色線分の合計値）と、乗算器９４で所定の係数が乗算された「Ｙ」成分を加算器９９により加算して、中心画素（R24）の輪郭強調の値を算出し、他方、色信号（「Ｃｒ」，「Ｃｂ」）そのものについては、配線１０１，１０２を通じてこれを取り出した後、第二及び第三コアリングファンクションブロック１０３，１０４に格納した後、加算器９９からの輪郭強調の値と併せて出力部４５へ送出される。尚、これら要素９４，９７，９９を総称して輪郭補正処理部と称する。
【０１２４】
また、これと同時に、各成分の信号（「Ｙ（１色目の成分）」、「Ｃｒ（２色目の成分）」及び「Ｃｂ（３色目の成分）」）は配線１０５を通じて出力部４５へ送出される。この際、「Ｙ」成分、「Ｃｒ」成分、「Ｃｂ」成分及び乗算器９７からの出力値（空間フィルタ９１からの出力値自身）のいずれかを特徴データ（ＫＥＹ信号）として扱うことを可能とするために、セレクタ１０５ａによって４色目の成分として選択して出力できるようになっている。
【０１２５】
このように、この実施の形態では、空間フィルタ９１（図２５）の出力と、中心画素の元データに各々係数を乗算器９４，９７で乗算し、その後で加算器９９で加算する構成とすることにより、各画素のビット長を増加することなく、必要十分なフィルタ演算を実行することが可能となる。また、元信号と高域信号が分離できるため、この高域信号に対し「コアリング」という非線形演算を施すことにより、ノイズの増加を抑えながら輪郭強調を行なうことができる。
【０１２６】
ここで、色信号（「Ｃｒ」，「Ｃｂ」）と輝度信号（「Ｙ」）を独立に処理し、最後に加算してビデオ信号等を作成する方法も考えられ、この場合、輝度信号（「Ｙ」）は輪郭強調を行われた後でガンマ変換を行なうことが多い。しかし、デジタルカメラの信号処理は、入力信号として１０ビット〜１２ビットが使用されるため、ガンマ変換を処理の当初に行なってメモリ上のビット長を削減し、メモリ容量を削減すること、及びデジタル処理途中のビット長を削減し、回路規模を小さくすることが一般的に行なわれる。この形では輪郭補正処理を、ガンマ変換の後で行なうことが必要となってくる。
【０１２７】
一般に、「Ｙ」成分の高周波数成分を抽出する場合、通常であれば高周波フィルタである空間フィルタ９１のみを用いて実行する方法も考えられるが、この「Ｙ」成分を用いて空間フィルタ９１内の１２ビット長の各要素（例えばR24）を輪郭強調する場合は、各要素自体にノイズが重畳していた場合、かかるノイズ成分も一緒に輪郭強調されてしまうおそれがあり、このままではノイズが目立った不自然な画像に変質してしまうおそれがある。
【０１２８】
そこで、ガンマ補正を行った後の信号に対して輪郭強調をする際に、高域成分がある一定レベルを超えたときのみに輪郭強調を行なう非線形演算（コアリング）が必要となる。ただし、ガンマ変換後の「Ｙ」の高域信号に対してコアリングを行なうと、低輝度域では振幅が相対的に大きくなっているため、低輝度域の高域成分により強く輪郭強調が行われる傾向となる。しかし、一方、実際に、強調が必要な信号は中輝度域から高輝度域に多く含まれ、低輝度域の高域成分はノイズが支配的であるため、空間フィルタ９１を輪郭強調等に使用した場合には、すべての周波数成分を線形演算すると、ノイズの多い画像では小レベルのノイズを増幅してしまい、ノイズばかり強調されて、必要な信号が強調されずに見苦しくなる。
【０１２９】
ところで、このノイズは一般にコントラストは少ないが、非常に小さく現れるため高周波成分に偏って現れることが多い。そこで、この実施の形態のディジタルスチルカメラでは、コントラストの小さい部分については強調処理をできるだけ行わないように、基づいての信号をそのまま使用する一方、コントラストが一定水準以上の場合に強調処理を積極的に実行することが望ましいと言える。そこで、第一コアリングファンクション９８においては、図２８及び図２９中の符号９８内の非線形演算関数の如く、入力値に対して非線形な出力値を出力し、特に絶対値が所定のしきい値αより少ない部分についてはこれを無視するようにすることで、低輝度域にはあまり強調を加えず、中輝度、高輝度域に強く強調を行ない、ノイズ成分を除去した形で画像をはっきりと補正することが可能になる。
【０１３０】
そして、このようにガンマ変換後の高域成分にコアリング処理を行なう場合に、特に、この実施の形態のディジタルスチルカメラでは、図２８の如く、第一コアリングファンクション９８に対する入力値（高周波信号）について、「Ｙ」信号自身のガンマ特性を用いて変換したり、あるいは図２９の如く、コアリングのしきい値α（Thresh Level）自体を「Ｙ」信号自身のガンマ逆特性を用いて変換することにより、ガンマ変換前にコアリングを行なった場合と等価な処理を行なうことを可能としている。具体的には、ノイズの目立ちにくい明るい部分（「Ｙ」信号の値が大きい場合）は、入力値に対してしきい値αの幅を相対的に小さくなるよう設定し、輪郭強調がかかりやすくする一方、ノイズの目立ちやすい暗い部分（「Ｙ」信号の値が小さい場合）では入力値に対してしきい値αの幅を相対的に大きくなるよう設定することで、輪郭強調がかかりにくくする。そして、このような逆変換特性を過補正気味に設定することで、低輝度域にはあまり強調を加えず、中輝度、高輝度域に強く強調を行ない、画像をよりはっきりと補正することが可能になる。
【０１３１】
尚、図２８の例では、「Ｙ」信号（Ｙ０）の値によって逆ガンマ効果ブロック１０６で１倍から４倍までの値を正の一次関数（比率変換関数）により線形的に演算選出し、これを乗算器１０７によって入力値に乗算した後、セレクタ１０８によってこれを選択して第一コアリングファンクション９８に入力値（ブロック内の非線形演算関数図の横軸）として入力し、これに対応する縦軸の値を出力するようになっている。これにより、コアリングでのしきい値αに対する入力値の有効／無効の幅を変化させることができる。尚、同図中の符号１０９ａ，１０９ｂはリミッタである。
【０１３２】
また、図２９「Ｙ」信号（Ｙ０）の値によって逆ガンマ効果ブロック１１１で１倍から４倍までの値を負の一次関数（比率変換関数）により線形的に演算選出し、これをコアリングの初期しきい値α０（threshold Level）に対して乗算器１１２で乗算した後、セレクタ１１３によってこれを選択して第一コアリングファンクション９８でのコアリングの実際のしきい値αとして設定することで、コアリングでの入力値に対するしきい値αの幅を変化させることができる。尚、同図中の符号１１４ａ，１１４ｂはリミッタである。
【０１３３】
尚、逆ガンマ効果ブロック１０６，１１１では、線形的な変換関数を用いているが、非線形であっても差し支えない。
【０１３４】
また、図２５においては、色信号（「Ｃｒ」，「Ｃｂ」）についてもそれぞれ第二及び第三コアリングファンクション１０３，１０４に入力されるようになっているが、ここでのコアリング処理は一般的な非線形関数によって処理されるため、ここでは説明を省略する。
【０１３５】
＜ＣＣＤ２１としてインターレースタイプのものを使用した場合のリアルタイムプロセッシングユニット２３の構成及び動作＞
上述のように、このディジタルスチルカメラは、撮像素子であるＣＣＤ２１として、インターレースタイプのものとプログレッシブタイプのものを選択して使用できるようになっている。
【０１３６】
一般に、プログレッシブタイプのＣＣＤ２１を使用する場合には、数ライン分のラインメモリを用意すれば、ＣＣＤ２１からの画素データの読み出しと平行して、画素補間、色変換及び輪郭強調などの一般画像処理を同時に行ない、ＣＣＤ２１からのデータ読み出しとほぼ同時にこれらの一般画像処理を終了させることができる。
【０１３７】
しかしながら、インターレースタイプのＣＣＤ２１では、偶数ラインのみのフィールド（偶数フィールド）と奇数ラインのみのフィールド（奇数フィールド）が交互に出力されてリアルタイムプロセッシングユニット２３に与えられる。この場合に、図３０の如く、インターレースタイプのＣＣＤ２１で撮像された画像を処理するために、両方のフィールドを１フレームの画像に合成して主メモリ２９内に格納した後に、初めて種々の画像処理の開始を行う方法が考えられる。しかしながら、この場合は、ＣＣＤ２１からの画像データの格納のために主メモリ２９内に１フレーム中の全画素分の格納領域が使用されてしまい、回路的に大規模となる上、消費電力を多く必要としていた。また、読み出し終了まで画像処理を開始することができないため、撮影に時間がかかっていた。
【０１３８】
このことを考慮し、この実施の形態にかかるディジタルスチルカメラでは、図３１の如く、インターレースタイプのＣＣＤ２１の最初のフィールド（奇数フィールドまたは偶数フィールドのうちの一方：以下「第一フィールド」と称す）を主メモリ２９内に格納し、２番目のフィールド（奇数フィールドまたは偶数フィールドのうちの他方：以下「第二フィールド」と称す）の読み出しと同時に、主メモリ２９から第一フィールドのデータをダイレクトメモリアクセスで読み出してリアルタイムプロセッシングユニット２３に入力するようにしている。これにより、インターレースタイプのＣＣＤ２１からの第二フィールドの読み出し期間中に、画素補間、色変換及び輪郭強調等の一般画像処理を同時に行なうことができ、第二フィールドの読み出し終了と同時に一般画像処理を終了させることができる。また、主メモリ２９内においてＣＣＤ２１からのデータ格納のために容易する格納領域は、１フィールド分（１／２フレーム分）のみで良いので、主メモリ２９内の必要容量を２分の１に低減できる。
【０１３９】
＜リアルタイムプロセッシングユニット２３内のラインメモリ６１ａ，６１ｂ，９２ａ〜９２ｄの画素数を超える水平画素数を有したＣＣＤ２１を使用する場合＞
このディジタルスチルカメラにおいて、ＣＣＤ２１については、前述の通り、様々なタイプのものを選択して使用するようになっている。この場合、ＣＣＤ２１の水平画素数が、図１４及び図２５に示したラインメモリ６１ａ，６１ｂ，９２ａ〜９２ｄの画素数を超える場合も考えられる。かかる大規模な素子配列を有するＣＣＤ２１に対しては、このＣＣＤ２１のデータを一度主メモリ２９内に蓄積し、図３２のように、画像フレーム１１８中の画像を水平方向に複数ブロック１１９に分割して、ダイレクトメモリアクセスでリアルタイムプロセッシングユニット２３に入力することにより、高速処理を行うことが可能になっている。
【０１４０】
一般に、ＣＣＤ２１からの画像についてのリアルタイム処理（一般画像処理）においては、ほとんどの処理において上下ラインの画素を参照する必要があるため、水平の画素数分のラインメモリが（複数）必要であった。したがって、ＣＣＤ２１からの画像を直接リアルタイムプロセッシングユニット２３で処理することとすると、処理できるＣＣＤ２１の水平の画素サイズは、ハードウェアとして作り込まれたラインメモリ６１ａ，６１ｂ，９２ａ〜９２ｄの画素数によって制限を受けることになる。ところが、集積回路においてラインメモリ６１ａ，６１ｂ，９２ａ〜９２ｄは非常に大きな面積を占めるため、ＣＣＤ２１の駆動回路に比較してリアルタイムプロセッシングユニット２３の面積を多大に確保することが困難であり、その結果、処理可能な水平画素数はどうしても小さくなってしまい、大画素のＣＣＤ２１の使用が困難であった。
【０１４１】
これに対してこの実施の形態にかかるディジタルスチルカメラでは、一度主メモリ２９内に格納したデータを、ダイレクトメモリアクセスでリアルタイムプロセッシングユニット２３に入力して処理するようになっているため、画像フレーム１１８を水平方向に複数のブロック１１９に分割してリアルタイムプロセッシングユニット２３でのリアルタイム処理を行なうことにより、上記のＣＣＤ２１の水平画素サイズの制限は発生しない。したがって、主メモリ２９の容量があればいくらでも大きなＣＣＤ２１の処理が可能となり、ＣＣＤ２１に対するリアルタイムプロセッシングユニット２３の汎用性が向上する。
【０１４２】
以上の実施の形態では、主としてディジタルスチルカメラを例にあげて説明したが、他の画像入力装置の画像処理回路としても容易に適用可能である。
【０１４３】
また、図２５に示した空間フィルタ・コアリング処理部４４では、「Ｙ」成分、「Ｃｒ」成分、「Ｃｂ」成分及び乗算器９７からの出力値（空間フィルタ９１からの出力値自身）のいずれかのうちのひとつを、セレクタ１０５ａによって４色目のみの成分として選択するようにしていたが、同様のセレクタを他の出力ラインにも設置し、４色目だけでなく他の３色のそれぞれの成分をもそれ以外の成分に自由に切り換えられるように構成してもよい。このようにすることにより、さらに出力成分を自由に変更でき、画像処理回路としての汎用性を向上できる。
【図面の簡単な説明】
【０１４４】
【図１】この発明の一の実施の形態に係るディジタルスチルカメラの全体構成の概略を示すブロック図である。
【図２】この発明の一の実施の形態に係るディジタルスチルカメラ中のリアルタイムプロセッシングユニットとＣＰＵとのデータの受け渡しに係る構成を示すブロック図である。
【図３】この発明の一の実施の形態に係るディジタルスチルカメラ中のリアルタイムプロセッシングユニットの内部構成の概略を示すブロック図である。
【図４】リアルタイムプロセッシングユニット中の単一画素処理部の内部構造を示すブロック図である。
【図５】累積加算処理時の単一画素処理部の処理構造を示す図である。
【図６】循環加算処理時の単一画素処理部の処理構造を示す図である。
【図７】画像ライン中にシェーディングが発生した状態を示す輝度の分布図である。
【図８】ブロック単位でシェーディング補正処理を行った場合に輝度段差が生じた状態を示す輝度の分布図である。
【図９】シェーディング補正処理時の単一画素処理部の処理構造を示す図である。
【図１０】ＲＧＢ−Ｂａｙｅｒの画素配列の例を示す図である。
【図１１】ＹＭＣＧ系補色タイプの画素配列を示す図である。
【図１２】一般的な画素配列を示す図である。
【図１３】４色系画素配列中の一般的な画素補間の動作を示す図である。
【図１４】リアルタイムプロセッシングユニット中の画素補間・ガンマ処理部の内部構造を示すブロック図である。
【図１５】リアルタイムプロセッシングユニット中の画素補間・ガンマ処理部におけるＡＦ評価機能を示したブロック図である。
【図１６】リアルタイムプロセッシングユニット中の画素補間・ガンマ処理部における欠陥画素補正機能を示したブロック図である。
【図１７】リアルタイムプロセッシングユニット中の画素補間・ガンマ処理部におけるガンマ補正テーブルを示す図である。
【図１８】リアルタイムプロセッシングユニット中の画素補間・ガンマ処理部におけるガンマ補正テーブルが４つのルックアップテーブルに分割された状態を示す図である。
【図１９】リアルタイムプロセッシングユニット中の色空間変換・色抑圧処理部を示すブロック図である。
【図２０】「Ｇｈ」信号と４色目の信号とを選択してクロマサプレス処理等の所定の処理動作を行う状態を示すブロック図である。
【図２１】「Ｙ」信号に基づくクロマサプレス処理時の動作を示すブロック図である。
【図２２】「Ｙ」信号に基づくガンマ変換処理時の動作を示すブロック図である。
【図２３】画像をブロック毎に等間隔に分割した状態を示す図である。
【図２４】画像をブロック毎に最適化して分割した状態を示す図である。
【図２５】この発明の一の実施の形態に係るディジタルスチルカメラ中の空間フィルタ・コアリング処理部の内部構成を示すブロック図である。
【図２６】輪郭補正処理前の画像の輝度分布例を示す分布図である。
【図２７】輪郭補正処理後の画像の輝度分布例を示す分布図である。
【図２８】コアリングファンクションの変調機能を示す機能ブロック図である。
【図２９】コアリングファンクションの変調機能を示す機能ブロック図である。
【図３０】インターレースタイプのＣＣＤを使用する場合のリアルタイムプロセッシングユニットに対するデータ入力動作についての従来例を示すブロック図である。
【図３１】インターレースタイプのＣＣＤを使用する場合のこの発明の一の実施の形態に係るディジタルスチルカメラにおけるリアルタイムプロセッシングユニットに対するデータ入力動作を示すブロック図である。
【図３２】画面を複数のブロックに分割して処理する動作を示す図である。
【図３３】従来のディジタルスチルカメラの全体構成を示すブロック図である。
【図３４】リアルタイムプロセッシングユニットでリアルタイム処理を行う動作を示すブロック図である。
【図３５】従来においてＣＰＵにより例外的画像処理を行う場合の動作を示すブロック図である。
【符号の説明】
【０１４５】
２１  ＣＣＤ
２２ アナログ信号処理回路
２３ リアルタイムプロセッシングユニット
２４  ＣＰＵ
２６ 外部インターフェース
２７ ファインダー
２８ メインバス
２９ 主メモリ
３０ メモリカード
３２ ＤＭＡコントローラ
４１ 単一画素処理部
４２ 画素補間・ガンマ処理部
４３ 色空間変換・色抑圧処理部
４４ 空間フィルタ・コアリング処理部
４５ リサイズ処理部
５２ シフタ
５３ 第一セレクタ
５４ 第一乗算器
５５ 第二セレクタ
５６ 第二乗算器
５７ 加算器
５８ リミッタ
６１ａ，６１ｂ，９２ａ〜９２ｄ ラインメモリ
６２ ピクセルレジスタ
６３ 色選択ブロック
６４ セレクタ
６５ 演算回路
６５ｂ 入力端子
６６ バッファ
６７ 加算器
６８ 累積加算器
７１ ガンマ補正テーブル
７１ａ〜７１ｄ シフトレジスタ
７２ａ，７２ｂ  比較器
７３ 欠陥画素タイミング発生回路
７４，７６ レジスタ
７５ 論理積回路
７７ａ，７７ｂ セレクタ
７８ ガンマ補正テーブル
７８ａ〜７８ｄ  ルックアップテーブル
７９ａ〜７９ｄ セレクタ
８１ セレクタ
８２ 特徴データ用ルックアップテーブル
８３ 色空間変換回路
８４ 輝度用ルックアップテーブル
８５ 露出決定評価器
８６ａ〜８６ｃ，８７ａ〜８７ｃ 乗算器
９１ 空間フィルタ
９２ａ〜９２ｄ ラインメモリ
９３ 配線
９４，９７ 乗算器
９６ 配線
９８ 第一コアリングファンクションブロック
９９ 加算器
１０１，１０２ 配線
１０３，１０４ 第三コアリングファンクションブロック
１０５ 配線
１０５ａ セレクタ
１０６，１１１ 逆ガンマ効果ブロック
１０７ 乗算器
１０８ セレクタ
１１１ 逆ガンマ効果ブロック
１１２ 乗算器
１１３ セレクタ
１１８ 画像フレーム
１１９ ブロック
【図１】
2004153847.tif 000003
【図２】
2004153847.tif 000004
【図３】
2004153847.tif 000005
【図４】
2004153847.tif 000006
【図５】
2004153847.tif 000007
【図６】
2004153847.tif 000008
【図７】
2004153847.tif 000009
【図８】
2004153847.tif 000010
【図９】
2004153847.tif 000011
【図１０】
2004153847.tif 000012
【図１１】
2004153847.tif 000013
【図１２】
2004153847.tif 000014
【図１３】
2004153847.tif 000015
【図１４】
2004153847.tif 000016
【図１５】
2004153847.tif 000017
【図１６】
2004153847.tif 000018
【図１７】
2004153847.tif 000019
【図１８】
2004153847.tif 000020
【図１９】
2004153847.tif 000021
【図２０】
2004153847.tif 000022
【図２１】
2004153847.tif 000023
【図２２】
2004153847.tif 000024
【図２３】
2004153847.tif 000025
【図２４】
2004153847.tif 000026
【図２５】
2004153847.tif 000027
【図２６】
2004153847.tif 000028
【図２７】
2004153847.tif 000029
【図２８】
2004153847.tif 000030
【図２９】
2004153847.tif 000031
【図３０】
2004153847.tif 000032
【図３１】
2004153847.tif 000033
【図３２】
2004153847.tif 000034
【図３３】
2004153847.tif 000035
【図３４】
2004153847.tif 000036
【図３５】
2004153847.tif 000037