(57)【要約】      （修正有）【課題】補間処理に必要な内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる画像処理装置を提供する。【解決手段】垂直方向の補間処理を行う垂直方向処理部６８を、ライン遅延制御部７４，乗算器７５，７６，７７，７８、係数発生器７９、及び加算器８１により構成する。ライン遅延制御部７４は、３個のラインバッファを直列に接続して構成する。入力された画素データは各ラインバッファによって遅延される。ライン遅延制御部７４には、入力された画素データ及び各ラインバッファの各出力端から出力された画素データを選択して出力するセレクタを設ける。該セレクタにより選択されてライン遅延制御部７４から信号線０〜３に出力された各画素データには、乗算器７５，７６，７７，７８、加算器８１により、係数発生器７９で算出された補間係数が乗算されて補間画素データが生成される。【選択図】図４
2006134030.tif 000002
【特許請求の範囲】
【請求項１】
複数のラインバッファを直列に接続して構成され、入力された画素データを各ラインバッファによって遅延させる遅延回路と、
画素データを選択するための選択信号を出力する出力手段と、
前記入力された画素データ及び前記各ラインバッファの各出力端から出力された画素データを前記選択信号に応じて選択して出力するセレクタと、
前記セレクタにより選択されて出力された各画素データに補間係数を乗算して補間画素データを生成する補間画素データ生成手段と、
を含む画像処理装置。
【請求項２】
前記補間画素データ生成手段は、補間画素データの生成に使用する画素データには０以外の補間係数を乗算し、かつ使用しない画素データには係数０を乗算して補間画素データを生成する
請求項１記載の画像処理装置。
【請求項３】
複数のラインバッファを直列に接続して構成され、入力された画素データを各ラインバッファによって遅延させる遅延回路と、
前記入力された画素データ、及び前記各ラインバッファの各出力端から出力された画素データのうち、補間画素データの生成に使用する画素データには０以外の補間係数を乗算し、かつ補間画素データの生成に使用しない画素データには係数０を乗算して補間画素データを生成する補間画素データ生成手段と、
を含む画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば画像を拡大または縮小する場合等に行われる補間処理を行う画像処理装置に関し、特に、複数の異なる方式で補間処理を行うことができる画像処理装置に関する。
【背景技術】
【０００２】
現在、多くのデジタルカメラには、モニタ（ＬＣＤ、ＴＶモニタ）が設けられ、撮影時に被写体の画像を動画（スルー画像）として該モニタに表示することができる。このとき、ＣＣＤ等の撮像素子から出力される信号をＹＣ変換処理した画像データの画像サイズは、モニタサイズに合わず、そのままではモニタに表示できないため、通常はモニタサイズに合うように拡大あるいは縮小する処理（以下、リサイズ処理）が行われる。
【０００３】
また、メモリカードに記録された画像データをモニタに表示する場合も、該画像データの画像がモニタサイズに合わない（多くは、メモリカードに記録された画像のサイズの方が大きい）ため、リサイズ処理されてからモニタに表示される。また、撮影者が意図的にＣＣＤ出力サイズとは異なるサイズで撮影画像をメモリカードに記録しようとする場合にも、リサイズ処理が行われる。
【０００４】
画像をリサイズする場合には、まず原画像に対してリサイズ後の画像の各画素の原画像における座標（位置）を算出する。通常は、該算出した座標は整数値にならず、原画像には該座標に対応する画素データが存在しないことが多い。このため、該算出した座標の周辺に存在する画素（周辺画素）の画素データから、リサイズ後の画像の各画素の画素データを補間する処理を行う。具体的には、水平方向においては、入力された画素データをクロック単位で遅延させ、垂直方向においては、入力された画素データをライン単位（水平走査線単位）で遅延させ、入力画素データと遅延画素データとから各種の補間方式による補間を行って出力画像の各画素の画像データを得ている。補間の順番は特に限定されず、例えば、垂直方向、水平方向の順に補間処理を行ってもよいし、逆の順番で行ってもよい（例えば、特許文献１及び特許文献２参照。）。また、周辺画素から水平方向及び垂直方向の補間処理を同時に行う方法もある（例えば、特許文献３参照。）。
【０００５】
補間方法には、様々な方法があるが、上記算出した座標に最も近い原画像の画素に置換する最近傍法、上記算出した座標の近傍２画素から該座標までの各々の距離の比率から算出する線形補間法、上記算出した座標の近傍に存在する多画素から非線形な多次元関数で算出するキュービックスプライン補間法（例えば、特許文献４参照。）などが知られている。
【０００６】
ところで、入力画像に対する出力画像の画質劣化の度合いは、補間方法に応じて異なることが知られている。例えば、最近傍法や線形補間法では画質劣化が大きく、キュービックスプライン補間法では画質劣化は小さい。
【０００７】
撮影時に被写体の画像（スルー画像）をモニタに表示する場合には、画質に対する要求が低いため、線形補間法によるリサイズでもよいとされる。また、ＣＣＤからの信号の出力時点で垂直方向では間引きが行われていることが多く、特に垂直方向については線形補間法によるリサイズでも十分とされている。線形補間法で垂直方向の補間処理を行う場合には、近傍２画素から補間画素の画素データを求めるため、必要なメモリバッファは１つですむ。しかしながら、スルー画像を表示する場合には、ＣＣＤからの信号をストリーム的に入力してモニタに出力するため、ＣＣＤサイズあるいはモニタサイズをカバーできるだけの容量のバッファメモリが必要となる。
【０００８】
一方、メモリカードに記録されている画像データをモニタに表示する場合、あるいは、メモリカードに画像データをリサイズして記録する場合には、画質が劣化しないことが要求されるため、キュービックスプライン補間法によるリサイズが有効とされている。このような場合のリサイズ処理では、大きな原画像を分割して処理することができるため、垂直方向の補間処理で用いられるメモリバッファのサイズはある程度小さくてもよいが、多画素から補間画素の画素データを算出するため、多ライン分のメモリバッファが必要になる。
【特許文献１】特開平８−３１５１３０号公報
【特許文献２】特開２０００−３６０４１号公報
【特許文献３】特開平９−１３０７５６号公報
【特許文献４】特開平１１−５３５３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上述したように、場合に応じてリサイズの際の補間方法が異なり、また補間方法に応じて必要なメモリバッファの数及び容量が異なる。従って、各補間方法に対応するために、従来は、ＬＳＩチップ上に、多数かつ大容量のメモリバッファを搭載すると共に、補間方法の各々に応じた回路を搭載していた。これにより、チップコストの増大を招いていた。
【００１０】
本発明は、上記問題点を解決するためになされたものであり、補間処理に必要な内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、第１の発明の画像処理装置は、複数のラインバッファを直列に接続して構成され、入力された画素データを各ラインバッファによって遅延させる遅延回路と、画素データを選択するための選択信号を出力する出力手段と、前記入力された画素データ及び前記各ラインバッファの各出力端から出力された画素データを前記選択信号に応じて選択して出力するセレクタと、前記セレクタにより選択されて出力された各画素データに補間係数を乗算して補間画素データを生成する補間画素データ生成手段と、を含んで構成されている。
【００１２】
この画像処理装置では、垂直方向の補間処理を行うことができる。補間対象となる画素の周辺の複数の画素の画素データを用いて垂直方向の補間処理を行う際、入力された画素データをライン単位（水平走査線単位）で遅延させることによって、周辺の複数の画素の画素データを得ることができ補間画素データを生成することができる。
【００１３】
この画像処理装置の遅延回路は、複数のラインバッファを直列に接続して構成されている。更にこの画像処理装置には、入力された画素データ及び各ラインバッファの各出力端から出力された画素データを選択信号に応じて選択して出力するセレクタが備えられ、出力手段から出力された選択信号に応じて該セレクタで画素データの選択が行われることにより、様々な補間方法に対応することができる。
【００１４】
例えば、この画像処理装置で各ラインバッファのサイズ以下の画素数を１ライン（１走査線分）として扱い、遅延された画素データを複数使用する場合には、セレクタにより、入力された画素データ及び複数のラインバッファの各々の出力端から出力された画素データの各々が選択されるようにすれば、１ラインずつ遅延された複数の画素データを用いて補間画素データを生成することができる。このように処理する場合には、周辺多画素から補間画素データを生成できるため、画質劣化は小さい。
【００１５】
また、例えば、各ラインバッファのサイズよりも大きい画素数を１ラインとして扱い遅延画素データとして該１ライン分遅延された画素データのみを使用する場合には、セレクタにより、入力された画素データと、上記直列接続された複数のラインバッファのうち、入力された画素データを該１ライン分の画素数分だけ遅延された画素データを出力するラインバッファの出力端から出力された画素データのみが選択され、他のラインバッファの出力端から出力された画素データは選択されないようにすれば、入力された画素データと該１ライン分遅延された画素データとを用いて補間画素データを生成することができる。
【００１６】
このように処理する場合には、周辺２画素から補間画素データを生成するため、上記多画素で補間する場合よりは画質は劣化するが、遅延させる１ライン分の画素数を各ラインバッファのサイズより大きく増やすことができる。
【００１７】
従って、セレクタの選択に応じて、遅延させるライン数や遅延させる１ライン分のサイズを調整でき、様々な補間処理を共通のラインバッファ及び回路で行うことができる。
【００１８】
すなわち、本発明では、必要なラインバッファの数やサイズが異なる補間処理を、共通のラインバッファ及び補間回路で行うことができるため、補間処理に必要な内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる。
【００１９】
なお、セレクタによって補間画素データの生成に使用しない画素データが選択され出力された場合であっても、前記補間画素データ生成手段が、補間画素データの生成に使用する画素データには０以外の補間係数を乗算し、かつ使用しない画素データには係数０を乗算して補間画素データを生成することにより、必要な画素データのみを用いて補間画素データを生成することができる。
【００２０】
また、第２の発明の画像処理装置は、複数のラインバッファを直列に接続して構成され、入力された画素データを各ラインバッファによって遅延させる遅延回路と、前記入力された画素データ、及び前記各ラインバッファの各出力端から出力された画素データのうち、補間画素データの生成に使用する画素データには０以外の補間係数を乗算し、かつ補間画素データの生成に使用しない画素データには係数０を乗算して補間画素データを生成する補間画素データ生成手段と、を含んで構成されている。
【００２１】
この画像処理装置では、入力された画素データ及び各ラインバッファによって遅延された画素データの各々に乗算する各補間係数を調整する。具体的には、使用しない画素データには計数０を乗算し、使用する画素データには０以外の補間係数を乗算することによって、遅延させるライン数や遅延させる１ライン分のサイズを調整でき、様々な補間処理を共通のラインバッファ及び回路で行うことができる。
【００２２】
これによっても、補間処理に必要な内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる。
【発明の効果】
【００２３】
以上説明したように本発明によれば、垂直方向の補間処理を行うために必要なラインバッファ及び計算回路を、必要なラインバッファの数及びサイズが異なる複数の補間処理間で共通化することができ、補間処理に必要な内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる、という優れた効果を奏する。
【発明を実施するための最良の形態】
【００２４】
まず、図１を参照して、本実施の形態に係るデジタルカメラ１０の構成を説明する。ここでは、本発明の画像処理装置をデジタルカメラ１０に搭載されたデジタル信号処理部３０のリサイズ処理部３０ｂの垂直方向処理部６８に適用した場合を例に挙げて説明する。
【００２５】
同図に示すように、デジタルカメラ１０は、レンズを含んで構成された光学ユニット２２と、レンズの光軸後方に配設されたＣＣＤ２４と、ＣＣＤ２４の出力信号に含まれるノイズ等を軽減するための相関二重サンプリング回路を含んで構成されたアナログ信号処理部２６と、アナログ信号処理部２６で処理されたＲ（赤）、Ｇ（緑）、Ｂ（青）のアナログ信号を各々Ｒ、Ｇ、Ｂのデジタル信号（デジタル画像データ）に変換するアナログ／デジタル変換器（以下、「ＡＤＣ」という。）２８と、ＡＤＣ２８で変換されたデジタル画像データに対して各種の画像処理を行うデジタル信号処理部３０と、を含んで構成されている。
【００２６】
また、デジタルカメラ１０は、デジタル画像データにより示される画像やメニュー画面等をＬＣＤ４４に表示させるための信号を生成してＬＣＤ４４に供給するＬＣＤインタフェース４２と、デジタルカメラ１０全体の動作を司るＣＰＵ（中央処理装置）５０と、主として撮影により得られたデジタル画像データを記憶するＶＲＡＭ（Video RAM）により構成されたメモリ７２と、メモリ７２に対するアクセスの制御を行うメモリインタフェース７０と、撮影により得られたデジタル画像データを記憶するためのメモリカード８２をデジタルカメラ１０でアクセス可能とするための外部メモリインタフェース８０と、所定の圧縮形式でデジタル画像データに対して圧縮処理を施す一方、圧縮処理されたデジタル画像データに対して圧縮形式に応じた伸張処理を施す圧縮・伸張処理回路８６と、を含んで構成されている。
【００２７】
デジタル信号処理部３０、ＬＣＤインタフェース４２、ＣＰＵ５０、メモリインタフェース７０、外部メモリインタフェース８０、及び圧縮・伸張処理回路８６はシステムバスＢＵＳを介して相互に接続されている。従って、ＣＰＵ５０は、デジタル信号処理部３０及び圧縮・伸張処理回路８６の作動の制御、ＬＣＤ４４に対するＬＣＤインタフェース４２を介した各種情報の表示、メモリ７２及びメモリカード８２へのメモリインタフェース７０または外部メモリインタフェース８０を介したアクセスを行うことができる。
【００２８】
さらにまた、デジタルカメラ１０には、主としてＣＣＤ２４を駆動させるためのタイミング信号を生成してＣＣＤ２４に供給するタイミングジェネレータ３２が備えられており、ＣＣＤ２４の駆動はＣＰＵ５０によりタイミングジェネレータ３２を介して制御される。また、デジタルカメラ１０にはモータ駆動部３４が備えられており、光学ユニット２２に備えられた焦点調整モータ、ズームモータ及び絞り駆動モータの駆動もＣＰＵ５０によりモータ駆動部３４を介して制御される。ＣＰＵ５０は、光学ズーム倍率を変更する際にはズームモータを駆動制御して光学ユニット２２に含まれるレンズの焦点距離を変化させる。
【００２９】
また、ＣＰＵ５０は、ＣＣＤ２４による撮像によって得られた画像のコントラスト値が最大となるように上記焦点調整モータを駆動制御することによって合焦制御を行う。すなわち、本実施の形態に係るデジタルカメラ１０では、合焦制御として、読み取られた画像のコントラストが最大となるようにレンズの位置を設定する、所謂ＴＴＬ（Through The Lens）方式を採用している。
【００３０】
更に、レリーズボタン、電源スイッチ、モード切替スイッチ、等の各種ボタン類及びスイッチ類（図１では、「操作部９０」と総称。）がＣＰＵ５０に接続されており、ＣＰＵ５０は、これらの操作部９０に対する操作状態を常時把握できる。
【００３１】
ここで、前述のデジタル信号処理部３０について詳細に説明する。
【００３２】
デジタル信号処理部３０は、入力された画像データに対し、ホワイトバランス調整処理、ガンマ処理、シャープネス処理、更に輝度信号Ｙとクロマ信号Ｃｒ、Ｃｂ（以下、「ＹＣ信号」）を生成するＹＣ変換処理等の各種画像処理を施す。また、デジタル信号処理部３０は、該画像処理が施された画像データから、該画像データの画像を拡大または縮小する処理（リサイズ処理）を施して、ＬＣＤ４４に表示するための画像データを生成したり、あるいはメモリカード８２に記録するための画像データを生成したりする。
【００３３】
図２は、デジタル信号処理部３０の機能構成を示したブロック図である。同図に示されるように、入力された画像データにＹＣ変換処理等を施す信号処理部３０ａ、信号処理部３０ａでＹＣ変換された画像データにリサイズ処理を施すリサイズ処理部３０ｂとを備えて構成されている。また、リサイズ処理部３０ｂは、画素位置算出部６２と出力画素データ算出部６４とを備えている。
【００３４】
画素位置算出部６２には、リサイズ処理前の画像データの画像（以下、「入力画像」と呼称）の画像サイズと、入力画像をリサイズして得られる画像（以下、「出力画像」）の画像サイズとがＣＰＵ５０から入力される。画素位置算出部６２は、入力された各画像サイズから、出力画像の各画素の入力画像における位置座標を算出する。
【００３５】
出力画素データ算出部６４には、画素位置算出部６２により算出された出力画像の各画素の位置座標、及び上記ＹＣ変換処理等の画像処理が施された入力画像の画像データ（入力画像を構成する各画素の画素データ）が入力される。出力画素データ算出部６４は、入力画像を構成する画素のうち画素位置算出部６２により算出された出力画像の各画素（以下、出力画素）の位置座標の周辺に存在する周辺画素の画素データに基づいて所定の補間処理を施して、出力画素の画素データを算出する。
【００３６】
例えば、ＬＣＤ４４をファインダとして使用する場合には、ＣＣＤ２４から出力される信号をＹＣ変換処理した画像データのサイズは、ＬＣＤ４４の画面サイズと合わず、そのままではＬＣＤ４４に表示できないため、リサイズ処理が行われる。従って、ＣＣＤ２４から出力されてデジタル信号処理部３０で上記ＹＣ処理等の画像処理を施して得られた所定サイズの画像データが、リサイズ処理部３０ｂにおいて、例えば、ＶＧＡサイズの６４０画素×４８０ラインの画像サイズにリサイズ処理されて、ＬＣＤインタフェース４２を介して順次ＬＣＤ４４に出力される。これによってＬＣＤ４４に、ＣＣＤ２４による連続的な撮像によって得られた動画像（スルー画像）が表示される。
【００３７】
また、撮影された被写体の画像を所望の画像サイズに拡大または縮小してメモリカード８２に記録する場合、あるいは、メモリカード８２に記録された画像データをＬＣＤ４４に表示させる場合（これは、通常、メモリカード８２に記録された画像データの方がサイズの方が大きく、ＬＣＤ４４の画面サイズに合わないため）にも、上記リサイズ処理部３０ｂでリサイズ処理されてメモリカード８２またはＬＣＤ４４に出力される。
【００３８】
本実施の形態では、ＬＣＤ４４をファインダとして使用し、ＬＣＤ４４にスルー画像を表示する場合のリサイズ処理と、画像データを所望の画像サイズに拡大または縮小してメモリカードに記録したり、メモリカードに記録されている画像データを読み出してＬＣＤ４４に表示したりする場合のリサイズ処理とで、補間処理（リサイズ処理）の方法を異ならせている。前者のリサイズ処理をリサイズ処理Ａ、後者のリサイズ処理をリサイズ処理Ｂと呼称する。
【００３９】
リサイズ処理Ａ及びリサイズ処理Ｂでは共にキュービックスプライン補間法で補間するが、リサイズ処理Ａでは、水平方向では周辺４画素、垂直方向では周辺２画素を用いて補間を行い、リサイズ処理Ｂでは、水平方向及び垂直方向共に出力画素の周辺４画素を用いて補間を行う。従って、リサイズ処理Ａの方がリサイズ処理Ｂより画質が劣化するが、スルー画像をＬＣＤ４４に表示する場合には、画質に対する要求が低いことから、周辺２画素の補間でも十分とされる。なお、垂直方向の補間処理において、周辺４画素を用いる場合には（リサイズ処理Ｂ）、３ライン分遅延させるために、ラインバッファの数は３個必要だが、周辺２画素を用いる場合には（リサイズ処理Ａ）、１ライン分遅延させるだけでよいため、ラインバッファの数は１個で足りる。
【００４０】
また、垂直方向の補間処理において、リサイズ処理Ａ及びリサイズ処理Ｂとでは、必要なラインバッファの容量が異なる。具体的には、スルー画像をＬＣＤ４４に表示する場合には、ＣＣＤ２４から出力される信号をストリーム的に処理してＬＣＤ４４に出力するため、垂直方向の補間を先に行う場合にはＣＣＤサイズを、水平方向の補間を先に行う場合にはモニタサイズ（１走査線分）をカバーできるだけの容量のラインバッファが必要となる。一方、メモリカードに記録されている画像データをモニタに表示する場合、あるいは、メモリカードに画像データをリサイズして記録する場合には、ストリーム的に処理する必要が無いため、大きな原画像を処理する場合であっても分割処理を行うことも可能であるため、水平１走査線分の画素数が多くても、小さな容量のラインバッファで足りる。
【００４１】
このように、リサイズ処理Ａ及びリサイズ処理Ｂとでは、必要なラインバッファの数及び容量が異なるが、双方のリサイズ処理に対応したラインバッファを各々搭載することはメモリ容量の増大・コスト増大につながる。このため、本実施の形態では、後述するようにリサイズ処理Ａとリサイズ処理Ｂとでラインバッファ及び補間回路を共通に用いて処理するようにしている。
【００４２】
リサイズ処理Ａ及びリサイズ処理Ｂは、操作部９０を介してユーザにより指定されるモードに応じて選択的に行われる。ユーザは、ＬＣＤ４４をファインダとして使用する場合には、操作部９０を介してモードＡを指定し、メモリカード８２に記録されている画像データを再生する場合やメモリカード８２に画像データをリサイズして記録する場合には、操作部９０を介してモードＢを指定する。リサイズ処理部３０ｂでは、モードＡが指定されるとリサイズ処理Ａが行われ、モードＢが指定されるとリサイズ処理Ｂが行われる。モードＡとモードＢとは排他的に選択されて指定されるため、リサイズ処理Ａとリサイズ処理Ｂとが同時に行われることはない。
【００４３】
図３は、本実施の形態に係るデジタルカメラ１０における画像データの流れ及び画像データに施される各種信号処理（上記構成要素の各機能）を簡略的に示した図である。同図及び図１を参照しながら、画像データの流れ及び各種信号処理について簡単に説明する。
【００４４】
ＣＣＤ２４により、光学ユニット２２のレンズを通過した被写体像を示す入射光に基づく被写体が撮像されて、被写体像を示すアナログ画像信号が取得される。このアナログ画像信号は、アナログ信号処理部２６及びＡＤＣ２８を通過してデジタル画像データに変換され、デジタル信号処理部３０の信号処理部３０ａにより、ＹＣ信号に変換され、リサイズ前の画像データとして、メモリ７２に一旦格納される。
【００４５】
ここで、モードＡが指定されている場合には、リサイズ処理部３０ｂにより、上記ＹＣ変換された画像データにリサイズ処理Ａが施される。リサイズ処理Ａが施されリサイズされた画像データはＬＣＤ４４に表示される（スルー画像の表示）。一方、モードＢが指定され、かつ画像データをリサイズして記録する場合には、リサイズ処理Ｂが施されリサイズされた後、圧縮・伸張処理回路８６でＪＰＥＧ圧縮されてメモリカード８２に記録される。また、モードＢが指定され、かつメモリカード８２に記録されている画像データを再生する場合には、メモリカード８２から画像データが読み出されて圧縮・伸張処理回路８６でＪＰＥＧ伸張された後、リサイズ処理Ｂが施されリサイズされてＬＣＤ４４に表示される。なお、被写体を撮像して得られた画像データにリサイズ処理を施さずにそのままのサイズでメモリカード８２に記録する場合には、信号処理部３０ａでの処理後に、圧縮・伸張処理回路８６でＪＰＥＧ圧縮されてメモリカード８２に記録される。
【００４６】
次に、リサイズ処理部３０ｂに含まれる出力画素データ算出部６４の詳細な構成を説明する。図４は、出力画素データ算出部６４の構成図である。出力画素データ算出部６４は、水平方向の画素データを補間処理する水平方向処理部６６と、垂直方向の画素データを補間処理する垂直方向処理部６８を含んで構成されている。図示されるように、本実施の形態では、水平方向、垂直方向の順に補間処理を行う。なお、水平方向処理部６６及び垂直方向処理部６８の前段には、入力された出力画素の位置座標から、入力画像の画素データのうち補間処理に必要な該位置座標の周辺画素の画素データを選択して読み込む画素入力部が設けられているが、ここでは図示を省略する。
【００４７】
図４に示されるように、水平方向処理部６６は、直列に接続された１クロック遅延部５１、５２、５３を備え、入力された入力画像の画素データを１クロック分だけ次々に遅延して出力する。これにより、図５に示されるように、補間対象の出力画素Ｆの周辺４画素の画素データＬ０、Ｌ１、Ｌ２、Ｌ３を同時に出力することができる。
【００４８】
遅延前の画素データ及び各１クロック遅延部５１，５２，５３により遅延された各画素データには、乗算器５５，５６，５７，５８の各々によって係数発生器５４から与えられた補間係数α、β、γ、Δが乗算され、加算器５９に出力される。加算器５９は、補間係数が乗算された周辺４画素の画素データを合算して垂直方向処理部６８に出力する。
【００４９】
すなわち、乗算器５５，５６，５７，５８及び加算器５９の各々によって、下記（１）式に示した計算が行われて出力される。
Ｆ＝αＬ０＋βＬ１＋γＬ２＋ΔＬ３            ・・・・・（１）
なお、補間係数α、β、γ、Δは、係数発生器５４で以下の算出式（２）〜（５）により算出される。
α＝ｋｔ3−２ｋｔ2＋ｋｔ                      ・・・・・（２）
β＝（ｋ＋２）ｔ3−（ｋ＋３）ｔ2＋１          ・・・・・（３）
γ＝−（ｋ＋２）ｔ3＋（２ｋ＋３）ｔ2−ｋｔ    ・・・・・（４）
Δ＝−ｋｔ3＋ｋｔ2                            ・・・・・（５）
ここで、ｋは、ユーザにより設定可能な画質（シャープネス）を調整するパラメータであり、−１≦ｋ≦０の範囲をとる。ｋが−１に近いほど輪郭が強調され、０に近いほどぼやける。ｋの値は、後述するリサイズ処理Ａの垂直方向における処理以外では固定とすることもできる。また、図５に示されるように、ここでは、補間する出力画素Ｆの両隣の画素との距離の比率を「ｔ：１−ｔ」として表している。
【００５０】
加算器５９から出力された画素データは、垂直方向処理部６８に出力される。
【００５１】
垂直方向処理部６８は、ライン遅延制御部７４が備えられ、ライン遅延制御部７４には水平方向処理部６６から出力された画素データが入力される。
【００５２】
図６は、ライン遅延制御部７４の構成を示した図である。出力画素の画素データは、リサイズ処理Ｂでは周辺４画素から算出されるため、垂直方向には少なくとも画素データを３ライン分遅延させるためのラインバッファが３個必要となる。このため、ライン遅延制御部７４には、ラインバッファＡ，Ｂ，Ｃが備えられている。各ラインバッファＡ，Ｂ，Ｃは直列に接続されて構成され、水平方向処理部６６から出力され入力信号線に入力された画素データを、１ライン分（水平１走査線分）だけ次々に遅延して後段のラインバッファ及び各々に設けられた出力端子ａ，ｂ，ｃに出力する。なお、各ラインバッファＡ，Ｂ，Ｃは、ここでは、２５６画素分の画素データのバッファリングが可能な容量を備えている。
【００５３】
入力信号線に入力された画素データを出力する出力端子ｇが設けられ、該出力端子ｇは信号線０に接続され、信号線０には、常に水平方向処理部６６からの画素データがそのまま入力される。
【００５４】
セレクタ１２は、上記出力端子ｇ，ａ，ｂ，ｃに加えて、入力信号線に入力された画素データまたはラインバッファＡから出力された画素データを入力するための入力端子ｄ、及びラインバッファＢから出力された画素データまたはラインバッファＣから出力された画素データを入力するための入力端子ｅを備えて構成されている。セレクタ１２は、これら出力端子と入力端子との接続を切替えることにより、水平方向処理部６６から入力された画素データ及びラインバッファＡ，Ｂ，Ｃにより遅延された画素データを選択して信号線０〜３に出力する。
【００５５】
セレクタ１２の切替えは、ユーザにより指定されたモード（上述したモードＡまたはモードＢ）に応じて行われる。具体的には、コントローラ１１が、ＣＰＵ５０からモード切替えの指示を受け、該指示に応じてセレクタ１２に選択信号を出力してセレクタ１２の切替えを制御する。
【００５６】
ライン遅延制御部７４から出力された遅延前の画素データ及びラインバッファＡ，Ｂ，Ｃにより遅延された画素データには、乗算器７５，７６，７７，７８の各々によって係数発生器７９から与えられた補間係数α、β、γ、Δが乗算され、加算器８１に出力される。加算器８１は、補間係数が乗算された画素データを合算して出力画素の画素データとして出力する。乗算器７５，７６，７７，７８及び加算器８１の各々によって、上記（１）式に示した計算が行われて出力される。すなわち、この構成によれば、垂直方向処理部６８においても、図５に示される水平方向の補間処理と同様に、補間対象の出力画素Ｆの垂直方向の周辺４画素から出力画素Ｆの画素データ求めることができる。
【００５７】
次に、リサイズ処理部３０ｂで行われるリサイズ処理Ａ及びＢについて図６の構成図と図７及び図８の説明図とを用いて説明する。
【００５８】
まず、水平方向及び垂直方向の双方で周辺４画素を用いてスプライン補間を行うリサイズ処理Ｂから説明する。
【００５９】
リサイズ処理Ｂ（モードＢ）の場合には、上述したように水平方向を周辺４画素でリサイズ処理した後、垂直方向も、周辺４画素でリサイズ処理する。垂直方向処理部６８では、ライン遅延制御部７４のコントローラ１１は、ＣＰＵ５０からモードＢでリサイズ処理するように指示を受けると、セレクタ１２に選択信号を出力し、出力端子ａと入力端子ｄとを接続させると共に、出力端子ｂと入力端子ｅとを接続させる（図６の矢印Ｂ）。
【００６０】
これにより、図７に示されるように、水平方向処理部６６から入力信号線に入力された画素データは、信号線０に出力され、ラインバッファＡから出力され１ライン分遅延された画素データは、信号線１に出力され、ラインバッファＢから出力され２ライン分遅延された画素データは、信号線２に出力され、ラインバッファＣから出力され３ライン分遅延された画素データは、信号線３に出力される。
【００６１】
各信号線０、１，２，３に出力された画素データは、上記のように乗算器７５，７６，７７，７８によって水平方向で用いた補間係数と同じ補間係数α，β，γ，Δが乗算され加算器８１により合算されて出力される。ここでは、水平方向と同様に上記（１）式に示した計算が行われて出力される。また、補間係数α，β，γ，Δは、ＣＰＵ５０からの指示により、係数発生器７９が上記（２）〜（５）の算出式を用いて算出し、各乗算器に与える。
【００６２】
なお、上述したように各ラインバッファＡ，Ｂ，Ｃでバッファリングできるのは２５６画素までであるため、水平方向処理部６６でリサイズ処理した後の水平幅は、２５６画素以下にならなくてはならない。すなわち、本実施の形態では、水平幅が、２５６／縮小率（または拡大率）までの入力画像に対してリサイズ処理が可能となる。従って、ここでは、各ラインバッファＡ，Ｂ，Ｃの各々で、２５６画素数以下の画素数を１ラインとして遅延する。なお、水平２５６画素以上の出力サイズが必要な場合には、入力画像を分割して処理することができる。リサイズ処理Ｂ（モードＢ）は、スルー画像を表示するモードではないため、ストリーム的に順次データを処理する必要がなく、モードＢでは分割処理が可能である。
【００６３】
次に、リサイズ処理Ａ（モードＡ）について説明する。モードＡでは、ＬＣＤ４４にスルー画像を表示させるため、ＣＣＤ２４から出力される画像信号（ここでは、２０４８画素×５１２ラインを出力し、垂直方向は１／３間引きされているとする）からＶＧＡサイズ（６４０画素×４８０ライン）の画像データを作成する。スルー画像を表示する場合には、ＣＣＤ２４から出力された信号をストリーム的に入力して処理するため、垂直方向処理部６８では、モニタサイズ６４０画素をカバーできるラインバッファが必要となる。
【００６４】
従って、モードＡでは、垂直方向処理部６８に設けられている水平２５６画素分のラインバッファ３個をまとめて用いて、仮想的に７６８画素分のラインバッファ１個分を確保し、垂直方向の補間処理を行う。
【００６５】
モードＡでは、上述したように水平方向を周辺４画素でリサイズ処理した後、垂直方向では、周辺２画素でリサイズ処理する。なお、水平方向のリサイズ処理は上記と同様であるため、ここでは説明を省略する。
【００６６】
垂直方向処理部６８では、ライン遅延制御部７４のコントローラ１１は、ＣＰＵ５０からモードＡでリサイズ処理するように指示を受けると、セレクタ１２に選択信号を出力し、出力端子ｇと入力端子ｄとを接続させると共に、出力端子ｃと入力端子ｅとを接続させる（図６の矢印Ａ）。
【００６７】
これにより、図８に示されるように、水平方向処理部６６から入力信号線に入力された画素データは、信号線１に出力され、ラインバッファＣから出力された画素データは、信号線２に出力される。ラインバッファＡ、Ｂから出力された画素データは、後段のラインバッファには出力されるが、信号線０，１，２，３のいずれにも出力されない。すなわち、ここでは、各ラインバッファＡ，Ｂ，Ｃの容量を合算した容量（２５６×３で７６８画素）以下の画素数を１ラインとして、信号線２に、信号線１に入力された画素データに対して１ライン分遅延された画素データを出力する。本実施の形態では、ＶＧＡサイズの６４０画素が１ラインとされ、該１ライン分が遅延される。
【００６８】
モードＡでは、遅延画素データとして、ラインバッファＡの出力端及びラインバッファＢの出力端から出力された画素データは用いずに、ラインバッファＣの出力端から出力された画素データのみを用いるが、図６の構成では、水平方向処理部６６から入力信号線に入力された画素データは、信号線１だけでなく信号線０にも出力され、ラインバッファＣから出力され１ライン分遅延された画素データは、信号線２だけでなく信号線３にも出力される。本実施の形態では、乗算器で乗算される補間係数を以下のように変更することにより、信号線０及び信号線３に出力された画素データを０にすると共に、信号線１及び信号線２の２本の信号線に入力された画素データ（すなわち出力画素の周辺２画素の画素データ）のみを用いてスプライン補間を行う。
【００６９】
具体的には、ＣＰＵ５０からの指示により、係数発生器７９が、上記（２）〜（５）の算出式の係数ｋに０を代入して補間係数を算出する。これにより、補間係数α、β、γ、Δは、
α＝０
β＝２ｔ3−３ｔ2＋１
γ＝−２ｔ3＋３ｔ2
Δ＝０
となり、信号線０及び信号線３の補間係数α、Δを０にできる。また、信号線１及び２に対応する補間係数β及びγは合算して１になるため、整合性は保持されている。これら補間係数は、乗算器７５，７６，７７，７８に与えられる。
【００７０】
その後の処理は、モードＢと同様であり、各信号線０、１，２，３に出力された画素データには、乗算器７５，７６，７７，７８によって係数発生器７９で算出された補間係数が乗算され加算器８１により合算されて出力される。ただし、信号線０及び信号線３に出力された画素データは、係数０が乗算されることにより０となるため、実質的には信号線１及び信号線２に出力された周辺２画素を用いてスプライン補間されることとなる。
【００７１】
以上説明したように、垂直方向の補間処理を行うために必要なラインバッファ及び計算回路を、必要なラインバッファの数及びサイズが異なるリサイズ処理Ａとリサイズ処理Ｂとで共通化したため、画像のリサイズ処理に必要な内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる。
【００７２】
なお、上記実施の形態では、リサイズ処理Ｂでの補間処理に周辺４画素を用いて補間処理する例を説明したが、これに限定されず、それ以上の画素数を用いて算出してもよい。その場合は、上記ラインバッファの数をそれに合わせて増やし、（１）〜（５）式はそれにあわせた形式に変更すればよい。このような構成であっても、上記と同様に処理することによって、リサイズ処理Ａとリサイズ処理Ｂとで、補間処理に用いるラインバッファ及び回路を共通に用いることができる。
【００７３】
なお、上記実施の形態では、水平方向、垂直方向の順に補間処理を行う構成としたため、モニタサイズをカバーできるサイズのラインバッファを３個設けたが、垂直方向、水平方向の順に補間処理を行う構成とする場合には、ＣＣＤサイズをカバーできるだけのサイズのラインバッファを３個を設けるようにすることができる。しかしながら、後者の場合には、個々のラインバッファの容量を前者の場合よりも大きくする必要があるため（通常、ＣＣＤサイズはモニタサイズよりも大きいため）、補間処理を行う回路は、水平方向を先に行うような構成にすることが好ましい。
【００７４】
また、本発明は、水平方向及び垂直方向を別々に行う構成に限定するものではなく、垂直方向、水平方向を同時に行う構成としてもよい。
【００７５】
また、上記実施の形態では、ｋ＝０にすることにより、補間係数α、Δを０にする例について説明したが、これに限定されず、例えば、ｋの値に拘わらず、補間係数α、Δを強制的に０に設定し、上記（２）〜（５）の計算式ではなく他の計算式を用いて補間係数β、γを算出するようにしてもよい。
【００７６】
なお、上記実施の形態のように、ライン遅延制御部７４が図６の構成の場合には、モードＡのときに、水平方向処理部６６から入力信号線に入力された画素データは、信号線１だけでなく信号線０にも出力され、ラインバッファＣから出力され１ライン分遅延された画素データは、信号線２だけでなく信号線３にも出力されてしまう。従って、信号線０及び信号線３に出力された画素データを０にするために乗算器で乗算される係数を０にする必要があったが、ライン遅延制御部７４を図９に示されるような構成にして、信号線０及び信号線３に画素データが出力されないように制御し、該信号線０及び信号線３に流れるデータを強制的に０に設定してやることにより、信号線０及び信号線３に対応する補間係数がどのような値であっても加算器８１で正しく合算して画素データを生成することができる。なお、このような構成であっても、信号線１及び２の補間係数は合算して１となるようにする必要がある。
【００７７】
図９に示すライン遅延制御部の具体的な動作を説明する。図９のセレクタ１６には、図６に示す各入出力端子に加えて、信号線０の入力側端部に入力端子ｆが、信号線３の入力側端部に入力端子ｈが設けられている。
【００７８】
ライン遅延制御部７４のコントローラ１１は、ＣＰＵ５０からモードＡ（スルー画像表示モード）でリサイズ処理するように指示を受けると、セレクタ１６に選択信号を出力し、出力端子ｇと入力端子ｄとを接続させ、出力端子ｃと入力端子ｅとを接続させると共に、出力端子ｇと入力端子ｆとを切断させ、出力端子ｃと入力端子ｈとを切断させる（図９の矢印Ａ）。これにより、モードＡのときに、水平方向処理部６６から入力信号線に入力された画素データは、信号線１のみに出力され、ラインバッファＣから出力され１ライン分遅延された画素データは、信号線２のみに出力される。また、係数発生器７９では、ＣＰＵ５０からの指示により、モードＡに対応して、信号線１及び２に対応した乗算器７６，７７に与える補間係数を算出する。これによっても、周辺２画素を用いたスプライン補間を正しく行うことができる。
【００７９】
一方、ライン遅延制御部７４のコントローラ１１は、ＣＰＵ５０からモードＢ（メモリカード再生・記録モード）でリサイズ処理するように指示を受けると、セレクタ１６に選択信号を出力し、出力端子ａと入力端子ｄとを接続させ、出力端子ｂと入力端子ｅとを接続させると共に、出力端子ｇと入力端子ｆとを接続させ、出力端子ｃと入力端子ｈとを接続させる（図９の矢印Ｂ）。これにより、水平方向処理部６６から入力信号線に入力された画素データは、信号線０に出力され、ラインバッファＡから出力され１ライン分遅延された画素データは、信号線１に出力され、ラインバッファＢから出力され２ライン分遅延された画素データは、信号線２に出力され、ラインバッファＣから出力され３ライン分遅延された画素データは、信号線３に出力される。また、係数発生器７９では、ＣＰＵ５０からの指示により、モードＢに対応して、各乗算器に対応した補間係数を算出する。これにより、周辺４画素を用いたスプライン補間を正しく行うことができる。
【００８０】
また、ライン遅延制御部７４にセレクタを設けず、単にラインバッファＡ，Ｂ，Ｃを直列に接続して構成しただけの回路構成とし、各信号線０〜３に対応する乗算器に与えられる補間係数のみを調整することによって、モードに応じたリサイズ処理を行うようにしてもよい。
【００８１】
図１０は、補間係数のみを調整する場合の垂直方向処理部６８の構成を示した構成図である。モードＡのときには、周辺２画素でスプライン補間されるようにβとγを０にして、αとΔは合算して１となるような補間係数を発生させる。モードＢのときには周辺４画素でスプライン補間されるように、補間係数α、β、γ、Δの各々が０以外かつ全て合算して１となる補間係数（上記（２）〜（５）のような算出式で算出する）を発生させる。
【００８２】
これにより、モードＡでは、ラインバッファＣから出力された画素データを１ライン分遅延された遅延画素データとして用い、入力信号線に入力された画素データと該遅延画素データの周辺２画素を用いて補間処理することができる。すなわち、ラインバッファＣから出力された画素データをそのまま遅延画素データとして用いることで、ＬＣＤ４４の画面サイズをカバーできるだけの画素数分を１ラインとして、該１ライン分遅延されたデータを得ることができる。一方、モードＢでは、入力信号線に入力された画素データと、各ラインバッファＡ，Ｂ，Ｃから出力された各画素データの周辺４画素を用いて補間処理することができる。これは、上記実施の形態と同様である。
【００８３】
このような構成によっても、垂直方向の補間処理を行うために必要なラインバッファ及び計算回路を、必要なラインバッファの数及びサイズが異なるリサイズ処理Ａとリサイズ処理Ｂとで共通化することができ、内蔵メモリの大幅な増加を抑え、ＬＳＩのチップコストを低減することができる。
【図面の簡単な説明】
【００８４】
【図１】本実施の形態に係るデジタルカメラの構成図である。
【図２】デジタル信号処理部の機能構成を示したブロック図である。
【図３】本実施の形態に係るデジタルカメラにおける画像データの流れ及び画像データに施される各種信号処理（上記構成要素の各機能）を簡略的に示した図である。
【図４】出力画素データ算出部の構成図である。
【図５】周辺４画素を用いて補間する補間処理の説明図である。
【図６】ライン遅延制御部の構成図である。
【図７】モードＢのときのライン遅延制御部における画素データの流れを示した説明図である。
【図８】モードＡのときのライン遅延制御部における画素データの流れを示した説明図である。
【図９】ライン遅延制御部の他の構成を示した図である。
【図１０】補間係数のみを調整する場合の垂直方向処理部の構成を示した図である。
【符号の説明】
【００８５】
１０  デジタルカメラ
１１  コントローラ
１２、１６  セレクタ
３０  デジタル信号処理部
３０ｂ  リサイズ処理部
６２  画素位置算出部
６４  出力画素データ算出部
６６  水平方向処理部
６８  垂直方向処理部
７４  ライン遅延制御部
７９  係数発生器
８１  加算器
７５，７６，７７，７８  乗算器
【図１】
2006134030.tif 000003
【図２】
2006134030.tif 000004
【図３】
2006134030.tif 000005
【図４】
2006134030.tif 000006
【図５】
2006134030.tif 000007
【図６】
2006134030.tif 000008
【図７】
2006134030.tif 000009
【図８】
2006134030.tif 000010
【図９】
2006134030.tif 000011
【図１０】
2006134030.tif 000012