(57)【要約】【課題】画像の拡大補間に用いる係数の特性を利用することで回路規模を縮小させる。【解決手段】画素補間装置は、水平方向についてはスティックバッファ部５２、垂直方向についてはバッファ部８０に保持される同一線上に存在する複数点の画素データをもとに補間位置の画素データを生成する。水平ＬＵＴ部５４の拡大係数テーブル５４ａ、垂直ＬＵＴ部５６の拡大係数テーブル５６ａには、補間位置から第ｎ近傍に存在する複数の画素データに対して共通する係数データが記憶される。水平ＬＵＴ部５４及び垂直ＬＵＴ部５６は、拡大器コントローラ５０から指示され補間位置に応じて、拡大係数テーブル５４ａ，５６ａに記憶された係数データをもとに、第ｎ近傍位置（Ｐ0，Ｐ1，Ｐ2，Ｐ3，Ｐ4，Ｐ5）の複数の画素データに対する係数データを出力して、複数点の画素データのそれぞれとの演算を実行する。【選択図】      図４
2006185123.tif 000002
【特許請求の範囲】
【請求項１】
共通するライン上に存在する複数点の画素データをもとに、前記ライン上の補間位置の画素データを生成する画素補間装置において、
補間位置から前記ライン上で異なる方向でそれぞれｎ番目に近い第ｎ近傍に存在する複数の画素データに対して共通する係数データが記憶された記憶手段と、
前記補間位置から第ｎ近傍の複数の画素データに対して、前記記憶手段に記憶された係数データを用いて演算を実行する演算手段と
を具備したことを特徴とする画素補間装置。
【請求項２】
前記記憶手段に記憶される係数データは、前記補間位置から離れた位置の画素データに対するほどビット数を小さくしたことを特徴とする請求項１記載の画素補間装置。
【請求項３】
前記記憶手段に記憶される係数データは、第ｎ近傍の複数の画素データのそれぞれに対する係数データを組み合わせたもので、
前記演算手段は、前記記憶手段に記憶される係数データを分割して、第ｎ近傍の複数の画素データのそれぞれに対して演算を実行することを特徴とする請求項１記載の画素補間装置。
【請求項４】
前記記憶手段に記憶される係数データを正の値とし、
前記演算手段は、前記補間位置から第ｎ近傍の画素データに対して、ｎが偶数の場合には演算結果を負の値、ｎが奇数の場合には演算結果を正の値として演算を実行することを特徴とする請求項１記載の画素補間装置。
【請求項５】
前記記憶手段に記憶される係数データは、補間位置の画素データの生成のもとになる複数の画素データのそれぞれに対する係数データを１つにまとめた値とすることを特徴とする請求項１記載の画素補間装置。
【請求項６】
前記演算手段は、前記記憶手段に記憶された第ｎ近傍の画素データに対する係数データが０の場合には、演算結果とする値を前記画素データと同じとなるように演算を実行することを特徴とする請求項１記載の画素補間装置。
【請求項７】
前記記憶手段に記憶される係数データは、所定の偶関数に基づく値を示すことを特徴とする請求項１記載の画素補間装置。
【請求項８】
共通するライン上に存在する複数点の画素データをもとに、前記ライン上の補間位置の画素データを生成する画素補間装置において、
補間位置を示す補間位置データを出力するコントローラと、
補間位置として取りうる各位置に応じた、補間位置から前記ライン上で異なる方向でそれぞれｎ番目に近い第ｎ近傍に存在する複数の画素データに対して共通する係数データを記憶する係数テーブルと、
前記コントローラより出力された補間位置データに対応する位置に応じて、前記係数テーブルから前記第ｎ近傍のそれぞれに対する係数データを出力する係数データ出力手段と、
前記ライン上の複数の画素データを記憶するバッファ手段と、
前記バッファ手段により記憶された複数の画素データのそれぞれに対して、前記係数データ出力手段により出力された係数データを用いて演算を実行する演算手段と
を具備したことを特徴とする画素補間装置。
【請求項９】
前記演算手段は、
前記バッファ手段により記憶された複数の画素データのそれぞれに対して、前記係数データ出力手段により出力された係数データを用いて乗算を実行する乗算手段と、
前記乗算手段による前記補間位置から奇数番目にある画素データに対する演算結果の総和から、偶数番目にある画素データに対する演算結果の総和を減算する加減算手段と
を具備したことを特徴とする請求項８記載の画素補間装置。
【請求項１０】
所定間隔で複数配置された既存画素の画素データを取得する取得手段と、
補間すべき補間画素の位置である補間位置を指定する指定手段と、
前記取得手段により取得された複数の画素データのうち、前記指定手段により指定された補間位置の近傍に存在する複数の既存画素に対応する画素データを出力する画素データ出力手段と、
補間画素と既存画素との位置関係に応じた複数の係数データを予め記憶する記憶手段と、
前記記憶手段に記憶された複数の係数データのうち、前記画素データ出力手段により出力された複数の既存画素に対応する複数の係数データを出力する係数データ出力手段と、
前記画素データ出力手段により出力された複数の画素データと、前記係数データ出力手段により出力された複数の係数データとに基づく所定の演算によって、前記指定手段により指定された補間位置の画素データを生成する生成手段と
を備え、
前記記憶手段は、補間画素に対して既存画素が第１の方向にある場合の係数データと、補間画素に対して既存画素が前記第１の方向とは逆の第２の方向にある場合の係数データのうち、いずれか一方の係数データを記憶し、
前記係数データ出力手段は、前記記憶手段に記憶されている係数データに基づいて、補間画素に対して既存画素が第１の方向にある場合の係数データと、補間画素に対して既存画素が前記第１の方向とは逆の第２の方向にある場合の係数データを出力することを特徴とする画素補間装置。
【請求項１１】
前記記憶手段は、符号を省略した係数データを記憶し、
前記係数データ出力手段は、補間画素に対して各既存画素が奇数番目であるか偶数番目であるかに応じて、前記記憶手段に記憶されている係数データに符号を付加して出力することを特徴とする請求項１０記載の画素補間装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルスチルカメラ、デジタルビデオカメラなどの画像を拡大処理する機能が搭載された装置に用いる画素補間装置に関する。
【背景技術】
【０００２】
一般に、デジタルスチルカメラ、デジタルビデオカメラなどの装置には、光学的な操作／機能によらず画像を拡大処理するデジタルズーム機能が搭載されている。こうしたカメラ装置では、ユーザによるズーム操作に応じて、元の画像の画素データをもとに拡大画像の画素データを生成（補間）することで画像を拡大（ズーム）する。この際、複数の既存画素データの値と、補間位置に応じて選択された補間係数とを用いた演算処理を実行することで画素データを生成する。
【０００３】
例えば、画像を拡大する装置としては、縦横の一方向に隣接して並ぶ少なくとも４個の画素データの各々に所定の係数を乗じた上で加算することによって、その中央の２個の画素データの間に位置する画素データを生成し、縦横の他の方向に隣接して並ぶ少なくとも４個の先に生成した画素データの各々に所定の係数を乗じた上で加算することによって、その中央の２個の画素データの間に位置する画素データを生成する画像拡大装置が考えられている（特許文献１参照）。
【０００４】
また、ピクセルの各々がデジタルデータを含むピクセルのアレイによって形成されたイメージを拡大するために、イメージの隣接するピクセル間を補間することにより拡大されたイメージのピクセルを提供するイメージ装置であって、スプライン重み付け関数を表すフィルタ係数が記憶されたルックアップテーブルの形のメモリと、拡大されたイメージ内に補間されるピクセル値を計算するために係数を用いるように適合された演算回路とを含むイメージ処理装置が考えられている（特許文献２参照）。
【特許文献１】特開平５−７５８４号公報
【特許文献２】特開平１０−６３８２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように従来の画像を拡大する装置では、画像を拡大する場合に画素（ピクセル）データに対する係数を用いた演算を実行しているが、拡大補間における係数の特徴などを考慮していない、汎用的な係数データが記憶されたテーブルや演算回路が用いられていた。従って、テーブル（メモリ）や演算回路が冗長な回路構成となり、回路規模の増大を招いている可能性があった。
【０００６】
本発明の課題は、画像の拡大補間に用いる係数の特性を利用することで回路規模を縮小させることが可能な画素補間装置を提供することにある。
【課題を解決するための手段】
【０００７】
請求項１記載の発明は、共通するライン上に存在する複数点の画素データをもとに、前記ライン上の補間位置の画素データを生成する画素補間装置において、補間位置から前記ライン上で異なる方向でそれぞれｎ番目に近い第ｎ近傍に存在する複数の画素データに対して共通する係数データが記憶された記憶手段と、前記補間位置から第ｎ近傍の複数の画素データに対して、前記記憶手段に記憶された係数データを用いて演算を実行する演算手段とを具備したことを特徴とする。
【０００８】
請求項２記載の発明は、請求項１記載の発明において、前記記憶手段に記憶される係数データは、前記補間位置から離れた位置の画素データに対するほどビット数を小さくしたことを特徴とする。
【０００９】
請求項３記載の発明は、請求項１記載の発明において、前記記憶手段に記憶される係数データは、第ｎ近傍の複数の画素データのそれぞれに対する係数データを組み合わせたもので、前記演算手段は、前記記憶手段に記憶される係数データを分割して、第ｎ近傍の複数の画素データのそれぞれに対して演算を実行することを特徴とする。
【００１０】
請求項４記載の発明は、請求項１記載の発明において、前記記憶手段に記憶される係数データを正の値とし、前記演算手段は、前記補間位置から第ｎ近傍の画素データに対して、ｎが偶数の場合には演算結果を負の値、ｎが奇数の場合には演算結果を正の値として演算を実行することを特徴とする。
【００１１】
請求項５記載の発明は、請求項１記載の発明において、前記記憶手段に記憶される係数データは、補間位置の画素データの生成のもとになる複数の画素データのそれぞれに対する係数データを１つにまとめた値とすることを特徴とする。
【００１２】
請求項６記載の発明は、請求項１記載の発明において、前記演算手段は、前記記憶手段に記憶された第ｎ近傍の画素データに対する係数データが０の場合には、演算結果とする値を前記画素データと同じとなるように演算を実行することを特徴とする。
【００１３】
請求項７記載の発明は、請求項１記載の発明において、前記記憶手段に記憶される係数データは、所定の偶関数に基づく値を示すことを特徴とする。
【００１４】
請求項８記載の発明は、共通するライン上に存在する複数点の画素データをもとに、前記ライン上の補間位置の画素データを生成する画素補間装置において、補間位置を示す補間位置データを出力するコントローラと、補間位置として取りうる各位置に応じた、補間位置から前記ライン上で異なる方向でそれぞれｎ番目に近い第ｎ近傍に存在する複数の画素データに対して共通する係数データを記憶する係数テーブルと、前記コントローラより出力された補間位置データに対応する位置に応じて、前記係数テーブルから前記第ｎ近傍のそれぞれに対する係数データを出力する係数データ出力手段と、前記ライン上の複数の画素データを記憶するバッファ手段と、前記バッファ手段により記憶された複数の画素データのそれぞれに対して、前記係数データ出力手段により出力された係数データを用いて演算を実行する演算手段とを具備したことを特徴とする。
【００１５】
請求項９記載の発明は、請求項８記載の発明において、前記演算手段は、前記バッファ手段により記憶された複数の画素データのそれぞれに対して、前記係数データ出力手段により出力された係数データを用いて乗算を実行する乗算手段と、前記乗算手段による前記補間位置から奇数番目にある画素データに対する演算結果の総和から、偶数番目にある画素データに対する演算結果の総和を減算する加減算手段とを具備したことを特徴とする。
【００１６】
請求項１０記載の発明は、所定間隔で複数配置された既存画素の画素データを取得する取得手段と、補間すべき補間画素の位置である補間位置を指定する指定手段と、前記取得手段により取得された複数の画素データのうち、前記指定手段により指定された補間位置の近傍に存在する複数の既存画素に対応する画素データを出力する画素データ出力手段と、補間画素と既存画素との位置関係に応じた複数の係数データを予め記憶する記憶手段と、前記記憶手段に記憶された複数の係数データのうち、前記画素データ出力手段により出力された複数の既存画素に対応する複数の係数データを出力する係数データ出力手段と、前記画素データ出力手段により出力された複数の画素データと、前記係数データ出力手段により出力された複数の係数データとに基づく所定の演算によって、前記指定手段により指定された補間位置の画素データを生成する生成手段とを備え、前記記憶手段は、補間画素に対して既存画素が第１の方向にある場合の係数データと、補間画素に対して既存画素が前記第１の方向とは逆の第２の方向にある場合の係数データのうち、いずれか一方の係数データを記憶し、前記係数データ出力手段は、前記記憶手段に記憶されている係数データに基づいて、補間画素に対して既存画素が第１の方向にある場合の係数データと、補間画素に対して既存画素が前記第１の方向とは逆の第２の方向にある場合の係数データを出力することを特徴とする。
【００１７】
請求項１１記載の発明は、請求項１１記載の発明において、前記記憶手段は、符号を省略した係数データを記憶し、前記係数データ出力手段は、補間画素に対して各既存画素が奇数番目であるか偶数番目であるかに応じて、前記記憶手段に記憶されている係数データに符号を付加して出力することを特徴とする。
【発明の効果】
【００１８】
請求項１記載の発明によれば、補間位置から共通するライン上で第ｎ近傍に存在する複数の画素データに対して共通する係数データを記憶しておき、補間位置から第ｎ近傍の複数の画素データに対して共通する係数データを用いて演算を実行して補間位置の画素データを生成するので、補間位置の画素データを生成するために用いる第ｎ近傍のそれぞれの既存画素に対応する係数データを個別に記憶しないようにすることで回路規模の縮小を図ることができる。
【００１９】
請求項２記載の発明によれば、請求項１の発明の効果に加えて、補間位置から離れた位置の画素データ、すなわち補間位置の画素データの生成に影響の少ない画素データに対する係数データほどビット数を小さくすることで、補間への影響を増大させずに係数データを記憶するレジスタ等のビット幅縮小による回路規模の縮小を図ることができる。
【００２０】
請求項３記載の発明によれば、請求項１の発明の効果に加えて、第ｎ近傍の複数の画素データのそれぞれに対する係数データを組み合わせて１つの係数データとし、この係数データを分割して第ｎ近傍の複数の画素データのそれぞれに対して演算を実行するようにすることで、第ｎ近傍のそれぞれの既存画素に対応する係数データを個別に記憶することなく、１つの係数データを用いて複数の画素データに対するそれぞれの演算を実行することができる。
【００２１】
請求項４記載の発明によれば、請求項１の発明の効果に加えて、補間位置から第ｎ近傍の画素データに対して、ｎが偶数の場合には演算結果を負の値、ｎが奇数の場合には演算結果を正の値として演算を実行することにより、全ての係数データを正の値として記憶しておくことができ、これにより符号に要する回路を不要にして回路規模の縮小を図ることができる。
【００２２】
請求項５記載の発明によれば、請求項１の発明の効果に加えて、補間位置の画素データの生成のもとになる複数の画素データのそれぞれに対する係数データを１つにまとめた値とするので、ある補間位置についての係数データを読み出すためのアドレスを削減して回路規模の縮小を図ることができる。
【００２３】
請求項６記載の発明によれば、請求項１の発明の効果に加えて、第ｎ近傍の画素データに対する係数データが０の場合には、演算結果とする値を画素データと同じとなるように演算を実行することで、例えば補間位置と既存画素位置とが同じ（または同じとみなす位置のもの）場合に既存画素の画素データを補間された値として用いるために、ビット数が増加する特別な係数データを記憶させておく必要がない。例えば、係数データを２５６で正規化した値とした場合、既存画素の画素データを補間された値として演算するためには、正規化の値を２５６とする必要があるが、この係数データの値（２５６）のためだけに係数データのビット幅を増やす必要がないので回路規模の増大を回避できる。
【００２４】
請求項７記載の発明によれば、請求項１の発明の効果に加えて、係数データは、所定の偶関数に基づく値を示すようにすることで、拡大補間における係数の特徴を利用した回路規模の縮小を図ることができる。
【００２５】
請求項８記載の発明によれば、補間位置として取りうる各位置に応じた、補間位置から共通するライン上で異なる方向でそれぞれｎ番目に近い第ｎ近傍に存在する複数の画素データに対して共通する係数データを係数テーブルに記憶し、補間位置に応じて係数テーブルから第ｎ近傍のそれぞれに対する係数データを出力して、複数の画素データのそれぞれに対して係数データを用いて演算を実行するので、補間位置の画素データを生成するために用いる第ｎ近傍のそれぞれの既存画素に対応する係数データを個別に記憶しないようにすることで回路規模の縮小を図ることができる。
【００２６】
請求項９記載の発明によれば、請求項１の発明の効果に加えて、複数の画素データのそれぞれに対して係数データを用いて乗算を実行し、補間位置から奇数番目にある画素データに対する演算結果の総和から、偶数番目にある画素データに対する演算結果の総和を減算することにより、奇数番目にある画素データに対する演算結果を正の値とし、偶数番目にある画素データに対する演算結果を負の値として演算することになり、係数テーブルに記憶された係数データを全て符号無しの正の値とし、符号ビットに要する回路を不要として回路規模の縮小を図ることができる。
【００２７】
請求項１０記載の発明によれば、補間画素に対して第１の方向にある既存画素に対する係数データと、第１の方向とは逆の第２の方向にある既存画素に対する係数データのいずれか一方の係数データのみを記憶し、この係数データに基づいて、第１の方向にある既存画素に対する係数データと第２の方向にある既存画素に対する係数データを出力するので、第１及び第２の方向にある既存画素に対する係数データを個別に記憶しないことで回路規模の縮小を図ることができる。
【００２８】
請求項１１記載の発明によれば、請求項１０の発明の効果に加えて、符号を省略した係数データを記憶し、補間画素に対して各既存画素が奇数番目であるか偶数番目であるかに応じて係数データに符号を付加して出力することで、係数データを記録するために符号に要する回路を不要にし、また係数データを用いた演算回路を簡略化して回路規模の縮小を図ることができる。
【発明を実施するための最良の形態】
【００２９】
以下、図面を参照して本発明の実施の形態について説明する。
【００３０】
図１は、本発明の実施の形態における画素補間装置が実装されたカメラ装置１の構成を示すブロック図である。
【００３１】
図１に示すカメラ装置１において、基本モードである撮影モードにおいては、レンズ光学系において、モータ（Ｍ）１０の駆動により絞り位置や通常撮影に応じたレンズ位置に撮影レンズ１１が移動される。撮影レンズ１１の撮影光軸後方に配置された撮像素子であるＣＣＤ（Charge Coupled Device）１２は、タイミング発生器（ＴＧ）１３、垂直ドライバ１４によって走査駆動され、一定周期毎に結像した光像に対応する光電変換出力を１画面分出力する。
【００３２】
この光電変換出力は、アナログ値の信号の状態でＲＧＢの各原色成分毎に適宜ゲイン調整された後に、サンプルホールド（Ｓ／Ｈ）回路１５でサンプルホールドされ、Ａ／Ｄ変換器１６でデジタルデータに変換され、さらにカラープロセス回路１７で画素補間処理及びγ補正処理を含むカラープロセス処理が行なわれて、デジタル値の輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒが生成され、ＤＭＡ（Direct Memory Access）コントローラ１８に出力される。
【００３３】
なお、カラープロセス回路１７には、本実施形態における画素補間装置に相当する拡大補間部１７ａが設けられている。拡大補間部１７ａは、制御部２５からのデジタルズーム操作に伴う制御に応じて、画像を拡大するための拡大補間処理を実行する。
【００３４】
ＤＭＡコントローラ１８は、カラープロセス回路１７の出力する輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒを、同じくカラープロセス回路１７からの複合同期信号、メモリ書込みイネーブル信号、及びクロック信号を用いて一度ＤＭＡコントローラ１８内部のバッファに書込み、ＤＲＡＭインタフェース（Ｉ／Ｆ）２０を介してバッファメモリとして使用されるＤＲＡＭ２１にＤＭＡ転送を行なう。
【００３５】
制御部２５は、ＣＰＵと、該ＣＰＵで実行される動作プログラムやデータ等を固定的に記録したＲ０Ｍ、及びワークメモリとして使用されるＲＡＭ等により構成され、このカメラ装置１全体の制御動作を司る。
【００３６】
制御部２５は、輝度及び色差信号のＤＲＡＭ２１へのＤＭＡ転送終了後に、この輝度及び色差信号をＤＲＡＭインタフェース２０を介してＤＲＡＭ２１より読出し、ＶＲＡＭコントローラ２６を介してＶＲＡＭ２７に書込む。
【００３７】
デジタルビデオエンコーダ２８は、輝度及び色差信号をＶＲＡＭコントローラ２６を介してＶＲＡＭ２７より定期的に読出し、これらのデータを元にビデオ信号を発生して表示部２９に出力する。
【００３８】
表示部２９は、撮影モード時にはモニタ表示部（電子ファインダ）として機能し、デジタルビデオエンコーダ２８からのビデオ信号に基づいた表示を行なうことで、その時点でＶＲＡＭコントローラ２６から取込んでいる画像情報に基づく画像（スルー画像）をリアルタイムに表示することになる。
【００３９】
表示部２９にスルー画像がリアルタイムに表示されている表示状態で、静止画像を撮影するタイミングでキー入力部３７のシャッタキーが操作されると、トリガ信号を発生する。
【００４０】
制御部２５は、このトリガ信号に応じてその時点でＣＣＤ１２の駆動を停止した後、自動露出処理を実行して適正な露出値を得て、レンズ光学系の絞りとＣＣＤ１２の露光時間を制御してあらためて撮像を実行させる。
【００４１】
こうして新たに得られた１フレーム分の画素データがＤＲＡＭ２１にＤＭＡ転送されて書込まれた後、制御部２５がＤＲＡＭ２１に書込まれている１フレーム分の画素データを読出して画像処理部３０に書込む。画像処理部３０は、画素データに対して、ＪＰＥＧ（Joint Photographic Experts Group）により画素データを符号化する。
【００４２】
符号化された画素データは、カメラ装置１の記録媒体として着脱自在に装着されているメモリカード３２、あるいはメモリカード３２が装着されていない場合は固定的に内蔵されている内蔵メモリ３３に書き込まれる。
【００４３】
そして、１フレーム分のメモリカード３２または内蔵メモリ３３への画素データの書込み終了に伴なって、制御部２５は、ＣＣＤ１２からＤＲＡＭ２１を経由したスルー画像を表示部２９においてモニタ表示させる駆動を再開する。
【００４４】
また、制御部２５には、キー入力部３７、音声処理部４０、ストロボ駆動部４１が接続される。
【００４５】
キー入力部３７は、電源キー、シャッタキー、モードスイッチ、メニューキー、選択キー、ズームボタン、及び十字キー（カーソルキー）等から構成され、それらのキー操作に伴なう信号は直接制御部２５へ送出される。
【００４６】
音声処理部４０は、ＰＣＭ音源等の音源回路を備え、音声の録音時にはマイクロホン部（ＭＩＣ）４２より入力された音声信号をデジタル化し、所定のデータファイル形式、例えばＭＰ３（MPEG-1 Audio Layer-3）規格に従ってデータ圧縮して音声データファイルを作成してメモリカード３２または内蔵メモリ３３へ送出する一方、音声の再生時にはメモリカード３２または内蔵メモリ３３から送られてきた音声データファイルの圧縮を解いてアナログ化し、スピーカ部（ＳＰ）４３を駆動して、拡声放音させる。
【００４７】
さらに音声処理部４０は、制御部２５からの制御に基づいて、各種動作音、例えばシャッタキーの操作に伴う擬似的なシャッタ音、他のキーの操作に伴うビープ音等も発生してスピーカ部４３より拡声放音させる。
【００４８】
ストロボ駆動部４１は、静止画像撮影時に図示しないストロボ用の大容量コンデンサを充電した上で、制御部２５からの制御に基づいてストロボ発光部４５を閃光駆動する。
【００４９】
次に、本実施形態における画素補間装置（拡大補間部１７ａ）について説明する。  
本実施形態における画素補間装置の具体的な回路構成（図４に示す）を説明する前に、拡大補間部１７ａにより実行される拡大補間処理の方法について説明する。ここでは、例えば、格子状に存在する複数の既存画素、例えば図２に示すように６ｘ６の既存画素からのある点（補間点）を補間する場合を例にして説明する。
【００５０】
６ｘ６の既存画素からの補間演算の手順としては、まず水平または垂直方向の共通するライン上に存在する６つの既存画素から１点を演算して補間し、これを６回繰り返して実行して６つの補間画素を生成し、その垂直または水平方向のライン上の６つの補間画素から同様にして１点を演算して補間を行う。なお、図２においては、同一線上に存在する複数の画素を対象として説明しているが、必ずしも全ての画素の位置が同一線上にある必要はない。すなわち、共通する１つのラインに存在すると見なすことができる複数の画素、例えばデルタ配列された画素を用いて補間する場合にも適用することができる。以下では、説明を簡単にするために同一線上に存在する画素を用いた場合を対象とする。  図２では、まず水平方向の同一線上に存在する６つの既存画素Ｐ0、…Ｐ5をもとにして、同一線上の補間位置における画素Ｐt0を生成する。同様にして、各水平方向の同一線上に配列された６つの既存画素をもとにして画素Ｐt１〜Ｐt5を生成する。そして、垂直方向の同一線上に存在する６つの既存画素Ｐt１〜Ｐt5をもとにして１点の画素Ｐtを演算して補間する。
【００５１】
一般的には、連続画像からの補間は、連続画像と矩形関数（ＲＥＣＴ関数）のたたみこみ（コンボルージョン）によるものと考えることができ、矩形関数のフーリエ変換がｓｉｎｃ（ｔ）＝ｓｉｎ（πｔ）／πｔとなる。
【００５２】
正確には、演算に使用する既存画素の範囲が限定されることや、演算が複雑であることから、近似式やルックアップテーブル（ＬＵＴ）を使用するケースが多い。
【００５３】
補間によく用いられる、サンプリング定理を用いた関数による補間係数は以下の式で表される。
【００５４】
ｆ（ｔ）＝ｓｉｎ（πｔ）／πｔ  
また、既存画素の範囲（つまりたたみこみに使用する画素の範囲／数）で演算するため、前式のように、−∞から∞の既存画素の値を使用する式は一般的でなく、通常は、有限個の既存画素の大きさに見合った窓関数などによってフィルタ特性を有限範囲内に抑える。
【００５５】
例えば、lanczos 3lobbed window関数による補間係数は以下の式で表される。
【００５６】
ｆ（ｔ）＝｛ｓｉｎ（πｔ）／πｔ｝  
ｘ｛ｓｌｎ（πｔ／３）／（πｔ／３）｝  
ただし−３≦ｔ≦３
６点の既存画素をＰ0、…Ｐ5、補間画素をＰtとするとするとき、Ｐtの値は以下の式で表せられる。
【００５７】
ｐt＝Σｆ（ｔn）Ｐn
ただしｔnは、既存画素ＰnからＰtまでの距離。
【００５８】
ここで、Ｐ2，Ｐ3を第１近傍画素、Ｐ1，Ｐ4を第２近傍画素、Ｐ0，Ｐ5を第３近傍画素とする。
【００５９】
たたみこみ演算回路は、一般的に係数に汎用性を持たせることにより、ＬＰＦやＨＰＦなど、さまざまなフィルタ演算に使用するケースが多いが、サンプリング定理で使用する上記の関数など、拡大補間係数のみを考えた場合では、ｔによって補間係数の値はある程度決まった特性を持つ。サンプリング定理におけるｓｉｎ（πｔ）／πｔのグラフおよび既存画素と補間画素の関係は、下記の特徴１〜３を有する。
【００６０】
特徴１．第ｎ近傍画素における係数は、同じ区間の値を使用することができる（例えば画素Ｐ2，Ｐ3に対する係数）。
【００６１】
特徴２．第ｎ近傍画素における係数は、ｎ＝奇数ならば正、偶数なら負の値をとる。
【００６２】
特徴３．ｎの数値が大きくなるほど、値が小さくなる。
【００６３】
以下、各特徴１〜３のそれぞれについて説明する。まず、特徴１について説明する。
【００６４】
補間画素から既存画素の位置関係は、Ｐ2Ｐt距離がｔのとき、順番に−（ｔ＋２）、−（ｔ＋１）、−ｔ、１−ｔ、２−ｔ、３−ｔとなる。このとき、第ｎ近傍画素の位置は、−（ｔ−ｎ−１）とｎ−ｔで、このときの拡大係数は、ｓｉｎｃ関数ｆ（ｔ）＝ｓｉｎ（πｔ）／πｔより、
ｆ（−（ｔ−ｎ−１））  
＝ｓｉｎ（−（ｔ−ｎ−１）π）／（−（ｔ−ｎ−１）π）  
＝ｓｉｎ（（ｔ−ｎ−１）π）／（−（ｔ−ｎ−１）π）  
ここでｔ'＝Ｈとすると、  
上式
＝ｓｉｎ（（ｎ−ｔ'）π）／（ｎ−ｔ'）π  
＝ｆ（ｎ−ｔ'）  
０≦ｔ≦１より、ｔ'＝１−ｔなので、０≦ｔ'≦１となる。
【００６５】
第ｎ近傍の補間係数は同じ区間の値でカバーすることができる（関数が偶関数であること、既存画素の間隔が同じことからも自明であるし、また窓関数などによる有限範囲に限定した関数においても、窓関数も偶関数であるから前述したlanczosにおいてもこのことは自明である）。
【００６６】
次に、特徴２について説明する。  
第ｎ近傍の区間は、ｎ−１≦ｔn≦ｎと−ｎ≦ｔn≦１−ｎである。
【００６７】
関数は偶関数であるからｎ−１≦ｔn≦ｎだけを例にとると、第ｎ近傍の区間について、関数ｓｉｎ（πｔ）は、
ｆ（ｔn）＝ｓｉｎ（πｔn）／πｔn
ｆ（ｔn）＝０の解は、ｔn＝０以外の整数のとき。また、
ｆ'（ｔn）＝（π２ｃｏｓ（πｔn）−ｓｉｎ（πｔn））／π２ｔn２
これより、ｆ（ｔn）＝０における傾きは、  
ｎが奇数のとき  
ｔn＝ｎ−１でｆ'（ｎ−１）≧０（ただし０はｔn＝０のとき）  
ｔn＝ｎでｆ'（ｎ−１）＜０
ｎが偶数のとき  
ｔn＝ｎ−１でｆ'（ｎ−１）＜０  
ｔn＝ｎでｆ'（ｎ−１）＞０  
なので、第ｎ近傍の区間では、ｎ＝奇数ならば正、偶数なら負の値となる。
【００６８】
図３（ａ）には、ｓｉｎｃ関数のグラフを示している。また、図３（ｂ）には、図３（ａ）に示す関数をもとにした、補間位置（画素Ｐt）と既存画素位置（画素Ｐ0〜Ｐ5）、及び各既存画素に対する係数の関係を示している。各既存画素に対する係数（画素値に乗算される値）はｆ（ｔ）の値となる。
【００６９】
図３（ｂ）に示すように、第１近傍の画素Ｐ2，Ｐ3と第３近傍の画素Ｐ0，Ｐ5に対する係数の値が正となっており、また第２近傍の画素Ｐ1，Ｐ4に対する係数の値が負になっている。
【００７０】
なお、図３では、係数の値は１で正規化されているが、回路上では例えば２５６に正規化した値などを使用し、各既存画素と係数の乗和を２５６で割った値とする。
【００７１】
特徴３について説明する。
【００７２】
関数ｆ（ｔ）の分母の関数は周期関数であり、また１／πｔnはｔが大きいほどは０に近づくので、関数ｆ（ｔ）としては、ｔの絶対値が大きくなるほど値は０に収束していく。
【００７３】
図３（ａ）（ｂ）に示すように、既存画素ＰnからＰtまでの距離が大きくなるほど値が小さくなっている。
【００７４】
これらの３つ特徴１，２，３から、拡大係数に関する回路の構成を以下のように限定することで、回路規模の縮小を図ることができる。
【００７５】
構成１．第ｎ近傍画素に対する複数の係数データを、それぞれ個別のテーブルに記憶しない。
【００７６】
構成２．第ｎ近傍画素における係数は、ｎ＝奇数ならば正、偶数なら負の値として扱うようにたたみこみ演算を行う。これにより、係数データを全て正数としてテーブルに記憶することができる。
【００７７】
構成３．ｎの数値が大きくなるほど、テーブルのレジスタのビット幅を少なくする。
【００７８】
また、回路設計においては、拡大係数は小数点で保持できないので、例えば２５６などで正規化を行う。正規化にする値は、ビットシフトによる除算を考慮して２のべき乗の値を用いる。
【００７９】
このとき、補間画素位置が、既存画素位置と同じ、または同じとみなす位置（限りなく近い位置）とみなす場合には、最隣接の既存画素と同等の値をとるようにするために拡大係数が２５６（正規化した値）となる。これは、例えば、正規化の値が２５６の場合であれば、２５６のためだけに係数のビット幅を増やすことになり非効率である。また、テーブルに記憶する係数データの値を変更することで拡大特性を変更させる構成としたとき、最近傍法を用いた拡大処理を実行することができるように、補間位置に近い方の第１近傍の画素に対する係数データが０のときは２５６を用いた演算と同等の演算結果を出力し、遠い方の第１近傍の画素に対する係数データが０のときは０となるような回路とする。これにより、拡大係数データを記憶するテーブルのビット幅の増加を防ぎながら、所望の拡大補間係数を得ることができる。
【００８０】
次に、本実施形態における前述した構成１〜３を考慮した画素補間装置（拡大補間部１７ａ）の詳細な構成について説明する。図４は、本実施形態における拡大補間部１７ａの構成を示すブロック図である。拡大補間部１７ａは、例えば６×６の方形配置された既存画素データをもとに補間位置の画素データを生成する構成を有しているものとする。
【００８１】
図４において、拡大器コントローラ５０は、６×６の既存画素データをもとにした補間を制御するもので、水平方向の補間位置を示す水平補間位置データを水平ＬＵＴ（ルックアップテーブル）部５４に出力し、垂直方向の補間位置を示す垂直補間位置データを垂直ＬＵＴ（ルックアップテーブル）部５６に出力する。
【００８２】
スティックバッファ部５２は、画素データをバッファリングするもので、入力された画素データを垂直方向に保持する６本のバッファが水平方向に配列されている。スティックバッファ部５２に画素データがバッファリングされることで、図２に示す水平方向の６つの画素データＰ0、…Ｐ5が出力される。
【００８３】
水平ＬＵＴ部５４には、スティックバッファ部５２にバッファリングされた画素データに対する、水平方向の補間演算を実行するための係数データが記憶された拡大係数テーブル５４ａが設けられている。水平ＬＵＴ部５４は、拡大器コントローラ５０から水平補間位置データを入力し、このデータが示す補間位置からの各近傍位置の画素データＰ0、…Ｐ5に対する係数データ（拡大係数）を出力する。水平ＬＵＴ部５４は、拡大係数テーブル５４ａにおける係数データの構成、すなわち後述する図６（ａ）〜（ｃ）の何れの構成とされているかに応じて、拡大係数テーブル５４ａに記憶されたデータを選択、分割して各近傍位置に対する係数データを出力する。
【００８４】
乗算器６００〜６０５は、それぞれスティックバッファ部５２から出力される水平方向の画素データＰ0、…Ｐ5と、水平ＬＵＴ部５４から出力される各近傍位置の係数データとを乗算を実行する。例えば、乗算器６００は、スティックバッファ部５２からの画素データＰ0に対して、この画素位置に対する係数データ（Ｐ0拡大係数）を用いた乗算を実行する。
【００８５】
レジスタ６２０〜６２５は、乗算器６００〜６０５による演算結果である画素データをそれぞれ記憶する。例えば、レジスタ６００には、乗算器６００による演算結果が保持される。
【００８６】
加算器６４は、レジスタ６２０，６２５に保持されたデータを加算し、加算器６６は、レジスタ６２１，６２３に保持されたデータを加算し、加算器６８は、レジスタ６２２，６２３に保持されたデータを加算する。さらに、加算器７０は、加算器６４，６８による演算結果を加算する。すなわち、レジスタ６２０〜６２５に保持された乗算結果について、補間位置から奇数番目にある画素データに対する演算結果の総和を加算器６４，７０によって算出し、偶数番目にある画素データに対する演算結果の総和を加算器６６により算出している。
【００８７】
レジスタ７２は、加算器７０による演算結果、すなわち補間位置から奇数番目（第１近傍、第３近傍）にある画素データに対する演算結果の総和を保持する。レジスタ７４は、加算器６６による演算結果、すなわち補間位置から偶数番目（第２近傍）にある画素データに対する演算結果の総和を保持する。
【００８８】
減算器７６は、レジスタ７２に保持された補間位置から奇数番目にある画素データに対する演算結果の総和から、レジスタ７４に保持された補間位置から偶数番目にある画素データに対する演算結果の総和を減算する。
【００８９】
すなわち、乗算器６００〜６０５、加算器６４，６６，６８，７０、及び減算器７６により、補間位置から第ｎ近傍の画素データに対して、ｎが偶数の場合には演算結果を負の値、ｎが奇数の場合には演算結果を正の値として演算を実行することになる。従って、水平ＬＵＴ部５４から出力される係数データが全て正の値としても、本来、係数を負とする値を含めた乗算結果を得ることができる。
【００９０】
これにより、水平方向の同一線上にある６つの画素データＰ0〜Ｐ5と水平ＬＵＴ部５４に記憶された係数データをもとに、補間位置における画素データＰtを生成することができる。
【００９１】
バッファ部８０は、減算器７６による演算結果（水平方向の補間位置における画素データ）を保持するレジスタ８００〜８０５を有する。バッファ部８０は、減算器７６による減算結果を順次保持し、６つ分の画素データを保持することで、各水平方向での補間位置に対して求められた垂直方向の同一線上に位置する画素データＰt0〜Ｐt5をレジスタ８００〜８０５に保持する。
【００９２】
垂直ＬＵＴ部５６には、バッファ部８０に保持された画素データに対する、垂直方向の補間演算を実行するための係数データが記憶された拡大係数テーブル５６ａが設けられている。垂直ＬＵＴ部５６は、拡大器コントローラ５０から垂直補間位置データを入力し、このデータが示す補間位置からの近傍の画素データＰt1〜Ｐt6に対する係数データ（拡大係数）を出力する。
【００９３】
乗算器８２０〜８２５は、それぞれバッファ部８０のレジスタ８００〜８０５から出力される垂直方向の画素データＰt0、…Ｐt5と、垂直ＬＵＴ部５６から出力される各近傍位置の係数データとを乗算を実行する。例えば、乗算器８２０は、バッファ部８０のレジスタ８００からの画素データＰt0に対して、この画素位置に対する係数データ（Ｐ0拡大係数）を用いた乗算を実行する。
【００９４】
レジスタ８４０〜８４５は、乗算器８２０〜８２５による演算結果である画素データをそれぞれ記憶する。例えば、レジスタ８４０には、乗算器８２０による演算結果が保持される。
【００９５】
加算器８６は、レジスタ８４０，８４５に保持されたデータを加算し、加算器８８は、レジスタ８４１，８４３に保持されたデータを加算し、加算器９０は、レジスタ８４２，８４３に保持されたデータを加算する。さらに、加算器９２は、加算器８６，９０による演算結果を加算する。すなわち、レジスタ８４０〜８４５に保持された乗算結果について、補間位置から奇数番目にある画素データに対する演算結果の総和を加算器９０，９２によって算出し、偶数番目にある画素データに対する演算結果の総和を加算器８８により算出している。
【００９６】
レジスタ９４は、加算器９２による演算結果、すなわち補間位置から奇数番目（第１近傍、第３近傍）にある画素データに対する演算結果の総和を保持する。レジスタ９６は、加算器９０による演算結果、すなわち補間位置から偶数番目（第２近傍）にある画素データに対する演算結果の総和を保持する。
【００９７】
減算器９８は、レジスタ９４に保持された補間位置から奇数番目にある画素データに対する演算結果の総和から、レジスタ９６に保持された補間位置から偶数番目にある画素データに対する演算結果の総和を減算する。
【００９８】
すなわち、乗算器８２０〜８２５、加算器８６，８８，９０，９２、及び減算器９８により、補間位置から第ｎ近傍の画素データに対して、ｎが偶数の場合には演算結果を負の値、ｎが奇数の場合には演算結果を正の値として演算を実行することになる。従って、垂直ＬＵＴ部５６から出力される係数データが全て正の値としても、本来、係数を負とする値を含めた乗算結果を得ることができる。
【００９９】
これにより、垂直方向の同一線上にある６つの画素データＰt0〜Ｐt5と垂直ＬＵＴ部５６に記憶された係数データをもとに、補間位置における画素データＰの値を出力することができる。
【０１００】
次に、拡大係数テーブル５４ａ及び拡大係数テーブル５６ａに記憶される係数データの具体例について説明する。
【０１０１】
図５（ａ）には、２５６で正規化した場合の第１〜第３近傍の画素データに対する拡大係数データの一例を示している。図５（ａ）では、補間位置として画素間を８分割した何れかの位置が水平補間位置データまたは垂直補間位置データにより指定されるものとして、補間位置（ｔ）が０，０．１２５，０．２５，０．３７５，…，０．８７５のそれぞれにおける、各近傍画素Ｐ0〜Ｐ5に対する係数データが設定されている。本実施形態において用いられる係数データは、全て正の値としている。
【０１０２】
なお、図５に示す例では、８分割される場合を示しているが、分解能（分割数）に応じた数の係数データが、第ｎ近傍のそれぞれの画素に対して設定される。
【０１０３】
なお、補間位置０における画素位置Ｐ2に対する係数データ０に対しては、画素位置Ｐ2の画素データを演算結果として出力することを示す。
【０１０４】
図５（ｂ）には、図５（ａ）に示す２５６で正規化した値を２のべき乗の値を用いて示す拡大係数データの一例を示している。図５（ｂ）に示すように、各第ｎ近傍の係数データの大きさを考慮したビット幅に固定されている。
【０１０５】
すなわち、第１近傍に該当する画素位置Ｐ2，Ｐ3に対する係数データは８ビットで表し、第２近傍に該当する画素位置Ｐ1，Ｐ4に対する係数データは６ビット、第３近傍に該当する画素位置Ｐ0，Ｐ5に対する係数データは４ビットでそれぞれ表している。すなわち、補間位置から離れた画素位置に対する係数データほどビット幅を少なくすることで、補間に対する影響を少なくすると共に、水平ＬＵＴ部５４（拡大係数テーブル５４ａ）、及び垂直ＬＵＴ部５６（拡大係数テーブル５６ａ）の回路規模を減少させている。
【０１０６】
図６（ａ）には、図５（ｂ）に示すテーブルをもとにした、本実施形態における拡大係数テーブル５４ａ及び拡大係数テーブル５６ａに記憶される係数データの一例を示している。
【０１０７】
図６（ａ）は、例えば、第１近傍の画素位置Ｐ2，Ｐ3に対する２つの係数データを共通する１つの係数データとして記憶させた構成としている。図６（ａ）に示す例では、画素位置Ｐ2に対する係数データを上位ビット、画素位置Ｐ3に対する係数データを下位ビット（図中、斜体文字により表している）として並べて１つのデータとしている。第１近傍の２つの画素に対する係数データは、１つの係数データとすることでビット幅が１６ビットとなる。
【０１０８】
第ｎ近傍の２つの画素位置（例えばＰ2，Ｐ3）の係数データの組み合わせは、補間位置ごとに１通りしかないので、補間位置が決まれば１つの係数データを読み出すことができる。そして、画素位置Ｐ2と補間位置Ｐtとの間の距離がｔのとき、画素位置Ｐ3に対しては１−ｔの係数データを用いれば良い。
【０１０９】
同様にして、第２近傍（画素位置Ｐ1，Ｐ4）、第３近傍（画素位置Ｐ0，Ｐ5）についても、それぞれの画素位置に対する係数データを１つに並べて１つの係数データとしてテーブルに記憶させる。従って、第２近傍の２つの画素に対する係数データはビット幅が１２ビット、第３近傍の２つの画素に対する係数データはビット幅が８ビットとなる。
【０１１０】
この場合、水平ＬＵＴ部５４は、拡大器コントローラ５０からの水平補間位置データに応じたＬＵＴ用アドレスが示す各近傍の画素に対する係数データを、拡大係数テーブル５４ａから読み出し、それぞれ分割して出力する。
【０１１１】
例えば、図６（ａ）のＬＵＴ用アドレス２が示す画素位置Ｐ2Ｐ3に対する１つの係数データ「1110010001000101」を読み出し、画素位置Ｐ2の係数データとして上位ビット「11100100」を乗算器６０２に出力し、画素位置Ｐ3の係数データとして下位ビット「01000101」を乗算器６０３に出力する。同様にして、画素位置Ｐ0Ｐ5、画素位置Ｐ1Ｐ4についても、それぞれ１つの係数データを読み出し、各画素位置に応じて分割してそれぞれ乗算器６００，６０１，６０４，６０５に出力する。
【０１１２】
なお、垂直ＬＵＴ部５６においても、前述と同様にして、拡大係数テーブル５６ａから係数データを読み出して、１つの係数データを分割して乗算器８２０〜８２５に出力するものとして詳細な説明を省略する。
【０１１３】
このようにして、図６（ａ）に示すように、第ｎ近傍の複数の画素データのそれぞれに対する係数データを個別に記憶するのではなく、１つに組み合わせて拡大係数テーブル５４ａ，５６ａに記憶させることで、第ｎ近傍の２つの画素位置について係数データを共用することができる。従って、６×６の既存画素をもとにした補間をする場合、３つの近傍位置に対する係数データをテーブルに記憶させておけば良い。
【０１１４】
図６（ｂ）は、図６（ａ）に示す係数データをもとにして、さらに回路規模を減少できるように構成したテーブルの一例を示す図である。
【０１１５】
図６（ｂ）は、図６（ａ）に示す係数データのうち、補間位置が中心（補間位置ｔ＝０．５）までを拡大係数テーブル５４ａ及び拡大係数テーブル５６ａに記憶させる構成である。
【０１１６】
第ｎ近傍の画素データに対する２つの係数データは、補間位置が第１近傍の既存画素の中心を対称に同じである（ｔ＝１−ｔ'より、ｔ＝０〜０．５のときの係数データの組み合わせと、ｔ'＝０〜０．５のときの係数データの組み合わせは等しい）ので、拡大係数テーブル５４ａ，５６ａには補間位置分解能の半分の値を記憶していれば良い。
【０１１７】
この場合、水平ＬＵＴ部５４は、拡大器コントローラ５０からの水平補間位置データに応じたＬＵＴ用アドレスが示す各近傍の画素に対する係数データを、拡大係数テーブル５４ａから読み出し、それぞれ分割して出力する。ＬＵＴ用アドレス０〜４によって読み出される係数データについては、図６（ａ）に示すテーブルを用いた場合と同じである。
【０１１８】
また、水平補間位置データが補間位置０．６２５、０．７５、０．８７５を示す場合（図６（ａ）のＬＵＴ用アドレス５，６，７に相当する）、補間位置に応じてＬＵＴ用アドレス１，２，３の何れかから１つの係数データを読み出す。すなわち、水平補間位置データが補間位置０．６２５を示す場合にはＬＵＴ用アドレス３、補間位置０．７５を示す場合にはＬＵＴ用アドレス２、補間位置０．８７５を示す場合にはＬＵＴ用アドレス１の係数データを読み出す。
【０１１９】
例えば水平補間位置データが補間位置０．７５であることにより、ＬＵＴ用アドレス２が示す画素位置Ｐ2Ｐ3に対する１つの係数データ「1110010001000101」を読み出したものとする。この場合、補間位置０．２５の場合と係数データの振り分けが異なり、画素位置Ｐ2の係数データとして下位ビット「01000101」を選択して乗算器６０２に出力し、画素位置Ｐ3の係数データとして上位ビット「11100100」を乗算器６０３に出力する。同様にして、画素位置Ｐ0Ｐ5、画素位置Ｐ1Ｐ4についても、それぞれ１つの係数データを読み出し、各画素に対する係数データを各画素位置に応じて分割し、さらに分割した係数データを選択して、それぞれ乗算器６００，６０１，６０４，６０５に出力する。
【０１２０】
なお、垂直ＬＵＴ部５６においても、前述と同様にして、拡大係数テーブル５６ａから係数データを読み出して、１つの係数データを分割して、さらに補間位置０．６２５、０．７５、０．８７５の場合には分割した係数データを振り分けて（上位ビットと下位ビットとを交換して）乗算器８２０〜８２５に出力するものとして詳細な説明を省略する。
【０１２１】
このようにして、図６（ｂ）に示すように、補間位置が中心までの係数データが記録されたテーブルとすることにより、拡大係数テーブル５４ａ，５６ａに記憶させる係数データ量を削減し、また水平ＬＵＴ部５４及び垂直ＬＵＴ部５６の制御回路を簡略化して回路規模の減少を図ることができる。
【０１２２】
図６（ｃ）は、図６（ｂ）に示す係数データをもとにして、さらに回路規模を減少できるように構成したテーブルの一例を示す図である。
【０１２３】
図６（ｃ）は、図６（ｂ）に示す各近傍位置に対する係数データを、補間位置ごとに並べて１つの係数データとして拡大係数テーブル５４ａ及び拡大係数テーブル５６ａに記憶させる構成である。
【０１２４】
この場合、水平ＬＵＴ部５４は、拡大器コントローラ５０からの水平補間位置データに応じたＬＵＴ用アドレスが示す各近傍の画素に対する１つの係数データを、拡大係数テーブル５４ａから読み出し、各近傍位置に応じた個別の係数データに分割して出力する。
【０１２５】
なお、水平補間位置データが補間位置０．６２５、０．７５、０．８７５を示す場合（図６（ａ）のＬＵＴ用アドレス５，６，７に相当する）には、図６（ｂ）のテーブルを用いた場合と同様にして、補間位置に応じてＬＵＴ用アドレス１，２，３の何れかから１つの係数データを読み出す。
【０１２６】
例えば水平補間位置データが補間位置０．７５であることにより、ＬＵＴ用アドレス２が示す画素位置の１つの係数データ、すなわち図６（ｂ）に示す画素位置Ｐ0Ｐ5，Ｐ1Ｐ4，Ｐ2Ｐ3のそれぞれに対する個別の係数データを並べた係数データ「100000101000100100011110010001000101」を読み出す。
【０１２７】
そして、画素位置Ｐ0Ｐ5，Ｐ1Ｐ4，Ｐ2Ｐ3のそれぞれに対応するビット幅ごとに分割する。すなわち、上位から８ビットを第３近傍、１２ビットを第２近傍、１６ビットを第１近傍の画素に対する係数データとして分割する。
【０１２８】
さらに各画素位置に対する係数データにそれぞれ分割し、図６（ｂ）のテーブルを用いた場合と同様にして係数データを振り分けて、乗算器６００〜６０５に出力する。
【０１２９】
なお、垂直ＬＵＴ部５６においても、前述と同様にして、拡大係数テーブル５６ａから係数データを読み出して、１つの係数データを画素位置Ｐ0Ｐ5，Ｐ1Ｐ4，Ｐ2Ｐ3ごとに分割し、さらに画素位置毎に分割して乗算器８２０〜８２５にそれぞれ出力する。
【０１３０】
このようにして、図６（ｃ）に示すように、補間位置（ＬＵＴ用アドレス）に対応する１つの係数データが記録されたテーブルとすることにより、拡大係数テーブル５４ａ，５６ａに記憶させる係数データ量を削減し、またある補間位置についての係数データを読み出すためのアドレスを削減して回路規模の縮小を図ることができる。
【０１３１】
なお、前述した実施形態では、ｓｉｎｃ関数または有限範囲に特性を変えたｓｉｎｃ関数に基づいて拡大係数が設定される場合の例について説明しているが、拡大係数の関数の特徴が同じであれば、ｓｉｎｃ関数以外の他の関数を対象とすることもできる。例えば、バイリニア（線形補間）や、双３次スプライン補間、バイキュービックなどを用いる場合にも適用することができる。
【０１３２】
また、前述した説明では、水平ＬＵＴ部５４及び垂直ＬＵＴ部５６から出力される係数データを全て正の値とし、水平方向については加算器６４，６６，６８，７０、及び減算器７６、垂直方向については加算器８６，８８，９０，９２、及び減算器９８によって、偶数番目の画素についての演算結果を負の値、奇数番目の画素についての演算結果を正の値として演算を実行しているが、水平ＬＵＴ部５４及び垂直ＬＵＴ部５６から係数データに符号を付加して係数データを出力する構成とすることで、演算回路の構成を簡単化することができる。この場合、拡大係数テーブル５４ａ，５６ａには、正の値の係数データを記憶させておき、偶数番目の画素に対する係数データについてのみ符号を付加して出力すればよい。これにより、各乗算器による演算結果を単に加算するだけで良く回路構成を簡単化することができる。
【０１３３】
また、図１において、本発明の画素補間装置に相当する拡大補間部１７ａがカラープロセス回路１７に設けられているものとして説明しているが、画像の拡大処理を実行する他のモジュール等に実装される構成とするようにしても良い。
【０１３４】
また、前述した説明では、画像を拡大するための拡大補間処理を実行する場合について説明しているが、画像を縮小する縮小補間処理に適用することも可能である。
【０１３５】
さらに、上記実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組み合わせにより種々の発明が抽出され得る。例えば、実施の形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題の少なくとも１つが解決でき、発明の効果の欄で述べられている効果の少なくとも１つが得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【０１３６】
【図１】本発明の実施の形態における画素補間装置が実装されたカメラ装置１の構成を示すブロック図。
【図２】本実施形態における拡大補間処理の対象となる格子状に存在する複数の既存画素を示す図。
【図３】本実施形態における既存画素に対する係数を説明するための関数グラフを示す図。
【図４】本実施形態における拡大補間部１７ａの構成を示すブロック図。
【図５】本実施形態における２５６で正規化した場合の第１〜第３近傍の画素データに対する拡大係数データの一例を示す図。
【図６】本実施形態における拡大係数テーブル５４ａ，５６ａに記憶される係数データの構成の例を示す図。
【符号の説明】
【０１３７】
１…カメラ装置、１１…撮影レンズ、１０…モータ（Ｍ）、１２…ＣＣＤ、１３…タイミング発生器（ＴＧ）、１４…垂直ドライバ、１５…サンプルホールド回路（Ｓ／Ｈ）、１６…Ａ／Ｄ変換器、１７…カラープロセス回路、１８…ＤＭＡコントローラ、２０…ＤＲＡＭインタフェース（Ｉ／Ｆ）、２１…ＤＲＡＭ、２５…制御部、２６…ＶＲＡＭコントローラ、２７…ＶＲＡＭ、２８…デジタルビデオエンコーダ、２９…表示部、３０…画像処理部、３２…メモリカード、３３…内蔵メモリ、３６…拡大補間部、３７…キー入力部、４０…音声処理部、４１…ストロボ駆動部、４２…マイクロホン部（ＭＩＣ）、４３…スピーカ部（ＳＰ）、４５…ストロボ発光部、５０…拡大器コントローラ、５２…スティックバッファ部、５４…水平ＬＵＴ部、５４ａ…拡大係数テーブル、５６…垂直ＬＵＴ部、５６ａ…拡大係数テーブル、６０１〜６０５，８２０〜８２５…乗算器、６２０〜６２５，８４０〜８４５…レジスタ、６４，６６，６８，７０，８６，８８，９０，９２…加算器、７２，７４，９４，９６…レジスタ、７６，９８…減算器。
【図１】
2006185123.tif 000003
【図２】
2006185123.tif 000004
【図３】
2006185123.tif 000005
【図４】
2006185123.tif 000006
【図５】
2006185123.tif 000007
【図６】
2006185123.tif 000008