JP2018085691A - Image processing device and method of controlling the same, program, and storage medium - Google Patents
Image processing device and method of controlling the same, program, and storage medium Download PDFInfo
- Publication number
- JP2018085691A JP2018085691A JP2016229185A JP2016229185A JP2018085691A JP 2018085691 A JP2018085691 A JP 2018085691A JP 2016229185 A JP2016229185 A JP 2016229185A JP 2016229185 A JP2016229185 A JP 2016229185A JP 2018085691 A JP2018085691 A JP 2018085691A
- Authority
- JP
- Japan
- Prior art keywords
- image processing
- image
- motion vector
- signal
- processing means
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Studio Devices (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、複数のフレーム画像間で動きベクトルを検出する画像処理装置に関するものである。 The present invention relates to an image processing apparatus that detects a motion vector between a plurality of frame images.
近年、デジタルカメラなどの撮像装置においては、撮像素子の多画素化や動画像の高フレームレート化などに伴い、画像処理プロセッサで処理するデータ量が増大している。処理するデータ量が増大すると、1つの画像処理プロセッサで処理することが出来なくなるため、複数の画像処理プロセッサを搭載し、複数の画像処理プロセッサで処理を分担するという方法が提案されている。 In recent years, in an imaging apparatus such as a digital camera, the amount of data processed by an image processor has increased with the increase in the number of pixels of an image sensor and the increase in the frame rate of a moving image. When the amount of data to be processed increases, it becomes impossible to perform processing by one image processing processor. Therefore, a method of mounting a plurality of image processing processors and sharing the processing by a plurality of image processing processors has been proposed.
複数の画像処理プロセッサで処理を分担する例として、特許文献1には、複数の画像処理プロセッサを直列に接続し、画像の領域を分割し、各々の画像処理プロセッサで分担して処理することが開示されている。
As an example of sharing processing by a plurality of image processing processors,
特許文献1に記載された技術においては、上述したように画像の領域を分割し、各々の画像処理プロセッサで分担して処理している。そのため、ベクトル検出処理などの画像信号から評価値を取得する処理においては、分割境界の評価値を取得するために画像信号をオーバーラップさせて分割読みをする必要があり、各画像処理プロセッサの処理負荷を大きくしてしまうという課題がある。
In the technique described in
そこで、これを解決する1つの方法として、画像信号を分割せずに、1つの画像処理プロセッサで処理が出来る画像サイズまで画像を縮小処理して評価値取得用の画像信号を生成し、評価値処理を1つの画像処理プロセッサで一括処理することが考えられる。 Therefore, as one method for solving this problem, an image signal for evaluation value acquisition is generated by reducing the image to an image size that can be processed by one image processor without dividing the image signal. It is conceivable that the processing is performed collectively by one image processor.
しかし、画像信号を縮小処理することで、縮小前の画像信号が有するテクスチャ情報が消失することや、縮小処理の折り返りの影響を受けることによって、ベクトル検出処理においては、取得されるベクトルの検出精度が低下してしまう課題が生じる。 However, when the image signal is reduced, the texture information of the image signal before the reduction is lost, or the reduction of the reduction process is affected. The problem that accuracy will fall arises.
本発明は上述した課題に鑑みてなされたものであり、その目的は、画像信号を複数の画像処理手段で並列処理する場合に、動きベクトルの検出精度を向上させることができる画像処理装置を提供することである。 The present invention has been made in view of the above-described problems, and an object of the present invention is to provide an image processing apparatus capable of improving motion vector detection accuracy when image signals are processed in parallel by a plurality of image processing means. It is to be.
本発明に係わる画像処理装置は、動画像中のフレーム画像に対する画像処理を並列して行う複数の画像処理手段を備える画像処理装置であって、前記複数の画像処理手段のうちの第1の画像処理手段は、前記フレーム画像をそれぞれ複数の部分領域に分割する分割手段と、前記フレーム画像を縮小して縮小画像を得る縮小手段と、前記複数の部分領域のうちの第1の部分領域の信号と前記縮小画像の信号の少なくとも一方を用いて第1の動きベクトルを検出する第1のベクトル検出手段とを有し、前記複数の画像処理手段のうちの第2の画像処理手段は、前記第1の画像処理手段から送られた、前記複数の部分領域のうちの第2の部分領域の信号と前記縮小画像の信号の少なくとも一方を用いて第2の動きベクトルを検出する第2のベクトル検出手段とを有し、前記第1の画像処理手段または前記第2の画像処理手段は、前記第1の動きベクトルおよび前記第2の動きベクトルの少なくとも一方を前記画像処理装置から出力させる制御手段を備えることを特徴とする。 An image processing apparatus according to the present invention is an image processing apparatus including a plurality of image processing units that perform image processing on a frame image in a moving image in parallel, and the first image of the plurality of image processing units. The processing means includes a dividing means for dividing the frame image into a plurality of partial areas, a reducing means for reducing the frame image to obtain a reduced image, and a signal of a first partial area of the plurality of partial areas. And a first vector detecting means for detecting a first motion vector using at least one of the signals of the reduced image, and a second image processing means of the plurality of image processing means includes the first image processing means. A second vector for detecting a second motion vector using at least one of the signal of the second partial region of the plurality of partial regions and the signal of the reduced image, sent from one image processing means; Output means, and the first image processing means or the second image processing means outputs at least one of the first motion vector and the second motion vector from the image processing apparatus. It is characterized by providing.
本発明によれば、画像信号を複数の画像処理手段で並列処理する場合に、動きベクトルの検出精度を向上させることができる画像処理装置を提供することが可能となる。 According to the present invention, it is possible to provide an image processing apparatus capable of improving motion vector detection accuracy when an image signal is processed in parallel by a plurality of image processing means.
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
<第1の実施形態>
図1は、本発明の画像処理装置の第1の実施形態である撮像装置100の構成を示すブロック図である。撮像装置100は、画像信号を並列に処理する2つの画像処理装置を有する。この2つの画像処理装置1,2は、本実施形態では同一の構成の画像処理装置であり、一方の画像処理装置1をMASTER、もう一方の画像処理装置2をSLAVEと呼ぶ。図1では、説明に必要となるブロックのみを記載しているために、画像処理装置1と画像処理装置2が異なって示されているが、実際には同じ構成である。図1では、番号の後に「−1」が記載されているものがMASTER側の画像処理装置1の機能ブロックであり、番号の後に「−2」が記載されているものがSLAVE側の画像処理装置2の機能ブロックである。なお、MASTER側とSLAVE側の画像処理装置1,2は、例えば一部の未使用機能を省いた、異なる構成の画像処理装置でもよい。
<First Embodiment>
FIG. 1 is a block diagram illustrating a configuration of an imaging apparatus 100 that is the first embodiment of the image processing apparatus of the present invention. The imaging device 100 includes two image processing devices that process image signals in parallel. The two
撮像装置100は、撮像光学系110、撮像素子101、撮像光学系駆動部111、撮像素子駆動部112、MASTER側とSLAVE側の2つの画像処理装置1,2を備える。2つの画像処理装置1,2において、画像分割部102は被写体像を撮像する撮像素子101から出力される画像信号を上半分の部分領域と下半分の部分領域に分割する。第1の記憶部103は画像分割部102から出力される画像信号を記憶する。カメラ信号処理部104は第1の記憶部103から読み出された信号を処理する。画像縮小部105は撮像素子101から出力される画像信号を縮小する。第2の記憶部106は画像縮小部105から出力される縮小画像信号を記憶する。ベクトル検出部107は第2の記憶部から読み出された動画像中の連続するフレーム画像の縮小画像信号から動きベクトルデータを取得する。CPU108は撮像装置100の全体を制御する。通信部109はMASTER側とSLAVE側の2つの画像処理装置間の通信を行う。
The imaging apparatus 100 includes an imaging
撮像光学系110は、フォーカスレンズや像ぶれ補正レンズを含む複数のレンズ群および絞りを有して構成される。光学系駆動部111は、CPU108から出力される、光学系のズーム、フォーカス、絞り、像ぶれ補正(レンズシフト)のための駆動制御情報に基づいて、撮像光学系110を制御する。
The imaging
撮像素子駆動部112は、CPU108から出力される、撮像素子の画素加算/間引き読み出し、切り出し読み出し等のための駆動制御情報に基づいて、撮像素子101を制御する。通信部109は、PCI−EXPREESS等の既知のインタフェースで構成されており、MASTER側の画像処理装置1とSLAVE側の画像処理装置2の間で双方向通信が可能である。なお、通信部109は、単方向通信処理が可能なものを複数実装する構成でもよい。第1の記憶部103と第2の記憶部106は、DRAMなどのメモリで構成される。
The image
次に、ベクトル検出部107について、図2を用いて説明する。動きベクトルの検出方法に関しては、本実施形態では、テンプレートマッチング方式を用いる。ベクトル検出部107は縮小画像信号を原画像、それより前の時間に撮像された縮小画像信号を参照画像として、原画像中の任意の位置にテンプレートを配置し、テンプレートと参照画像の各領域との相関値を算出する。このとき、参照画像の全領域に対して相関値を算出するのでは演算量が膨大なものとなるため、実際には203で示すように参照画像上の相関値を算出する矩形領域を探索範囲として設定する。ここで、探索範囲203の位置や大きさについては特に制限は無いが、探索範囲203の内部にテンプレート202の移動先に相当する領域が含まれていないと正しい動きベクトルを検出することは出来ない。
Next, the vector detection unit 107 will be described with reference to FIG. With respect to the motion vector detection method, a template matching method is used in the present embodiment. The vector detection unit 107 arranges a template at an arbitrary position in the original image using the reduced image signal as the original image and the reduced image signal captured at a time earlier as the reference image. The correlation value of is calculated. At this time, calculating the correlation value for the entire area of the reference image requires a large amount of computation. Therefore, as shown by 203, the rectangular area for calculating the correlation value on the reference image is actually searched for in the search range. Set as. Here, the position and size of the
本実施形態では、相関値の算出方法の一例として差分絶対値和(Sum of Absolute Difference、以下SADと略す)を使用する。SADの計算式を(式1)に示す。 In this embodiment, a sum of absolute difference (hereinafter abbreviated as SAD) is used as an example of a correlation value calculation method. The calculation formula of SAD is shown in (Formula 1).
(式1)において、f(i,j)はテンプレート202内の座標(i,j)における画素値を表しており、g(i,j)は探索範囲203において相関値算出の対象となる領域内の各画素値を表す。相関値算出対象領域は、テンプレート202と同じ大きさである。そしてSADでは、両ブロック内の各画素値f(i,j)及びg(i,j)について差の絶対値を計算し、その総和を求めることで相関値S_SADを得ることが出来る。従って、相関値S_SADの値が小さいほど両ブロック間の輝度値の差分が小さい、つまりテンプレート202と相関値算出領域内のテクスチャが類似していることを表している。なお、本実施形態では、相関値の一例としてSADを使用しているが、これに限られるものではなく、差分二乗和(SSD)や正規化相互相関(NCC)等の他の相関値を用いてもよい。
In (Expression 1), f (i, j) represents a pixel value at the coordinates (i, j) in the
テンプレート配置に関しては、例えば図2で示されるように、テンプレート202は、水平サイズがTX画素、垂直サイズがTY画素とする。また、動きベクトルの探索範囲203は、テンプレート202の左右方向両側にSX画素ずつ広げた領域、上下方向両側にSY画素ずつ広げた領域である。そして、テンプレート202間の距離は、水平方向がDX画素、垂直方向がDY画素に設定され、格子状に配置される。また、少ないテンプレート数で、広範囲の動きベクトルを観察できるように、千鳥状にテンプレートを配置してもよい。なお、TX、TY、DX、DY、SX、SYといったパラメータは、目的に応じて、任意の値に変更が可能である。
As for the template arrangement, for example, as shown in FIG. 2, the
次に、本実施形態の撮像装置における、2つの画像処理装置を用いた像ぶれ補正処理について説明する。画像分割部102、画像縮小部105は、カメラ信号処理部104、ベクトル検出部107、通信部109に対し、2倍以上のサイズの画像信号を処理出来る構成となっている。具体的な例を挙げると、前者は4k2k:60pの画像信号を処理する性能があり、後者は4k2k:30pの画像信号を処理する性能がある。 Next, image blur correction processing using two image processing devices in the imaging apparatus of the present embodiment will be described. The image dividing unit 102 and the image reducing unit 105 are configured to be able to process an image signal having a size of twice or more as compared with the camera signal processing unit 104, the vector detection unit 107, and the communication unit 109. As a specific example, the former has a performance of processing a 4k2k: 60p image signal, and the latter has a performance of processing a 4k2k: 30p image signal.
撮像素子101から、図3(a)で示すサイズの画像信号が出力されると、MASTER側の画像分割部102−1は、画像信号を図3(c)で示す上半分の部分領域と、図3(d)で示す下半分の部分領域とに分割する。そして、上半分の画像信号を通信部109−1に出力し、下半分の画像信号を記憶部103−1に出力する。MASTER側の通信部109−1は、SLAVE側の通信部109−2に対し、上半分の画像信号を送信し、SLAVE側の通信部109−2は、受信した上半分の画像信号を記憶部103−2に出力する。そして、カメラ信号処理部104−1は下半分の画像信号に対して、カメラ信号処理部104−2は上半分の画像信号に対して、センサ補正、ホワイトバランス調整、ノイズリダクション、現像処理などのカメラ信号処理を行う。カメラ信号処理部104で処理された、各々の画像信号は表示部へ出力される。分割された画像信号は、表示部で既知の手法で再統合される。表示部の詳細については、既に公知のものであるため、説明を省略する。従って、4k2k:60pの画像信号が撮像素子101から出力された場合は、MASTER側で下半分の画像信号(4k1k:60p)、SLAVE側で上半分の画像信号(4k1k:60p)を信号処理することで、4k2k:60pの撮影を実現することができる。
When the image signal having the size shown in FIG. 3A is output from the
また、同様に、撮像素子101から、図3(a)で示すサイズの画像信号が出力されると、MASTER側の画像縮小部105−1は画像信号を図3(b)で示すサイズまで縮小する。図3(b)においては、図3(a)の画像信号が、水平方向に1/2、垂直方向に1/2縮小されている。なお、画像縮小部105−1における画像信号の縮小率は、後段のベクトル検出部107が1フレーム処理期間内に処理出来る画像サイズとなればよく、1/2に限定されるものではない。また、本実施形態では画像信号全てを縮小対象としているが、後段の処理が必要とする信号領域のみを縮小対象としてもよい。
Similarly, when an image signal having the size shown in FIG. 3A is output from the
MASTER側のベクトル検出部107−1は、画像縮小部105−1で生成された縮小画像信号を用いて、ベクトル検出処理を行い、ベクトルデータを算出する。ベクトルデータは、CPU108−1へ出力される。SLAVE側のベクトル検出部107−2は、通信部109−2が第2の記憶部106−2へ出力する上半分の画像信号を用いて、ベクトル検出処理を行う。縮小画像信号は、細かいテクスチャ(エッジ)情報の消失や、画像信号の折り返しの影響がある。従って、縮小画像信号によって算出されるベクトルデータは、等倍画像に対して、ベクトルデータの品質が低下する。そこで、SLAVE側のベクトル検出部107−2で、上半分の等倍画像信号に対し、ベクトル検出処理を行い、品質のよいベクトルデータを算出する。 The MASTER side vector detection unit 107-1 performs vector detection processing using the reduced image signal generated by the image reduction unit 105-1, and calculates vector data. The vector data is output to CPU 108-1. The SLAVE-side vector detection unit 107-2 performs vector detection processing using the upper half image signal output from the communication unit 109-2 to the second storage unit 106-2. The reduced image signal is affected by the disappearance of fine texture (edge) information and the folding of the image signal. Accordingly, the quality of vector data calculated from the reduced image signal is lower than that of a normal-size image. Therefore, the vector detection unit 107-2 on the SLAVE side performs vector detection processing on the upper half of the same-size image signal to calculate high-quality vector data.
ベクトル検出部107−2で生成されたベクトルデータは、CPU108−2へ出力される。CPU108−2は取得したベクトルデータを通信部109−2へ出力する。通信部109−2は、MASTER側の通信部109−1へ、ベクトルデータを出力する。通信部109−1は、SLAVE側で算出したベクトルデータをCPU108−1に出力する。 The vector data generated by the vector detection unit 107-2 is output to the CPU 108-2. The CPU 108-2 outputs the acquired vector data to the communication unit 109-2. The communication unit 109-2 outputs vector data to the communication unit 109-1 on the MASTER side. The communication unit 109-1 outputs the vector data calculated on the SLAVE side to the CPU 108-1.
CPU108−1は、MASTER側で縮小画像から算出したベクトルデータとSLAVE側で上半分の部分画像から算出したベクトルデータから、像ぶれ補正のためのグローバルモーション(画面全体の動き)を算出する(動きベクトルの合成)。グローバルモーションの算出方法としては、X方向とY方向のそれぞれで、図4で示すような検出枠全てのベクトル値のヒストグラムを求め、その最頻値400をグローバルモーションとする。CPU108−1は、ベクトルを取得したら、そのベクトル値に応じた階数をカウントして、ヒストグラムを作成する。ヒストグラムを生成する際、MASTER側のベクトルデータのカウント値は1(401−1)、SLAVE側のベクトルデータのカウント値は2(401−2)とする。SLAVE側のベクトルデータは等倍画像で算出したベクトルデータであるため、ベクトルの品質がMASTER側よりも良い。そのため、カウントの重みを大きくすることで、グローバルモーションの精度を向上させる。なお、カウントの重みは、画像のコントラスト値や被写体情報などの画像解析結果に基づいて調整する構成としてもよい。CPU108−1は算出したグローバルモーションに基づいて、既知の手法で、像ぶれ補正のためのレンズ駆動(シフト)量を算出して、レンズ制御情報を撮像光学系駆動部111へ出力する。
The CPU 108-1 calculates global motion (motion of the entire screen) for image blur correction from the vector data calculated from the reduced image on the MASTER side and the vector data calculated from the upper half partial image on the SLAVE side (motion). Vector synthesis). As a global motion calculation method, a histogram of vector values of all detection frames as shown in FIG. 4 is obtained in each of the X direction and the Y direction, and the
図5は、本実施形態の撮像装置における画像処理の流れを示した図である。図5を用いて、画像処理の流れについて説明する。 FIG. 5 is a diagram illustrating a flow of image processing in the imaging apparatus of the present embodiment. The flow of image processing will be described with reference to FIG.
図5において、501は1フレームの画像信号の処理時間を示している。例えば、フレームレートが60pの場合は、1/60sec=16.7msecとなる。502は撮像素子101から出力される画像信号の出力期間を示している。本実施形態においてはラスタスキャンで画像信号が出力されるので、まず、SLAVE側で処理する上半分の画像信号が出力され、次にMASTER側で処理する下半分の画像信号が出力される。503は撮像素子101から出力される画像信号を、画像縮小部105が縮小処理する期間を示す。
In FIG. 5,
504はカメラ信号処理部104が信号処理を行う期間を示す。カメラ信号処理部104−2は、上側の画像信号が入力されるタイミングで、信号処理を開始する。カメラ信号処理部104−1は、下側の画像信号が入力されるタイミングで、信号処理を開始する。前述した通り、カメラ信号処理部104は、撮像素子101の画像信号の出力レート、縮小部105の画像信号の処理レートに対して、半分の処理性能となるため、分割された画像信号がカメラ信号処理部104で処理される時間は、1フレーム分の時間となる。従って、信号処理された画像信号が表示手段で表示されるタイミングは、下側の画像信号の信号処理完了(504−1)以降となる。
Reference numeral 504 denotes a period during which the camera signal processing unit 104 performs signal processing. The camera signal processing unit 104-2 starts signal processing at the timing when the upper image signal is input. The camera signal processing unit 104-1 starts signal processing at the timing when the lower image signal is input. As described above, the camera signal processing unit 104 has half the processing performance with respect to the output rate of the image signal of the
505はベクトル検出部107がベクトルの検出処理を行う期間を示す。ベクトル検出部107−1は、画像縮小部105からの信号の出力直後から動きベクトル検出処理を開始する。ベクトル検出部107−2は、上側の画像信号が入力されるタイミングで、動きベクトル検出処理を開始する。本実施形態においては、動きベクトル検出処理は、1フレーム内で処理が完了するように、テンプレートサイズや枠配置を調整している。 Reference numeral 505 denotes a period during which the vector detection unit 107 performs a vector detection process. The vector detection unit 107-1 starts the motion vector detection process immediately after the output of the signal from the image reduction unit 105. The vector detection unit 107-2 starts the motion vector detection process at the timing when the upper image signal is input. In the present embodiment, the template size and the frame arrangement are adjusted so that the motion vector detection process is completed within one frame.
506は通信部109−1が、上側の画像信号を通信部109−2へ出力する期間である。撮像素子101の画像信号出力直後から通信を開始する。507は通信部109−2が、SLAVE側で算出したベクトルデータを通信部109−1へ出力する期間である。なお、本実施形においては、ベクトルデータの送信は、撮像素子101の画像信号をSLAVE側へ送信する期間外で行うが、時分割処理などによって同タイミングで通信してもよい。
508はCPU108−1が、MASTER側で算出したベクトルデータとSLAVE側で算出したベクトルデータを用いて、グローバルモーション値を算出し、算出したグローバルモーションに基づいて、像ぶれ補正のためのレンズ駆動(シフト)量を算出し、レンズ制御情報を撮像光学系駆動部112へ出力する期間である。本実施形態では、期間508を次フレームの撮像までに完了させるよう、制御構成を組む。
A
以上の構成により、複数の画像処理プロセッサで画像処理するシステムにおいて、動きベクトルの検出精度を向上させ、像ぶれ補正の精度向上を達成することができる。 With the above configuration, in a system that performs image processing with a plurality of image processing processors, motion vector detection accuracy can be improved, and image blur correction accuracy can be improved.
<第2の実施形態>
図6は、本発明の第2の実施形態の撮像装置の構成を示した図である。図6に示すように、本実施形態の撮像装置は、第1の実施形態と同様にMASTER側とSLAVE側の2つの画像処理装置1’,2’を備える。
<Second Embodiment>
FIG. 6 is a diagram illustrating a configuration of an imaging apparatus according to the second embodiment of the present invention. As shown in FIG. 6, the imaging apparatus of the present embodiment includes two
図6において、撮像光学系110、撮像光学系駆動部111、撮像素子101、撮像素子駆動制御部112、画像分割部102、第1の記憶部103、カメラ信号処理部104、画像縮小部105、第2の記憶部106、通信部109は、第1の実施形態と共通のため、図1と同じ符号を付して説明を省略する。
In FIG. 6, the imaging
画像縮小部105−1から得られた縮小画像信号を用いて画像解析を行う画像解析部613−1と、第2の記憶部106−1に入力する画像信号を、下半分の等倍画像信号とするか縮小画像信号とするかを切り替えるセレクタ614−1が追加されている。また、CPU608−1は、画像解析部613−1の画像解析結果を取得し、解析結果に基づいて、セレクタ614−1に対して画像信号の切り替えを指示する。 An image analysis unit 613-1 that performs image analysis using the reduced image signal obtained from the image reduction unit 105-1, and an image signal that is input to the second storage unit 106-1 is a lower-magnification image signal. And a selector 614-1 for switching between a reduced image signal and a reduced image signal. Further, the CPU 608-1 acquires the image analysis result of the image analysis unit 613-1, and instructs the selector 614-1 to switch the image signal based on the analysis result.
ベクトル検出部607は、表面的な構成は第1の実施形態と共通であるが、像ぶれ補正のためのベクトルデータを算出するだけでなく、被写体を追尾するためのベクトルデータの算出を行ってもよい。後者の場合、CPU608は、ベクトルデータから被写体の動きを予測し、次以降のフレームで被写体にフォーカスが合うようにレンズのフォーカス駆動量を算出して、レンズ制御情報を撮像光学系駆動部112へ出力する。
The vector detection unit 607 has the same superficial configuration as that of the first embodiment, but not only calculates vector data for image blur correction but also calculates vector data for tracking the subject. Also good. In the latter case, the CPU 608 predicts the movement of the subject from the vector data, calculates the lens focus driving amount so that the subject is focused in the subsequent frames, and sends the lens control information to the imaging optical
画像解析部613−1の構成は、以下の何れかの処理機能もしくは複数の処理機能によって構成される。画像解析部613−1の構成について、CPU608−1の制御と関連付けて、以下の3つの場合について説明する。
(1)画像解析部613−1は、特徴点算出処理を行う。特徴点算出処理を行う処理部の構成を図7に示す。特徴フィルタ部701は、例えば、バンドパスフィルタ、水平微分フィルタ、垂直微分フィルタ、平滑化フィルタなど、複数のフィルタから構成される。例えば、本実施形態においては、バンドパスフィルタで画像信号の不要な高周波成分と低周波成分をカットし、水平方向の微分フィルタ処理を施した信号と、垂直方向の微分フィルタ処理を施した信号それぞれに対して、平滑化フィルタ処理を施した信号を出力する。
The configuration of the image analysis unit 613-1 is configured by any one of the following processing functions or a plurality of processing functions. The following three cases will be described regarding the configuration of the image analysis unit 613-1 in association with the control of the CPU 608-1.
(1) The image analysis unit 613-1 performs feature point calculation processing. FIG. 7 shows the configuration of the processing unit that performs the feature point calculation process. The
特徴評価部702は、特徴フィルタ部701によりフィルタ処理されたグリッド(図8に示す分割領域801,802)に対し、画素ごとに2つのエッジの交点や曲率が極大である曲線状の点など画素の周辺の微分値が多方向に大きい点を特徴評価式により特徴値として算出する。本実施形態では、例えば、Shi and Tomasiの手法を用いる場合について説明する。
The
水平微分フィルタと垂直微分フィルタを施した結果から、自己相関行列Hを作成する。自己相関行列Hの式を(式2)に示す。 An autocorrelation matrix H is created from the result of applying the horizontal differential filter and the vertical differential filter. An expression of the autocorrelation matrix H is shown in (Expression 2).
(式2)において、Ixは水平微分フィルタを施した結果、Iyは垂直微分フィルタを施した結果を表しており、ガウシアンフィルタGを畳み込む。Shi and Tomasiの特徴評価式を(式3)に示す。 In (Equation 2), Ix represents the result of applying the horizontal differential filter, Iy represents the result of applying the vertical differential filter, and convolves the Gaussian filter G. Shi and Tomasi's characteristic evaluation formula is shown in (Formula 3).
Shi and Tomashi = min(λ1,λ2) (式3)
(式3)は、(式2)の自己相関行列Hの固有値λ1,λ2のうち小さい方の固有値を特徴値とすることを示す。
Shi and Tomashi = min (λ1, λ2) (Formula 3)
(Expression 3) indicates that the smaller eigenvalue of the eigenvalues λ1 and λ2 of the autocorrelation matrix H of (Expression 2) is used as the feature value.
特徴点決定部703は、グリッド毎に特徴評価部702によって画素ごとに算出された特徴値の最も大きい値を持つ画素を特徴点と決定する。特徴点は、図8で示すように、縮小画像信号を、複数の分割領域(グリッドと呼ぶ)に分割し、それぞれの分割領域801で算出する。
The feature
ここで、本実施形態においては、上記の様に特徴点を検出することにより、画像分割部102−1で分割する画像の上半分の部分領域と下半分の部分領域の境界に特徴点が多く存在するか否かを判定する。画像の上半分の部分領域と下半分の部分領域の境界に特徴点が集中している場合は、上下のどちらかの部分領域だけでは動きベクトルを正確に検出することができず、正確に検出するには両方の部分領域の画像信号を参照する必要がある。そのため、画像処理装置の負荷を減らすためには、画像全体の縮小画像から動きベクトルを検出した方が好ましい。このような理由から以下の様な判定を行う。なお、本実施形態においては、画像信号の上下の部分領域の境界付近の特徴点が算出出来ればよいので、ハッチングで示した分割領域802の特徴点のみを算出するようにしてもよい。
Here, in the present embodiment, by detecting feature points as described above, there are many feature points at the boundary between the upper half partial area and the lower half partial area divided by the image dividing unit 102-1. Determine if it exists. If feature points are concentrated at the boundary between the upper half and lower half of the image, the motion vector cannot be detected accurately with either the upper or lower partial area, but it is detected accurately. Therefore, it is necessary to refer to the image signals of both partial areas. Therefore, in order to reduce the load on the image processing apparatus, it is preferable to detect a motion vector from a reduced image of the entire image. For this reason, the following determination is performed. In the present embodiment, it is only necessary to calculate the feature points near the boundary between the upper and lower partial regions of the image signal. Therefore, only the feature points of the divided
画像解析部613−1は、各分割領域で算出された特徴点情報を、CPU608−1へ出力する。CPU608−1は、上下の部分領域の境界付近の分割領域802の特徴点の特徴値の平均値AVEを算出する。(式4)で示すように、平均値AVEが所定の閾値THRES1以上の場合は、画面中央に特徴点が集中していると判定する。そして、CPU608−1は、セレクタ614−1に対し、第2の記憶部106−1に入力する信号として、画像縮小部105−1からの縮小画像信号を選択するよう制御する。そうでない場合は、セレクタ614−1に対し、第2の記憶部106−1に入力する信号として、画像分割部102−1からの下半分の等倍画像信号を選択するよう制御する。
The image analysis unit 613-1 outputs the feature point information calculated in each divided region to the CPU 608-1. The CPU 608-1 calculates the average value AVE of the feature values of the feature points of the divided
AVE≧THRES1 …(式4)
なお、特徴点の特徴値の平均値ではなく、積分値や中央値でもよい。また、各分割領域の特徴点の特徴値を閾値THRES1と比較し、閾値以上の特徴点の個数をNとした場合、(式5)で示すように、Nが所定の閾値THRES2以上の場合を、画面中央に特徴点が集中している場合と判定してもよい。
AVE ≧ THRES1 (Formula 4)
Note that an integral value or a median value may be used instead of the average value of feature values of feature points. Further, when the feature values of the feature points of each divided region are compared with the threshold value THRES1, and the number of feature points equal to or greater than the threshold value is N, as shown in (Equation 5), the case where N is greater than or equal to the predetermined threshold value THRES2 It may be determined that the feature points are concentrated in the center of the screen.
N≧THRES2 …(式5)
(2)画像解析部613−1は、コントラスト検出処理を行う。縮小画像信号の信号値の平均値AVE2を算出する。なお、平均値ではなく、積分値、中央値、最大値でもよい。画像解析部613−1は、平均値AVE2をCPU608−1へ出力する。CPU608−1は、(式6)で示すように、平均値AVE2が所定の閾値THRES3未満の場合は、縮小画像信号が、画像縮小処理によってテクスチャ情報が失われていると判定する。そして、セレクタ614−1に対し、第2の記憶部106−1に入力する信号として、画像分割部602−1からの下半分の等倍画像信号を選択するよう制御する。そうでない場合は、セレクタ614−1に対し、第2の記憶部106−1に入力する信号として、画像縮小部605−1からの縮小画像信号を選択するよう制御する。
N ≧ THRES2 (Formula 5)
(2) The image analysis unit 613-1 performs contrast detection processing. An average value AVE2 of the signal values of the reduced image signal is calculated. In addition, the integrated value, the median value, and the maximum value may be used instead of the average value. The image analysis unit 613-1 outputs the average value AVE2 to the CPU 608-1. As shown in (Equation 6), when the average value AVE2 is less than the predetermined threshold value THRES3, the CPU 608-1 determines that the reduced image signal has lost texture information due to the image reduction process. Then, the selector 614-1 is controlled to select the lower half of the same size image signal from the image dividing unit 602-1 as the signal to be input to the second storage unit 106-1. Otherwise, the selector 614-1 is controlled to select the reduced image signal from the image reduction unit 605-1 as a signal to be input to the second storage unit 106-1.
AVE2≧THRES3 …(式6)
(3)画像解析部613は、顔などの被写体検出処理を行う。画像解析部613−1は、既知の手法で、図9に示すように被写体領域901の左上座標(XSTART,YSTART)と右下座標(XEND,YEND)を算出し、CPU608−1へ出力する。そして、上下の部分領域の境界902のY座標値をYHとした場合、(式7)で示すように、分割境界YHがYSTARTとYENDの間にある場合は、被写体が分割境界にあると判定する(被写体の有無の判定)。そして、CPU608−1は、セレクタ614−1に対し、第2の記憶部106−1に入力する信号として、画像縮小部605−1からの縮小画像信号を選択するよう制御する。そうでない場合は、セレクタ614−1に対し、第2の記憶部106−1に入力する信号として、画像分割部602−1からの下半分の等倍画像信号を選択するよう制御する。
AVE2 ≧ THRES3 (Formula 6)
(3) The image analysis unit 613 performs subject detection processing such as a face. The image analysis unit 613-1 calculates the upper left coordinates (XSTART, YSTART) and the lower right coordinates (XEND, YEND) of the
YSTART≦YH≦YEND …(式7)
以上が、画像解析部613の構成とCPU608の制御である。
YSTART ≦ YH ≦ YEND (Expression 7)
The above is the configuration of the image analysis unit 613 and the control of the CPU 608.
CPU608−1がセレクタ614−1に対し、縮小画像信号を選択するように制御した場合、SLAVE側のベクトル検出部607−2は、第1の実施形態と同様に、上半分の等倍画像信号に対してベクトル検出処理を行う。そして、算出したベクトルデータをMASTER側のCPU608−1へ送信して、補助情報として活用してもよい。あるいは、処理自体を行わないようにしてもよい。 When the CPU 608-1 controls the selector 614-1 to select the reduced image signal, the SLAVE-side vector detection unit 607-2 performs the upper half of the same size image signal as in the first embodiment. A vector detection process is performed on. Then, the calculated vector data may be transmitted to the CPU 608-1 on the MASTER side and used as auxiliary information. Alternatively, the process itself may not be performed.
また、本実施形態では、セレクタ614−1は、第2の記憶部106−1の前に配置されている。しかし、ベクトル検出部607−1の前に配置し、第2の記憶部606−1に保持した縮小画像信号と第1の記憶部603−1に保持した下半分の等倍画像信号を選択する構成としてもよい。 In the present embodiment, the selector 614-1 is disposed in front of the second storage unit 106-1. However, the reduced image signal stored in the second storage unit 606-1 and the lower half of the same size image signal stored in the first storage unit 603-1 are selected before the vector detection unit 607-1. It is good also as a structure.
また、本実施形態では、MASTER側のみセレクタ614−1で縮小画像信号と下半分の等倍画像信号を切り替える構成をとっている。しかし、SLAVE側にもセレクタ614−2を追加し、MASTER側から縮小画像信号を送信することで、SLAVE側でも画像解析結果に応じて縮小画像信号と上半分の等倍画像信号を切り替える構成をとってもよい。 In this embodiment, the selector 614-1 is used to switch between the reduced image signal and the lower half of the same size image signal only on the MASTER side. However, by adding a selector 614-2 on the SLAVE side and transmitting a reduced image signal from the MASTER side, the SLAVE side can also switch between the reduced image signal and the upper half of the same size image signal according to the image analysis result. It may be taken.
以上の構成により、複数の画像処理プロセッサで画像処理するシステムにおいて、最適な動きベクトル検出処理を実施することが可能となる。 With the above configuration, it is possible to perform an optimal motion vector detection process in a system that performs image processing with a plurality of image processing processors.
<第3の実施形態>
以下、本発明の第3の実施形態について説明する。本実施形態では、撮像装置の構成は、図1、図6に示す構成のどちらでもよく、CPU108−1(CPU608−1)の制御のみが異なる。
<Third Embodiment>
Hereinafter, a third embodiment of the present invention will be described. In this embodiment, the configuration of the imaging apparatus may be either the configuration shown in FIG. 1 or FIG. 6, and only the control of the CPU 108-1 (CPU 608-1) is different.
図10は、本実施形態の撮像装置における、画像処理の流れを示した図である。図10は図5とほぼタイミングが同じであるが、SLAVE側で算出したベクトルデータをMASTER側へ送信する期間1007が、フレームをまたいでしまっている。
FIG. 10 is a diagram illustrating a flow of image processing in the imaging apparatus of the present embodiment. FIG. 10 has almost the same timing as FIG. 5, but the
本来、グローバルモーションの算出は、1フレーム処理が完了する前に終了させて、次のフレームの撮像制御にフィードバックする必要がある。従って、送信期間1007がフレームをまたぐ可能性がある場合は、MASTER側の縮小画像信号で算出したベクトルデータのみを使用して、グローバルモーションを算出する。
Originally, the calculation of global motion needs to be terminated before the completion of one frame processing and fed back to the imaging control of the next frame. Accordingly, when there is a possibility that the
フレームまたぎが発生することを推定するための方法として、例えば、撮像素子101の入力のVBLANK期間の時間をTvb、通信速度に基づく所定のベクトルデータ数を送信する時間をTv、その他のデータを送受信する時間をTsとした場合、以下の式で判定する。
As a method for estimating the occurrence of frame straddling, for example, the time of the VBLANK period of the input of the
Tvb−Ts≧Tv …(式7)
また、撮像素子101の入力のHBLANK期間の総和Thbも使用して送信する場合は、以下の式で判定する。
Tvb−Ts ≧ Tv (Expression 7)
In addition, when the transmission is also performed using the total Thb of the HBLANK period of the input of the
Tvb+Thb−Ts≧Tv …(式8)
なお、CPU108−1は、上述の判定処理をフレーム単位で動的に実施してもよいし、撮影モードの切替えなどに応じて撮像開始時のみ実施してもよい。
Tvb + Thb−Ts ≧ Tv (Equation 8)
Note that the CPU 108-1 may dynamically perform the above-described determination processing in units of frames, or may be performed only at the start of imaging according to switching of the imaging mode.
以上の構成により、複数の画像処理プロセッサで画像処理するシステムにおいて、パフォーマンスを考慮した、最適な動きベクトル検出処理を実施することが可能となる。 With the above configuration, in a system that performs image processing with a plurality of image processing processors, it is possible to perform optimal motion vector detection processing in consideration of performance.
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other embodiments)
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
1:MASTER側の画像処理装置、2:SLAVE側の画像処理装置、101:撮像素子、110:撮像光学系、107:ベクトル検出部、108:CPU 1: MASTER side image processing device, 2: SLAVE side image processing device, 101: imaging device, 110: imaging optical system, 107: vector detection unit, 108: CPU
Claims (17)
前記複数の画像処理手段のうちの第1の画像処理手段は、前記フレーム画像をそれぞれ複数の部分領域に分割する分割手段と、前記フレーム画像を縮小して縮小画像を得る縮小手段と、前記複数の部分領域のうちの第1の部分領域の信号と前記縮小画像の信号の少なくとも一方を用いて第1の動きベクトルを検出する第1のベクトル検出手段とを有し、
前記複数の画像処理手段のうちの第2の画像処理手段は、前記第1の画像処理手段から送られた、前記複数の部分領域のうちの第2の部分領域の信号と前記縮小画像の信号の少なくとも一方を用いて第2の動きベクトルを検出する第2のベクトル検出手段とを有し、
前記第1の画像処理手段または前記第2の画像処理手段は、前記第1の動きベクトルおよび前記第2の動きベクトルの少なくとも一方を前記画像処理装置から出力させる制御手段を備えることを特徴とする画像処理装置。 An image processing apparatus comprising a plurality of image processing means for performing image processing on frame images in a moving image in parallel,
Of the plurality of image processing means, a first image processing means includes a dividing means for dividing the frame image into a plurality of partial areas, a reduction means for reducing the frame image to obtain a reduced image, and the plurality of image processing means. First vector detecting means for detecting a first motion vector using at least one of the signal of the first partial region of the partial regions of the sub-region and the signal of the reduced image,
The second image processing means out of the plurality of image processing means is a signal of the second partial area and the signal of the reduced image sent from the first image processing means. Second vector detecting means for detecting a second motion vector using at least one of
The first image processing means or the second image processing means includes control means for outputting at least one of the first motion vector and the second motion vector from the image processing apparatus. Image processing device.
該撮像手段により撮像された動画像が入力される請求項1乃至13のいずれか1項に記載の画像処理装置と、
を備えることを特徴とする撮像装置。 Imaging means for capturing a subject image;
The image processing apparatus according to claim 1, wherein a moving image captured by the imaging unit is input;
An imaging apparatus comprising:
前記複数の画像処理手段のうちの第1の画像処理手段は、前記フレーム画像をそれぞれ複数の部分領域に分割する分割工程と、前記フレーム画像を縮小して縮小画像を得る縮小工程と、前記複数の部分領域のうちの第1の部分領域の信号と前記縮小画像の信号の少なくとも一方を用いて第1の動きベクトルを検出する第1のベクトル検出工程とを行い、
前記複数の画像処理手段のうちの第2の画像処理手段は、前記第1の画像処理手段から送られた、前記複数の部分領域のうちの第2の部分領域の信号と前記縮小画像の信号の少なくとも一方を用いて第2の動きベクトルを検出する第2のベクトル検出工程とを行い、
前記第1の画像処理手段または前記第2の画像処理手段は、前記第1の動きベクトルおよび前記第2の動きベクトルの少なくとも一方を前記画像処理装置から出力させる制御工程を行うことを特徴とする画像処理装置の制御方法。 A method of controlling an image processing apparatus comprising a plurality of image processing means for performing image processing on a frame image in a moving image in parallel,
The first image processing means of the plurality of image processing means includes a dividing step of dividing the frame image into a plurality of partial areas, a reduction step of reducing the frame image to obtain a reduced image, Performing a first vector detection step of detecting a first motion vector using at least one of a signal of a first partial region of the partial regions and a signal of the reduced image,
The second image processing means out of the plurality of image processing means is a signal of the second partial area and the signal of the reduced image sent from the first image processing means. Performing a second vector detection step of detecting a second motion vector using at least one of
The first image processing means or the second image processing means performs a control step of outputting at least one of the first motion vector and the second motion vector from the image processing apparatus. A method for controlling an image processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016229185A JP2018085691A (en) | 2016-11-25 | 2016-11-25 | Image processing device and method of controlling the same, program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016229185A JP2018085691A (en) | 2016-11-25 | 2016-11-25 | Image processing device and method of controlling the same, program, and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018085691A true JP2018085691A (en) | 2018-05-31 |
Family
ID=62238658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016229185A Pending JP2018085691A (en) | 2016-11-25 | 2016-11-25 | Image processing device and method of controlling the same, program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018085691A (en) |
-
2016
- 2016-11-25 JP JP2016229185A patent/JP2018085691A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5287702B2 (en) | Image processing apparatus and method, and program | |
JP5327339B2 (en) | Image processing system, image processing method, and program | |
US9508153B2 (en) | Distance measurement apparatus, imaging apparatus, distance measurement method, and program | |
US9865064B2 (en) | Image processing apparatus, image processing method, and storage medium | |
US20120169840A1 (en) | Image Processing Device and Method, and Program | |
US20160314591A1 (en) | Image processing apparatus, distance measuring apparatus, imaging apparatus, and image processing method | |
JP2015073185A (en) | Image processing device, image processing method and program | |
JP2010114752A (en) | Device and method of imaging and program | |
JP2019175112A (en) | Image processing device, photographing device, image processing method, and program | |
US20210127053A1 (en) | Image pickup apparatus, image correction method, and medium storing program | |
US10116865B2 (en) | Image processing apparatus and image processing method for calculating motion vector between images with different in-focus positions | |
WO2021261248A1 (en) | Image processing device, image display system, method, and program | |
JP6732440B2 (en) | Image processing apparatus, image processing method, and program thereof | |
JP4871315B2 (en) | Compound eye photographing apparatus, control method therefor, and program | |
US20090244264A1 (en) | Compound eye photographing apparatus, control method therefor , and program | |
JP2018085691A (en) | Image processing device and method of controlling the same, program, and storage medium | |
JP6730423B2 (en) | Image processing apparatus, image processing method, and image processing program | |
JP2022099120A (en) | Subject tracking device and control method for the same | |
JP6645949B2 (en) | Information processing apparatus, information processing system, and information processing method | |
JP2009027437A (en) | Image processor, image processing method and imaging device | |
JP2018072941A (en) | Image processing device, image processing method, program, and storage medium | |
JP7346021B2 (en) | Image processing device, image processing method, imaging device, program and recording medium | |
JP7278737B2 (en) | IMAGING DEVICE, CONTROL METHOD THEREOF, AND PROGRAM | |
JP6833772B2 (en) | Image processing equipment, imaging equipment, image processing methods and programs | |
JP2014153517A (en) | Image processing device, image processing method, program, and storage medium |