説明

画像処理装置及び撮像装置

【課題】歪補正処理をブロックライン単位で行う場合に、ブロックライン毎の重複処理をなくすことが可能な画像処理装置及びそのような画像処理装置を備えた撮像装置を提供すること。
【解決手段】あるブロックラインに対する歪補正処理の際に、あるブロックラインの歪補正処理を行うために必要な現歪補正範囲と、あるブロックラインの次のブロックラインの歪補正処理を行うために必要な次歪補正範囲とを歪補正範囲算出部201において算出する。シーケンサ206は、歪補正範囲算出部201において算出された現歪補正範囲と次歪補正範囲とから、あるブロックラインの処理のために入力する必要がある画像データの範囲を入力範囲として求める。この入力範囲に対応した画像データのうちで次のブロックラインの歪補正処理を行うためにも用いられる糊代画像データを糊代保存メモリ403に格納し、次のブロックラインの歪補正処理においては糊代画像データを用いて歪補正処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、歪補正処理を行うための画像処理装置及びそのような画像処理装置を備えた撮像装置に関する。
【背景技術】
【0002】
デジタルカメラ等の撮像装置はレンズを用いて被写体からの光を撮像素子上に集光させて画像を得るようにしている。この場合、レンズには歪曲収差があるため、撮像素子を介して得られる画像は、撮影対象に対して相似形とはならずに歪みを持ってしまう。近年の撮像装置においては、このような歪みのある画像をデジタル処理によって歪みのない画像に補正する、所謂歪補正処理機能を搭載したものが増加してきている。また、このような歪補正処理に関する提案も各種なされている。
【0003】
例えば、特許文献1においては、フレームメモリに格納された1フレーム分の画像データを複数のブロック(ブロックライン)に分割して歪補正処理を行うようにしている。また、この特許文献1においては、歪補正処理によって所望の矩形範囲に対応したブロックラインの画像データが得られるような画像データの入力範囲を、歪補正処理に先だって決定するようにしている。このようにして画像データの入力範囲を決定してからブロックライン毎の歪補正処理を行うことにより、必要最低限の入力画像データを用いて歪補正処理を行うことができる。
【0004】
歪補正処理回路における処理の簡素化等を考慮した場合、歪補正処理回路に入力すべき画像データの入力範囲は、歪補正処理を施すべき部分を含む矩形範囲とすることが望ましい。このような矩形範囲のブロックラインの画像データを入力する構成とした場合、現在処理中のブロックラインの下端部と次回処理すべきブロックラインの上端部とで重複して処理する必要のある部分が生じることになる。このような重複処理を行うと画像処理の効率としては低下してしまう。
【0005】
特許文献2には、空間フィルタ処理における画像データの重複処理をなくすための提案がなされている。この特許文献2においては、フィルタ処理手段で処理中の中間データのうちで、次の分割画像の処理に対しても用いる重複部分の中間データをフレームメモリ(画像メモリ)に格納するようにしている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2005−44098号公報
【特許文献2】特開2002−304624号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
ここで、特許文献2の手法を特許文献1のブロックライン毎の歪補正処理に適用する場合を考える。一般に、歪補正処理の際に入力すべきブロックラインの画像データの入力範囲はブロックライン毎に異なるものとなる。このため、単純に特許文献2の手法を特許文献1のブロック毎の歪補正処理に適用してしまうと、例えば、現在処理すべきブロックラインの入力範囲に対して次回処理すべきブロックラインの入力範囲が左方向にずれていた場合、その左方向にずれた部分はフレームメモリに格納されていないので、その左方向にずれた部分だけ新たに入力する必要が生じる。
【0008】
本発明は、上記の事情に鑑みてなされたもので、歪補正処理をブロックライン単位で行う場合に、ブロックライン毎の重複処理をなくすことが可能な画像処理装置及びそのような画像処理装置を備えた撮像装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記の目的を達成するために、本発明の第1の態様の画像処理装置は、撮像されてフレームメモリに格納された画像データに対して歪補正処理を行う歪補正部と、前記歪補正部が前記画像データのブロックライン毎に歪補正処理を行うために必要な矩形範囲を歪補正範囲として前記ブロックライン毎に算出する歪補正範囲算出部と、前記歪補正部における現在の歪補正処理対象である現ブロックラインについて前記歪補正範囲算出部により算出された現歪補正範囲と、前記現ブロックラインから連続する少なくとも1つのブロックラインについて前記歪補正範囲算出部により算出された次歪補正範囲とから、前記現ブロックラインとして前記歪補正部に入力する画像データの範囲を入力画像範囲として求める制御部と、前記現歪補正範囲と前記次歪補正範囲とから、前記入力画像範囲に対応した画像データのうちで、前記歪補正部における次の歪補正処理対象である次ブロックラインにおいても必要となる画像データの範囲を求める記憶制御部と、前記記憶制御部によって求められた範囲の画像データを糊代画像データとして格納する糊代保存メモリとを具備し、前記歪補正部に入力される前記入力画像範囲に対応した画像データは、前記フレームメモリから読み出される画像データと前記糊代保存メモリから読み出される糊代画像データの両方を含むことを特徴とする。
【0010】
また、上記の目的を達成するために、本発明の第2の態様の撮像装置は、被写体の光学像を集光するレンズと、前記レンズにより集光された前記被写体の光学像を画像データに変換する撮像部と、前記撮像部おいて変換された画像データを格納するフレームメモリと、前記フレームメモリに格納された画像データに対して歪補正処理を行う歪補正部と、前記レンズの歪情報に基づいて、前記歪補正部が前記画像データのブロックライン毎に歪補正処理を行うために必要な矩形範囲を歪補正範囲として前記ブロックライン毎に算出する歪補正範囲算出部と、前記歪補正部における現在の歪補正処理対象である現ブロックラインについて前記歪補正範囲算出部により算出された現歪補正範囲と、前記現ブロックラインから連続する少なくとも1つのブロックラインについて前記歪補正範囲算出部により算出された次歪補正範囲とから、前記現ブロックラインとして前記歪補正部に入力する画像データの範囲を入力画像範囲として求める制御部と、前記現歪補正範囲と前記次歪補正範囲とから、前記入力画像範囲に対応した画像データのうちで、前記歪補正部における次の歪補正処理対象である次ブロックラインにおいても必要となる画像データの範囲を求める記憶制御部と、前記記憶制御部によって求められた範囲の画像データを糊代画像データとして格納する糊代保存メモリとを具備し、前記歪補正部に入力される前記入力画像範囲に対応した画像データは、前記フレームメモリから読み出される画像データと前記糊代保存メモリから読み出される糊代画像データの両方を含むことを特徴とする。
【発明の効果】
【0011】
本発明によれば、歪補正処理をブロックライン単位で行う場合に、ブロックライン毎の重複処理をなくすことが可能な画像処理装置及びそのような画像処理装置を備えた撮像装置を提供することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の一実施形態に係る画像処理装置を備えた撮像装置の一例の構成を示す図である。
【図2】本発明の一実施形態における歪補正処理回路の構成を示す図である。
【図3】ブロックライン毎の歪と歪補正範囲との関係を示す図である。
【図4】歪補正部の構成を示す図である。
【図5】本発明の一実施形態における歪補正処理回路の動作について示すタイミングチャートである。
【図6】歪補正処理の具体例を示す図である。
【図7】ダミーデータの読み出しについて説明するための図である。
【図8】糊代画像データの書き込み手法の一例を示す図である。
【図9】列方向に分割したブロックラインについて示す図である。
【発明を実施するための形態】
【0013】
以下、図面を参照して本発明の実施形態を説明する。
図1は、本発明の一実施形態に係る画像処理装置を備えた撮像装置の一例の構成を示す図である。図1に示す撮像装置は、レンズ101と、シャッタ絞り102と、撮像素子103と、前処理部104と、バス105と、フレームメモリ106と、画像処理部107と、圧縮伸長処理部108と、メモリインターフェース(IF)109と、記録媒体110と、表示制御部111と、表示部112と、マイクロコンピュータ113と、操作部114と、Flashメモリ115と、タイミングジェネレータ(TG)116とを有している。
【0014】
レンズ101は、被写体の光学像を撮像素子103に集光させる。シャッタ絞り102は、レンズ101の近傍に設けられている。このシャッタ絞り102は、マイクロコンピュータ113の制御に従って、レンズ101から撮像素子103への光の入射量(撮像素子103の露光量)を調節するシャッタ兼用絞りである。勿論、シャッタと絞りとが別体として設けられていても良い。
【0015】
撮像素子103は、フォトダイオード等の光電変換素子が2次元に配されて構成される受光面に例えばベイヤ配列をなすカラーフィルタが貼り付けられて構成されている。この撮像素子103は、レンズ101により受光面上に集光された光を電気信号(画像信号)に変換して前処理部104へ出力する。前処理部104は、撮像素子103からの画像信号に対して相関二重サンプリング(CDS)処理やゲイン制御(AGC)処理等の種々のアナログ処理を施す。また、前処理部は、アナログ処理後の画像信号をデジタルの画像信号(以降、画像データという)に変換した後、この画像データを、バス105を介してフレームメモリ106に転送する。
【0016】
バス105は、撮像装置の内部で発生した各種データを撮像装置内の各ブロックに転送するための転送路である。このバス105は、前処理部104と、フレームメモリ106と、画像処理部107と、圧縮伸長処理部108と、メモリIF109と、表示制御部111と、マイクロコンピュータ113とに接続されている。
【0017】
フレームメモリ106は、前処理部104において得られた画像データや、画像処理部107、圧縮伸長処理部108において処理された画像データ等の各種データを一時的に格納する。
【0018】
本実施形態における画像処理部107は、フレームメモリ106に格納された画像データに対して各種の画像処理を施す。本実施形態における画像処理部107は、レンズ101の歪曲収差によって画像データに生じる歪みを補正する歪補正処理回路を少なくとも有し、この他に、YC処理回路(ベイヤ配列の画像データをYC(輝度・色差)データに変換する回路)やホワイトバランス補正処理回路(画像データの色バランスを補正する回路)、ノイズ低減処理回路(画像データにおけるノイズを低減する処理を行う回路)等の各種の画像処理回路を有している。これらの画像処理回路は、例えば、個別にバス105に接続されている。なお、各画像処理回路を、小容量のバッファメモリを介して直列的に接続するようにしても良い。
【0019】
圧縮伸長処理部108は、画像データの記録時には、画像処理部107において処理された画像データを、バス105を介してフレームメモリ106から読み出し、読み出した画像データを例えばJPEG方式に従って圧縮する。さらに、圧縮伸長処理部108は、画像データの再生時には、記録媒体110に記録された圧縮済みの画像データを、バス105を介してフレームメモリ106から読み出し、読み出した画像データを伸長することも行う。
【0020】
メモリIF109は記録媒体110への画像データの書き込み及び読み出しの制御を行う。記録媒体110は、例えば撮像装置に着脱可能なメモリカードからなる記録媒体であり、圧縮伸長処理部108において圧縮された画像データ等が記録される。
【0021】
表示制御部111は、フレームメモリ106から画像データを読み出して映像信号に変換し、変換した映像信号を表示部112に出力して表示部112における画像の表示を行う。表示部112は、例えばTFT液晶ディスプレイ等であり、表示制御部111からの映像信号に基づく画像を表示する。
【0022】
マイクロコンピュータ113は、デジタルカメラ本体の各種シーケンスを統括的に制御する。このマイクロコンピュータ113には、操作部114、Flashメモリ115が接続されている。
【0023】
操作部114は、ユーザが図1に示す撮像装置を操作するための各種の操作部材である。ユーザにより操作部114の何れかの操作部材が操作されることにより、マイクロコンピュータ113は、ユーザの操作に応じた各種シーケンスを実行する。Flashメモリ115は、撮像装置の動作に必要な各種パラメータを記憶している。また、Flashメモリ115は、マイクロコンピュータ113にて実行する各種プログラムも記憶している。マイクロコンピュータ113は、Flashメモリ115に記憶されているプログラムに従い、またFlashメモリ115から各種シーケンスに必要なパラメータを読み込み、各処理を実行する。
【0024】
TG116は、マイクロコンピュータ113からの制御信号に従って撮像素子103の動作タイミングを制御するための同期信号を生成する。
【0025】
次に、画像処理部107における歪補正処理について説明する。図2は、本実施形態における歪補正処理回路の構成を示す図である。
【0026】
図2に示す歪補正処理回路107aは、歪補正範囲算出部201と、現歪補正範囲情報レジスタ202と、入力DMA203と、歪補正部204と、出力DMA205と、シーケンサ206とを有している。
【0027】
歪補正範囲算出部201は、シーケンサ206からの開始トリガを受けてブロックライン単位の歪補正処理を行うために必要な画像データの座標情報である歪補正範囲をブロックライン単位で算出し、算出した歪補正範囲情報をシーケンサ206に出力する。ここで、レンズ101の歪情報から撮像素子103を介して得られる画像データにおける歪みの度合いについては予測することが可能である。例えば、歪補正処理後の画像が図3(a)に示すような同じ列方向画素数を有する複数の矩形ブロック(ブロックライン)から構成されるとする。この場合、例えば図3(a)に示すブロックライン1のような歪補正処理結果を得るためには、図3(b)で示すような歪んだブロックライン1に対応した画像データに対して歪補正処理を行う必要がある。実際には、歪補正部204における処理の簡素化等を考慮した場合、歪んだブロックライン1の画像データを含む矩形ブロック301に対して歪補正処理を行うことが望ましい。同様に、図3(a)に示すブロックライン2のような歪補正処理結果を得るためには、図3(b)で示す矩形ブロック302に対して歪補正処理を行うことが望ましい。これらのような歪補正処理に必要な矩形ブロックの範囲を算出するのが歪補正範囲算出部201である。歪補正処理後の画像の位置と歪み補正前の画像の位置とには対応関係があるので、歪補正範囲算出部201は、レンズ101の歪情報等から歪補正処理後の画像を予測し、この予測結果から歪補正処理前の歪んだブロックラインを含む矩形ブロックの座標情報を歪補正範囲情報として算出する。
【0028】
図3(b)からも分かるように、矩形ブロック301と矩形ブロック302とには重複している部分があり、ブロックライン1に対する歪補正処理とブロックライン2に対する歪補正処理の両方で重複部分の画像データをフレームメモリ106から読み出して処理するのは画像処理効率の低下に繋がる。本実施形態においては、このような矩形ブロックにおける重複読み出しの量を減らすために、あるブロックラインに対する処理中に、そのブロックラインと次のブロックラインとの間で処理が重複する部分を糊代画像データとして歪補正部204内の糊代保存メモリ(詳細は後述する)に格納しておく。そして、次のブロックラインの処理の際には、前のブロックラインに対して処理が重複しない部分の画像データのみをフレームメモリ106から読み出し、残りを糊代保存メモリから読み出して処理する。これにより、フレームメモリ106からの無駄な画像データの読み出しを最低限とする。
【0029】
さらに、本実施形態においては、フレームメモリ106から歪補正部204内の歪補正回路(詳細は後述する)に入力する画像データの入力範囲と糊代保存メモリに格納する画像データの範囲とを、歪補正部204の現在の歪補正処理の対象となっているブロックラインに対応した歪補正範囲情報である現歪補正範囲情報と、歪補正部204の次の歪補正処理の対象のブロックラインに対応した歪補正範囲情報である次歪補正範囲情報とから求める。これにより、画像データにおける歪みの度合いによって糊代画像データの位置がずれたとしても、糊代保存メモリに矩形範囲の糊代画像データを正しく格納できる。
【0030】
現歪補正範囲情報レジスタ202は、歪補正範囲算出部201において算出された現歪補正範囲情報を保持する。
【0031】
入力DMA(Direct Memory Access)203は、シーケンサ206からの入力DMA開始トリガを受けてフレームメモリ106からブロックライン単位の歪補正処理を行うために必要な画像データを読み出すためのDMA転送を行う。
【0032】
歪補正部204は、図4に示すように、入力バッファ401と、歪補正回路402と、糊代保存メモリ403と、糊代保存メモリコントローラ404とを有している。
【0033】
入力バッファ401は、入力DMA203を介してフレームメモリ106から読み出された画像データ又は糊代保存メモリ403から読み出された画像データを一時的に保持しておくためのバッファメモリである。歪補正部としての歪補正回路402は、入力バッファ401から入力され画像データに対して歪補正処理を施す。この歪補正処理は、例えば図3(b)のような歪んだ状態のブロックラインの画像データの各点を、図3(a)のような歪みのない状態のブロックラインの画像データの各点に置き換えるような座標変換によって行う。
【0034】
糊代保存メモリ403は、歪補正部204の現在の歪補正処理の対象となっているブロックラインに対応して歪補正部204に入力されてきた画像データのうち、次のブロックラインに対応した歪補正処理においても用いられる部分を糊代画像データとして格納する。記憶制御部としての機能を有する糊代保存メモリコントローラ404は、現歪補正範囲情報と次歪補正範囲情報とから、糊代保存メモリ403に格納すべき糊代画像データの範囲を求め、この求めた糊代画像データの範囲に応じて、歪補正部204に入力されてくる画像データの糊代保存メモリ403への書き込みを制御する。また、歪補正回路402における歪補正処理のために、糊代保存メモリ403からの糊代画像データの読み出しを制御する。
【0035】
出力DMA205は、シーケンサ206からの出力DMA開始トリガを受けて歪補正部204で歪補正処理がなされた画像データをフレームメモリ106へ書き込むためのDMA転送を行う。
【0036】
シーケンサ206は、図2に示す歪補正処理回路の各部の動作を制御する。また、本実施形態におけるシーケンサ206は制御部としての機能も有する。即ち、シーケンサ206は、現歪補正範囲情報と次歪補正範囲情報とから歪補正処理のためにフレームメモリ106から読み出す画像データの範囲(入力範囲)を求める。
【0037】
次に、図2〜図4で示した歪補正処理回路107aの動作について説明する。図5は、歪補正処理回路107aの動作について示すタイミングチャートである。なお、図5の例は図6に示す3個のブロックライン(BL)1〜3に対する処理について示したものである。
【0038】
まず、フレームメモリ106に格納された画像データの上端のブロックラインであるブロックライン1に対する歪補正処理を行う。この際、シーケンサ206は、ブロックライン1に対応した歪補正範囲を算出させるように歪補正範囲算出部201の設定を行い、設定終了後に、歪補正範囲算出部201に開始トリガを入力する。この開始トリガを受けて、歪補正範囲算出部201は、ブロックライン1に対応した歪補正範囲を算出する。上述したように、歪補正範囲は、歪んだ状態のブロックライン1を囲む矩形ブロックに対応した範囲である。したがって、例えば、図6に示すブロックライン1に対応した歪補正範囲は範囲501となる。歪補正範囲算出部201において算出されたブロックライン1に対応した歪補正範囲を示す座標情報(歪補正範囲情報)は、ブロックライン1における現歪補正範囲情報としてシーケンサ206に出力される。
【0039】
上述したように、シーケンサ206において画像データの入力範囲を求めるためには、現歪補正範囲情報と次歪補正範囲情報の2つの歪補正範囲情報が必要となる。したがって、ブロックライン1における歪補正範囲の算出後、シーケンサ206は、ブロックライン2に対応した歪補正範囲を算出させるように歪補正範囲算出部201の設定を行い、設定終了後に、歪補正範囲算出部201に開始トリガを入力する。この開始トリガを受けて、歪補正範囲算出部201は、ブロックライン2に対応した歪補正範囲を算出する。例えば、図6に示すブロックライン2については範囲502が歪補正範囲となる。歪補正範囲算出部201において算出されたブロックライン2に対応した歪補正範囲情報は、ブロックライン1における次歪補正範囲情報としてシーケンサ206に出力される。
【0040】
ブロックライン1についての歪補正範囲とブロックライン2についての歪補正範囲とが算出された後、シーケンサ206は、ブロックライン1の処理のために歪補正回路402に入力する画像データの入力範囲を求める。ここで、現在の歪補正処理の対象となっているブロックラインBLnについての画像データの入力範囲は、ブロックラインBLnの歪補正範囲(即ち現歪補正範囲情報)とブロックラインBLnの次のブロックラインBLn+1の歪補正範囲(即ち次歪補正範囲情報)とから、以下のように求める。
入力範囲の垂直方向の幅:ブロックラインBLnの歪補正範囲の垂直方向の幅
入力範囲の水平方向の幅:ブロックラインBLnの歪補正範囲の水平方向の幅とブロックラインBLn+1の歪補正範囲の水平方向の幅の両方を含む幅
例えば、図6の場合、ブロックライン1についての入力範囲の垂直方向の幅は、ブロックライン1の歪補正範囲501の垂直方向の幅となる。また、入力範囲の水平方向の幅は、ブロックライン1の歪補正範囲501の水平方向の幅とブロックライン2の歪補正範囲502の水平方向の幅の両方を含む幅となる。したがって、ブロックライン1の処理のために必要な入力範囲は図6に示す入力範囲503となる。入力範囲を求めた後、シーケンサ206は、ブロックライン2の歪補正範囲情報を、次のブロックライン2における処理の際に用いる現歪補正範囲情報として、現歪補正範囲情報レジスタ202に保持する。
【0041】
また、シーケンサ206は、ブロックライン1の歪補正範囲情報とブロックライン2の歪補正範囲情報とを糊代保存メモリコントローラ404にも入力する。糊代保存メモリコントローラ404は、ブロックライン1の歪補正範囲情報とブロックライン2の歪補正範囲情報とから、入力範囲503に対応した画像データのうちで、ブロックライン2の歪補正処理についても必要となる糊代画像データの範囲を算出する。この範囲は、現在のブロックラインにおける入力範囲と次のブロックラインについての歪補正範囲とで重複している範囲とする。例えば、図6の場合は、入力範囲503と歪補正範囲502とで重複している範囲、即ち範囲504がブロックライン2の歪補正処理についても必要となる糊代画像データの範囲となる。この範囲の画像データを糊代画像データとして糊代保存メモリ403に格納しておくことにより、ブロックライン2の歪補正処理の際に、ブロックライン1と処理が重複する範囲の画像データについてはフレームメモリ106から読み出す必要がない。
【0042】
画像データの入力範囲503及び糊代画像データの範囲504が算出された後、シーケンサ206は、入力DMA203に対して入力DMA開始トリガを入力して、フレームメモリ106から入力範囲503に対応した画像データの読み出しを行う。入力DMA203を介して読み出された画像データは、順次、歪補正部204の入力バッファ401に入力される。また、この際、糊代保存メモリコントローラ404は、入力DMA203を介して読み出された画像データのうちで、糊代画像データに対応した範囲504の画像データが書き込まれるように糊代保存メモリ403の書き込みを制御する。
【0043】
入力バッファ401に入力された画像データは歪補正回路402に逐次入力される。歪補正回路402は、入力された画像データについて歪補正処理を実行する。歪補正回路402における歪補正処理の実行後、シーケンサ206は、出力DMA205に対して出力DMA開始トリガを入力して、歪補正部204の歪補正回路402からフレームメモリ106への画像データの書き込みを行う。画像データの書き込み終了後、転送完了の割り込み信号がシーケンサ206に入力される。これにより、ブロックライン1に対する歪補正処理が終了する。
【0044】
以上のようなブロックライン1の画像データに対する歪補正処理と並行して、シーケンサ206は、ブロックライン2の次のブロックラインであるブロックライン3に対応した歪補正範囲を算出させるように歪補正範囲算出部201の設定を行い、設定終了後に、歪補正範囲算出部201の動作を開始させるべく、歪補正範囲算出部201に開始トリガを入力する。この開始トリガを受けて、歪補正範囲算出部201は、ブロックライン3に対応した歪補正範囲を算出する。例えば、図6に示すブロックライン3については範囲512が歪補正範囲となる。歪補正範囲算出部201において算出されたブロックライン3に対応した歪補正範囲情報は、ブロックライン2における次歪補正範囲情報としてシーケンサ206に出力される。
【0045】
ブロックライン3に対応した歪補正範囲情報が入力された後、シーケンサ206は、歪補正範囲算出部201において算出されたブロックライン3の歪補正範囲情報と現歪補正範囲情報レジスタ202に保持されているブロックライン2の歪補正範囲情報とから、ブロックライン2の処理のために歪補正回路402に入力する画像データの入力範囲を求める。例えば、図6の場合、ブロックライン2についての入力範囲の垂直方向の幅は、ブロックライン2の歪補正範囲511の垂直方向の幅である。また、入力範囲の水平方向の幅は、ブロックライン2の歪補正範囲511の水平方向の幅とブロックライン3の歪補正範囲512の水平方向の幅とを合わせた幅である。したがって、ブロックライン2の処理のために必要な入力範囲は図6に示す入力範囲513となる。入力範囲を求めた後、シーケンサ206は、ブロックライン3の歪補正範囲情報を、次のブロックライン3における処理の際に用いる現歪補正範囲情報として、現歪補正範囲情報レジスタ202に保持する。
【0046】
また、シーケンサ206は、ブロックライン2の歪補正範囲情報とブロックライン3の歪補正範囲情報とを糊代保存メモリコントローラ404にも入力する。糊代保存メモリコントローラ404は、ブロックライン2の歪補正範囲情報とブロックライン3の歪補正範囲情報とから、入力範囲513に対応した画像データのうちで、ブロックライン3の歪補正処理についても必要となる糊代画像データの範囲を算出する。例えば、図6の場合は、入力範囲513と歪補正範囲512とで重複している範囲517がブロックライン2の歪補正処理についても必要となる糊代画像データの範囲となる。
【0047】
ブロックライン2の処理のために必要な入力範囲513のうち、範囲514に対応した画像データについては既に糊代保存メモリ403に格納されている。したがって、範囲514に対応した画像データについては糊代保存メモリ403から読み出す。しかしながら、入力範囲503に対して入力範囲513は左にずれているため、範囲514の左隣に隣接する範囲515に対応した画像データは糊代保存メモリ403には格納されてはいない。このような範囲515を含む、糊代保存メモリ403に格納されていない範囲の画像データをフレームメモリ106から読み出すとすると、フレームメモリ106からL字状に画像データを読み出す必要が生じる。このようなL字状の読み出しを可能とすると回路の複雑化に繋がってしまう。
【0048】
ここで、範囲515に対応した画像データは次のブロックライン3の歪補正処理において必要となる画像データを入力するために必要な範囲を確保するための画像データであって、歪補正処理そのものには寄与しない。このため、糊代保存メモリ403からは範囲515に対応したダミーのデータを読み出すことで、見掛け上、矩形の糊代画像データの読み出しを行う。例えば、図7(a)に示すようにして糊代保存メモリ403の所定アドレスに糊代画像データが格納されている状態で、範囲514と範囲515とを含む範囲に対応したアドレスを指定して糊代画像データを読み出した場合、図7(b)に示すように、アドレスがひっくり返った位置から範囲515に対応したダミーデータが読み出される。なお、このダミーデータとしては特に限定されるものではなく、例えば過去に使用した糊代画像データ等を利用することができる。
【0049】
このような構成とすることにより、フレームメモリ106からは範囲516で示す矩形の画像データのみを読み出せば良い。
【0050】
このような画像データの読み出しを行うべく、シーケンサ206は、入力DMA203に対して入力DMA開始トリガを入力してフレームメモリ106から範囲516に対応した画像データの読み出しを行う。また、シーケンサ206は、糊代保存メモリコントローラ404を制御して糊代画像データの読み出しを行う。入力DMA203を介して読み出された画像データ及び糊代保存メモリ403から読み出された画像データは、順次、歪補正部204の入力バッファ401に入力される。また、この際、糊代保存メモリコントローラ404は、入力DMA203を介して読み出された画像データのうちで、糊代画像データに対応した範囲517の画像データが書き込まれるように糊代保存メモリ403の書き込みを制御する。このように、本実施形態においては、現在のブロックラインnの処理のための糊代画像データの読み出しと次のブロックラインn+1の処理のための糊代画像データの書き込みとは並行して行われる。したがって、ブロックラインnのための糊代画像データの読み出しが終了するまではこのブロックラインnのための糊代画像データが上書きされないようにする必要がある。なお、現在のブロックラインnの処理のための糊代画像データと次のブロックラインn+1の処理のための糊代画像データとで重複する部分がある場合には、図8のように、糊代画像データを重複して書き込むようにしても良い。
【0051】
入力バッファ401に入力された画像データは歪補正回路402に逐次入力される。歪補正回路402は、入力された画像データについて歪補正処理を実行する。歪補正回路402における歪補正処理の実行後、シーケンサ206は、出力DMA205に対して出力DMA開始トリガを入力して、歪補正部204の歪補正回路402からフレームメモリ106への画像データの書き込みを行う。画像データの書き込み終了後、転送完了の割り込み信号がシーケンサ206に入力される。
【0052】
ブロックライン3についての処理もブロックライン2についての処理と同様にして行われる。ただし、ブロックライン3は最後のブロックラインであるため、次のブロックラインのために糊代画像データを格納する必要がない。したがって、画像データの入力範囲はブロックライン3の歪補正範囲521となる。また、範囲521のうち、範囲524の部分については糊代保存メモリ403に保存されており、範囲525の部分については糊代保存メモリ403からダミーデータを読み出せば良い。したがって、フレームメモリ106からは、範囲526に対応した画像データのみを読み出せば良い。
【0053】
以上説明したように、本実施形態によれば、現在の歪補正処理の対象のブロックラインの歪補正範囲と次の歪補正処理の対象のブロックラインの歪補正範囲とから、現在の歪補正処理の対象のブロックラインに対応して歪補正回路に入力する画像データの入力範囲を求めることにより、画像データにおける歪みの度合いによって糊代画像データの位置がずれたとしても、糊代保存メモリに矩形範囲の糊代画像データを正しく格納することが可能となる。
【0054】
また、現歪補正範囲情報レジスタ202に現歪補正範囲情報を逐次保持しておくことにより、2回目以後の歪補正処理においては、2回の歪補正範囲の算出を行う必要がない。なお、各ブロックラインにおける歪補正処理のたびに2回の歪補正範囲の算出を行うようにすれば、現歪補正範囲情報レジスタ202はなくとも良い。
【0055】
また、糊代画像データとして格納されていない一部のデータをダミーデータとして糊代保存メモリ403から読み出すことにより、フレームメモリ106からは常に矩形の画像データを読み出すことができる。これにより、回路の簡素化を図ることが可能である。
【0056】
以上実施形態に基づいて本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。例えば、上述の実施形態においては、画像データの入力範囲を現歪補正範囲情報と次歪補正範囲情報の2つから求めるようにしている。これに対し、現歪補正範囲情報と、現在の歪補正処理の対象となっているブロックラインから連続する複数のブロックラインの歪補正範囲情報とから入力範囲を求めるようにしても良い。例えば、ブロックラインBLn、BLn+1、BLn+2の歪補正範囲情報に基づいて入力範囲を求める場合には、入力範囲の垂直方向の幅はブロックラインBLnの歪補正範囲の垂直方向の幅とすれば良く、入力範囲の水平方向の幅はブロックラインBLnの歪補正範囲の水平方向の幅とブロックラインBLn+1の歪補正範囲の水平方向の幅とブロックラインBLn+2の歪補正範囲の水平方向の幅の全てを含む幅とすれば良い。
【0057】
また、上述の実施形態においては、画像データを行方向に分割してブロックラインを構成している。これに対し図9のようにして画像データを列方向にも分割してブロックラインを構成するようにしても良い。なお、図9の例において、ブロックライン1−1、2−1、3−1、…、10−1、1−2、2−2、…、10−2の順で歪補正処理を行うとすると、上端のブロックライン1−1、2−1における処理の際には、歪補正範囲算出部201を2回動作させる必要がある。
【符号の説明】
【0058】
101…レンズ、102…シャッタ絞り、103…撮像素子、104…前処理部、105…バス、106…フレームメモリ、107…画像処理部、107a…歪補正処理回路、108…圧縮伸長処理部、109…メモリインターフェース(IF)、110…記録媒体、111…表示制御部、112…表示部、113…マイクロコンピュータ、114…操作部、115…Flashメモリ、116…タイミングジェネレータ(TG)、201…歪補正範囲算出部、202…現歪補正範囲情報レジスタ、203…入力DMA、204…歪補正部、205…出力DMA、206…シーケンサ、401…入力バッファ、402…歪補正回路、403…糊代保存メモリ、404…糊代保存メモリコントローラ

