(57)【要約】【課題】ディストーション補正のための演算を簡素化し、ディストーション補正を高速に行うことができるディストーション補正回路を提供すること。【解決手段】ディストーション補正回路１において、補正後画像アドレス生成手段２により、補正後の画像データの水平方向及び垂直方向のアドレスが生成され、そのアドレスに該当する補正画素間隔係数が補正画素間隔記憶手段３から読み出される。補正前画像アドレス生成手段４では、アドレスと補正画素間隔値とを使用して補正前画像のアドレスが算出される。補正前画像記憶手段５には補正前の画像データが記憶されており、補正前画像アドレス生成手段４のアドレスに該当する画像データが補正前画像記憶手段５から読み出される。画素データ演算手段６により補正後の画像データを生成するための演算が行われ、その演算結果としての画像データが補正後画像記憶手段７に記憶される。【選択図】      図１
2005229200.tif 000002
【特許請求の範囲】
【請求項１】
垂直方向及び水平方向に複数画素からなる画像のデータに対してディストーション特性の補正を行うディストーション補正回路であって、
補正後画像における各画素の水平方向のアドレス及び垂直方向のアドレスを生成する補正後画像アドレス生成手段と、
前記水平方向と垂直方向の少なくとも一方のアドレスに対応する補正画素間隔係数を記憶する補正画素間隔記憶手段と、
補正前の画像データを記憶する補正前画像記憶手段と、
前記アドレスと、該アドレスに該当する補正画素間隔係数とに基づいて、補正前の画像データのアドレスを生成する補正前画像アドレス生成手段と、
前記補正前画像アドレス生成手段が生成したアドレスに該当する補正前の画像データを前記補正前画像記憶手段から読み出して補正後の画像データを生成するための演算を行う画素データ演算手段と、
前記補正後の画像データを記憶する補正後画像記憶手段と
を備えたことを特徴とするディストーション補正回路。
【請求項２】
前記補正画素間隔記憶手段は、前記水平方向のアドレスに対応する補正画素の水平間隔係数を記憶する第１係数メモリと、前記垂直方向のアドレスに対応する補正画素の垂直間隔係数を記憶する第２係数メモリとを含み、
前記補正前画像アドレス生成手段は、前記水平方向のアドレスと水平間隔係数とに基づいて補正前の画像データの水平アドレスを生成し、前記垂直方向のアドレスと垂直間隔係数とに基づいて補正前の画像データの垂直アドレスを生成することを特徴とする請求項１に記載のディストーション補正回路。
【請求項３】
前記第１係数メモリには、左右対称のディストーション特性に対応する２通りの水平間隔係数を格納し、前記第２係数メモリには、上下対称のディストーション特性に対応する２通りの垂直間隔係数を格納し、
前記各係数メモリにおける２通りの間隔係数のいずれか一方を選択的に使用するための切替手段を備えたことを特徴とする請求項２に記載のディストーション補正回路。
【請求項４】
前記補正後画像アドレス生成手段のアドレスに基づいて補正の必要な領域であるか否かを判断する補正必要領域判断手段を備え、
前記補正必要領域判断手段において補正が不要な領域と判断され補正不要信号が出力されたとき、前記補正前画像アドレス生成手段は、前記補正後画像アドレス生成手段のアドレスを補正前の画像データのアドレスとして用いることを特徴とする請求項１に記載のディストーション補正回路。
【請求項５】
前記補正後画像アドレス生成手段のアドレスに対応する補正画素間隔係数のオフセットを記憶する補正間隔閾値記憶手段と、
前記補正間隔閾値記憶手段のオフセットに基づいて、前記補正画素間隔記憶手段の補正画素間隔係数を使用するか否かの判定を行う補正画素間隔選択手段と
を備えたことを特徴とする請求項１に記載のディストーション補正回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＣＤやＣＭＯＳセンサなど撮像素子から取り込んだ画像データに対して光学系に依存するディストーション特性を補正するディストーション補正回路に関するものである。
【０００２】
近年、普及の一途を辿っているデジタルカメラでは、記録可能な画素数が増加しており、これに伴い光学系にも高性能なものが要求されている。レンズ一体型のデジタルカメラでは、専用設計のレンズを使用するが、レンズ交換型のデジタルカメラでは、使用するレンズ毎に固有のディストーション特性を有する。また、携帯電話に付属したデジタルカメラなどは安価な光学系を使用しており、そのカメラでは、光学系に依存するディストーション特性がよくない。そのため、ディストーション特性を補正してレンズに依存せずに高画質な画像を得ることは重要な技術となっている。
【背景技術】
【０００３】
従来、銀塩カメラでは、歪みのない画像を得るためにディストーションを極力抑えた撮影レンズの設計を行うのが一般的である。デジタルカメラでは、光学系（レンズ、絞り機構など）を介して撮像素子から取り込んだ画像データに対してディストーション補正を行うことにより歪みのない画像を得ることができる。デジタルカメラにおける補正処理では、撮影レンズの性能特性である像高−ディストーション曲線を表す近似多項式の係数を使用し、ディストーション補正のためのアドレスを算出している（例えば、特許文献１参照）。
【特許文献１】特開平１１−２５０２３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、上記特許文献１の補正処理の場合、全画素のアドレスを近似多項式で算出しているため、処理負荷がかかりディストーション補正回路を高速に動作させることが困難となっていた。
【０００５】
本発明は上記問題点を解決するためになされたものであって、その目的は、ディストーション補正のための演算を簡素化し、補正処理を高速に行うことができるディストーション補正回路を提供することにある。
【課題を解決するための手段】
【０００６】
図１は、本発明の原理説明図である。すなわち、ディストーション補正回路１は、補正後画像アドレス生成手段２と補正画素間隔記憶手段３と補正前画像アドレス生成手段４と補正前画像記憶手段５と画素データ演算手段６と補正後画像記憶手段７とを備える。このディストーション補正回路１において、補正後画像アドレス生成手段２により、補正後画像における各画素の水平方向及び垂直方向のアドレスが生成される。補正後画像アドレス生成手段２が生成したアドレスに該当する補正画素間隔係数が補正画素間隔補正手段３から読み出され、補正前画像アドレス生成手段４では、補正後画像アドレス生成手段２のアドレスとそれに該当する補正画素間隔係数とが使用され、補正前の画像データのアドレスが算出される。補正前画像記憶手段５には補正前の画像データが記憶されており、補正前画像アドレス生成手段４のアドレスに該当する画像データが該補正前画像記憶手段５から画素データ演算手段６に読み出される。そして、画素データ演算手段６において、補正後の画像データを生成するための演算（具体的には、解像度変換のための演算）が行われ、その演算結果としての補正後の画像データが補正後画像記憶手段７に記憶される。このようにディストーション補正回路１を構成することで、従来技術のように複雑な多項式の演算を行うことなくディストーション補正を実現することが可能となる。
【０００７】
また、補正画素間隔記憶手段３は、水平方向のアドレスに対応する補正画素の水平間隔係数を記憶する第１係数メモリと、垂直方向のアドレスに対応する補正画素の垂直間隔係数を記憶する第２係数メモリとを含む。補正前画像アドレス生成手段４では、水平方向のアドレスと該アドレスに対応する水平間隔係数とに基づいて補正前の画像データの水平アドレスが生成され、垂直方向のアドレスと該アドレスに対応する垂直間隔係数とに基づいて補正前の画像データの垂直アドレスが生成される。
【０００８】
また、第１係数メモリには、左右対称のディストーション特性に対応する２通りの水平間隔係数が格納され、第２係数メモリには、上下対称のディストーション特性に対応する２通りの垂直間隔係数が格納される。そして、切替手段により、各係数メモリにおける２通りの間隔係数のいずれか一方が選択され、補正前画像データのアドレスを算出するために使用される。このようにすると、切替手段により選択される間隔係数に基づいて、レンズ交換に応じたディストーション補正の変更を迅速に行うことが可能となる。また、左右対称位置の画素で同じ水平間隔係数が用いられ、上下対称位置の画素で同じ垂直間隔係数が用いられるため、全画素に対してそれぞれ個別の間隔係数を記憶する場合と比較して各係数メモリの記憶容量が削減される。
【０００９】
図２のディストーション補正回路１ａは、前記補正後画像アドレス生成手段２と補正画素間隔記憶手段３と補正前画像アドレス生成手段４と補正前画像記憶手段５と画素データ演算手段６と補正後画像記憶手段７とに加えて、補正必要領域判断手段８を備える。この補正必要領域判断手段８により、補正後画像アドレス生成手段２のアドレスが補正の必要な領域のアドレスであるか補正の不要な領域のアドレスであるかが判断され、補正が不要な領域である場合には補正不要信号Ｚ１が出力される。この場合、補正前画像アドレス生成手段４では、その補正不要信号Ｚ１により補正後画像アドレス生成手段２のアドレスがそのまま補正前の画像データのアドレスとして使用される。このようにすれば、補正画像における補正不要領域（歪みが無い部分）の間隔係数を用意する必要がないので、その間隔係数を格納するための記憶容量を削減することが可能となる。
【００１０】
また、ディストーション補正回路１ａは、補正間隔閾値記憶手段９と、補正画素間隔選択手段１０とを更に備える。補正間隔閾値記憶手段９には、補正後画像アドレス生成手段２のアドレスに対応する補正画素間隔係数のオフセットが記憶される。そして、補正画素間隔選択手段１０により、補正間隔閾値記憶手段９のオフセットに基づいて、補正画素間隔記憶手段３の補正画素間隔係数を使用するか否かの判定が行われる。
【発明の効果】
【００１１】
本発明によれば、ディストーション補正のための演算を簡素化し、ディストーション補正を高速に行うことができる。
【発明を実施するための最良の形態】
【００１２】
（第１実施形態）
以下、本発明を具体化した第１実施形態を図面に従って説明する。
図３は、本実施形態のディストーション補正回路１１を示している。ディストーション補正回路１１は、デジタルカメラに搭載され、撮像素子（例えば、ＣＣＤセンサ）を用いて撮影した画像データに対してディストーション補正を行う。ディストーション補正回路１１で扱う補正画像は、例えば、４０９６×４０９６画素のサイズである。このディストーション補正回路１１は、補正画像を作画するために、水平方向及び垂直方向のアドレスに該当する画像データを補正前の画像（原画像）から検索するといった処理を行う。本実施形態の原画像は、例えば、糸巻き型のディストーション特性を含み、図４に示すように、補正画像よりも大きな（４０９６＋α）×（４０９６＋α）画素のサイズを持つ。
【００１３】
図３に示すように、ディストーション補正回路１１は、補正後画像アドレス演算回路１２と、第１〜第３レジスタ１３〜１５と、第１及び第２係数メモリ１６，１７と、水平アドレス演算回路１８及び垂直アドレス演算回路１９と、解像度変換回路２０と、データメモリ２１とを含む。ディストーション補正回路１１は、データメモリ２１の第１記憶領域Ｄ１に撮像素子から取り込んだ補正前の画像データ（原画像の画像データ）を予め記憶しており、ディストーション補正を施した補正後画像データをデータメモリ２１の第２記憶領域Ｄ２に記憶する。
【００１４】
補正後画像アドレス演算回路１２は、補正後画像の水平方向のアドレス（水平アドレス）と垂直方向のアドレス（垂直アドレス）とを生成して、水平アドレスを第１レジスタ１３に格納し垂直アドレスを第２レジスタ１４に格納する。処理開始時には、補正後画像アドレス演算回路１２により、第１及び第２レジスタのアドレスが「０」にクリアされ、水平アドレスが０番地、垂直アドレスが０番地の画素（具体的には、図４の補正画像の画像領域Ｒにおいて、最上部の水平ラインにおける左端の画素）から補正が実施される。そして、１つの画素の補正が完了される度に、補正後画像アドレス演算回路１２により、第１レジスタ１３のアドレスが「１」ずつインクリメントされる。また、水平ラインにおける最終の画素（図４では、右端の画素）の補正完了後に、水平アドレスが「０」にクリアされるとともに、第２レジスタ１４の垂直アドレスが「１」インクリメントされるようになっている。
【００１５】
第３レジスタ１５は、ディストーション特性の基準点となる原点アドレスを格納している。第１係数メモリ１６は、４０９６バイトの記憶容量を有し、水平アドレスに対応した水平間隔係数をそれぞれ１バイトのデータとして格納している。第２係数メモリ１７は、４０９６バイトの記憶容量を有し、垂直アドレスに対応した垂直間隔係数をそれぞれ１バイトのデータとして格納している。各係数メモリ１６，１７に格納される間隔係数は、画像の歪み（ディストーション特性）に応じて画素のアドレス（位置）をずらすために用いる係数である。
【００１６】
水平アドレス演算回路１８は、第１レジスタ１３の水平アドレスに該当する水平間隔係数を第１係数メモリ１６から読み出す。また、この水平アドレス演算回路１８には、第１レジスタ１３の水平アドレスと第３レジスタ１５の原点アドレスとが入力される。水平アドレス演算回路１８は、第１係数メモリ１６の水平間隔係数と第３レジスタ１５の原点アドレスと第１レジスタ１３の水平アドレスとに基づいて、補正前の画像データの水平アドレスを算出し、その水平アドレスをデータメモリ２１に供給する。
【００１７】
垂直アドレス演算回路１９は、第２レジスタ１４の垂直アドレスに該当する垂直間隔係数を第２係数メモリ１７から読み出す。また、この垂直アドレス演算回路１９には、第２レジスタ１４の垂直アドレスと第３レジスタ１５の原点アドレスとが入力される。垂直アドレス演算回路１９は、第２係数メモリ１７の垂直間隔係数と第３レジスタ１５の原点アドレスと第２レジスタ１４の垂直アドレスとに基づいて、補正前の画像データの垂直アドレスを算出し、その垂直アドレスをデータメモリ２１に供給する。
【００１８】
解像度変換回路２０は、前記各アドレス演算回路１８，１９の水平アドレス及び垂直アドレスで指定される補正前画像周辺の数画素分の画像データを読み込み、それら画像データを用いて、補正後画像に対応した解像度変換を行う。なお、解像度変換回路２０で実施される解像度変換の処理としては、例えば、ニアレスト・ネィバー（最近隣法）と称される公知の変換方式が採用される。そして、解像度変換回路２０は、解像度変換後のデータを補正後画像データとしてデータメモリ２１に供給する。
【００１９】
データメモリ２１には、第１レジスタ１３に格納されている補正後の水平アドレスと第２レジスタ１４に格納されている補正後の垂直アドレスとが書き込みアドレスとして入力されており、該各アドレスで示される記憶領域に解像度変換回路２０からの補正後画像データが記憶される。
【００２０】
次に、ディストーション補正回路１１の具体的な補正処理について図４を用いて説明する。
第１係数メモリ１６には、補正画像の画像領域Ｒにおける水平方向の４０９６画素に対してそれぞれ個別の水平間隔係数が格納されており、第２係数メモリ１７には、垂直方向の４０９６画素に対してそれぞれ個別の垂直間隔係数が格納されている。
【００２１】
ここで、補正対象の画素（補正画素）について、第１レジスタ１３の水平アドレスで指定される水平間隔係数ｈが読み出され、第２レジスタ１４の垂直アドレスで指定される垂直間隔係数ｖが読み出される。そして、補正画素の位置ｃ（座標ｐ，ｑ）に対する原画像の参照画素位置ｍは、原点位置ａからの水平位置がｐ×ｈで求められ、垂直位置がｑ×ｖで求められる。なお、座標ｐ，ｑは、第１レジスタ１３の水平アドレスと第２レジスタ１４の垂直アドレスと第３レジスタ１５の原点アドレスとに基づいて求められる。
【００２２】
また、各間隔係数ｈ，ｖは、固定小数フォーマットであり、「ｘｘｘ．ｘｘｘｘ」として表される。従って、参照画素位置ｍの演算結果は、小数点以下の値を含む場合がある。その場合には、原画像の位置が存在しないため、参照画素位置ｍの周辺の数画素分の画像データを用い、解像度変換のための補間演算が行われ、その補間演算によって参照画素位置ｍに対応する補正後画像の画像データが求められる。
【００２３】
以上記述したように、上記実施形態によれば、下記の効果を奏する。
（１）補正後画素の水平アドレスに該当する水平間隔係数が第１係数メモリ１６から読み出され、垂直アドレスに該当する垂直間隔係数が第２係数メモリ１７から読み出され、各間隔係数を用いて原画像の参照画素位置（アドレス）ｍが算出される。この場合、従来技術のようにアドレスを算出するために近似多項式を用いないため、高速、簡易的にディストーション補正を行うことができる。
【００２４】
（２）本実施形態では、水平方向及び垂直方向の間隔係数を持ち、各間隔係数を用いることにより、水平方向及び垂直方向についてディストーション補正を適切に行うことができる。
【００２５】
（３）原点アドレスを格納する第３レジスタ１５を備え、該原点アドレスを基準とした画像の歪を的確に補正することができる。また逆に、その原点アドレスを所望の値に設定することにより、該原点アドレスを基準として歪ませた画像を容易に作画することができる。
【００２６】
次に、本発明における第２〜第４実施形態を説明する。但し、以下の各実施形態の構成において、上述した第１実施形態と同等であるものについては図面に同一の符号を付すと共にその説明を簡略化する。そして、以下には第１実施形態との相違点を中心に説明する。
【００２７】
（第２実施形態）
図５には第２実施形態のディストーション補正回路１１ａを示し、図６にはその補正処理の説明図を示している。
【００２８】
図５に示すように、ディストーション補正回路１１ａは、第１実施形態の構成に加えて、水平アドレス変換回路２３及び垂直アドレス変換回路２４を備えている。また、第１及び第２係数メモリ１６，１７は、その記憶領域がそれぞれ２０４８バイトの第１記憶領域Ｋ１と第２記憶領域Ｋ２とに区分される。第１係数メモリ１６の第１記憶領域Ｋ１に第１水平間隔係数が格納され、その第２記憶領域Ｋ２に第２水平間隔係数が格納される。一方、第２係数メモリ１７の第１記憶領域Ｋ１に第１垂直間隔係数が格納され、その第２記憶領域Ｋ２に第２垂直間隔係数が格納される。つまり、第１係数メモリ１６には、ディストーション特性に応じた２通りの水平間隔係数が格納され、第２係数メモリ１７には、ディストーション特性に応じた２通りの垂直間隔係数が格納されている。
【００２９】
本実施形態のディストーション補正回路１１ａでは、第１係数メモリ１６の第１水平間隔係数と第２水平間隔係数とのいずれか一方を使用し、補正画像における左右対称にディストーション補正を行うようにしている。また、第２係数メモリ１７の第１垂直間隔係数と第２垂直間隔係数とのいずれか一方を使用して、補正画像における上下対称にディストーション補正を行うようにしている。
【００３０】
詳述すると、水平アドレス変換回路２３は、外部から入力されるモード選択信号Ｍｏに応じて第１レジスタ１３の水平アドレスを変換し、垂直アドレス変換回路２４は、モード選択信号Ｍｏに応じて第２レジスタ１４の垂直アドレスを変換する。水平アドレス変換回路２３の変換モードとしては、第１係数メモリ１６から第１水平間隔係数を読み出すためのアドレスに変換する第１モードと、第２水平間隔係数を読み出すためのアドレスに変換する第２モードとを有する。垂直アドレス変換回路２４の変換モードも同様に、第１垂直間隔係数を読み出すためのアドレスに変換する第１モードと、第２垂直間隔係数を読み出すためのアドレスに変換する第２モードとがある。
【００３１】
ここで、例えば、水平アドレス変換回路２３の変換モードが第１モードに設定され、垂直アドレス変換回路２４の変換モードが第２モードに設定された場合、図６に示すように、第１係数メモリ１６から第１水平間隔係数が読み出され、第２係数メモリ１７から第２垂直間隔係数が読み出される。そして、水平アドレス演算回路１８は、第１水平間隔係数を使用して補正前の水平アドレスを算出し、その水平アドレスをデータメモリ２１に供給する。一方、垂直アドレス演算回路１９は、第２垂直間隔係数を使用して補正前の垂直アドレスを算出し、その垂直アドレスをデータメモリ２１に供給する。
【００３２】
この算出の際に、補正画像の画像領域Ｒにおいて左右対称位置の画素では同じ第１水平間隔係数が用いられ、上下対称位置の画素では同じ第２垂直間隔係数が用いられる。従って、本実施形態では、４０９６×４０９６画素の補正画像において、左右対称及び上下対称にディストーション補正が実施されることとなる。
【００３３】
以上記述したように、上記実施形態によれば、下記の効果を奏する。
（１）第１係数メモリ１６には、左右対称のディストーション特性に対応する２通りの水平間隔係数が格納され、第２係数メモリ１７には、上下対称のディストーション特性に対応する２通りの垂直間隔係数が格納される。そして、水平アドレス変換回路２３は、外部から入力されるモード選択信号Ｍｏに応じて第１レジスタ１３の水平アドレスを変換し、その変換後のアドレスによって２通りの水平間隔係数のうちのいずれか一方が選択的に読み出される。また、垂直アドレス変換回路２４は、モード選択信号Ｍｏに応じて第２レジスタ１４の垂直アドレスを変換し、その変換後のアドレスによって２通りの垂直間隔係数のうちのいずれか一方が選択的に読み出される。このようにすると、デジタルカメラのレンズ交換時において、モード選択信号Ｍｏにより各間隔係数を切り替えることができるため、ディストーション補正の変更を迅速に行うことができる。
【００３４】
（２）画像領域Ｒにおいて左右対称位置の画素で同じ第１水平間隔係数が用いられ、上下対称位置の画素で同じ第２垂直間隔係数が用いられる。このようにすれば、水平方向の４０９６画素に対してそれぞれ個別の水平間隔係数を記憶する場合と比較して記憶容量を半分にすることができる。
【００３５】
（第３実施形態）
図７には第３実施形態のディストーション補正回路１１ｂを示し、図８にはその補正処理の説明図を示している。
【００３６】
図７に示すように、ディストーション補正回路１１ｂは、第１実施形態の構成に加えて、補正領域判断回路２５を備えている。また、このディストーション補正回路１１ｂには、２つの第１係数メモリ１６ａ，１６ｂが設けられている。図８に示すように、一方の第１係数メモリ１６ａには、画像領域の左端（水平ラインの先頭アドレスの画素）からＮ画素分の水平間隔係数が格納され、他方の第１係数メモリ１６ｂには、画像領域の右端（水平ラインの最終アドレスの画素）からＭ画素分の水平間隔係数が格納されている。
【００３７】
また、図７の第３レジスタ１５には、補正後の画像領域Ｒにおける左右の原点位置ａ１，ａ２に対応する原点アドレスが格納されている。本実施形態では、水平方向について各原点位置ａ１，ａ２間の画像領域は、補正が必要のない領域（補正不要領域）であり、この補正不要領域の水平間隔係数は用意されていない。
【００３８】
補正領域判断回路２５は、第１レジスタ１３の水平アドレスと第３レジスタ１５の原点アドレスとに基づいて、補正必要領域であるか補正不要領域であるかを判断し、補正不要領域である場合には補正不要信号Ｚ１を水平アドレス演算回路１８に供給する。水平アドレス演算回路１８は、その補正不要信号Ｚ１に基づいて、第１レジスタ１３の水平アドレスが補正不要領域のアドレスであることを判断する。この場合、水平アドレス演算回路１８は、第１係数メモリ１６ａ，１６ｂの水平間隔係数を用いた演算をすることなく、第１レジスタ１３の水平アドレスを補正前水平アドレスとしてデータメモリ２１に供給する。つまり、左右の原点位置ａ１，ａ２間の領域にある補正画素についての参照画素位置は、第１レジスタ１３に格納されている水平アドレスをそのまま使用する。
【００３９】
また、原点位置ａ１よりも左側の補正画素の参照画素位置は、第３レジスタ１５の原点アドレスと第１係数メモリ１６ａの水平間隔係数と第２係数メモリ１７の垂直間隔係数とを使用して求められる。さらに、原点位置ａ２よりも右側の補正画素の参照画素位置は、第３レジスタ１５の原点アドレスと第１係数メモリ１６ｂの水平間隔係数と第２係数メモリ１７の垂直間隔係数とを使用して求められる。なお、具体的な演算は、第１実施形態における補正処理と同じである。但し、水平アドレス演算回路１８では、第１レジスタ１３の水平アドレスに基づいて、左右のいずれの原点位置を使用するかが選択される。
【００４０】
以上記述したように、上記実施形態によれば、下記の効果を奏する。
（１）ディストーション補正回路１１ｂでは、補正画像において歪みが無い中心部分の水平間隔係数を用意する必要がないので、その水平間隔係数を格納するための記憶容量を削減することができる。
【００４１】
（２）画像領域の左側領域と右側領域とで水平間隔係数を格納する第１係数メモリ１６ａ，１６ｂ及び原点位置ａ１，ａ２を別々に持つことにより、水平方向に非対称のディストーション補正を適切に行うことができる。
【００４２】
（第４実施形態）
図９には第４実施形態のディストーション補正回路１１ｃを示し、図１０にはその補正処理の説明図を示している。
【００４３】
図９に示すように、ディストーション補正回路１１ｃは、第１実施形態の構成に対して、画素間隔選択回路２７を加えるとともに、垂直アドレス演算回路１９を削除している。また、第１係数メモリ１６には水平アドレスに対応した補正係数減算値（水平間隔係数のオフセット）が格納され、第２係数メモリ１７には、垂直アドレスに対応した水平間隔係数が格納されている。
【００４４】
本実施形態のディストーション補正回路１１ｃでは、水平方向のみの補正を行うものであり、第１係数メモリ１６の補正係数減算値を用い画像中心部では補正を行わず、画像周辺に行くに従い大きな補正をかけるよう構成している。
【００４５】
詳しくは、図１０に示すように、第１係数メモリ１６には、水平方向の４０９６画素に対してそれぞれ個別の補正係数減算値が格納されており、第２係数メモリ１７には、垂直方向の４０９６画素に対してそれぞれ個別の水平間隔係数が格納されている。また、補正画像領域において中心位置の垂直ラインを原点位置ａとし、それに対応する原点アドレスを第３レジスタ１５に設定している。
【００４６】
画素間隔選択回路２７は、第１レジスタ１３の水平アドレスに該当する補正係数減算値ｒを第１係数メモリ１６から読み出し、第２レジスタ１４の垂直アドレスに該当する水平間隔係数ｈを第２係数メモリ１７から読み出す。そして、画素間隔選択回路２７は、水平間隔係数ｈから補正係数減算値ｒを減算する。画素間隔選択回路２７は、その減算結果が１未満（ｈ−ｒ＜１）の場合には１を、減算結果が１以上（ｈ−ｒ≧１）の場合にはその減算結果（ｈ−ｒ）を画素間隔値として水平アドレス演算回路１８に入力する。水平アドレス演算回路１８は、画素間隔選択回路２７からの画素間隔値と第３レジスタ１５の原点アドレスとに基づいて補正前水平アドレスを算出し、そのアドレスをデータメモリ２１に供給する。
【００４７】
具体的には、補正画素の位置ｃ（座標ｐ，ｑ）に対する原画像の参照画素位置ｍは、原点位置ａからの水平位置がｐ×（ｈ−ｒ）で求められ、垂直位置がｑで求められる。ここで、ｈ−ｒ＜１の場合には水平位置がｐとなる。つまり、水平間隔係数ｈと補正係数減算値との減算結果が１未満（ｈ−ｒ＜１）の場合には、ディストーション補正を行わないようにしている。
【００４８】
図１１には、像高（画像中心からの距離）とディストーション補正値との関係を示している。また、同図において、水平方向の中心位置からの距離（水平距離）ｎに応じた補正係数減算値（オフセット）を破線にて示している。すなわち、本実施形態では、水平距離ｎが小さいほど、オフセットを大きな値に設定している。
【００４９】
このように、オフセットを設定することにより、画像の中心部分ではディストーション補正をかけず、画像周辺部に行くに従ってディストーション補正の補正値を大きくすることができる。
【００５０】
以上記述したように、上記実施形態によれば、下記の効果を奏する。
（１）補正間隔閾値記憶手段としての第１係数メモリ１６ａには、水平間隔係数のオフセットが記憶され、画素間隔選択回路２７では、そのオフセットに基づき水平間隔係数を使用するか否かの判定が行われる。このように、オフセットを用いることにより、画像における水平方向の中心部分ではディストーション補正をかけず、画像周辺部に行くに従ってディストーション補正の補正値を大きくすることができる。よって、ディストーション補正回路１１ｃを用いることにより、水平方向に高精度なディストーション補正を行うことができる。
【００５１】
上記各実施形態は、次に示すように変更することもできる。
・図１２〜図１６には別の形態の補正処理を示している。
すなわち、図１２の補正処理では、第３実施形態と同様に、画像領域Ｒの中央部分、つまり、左右の原点位置ａ１，ａ２の内側に位置する領域は補正不要領域となっている。また、各原点位置ａ１，ａ２は左右対称に設定されており、各原点位置ａ１，ａ２よりも外側に位置する領域（左側及び右側の補正必要領域）は、その水平方向のサイズがＮ画素となっている。そして、第１係数メモリ１６ａには、Ｎ画素分の水平間隔係数が格納されており、その水平間隔係数を使用して左側領域及び右側領域で対称にディストーション補正が行われる。つまり、補正画素の参照画素位置は、左側領域及び右側領域における対称位置の各画素では同じ水平間隔係数が用いられる。なお、参照画素位置は、図８に示す第３実施形態の補正処理と同様に、原点アドレスと水平間隔係数と垂直間隔係数とで求められる。このように、左側領域と右側領域とで同一の水平間隔係数を使用することにより、図８の第３実施形態と比較して、第１係数メモリ１６ｂを削除することができるので、水平間隔係数を格納するための記憶容量をより削減することが可能となる。
【００５２】
図１３に示す補正処理は、水平間隔係数のみを用いてディストーション補正を行うものであり、画像領域Ｒにおける２つの原点位置ａ１，ａ２としては垂直ライン（原点ライン）が設定されている。なお、左側の原点位置ａ１と右側の原点位置ａ２は、左右対称となる位置に設定してもよいし、左右非対称となる位置に設定してもよい。またこの補正処理においても、図８や図１２の補正処理と同様に、各原点位置ａ１，ａ２の内側に位置する領域は、補正不要領域として設定されている。具体的には、第２係数メモリ１７には、垂直方向の４０９６画素に対応する水平間隔係数が格納されている。そして、補正画素の参照画素位置は、原点位置ａ１と水平アドレスａｘとの距離（ｐ＝ａ１−ａｘ）と、垂直アドレスに基づいて読み出した水平間隔係数ｈとの演算で求めることができる。つまり、参照画素位置の水平位置は、ｐ×ｈとなる。またこの場合、同一の水平ライン上にある各画素（４０９６個の画素のうち補正必要領域にある画素）については同一の水平間隔係数が使用される。このようにすれば、画像の歪が大きい水平方向についてディストーション補正を行うことができ、水平間隔係数を格納する記憶容量も削減できるので、実用上好ましいものとなる。
【００５３】
また、図１４の補正処理では、図１３の補正処理に対して、第２係数メモリ１７ａの記憶容量を半分（２０４８バイト）にし、上下対称位置の画素では同一の水平間隔係数を用いてディストーション補正を行うようにしている。なお、参照画素位置は、図１３の補正処理と同様の演算により求められる。このようにすれば、第２係数メモリ１７ａの記憶容量をより削減することができる。
【００５４】
さらに、図１５の補正処理では、図１４の補正処理に対して、垂直方向の中央部分に補正不要領域が設けられている。また、第２係数メモリ１７ａには、Ｎ画素分の水平間隔係数が格納されている。なお、参照画素位置は、図１３及び図１４の補正処理と同様の演算により求められる。この場合、第２係数メモリ１７ａは、２０４８バイトよりも少ないＮバイトの記憶容量で済むため、図１４の補正処理と比較して、記憶容量をより削減することができる。
【００５５】
図１６の補正処理では、水平間隔係数を用いて水平方向のディストーション補正を行うものであり、画像領域の原点位置ａとしては垂直ライン（原点ライン）が設定されている。また、この補正処理では、水平方向のアドレスに応じた第１水平間隔係数と垂直方向のアドレスに応じた第２水平間隔係数とを持ち、それら２つの水平間隔係数を用いて、水平方向のディストーション補正を高精度に行うようにしている。
【００５６】
具体的に、第１係数メモリ１６には、水平方向のアドレスに対応した４０９６バイトの第１水平間隔係数が格納され、第２係数メモリ１７には、垂直方向のアドレスに対応した４０９６バイトの第２水平間隔係数が格納されている。この補正処理では、補正画素の位置ｃ（座標ｐ，ｑ）に対応する原画像の参照画素位置ｍは、原点位置ａからの距離と第１水平間隔係数と第２水平間隔係数との乗算（ｐ×ｖ×ｈ）により水平位置が求められる。また、垂直方向は補正を行わないため、垂直位置はｑとなる。
【００５７】
図１７には、像高とディストーション補正値との関係を示している。なお、同図において、ｎは水平方向の中心位置からの距離（水平距離）である。すなわち、像高が大きいほどディストーション補正値が大きく、水平距離ｎが大きいほどディストーション補正値が大きくなる。図１６の補正処理では、像高とディストーション補正値との関係を水平距離ｎに応じて変更することができるので、水平方向に高精度なディストーション補正を行うことができる。
【００５８】
・第４実施形態の補正処理は、糸巻型のディストーション特性に対応するものであり、水平間隔係数ｈと補正係数減算値ｒとの減算結果が１未満（ｈ−ｒ＜１）の場合にその減算結果を「１」として水平間隔係数ｈを使用しない構成であるがこれに限定されるものではない。例えば、樽型のディストーション特性に対応する補正処理においては、水平間隔係数ｈと補正係数減算値ｒとの減算結果が１よりも大きい（ｈ−ｒ＞１）場合に「１」として水平間隔係数ｈを使用しない構成とする。また、参照画素位置ｍを求めるための演算式であるｐ×（ｈ−ｒ）も適宜変更することができる。
【００５９】
・上記第４実施形態において、第１係数メモリ１６に、左右対称のディストーション特性に対応する２通りの補正係数減算値（オフセット）を格納し、第２係数メモリ１７に、上下対称のディストーション特性に対応する２通りの水平間隔係数を格納し、いずれか一方を選択的に使用するよう構成してもよい。この場合には、第２実施形態と同様に、２通りの補正係数減算値のいずれかを選択するための切替手段（具体的には、水平アドレス変換回路２３）を備え、２通りの水平間隔係数のいずれかを選択するための切替手段（具体的には、垂直アドレス変換回路２４）を備える。そして、水平アドレス演算回路１８が左右対称位置の画素について同一の補正係数減算値を第１係数メモリ１６から読み出すとともに、上下対称位置の画素について同一の水平間隔係数を第２係数メモリ１７から読み出して水平アドレスを生成する。このようにすれば、モード選択信号Ｍｏにより補正係数減算値及び水平間隔係数を切り替えることができるため、ディストーション補正の変更を迅速に行うことができる。
【００６０】
・図１６の補正処理において、第１係数メモリ１６に、左右対称のディストーション特性に対応する２通りの水平間隔係数を格納し、第２係数メモリ１７に、上下対称のディストーション特性に対応する２通りの水平間隔係数を格納し、いずれか一方を選択的に使用するよう構成してもよい。この場合も、各水平間隔係数を選択するための切替手段として、水平アドレス変換回路２３及び垂直アドレス変換回路２４を備える。そして、水平アドレス演算回路１８が左右対称位置の画素について同一の水平間隔係数を第１係数メモリ１６から読み出すとともに、上下対称位置の画素について同一の水平間隔係数を第２係数メモリ１７から読み出して水平アドレスを生成する。このようにしても、ディストーション補正の変更を迅速に行うことができる。
【００６１】
・図１０に示す第４実施形態の補正処理や図１３〜図１６に示す補正処理では、水平方向にのみディストーション補正を行うものであるが、これに限定されるものではなく、デジタルカメラに搭載する撮像素子の形状等に応じて適宜変更できる。例えば、デジタルカメラに搭載する撮像素子が縦長形状である場合には、横長形状の場合と比較して垂直方向の画像歪みが大きくなるので、垂直方向のみのディストーション補正を行うように変更する。つまり、各係数メモリ１６，１７には垂直間隔係数を格納し、その垂直間隔係数を用いて補正処理を行うようにする。
【００６２】
・各アドレス演算回路１２，１８，１９、解像度変換回路２０、アドレス変換回路２３，２４、補正領域判断回路２５、及び画素間隔選択回路２７は、所定の回路を形成することで実現されるが、これに限定されるものではない。例えば、各種処理を統括的に制御するＣＰＵを備えたディストーション補正回路において、そのＣＰＵが実行するプログラムにより、各回路の機能を実現してもよい。
【００６３】
以上の様々な実施の形態をまとめると、以下のようになる。
（付記１）垂直方向及び水平方向に複数画素からなる画像のデータに対してディストーション特性の補正を行うディストーション補正回路であって、
補正後画像における各画素の水平方向のアドレス及び垂直方向のアドレスを生成する補正後画像アドレス生成手段と、
前記水平方向と垂直方向の少なくとも一方のアドレスに対応する補正画素間隔係数を記憶する補正画素間隔記憶手段と、
補正前の画像データを記憶する補正前画像記憶手段と、
前記アドレスと、該アドレスに該当する補正画素間隔係数とに基づいて、補正前の画像データのアドレスを生成する補正前画像アドレス生成手段と、
前記補正前画像アドレス生成手段が生成したアドレスに該当する補正前の画像データを前記補正前画像記憶手段から読み出して補正後の画像データを生成するための演算を行う画素データ演算手段と、
前記補正後の画像データを記憶する補正後画像記憶手段と
を備えたことを特徴とするディストーション補正回路。
（付記２）前記補正画素間隔記憶手段は、前記水平方向のアドレスに対応する補正画素の水平間隔係数を記憶する第１係数メモリと、前記垂直方向のアドレスに対応する補正画素の垂直間隔係数を記憶する第２係数メモリとを含み、
前記補正前画像アドレス生成手段は、前記水平方向のアドレスと水平間隔係数とに基づいて補正前の画像データの水平アドレスを生成し、前記垂直方向のアドレスと垂直間隔係数とに基づいて補正前の画像データの垂直アドレスを生成することを特徴とする付記１に記載のディストーション補正回路。
（付記３）前記第１係数メモリには、左右対称のディストーション特性に対応する２通りの水平間隔係数を格納し、前記第２係数メモリには、上下対称のディストーション特性に対応する２通りの垂直間隔係数を格納し、
前記各係数メモリにおける２通りの間隔係数のいずれか一方を選択的に使用するための切替手段を備えたことを特徴とする付記２に記載のディストーション補正回路。
（付記４）原点アドレスを記憶する原点記憶手段を備え、
前記補正前画像アドレス生成手段は、前記原点アドレスと前記水平方向のアドレスとの差分として算出された原点からの水平距離と水平間隔係数とを乗算して前記水平アドレスを生成し、前記原点アドレスと前記垂直方向のアドレスとの差分として算出された原点からの垂直距離と垂直間隔係数とを乗算して前記垂直アドレスを生成することを特徴とする付記２に記載のディストーション補正回路。
（付記５）原点アドレスを記憶する原点記憶手段を備え、
前記補正画素間隔記憶手段は、前記水平方向のアドレスに対応する補正画素の第１水平間隔係数を記憶する第１係数メモリと、前記垂直方向のアドレスに対応する補正画素の第２水平間隔係数を記憶する第２係数メモリとを含み、
前記補正前画像アドレス生成手段は、前記原点アドレスと前記水平方向のアドレスとの差分として算出された原点からの水平距離と、第１水平間隔係数と、第２水平間隔係数とを乗算して前記補正前の画像データの水平アドレスを生成することを特徴とする付記１に記載のディストーション補正回路。
（付記６）前記原点アドレスは、画像の左側領域と右側領域とでそれぞれ個別のアドレスが設定され、前記補正前画像アドレス生成手段は、左側の原点アドレスと前記水平間隔係数とを用いて左側領域の水平アドレスを生成し、右側の原点アドレスと前記水平間隔係数とを用いて右側領域の水平アドレスを生成することを特徴とする付記４又は５に記載のディストーション補正回路。
（付記７）前記原点アドレスは、画像の左側領域と右側領域とで対称のアドレスが設定され、前記補正前画像アドレス生成手段は、左右対称位置の画素について、同一の水平間隔係数を第１係数メモリから読み出して水平アドレスを生成することを特徴とする付記４又は５に記載のディストーション補正回路。
（付記８）前記第１係数メモリには、左右対称のディストーション特性に対応する２通りの水平間隔係数を格納し、前記第２係数メモリには、上下対称のディストーション特性に対応する２通りの水平間隔係数を格納し、
前記各係数メモリにおける２通りの水平間隔係数のいずれか一方を選択的に使用するための切替手段を備えたことを特徴とする付記５に記載のディストーション補正回路。
（付記９）原点アドレスを記憶する原点記憶手段を備え、
前記補正画素間隔記憶手段は、前記垂直方向のアドレスに対応する補正画素の水平間隔係数を記憶する係数メモリであり、
前記補正前画像アドレス生成手段は、前記原点アドレスと前記水平方向のアドレスとの差分として算出された原点からの水平距離と前記水平間隔係数とを乗算して補正前の画像データの水平アドレスを生成することを特徴とする付記１に記載のディストーション補正回路。
（付記１０）前記補正前画像アドレス生成手段は、上下対称位置の画素について同一の水平間隔係数を係数メモリから読み出して水平アドレスを生成することを特徴とする付記９に記載のディストーション補正回路。
（付記１１）前記補正後画像アドレス生成手段のアドレスに基づいて補正の必要な領域であるか否かを判断する補正必要領域判断手段を備え、
前記補正必要領域判断手段において補正が不要な領域と判断され補正不要信号が出力されたとき、前記補正前画像アドレス生成手段は、前記補正後画像アドレス生成手段のアドレスを補正前の画像データのアドレスとして用いることを特徴とする付記１〜１０のいずれかに記載のディストーション補正回路。
（付記１２）前記補正必要領域判断手段は、画像における水平方向の中央部分と垂直方向の中央部分との少なくとも一方を補正不要領域として判断することを特徴とする付記１１に記載のディストーション補正回路。
（付記１３）前記補正後画像アドレス生成手段のアドレスに対応する補正画素間隔係数のオフセットを記憶する補正間隔閾値記憶手段と、
前記補正間隔閾値記憶手段のオフセットに基づいて、前記補正画素間隔記憶手段の補正画素間隔係数を使用するか否かの判定を行う補正画素間隔選択手段と
を備えたことを特徴とする付記１〜１２のいずれかに記載のディストーション補正回路。
（付記１４）前記補正間隔閾値記憶手段は、前記水平方向のアドレスに対応する補正画素間隔係数のオフセットを記憶する第１係数メモリであり、
前記補正画素間隔記憶手段は、前記垂直方向のアドレスに対応する補正画素の水平間隔係数を記憶する第２係数メモリであり、
前記補正前画像アドレス生成手段は、左右対称の画素について同一のオフセットを第１係数メモリから読み出し、上下対称位置の画素について同一の水平間隔係数を第２係数メモリから読み出して水平アドレスを生成することを特徴とする付記１３に記載のディストーション補正回路。
（付記１５）第１係数メモリには、左右対称のディストーション特性に対応する２通りのオフセットを格納し、前記第２係数メモリには、上下対称のディストーション特性に対応する２通りの水平間隔係数を格納し、
前記第１及び第２係数メモリにおける２通りのオフセット及び２通りの水平間隔係数を選択的に使用するための切替手段を備えたことを特徴とする付記１４に記載のディストーション補正回路。
【図面の簡単な説明】
【００６４】
【図１】本発明の原理説明図である。
【図２】本発明の原理説明図である。
【図３】第１実施形態のディストーション補正回路のブロック図である。
【図４】第１実施形態の補正処理を示す説明図である。
【図５】第２実施形態のディストーション補正回路のブロック図である。
【図６】第２実施形態の補正処理を示す説明図である。
【図７】第３実施形態のディストーション補正回路のブロック図である。
【図８】第３実施形態の補正処理を示す説明図である。
【図９】第４実施形態のディストーション補正回路のブロック図である。
【図１０】第４実施形態の補正処理を示す説明図である。
【図１１】像高−ディストーション曲線を示す説明図である。
【図１２】別の形態の補正処理を示す説明図である。
【図１３】別の形態の補正処理を示す説明図である。
【図１４】別の形態の補正処理を示す説明図である。
【図１５】別の形態の補正処理を示す説明図である。
【図１６】別の形態の補正処理を示す説明図である。
【図１７】水平距離に応じた像高−ディストーション曲線を示す説明図である。
【符号の説明】
【００６５】
１１，１１ａ，１１ｂ，１１ｃ  ディストーション補正回路
１２  補正後画像アドレス生成手段としての補正後画像アドレス演算回路
１５  原点記憶手段としての第３レジスタ
１６，１６ａ，１６ｂ  補正画素間隔記憶手段としての第１係数メモリ
１７，１７ａ，１７ｂ  補正画素間隔記憶手段としての第２係数メモリ
１８  補正前画像アドレス生成手段としての水平アドレス演算手段
１９  補正前画像アドレス生成手段としての垂直アドレス演算手段
２０  画素データ演算手段としての解像度変換回路
２１  補正前画像記憶手段及び補正後画像記憶手段としてのデータメモリ
２３  切替手段としての水平アドレス変換回路
２４  切替手段としての垂直アドレス変換回路
２５  補正必要領域判断手段としての補正領域判断回路
２７  補正画素間隔選択手段としての画素間隔選択回路
ｈ  水平間隔係数
ｒ  オフセットとしての補正係数減算値
ｖ  垂直間隔係数
Ｚ１  補正不要信号
【図１】
2005229200.tif 000003
【図２】
2005229200.tif 000004
【図３】
2005229200.tif 000005
【図４】
2005229200.tif 000006
【図５】
2005229200.tif 000007
【図６】
2005229200.tif 000008
【図７】
2005229200.tif 000009
【図８】
2005229200.tif 000010
【図９】
2005229200.tif 000011
【図１０】
2005229200.tif 000012
【図１１】
2005229200.tif 000013
【図１２】
2005229200.tif 000014
【図１３】
2005229200.tif 000015
【図１４】
2005229200.tif 000016
【図１５】
2005229200.tif 000017
【図１６】
2005229200.tif 000018
【図１７】
2005229200.tif 000019