(57)【要約】【課題】画像の幾何学的歪補正を、使用メモリリソースや演算処理時間などの点で効率化する。【解決手段】歪補正された輝度成分データを生成する歪補正回路(１５)は、カメラによって撮影された画像の領域を仕切るための第１格子パターン（ＧＰＴＲＮａ）の格子点（ＧＲＤａ１）と前記第１格子パターンに対応する歪補正後の第２格子パターン（ＧＰＴＲＮｂ）の格子点（ＧＲＤｂ１）との差分（ＤＩＦ）を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう。【選択図】図４
2010257357.tif 000002
【特許請求の範囲】
【請求項１】
ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう、画像処理装置。
【請求項２】
前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する、請求項１記載の画像処理装置。
【請求項３】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項２記載の画像処理装置。
【請求項４】
ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域の輝度成分データを描画する処理を行なう、画像処理装置。
【請求項５】
前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する、請求項４記載の画像処理装置。
【請求項６】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項５記載の画像処理装置。
【請求項７】
ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう、画像処理装置。
【請求項８】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項７記載の画像処理装置。
【請求項９】
ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域の輝度成分データを描画する処理を行なう、画像処理装置。
【請求項１０】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項９記載の画像処理装置。
【請求項１１】
ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう、画像処理装置。
【請求項１２】
前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する、請求項１１記載の画像処理装置。
【請求項１３】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項１２記載の画像処理装置。
【請求項１４】
ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域のデータを描画する処理を行なう、画像処理装置。
【請求項１５】
前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する、請求項１４記載の画像処理装置。
【請求項１６】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項１５記載の画像処理装置。
【請求項１７】
ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう、画像処理装置。
【請求項１８】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項１７記載の画像処理装置。
【請求項１９】
ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有し、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域のデータを描画する処理を行なう、画像処理装置。
【請求項２０】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項１９記載の画像処理装置。
【請求項２１】
中央処理装置と、
ＹＵＶ形式の画像データを入力して輝度成分データと色差成分データに分離する分離回路と、
分離された輝度成分データに対する画像の歪補正と分離された色差成分データに対する画像の歪補正を行う歪補正回路と、
前記歪補正回路による色差成分データに対する画像の歪補正と並列的に、前記歪補正回路で歪補正された輝度成分データを用いる画像認識のための処理を行う画像認識アクセラレータと、
歪補正された色差成分データと歪補正された輝度成分データとを合成してＲＧＢ形式の画像データに変換する変換回路と、
変換された画像データの表示制御を行う表示制御回路と、を有する半導体データ処理装置。
【請求項２２】
前記画像認識結果に従った強調データを描画するグラフィック制御回路を更に有し、
前記表示制御回路は、前記変換された画像データと共に前記強調データの表示制御を行う、請求項２１記載の半導体データ処理装置。
【請求項２３】
ビデオカメラと、
前記ビデオカメラから出力されるＹＵＶ形式の画像データを入力して画像処理を行なうデータ処理装置と、
前記データ処理装置によってアクセスされるメモリと、
前記データ処理装置によって表示制御されるディスプレイと、を有するデータ処理システムであって、
前記データ処理装置は、前記ビデオカメラから出力されるＹＵＶ形式の画像データを輝度成分データと色差成分データに分離し、分離した輝度成分データに対する画像の歪補正を行い、この歪補正された輝度成分データを用いて画像認識を行い、この画像認識と並列的に、前記分離した色差成分データに対する画像の歪補正を行い、それぞれ歪補正された輝度成分データと色差データを合成して前記ディスプレイに表示する制御を行う、データ処理システム。
【請求項２４】
前記データ処理装置は、
中央処理装置と、
メモリコントローラと、
ＹＵＶ形式の画像データを入力して輝度成分データと色差成分データに分離する分離回路と、
分離された輝度成分データに対する画像の歪補正と分離された色差成分データに対する画像の歪補正を行う歪補正回路と、
前記歪補正回路による色差成分データに対する画像の歪補正と並列的に、前記歪補正回路で歪補正された輝度成分データを用いる画像認識のための処理を行う画像認識アクセラレータと、
歪補正された色差成分データと歪補正された輝度成分データとを合成してＲＧＢ形式の画像データに変換する変換回路と、
変換された画像データの表示制御を行う表示制御回路と、を有する、請求項２３記載のデータ処理システム。
【請求項２５】
前記データ処理装置は、前記画像認識結果に従った強調データを描画するグラフィック制御回路を更に有し、
前記表示制御回路は、前記変換された画像データと共に前記強調データの表示制御を行う、請求項２４記載のデータ処理システム。
【請求項２６】
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項２７】
前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する、請求項２６記載のデータ処理システム。
【請求項２８】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項２７記載のデータ処理システム。
【請求項２９】
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域の輝度成分データを描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項３０】
前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する、請求項２９記載のデータ処理システム。
【請求項３１】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項３０記載のデータ処理システム。
【請求項３２】
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項３３】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項３２記載のデータ処理システム。
【請求項３４】
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域の輝度成分データを描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項３５】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項３４記載のデータ処理システム。
【請求項３６】
前記歪補正回路は更に、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項３７】
前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する、請求項３６記載のデータ処理システム。
【請求項３８】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項３７記載のデータ処理システム。
【請求項３９】
前記歪補正回路は更に、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域のデータを描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項４０】
前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する、請求項３９記載のデータ処理システム。
【請求項４１】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項４０記載のデータ処理システム。
【請求項４２】
前記歪補正回路は更に、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項４３】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項４２記載のデータ処理システム。
【請求項４４】
前記歪補正回路は更に、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、
前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域のデータを描画する処理を行なう、請求項２４記載のデータ処理システム。
【請求項４５】
前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う請求項４４記載のデータ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はカメラによって撮影された画像の幾何学的歪を補正する技術が適用された画像処理装置、半導体データ処理装置及びデータ処理システムに関し、例えば自動車のナビゲーションシステムに適用して有効な技術に関する。
【背景技術】
【０００２】
カメラで撮影した画像にはカメラレンズの収差などに起因して撮影された画像が樽形や糸巻き形などのような幾何学的歪（ディストーション）を生ずる。この幾何学的歪を補正する技術として特許文献1には、撮影レンズのレンズ性能特性である像高対ディストーション曲線を表す近似多項式の係数をメモリに用意し、撮影レンズから取り入れた被写体のＲＧＢデータをＹＵＶデータ（輝度信号(Y)と、輝度信号と青色成分の差(U)、輝度信号と赤色成分の差(V)の3つの情報で色を表す形式のデータ）に変換し、ＹＵＶデータを間引きし、近似多項式の演算部により、前記係数と、間引きしたＹＵＶデータ、ＹＵＶデータの各画素の座標データを用い、近似多項式の演算や補間演算を行って、歪を補整することが記載される。また、特許文献２には、ＹＵＶ形式の画像データからＹデータ（輝度成分データ）を分離し、分離したＹデータを用いて画像認識を行なうことが記載される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−２５０２４０号公報
【特許文献２】特開２００８−２１２２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ナビゲーションシステムなどに利用されるカメラレンズは比較的安物であり幾何学的歪の特性に大きな個体差が予想され、像高対ディストーション曲線を表す近似多項式が複雑になり、歪補正の演算時間も長くなり、しかも、近似多項式の係数も膨大になって大きなメモリ容量が必要になる、ことが予想される。その上、ナビゲーションシステムのようにどのようなカメラレンズが用いられるか予め特定し難い用途では、そのような複雑な近似多項式をキャリブレーションによって個別に取得することも現実的ではない。また、画像認識のためにＹＵＶデータ全体に対して歪補正を行ったのでは処理に時間を要し、ナビゲーションシステムのような画像認識にリアルタイム性が要求されるシステムには不適当である。
【０００５】
本発明の目的は、画像の幾何学的歪補正を、使用メモリリソースや演算処理時間などの点で効率化することができる技術を提供するものである。具体的は、そのような歪補正技術を適用した画像処理装置、半導体データ処理装置及びデータ処理システムを提供しよとするものである。
【０００６】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【０００８】
すなわち、歪補正された輝度成分データを生成する歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータを読込むと共に、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって前記第２格子パターン上の格子点座標を生成し、前記差分パラメータと前記生成した格子点座標より、前記第２格子パターン上の格子点座標に対応する前記第１格子パターン上の格子点座標を求め、前記第２格子パターン上の３点の格子点座標と、前記第２格子パターン上の３点の格子点座標に対応する前記第１格子パターン上の３点の格子点座標を基に、前記第２格子パターン上の３点の格子点座標で囲まれる三角形領域内の座標に対応した前記第１格子パターン上の座標を演算し、演算して求めた前記第１格子パターン上の座標の輝度成分データをメモリから読込み、前記第２格子パターン上の座標に描画する。差分パラメータは近似多項式に比べて実測によるキャリブレーション処理で容易に取得可能である。
【０００９】
第１格子パターン上の三角形領域の画像データを第２格子パターン上の三角形領域の座標に描画するから、差分パラメータは三角形の格子点に関して持てばよく、全ての画素座標に対して持つことを要しない。特に、前記第２格子パターン上の３点の格子点座標で囲まれる三角形領域内の座標に対応した前記第１格子パターン上の座標は、前記第２格子パターン上の３点の格子点座標と前記第２格子パターン上の３点の格子点座標に対応する前記第１格子パターン上の３点の格子点座標を基に、線形補完し容易に求めることができる。
【００１０】
画像認識の前処理としての歪補正は輝度成分データに対してだけ行い、色差成分データに対する歪補正は、歪補正された輝度成分データを用いて画像認識処理と並列的に行う。これにより、歪補正されたカラー画像に画像認識の結果を反映させるまでの時間を短縮することができる。
【発明の効果】
【００１１】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１２】
すなわち、画像の幾何学的歪補正を、使用メモリリソースや演算処理時間などの点で効率化することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は本発明を適用したデータ処理システムのブロック図である。
【図２】図２は歪補正回路で行われる歪補正前の画像及び非矩形の格子パターンと、歪補正後の画像及び矩形の格子パターンとを例示する説明図である。
【図３】図２は歪補正回路で行われる歪補正前の画像及び矩形の格子パターンと、歪補正後の画像及び非矩形の格子パターンとを例示する説明図である。
【図４】図４は歪補正回路で行う歪補正の原理として差分パラメータの意味を示す説明図である。
【図５】図５は全ての画素座標のデータに関するソースとディスティネーションの対応データを持たずに複数画素幅の格子パターンの格子点に関する座標データと差分データに基づく三角形領域の描画処理にて歪補正を行う場合に原理を示す説明図である。
【図６Ａ】図６Ａは輝度成分データに対するバイリニアフィルタ演算による線形補間方法を示す説明図である。
【図６Ｂ】図６Ｂは色差成分データに対するバイリニアフィルタ演算による線形補間方法を示す説明図である。
【図７Ａ】図７ＡはＹＵＶ４２２タイプのＹＵＶデータの格納フォーマットを例示する説明図である。
【図７Ｂ】図７ＢはＹＵＶ４２０タイプのＹＵＶデータの格納フォーマットを例示する説明図である。
【図８】図８は矩形格子パターンの三角形領域の頂点座標を自動生成する処理の原理を示す説明図である。
【図９Ａ】図９Ａは三角形描画による歪補正処理に用いる歪補正回路のコマンドデータフォーマットとしてソースの頂点座標とディスティネーションの頂点座標を各３２ビットで指定するフォーマットを示す説明図である。
【図９Ｂ】図９Ｂは三角形描画による歪補正処理に用いる歪補正回路のコマンドデータフォーマットとしてディスティネーション座標を自動生成する場合にソース座標を直接指定するフォーマットを示す説明図である。
【図９Ｃ】図９Ｃは三角形描画による歪補正処理に用いる歪補正回路のコマンドデータフォーマットとしてディスティネーション座標を自動生成する場合に差分パラメータを適用したフォーマットを示す説明図である
【図１０】図１０は歪補正回路の具体例を示すブロック図である。
【図１１】図１１はカメラ入力から画像出力までのメイン処理のフローチャートである。
【図１２Ａ】図１２Ａは図１１の処理を更に詳細に例示したタイミングチャートとして画像１乃至画像４を順次取り込んでパイプライン的に処理を連続的に行なう場合の処理を例示するタイミングチャートの一部である。
【図１２Ｂ】図１２Ａに続く処理のタイミングチャートである。
【図１２Ｃ】図１２Ｂに続く処理のタイミングチャートである。
【図１３Ａ】図１３Ａは図１１の処理を更に詳細に例示した別のタイミングチャートとして画像１乃至画像４を順次取り込んでパイプライン的に処理を連続的に行なう場合の別の処理を例示するタイミングチャートの一部である。
【図１３Ｂ】図１３Ａに続く処理のタイミングチャートである。
【図１３Ｃ】図１３Ｂに続く処理のタイミングチャートである。
【図１３Ｄ】図１３Ｃに続く処理のタイミングチャートである。
【図１４】図１４は画像認識結果を反映した画像表示の例を示す説明図である。
【図１５】図１５は図１４で表示される環境を例示する説明図である。
【発明を実施するための形態】
【００１４】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００１５】
〔１〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正＞
本発明の代表的な実施の形態に係る画像処理装置（１）は、ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路（１５）を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターン（ＧＰＴＲＮａ）の格子点（ＧＲＤａ１）と前記第１格子パターンに対応する歪補正後の第２格子パターン（ＧＰＴＲＮｂ）の格子点（ＧＲＤｂ１）との差分（ＤＩＦ）を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００１６】
差分パラメータは近似多項式に比べて実測によるキャリブレーション処理で容易に取得可能である。差分パラメータは三角形の格子点に関して持てばよく、全ての画素座標に対して持つことを要しない。
【００１７】
〔２〕項１の画像処理装置において、前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する。第２格子パターン上の格子点座標を自動生成する。
【００１８】
〔３〕項２の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００１９】
〔４〕＜ソース側（第１格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域の輝度成分データを描画する処理を行なう。
【００２０】
〔５〕項４の画像処理装置において、前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する。
【００２１】
〔６〕項５の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００２２】
〔７〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、ソース側第１格子パターン座標点データ、三角描画による歪補正＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００２３】
〔８〕項７の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００２４】
〔９〕＜ソース側（第１格子パターン座標）三角形領域基準、ディスティネーション側第２格子パターン座標点データ、三角描画による歪補正＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域の輝度成分データを描画する処理を行なう。
【００２５】
〔１０〕項９の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００２６】
〔１１〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正、選択手段＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段（５２Ａ，５２Ｂ）を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００２７】
〔１２〕項１１の画像処理装置において、前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する。
【００２８】
〔１３〕項１２の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００２９】
〔１４〕＜ソース側（第１格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正、選択手段＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域のデータを描画する処理を行なう。
【００３０】
〔１５〕項１４の画像処理装置において、前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する。
【００３１】
〔１６〕項１５の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００３２】
〔１７〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、ソース側第１格子パターン座標点データ、三角描画による歪補正、選択手段＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００３３】
〔１８〕項１７の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００３４】
〔１９〕＜ソース側（第１格子パターン座標）三角形領域基準、ディスティネーション側第２格子パターン座標点データ、三角描画による歪補正、選択手段＞
本発明の代表的な別の実施の形態に係る画像処理装置は、ＹＵＶ形式の画像データの輝度成分データまたは色差成分データの何れに対して歪補正を行うかを選択する選択手段を備え、前記選択手段で選択されたデータをメモリから読み出して画像の歪補正を行ってメモリに書き戻す歪補正回路を有する。前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域のデータを描画する処理を行なう。
【００３５】
〔２０〕項１９の画像処理装置において、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００３６】
〔２１〕＜画像認識と歪補正の並列化、半導体データ処理装置＞
本発明の代表的な別の実施の形態に係る半導体データ処理装置（１）は、中央処理装置(２０)と、ＹＵＶ形式の画像データを入力して輝度成分データと色差成分データに分離する分離回路（１２〜１４）と、分離された輝度成分データに対する画像の歪補正と分離された色差成分データに対する画像の歪補正を行う歪補正回路(１５)と、前記歪補正回路による色差成分データに対する画像の歪補正と並列的に、前記歪補正回路で歪補正された輝度成分データを用いる画像認識のための処理を行う画像認識アクセラレータ(１１)と、歪補正された色差成分データと歪補正された輝度成分データとを合成してＲＧＢ形式の画像データに変換する変換回路（２４Ａ,２４Ｂ）と、変換された画像データの表示制御を行う表示制御回路(２４)と、を有する。
【００３７】
画像認識の前処理としての歪補正は輝度成分データに対してだけ行い、色差成分データに対する歪補正は、歪補正された輝度成分データを用いて画像認識処理と並列的に行うから、歪補正されたカラー画像に画像認識の結果を反映させるまでの時間を短縮することができる。歪補正回路には例えば上述の歪補正回路を採用することができる。
【００３８】
〔２２〕項２１の半導体データ処理装置は前記画像認識結果に従った強調データを描画するグラフィック制御回路を更に有する。前記表示制御回路は、前記変換された画像データと共に前記強調データの表示制御を行う。
【００３９】
〔２３〕＜画像認識と歪補正の並列化、データ処理システム＞
本発明の代表的な別の実施の形態に係るデータ処理システムは、ビデオカメラと、前記ビデオカメラから出力されるＹＵＶ形式の画像データを入力して画像処理を行なうデータ処理装置と、前記データ処理装置によってアクセスされるメモリと、前記データ処理装置によって表示制御されるディスプレイと、を有する。前記データ処理装置は、前記ビデオカメラから出力されるＹＵＶ形式の画像データを輝度成分データと色差成分データに分離し、分離した輝度成分データに対する画像の歪補正を行い、この歪補正された輝度成分データを用いて画像認識を行い、この画像認識と並列的に、前記分離した色差成分データに対する画像の歪補正を行い、それぞれ歪補正された輝度成分データと色差データを合成して前記ディスプレイに表示する制御を行う。
【００４０】
〔２４〕項２３のデータ処理システムにおいて、前記データ処理装置は、中央処理装置と、メモリコントローラと、ＹＵＶ形式の画像データを入力して輝度成分データと色差成分データに分離する分離回路と、分離された輝度成分データに対する画像の歪補正と分離された色差成分データに対する画像の歪補正を行う歪補正回路と、前記歪補正回路による色差成分データに対する画像の歪補正と並列的に、前記歪補正回路で歪補正された輝度成分データを用いる画像認識のための処理を行う画像認識アクセラレータと、歪補正された色差成分データと歪補正された輝度成分データとを合成してＲＧＢ形式の画像データに変換する変換回路と、変換された画像データの表示制御を行う表示制御回路と、を有する。
【００４１】
〔２５〕項２４のデータ処理システムにおいて、前記データ処理装置は、前記画像認識結果に従った強調データを描画するグラフィック制御回路を更に有する。前記表示制御回路は、前記変換された画像データと共に前記強調データの表示制御を行う。
【００４２】
〔２６〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターン（ＧＰＴＲＮａ）の格子点（ＧＲＤａ１）と前記第１格子パターンに対応する歪補正後の第２格子パターン（ＧＰＴＲＮｂ）の格子点（ＧＲＤｂ１）との差分（ＤＩＦ）を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００４３】
差分パラメータは近似多項式に比べて実測によるキャリブレーション処理で容易に取得可能である。差分パラメータは三角形の格子点に関して持てばよく、全ての画素座標に対して持つことを要しない。
【００４４】
〔２７〕項２６のデータ処理システムにおいて、前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する。第２格子パターン上の格子点座標を自動生成する。
【００４５】
〔２８〕項２７のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００４６】
〔２９〕＜ソース側（第１格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正＞
項３０のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域の輝度成分データを描画する処理を行なう。
【００４７】
〔３０〕項２９のデータ処理システムにおいて、前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する。
【００４８】
〔３１〕項３０のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００４９】
〔３２〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、ソース側第１格子パターン座標点データ、三角描画による歪補正＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００５０】
〔３３〕項３２のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００５１】
〔３４〕＜ソース側（第１格子パターン座標）三角形領域基準、ディスティネーション側第２格子パターン座標点データ、三角描画による歪補正＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域の輝度成分データを描画する処理を行なう。
【００５２】
〔３５〕項３６のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００５３】
〔３６〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正、選択手段＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００５４】
〔３７〕項３６のデータ処理システムにおいて、前記歪補正回路は、前記第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターン上の格子点座標を生成する。
【００５５】
〔３８〕項３７のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００５６】
〔３９〕＜ソース側（第１格子パターン座標）三角形領域基準、差分パラメータ利用、三角描画による歪補正、選択手段＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点と前記第１格子パターンに対応する歪補正後の第２格子パターンの格子点との差分を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第１格子パターンの格子点の座標を用いて前記第２格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域に、対応する第１格子パターン上の三角形領域のデータを描画する処理を行なう。
【００５７】
〔４０〕項３９のデータ処理システムにおいて、前記歪補正回路は、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターン上の格子点座標を生成する。
【００５８】
〔４１〕項４０のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００５９】
〔４２〕＜ディスティネーション側（第２格子パターン座標）三角形領域基準、ソース側第１格子パターン座標点データ、三角描画による歪補正、選択手段＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに対応する歪補正後の第２格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第２格子パターンの格子点の座標を生成し、読込んだ第１格子パターンの格子点の３個の座標で頂点が規定される三角形領域のデータを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００６０】
〔４３〕項４２のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００６１】
〔４４〕＜ソース側（第１格子パターン座標）三角形領域基準、ディスティネーション側第２格子パターン座標点データ、三角描画による歪補正、選択手段＞
項２４のデータ処理システムにおいて、前記歪補正回路は、カメラによって撮影された画像の領域を仕切るための第１格子パターンに対応する歪補正後の第２格子パターンの格子点の座標をメモリから読込むと共に、前記第１格子パターンに関する始点座標と格子点間インターバルとをパラメータとして演算することによって第１格子パターンの格子点の座標を生成し、読込んだ第２格子パターンの格子点の３個の座標で頂点が規定される三角形領域に、第１格子パターン上の対応する三角形領域のデータを描画する処理を行なう。
【００６２】
〔４５〕項４４のデータ処理システムにおいて、前記歪補正回路は、第２格子パターン上の三角形領域の座標に対応する第１格子パターン上の座標が整数座標に載らない場合、その周囲の複数画素のデータをバイリニアフィルタ演算による線形補間によって得られた画像データを用いて描画を行う。
【００６３】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００６４】
《データ処理システム》
図１には本発明を適用したデータ処理システムが示される。同図に示されるデータ処理システムは、自動車のカーナビゲーションシステムに適用され、例えば相補型ＭＯＳ集積回路製造技により単結晶シリコンのような１個の半導体基板に形成されたシステム・オン・チップ（ＳＯＣ）の半導体データ処理装置としてのマイクロコンピュータ（ＭＣＵ）１、ビデオカメラ２〜４、ディスプレイ５，６、ＤＤＲＳＤＲＡＭのようなＲＡＭ（ＳＤＲＡＭ）７，８等を有する。マイクロコンピュータ１は車載用のカーナビゲーションシステムにおける各種画像処理を制御する。
【００６５】
画像データ処理装置１は、内部バスとして例えば第１バスＢＵＳ１と第２バスＢＵＳ２を有する。第１バスＢＵＳ１には、画像認識アクセラレータ（ＩＭＰ）１１、画像データ入力部（ＶＩＮ）１２〜１４及び歪補正回路（ＩＭＲ）１５がバスマスタモジュールとして接続される。画像データ入力部１２〜１４はビデオカメラ２〜４に接続される。第２バスＢＵＳ２には、バスマスタモジュールとして、プロセッサコアとしての中央処理装置（ＣＰＵ）２０，２１、描画プロセッサ（ＧＲＦ１、ＧＲＦ２）２２，２３、及び表示コントローラ（ＤＵ）２４を有する。表示コントローラ２４にはディスプレイ５，６が接続される。その他にバスＢＵＳ２には、割込みコントローラ（ＩＮＴＣ）３０、シリアルインタフェース（ＳＣＩＦ）３１、入出力ポート（ＧＰＩＯ）３２、ストリームインタフェース（ＳＴＲＭＩＦ）３３、メモリコントローラ（ＭＣＮＴ）３４，３５が接続される。メモリコントローラ３４，３５にはＳＤＲＡＭ７，が接続される。
【００６６】
メモリコントローラ３４，３５はバスマスタからのバスリクエストに応答してＳＤＲＡＭ７，８に対するメモリ制御を行う。ＳＤＲＡＭ７，８は同期クロックの立ち上がり及び立ち下がりの両エッジに同期してリードデータの出力とライトデータの入力が可能にされるクロック同期型のシンクロナスＤＲＡＭとして構成される。このＳＤＲＡＭ７，８はマイクロコンピュータ１の共有メモリとして、画像データやグラフィックデータ等のフレームバッファ、プログラムメモリ、コマンドメモリ、及びワーク領域等として利用される。
【００６７】
画像データ入力部１２，１３，１４は外部のビデオカメラ２，３，４からＹＵＶ形式やＲＧＢ形式の画像データを入力する。画像データ入力部１２，１３，１４は夫々必要に応じて入力画像データのフォーマット変換を行うフォーマット変換回路１２Ａ，１３Ａ，１４Ａを有する。フォーマット変換部１２Ａ，１３Ａ，１４Ａは入力画像データに対してＹＵＶからＲＧＢへのフォーマット変換（ＹＵＶ→ＲＧＢ）、ＲＧＢからＹＵＶへのフォーマット変換（ＲＧＢ→ＹＵＶ）のほかに、ＹＵＶデータをＹデータとＵＶデータに分離する分離回路としての機能を備える。画像データ入力部１２，１３，１４は、ビデオカメラ２，３，４から入力された画像データ、更にはその画像データに対して所要のフォーマット変換を行った画像データを、ＳＤＲＡＭ７に格納する（処理経路Ｐ１）。画像データ１２，１３，１，４は夫々に専用の画像データ入力端子４０，４１，４２を外部端子として持ち、異なる画像データを並列に入力して処理することも可能になっている。
【００６８】
歪補正回路１５は、処理経路Ｐ１にてＳＤＲＡＭ７に格納された画像データの幾何学的歪を補正する処理を行ない、その処理結果をＳＤＲＡＭ７に書き戻す（処理経路Ｐ２）。歪処理の詳細は後述する。
【００６９】
画像認識アクセラレータ１１は、処理Ｐ２でＳＤＲＡＭ７に格納されたＹデータの画像データ（グレースケール画像データ）に対して、例えば画像のエッジ部（端縁部）を識別可能にするためのフィルタリング処理等を行い、その処理結果をＳＤＲＡＭ７に格納する（処理経路Ｐ３）。ＳＤＲＡＭ７に格納されたフィルタリング処理結果などに対する画像認識はＣＰＵ２０が行い、その認識結果はＳＤＲＡＭ７に格納される（処理経路Ｐ４）。ＣＰＵ２０による画像認識の負担も軽減しようとする場合には画像認識に専用化したＣＰＵ機能を画像認識処理アクセラレータ１１が搭載すればよい。
【００７０】
表示コントローラ２４は専用の画像データ出力端子を外部端子４３，４４として持ち、外部に接続される液晶ディスプレイ等のディスプレイ５，６の表示タイミングに従ってＳＤＲＡＭ７，８へバスリクエストを発行し、ＳＤＲＡＭ７，８のフレームバッファに蓄えられた画像データやそこに描画されたグラフィックデータを入力する。入力したデータに対して必要なフォーマット変換を行い、フォーマット変換されたデータに従ってディスプレイ５，６に表示信号を出力する。表示コントローラ２４は前記フォーマット変換を行うために、ＹＵＶ形式の画像データをＲＧＢ形式に変換するフォーマット変換回路（ＦＣＯＮＶ）２４Ａ、Ｙデータによる画像データに色差信号であるＵＶデータを付加してＹＵＶ形式のカラー画像に変換するＵＶ付加回路（ＵＶＡＤＤ）２４Ｂを有する。特に制限されないが、表示コントローラ２４は複数のレイヤーを重ねて表示制御を行うマルチレイヤー表示制御を行うようになっており、レイヤー毎に別々の画像データやグラフィックデータを重ねる処理を行うことができる。即ち、レイヤー毎にフレームバッファを設け、マルチレイヤー表示を行うときは複数のフレームバッファのデータを重ねてディスプレイ５，６に出力する。
【００７１】
画像認識アクセラレータ１１、表示コントローラ２４、歪補正回路１５及び画像データ入力部１２〜１４等の動作の開始はＣＰＵ２０，２１によって指示される。動作の内容は例えばＣＰＵ２０，２１からのコマンド、或いはＳＤＲＡＭ７に予め格納されている命令列によって指定することができる。指示された動作の終了によって画像認識アクセラレータ１１等は割り込み要求信号を出力し、これを受ける割込みコントローラ３０がＣＰＵ２０に割り込みを要求することによってＣＰＵ２０は先に要求した処理の完了を認識する。
【００７２】
描画プロセッサ２２はＳＤＲＡＭ７，８のフレームバッファに地図描画を行う。描画プロセッサ２３は汎用的な描画機能を備える。例えば描画プロセッサ２３は、ＣＰＵ２０から何を認識したかの画像認識結果と認識物の座標データを受け取り、ＣＰＵ２０の設定に従い描画処理を行い、認識物を強調するためのマークや図柄などをＲＧＢ形式の画像データとしてフレームバッファに描画する。
【００７３】
ＣＰＵ２０，２１はマイクロコンピュータ1の全体的な制御を行う。ＣＰＵ２０、２１は命令の実行シーケンスを制御する命令制御部、命令制御部で生成される制御信号に従って命令を実行するための演算制御やバスアクセス動作を制御する実行部、命令及びデータのキャッシュメモリ、仮想アドレスと物理アドレスの変換に利用されるアドレス変換バッファ等を有する。ＣＰＵ２０，２１は夫々のＯＳ（オペレーティング・システム）の管理の元でアプリケーションプログラムを実行するマルチプロセッサシステム制御絵を行い、ＯＳやアプリケーションプログラムは、特に制限されないが、ＳＤＲＡＭ７，８のＣＰＵプログラム領域に格納されている。
【００７４】
前記第１バスＢＵＳ１及び第２バスＢＵＳ２は、例えばアドレス、データ及びコントロール信号の各信号線群から成るアドレス・データバス形式を採用するものであってもよいし、必要なデータやアドレス等の情報をパケットとして受け渡しするスプリット・トランザクションバス形態を採用するものであってもよい。
【００７５】
《歪補正》
図２及び図３に歪補正回路１５で行われる歪補正前後の画像が例示される。画像ＰＩＣ１は補正前、ＰＩＣ２は補正後を示す。各図においてＧＰＴＲＮａはカメラによって撮影された補正前画像の両機を仕切るための第１格子パターンを意味する。ＧＰＴＲＮｂは第１格子パターンに対応する歪補正後の第２格子パターンを意味する。図２において、第１格子パターンＧＰＴＲＮａはカメラによって撮影された補正前画像の幾何学的歪を表す樽型のパターンとされ、第２格子パターンは矩形の格子パターンにされている。図３において、第１格子パターンＧＰＴＲＮａは矩形の格子パターンとされ、第２の格子パターンは糸巻き型の格子パターンとされる。この場合の歪補正はカメラによって撮影された補正前画像から歪を除去することを企図するものになる。何れの場合も歪補正はカメラによって撮影された補正前画像から歪を除去することを企図するものである。特に図示はしないが、非矩形の格子パターンの形状を変更すれば、歪除去率を過剰又は過少とすることができ、元々歪んだ投影画面に表示するような場合には画面の歪を相殺する歪を画像データに与えるように歪補正を行えばよい。自動車のフロントガラス面に画像を投影表示するような場合が想定される。
【００７６】
図４には歪補正回路１５で行う歪補正の原理を示す。第１に、カメラによって撮影された画像の領域を仕切るための第１格子パターンＧＰＴＲＮａの格子点ＧＲＤａ１と前記第１格子パターンに対応する歪補正後の第２格子パターンＧＰＴＲＮｂの格子点ＧＲＤｂ１との差分を表す差分パラメータＤＩＦを用いる。一つの画素のソース側座標（Ｘ，Ｙ）とディスティネーション側座標（ｕ，ｖ）を表すのに夫々３２ビットが必要とされるとき、ソースの格子点ＧＲＤａ１に対応するディスティネーションの格子点ＧＲＤｂ１の座標を直接指定するには同じく３２ビットのデータが必要になるが、差分パラメータＤＩＦを用いれば（８ビット，８ビット）の合計１６ビットのデータで足りる。したがって、歪補正を行うのに、ソースの格子点ＧＲＤａ１の座標とディスティネーションの格子点ＧＲＤｂ１の座標の双方のデータを持つ場合に比べ、ディスティネーションの格子点ＧＲＤｂ１のデータ量を半減することができる。歪補正処理においては、カメラによって撮影された画像の領域を仕切るための第１格子パターン（ＧＰＴＲＮａ）の格子点（ＧＲＤａ１）と前記第１格子パターンに対応する歪補正後の第２格子パターン（ＧＰＴＲＮｂ）の格子点（ＧＲＤｂ１）との差分（ＤＩＦ）を表す差分パラメータをメモリから読込み、読込んだ差分パラメータと第２格子パターンの格子点の座標を用いて前記第１格子パターンの格子点の座標を演算し、演算された３個の座標で頂点が規定される三角形領域の輝度成分データを対応する第２格子パターン上の三角形領域に描画する処理を行なう。
【００７７】
第２に、全ての画素座標のデータに関するソースとディスティネーションの対応データを持たずに、複数画素幅の格子パターンの格子点に関する座標データと差分データに基づく三角形領域の描画処理にて歪補正を行う。即ち、第１格子パターン上の座標に対応する第２格子パターン上の座標を演算する処理は、読込んだ前記第１格子パターンの３個の格子点で頂点が規定される三角形領域の各格子点の差分パラメータとその格子点の座標とを用いて当該三角形領域の輝度成分データの座標に対応する第２格子パターン上の三角形領域の座標を演算することによって行い、演算された座標とその輝度成分データを基に第２格子パターンの前記三角形領域に輝度成分データを描画する。したがって、差分パラメータは三角形の格子点に関して持てばよく、全ての画素座標に対して持つことを要しない。例えば図５において、（ｘ１、ｙ１），（ｘ２、ｙ２），（ｘ３、ｙ３）で構成される三角形の領域に着目すると、当該三角形の画像をテクスチャとして、（ｕ１、ｖ１），（ｕ２、ｖ２），（ｕ３、ｖ３）で構成される三角形を描画することで歪みを補正する。ＧＲＤａ１（ｘ１、ｙ１）はＧＲＤｂ１（ｕ１、ｖ１）に対するＧＲＤａ１（ｘ１、ｙ１）の差分パラメータＤＩＦ１によって与えられ、ＧＲＤａ２（ｘ２、ｙ２）はＧＲＤｂ２（ｕ２１、ｖ２）に対するＧＲＤａ２（ｘ２、ｙ２）の差分パラメータＤＩＦ２によって与えられ、ＧＲＤａ３（ｘ３、ｙ３）はＧＲＤｂ３（ｕ３、ｖ３）に対するＧＲＤａ３（ｘ３、ｙ３）の差分パラメータＤＩＦ３によって与えられる。（ｕ１、ｖ１），（ｕ２、ｖ２），（ｕ３、ｖ３）で規定される三角形系領域内部のディスティネーション画素アドレスは、当該頂点座標で規定される三角形領域に入るアドレスを逐次探すればよい。ディスティネーション側の（ｕ１、ｖ１），（ｕ２、ｖ２），（ｕ３、ｖ３）で規定される三角形領域とソース側の（ｘ１、ｙ１），（ｘ２、ｙ２），（ｘ３、ｙ３）で規定される三角形領域との関係に従って、ディスティネーション画素アドレスに対応するソース画素アドレスを演算する。演算された第１格子パターンＧＰＴＲＮＮａ上のソース画素アドレスがその整数座標に載る場合には当該ソース画素アドレスのデータをディスティネーション画素アドレスに描画する。演算された第１格子パターンＧＰＴＲＮＮａ上のソース画素アドレスがその整数座標に載らない場合にはその周囲の複数画素のデータをバイリニアフィルタ演算による線形補間で得られた画像データをディスティネーション画素アドレスに描画する。バイリニアフィルタ演算による線形補間方法は図６Ａ及び図６Ｂに例示される。図６Ａは輝度成分データに対する手法を示し、図６Ｂは色差成分データに対する手法を示す。図においてＸが対象座標のデータ、ａ，ｂ，ｃ，ｄがその周囲のデータである。特に色差成分データの場合には、ディスティネーションに色差の水平方向の座標が偶数のデータ（Ｕ）を描画する場合はソースの近傍４つの偶数データを線形補間し、ディスティネーションに色差の水平方向の座標が奇数のデータ（Ｖ）を描画する場合はソースの近傍４つの奇数データを線形補間する。輝度成分データと色差成分データとの補間演算式の相違は、図７Ａ及び図７Ｂに例示されるＹＵＶデータの格納フォーマットの相違を考慮したものである。図７ＡはＹＵＶ４２２タイプを示し、図７ＢはＹＵＶ４２０タイプを示す。
【００７８】
このように、ディスティネーション側の第２格子パターンＧＰＴＲＮｂ上の３点の格子点座標で囲まれる三角形領域内の座標に対応したソース側の第１格子パターンＧＰＴＲＮａ上の座標は、第２格子パターン上の３点の格子点座標と前記第２格子パターン上の３点の格子点座標に対応する前記第１格子パターン上の３点の格子点座標を基に、線形補完で求められる。この点においても、差分パラメータは三角形の格子点に関して持てばよく、全ての画素座標に対して持つことを要しない。
【００７９】
第３に、矩形格子パターンの三角形領域の頂点座標を自動生成する。すなわち、歪補正回路が上記歪補正で用いる第１格子パターンＧＰＴＲＮａの各三角形の格子点座標と夫々の差分パラメータを頂点パラメータとしてＳＤＲＡＭ７に格納しておけばよい。このとき、図５の第２格子パターンＧＰＴＲＮｂのような矩形の格子パターンの格子点座標については始点の座標と格子点間インターバルとをパラメータとして与えることによって演算で取得することができる。例えば歪補正回路１５は始点の座標と、格子点間の横方向インターバル画素数(ｉｔｖｘ)、及び縦方向インターバル画素数(ｉｔｖｙ)を設定するコントロールレジスタと、カウンタ（計数値ｃ）と、コントロールレジスタの設定値とカウンタの計数値を用いて格子点のアドレス（ａｄｒｘ，ａｄｒｙ）を演算する演算器とを設け、これによって格子パターンの格子点座標（ａｄｒｘ＝ｕ１＋ｉｔｖｘ×ｃ，ａｄｒｙ＝ｖ１＋ｉｔｖｙ×ｃ）を順次取得する。図８の例では、ディスティネーションの第２格子パターンＧＰＴＲＮｂにおいて、開始座標を（ｕ１，ｖ１）、Ｘ方向の格子間幅を４、Ｙ方向の格子間幅を３としてレジスタに初期設定することで、歪補正回路１５内部のカウンタ及び演算器を用いて、上記三角形描画の順に従ってＧＲＤｂ２、ＧＲＤｂ３、ＧＲＤｂ４、ＧＲＤｂ５、ＧＲＤｂ６、ＧＲＤｂｍ、ＧＲＤｂｎ、ＧＲＤｂｐの座標を順次求めることができる。ディスティネーションの三角形領域の頂点がＧＲＤｂ１、ＧＲＤｂ２、ＧＲＤｂ３のとき、その座標（ｕ１，ｖ１）、（ｕ１，ｖ１＋３)，（ｕ１＋４，ｖ１）が自動生成されたとき、ソースの三角形領域の頂点ＧＲＤａ１，ＧＲＤａ２，ＧＲＤａ３の座標（ｘ１，ｙ１），（ｘ２，ｙ２），（ｘ３，ｙ３）は、各頂点に関する差分パラメータと自動生成されたディスティネーション座標（ｕ１，ｖ１）、(ｕ１，ｖ１＋３)，（ｕ１＋４，ｖ１）との和によって求めることができる。頂点座標を自動生成することにより、頂点パラメータには矩形領域の頂点座標を格納する領域が不要になり、頂点パラメータのデータ量を更に低減することができる。
【００８０】
図９Ａ乃至図９Ｃには三角形描画による歪補正処理に用いる歪補正回路１５のコマンドデータフォーマットが例示される。各図に例示されるフォーマットのコマンドデータはＣＰＵ２０によってＳＤＲＡＭ７に格納され、歪補正回路１５がリードして実行することにより、上記三角形描画処理を行う。図９Ａはソースの頂点座標とディスティネーションの頂点座標を各３２ビットで指定するフォーマットを示す。先頭ワードにオペレーションコード（ＯＰ  ＣＯＤＥ）と頂点座標数が指定され、その後に、（ｘ０，ｙ０），（ｕ０，ｖ０）〜（ｘ（Ｎ−１），ｙ（Ｎ−１）），（ｕ（Ｎ−１），ｖ（Ｎ−１））の順番でソース座標及びディスティネーション座標が３２ビット単位で配列される。これは差分パラメータも座標点の自動生成も適用しないときのフォーマットである。
【００８１】
図９Ｂはディスティネーション座標を自動生成し、ソース座標を直接指定するフォーマットを示す。フォーマットの先頭ワードにはオペレーションコード（ＯＰ  ＣＯＤＥ）と頂点座標数が指定され、その後に、（ｘ０，ｙ０）〜（ｘ（Ｎ−１），ｙ（Ｎ−１））の順番でソース座標が３２ビット単位で配列される。ディスティネーション座標を自動生成する分だけコマンドデータのデータ量が削減される。
【００８２】
図９Ｃはディスティネーション座標を自動生成し、差分パラメータを適用したフォーマットを示す。フォーマットの先頭ワードにはオペレーションコード（ＯＰ  ＣＯＤＥ）と頂点座標数が指定され、その後に、（Ｄｘ０，Ｄｙ０）〜（Ｄｘ（Ｎ−１），Ｄｙ（Ｎ−１））の順番で差分パラメータが１６ビット単位で配列される。３２ビット単位の座標データに代えて１６ビット単位の差分パラメータを用いる分だけコマンドデータのデータ量が更に削減される。
【００８３】
図１０には歪補正回路１５の具体例が示される。歪補正回路１５は、コマンドフェッチ部５０，アドレス演算部５１、ピクセル演算部５２、及びキャッシュ部５３から成る。例えばＣＰＵ２０がビデオカメラ２，３，４のキャリブレーションを行い、頂点パラメータとしての差分パラメータをＳＤＲＡＭ７格納する。例えば図９Ｃの(Ｄｘ０，Ｄｙ１)〜（Ｄｘ（Ｎ−１），Ｄｙ（Ｎ−１））を格納する。キャリブレーションはシステムを最初に起動するとき行って、その結果を不揮発性メモリに格納していけば、パワーオンリセット毎のように毎回行うことを要しない。更にＣＰＵ２０は差分パラメータの先頭に、前記テクスチャの三角描画のような処理を指示するコマンドとして命令コード（ＯＰ  ＣＯＤＥ）を付加する。ＣＰＵ２０は歪補正回路１５に対して、コマンドをフェッチするスタートアドレス及びアクセス幅、歪補正の結果を描画するディスティネーションのスタートアドレス及びアクセス幅などを図示を省略するレジスタに設定する。
【００８４】
ＣＰＵ２０が歪補正回路１５の起動レジスタにイネーブルビットをセットすることにより、歪補正回路１５はコントロールレジスタの設定に従った歪補正動作を開始する。コマンドフェッチ部５０はＳＤＲＡＭ７からコマンドデータをフェッチし差分パラメータをフェッチする。アドレス演算部５１はＣＰＵ２０の初期設定に従って例えばディスティネーションの格子座標を自動生成し、差分パラメータと自動生成された格子座標を元にソースアドレスやディスティネーションの描画アドレスを演算する。ピクセル演算部５２はアドレス演算部５１で演算されたソースアドレスを元に、キャッシュ部５３のテクスチャキャッシュに該当する座標のデータを要求する。要求されたデータが整数座標に載らない描画アドレスに対しては前記バイリニア法（又はニアレストレイバー法）で線形補間を行ってデータを得る。補完に使用する周辺画素データもキャッシュ部５３のテクスチャキャッシュにデータを要求して得ることができる。演算によって得られたデータはキャッシュ部５３のディスティネーションキャッシュに書き込まれる。キャッシュ部５３は、テクスチャキャッシュとディスティネーションキャッシュとバスインタフェースを有している。ピクセル演算部５２からのリクエストでテクスチャキャッシュ又はディスティネーションキャッシュがミスをした場合は、キャッシュ部５３より上流側はストールする。キャッシュ部５３がＳＤＲＡＭ７上の該当データをリードして来て、テクスチャキャッシュのミスを解除するとテクスチャキャッシュ依存のストールは解除される。ＳＤＲＡＭ７上に該当データを退避(ライト)して、ディスティネーションキャッシュのミスを解除すると、ディスティネーションキャッシュ依存のストールは解除される。最後の頂点座標の差分パラメータに関する画素データの演算を完了するごとに当該コマンド実行終了信号がコマンドフェッチ部５０からキャッシュ部５３に与えられることにより、キャッシュ部５０のディスティネーションキャッシュのデータがＳＤＲＡＭ７にライトバックされてフラッシュされる。具体的な歪補正の演算方法は前述の通りである。
【００８５】
ピクセル演算部５２には、輝度成分データか色差成分データを切り替える画像データ選択レジスタ５２Ｂと画像データをリードする座標を生成するリードアドレス生成部５２Ａが設けられている。たとえば、バイリニアフィルタ演算時に、画像データ選択レジスタ５２Ｂに輝度成分データの選択が指示されている場合には、リードアドレス生成部５２Ａは図６Ａのようにリードデータを読み出すようにキャッシュ部５３に対するアドレスを生成する。また、画像データ選択レジスタ５２Ｂに色差成分データの選択が指示されている場合には、リードアドレス生成部５２Ａは図６Ｂのようにリードデータを読み出すようにキャッシュ部に対するアドレスを生成する。リードアドレス生成部５２Ｂは該当データをキャッシュ部５３より読み出すアドレスを生成する機能を持つことになる。画像データ選択レジスタ５２Ａは輝度成分のみ画像データか色差成分のみ画像データのどちらを歪補正するかを切り替えるかがＣＰＵ２０によって指示される。
【００８６】
これにより、画像データ選択レジスタ５２Ｂに輝度成分データの選択が指示されている場合にはＳＤＲＡＭ７に上記コマンドデータに従った歪補正されたＹデータが揃う。画像データ選択レジスタ５２Ｂに色差成分データの選択が指示されている場合にはＳＤＲＡＭ７に上記コマンドデータに従った歪補正されたＵＶデータが揃う。歪補正回路１５は歪補正処理を終了したとき割込み要求によってこれをＣＰＵ２０に通知する。
【００８７】
《画像認識とＵＶデータの歪補正の並列化》
図１１にはカメラ入力から画像出力までのメイン処理のフローチャートが例示される。例えば画像データ入力部１２によりビデオカメラ２で撮影された画像のデータを取り込み（Ｓ１）、ＹＵＶデータであれば（Ｓ２）輝度成分データであるＹデータと色差成分データであるＵＶデータに分離してＳＤＲＡＭ７に格納する（Ｓ４）。ＲＧＢデータである場合には（Ｓ２）、画像データをＲＢＧ形式からＹＵＶ形式に変換して（Ｓ３）、ステップＳ４を実行する。次に、ＣＰＵ２０は歪補正回路１５等に初期設定を行って歪補正動作を起動し、前述の通り、ＳＤＲＡＭからＹデータとコマンデータを読込んで歪補正の処理を行なう（Ｓ５）。この後、ＣＰＵ２０は歪補正回路１５に対してＵＶデータに対する歪補正を実行させ（Ｓ６）、これに並行して、画像認識回路１５に歪補正後のＹデータを用いた画像認識の止めのフィルタ処理等を実行させると共にＣＰＵ２０自らその処理データを用いた画像認識を行う（Ｓ９）。ＣＰＵ２０による画像認識結果に対しては、認識された物の表示画面上の座標を求め、描画プロセッサ２３によって“止まれの交通標識”のような強調描画を行う(Ｓ１０)。ステップＳ７の後には、歪補正後のＹデータと歪補正後のＵＶデータを合成してＲＧＢデータに変換する(Ｓ７)。この合成と変換処理は例えば表示コントローラ２４内のフォーマット変換回路２４ＡとＵＶ付加回路２４Ｂによって行う。ステップＳ７でＲＧＢ変換されたデータとステップＳ１０で強調描画されたデータは表示コントローラ２４が合成してディスプレイ５に表示制御する。
【００８８】
このように、画像認識の前処理としての歪補正は輝度成分データに対してだけ行い、色差成分データに対する歪補正は、歪補正された輝度成分データを用いて画像認識処理と並列的に行う。これにより、歪補正されたカラー画像に画像認識結果である強調描画の内容を反映させるまでの時間を短縮することができる。
【００８９】
図１２Ａ、図１２Ｂ、図１２Ｃは図１１の処理を更に詳細に例示したタイミングチャートである。図１２Ａ乃至図１２Ｃは画像１乃至画像４を順次取り込んでパイプライン的に処理を連続的に行なう場合について示す。図においてＲＥＧＥＮＢはＣＰＵ２０による起動レジスタへのイネーブルビットのセットによって処理が起動されることを意味する。ＩＮＴＣＰＵは処理終了を割込み要求によってＣＰＵ２０に通知することを意味する。
【００９０】
ここでは画像１のＹデータに対する歪補正（Ｓ１１０）、画像２のＹデータに対する歪補正（Ｓ１１６）、画像３のＹデータに対する歪補正（Ｓ１１７）、画像４のＹデータに対する歪補正（Ｓ１１８）を連続して順次行い、処理が終ったものから、画像認識処理（Ｓ１１１、Ｓ１１２，Ｓ１１３，Ｓ１１４）を行う。図では歪補正処理（Ｓ１１６、Ｓ１１７、Ｓ１１８）に並行して画像認識処理（Ｓ１１１、Ｓ１１２）が行われている。画像認識回路（ＩＭＰ）１１とＣＰＵ２０による画像認識結果に対して強調描画が必要になったのは画図３に関してだけとされる場合をここでは一例とする。
【００９１】
図１３Ａ、図１３Ｂ、図１３Ｃ及び図１３Ｄは図１１の処理を更に詳細に例示した別のタイミングチャートである。図１３Ａ乃至図１３Ｄは画像１乃至画像４を順次取り込んでパイプライン的に処理を連続的に行なう場合について示す。ここでは歪補正回路（ＩＭＲ）１５はＹデータに関する歪補正とＵＶデータに対する歪補正を交互に行う点が図１２Ａ乃至図１２Ｃとい相違される。即ち、画像１のＹデータに対する歪補正（Ｓ２１０）とＵＶデータに対する歪補正（Ｓ２１１）を連続して行い、次に、画像２のＹデータに対する歪補正（Ｓ２１２）とＵＶデータに対する歪補正（Ｓ２１３）を連続して行い、次に、画像３のＹデータに対する歪補正（Ｓ２１４）とＵＶデータに対する歪補正（Ｓ２１３５）を連続して行い、次に、画像４のＹデータに対する歪補正（Ｓ２１６）とＵＶデータに対する歪補正（Ｓ２３０）を連続して行う。画像１の歪補正されたＹデータに対する画像認識処理（Ｓ２１７）はＵＶデータに対する歪補正（Ｓ２１１）に並行され、画像２の歪補正されたＹデータに対する画像認識処理（Ｓ２２０）はＵＶデータに対する歪補正（Ｓ２１３）に並行され、画像３の歪補正されたＹデータに対する画像認識処理（Ｓ２２３）はＵＶデータに対する歪補正（Ｓ２１５）に並行され、画像４の歪補正されたＹデータに対する画像認識処理（Ｓ２３１）はＵＶデータに対する歪補正（Ｓ２２３０）に並行される。
【００９２】
《画像認識結果を反映した表示例》
図１４には画像認識結果を反映した画像表示例が示される。図１５は図１４で表示される環境を例示する。ここでは図１５のように駐車場で自動車６０をバックで駐車しようとしたとき、止める場所に障害物、例えば自転車６１があった場合を想定する。自動車６０には前記ビデオカメラ２，３，４として４台のビデオカメラＶＣ１，ＶＣ２，ＶＣ３，ＶＣ４が前後左右に装着されているものとする。６２は白線、６３は車止めである。
【００９３】
ここで先ず画像認識処理について説明する。ビデオカメラからＹＵＶ形式の画像データが供給されると、画像データ入力部１２，１３，１４がその画像データをＹデータとＵＶデータに分離してＳＤＲＡＭ７の第１フレームバッファＦＢ１に書き込む。書き込まれたＹデータは歪補正回路１５で歪補正が行われて第２フレームバッファに書き込まれる。画像認識アクセラレータ１１は第２フレームバッファに書き込まれた歪補正済みのＹデータを読み込み、フィルタ処理、例えばメディアンフィルタ処理により画像のエッジをぼかさずにノイズを除去する処理を行ない、そのフィルタ処理の結果をＳＤＲＡＭ７の第３フレームバッファに書き込む。画像認識アクセラレータ１１は更に、第３フレームバッファに書き込んだ補正後のＹデータを読み込み、エッジ抽出処理を行なう。画像認識アクセラレータ１１は抽出したエッジのＹデータをＳＤＲＡＭ７の第４フレームバッファに書き込む。更に画像認識アクセラレータ１１は第４フレームバッファに書き込んだＹデータを読み込み、２値化処理を行ない、これによって得られた２値化画像データをＳＤＲＡＭ７の第５フレームバッファに格納する。画像認識アクセラレータ１１は上記画像処理の終了をＣＰＵ２０に通知する。これを受けたＣＰＵ２０は画像認識アプリケーションに規定された画像認識アルゴリズムに従って、第５フレームバッファの２値化画像データを読み込んで、車線と前方や後方の自動車及び自転車などを認識する。画像認識アルゴリズムは、例えば２値画像中の白色画素の幾つかの集合が、特定の方向に傾いている、また、形状の相関値が認識したい物体に近い、等の判断を規定したものである。これによってＣＰＵ２は何を認識したかを示す情報、認識物の座標を取得する。ＣＰＵ２はその情報を描画プロセッサ２３に渡し、認識物を強調させるためのＲＧＢ形式のグラフィックデータをＳＤＲＡＭ７の第６フレームバッファに描画させる。例えば描画されたグラフィックデータは後方の自転車を強調するための輪郭などとされている。
【００９４】
表示コントローラ２４は、表示タイミングに同期してＳＤＲＡＭ７の第２フレームバッファに格納されているＹデータと、第６フレームバッファに描画されたグラフィックデータを読み出す。表示コントローラ２４は、読み出したＹデータに対してＵＶ付加回路２４Ｂを用いてＵＶデータを付加し、ＹＵＶ形式の画像データを生成し、このＹＵＶ形式の画像データを更にフォーマット変換回路２４ＡでＲＧＢ形式の画像データに変換する。表示コントローラ２４は、変換したＲＧＢ画像データと、第６フレームバッファからのＲＧＢ形式のグラフィックデータをレイヤー合成してディスプレイ５に表示する。
【００９５】
図１５の表示例では、表示領域７１はカメラＶＣ１で撮影された画像の表示領域、表示領域７２はカメラＶＣ２で撮影された画像の表示領域、表示領域７３はカメラＶＣ３で撮影された画像の表示領域、表示領域７４はカメラＶＣ４で撮影された画像の表示領域とされる。自動車の画像７５は撮影画像ではなくグラフィック画像である。自転車の表示７６は強調され、強調表示を行うときには警告音も一緒に発声させてドライバの注意を喚起する。
【００９６】
《システム動作》
カーナビゲーションシステムへ適用した図１のデータ処理システムの全体的な動作を説明する。画像認識を行っている間、認識精度を向上するため、常に歪補正が行われる。画像認識自体は、車がエンジン起動されている間、即ち、カーナビゲーションに電源が供給されている状態、要するに、自動車のキーがアクセサリーの位置以降にある状態において、常に動作状態である。ディスプレイに画像が表示されていない間も認識動作を行っている。
【００９７】
画像認識処理の起動要因は以下の複数通りある。１．リセット後の初期化ルーチンでＣＰＵが画像認識等の起動設定を行う場合、２．割込みコントローラ３０へ、割り込み端子８０を介して外部から割り込み要求を入力し、割り込みルーチンで起動設定摺る場合、３．ＧＰＩＯ３２を介して入力された信号によって発生する割り込みによる割り込みルーチンで起動設定する場合である。ＧＰＩＯ３２を介して入力された信号は、例えば自動車のギアが前進からバックに変更されたときの信号、ユーザがアラウンドビューモニタのボタンを押したときの信号等である。
【００９８】
画像認識処理の停止要因は以下の複数通りある。１．ＳＣＩＦ３１を介して外部から信号を入力した場合、２．割込みコントローラへ端子８０から外部割り込み信号が入力された場合である。入力される信号は、ギアチェンジがバックから前進に変更されたときの信号、バックからパーキングに変更されたときに信号、エンジンがオフにされたときの信号等である。
【００９９】
画像認識に関しては、ディスプレイにテレビを表示している間も、ＣＰＵ２０とＩＭＰ１１が共同で画像認識を行い、ＩＭＲ１５が歪補正を実行する。画像認識によって危険状態、例えば白線を越えた、人が走行車線にいる等を認識したとき、ＣＰＵ２０はディスプレイ５での表示を地図表示からカメラデータの表示に切換え、地図データ上に警告メッセージを表示し、警告を音声通知する等の制御を行う。表示用のデータはＧＲＰ１，ＧＲＰ２が生成する。
【０１００】
精度の良い画像認識、つまり歪補正のされた画像を利用して画像認識を行うことより、ユーザは危険状態をいち早く検知し、危険（事故）を回避する動作（例えば、減速、停止、走行車線の変更等）を行うことが可能となる
テレビ表示に関してはＳＴＲＭＩＦ３３からテレビ画像データ(ワンセグデータ)を入力し、ＳＤＲＡＭ７，８へ書込み、その後表示コントローラ２４が読み出してディスプレイに出力して表示する。
【０１０１】
地デジに関しては、地デジ表示を行う場合は、ＭＰＥＧ２データをデコードするのは処理が重いため、外部でデータをデコードしてＶＩＮ１２から入力必要がある。
【０１０２】
ＳＣＩＦ３１が外付けグラフィックプロセッサからの画像情報を入力し、ＳＤＲＡＭ７へ書込み、その後表示コントローラ２４が読み出してディスプレイ５に出力して表示する。地図描画はＧＲＰ１が行い、ＳＤＲＡＭ８に格納し、表示コントローラ２４が読み出してディスプレイ５に出力して表示する。
【０１０３】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【０１０４】
図に基づいて説明した実施の形態は図９Ｃのコマンドデータを用いる場合を中心に説明した。即ち、ディスティネーション側第２格子パターンの格子点を基準に三角領域を規定し、ソース側第１格子パターン上の三角形領域の特定には差分パラメータ利用し、第２格子パターンの格子点を自動生成して三角描画による歪補正を行う場合について説明した。本発明はこれに限定されない。例えば、（１）ソース側第１格子パターンの格子点を基準に三角領域を規定し、ディスティネーション側第２格子パターン上の三角形領域の特定には差分パラメータ利用し、第１格子パターンの格子点を自動生成して三角描画による歪補正を行う、（２）図９Ｂのコマンドデータを用いる場合に対応し、ディスティネーション側第２格子パターンの格子点を基準に三角領域を規定し、ソース側第１格子パターン上の三角形領域の特定にはソース側の格子パターンの格子座標データを直接利用し、第２格子パターンの格子点を自動生成して三角描画による歪補正を行う、又は、（３）ソース側第１格子パターンの格子点を基準に三角領域を規定し、ディスティネーション側第２格子パターン上の三角形領域の特定にはディスティネーション側の格子パターンの格子座標データを直接利用し、第１格子パターンの格子点を自動生成して三角描画による歪補正を行う、という手段を採用することも可能である。
【０１０５】
また、画像認識する対象は、主に車線（白線検知）、前方車、後方車、横断歩道、道路上に書かれたマーク(矢印や制限速度など)に限定されない。画像認識アクセラレータは、メディアンフィルタ処理、エッジ検出処理、２値化処理をさせているが、γ補正、ランクフィルタ処理などの各種フィルタ処理、ヒストグラム処理、ラベリング処理など画像認識処理に必要なその他の処理を高速に行なってもよい。また、歪補正された画像データを用いて描画プロセッサが鳥瞰図加工処理を行っても良い。上記では画像認識アクセラレータのみで画像認識処理を行うことはできず、ＣＰＵが必要である。この点に関し、ＣＰＵ７とは別に画像認識処理アクセラレータ内に専用のＣＰＵを設ける、又はＣＰＵに画像認識処理アクセラレータを搭載することで画像認識を単独で行うことも可能である。
【０１０６】
また、マイクロコンピュータを一例として説明した半導体データ処理装置やデータ処理システムは画像認識アクセラレータに代表されるような画像認識のための回路モジュールを備えているものとして説明したが、本発明の歪補正に係る発明は画像認識を備えた半導体データ処理装置やデータ処理システムだけに適用可能とうい訳ではない。画像認識が無くても、本発明に係る歪み補正を採用すれば処理に必要なメモリリソースを少なくすること等が可能になる。したがって、本発明に係る歪補正の技術は、画像認識機能を備えていない画像処理装置、半導体データ処理装置、及びデータ処理システムに適用可能であることは言うまでもない。
【符号の説明】
【０１０７】
１  マイクロコンピュータ（ＭＣＵ）
２〜４  ビデオカメラ
５，６  ディスプレイ
７，８  ＳＤＲＡＭ
１１  画像認識アクセラレータ（ＩＭＰ）
１２〜１４  画像データ入力部（ＶＩＮ）
１５  歪補正回路（ＩＭＲ）
２０，２１  プロセッサコアとしての中央処理装置（ＣＰＵ）
２２，２３  描画プロセッサ（ＧＲＦ１、ＧＲＦ２）
２４  表示コントローラ（ＤＵ）
２４Ａ  フォーマット変換回路（ＦＣＯＮＶ）
２４Ｂ  ＵＶ付加回路（ＵＶＡＤＤ）
３０  割込みコントローラ（ＩＮＴＣ）
３１  シリアルインタフェース（ＳＣＩＦ）
３２  入出力ポート（ＧＰＩＯ）
３３  ストリームインタフェース（ＳＴＲＭＩＦ）
３４，３５  メモリコントローラ（ＭＣＮＴ）
ＧＰＴＲＮａ  第１格子パターン
ＧＰＴＲＮｂ  第２格子パターン
ＧＲＤａ１  第１格子パターンの格子点
ＧＲＤｂ１  第２格子パターンの格子点
ＤＩＦ  差分パラメータ
５０  コマンドフェッチ部
５１  アドレス演算部
５２  ピクセル演算部
５２Ａ  リードアドレス生成部
５２Ｂ  画像データ選択レジスタ
５３  キャッシュ部
【図１】
2010257357.tif 000003
【図２】
2010257357.tif 000004
【図３】
2010257357.tif 000005
【図４】
2010257357.tif 000006
【図５】
2010257357.tif 000007
【図６Ａ】
2010257357.tif 000008
【図６Ｂ】
2010257357.tif 000009
【図７Ａ】
2010257357.tif 000010
【図７Ｂ】
2010257357.tif 000011
【図８】
2010257357.tif 000012
【図９Ａ】
2010257357.tif 000013
【図９Ｂ】
2010257357.tif 000014
【図９Ｃ】
2010257357.tif 000015
【図１０】
2010257357.tif 000016
【図１１】
2010257357.tif 000017
【図１２Ａ】
2010257357.tif 000018
【図１２Ｂ】
2010257357.tif 000019
【図１２Ｃ】
2010257357.tif 000020
【図１３Ａ】
2010257357.tif 000021
【図１３Ｂ】
2010257357.tif 000022
【図１３Ｃ】
2010257357.tif 000023
【図１３Ｄ】
2010257357.tif 000024
【図１４】
2010257357.tif 000025
【図１５】
2010257357.tif 000026