(57)【特許請求の範囲】
【請求項１】
第１数の画素が各々のアドレスに割り当てられるように画像データを格納する第１メモリ、
前記第１数よりも小さい第２数の画素が各々のアドレスに割り当てられる第２メモリ、
ズーム方向における前記画像データの画素数とズーム係数とに基づいてズーム開始位置係数を算出する算出手段、
前記算出手段によって算出されたズーム開始位置係数に基づいて転送開始アドレス値とズーム開始画素番号とを特定する特定手段、
前記特定手段によって特定された転送開始アドレス値を基準として前記第１メモリから前記第２メモリに画像データを転送する転送手段、および
前記転送手段によって前記第２メモリに転送された画像データに前記特定手段によって特定されたズーム開始画素番号を基準とするズーム処理を施すズーム処理手段を備え、
前記ズーム係数はズーム倍率の逆数に所定値を掛け算して求められる整数値によって表され、
前記特定手段は、前記ズーム開始位置係数を前記第１数と前記所定値との掛け算値で割り算する第１演算によって得られる商を前記転送開始アドレス値とし、前記第１演算によって得られる余りを前記第２数と前記所定値との掛け算値で割り算する第２演算によって得られる商を前記ズーム開始画素番号とし、
更新指示を受け付けたとき前記整数値を連続的に更新する更新手段をさらに備える、ディジタルズーム装置。
【請求項２】
前記第１数は２Ｍ（Ｍ：整数）で表され、前記所定値は２Ｎ（Ｎ：整数）で表される、請求項１記載のディジタルズーム装置。
【請求項３】
前記第１数の画素は水平方向に連続する画素であり、
前記ズーム方向は水平方向である、請求項１または２記載のディジタルズーム装置。
【請求項４】
請求項１ないし３のいずれかに記載のディジタルズーム装置を備える、ディジタルカメラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ディジタルズーム装置に関し、特にたとえばディジタルカメラに適用され、複数の画素が各々のアドレスに割り当てられるようにメモリに格納された画像データに所定方向のズーム処理を施してズーム画像データを作成する、ディジタルズーム装置に関する。
【０００２】
【従来技術】
従来のこの種のディジタルカメラの一例が、平成１０年１２月１８日付けで出願公開された特開平１０−３３６５７３号公報［Ｈ０４Ｎ５／９０７，Ｈ０４Ｎ５／２６２］に開示されている。この従来技術によれば、４画素が各々のアドレスに割り当てられるように画像データがメモリに格納され、ズーム処理は、いずれかのアドレスに割り当てられた４画素のうちの先頭画素から開始される。
【０００３】
【発明が解決しようとする課題】
しかし、従来技術では、ズーム倍率が連続的に変更されることを想定しておらず、いずれのズーム倍率においても、ズーム開始画素はいずれかのアドレスの先頭画素となる。したがって、従来技術のままでは、ズーム倍率を連続的に変更したときに、ズーム画像の変化がぎこちなくなる。
【０００４】
それゆえに、この発明の主たる目的は、ズーム倍率の連続的な変更に応じてズーム画像を滑らかに変化させることができる、ディジタルズーム装置を提供することである。
【０００５】
【課題を解決するための手段】
この発明に従うディジタルズーム装置は、第１数の画素が各々のアドレスに割り当てられるように画像データを格納する第１メモリ、第１数よりも小さい第２数の画素が各々のアドレスに割り当てられる第２メモリ、ズーム方向における画像データの画素数とズーム係数とに基づいてズーム開始位置係数を算出する算出手段、算出手段によって算出されたズーム開始位置係数に基づいて転送開始アドレス値とズーム開始画素番号とを特定する特定手段、特定手段によって特定された転送開始アドレス値を基準として第１メモリから第２メモリに画像データを転送する転送手段、および転送手段によって第２メモリに転送された画像データに特定手段によって特定されたズーム開始画素番号を基準とするズーム処理を施すズーム処理手段を備え、ズーム係数はズーム倍率の逆数に所定値を掛け算して求められる整数値によって表され、特定手段は、ズーム開始位置係数を第１数と所定値との掛け算値で割り算する第１演算によって得られる商を転送開始アドレス値とし、第１演算によって得られる余りを第２数と所定値との掛け算値で割り算する第２演算によって得られる商をズーム開始画素番号とし、更新指示を受け付けたとき整数値を連続的に更新する更新手段をさらに備える。
【０００６】
【作用】
第１メモリには、第１数の画素が各々のアドレスに割り当てられるように画像データが格納される。また、第２メモリを形成する各々のアドレスには、第１数よりも小さい第２数の画素が割り当てられる。算出手段は、ズーム方向における画像データの画素数とズーム係数とに基づいてズーム開始位置係数を算出し、特定手段は、算出されたズーム開始位置係数に基づいて転送開始アドレス値とズーム開始画素番号とを特定する。転送手段は、転送開始アドレス値を基準して第１メモリから第２メモリに画像データを転送し、ズーム処理手段は、第２メモリに転送された画像データにズーム開始画素番号を基準とするズーム処理を施す。
ここで、ズーム係数は、ズーム倍率の逆数に所定値を掛け算して求められる整数値によって表される。また、特定手段は、ズーム開始位置係数を第１数と所定値との掛け算値で割り算する第１演算によって得られる商を転送開始アドレス値とし、第１演算によって得られる余りを第２数と所定値との掛け算値で割り算する第２演算によって得られる商をズーム開始画素番号とする。さらに、更新手段は、更新指示を受け付けたとき、整数値を連続的に更新する。
【０００９】
第１メモリの各々のアドレスに割り当てられた第１数の画素が水平方向に連続する画素である場合、ズーム方向は水平方向である。つまり、ズーム画像の倍率は少なくとも水平方向において変化する。
【００１１】
【発明の効果】
この発明によれば、ズーム倍率を連続的に変化させたとき、ズーム処理の基準となるズーム開始画素は、第１数よりも小さい第２数の画素単位で更新される。このため、ズーム画像を滑らかに変化させることができる。
【００１２】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００１３】
【実施例】
図１を参照して、この実施例のディジタルカメラ１０は、光学レンズ１２を含む。光学レンズ１２によって集光された被写体の光学像は、図２に示すようにＣｙ，Ｙｅ，ＭｇおよびＧがモザイク状に配列された色フィルタ１４を介して、イメージセンサ１６の受光面に照射される。受光面に形成された各々の受光素子（画素）では、光電変換によって電荷が生成される。
【００１４】
ＣＰＵ４４は、被写体のリアルタイム動画像（スルー画像）をディスプレイ４４から出力すべく、タイミングジェネレータ（ＴＧ）１８にイメージセンサ１６の駆動を命令する。ＴＧ１８はタイミングパルスを発生し、イメージセンサ１６からは画素信号（電荷信号）がインタレーススキャン方式で出力される。出力される画素信号は、Ｃｙ，Ｙｅ，ＭｇおよびＧのいずれかの色成分に対応する。このような画素信号によって形成される１フィールド分の画像信号は、図１２に示すように、水平方向に７６８画素を有し、垂直方向に２４０ラインを有する。
【００１５】
ＣＤＳ／ＡＧＣ回路２０は、イメージセンサ１６から出力された画像信号に周知のノイズ除去およびレベル調整を施し、これらの処理を施された画像信号は、Ａ／Ｄ変換器２２によってディジタルデータすなわち画像データに変換される。信号処理回路２４は、変換された画像データに色分離，ＲＧＢ変換，白バランス調整およびＹＵＶ変換の一連の処理を施し、さらに変換されたＹＵＶデータを４：２：２の比率でサンプリングする。サンプリングされたＹＵＶデータは、１ワード毎にまとめられる。
【００１６】
図４に示すように水平方向に連続する８画素分のＹＵＶデータに注目すると、Ｙデータはすべてサンプリングされ、連続する４画素分のＹデータによって１ワードが形成される。このため、Ｙ０〜Ｙ３によって１ワードのデータが形成され、またＹ４〜Ｙ７によって１ワードのデータが形成される。一方、ＵデータについてはＵ０，Ｕ２，Ｕ４およびＵ６がサンプリングされ、ＶデータについてはＶ１，Ｖ３，Ｖ５およびＶ７がサンプリングされる。そして、Ｕ０，Ｖ１，Ｕ２およびＶ３によって１ワードが形成され、Ｕ４，Ｖ５，Ｕ６およびＶ７によって１ワードが形成される。Ｙデータ，ＵデータおよびＶデータはそれぞれ８ビットであり、１ワードは３２ビットに相当する。４：２：２の比率に従うサンプリングの結果、４画素分のＹＵＶデータは２ワードに収められる。
【００１７】
信号処理回路２４によってワード毎にまとめられたＹＵＶデータは、３２ビットバス２６を介して、図５に示す要領でＳＤＲＡＭ２８に格納される。ＳＤＲＡＭ２８はバンク１およびバンク２を含み、かつ１アドレスは３２ビット（＝１ワード）である。１フィールドを形成するＹデータはバンク１に格納され、同じ１フィールドを形成するＵＶデータはバンク２に格納される。このとき、同じ４画素を形成するＹデータおよびＵＶデータは、バンク１およびバンク２の同じアドレスに格納される。
【００１８】
拡大ズーム画像をディスプレイ４２に表示するとき、ＳＤＲＡＭ２８からの読み出し開始アドレス（Ｘｓ，Ｙｓ），当該読み出し開始アドレス（Ｘｓ，Ｙｓ）に含まれるズーム開始画素の位置，ならびに水平補間係数の初期値（Ｈ初期値）および垂直補間係数の初期値（Ｖ初期値）は、ＣＰＵ４４によって以下に説明する要領で特定される。このうち、水平方向の読み出し開始アドレスＸｓ，ズーム開始画素の位置およびＨ初期値を水平ズーム開始情報と定義し、垂直方向の読み出し開始アドレスＹｓおよびＶ初期値を垂直ズーム開始情報と定義する。
【００１９】
水平ズーム開始情報Hstartは、数１に従って求められる。
【００２０】
【数１】
Hstart＝水平画素数／２＊（１−１／ズーム倍率）＊２8
たとえば２．５倍に拡大されたズーム画像をディスプレイ４２に表示する場合、ズーム倍率の逆数は“０．４”であり、１フィールド画像の水平画素数は“７６８”であるため、Hstartは“５８９８２．４”となる。“２10（＝１０２４）”，“２8（＝２５６）”および“２0（＝１）”で括ると、この数値は数２によって表される。
【００２１】
【数２】
５８９８２．４＝５７＊２１０＋２＊２８＋１０２．４＊２０
“２８”で括るのは数１の右辺に“２８”が存在するからであり、“２１０”で括るのは１ワードに４（＝２２）画素が割り当てられるからである。数２より、読み出し開始アドレスＸｓは“５７”と特定され、ズーム開始画素は読み出し開始アドレス（Ｘｓ，Ｙｓ）に割り当てられた４画素のうち２番目の画素と特定され、Ｈ初期値は“０．４（＝１０２．４／２５６）”と特定される。
【００２２】
垂直ズーム開始情報は、数３または数４に従って求められる。数３は奇数フィールドにおける垂直ズーム開始情報VstartODDを求めるための演算式であり、数４は偶数フィールドにおける垂直ズーム開始情報VstartEVENを求めるための演算式である。
【００２３】
【数３】
VstartODD＝垂直ライン数／２＊（１−１／ズーム倍率）＊２8
【００２４】
【数４】
VstartEVEN＝VstartODD＋ＩＮＴ｛（１／ズーム倍率＊２８）／２｝
ＩＮＴ：括弧内の割り算の商
“２８”を掛け算するのは、上述の数１と整合をとるためである。１フィールド画像の垂直ライン数は“２４０”であるため、ズーム倍率が“２．５”のときは、VstartODDとして“１８４３２”が求められ、VstartEVENとして“１８４８３”が求められる。２８で括ると、これらの数値は数５によって表される。
【００２５】
【数５】
１８４３２＝７２＊２８＋０＊２０
１８４８３＝７２＊２８＋５１＊２０
数５より、読み出し開始アドレスＹｓは奇数フィールドおよび偶数フィールドのいずれにおいても“７２”と特定され、奇数フィールドにおけるＶ初期値は“０．０”と特定され、偶数フィールドにおけるＶ初期値は“０．２（＝５１／２５６）”と特定される。
【００２６】
係数算出回路３４は、図６に示すように構成される。“１／ズーム倍率”は加算器３４ａに与えられ、Ｈ初期値はセレクタ３４ｂに与えられる。セレクタ３４ｅは、各フィールドにおいて最初だけ初期値を選択し、残りの期間は加算器３４ａの出力を選択する。セレクタ３４ｂの出力は、遅延回路３４ｃで所定期間遅延された後、Ｈ累積ズーム係数として出力されるとともに、加算器３４ａにフィードバックされる。ズーム倍率が“２．５”であるとき、ズーム倍率の逆数は“０．４”であり、数２によればＨ初期値も“０．４”である。このとき、Ｈ累積ズーム係数は、図７に示すように“０．４”→“０．８”→“１．２”→“１．６”→“２．０”→“２．４”…の順で変化する。
【００２７】
図６に戻って、“１／ズーム倍率”は加算器３４ｄにも与えられ、Ｖ初期値はセレクタ３４ｅに与えられる。ズーム倍率が２．５倍のとき、加算器３４ｄには“０．４”が与えられる。また、数５によれば、奇数フィールドにおけるＶ初期値は“０．０”とされ、偶数フィールドにおけるＶ初期値は“０．２”とされる。上述と同様、セレクタ３４ｅは各フィールドにおいて最初だけＶ初期値を選択し、これ以降の期間は加算器３４ｄの出力を選択する。セレクタ３４ｅの出力は、遅延回路３４ｆを経て、Ｖ累積ズーム係数として出力されるとともに、加算器３４ｄにフィードバックされる。したがって、奇数フィールドにおけるＶ累積ズーム係数は、図８に示すように“０．０”→“０．４”→“０．８”→“１．２”→“１．６”→“２．０”…の順で変化する。
【００２８】
図１に戻って、メモリ制御回路３０には、ＣＰＵ４４によって特定された読み出し開始アドレス（Ｘｓ，Ｙｓ）およびズーム開始画素の位置情報と、係数算出回路３４によって算出されたＨ累積ズーム係数およびＶ累積ズーム係数とが与えられる。メモリ制御回路３０は、まず各々のＶ累積ズーム係数の整数部を検出し、前回検出した整数部と今回検出した整数部との差分を求め、そして求められた差分と読み出し開始アドレスＹｓとに基づいてＳＤＲＡＭ２８から読み出す２ラインを特定する。また、水平方向のアドレスは、読み出し開始アドレスＸｓによって特定する。
【００２９】
図８の例では、Ｖ累積ズーム係数“１．２”が入力されると、整数部の差分“１”が検出される。したがって、読み出し先は読み出し開始アドレスＹｓから１ライン分下げられ、第２ラインおよび第３ラインとされる。また、数２によれば読み出し開始アドレスＸｓは“５７”であるため、第２ラインおよび第３ラインの水平方向第５７アドレス以降の画素データが１ワード毎に読み出される。読み出し時のクロックレートは３０ＭＨｚであり、読み出された２ライン分の画素データは、ラインメモリ３２のメモリエリア３２ａおよび３２ｂに書き込まれる。なお、メモリエリア３２ａおよび３２ｂでは１アドレスが８ビットであり、１つのアドレスには１画素を形成するＹデータ，ＵデータまたはＶデータが書き込まれる。
【００３０】
メモリ制御回路３０は続いて、３０ＭＨｚのクロックレートで４クロックかけて、８画素分のＹＵＶデータをメモリエリア３２ａおよび３２ｂから読み出し、図９に示すレジスタ３６に形成されたメモリエリア３６ａ，３６ｂ，３６ｆおよび３６ｇに書き込む。図１０（Ａ）に示すように、ラインメモリ３２のメモリエリア３２ａおよび３２ｂには前ラインのＹＵＶデータおよび現ラインのＹＵＶデータがそれぞれ保持されている。このため、図１０（Ｂ）に示すように、前ラインのＹ０〜Ｙ７データはメモリエリア３６ａに書き込まれ、現ラインのＹ０〜Ｙ７データはメモリエリア３６ｆに書き込まれる。また、前ラインのＵ０，Ｖ１，Ｕ２，Ｖ３，Ｕ４，Ｖ５，Ｕ６およびＶ７データはメモリエリア３６ｂに書き込まれ、現ラインのＵ０，Ｖ１，Ｕ２，Ｖ３，Ｕ４，Ｖ５，Ｕ６およびＶ７データはメモリエリア３６ｇに書き込まれる。
【００３１】
なお、前ラインおよび現ラインのＵ４，Ｖ５，Ｕ６およびＶ７データは、図９に示すメモリエリア３６ｃおよび３６ｈにも書き込まれる。また、メモリエリア３６ａ〜３６ｃおよび３６ｆ〜３６ｈでも１アドレスが８ビットであり、１つのアドレスには１画素を形成するＹデータ，ＵデータまたはＶデータが書き込まれる。
【００３２】
このようにして前ラインおよび現ラインの８画素分のＹＵＶデータがレジスタ３６に転送されると、メモリ制御回路３０は、１５ＭＨｚのクロックレートでメモリエリア３６ａ〜３６ｃおよび３６ｆ〜３６ｈから画素データを読み出す。セレクタ３６ｄ，３６ｅ，３６ｉおよび３６ｊは、メモリ制御回路３０から１５ＭＨｚのクロックに応答して出力されるモード信号に従って所望の画素データを選択する。図１０（Ｂ）を参照して具体的に説明すると、セレクタ３６ｄおよび３６ｉは、モード０〜７でＹ０〜Ｙ７をそれぞれ選択する。また、セレクタ３６ｅおよび３６ｊは、モード０および１でＵ０およびＶ１を選択し、モード２および３でＵ２およびＶ３を選択し、モード４および５でＵ４およびＶ５を選択し、そしてモード６および７でＵ６およびＶ７を選択する。なお、ＹデータおよびＵＶデータはそれぞれ、モードが“３”から“４”に移行するとき、または“７”から“０”に移行するときに、メモリ制御回路３０によって１ワード分だけ更新される。
【００３３】
モードは、ズーム開始画素の位置情報とＨ累積ズーム係数とに基づいて決定される。具体的に説明すると、メモリ制御回路３０は、まずズーム開始画素の位置情報によってモードの初期値を決定する。続いて、各々のＨ累積ズーム係数の整数部を検出し、前回検出した整数部と今回検出した整数部との差分だけモードを進める。ズーム倍率が２．５倍のとき、数２によればズーム開始画素の位置情報は“２”であるため、モードの初期値は“２”となる。また、図７の例では、Ｈ累積ズーム係数が“１．２”，“２．０”，“３．２”および“４．０”を示したとき、前回との差分が“１”となる。このため、モードは、“１．２”が得られたときに“２”から“３”に進められ、“２．０”が得られたときに“３”から“４”に進められ、“３．２”が得られたときに“３”から“４”に進められ、そして“４．０”が得られたときに“４”から“５”に進められる。なお、モード７まで進むと、その次はモード０に戻る。このようにしてモードが更新され、前ラインおよび現ラインの２画素分のＹＵＶデータがレジスタ３６から同時に出力される。
【００３４】
前ラインのＹデータ，ＵデータおよびＶデータはそれぞれ、図１１に示す補間回路３８のＫ倍回路３８ａ〜３８ｃに与えられ、現ラインのＹデータ，ＵデータおよびＶデータはそれぞれ、（１−Ｋ）倍回路３８ｄ〜３８ｆに与えられる。ここで、垂直補間係数Ｋは、係数算出回路３４で算出されたＶ累積ズーム係数の小数部に相当する。垂直補間係数Ｋに従って重み付けされた前ラインのＹデータおよび現ラインのＹデータは、加算器３８ｇで加算され、これによって垂直補間が完了する。また、ＵデータおよびＶデータも、加算器３８ｈおよび３８ｉのそれぞれで加算される。図８を参照して、たとえばＶ累積ズーム係数“１．６”が得られたときは、前ラインのＹＵＶデータは０．６倍され、現ラインのＹＵＶデータは０．４倍される。これによって、図８において“１．６”に対応する位置で垂直補間されたＹＵＶデータが得られる。
【００３５】
加算器３８ｇ〜３８ｉから出力されたＹデータ，ＵデータおよびＶデータは、レジスタ３８ｊ〜３８ｍを介してＬ倍回路３８ｎ〜３８ｑに入力されるとともに、直接（１−Ｌ）倍回路３８ｒ〜３８ｔに入力される。ここで、水平補間係数Ｌは係数算出回路３４で得られたＨ累積ズーム係数の小数部に相当する。レジスタ３８ｊ〜３８ｍが設けられることによって、加算器３８ｕ〜３８ｗには、水平方向における前画素のＹデータ，ＵデータおよびＶデータと現画素のＹデータ，ＵデータおよびＶデータとが同時に入力され、これによって水平補間が完了する。
【００３６】
なお、上述の数２および数５から分かるように、Ｈ初期値およびＶ初期値の整数部は常に“０”を示す。このため、Ｈ初期値およびＶ初期値はそれぞれ、水平補間係数Ｌの初期値および垂直補間係数Ｋの初期値と一致する。
【００３７】
図１に戻って、補間回路３８から出力されたＹＵＶデータすなわちズーム画素データは、画像処理回路４０におけるアパーチャ，ホワイトクリップなどの処理を経て、ディスプレイ４２から出力される。すなわち、所望の倍率に拡大された被写体のスルー画像がディスプレイ４２に表示される。
【００３８】
ＣＰＵ４４は、具体的には図１３および図１４に示すフロー図を処理する。まずステップＳ１でＴＧ１８を能動化し、ステップＳ３で変数ｉを“２５６”とする。ステップＳ５では１／６０秒毎の垂直同期信号が発生したかどうか判断し、ＹＥＳであれば、ステップＳ７で変数ｉを水平ズーム係数Hzoomkおよび垂直ズーム係数Vzoomkとして設定する。HzoomkおよびVzoomkはそれぞれ、ズーム倍率との間で数６に示す関係が成立する係数である。したがって、変数ｉが“２５６”に近いほどズーム倍率は小さくなり、変数ｉが“１”に近いほどズーム倍率は大きくなる。
【００３９】
【数６】
Hzoomk＝Vzoomk＝（１／ズーム倍率）＊２8
ステップＳ９では数６に基づいて“１／ズーム倍率”を算出し、ステップＳ１１では数７に従って水平ズーム開始情報を算出する。
【００４０】
【数７】
Hstart＝水平画素数／２＊（２8−Hzoomk）
数７および数１は、表現方法が異なるだけで意味は同じである。つまり、数１ではズーム倍率を用いて表現しているが、実際の処理ではズーム倍率の代わりに変数ｉが更新されるため、数７によって水平ズーム開始情報を求めている。
【００４１】
ステップＳ１３では、数７によって算出された水平ズーム開始情報に基づいて、読み出し開始アドレスＸｓ，ズーム開始画素の位置情報およびＨ初期値を特定する。ステップＳ１５では、読み出し開始アドレスＸｓおよびズーム開始画素の位置情報をメモリ制御回路３０に与え、ステップＳ１７では、“１／ズーム倍率”およびＨ初期値を図６に示す係数算出回路３４の加算器３４ａおよびセレクタ３４ｂに与える。
【００４２】
ステップＳ１９では、現フィールドが奇数フィールドおよび偶数フィールドのいずれであるかを判別する。奇数フィールドであればステップＳ２１に進み、数８に従って垂直ズーム開始情報を算出するが、偶数フィールドであればステップＳ２３に進み、数９に従って垂直ズーム開始情報を算出する。数８および数９もまた、上述の数３および数４と実質的に同じである。
【００４３】
【数８】
VstartODD＝垂直ライン数／２＊（２8−Vzoomk）
【００４４】
【数９】
VstartEVEN＝VstartODD＋ＩＮＴ（Vzoomk／２）
ステップＳ２５では算出された垂直ズーム開始情報から読み出し開始アドレスＹｓおよびＶ初期値を特定し、ステップＳ２７では読み出し開始位置アドレスＹｓをメモリ制御回路３０に与え、そしてステップＳ２９では“１／ズーム倍率”とＶ初期値とを図６に示す係数算出回路３４の加算器３４ｄおよびセレクタ３４ｅに与える。この結果、ステップＳ９で算出されたズーム倍率に従うズーム画像がディスプレイ４２に表示される。
【００４５】
ステップＳ３１ではズームキー４６の操作の有無を判別し、ステップＳ４３では垂直同期信号の発生の有無を判別する。ズームキー４６が操作されないまま垂直同期信号が発生すると、ステップＳ４３でＹＥＳと判断し、ステップＳ１９〜Ｓ２９の処理を繰り返す。
【００４６】
ズームキー４６が操作されると、ステップＳ３１からステップＳ３３に進み、広角側および望遠側のいずれのズーム操作が行なわれたかを判断する。広角側へのズーム操作であればステップＳ３５で変数ｉが“１”であるかどうか判断し、ｉ＞１であればステップＳ３７で変数ｉをディクリメントしてからステップＳ５に戻る。一方、望遠側へのズーム操作であれば、ステップＳ３９で変数ｉが“２５６”であるかどうか判断し、ｉ＜２５６であればステップＳ４１で変数ｉをインクリメントしてからステップＳ５に戻る。なお、ステップＳ３５またはＳ３９でＹＥＳと判断されたときは、変数ｉの更新は不可能であるとみなし、ステップＳ４５に移行する。このとき、ズームキー４６の操作は無効とされる。
【００４７】
以上の説明から分かるように、ＳＤＲＡＭ２８には、各々のアドレスに水平４画素が割り当てられるようにＹＵＶデータが格納される。ディスプレイ４２に拡大ズーム処理が施されたスルー画像を表示するとき、ズーム開始画素は、ズーム倍率に基づいてＣＰＵ４４によって特定される。メモリ制御回路３０は、ズーム開始画素が割り当てられたアドレスを基準として、ＳＤＲＡＭ２８からラインメモリ３２に２ライン分のＹＵＶデータを転送し、さらにラインメモリ３２に転送されたＹＵＶデータの一部をレジスタ３６に転送する。ラインメモリ３２およびレジスタ３６には、各々のアドレスに１画素が割り当てられるようにＹＵＶデータが格納される。レジスタ３６に保持されたＹＵＶデータは、メモリ制御回路３０，係数算出回路３４および補間回路３８によってズーム開始画素を基準とするズーム処理を施される。これによって、拡大ズーム処理を施されたスルー画像がディスプレイ４２に表示される。
【００４８】
ラインメモリ３２およびレジスタ３６の各々のアドレスには１画素が割り当てられ、ズーム処理は、ズーム倍率に基づいて特定されたズーム開始画素を基準に実行される。ズーム倍率を連続的に変化させたときは、ズーム処理の基準となるズーム開始画素は１画素単位で更新される。このため、ズームキーの操作に応答してズーム画像を滑らかに変化させることができる。
【００４９】
なお、この実施例では、ラインメモリおよびレジスタの各アドレスに１画素を割り当てるようにしたが、ＳＤＲＡＭの各アドレスに割り当てられた画素数（４画素）よりも小さい限り、１画素に限られないことは言うまでもない。
【図面の簡単な説明】
【図１】この発明の一実施例を示すブロック図である。
【図２】色フィルタの構成の一例を示す図解図である。
【図３】信号処理回路の動作の一部を示す図解図である。
【図４】信号処理回路の動作の他の一部を示す図解図である。
【図５】ＳＤＲＡＭのマッピング状態の一部を示す図解図である。
【図６】係数算出回路の構成の一例を示すブロック図である。
【図７】係数算出回路の動作の一部を示す図解図である。
【図８】係数算出回路の動作の他の一部を示す図解図である。
【図９】レジスタの構成の一例を示すブロック図である。
【図１０】（Ａ）はラインメモリの格納状態を示す図解図であり、（Ｂ）はレジスタからの読み出し動作の一例を示す図解図である。
【図１１】補間回路の構成の一例を示すブロック図である。
【図１２】１フィールド画像の垂直ライン数および水平画素数を示す図解図である。
【図１３】ＣＰＵの動作の一部を示すフロー図である。
【図１４】ＣＰＵの動作の他の一部を示すフロー図である。
【符号の説明】
１０…ディジタルカメラ
１６…イメージセンサ
２４…信号処理回路
２８…ＳＤＲＡＭ
３０…メモリ制御回路
３２…ラインメモリ
３４…係数算出回路
３６…レジスタ
３８…補間回路
４４…ＣＰＵ
４６…ズームキー
【図１】
0003913491.tif 000002
【図２】
0003913491.tif 000003
【図３】
0003913491.tif 000004
【図４】
0003913491.tif 000005
【図５】
0003913491.tif 000006
【図６】
0003913491.tif 000007
【図７】
0003913491.tif 000008
【図８】
0003913491.tif 000009
【図９】
0003913491.tif 000010
【図１０】
0003913491.tif 000011
【図１１】
0003913491.tif 000012
【図１２】
0003913491.tif 000013
【図１３】
0003913491.tif 000014
【図１４】
0003913491.tif 000015