【特許請求の範囲】
【請求項1】
撮像されてフレームメモリに格納された画像データに対して歪補正処理を行う歪補正部と、
前記歪補正部が前記画像データのブロックライン毎に歪補正処理を行うために必要な矩形範囲を歪補正範囲として前記ブロックライン毎に算出する歪補正範囲算出部と、
前記歪補正部における現在の歪補正処理対象である現ブロックラインについて前記歪補正範囲算出部により算出された現歪補正範囲と、前記現ブロックラインから連続する少なくとも1つのブロックラインについて前記歪補正範囲算出部により算出された次歪補正範囲とから、前記現ブロックラインとして前記歪補正部に入力する画像データの範囲を入力画像範囲として求める制御部と、
前記現歪補正範囲と前記次歪補正範囲とから、前記入力画像範囲に対応した画像データのうちで、前記歪補正部における次の歪補正処理対象である次ブロックラインにおいても必要となる画像データの範囲を求める記憶制御部と、
前記記憶制御部によって求められた範囲の画像データを糊代画像データとして格納する糊代保存メモリと、
を具備し、
前記歪補正部に入力される前記入力画像範囲に対応した画像データは、前記フレームメモリから読み出される画像データと前記糊代保存メモリから読み出される糊代画像データの両方を含むことを特徴とする画像処理装置。
【請求項2】
前記制御部は、前記現歪補正範囲における水平方向に沿った幅と前記次歪補正範囲における水平方向に沿った幅の両方を含む範囲を前記入力画像範囲における水平方向に沿った幅とし、前記現歪補正範囲における垂直方向に沿った幅を前記入力画像範囲における垂直方向に沿った幅とすることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記歪補正範囲算出部で算出された歪補正範囲を順次保持するレジスタを有し、
前記制御部は、前記レジスタに保持された歪補正範囲を前記現歪補正範囲として用いることを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記歪補正範囲算出部は、前記現ブロックラインが前記画像データにおける上端のブロックラインである場合のみ前記現歪補正範囲と前記次歪補正範囲とをそれぞれ算出し、前記現ブロックラインが前記画像データにおける上端のブロックライン以外のブロックラインである場合には前記次歪補正範囲のみを算出することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
被写体の光学像を集光するレンズと、
前記レンズにより集光された前記被写体の光学像を画像データに変換する撮像部と、
前記撮像部おいて変換された画像データを格納するフレームメモリと、
前記フレームメモリに格納された画像データに対して歪補正処理を行う歪補正部と、
前記レンズの歪情報に基づいて、前記歪補正部が前記画像データのブロックライン毎に歪補正処理を行うために必要な矩形範囲を歪補正範囲として前記ブロックライン毎に算出する歪補正範囲算出部と、
前記歪補正部における現在の歪補正処理対象である現ブロックラインについて前記歪補正範囲算出部により算出された現歪補正範囲と、前記現ブロックラインから連続する少なくとも1つのブロックラインについて前記歪補正範囲算出部により算出された次歪補正範囲とから、前記現ブロックラインとして前記歪補正部に入力する画像データの範囲を入力画像範囲として求める制御部と、
前記現歪補正範囲と前記次歪補正範囲とから、前記入力画像範囲に対応した画像データのうちで、前記歪補正部における次の歪補正処理対象である次ブロックラインにおいても必要となる画像データの範囲を求める記憶制御部と、
前記記憶制御部によって求められた範囲の画像データを糊代画像データとして格納する糊代保存メモリと、
を具備し、
前記歪補正部に入力される前記入力画像範囲に対応した画像データは、前記フレームメモリから読み出される画像データと前記糊代保存メモリから読み出される糊代画像データの両方を含むことを特徴とする撮像装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2011−2940(P2011−2940A)
【公開日】平成23年1月6日(2011.1.6)
【国際特許分類】
【出願番号】特願2009−144449(P2009−144449)
【出願日】平成21年6月17日(2009.6.17)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FLASH
【出願人】(504371974)オリンパスイメージング株式会社 (2,647)
【Fターム(参考)】