(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-27
(45)【発行日】2023-02-06
(54)【発明の名称】画像処理装置
(51)【国際特許分類】
H04N 23/60 20230101AFI20230130BHJP
【FI】
H04N5/232
H04N5/232 290
(21)【出願番号】P 2019156589
(22)【出願日】2019-08-29
【審査請求日】2021-09-16
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(73)【特許権者】
【識別番号】317011920
【氏名又は名称】東芝デバイス&ストレージ株式会社
(74)【代理人】
【識別番号】110002907
【氏名又は名称】弁理士法人イトーシン国際特許事務所
(72)【発明者】
【氏名】羽田 隆二
【審査官】高野 美帆子
(56)【参考文献】
【文献】特開2013-214952(JP,A)
【文献】特開2004-023397(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/232
(57)【特許請求の範囲】
【請求項1】
n(n≧2)個のカメラ各々から得られた画素データを用い、前記n個のカメラ各々に対応するフレーム画像データを生成するように構成された画像処理装置であって、
前記n個のカメラ各々に対応するn個のバッファ回路を備え、前記n個のカメラ各々から順次出力される画素データを蓄積するバッファ部と、
前記バッファ部に含まれる一のバッファ回路に蓄積された一のラインの画素データ群をライン画像データとして読み込むとともに、当該読み込んだライン画像データに対して画像処理を施して得られたデータを用いて前記n個のカメラのうちの一のカメラに対応する前記フレーム画像データを生成する演算部と、
前記n個のカメラのうちの所定のカメラから出力される画素データを前記n個のバッファ回路のうちの所定のバッファ回路に蓄積させるための制御を行うとともに、
前記演算部が読み込む前記ライン画像データの基となる画素データの読み込み先を、前記画像処理が施されていない画素データが蓄積されている各バッファ回路のうちのいずれかに選択的に設定するための制御を行う制御部と、
を有
し、
前記制御部は、前記n個のカメラ各々に設けられたイメージセンサにおける水平方向の1ライン分の画素群から画素データを得るために要する時間をデータ取得期間とした場合に、前記n個のカメラの中で最も長いデータ取得期間内において、前記ライン画像データの基となる画素データの読み込み先を、前記バッファ部に含まれるとともに前記一のバッファ回路とは異なる他のバッファ回路へ切り替えるための制御を行う
ことを特徴とする画像処理装置。
【請求項2】
前記制御部は、前記n個のカメラ各々に対応する前記フレーム画像データの画像サイズに基づき、前記n個のカメラ各々における前記データ取得期間の長さを推定する
ことを特徴とする請求項
1に記載の画像処理装置。
【請求項3】
前記制御部は、前記データ取得期間の長さを一定の長さに揃えるための同期信号を生成して前記n個のカメラ各々へ出力する
ことを特徴とする請求項
1に記載の画像処理装置。
【請求項4】
前記演算部は、前記画像処理として歪補正処理を行う
ことを特徴とする請求項1に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、画像処理装置に関する。
【背景技術】
【0002】
運転支援システム及び監視カメラシステム等のような、多数のカメラを用いて構成されたシステムが従来知られている。
【0003】
前述の多数のカメラを用いて構成されたシステムにおいては、当該多数のカメラ各々から出力されるデータに対して現像処理等の画像処理を施すために用いられる回路の規模がカメラの総数に応じて増大してしまう、という問題点が生じている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
実施形態は、多数のカメラ各々から出力されるデータに対して画像処理を施すために用いられる回路の規模の増大を抑制することが可能な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
実施形態の画像処理装置は、n(n≧2)個のカメラ各々から得られた画素データを用い、前記n個のカメラ各々に対応するフレーム画像データを生成するように構成されている。前記画像処理装置は、バッファ部と、演算部と、制御部と、を有する。前記バッファ部は、前記n個のカメラ各々に対応するn個のバッファ回路を備え、前記n個のカメラ各々から順次出力される画素データを蓄積する。前記演算部は、前記バッファ部に含まれる一のバッファ回路に蓄積された一のラインの画素データ群をライン画像データとして読み込むとともに、当該読み込んだライン画像データに対して画像処理を施して得られたデータを用いて前記n個のカメラのうちの一のカメラに対応する前記フレーム画像データを生成する。前記制御部は、前記n個のカメラのうちの所定のカメラから出力される画素データを前記n個のバッファ回路のうちの所定のバッファ回路に蓄積させるための制御を行うとともに、前記演算部が読み込む前記ライン画像データの基となる画素データの読み込み先を、前記画像処理が施されていない画素データが蓄積されている各バッファ回路のうちのいずれかに選択的に設定するための制御を行う。更に、前記制御部は、前記n個のカメラ各々に設けられたイメージセンサにおける水平方向の1ライン分の画素群から画素データを得るために要する時間をデータ取得期間とした場合に、前記n個のカメラの中で最も長いデータ取得期間内において、前記ライン画像データの基となる画素データの読み込み先を、前記バッファ部に含まれるとともに前記一のバッファ回路とは異なる他のバッファ回路へ切り替えるための制御を行う。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係る画像処理装置を含む画像処理システムの構成の一例を示す図。
【
図2】複数のカメラを乗用車に設けた場合の例を説明するための図。
【
図3】カメラに設けられたイメージセンサの構成の一例を説明するための図。
【
図4】第1の実施形態に係る画像処理装置の具体的な動作の一例を説明するための図。
【
図5】第2の実施形態に係る画像処理装置を含む画像処理システムの構成の一例を示す図。
【
図6】第2の実施形態に係る画像処理装置の具体的な動作の一例を説明するための図。
【発明を実施するための形態】
【0008】
以下、実施形態について、図面を参照しつつ説明を行う。
【0009】
(第1の実施形態)
図1から
図4は、第1の実施形態に係るものである。
【0010】
画像処理システム101は、例えば、
図1に示すように、撮像部1と、画像処理装置2と、記憶部3と、を有して構成されている。
図1は、第1の実施形態に係る画像処理装置を含む画像処理システムの構成の一例を示す図である。
【0011】
撮像部1は、例えば、互いに異なる画角及び/または有効画素数を有するn(n≧2)個のカメラCM1、CM2、…、CMnを備えて構成されている。
【0012】
具体的には、例えば、
図2に示すような乗用車CJの運転を支援するために画像処理システム101が用いられる場合には、撮像部1を構成するカメラとして、当該乗用車CJの前方を撮像するための画角FVを有するフロントカメラと、当該乗用車CJの後方を撮像するための画角BVを有するバックカメラと、当該乗用車CJの左側方を撮像するための画角LVを有する左サイドカメラと、当該乗用車CJの右側方を撮像するための画角RVを有する右サイドカメラと、を含む少なくとも4つのカメラが設けられていればよい。
図2は、複数のカメラを乗用車に設けた場合の例を説明するための図である。
【0013】
撮像部1の各カメラは、CMOSセンサ等のイメージセンサを有して構成されている。また、撮像部1の各カメラは、イメージセンサの撮像面上に格子状に配置された各画素からラスタスキャン順に得られた画素データを画像処理装置2へ順次出力するように構成されている。また、撮像部1の各カメラは、イメージセンサにおける一のラインに属する画素群(水平方向の1ライン分の画素群)からの画素データの取得を開始するタイミングを示す水平同期信号を画像処理装置2へ出力するように構成されている。
【0014】
ここで、撮像部1に含まれるn個のカメラのうちの1つをカメラCMi(i=1、2、…、n)とした場合、当該カメラCMiに設けられたイメージセンサIMiの撮像面上には、例えば、
図3に示すように、画素データの取得対象となる画素群を有する有効画素領域VPAと、当該有効画素領域VPAに隣接する位置に配置されているとともに当該画素データの読み出し等を行うための回路を有する回路領域CPAと、が設けられている。
図3は、カメラに設けられたイメージセンサの構成の一例を説明するための図である。
【0015】
有効画素領域VPAには、水平方向の有効画素数HSIZEiと、垂直方向の有効画素数VSIZEiと、を乗じた個数の画素を有する有効画素群が設けられている。また、有効画素領域VPAに設けられた水平方向の1ライン分の有効画素群VPLを1画素ずつスキャンすることにより、後述のライン画像データの基となる画素データ群を得ることができる。
【0016】
画像処理装置2は、例えば、1つ以上のプロセッサと、記憶回路と、を有する集積回路として構成されている。また、画像処理装置2は、撮像部1からラスタスキャン順に出力される画素データを蓄積し、当該蓄積した画素データに対して画像処理を施すことによりフレーム画像データ(後述)を生成し、当該生成したフレーム画像データを記憶部3へ出力するように構成されている。換言すると、画像処理装置2は、撮像部1に含まれるn個のカメラ各々に設けられたイメージセンサに含まれる各画素からラスタスキャン順に得られた画素データを用い、当該n個のカメラ各々に対応するフレーム画像データを生成するように構成されている。また、画像処理装置2は、例えば、
図1に示すように、セレクタ21と、撮像部1に含まれるn個のカメラ各々に対応するn個のバッファ回路BF1、BF2、…、BFnを備えたバッファ部22と、演算部23と、パラメータ格納部24と、制御部25と、を有して構成されている。
【0017】
セレクタ21は、制御部25から出力される制御信号に応じ、カメラCMiからラスタスキャン順に出力される画素データを、バッファ部22に含まれるn個のバッファ回路のうちの1つに相当するバッファ回路BFiに書き込むための動作を行うように構成されている。また、セレクタ21は、撮像部1の各カメラから出力される水平同期信号を制御部25へ転送するように構成されている。
【0018】
バッファ部22は、撮像部1に含まれるn個のカメラ各々から順次出力される画素データを蓄積するように構成されている。
【0019】
バッファ部22の各バッファ回路は、例えば、SRAMを有して構成されている。また、バッファ部22の各バッファ回路は、入力ラインバッファ及び中間バッファを含む回路として構成されている。
【0020】
バッファ部22のバッファ回路BFiは、カメラCMiにより得られた画素データを時系列に蓄積することができるように構成されている。また、バッファ部22のバッファ回路BFiは、カメラCMiの有効画素数、及び、カメラCMiにより得られた画素データに対して施される画像処理の処理内容等に応じて予め設定されたバッファサイズBUF_REQiを有して構成されている。
【0021】
バッファ部22は、n個のバッファ回路によるバッファサイズの総和が下記数式(1)を用いて算出されるバッファサイズBUF_SUMになるように構成されている。
【0022】
上記数式(1)のMAX_HSIZEは、撮像部1に含まれるn個のカメラ各々における水平方向の有効画素数のうちの最大の画素数を表している。また、上記数式(1)のHSIZEiは、カメラCMiにおける水平方向の有効画素数を表している。
【0023】
そのため、例えば、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、が撮像部1に含まれている場合には、バッファ部22のバッファサイズを下記数式(2)により算出されるサイズに設定すればよい。
【0024】
演算部23は、例えば、演算回路を有して構成されている。また、演算部23は、制御部25から出力される制御信号に応じ、バッファ部22に含まれるバッファ回路BFiに蓄積された一のラインの画素データ群をライン画像データとして読み込み、当該読み込んだライン画像データに対して画像処理を施すように構成されている。そして、演算部23は、前述の画像処理によって得られたデータを用いてカメラCMiに対応するフレーム画像データを生成し、当該生成したフレーム画像データを記憶部3へ出力するように構成されている。前述のフレーム画像データは、カメラCMiに設けられたイメージセンサの有効画素数と同数の画素を含む1つの画像(1フレーム分の画像)として生成される。
【0025】
なお、本実施形態の演算部23は、現像処理及び歪補正処理を含む少なくとも2つの処理を画像処理として行うように構成されているものとする。また、本実施形態の演算部23は、前述の2つの処理に加え、例えば、色補正処理及びガンマ補正処理のうちの少なくとも1つの処理を画像処理としてさらに行うように構成されていてもよい。
【0026】
演算部23は、フレーム画像データの画像サイズ等に応じて予め設定された動作周波数で動作するように構成されている。具体的には、演算部23は、下記数式(3)を用いて算出される周波数ISP_FREQ以上の動作周波数で動作するように構成されている。
【0027】
上記数式(3)のMAX_VSIZEは、撮像部1に含まれるn個のカメラ各々における垂直方向の有効画素数のうちの最大の画素数を表している。また、上記数式(3)のFPSは、演算部23から記憶部3へのフレーム画像データの出力に係るフレームレートを表している。
【0028】
そのため、上記数式(3)によれば、例えば、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、が撮像部1に含まれている場合には、演算部23の動作周波数を640MHz以上の周波数に設定すればよい。
【0029】
また、上記数式(3)によれば、例えば、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、水平方向の有効画素数が1000画素であるとともに垂直方向の有効画素数が700画素であるカメラCM3と、が撮像部1に含まれている場合には、演算部23の動作周波数を720MHz以上に設定すればよい。
【0030】
パラメータ格納部24は、例えば、レジスタ回路を有して構成されている。また、パラメータ格納部24には、演算部23及び制御部25の動作に用いられるパラメータが格納されている。具体的には、パラメータ格納部24には、例えば、撮像部1に含まれるn個のカメラ各々に対応するフレーム画像データの画像サイズ、及び、当該n個のカメラ各々に対応する歪補正の補正量等のパラメータが格納されている。
【0031】
制御部25は、例えば、制御回路を有して構成されている。また、制御部25は、セレクタ21を経て出力される水平同期信号に基づき、カメラCMiから出力される画素データをバッファ回路BFiに蓄積させるための制御信号を生成し、当該生成した制御信号をセレクタ21へ出力するように構成されている。また、制御部25は、セレクタ21を経て出力される水平同期信号と、パラメータ格納部24から読み込んだパラメータと、に基づき、画像処理の開始タイミング及び処理内容等を制御するための制御信号を生成し、当該生成した制御信号を演算部23へ出力するように構成されている。また、制御部25は、イメージセンサにおける1番目のラインの画素群のスキャンを開始するタイミングを揃えるためのフレーム同期信号を生成し、当該生成したフレーム同期信号を撮像部1の各カメラへ出力するように構成されている。
【0032】
記憶部3は、例えば、DRAMを有して構成されている。また、記憶部3は、画像処理装置2(演算部23)から出力されるフレーム画像データを順次格納するように構成されている。
【0033】
続いて、本実施形態の作用について説明する。なお、以降においては、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、の2つのカメラが撮像部1に含まれている場合を例に挙げて説明する。また、以降においては、バッファサイズがBUF_REQ1に設定されたバッファ回路BF1と、バッファサイズが2×BUF_REQ2に設定されたバッファ回路BF2と、の2つのバッファ回路がバッファ部22に含まれているとともに、演算部23の動作周波数が640MHzに設定されているものとして説明を行う。
【0034】
制御部25は、カメラCM1からセレクタ21を経て出力される水平同期信号に基づき、当該カメラCM1から順次出力される画素データをバッファ回路BF1へ書き込ませるための制御信号を生成してセレクタ21へ出力する。また、制御部25は、カメラCM2からセレクタ21を経て出力される水平同期信号に基づき、当該カメラCM2から順次出力される画素データをバッファ回路BF2へ書き込ませるための制御信号を生成してセレクタ21へ出力する。
【0035】
制御部25は、パラメータ格納部24から読み込んだパラメータに含まれる画像サイズに基づき、撮像部1に含まれるn個のカメラ各々におけるデータ取得期間の長さを推定する。
【0036】
具体的には、制御部25は、パラメータ格納部24から読み込んだパラメータに含まれる画像サイズに基づき、カメラCM1のデータ取得期間LP1と、カメラCM2のデータ取得期間LP2と、をそれぞれ推定する。
【0037】
なお、本実施形態におけるデータ取得期間は、例えば、イメージセンサにおける水平方向の1ライン分の画素群(一のラインに属する画素群)から画素データを得るために要する時間として規定される。また、以降においては、簡単のため、データ取得期間LP1がデータ取得期間LP2の2倍の長さを有すると推定されたものとして説明を行う。
【0038】
制御部25は、撮像部1に含まれる各カメラの中で最も長いデータ取得期間を特定するとともに、当該特定したデータ取得期間と、セレクタ21を経て出力される水平同期信号と、に基づき、画像処理の開始タイミング及び処理内容等を制御するための制御信号を生成し、当該生成した制御信号を演算部23へ出力する。
【0039】
ここで、本実施形態の演算部23及び制御部25において行われる具体的な動作の一例について、
図4を参照しつつ説明する。なお、以降においては、カメラCM1から出力された画素データに対応するライン画像データの生成に必要な画素データ群がバッファ回路BF1に予め蓄積されているものとして説明を行う。また同様に、以降においては、カメラCM2から出力された画素データに対応するライン画像データの生成に必要な画素データ群がバッファ回路BF2に予め蓄積されているものとして説明を行う。また、以降においては、撮像部1に含まれる各カメラ(CM1及びCM2)の中で最も長いデータ取得期間がLP1であることが特定されたものとして説明を行う。
図4は、第1の実施形態に係る画像処理装置の具体的な動作の一例を説明するための図である。
【0040】
制御部25は、カメラCM1からセレクタ21を経て出力される水平同期信号に基づき、当該カメラCM1のデータ取得期間LP1の開始タイミングに相当する時刻Ta(
図4参照)において、バッファ回路BF1に格納された画素データ群に対する画像処理を開始させるための制御信号を生成して演算部23へ出力する。また、制御部25は、時刻Taにおいて、バッファ回路BF1に格納された画素データ群に対し、パラメータ格納部24から読み込んだパラメータに含まれる補正量CA1を用いて歪補正処理を行わせるための制御信号を生成して演算部23へ出力する。
【0041】
演算部23は、制御部25から出力される制御信号に応じ、時刻Taにおいて、バッファ部22のバッファ回路BF1に予め蓄積された4000個分の画素データにより構成される一のラインの画素データ群をライン画像データLG11として読み込むとともに、当該読み込んだライン画像データLG11に対する画像処理を開始する。また、演算部23は、時刻Taから時刻Tbまでの期間に相当する処理期間SP11(
図4参照)において、バッファ回路BF1から読み込んだライン画像データLG11に対し、現像処理と、補正量CA1を用いた歪補正処理と、を含む画像処理を施す。
【0042】
制御部25は、カメラCM2からセレクタ21を経て出力される水平同期信号に基づき、 時刻Taから時刻Tbまでの期間に相当するとともに処理期間SP11と重複するデータ取得期間LP2(
図4参照)において、当該カメラCM2から順次出力される画素データをバッファ回路BF2へ書き込ませるための制御信号を生成してセレクタ21へ出力する。
【0043】
すなわち、以上に述べた動作によれば、処理期間SP11において、バッファ回路BF1から読み込まれた1ライン分のライン画像データLG11に対して画像処理が施される一方で、バッファ回路BF2に蓄積された画素データ群に対しては画像処理が施されない。そのため、本実施形態においては、バッファ回路BF2のバッファサイズを2×BUF_REQ2に設定することにより、処理期間SP11の期間内にカメラCM2から順次出力される全ての画素データが当該バッファ回路BF2に書き込まれるようにしている。
【0044】
制御部25は、演算部23の動作状態を監視することにより、ライン画像データLG11に対する画像処理の進捗状況を取得する。そして、制御部25は、当該カメラCM2のデータ取得期間LP2の開始タイミングに相当するとともに処理期間SP11の終了タイミングに相当する時刻Tb(
図4参照)において、バッファ回路BF2に格納された画素データ群に対する1回目の画像処理を開始させるための制御信号を生成して演算部23へ出力する。また、制御部25は、時刻Tbにおいて、バッファ回路BF2に格納された画素データ群に対し、パラメータ格納部24から読み込んだパラメータに含まれる補正量CA2(<CA1)を用いて歪補正処理を行わせるための制御信号を生成して演算部23へ出力する。
【0045】
演算部23は、制御部25から出力される制御信号に応じ、時刻Tbにおいて、バッファ部22のバッファ回路BF2に予め蓄積された2000個分の画素データにより構成される一のラインの画素データ群をライン画像データLG21として読み込むとともに、当該読み込んだライン画像データLG21に対する画像処理を開始する。また、演算部23は、時刻Tbから時刻Tcまでの期間に相当する処理期間SP21(
図4参照)において、バッファ回路BF2から読み込んだライン画像データLG21に対し、現像処理と、補正量CA2を用いた歪補正処理と、を含む画像処理を施す。
【0046】
すなわち、以上に述べた動作によれば、処理期間SP21において、バッファ回路BF2から読み込まれた1ライン分のライン画像データLG21に対して画像処理が施される一方で、バッファ回路BF1に蓄積された画素データ群に対しては画像処理が施されない。
【0047】
制御部25は、演算部23の動作状態を監視することにより、ライン画像データLG21に対する画像処理の進捗状況を取得する。そして、制御部25は、処理期間SP21の終了タイミングに相当する時刻Tc(
図4参照)において、バッファ回路BF2に格納された画素データ群に対する2回目の画像処理を開始させるための制御信号を生成して演算部23へ出力する。また、制御部25は、時刻Tcにおいて、バッファ回路BF2に格納された画素データ群に対し、パラメータ格納部24から読み込んだパラメータに含まれる補正量CA2を用いて歪補正処理を行わせるための制御信号を生成して演算部23へ出力する。
【0048】
演算部23は、制御部25から出力される制御信号に応じ、時刻Tcにおいて、バッファ部22のバッファ回路BF2に蓄積された2000個分の画素データにより構成されるとともにライン画像データLG21に隣接する一のラインの画素データ群をライン画像データLG22として読み込むとともに、当該読み込んだライン画像データLG22に対する画像処理を開始する。また、演算部23は、時刻Tcから時刻Tdまでの期間に相当する処理期間SP22(
図4参照)において、バッファ回路BF2から読み込んだライン画像データLG22に対し、現像処理と、補正量CA2を用いた歪補正処理と、を含む画像処理を施す。
【0049】
すなわち、以上に述べた動作によれば、処理期間SP22において、バッファ回路BF2から読み込まれた1ライン分のライン画像データLG22に対して画像処理が施される一方で、バッファ回路BF1に蓄積された画素データ群に対しては画像処理が施されない。また、以上に述べた動作によれば、時刻Taから時刻Tdまでの期間に相当するデータ取得期間LP1(
図4参照)において、バッファ回路BF1から読み込まれた1ライン分のライン画像データLG11と、バッファ回路BF2から読み込まれた2ライン分のライン画像データLG21及びLG22と、のそれぞれに対して画像処理が施される。また、以上に述べた動作によれば、制御部25は、ライン画像データの基となる画素データの読み込み先を、バッファ部22に含まれるとともに画像処理が施されていない画素データが蓄積されている各バッファ回路のうちのいずれかに選択的に設定するための制御を行う。また、以上に述べた動作によれば、制御部25は、撮像部1に含まれるn個のカメラの中で最も長いデータ取得期間LP1内において、ライン画像データの基となる画素データの読み込み先を、バッファ回路BF1からバッファ回路BF2へ切り替えるための制御を行う。
【0050】
なお、本実施形態は、以上に述べた各部の構成及び/または動作を適宜変形することにより、撮像部1に3つ以上のカメラが含まれている場合に対しても適用することができる。
【0051】
以上に述べたように、本実施形態によれば、撮像部1に含まれる複数のカメラ各々から出力される画素データに対して時分割に画像処理を施すことにより、当該複数のカメラ各々に対応するライン画像データを生成することができる。また、本実施形態によれば、前述の画像処理に必要なバッファ部22のバッファサイズ及び演算部23の動作周波数が、撮像部1に含まれる複数のカメラ各々の仕様等に応じて設定される。そのため、本実施形態によれば、多数のカメラ各々から出力されるデータに対して画像処理を施すために用いられる回路の規模の増大を抑制することができる。
【0052】
(第2の実施形態)
図5及び
図6は、第2の実施形態に係るものである。
【0053】
なお、本実施形態においては、第1の実施形態と同様の構成等を有する部分に関する詳細な説明を省略するとともに、第1の実施形態と異なる構成等を有する部分に関して主に説明を行う。
【0054】
画像処理システム101Aは、例えば、
図5に示すように、撮像部1と、画像処理装置2Aと、記憶部3と、を有して構成されている。
図5は、第2の実施形態に係る画像処理装置を含む画像処理システムの構成の一例を示す図である。
【0055】
画像処理装置2Aは、例えば、1つ以上のプロセッサと、記憶回路と、を有して構成されている。また、画像処理装置2Aは、撮像部1から順次出力される画素データを蓄積し、当該蓄積した画素データに対して画像処理を施すことによりフレーム画像データ(後述)を生成し、当該生成したフレーム画像データを記憶部3へ出力するように構成されている。また、画像処理装置2Aは、例えば、
図5に示すように、セレクタ21と、n個のバッファ回路BF1、BF2、…、BFnを備えたバッファ部22Aと、演算部23Aと、パラメータ格納部24と、制御部25Aと、を有して構成されている。
【0056】
バッファ部22Aは、n個のバッファ回路によるバッファサイズの総和が下記数式(4)を用いて算出されるバッファサイズBUF_SUMになるように構成されている。
【0057】
上記数式(4)によれば、例えば、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、が撮像部1に含まれている場合には、バッファ部22のバッファサイズをBUF_REQ1+BUF_REQ2に設定すればよい。
【0058】
演算部23Aは、フレーム画像データの画像サイズ等に応じて予め設定された動作周波数で動作するように構成されている。具体的には、演算部23Aは、下記数式(5)を用いて算出される周波数ISP_FREQ以上の動作周波数で動作するように構成されている。
【0059】
上記数式(5)によれば、例えば、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、が撮像部1に含まれている場合には、演算部23Aの動作周波数を480MHz以上の周波数に設定すればよい。
【0060】
制御部25Aは、セレクタ21を経て出力される水平同期信号に基づき、撮像部1の各カメラから出力される画素データのバッファ部22Aへの書き込みを制御するための制御信号を生成し、当該生成した制御信号をセレクタ21へ出力するように構成されている。また、制御部25Aは、セレクタ21を経て出力される水平同期信号と、パラメータ格納部24から読み込んだパラメータと、に基づき、画像処理の開始タイミング及び処理内容等を制御するための制御信号を生成し、当該生成した制御信号を演算部23Aへ出力するように構成されている。また、制御部25Aは、イメージセンサにおける1番目のラインの画素群のスキャンを開始するタイミングを揃えるためのフレーム同期信号を生成し、当該生成したフレーム同期信号を撮像部1の各カメラへ出力するように構成されている。また、制御部25Aは、イメージセンサにおけるデータ取得期間の長さを一定の長さに揃えるための同期信号に相当するライン同期信号を生成し、当該生成したライン同期信号を撮像部1に含まれるn個のカメラ各々へ出力するように構成されている。
【0061】
続いて、本実施形態の作用について説明する。なお、以降においては、水平方向の有効画素数が4000画素であるとともに垂直方向の有効画素数が2000画素であるカメラCM1と、水平方向の有効画素数が2000画素であるとともに垂直方向の有効画素数が1000画素であるカメラCM2と、の2つのカメラが撮像部1に含まれている場合を例に挙げて説明する。また、以降においては、バッファサイズがBUF_REQ1に設定されたバッファ回路BF1と、バッファサイズがBUF_REQ2に設定されたバッファ回路BF2と、の2つのバッファ回路がバッファ部22Aに含まれているとともに、演算部23Aの動作周波数が480MHzに設定されているものとして説明を行う。
【0062】
制御部25Aは、イメージセンサにおけるデータ取得期間をLP3に揃えるためのライン同期信号を生成し、当該生成したライン同期信号を撮像部1の各カメラへ出力する。すなわち、このような制御部25Aの動作によれば、撮像部1に含まれる各カメラ(CM1及びCM2)の中で最も長いデータ取得期間がLP3となる。
【0063】
制御部25Aは、カメラCM1からセレクタ21を経て出力される水平同期信号に基づき、当該カメラCM1から順次出力される画素データをバッファ回路BF1へ書き込ませるための制御信号を生成してセレクタ21へ出力する。また、制御部25Aは、カメラCM2からセレクタ21を経て出力される水平同期信号に基づき、当該カメラCM2から順次出力される画素データをバッファ回路BF2へ書き込ませるための制御信号を生成してセレクタ21へ出力する。
【0064】
制御部25Aは、データ取得期間LP3と、セレクタ21を経て出力される水平同期信号と、に基づき、画像処理の開始タイミング及び処理内容等を制御するための制御信号を生成し、当該生成した制御信号を演算部23へ出力する。
【0065】
ここで、本実施形態の演算部23A及び制御部25Aにおいて行われる具体的な動作の一例について、
図6を参照しつつ説明する。なお、以降においては、カメラCM1から出力された画素データに対応するライン画像データの生成に必要な画素データ群がバッファ回路BF1に予め蓄積されているとともに、カメラCM2から出力された画素データに対応するライン画像データの生成に必要な画素データ群がバッファ回路BF2に予め蓄積されているものとして説明を行う。
図6は、第2の実施形態に係る画像処理装置の具体的な動作の一例を説明するための図である。
【0066】
制御部25Aは、カメラCM1またはカメラCM2からセレクタ21を経て出力される水平同期信号に基づき、データ取得期間LP3の開始タイミングに相当する時刻Te(
図6参照)において、バッファ回路BF1に格納された画素データ群に対する画像処理を開始させるための制御信号を生成して演算部23Aへ出力する。また、制御部25Aは、時刻Teにおいて、バッファ回路BF1に格納された画素データ群に対し、パラメータ格納部24から読み込んだパラメータに含まれる補正量CA1を用いて歪補正処理を行わせるための制御信号を生成して演算部23Aへ出力する。
【0067】
演算部23Aは、制御部25Aから出力される制御信号に応じ、時刻Teにおいて、バッファ部22Aのバッファ回路BF1に予め蓄積された4000個分の画素データにより構成される一のラインの画素データ群をライン画像データLG31として読み込むとともに、当該読み込んだライン画像データLG31に対する画像処理を開始する。また、演算部23Aは、時刻Teから時刻Tfまでの期間に相当する処理期間SP31(
図6参照)において、バッファ回路BF1から読み込んだライン画像データLG31に対し、現像処理と、補正量CA1を用いた歪補正処理と、を含む画像処理を施す。
【0068】
すなわち、以上に述べた動作によれば、処理期間SP31において、バッファ回路BF1から読み込まれた1ライン分のライン画像データLG31に対して画像処理が施される一方で、バッファ回路BF2に蓄積された画素データ群に対しては画像処理が施されない。
【0069】
制御部25Aは、演算部23Aの動作状態を監視することにより、ライン画像データLG31に対する画像処理の進捗状況を取得する。そして、制御部25Aは、処理期間SP31の終了タイミングに相当する時刻Tf(
図6参照)において、バッファ回路BF2に格納された画素データ群に対する画像処理を開始させるための制御信号を生成して演算部23Aへ出力する。また、制御部25Aは、時刻Tfにおいて、バッファ回路BF2に格納された画素データ群に対し、パラメータ格納部24から読み込んだパラメータに含まれる補正量CA2を用いて歪補正処理を行わせるための制御信号を生成して演算部23Aへ出力する。
【0070】
演算部23Aは、制御部25Aから出力される制御信号に応じ、時刻Tfにおいて、バッファ部22のバッファ回路BF2に予め蓄積された2000個分の画素データにより構成される一のラインの画素データ群をライン画像データLG32として読み込むとともに、当該読み込んだライン画像データLG32に対する画像処理を開始する。また、演算部23Aは、時刻Tfから時刻Tgまでの期間に相当する処理期間SP32(
図6参照)において、バッファ回路BF2から読み込んだライン画像データLG32に対し、現像処理と、補正量CA2を用いた歪補正処理と、を含む画像処理を施す。
【0071】
すなわち、以上に述べた動作によれば、処理期間SP32において、バッファ回路BF2から読み込まれた1ライン分のライン画像データLG32に対して画像処理が施される一方で、バッファ回路BF1に蓄積された画素データ群に対しては画像処理が施されない。また、以上に述べた動作によれば、時刻Teから時刻Tgまでの期間に相当するデータ取得期間LP3(
図6参照)において、バッファ回路BF1から読み込まれた1ライン分のライン画像データLG31と、バッファ回路BF2から読み込まれた1ライン分のライン画像データLG32と、のそれぞれに対して画像処理が施される。また、以上に述べた動作によれば、制御部25Aは、ライン画像データの基となる画素データの読み込み先を、バッファ部22Aに含まれるとともに画像処理が施されていない画素データが蓄積されている各バッファ回路のうちのいずれかに選択的に設定するための制御を行う。また、以上に述べた動作によれば、制御部25Aは、撮像部1に含まれるn個のカメラの中で最も長いデータ取得期間LP3内において、ライン画像データの基となる画素データの読み込み先を、バッファ回路BF1からバッファ回路BF2へ切り替えるための制御を行う。
【0072】
なお、本実施形態は、以上に述べた各部の構成及び/または動作を適宜変形することにより、撮像部1に3つ以上のカメラが含まれている場合に対しても適用することができる。
【0073】
以上に述べたように、本実施形態によれば、撮像部1に含まれる複数のカメラ各々から出力される画素データに対して時分割に画像処理を施すことにより、当該複数のカメラ各々に対応するライン画像データを生成することができる。また、本実施形態によれば、前述の画像処理に必要なバッファ部22Aのバッファサイズ及び演算部23Aの動作周波数が、撮像部1に含まれる複数のカメラ各々の仕様等に応じて設定される。そのため、本実施形態によれば、多数のカメラ各々から出力されるデータに対して画像処理を施すために用いられる回路の規模の増大を抑制することができる。
【0074】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、本発明の範囲を限定することは意図していない。これら新規の実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0075】
1 撮像部
2,2A 画像処理装置
3 記憶部
21 セレクタ
22,22A バッファ部
23,23A 演算部
24 パラメータ格納部
25,25A 制御部
101,101A 画像処理システム