JP2016119580A - Image processing apparatus, imaging apparatus, image processing method, and program - Google Patents
Image processing apparatus, imaging apparatus, image processing method, and program Download PDFInfo
- Publication number
- JP2016119580A JP2016119580A JP2014258378A JP2014258378A JP2016119580A JP 2016119580 A JP2016119580 A JP 2016119580A JP 2014258378 A JP2014258378 A JP 2014258378A JP 2014258378 A JP2014258378 A JP 2014258378A JP 2016119580 A JP2016119580 A JP 2016119580A
- Authority
- JP
- Japan
- Prior art keywords
- image
- feature point
- unit
- virtual feature
- images
- 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.)
- Granted
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
Description
本発明は、画像処理装置、撮像装置、画像処理方法、及びプログラムに関する。 The present invention relates to an image processing device, an imaging device, an image processing method, and a program.
動画に対する手ぶれを補正する方法として、特徴点追跡方式と呼ばれる技術が知られている。特徴点追跡方式においては、動画に含まれる各フレームの画像から特徴点を抽出し、抽出した特徴点の移動ベクトルから構成したオプティカルフローを時間的に平滑化することにより、動画に対して手ぶれを補正する。 A technique called a feature point tracking method is known as a method for correcting camera shake for a moving image. In the feature point tracking method, a feature point is extracted from an image of each frame included in the moving image, and an optical flow composed of the extracted feature point movement vector is temporally smoothed, thereby causing a camera shake on the moving image. to correct.
しかし、特徴点追跡方式は三次元物体の視差の影響を考慮していないため、手ぶれ補正後の動画に不自然な歪みが生じることがあるという欠点があった。 However, since the feature point tracking method does not consider the influence of parallax of a three-dimensional object, there is a drawback in that an unnatural distortion may occur in a moving image after camera shake correction.
特徴点追跡方式が有する上述の欠点を克服する方法として、エピポーラ幾何を応用した手ぶれ補正の方法(以下、エピポーラ転送方式と呼ぶ)が知られている。例えば、非特許文献1は、エピポーラ転送方式で手ぶれを補正することにより、視差の影響を抑制し、手ぶれ補正後の動画に生じる不自然な歪みを軽減する技術を開示している。
As a method of overcoming the above-described drawbacks of the feature point tracking method, a method for correcting camera shake using epipolar geometry (hereinafter referred to as an epipolar transfer method) is known. For example, Non-Patent
しかしながら、エピポーラ転送方式の手ぶれ補正は、手ぶれ補正の対象となる各フレームの画像について、例えば過去10フレームの画像との間でのオプティカルフローの計算、及び1フレーム当たり数千本から数万本に及ぶエピポーラ線の投影等、多くの座標計算を必要とする。このため、演算負荷が非常に大きかった。 However, the image stabilization of the epipolar transfer method is based on the calculation of the optical flow with respect to the image of the past 10 frames, for example, the image of each frame to be subjected to the image stabilization, and from thousands to tens of thousands per frame. Many coordinate calculations are required, such as projection of epipolar lines. For this reason, the calculation load was very large.
本発明は、上記の課題に鑑みてなされたものであり、視差の影響を考慮した手ぶれ補正を簡易な演算により実行可能な画像処理装置、撮像装置、画像処理方法、及びプログラムを提供することを目的とする。 The present invention has been made in view of the above problems, and provides an image processing apparatus, an imaging apparatus, an image processing method, and a program capable of performing camera shake correction in consideration of the influence of parallax by a simple calculation. Objective.
上記目的を達成するため、本発明に係る画像処理装置は、
動画を構成する複数の画像の中から1つを指定する指定部と、
前記複数の画像のうちの前記指定部によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得部と、
前記基礎行列取得部によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別部と、
前記基礎行列取得部によって取得された基礎行列のうち、前記選別部によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成部と、
前記複数の画像の中から前記指定部が指定する画像を変えて、前記指定部、前記基礎行列取得部、前記選別部、及び前記仮想特徴点生成部の処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築部と、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化部と、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正部と、
を備えることを特徴とする。
In order to achieve the above object, an image processing apparatus according to the present invention provides:
A designating unit for designating one of a plurality of images constituting the video,
A basic matrix acquisition unit that acquires a basic matrix representing a relationship with the designated image for each of a predetermined number of images other than the image designated by the designation unit of the plurality of images;
A selection unit that selects an image for epipolar projection on the designated image from the predetermined number of images based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit; ,
Among the basic matrices acquired by the basic matrix acquisition unit, based on the basic matrix acquired for the image selected by the selection unit, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation unit that generates a virtual feature point in the specified image by performing an epipolar projection on the specified image;
By changing the image designated by the designation unit from the plurality of images and repeating the processing of the designation unit, the basic matrix acquisition unit, the selection unit, and the virtual feature point generation unit, a virtual feature point trajectory A virtual feature point trajectory construction unit for constructing
A smoothing unit that smoothes the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit and the virtual feature point trajectory smoothed by the smoothing unit. And
It is characterized by providing.
本発明によれば、視差の影響を考慮した手ぶれ補正を簡易な演算により実行できる。 According to the present invention, camera shake correction in consideration of the influence of parallax can be executed by a simple calculation.
以下、本発明の実施形態に係る画像処理装置、撮像装置、及び画像処理方法を、図面を参照しながら詳細に説明する。尚、図中同一又は同等の部分には同じ符号を付す。 Hereinafter, an image processing apparatus, an imaging apparatus, and an image processing method according to embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or equivalent parts are denoted by the same reference numerals.
撮像装置1は、図1に示すように、撮像部10と、データ処理部20と、ユーザインタフェース部30と、を備える。
As illustrated in FIG. 1, the
撮像部10は、光学レンズ11とイメージセンサ12とを含む。撮像部10は、後述する操作部32が受け付けたユーザの操作に従って被写体を撮像することにより、手ぶれ補正の対象となる動画を生成する。生成された動画は、時間的に連続して撮像された(連続する複数のフレームにわたって撮像された)複数の画像を含んでいる。
The
光学レンズ11は、被写体から射出された光を集光するレンズと、焦点、露出、ホワイトバランス等の撮像設定パラメータを調整するための周辺回路と、を備える。
The
イメージセンサ12は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等を備える。イメージセンサ12は、光学レンズ11が光を集光することによって結像した被写体の光学像を取得して、取得した光学像の電圧情報をアナログ/デジタル変換器(図示せず)によりデジタル画像データに変換する。そして、得られたデジタル画像データを後述する外部記憶部23に保存する。
The
データ処理部20は、主記憶部21と、出力部22と、外部記憶部23と、CPU(Central Processing Unit)24と、画像処理装置100と、を含む。
The
主記憶部21は、例えばRAM(Random Access Memory)等を備える。主記憶部21は、CPU24のワークメモリとして機能し、画像データやプログラムを一時的に記憶する。
The
出力部22は、主記憶部21や外部記憶部23に記憶された画像データを読み出し、この画像データに対応するRGB(R(Red、赤)、G(Green、緑)、B(Blue、青))信号を生成して、後述する表示部31に出力する。また、出力部22は、生成したRGB信号をCPU24や画像処理装置100へ供給する。
The
外部記憶部23は、不揮発性メモリ(例えば、フラッシュメモリやハードディスク)を備え、撮像装置1全体の制御に必要な制御プログラムを含む種々のプログラム、種々の固定データ等を固定的に記憶する。外部記憶部23は、記憶しているプログラムやデータをCPU24や後述する画像処理装置100へ供給し、撮像部10が生成した動画を含む種々のデータを固定的に記憶する。
The
CPU24は、外部記憶部23に記憶された制御プログラムを実行することにより撮像装置1全体を制御するとともに、外部記憶部23に記憶された種々のプログラムを実行する。
The CPU 24 controls the
画像処理装置100は、動画に対してエピポーラ転送方式の手ぶれ補正を施す。画像処理装置100は、図2に示すように、機能的に、指定部101、基礎行列取得部102、選別部103、仮想特徴点生成部104、仮想特徴点軌道構築部105、平滑化部106、補正部107、及び評価部108を備える。これら各部は、CPU24の機能によって実現される。
The
尚、画像処理装置100は、通常の画像処理装置と同様に、トリミング機能や画像拡大・縮小機能等を有するが、以下では、本実施形態に特徴的な、エピポーラ転送方式の手ぶれ補正を動画に施す機能を中心に説明する。
The
指定部101は、手ぶれ補正対象の動画を構成する複数の画像の中から1つを指定する。基礎行列取得部102は、手ぶれ補正対象の動画を構成する複数の画像のうちの指定部101によって指定された画像以外の所定数(本実施形態では、10フレーム分)の画像のそれぞれについて、指定部101によって指定された画像との関係を表す基礎行列Fを取得する。
The
具体的には、基礎行列取得部102は、オプティカルフロー取得部102aを含み、オプティカルフロー取得部102aによって取得されたオプティカルフローに基づいて、基礎行列Fを取得する。
Specifically, the basic
オプティカルフロー取得部102aは、オプティカルフロー取得処理を実行することにより、画像間の特徴点piの移動ベクトルによって形成される画像間のオプティカルフローと、特徴点piの複数のフレームに亘る移動の軌跡である特徴点軌道pと、を取得する。
The optical
具体的には、オプティカルフロー取得部102aは、手ぶれ補正対象の動画に含まれる連続する複数のフレームの画像それぞれから互いに対応する特徴点piを抽出する(特徴点piの座標(例えば、同次座標)を取得する)。
Specifically, the optical
以下、特徴点をpi kと表記する。iは特徴点を識別するためのインデックスであり、kは特徴点が含まれている画像がどのフレームの画像かを示すインデックスである。なお、どのフレームの画像であるか特定する必要がない場合は、インデックスkを省略してpiと表記する。 Hereinafter, the feature point is expressed as p i k . i is an index for identifying a feature point, and k is an index indicating which frame an image including the feature point is. If it is not necessary to identify whether an image of which frame is denoted as p i to omit the index k.
三次元空間内の(被写体上の)単一の点が、第Eフレームの画像では特徴点pi Eに投影され、第Fフレームの画像では特徴点pi Fに投影されている場合、2つの特徴点pi E、pi Fは「互いに対応している」と表現する。 When a single point (on the subject) in the three-dimensional space is projected on the feature point p i E in the image of the E-th frame and is projected on the feature point p i F in the image of the F-th frame, 2 The two feature points p i E and p i F are expressed as “corresponding to each other”.
異なる1対のフレームの画像がそれぞれ含む互いに対応する1対の特徴点piの一方を始点として、他方を終点として有するベクトルを、これらの画像間の特徴点piの移動ベクトルという。特徴点piの移動ベクトルは、一方の画像における特徴点piが他方の画像においてどこへ移動しているかを示す。異なるフレームの画像間のオプティカルフローは、少なくとも1つ以上の特徴点piの、これらの画像間における移動ベクトルによって形成され、特徴点piの移動ベクトルの画像内における分布を示す。 A vector having one of a pair of feature points p i corresponding to each other included in images of different pairs of frames as a start point and the other as an end point is referred to as a movement vector of the feature points p i between these images. Moving vector of the feature point p i indicates which feature point p i in one image is moving anywhere in the other image. The optical flow between images of different frames is formed by movement vectors of at least one or more feature points p i between these images, and indicates the distribution of the movement vectors of the feature points p i in the image.
オプティカルフロー取得部102aは、手ぶれ補正対象の動画に含まれる各フレーム中の互いに対応する特徴点pi、すなわち特徴点piの移動ベクトルの始点または終点、の座標を取得することにより、特徴点piの移動ベクトルと、これらの特徴点piの移動ベクトルが形成するオプティカルフローと、を取得する。
The optical
特徴点軌道pは、特徴点piの複数のフレームに亘る軌跡を示す。オプティカルフロー取得部102aは、オプティカルフロー取得処理を実行することにより、手ぶれ補正対象の動画が含む各フレームの画像から互いに対応する特徴点piを抽出し、抽出した特徴点piを追跡することにより特徴点軌道pを取得する。
Feature point trajectory p indicates a track over a plurality of frames of the feature point p i. The optical
なお、オプティカルフロー取得部102aは、任意の公知技術を用いて複数のフレームの画像から互いに対応する特徴点piを抽出する。例えば、KLT法(KLTトラッキング)を用いることができる。KLT法を用いて特徴点piを抽出する技術は、非特許文献1に開示されているとおり、当該技術分野において周知であるため詳細な説明は省略する。
Note that the optical
オプティカルフロー取得部102aが実行するオプティカルフロー取得処理については、後に図9のフローチャートを参照しながら詳細に説明する。
The optical flow acquisition process executed by the optical
オプティカルフロー取得部102aによって取得されたオプティカルフローに基づいて、基礎行列取得部102は、基礎行列Fを取得する。基礎行列Fは、手ぶれ補正前の2つの画像間の幾何的関係(エピポーラ関係)を表す3行3列の行列である。
Based on the optical flow acquired by the optical
図3を参照して、エピポーラ幾何の概念を説明する。異なる時刻に撮像された第Qフレームの画像と第Rフレームの画像は、それぞれ、互いに異なる点C1と点C2とに配置された撮像装置1によって撮像された画像と見なすことができる。すなわち、第Qフレームの画像と第Rフレームの画像は、それぞれ、点C1と点C2とを投影中心とする投影面を表す画像と見なすことができる。点C1と点C2との位置の相違は、手ぶれ等の影響により撮像装置1の位置が変動したことに由来する。三次元空間内の単一の点Pは、第Qフレームの画像中では点m1に投射される一方、第Rフレームの画像中では点m2に投影される。すなわち、点m1と点m2は互いに対応する点である。
The concept of epipolar geometry will be described with reference to FIG. The Q-th frame image and the R-th frame image captured at different times can be regarded as images captured by the
三次元空間内の点Pと点C1とを結ぶ直線は、第Qフレームの画像上では点m1に投影される一方、第Rフレームの画像上では、点P、点C1、及び点C2を通る平面(エピポーラ面)と第Rフレームの画像との交線である線L1として投影される。線L1は、第Qフレームの画像中の点m1が第Rフレームの画像に投影するエピポーラ線である。同様に、線L2は、第Rフレームの画像中の点m2が第Qフレームの画像に投影するエピポーラ線である。 A straight line connecting the point P and the point C1 in the three-dimensional space is projected to the point m1 on the Qth frame image, and passes through the point P, the point C1, and the point C2 on the Rth frame image. Projected as a line L1 that is an intersection line between the plane (epipolar plane) and the image of the R-th frame. The line L1 is an epipolar line projected from the point m1 in the Qth frame image onto the Rth frame image. Similarly, the line L2 is an epipolar line projected from the point m2 in the R-th frame image onto the Q-th frame image.
第Qフレームの画像中の任意の点qが第Rフレームの画像に投影するエピポーラ線LQ、Rは、次の式(1)により表される。ここで、FQ,Rは、第Qフレームの画像と第Rフレームの画像との間のエピポーラ関係を表す基礎行列である。FQ,Rは、第Qフレームの画像中の任意の点m1と、点m1に対応する第Rフレームの画像中の点m2と、を用いて次の式(2)で表される。
式(2)から明らかなように、基礎行列Fは、f11からf32までの8個の未知数を有するため、少なくとも8組の対応する点m1、m2に基づいて求めることができる。すなわち、8箇所の対応点が与えられれば基礎行列Fを算出することができる。
As is apparent from the equation (2), the basic matrix F has eight unknowns from f 11 to f 32, and therefore can be obtained based on at least eight sets of
基礎行列取得部102は、指定部101によって指定された画像と指定部101によって指定された画像の直前10フレーム分の画像とからそれぞれオプティカルフロー取得部102aが抽出した8組の互いに対応する特徴点piの座標に基づき、標準的な8ポイントアルゴリズムと誤差を最小化するためのRANSAC(RANdom SAmple Consensus)法とを用いて基礎行列Fを取得する。8ポイントアルゴリズムとRANSAC法を用いて基礎行列Fを取得する方法は、非特許文献1に開示されているとおり、当該技術分野において周知であるため詳細な説明は省略する。
The basic
基礎行列取得部102が実行する基礎行列取得処理については、後に図11のフローチャートを参照しながら詳細に説明する。
The basic matrix acquisition process executed by the basic
選別部103は、基礎行列取得部102によって取得された基礎行列に基づいて、指定部101によって指定された画像より前の所定数(本実施形態では、10フレーム分)の画像の中から、指定された画像にエピポーラ投影するための画像を選別する。具体的には、選別部103は、画像の選別のために、評価部108による基礎行列の類似度の評価結果を参酌する。
Based on the basic matrix acquired by the basic
基礎行列の類似度とは、異なる2つの基礎行列が類似しているか否かの度合いを示す指標である。例えば、第Qフレームの画像と第Rフレームの画像との間のエピポーラ関係を表す基礎行列FQ,Rと、第Qフレームの画像と第Sフレームの画像との間のエピポーラ関係を表す基礎行列FQ,Sと、が類似している場合、第Rフレームの画像と第Sフレームの画像とが類似していることを意味する。ここで、異なる2フレームの画像が互いに類似している場合、これら2つの画像中の仮想特徴点viの座標はほぼ同じである。そのため、これら2つの画像中の仮想特徴点viがそれぞれ投影する2本のエピポーラ線はほぼ平行であり、これらのエピポーラ線が与える交点(エピポーラ交点)は信頼性に欠ける。 The similarity between basic matrices is an index indicating the degree of whether two different basic matrices are similar. For example, a basic matrix F Q, R representing the epipolar relationship between the Q-th frame image and the R-th frame image, and a basic matrix representing the epipolar relationship between the Q-th frame image and the S-th frame image. When FQ and S are similar, it means that the image of the Rth frame and the image of the Sth frame are similar. Here, if the image of two different frames are similar to each other, the coordinates of the virtual feature point v i in the two images are similar. Therefore, the two epipolar lines projected by the virtual feature points v i in these two images are almost parallel, and the intersection (epipolar intersection) given by these epipolar lines is not reliable.
そこで、選別部103は、類似している複数の基礎行列を発見した場合、そのうち何れか1つの基礎行列のみを、エピポーラ投影に用いる基礎行列として選別する。すなわち、選別部103は、評価部による評価の結果、所定数の画像の中に互いに類似している2以上の画像がある場合、該2以上の画像のうちのいずれか1つ以外の画像を、指定部101によって指定された画像にエピポーラ投影するための画像から除外する。これにより、類似度が高い複数の画像が含む仮想特徴点viからそれぞれエピポーラ線が投影され、信頼性に欠けるエピポーラ交点が生成されることを防止することができる。
Therefore, when a plurality of similar basic matrices are found, the
選別部103が実行する選別処理については、後に図12のフローチャートを参照しながら詳細に説明する。
The sorting process executed by the
評価部108は、指定部101によって指定された画像より前の所定数の画像のそれぞれについて基礎行列取得部102によって取得された基礎行列の類似度を評価する。具体的には、評価部108は、異なる2つの基礎行列の間において、一方の基礎行列に含まれる各要素と、他方の基礎行列に含まれる各要素と、を比較することにより、この2つの基礎行列の類似度を評価する。類似度は、2つの基礎行列に含まれる要素同士を比較した結果を様々に用いて、取得することができる。
The
例えば、評価部108は、異なる2つの基礎行列の間において、一方の基礎行列を正規化した行列に含まれる各要素と、他方の基礎行列を正規化した行列における対応する要素と、の差分をとった値がいずれも閾値以下である場合に、この2つの基礎行列が類似していると評価する。
For example, the
すなわち、基礎行列は3行3列の行列であって9つの要素を有するため、評価部108は、比較対象の一方の基礎行列に含まれる9つの要素と他方の基礎行列に含まれる9つの要素との同じ位置にある要素同士での差分をとる。そして、得られた9つの差分値を、それぞれ予め定められた9つの閾値と比較する。これは、比較対象の一方の基礎行列と他方の基礎行列との差分をとった3行3列の差分行列を計算し、得られた差分行列を、予め定められた9つの閾値を要素として有する3行3列の閾行列と比較することと同じである。9つの差分値と比較する9つの閾値は、全て同じ値であってもよいし、互いに異なってもよい。比較の結果、9つの差分値全てが閾値以下である場合に、評価部108は、この2つの基礎行列が類似していると評価する。
That is, since the base matrix is a matrix of 3 rows and 3 columns and has nine elements, the
或いは、評価部108は、異なる2つの基礎行列の間において、一方の基礎行列を正規化した行列に含まれる各要素と、他方の基礎行列を正規化した行列における対応する要素と、の差分の2乗和をとった値が閾値以下である場合に、この2つの基礎行列が類似していると評価してもよい。
Alternatively, the
この場合、評価部108は、比較対象の一方の基礎行列に含まれる9つの要素と他方の基礎行列に含まれる9つの要素との同じ位置にある要素同士での差分をとり、得られた9つの差分値のそれぞれを2乗して加算する。そして、得られた加算値を予め定められた1つの閾値と比較して、加算値が閾値以下である場合に、評価部108は、この2つの基礎行列が類似していると評価する。
In this case, the
このように、評価部108は、指定部101によって指定された画像より前の所定数の画像のそれぞれについて取得された所定数の基礎行列の中に、互いに類似している複数の基礎行列があるか否かを評価する。そして、選別部103は、評価部108による評価結果に基づいて、所定数の画像の中から指定された画像にエピポーラ投影するための画像を選別する。
As described above, the
仮想特徴点生成部104は、仮想特徴点生成処理を実行し、基礎行列取得部102によって取得された基礎行列のうち、選別部103によって選別された画像について取得された基礎行列に基づいて、選別部103によって選別された画像内の互いに対応する特徴点pi又は仮想特徴点viを指定部101により指定された画像にエピポーラ投影することにより、指定された画像内における仮想特徴点viを生成する。
The virtual feature
具体的には、仮想特徴点生成部104は、画像間のエピポーラ関係を表す基礎行列Fに基づいて、対応点を生成するエピポーラ転送という方法により仮想特徴点viを生成する。
Specifically, the virtual feature
図4を参照して、エピポーラ転送の概念を説明する。第Xフレームの画像と第Yフレームの画像とにおける互いに対応する点m3、m4がそれぞれ第Zフレームの画像に投影するエピポーラ線L3、L4は、第Zフレームの画像中の、点m3及び点m4に対応する点m5で交わる。エピポーラ線L3、L4及びその交点である点m5は、画像間のエピポーラ関係を表す基礎行列FX、Z、FY、Zに基づいて算出できる。すなわち、第Zフレーム中の対応点である点m5を、画像間のエピポーラ関係を表す基礎行列Fに基づいて生成できる。 The concept of epipolar transfer will be described with reference to FIG. The epipolar lines L3 and L4 that the corresponding points m3 and m4 in the image of the Xth frame and the image of the Yth frame respectively project on the image of the Zth frame are the points m3 and m4 in the image of the Zth frame. At the point m5 corresponding to. The epipolar lines L3 and L4 and the intersection m5 can be calculated based on the basic matrices F X, Z , F Y and Z representing the epipolar relationship between images. That is, the point m5 which is a corresponding point in the Zth frame can be generated based on the basic matrix F representing the epipolar relationship between images.
仮想特徴点生成部104は、このエピポーラ転送を用いて、指定された画像内における仮想特徴点viを生成する。
Virtual feature
図4に示すように、少なくとも2本のエピポーラ線があればその交点を仮想特徴点viとして取得できるものの、実際にはノイズやトラッキングエラー、モデリングエラー等の影響により交点の信頼性は損なわれている。そこで、仮想特徴点生成部104は、最大10本のエピポーラ線のうち組み合わせ可能な異なる2本のエピポーラ線の交点(最大で10C2=45個の交点)を求め、求めた交点の座標の平均を求めることにより、より正確な特徴点viを取得する。
As shown in FIG. 4, although the ability to retrieve the intersection if at least two epipolar lines as a virtual feature point v i, actually noise and tracking error, the intersection of the reliability due to the influence of such modeling error impaired ing. Therefore, the virtual feature
具体的には、図5に示すように、仮想特徴点生成部104は、第tフレームの画像に、この画像の直前に撮像された連続する10フレーム分の画像(第(t−10)フレームから第(t−1)フレームまでの過去10フレーム)に含まれる仮想特徴点vi t−1〜vi t−10がそれぞれ投影する10本のエピポーラ線を、基礎行列取得部102によって取得された基礎行列Ft、t−1〜Ft、t−10に基づいて求める。そして、求めた10本のエピポーラ線の交点の平均を、第tフレームの画像中の仮想特徴点vi tとして取得する。
Specifically, as illustrated in FIG. 5, the virtual feature
仮想特徴点生成部104が実行する仮想特徴点生成処理については、後に図14のフローチャートを参照しながら詳細に説明する。
The virtual feature point generation processing executed by the virtual feature
仮想特徴点軌道構築部105は、手ぶれ補正対象の動画を構成する複数の画像の中から指定部101が指定する画像を変えて、指定部101、基礎行列取得部102、選別部103、及び仮想特徴点生成部104の処理を繰り返すことにより、仮想特徴点軌道vを構築する。
The virtual feature point
仮想特徴点軌道vは、仮想特徴点viの複数のフレームに亘る軌跡である。仮想特徴点軌道構築部105は、仮想特徴点生成部104に、手ぶれ補正対象の動画を構成する各フレームの画像において仮想特徴点viを生成させることにより仮想特徴点viを時間的に追跡し(複数のフレームに亘って追跡し)、仮想特徴点軌道vを構築する。
Virtual feature point trajectory v is a trajectory over a plurality of frames of the virtual feature point v i. Virtual feature point
仮想特徴点軌道vは、図6に示すように、手ぶれ補正前の(手ぶれの影響を受けた)撮像装置1の動きを表している。
As shown in FIG. 6, the virtual feature point trajectory v represents the movement of the
特徴点軌道pが画像からKLT法を用いて抽出された特徴点piによって構成されるのに対し、仮想特徴点軌道vはエピポーラ転送により生成された仮想特徴点viによって構成される。 While the feature point trajectory p is constituted by the feature point p i extracted with KLT method from the image, the virtual feature point trajectory v is constituted by the virtual feature point v i generated by the epipolar transfer.
三次元空間内の被写体の一部分が、あるフレームの画像において物体の影に隠れてしまったり、撮像装置1の視野から外れてしまったりした場合、この部分に含まれる点の、当該フレームの画像における投影点である特徴点piをKLT法により抽出することはできない。しかし、このフレームの画像内の仮想特徴点viは、過去のフレームの画像内の対応する仮想特徴点viをエピポーラ転送することにより生成できる。また、KLT法ではトラッキングエラーとなり特徴点piが抽出できない場合でも、エピポーラ転送によれば仮想特徴点viを生成することができる。
When a part of the subject in the three-dimensional space is hidden in the shadow of the object in the image of a certain frame or deviated from the field of view of the
このため、仮想特徴点軌道vは、特徴点軌道pよりも長く(多くのフレームにわたって)連続している。 For this reason, the virtual feature point trajectory v is longer (over many frames) than the feature point trajectory p.
仮想特徴点軌道構築部105が実行する仮想特徴点軌道vの構築処理については、後に図8のフローチャートを参照しながら詳細に説明する。
The construction process of the virtual feature point trajectory v executed by the virtual feature point
平滑化部106は、仮想特徴点軌道構築部105によって構築された仮想特徴点軌道vを時間方向に平滑化することにより、平滑化された仮想特徴点軌道〜vを取得する。
The smoothing
具体的には、平滑化部106は、下記の式(3)を用い、仮想特徴点軌道vを構成する仮想特徴点viそれぞれの座標とガウシアンカーネルとの畳み込みを作ることにより、平滑化された仮想特徴点軌道〜vを構成する手ぶれ補正後の仮想特徴点〜vi tの座標を取得する。ここで、gは下記の式(4)で表されるガウシアンカーネルである。
本実施形態では、σ=50のガウシアンカーネルを用いて仮想特徴点軌道vを平滑化する。 In this embodiment, the virtual feature point trajectory v is smoothed using a Gaussian kernel with σ = 50.
仮想特徴点軌道vが手ぶれ補正前の(手ぶれの影響を受けた)撮像装置1の動きを表していたのに対し、平滑化された仮想特徴点軌道〜vは、図6に示すように、手ぶれ補正後の(手ぶれの影響を除去した)撮像装置1の動きを表す。
While the virtual feature point trajectory v represents the movement of the
具体的には図6に示すように、手ぶれ補正後の動画を構成する各フレームの画像は、平滑化された仮想特徴点軌道〜vによって定義される。すなわち、手ぶれ補正前の動画を構成する各フレームの画像と手ぶれ補正後の動画を構成する各フレームの画像との間の関係は、仮想特徴点軌道vと平滑化された仮想特徴点軌道〜vとの間の関係によって定義される。 Specifically, as shown in FIG. 6, the image of each frame constituting the moving image after camera shake correction is defined by the smoothed virtual feature point trajectory ~ v. That is, the relationship between the image of each frame composing the moving image before camera shake correction and the image of each frame composing the moving image after camera shake correction is as follows: virtual feature point trajectory v and smoothed virtual feature point trajectory ~ v Defined by the relationship between
補正部107は、仮想特徴点軌道構築部105によって構築された仮想特徴点軌道vと、平滑化部106によって平滑化された仮想特徴点軌道〜vと、の間の関係に基づいて、手ぶれ補正対象の動画を構成する複数の画像それぞれを補正する。
The correcting
具体的には、補正部107は、手ぶれ補正前の動画が含む各フレームの画像に対し、手ぶれ補正前の画像が含む特徴点piを手ぶれ補正後の画像が含む手ぶれ補正後の特徴点〜piへ移すような射影変換を施すことにより、手ぶれ補正を実行する。
Specifically, the
例えば、補正部107は、手ぶれ補正前の動画を構成する各フレームの画像に対し、各フレームの画像における任意の点(x、y)を次の式(5)を満たす点(x’、y’)へ移す射影変換を施すことにより、手ぶれ補正後の画像を取得する。ここで、式(5)中の射影変換パラメータa〜hは、下記の式(6)を用いて求めることができる。
式(6)から明らかなように、射影変換パラメータa〜hは、少なくとも4組の対応点(x1,y1)と(x1’、y1’)〜(x4,y4)と(x4’とy4’)が与えられれば求めることができる。補正部107は、手ぶれ補正前の各フレームの画像に含まれる特徴点piと、これに対応する手ぶれ補正後のフレームの画像に含まれる手ぶれ補正後の特徴点〜piと、を式(6)に代入することにより、射影変換パラメータa〜hを取得し、射影変換を行う。
As is clear from the equation (6), the projective transformation parameters a to h include at least four pairs of corresponding points (x1, y1), (x1 ′, y1 ′) to (x4, y4), (x4 ′ and y4 ′). ) Can be obtained. Correcting
手ぶれ補正後の画像が手ぶれ補正後の撮像装置1の動きを表す平滑化された仮想特徴点軌道〜vによって定義されるため、手ぶれ補正後の特徴点〜piは、仮想特徴点軌道vと平滑化された仮想特徴点軌道〜vとの間の関係に基づいて取得することができる。
Since the image after camera shake correction is defined by the virtual feature point trajectory ~v smoothed representing the motion of the
具体的には、図6に示すように、手ぶれ補正前の画像と手ぶれ補正後の画像との間のエピポーラ関係を表す基礎行列〜Fが、仮想特徴点軌道vと平滑化された仮想特徴点軌道〜vとの間の関係に基づいて取得される。そして、図7に示すように、手ぶれ補正後の各フレームの画像に、前後5フレーム分の手ぶれ補正前の画像に含まれる特徴点piを、取得された基礎行列〜Fに基づいてエピポーラ転送することにより、手ぶれ補正後の特徴点〜piが生成される。 Specifically, as shown in FIG. 6, the basic matrix to F representing the epipolar relationship between the image before camera shake correction and the image after camera shake correction are virtual feature points smoothed with the virtual feature point trajectory v. Acquired based on the relationship between the trajectories ~ v. Then, as shown in FIG. 7, the image of each frame after camera shake compensation, a feature point p i included before and after 5 frames of image stabilization previous image, on the basis of the obtained fundamental matrix ~F epipolar transfer by feature points ~p i after camera shake correction is generated.
このように、補正部107は、仮想特徴点軌道vと平滑化された仮想特徴点軌道〜vとの間の関係に基づいて求めた射影変換パラメータを用いて射影変換を行うことにより、手ぶれ補正対象の動画を構成する各フレームの画像に手ぶれ補正を施す。上述したとおり、エピポーラ転送を用いて構築される仮想特徴点軌道vは長く(多くのフレームにわたって)連続しているため、大規模なフィルタを適用し(σ=50の大きなガウシアンカーネルを用いて時間方向に平滑化し)、手ぶれ補正後の画像を定義することができる。
As described above, the
図1に戻って、ユーザインタフェース部30は、表示部31と、操作部32と、外部インタフェース33と、を含む。
Returning to FIG. 1, the
表示部31は、例えばLCD(Liquid Crystal Displey)やCRT(Cathode Ray Tube)、有機EL(Electro Luminescence)ディスプレイ等を備え、出力部22から供給されたRGB信号に基づいて、撮像部10により生成され、外部記憶部23により記憶されている手ぶれ補正対象の動画、画像処理装置100が手ぶれ補正対象の動画に手ぶれ補正処理を施すことにより生成した動画等を含む種々の動画像を表示する。
The
操作部32は、ユーザからの操作指示を受け付ける。操作部32は、撮像装置1の電源スイッチ、シャッタボタン、撮像装置1の種々の機能を選択するためのボタン等、各種の操作ボタンを備える。操作部32は、ユーザから操作指示を受け付けると、受け付けた指示情報を撮像部10やデータ処理部20のCPU24等に供給する。
The
なお、表示部31と操作部32とは、互いに重畳して配置されたいわゆるタッチパネルによって構成されるものであってもよい。
In addition, the
外部インタフェース33は、撮像装置1の外部の機器とデータをやり取りするためのインタフェースである。例えば、外部インタフェース33は、画像処理装置100が手ぶれ補正対象の動画に手ぶれ補正処理を施すことによって生成した動画を、USB(Universal Serial Bus)規格のデータに変換して、USBケーブルを介して外部の機器との間でデータを送受信する。
The
以下、撮像装置1及び画像処理装置100が動画に手ぶれ補正を施す動作の詳細を、図8〜図15を参照しながら説明する。
Hereinafter, details of the operation of the
撮像装置1が備える撮像部10は、予め、被写体を撮像することにより、手ぶれ補正対象の動画を生成している。当該動画は、時間的に連続して撮像された複数フレームの画像を含んでいる。生成された動画は、外部記憶部23によって記憶される。
The
ユーザは、動画の手ぶれを補正することを所望する場合、操作部32を操作することにより、手ぶれ補正対象の動画のデータを主記憶部21に展開する。そして、撮像装置1が備える複数の動作モードの1つである「手ぶれ補正モード」を選択する。
When the user desires to correct the camera shake of the moving image, the user operates the
操作部32が、ユーザによる「手ぶれ補正モード」を選択する操作を受け付けると、CPU24は、特徴点抽出プログラムや画像処理プログラムを含む、図8のフローチャートに示す手ぶれ補正処理を実行するためのプログラムを外部記憶部23から読み出し、主記憶部21に展開する。
When the
このような状態において、ユーザが、操作部32を操作して手ぶれ補正の開始を指示すると、画像処理装置100が、図8のフローチャートに示す手ぶれ補正処理を開始する。
In such a state, when the user operates the
手ぶれ補正処理を開始すると、まず、指定部101が、手ぶれ補正開始フレームを指定する(ステップS1)。手ぶれ補正開始フレームは、手ぶれ補正対象の動画に含まれる複数のフレームのうち最初の(撮像時刻が最も古い)フレームである。以下、指定部101により指定されたフレームを、第tフレームと表記する。
When the camera shake correction process is started, the
オプティカルフロー取得部102aは、オプティカルフロー取得処理を実行する(ステップS2)。これにより、オプティカルフロー取得部102aは、第tフレームより以前の10フレーム(第(t−1)フレーム〜第(t−10)フレーム)分の画像それぞれから互いに対応する特徴点piを抽出する。そして、画像間の特徴点piの移動ベクトルによって形成される画像間のオプティカルフローを取得すると共に、特徴点軌道pを取得する。
The optical
以下、ステップS2のオプティカルフロー取得処理の詳細を、図9のフローチャートを参照しながら説明する。 Details of the optical flow acquisition process in step S2 will be described below with reference to the flowchart of FIG.
ステップS2のオプティカルフロー取得処理を開始すると、オプティカルフロー取得部102aは、まず、図8のフローチャートのステップS1において指定部101により指定されたフレーム(第tフレーム)を第Aフレームとして設定し(ステップS201)、第(t−10)フレーム(第tフレームの10フレーム前のフレーム)を第Bフレームとして設定する(ステップS202)。
When the optical flow acquisition process of step S2 is started, the optical
次に、オプティカルフロー取得部102aは、第Aフレームの画像と第Bフレームの画像との間のオプティカルフローが、以前に実行されたオプティカルフロー取得処理によって取得済みであるか否かを判別する(ステップS203)。
Next, the optical
取得済みであると判別すると(ステップS203;YES)、処理はステップS208へ移る。これにより、既に取得したオプティカルフローを重複して取得することを防止できる。 If it is determined that it has been acquired (step S203; YES), the process proceeds to step S208. Thereby, it is possible to prevent the already acquired optical flows from being acquired in duplicate.
オプティカルフローが未取得であると判別すると(ステップS203;NO)、オプティカルフロー取得部102aは、第Aフレームの画像から、KLT法を用いて特徴点piを抽出する(ステップS204)。
When optical flows is determined to be in non-acquired (step S203; NO), the optical
そして、オプティカルフロー取得部102aは、第Bフレームの画像から、ステップS204で第Aフレームの画像から抽出した各特徴点piに対応する特徴点piを、KLT法を用いて抽出する(ステップS205)。
Then, the optical
ステップS204及びステップS205で互いに対応する特徴点piを抽出すると、オプティカルフロー取得部102aは、抽出した特徴点pi間のベクトル(特徴点piの移動ベクトル)を取得することにより、これらの移動ベクトルによって形成される、第Aフレームの画像と第Bフレームの画像との間のオプティカルフローを取得する(ステップS206)。また、オプティカルフロー取得部102aは、ステップS204及びステップS205で抽出した特徴点piによって構成される特徴点軌道pを作成する(ステップS207)。
When the feature points p i corresponding to each other are extracted in step S204 and step S205, the optical
オプティカルフローと特徴点軌道pとを取得した後、オプティカルフロー取得部102aは、値Bを1だけインクリメントする(ステップS208)。すなわち、オプティカルフロー取得部102aは、ステップS203〜S207の処理対象となる第Bフレームを、次の(次に撮像時刻が新しい)フレームに移す。例えば、直前に実行したステップS203〜S207の処理において、第(t−10)フレームが第Bフレームとして設定されていた場合、ステップS208において、第(t−10)フレームの次のフレームである第(t−9)フレームが、新たに第Bフレームとして設定される。
After acquiring the optical flow and the feature point trajectory p, the optical
値Bをインクリメントした後、オプティカルフロー取得部102aは、インクリメントされた後の値Bが値Aに一致するか否か(第Bフレームと第Aフレームとが同一であるか否か)を判別する(ステップS209)。
After incrementing the value B, the optical
インクリメント後の値Bが値Aに一致しない(第Bフレームと第Aフレームとが同一ではない)と判別すると(ステップS209;NO)、処理はステップS203へ戻る。 If it is determined that the incremented value B does not match the value A (the Bth frame and the Ath frame are not the same) (step S209; NO), the process returns to step S203.
すなわち、オプティカルフロー取得部102aは、値Bを1ずつインクリメントしながら、インクリメント後の値Bが値Aに一致する(第Bフレームと第Aフレームとが同一である)と判別するまで(ステップS209においてYESと判別されるまで)ステップS203〜S208の処理を繰り返す。これにより、特徴点軌道pを取得すると共に、図10に示すように、第Aフレームの画像と、第tフレーム直前の10フレームのうち第Aフレームより以前のフレームの画像と、の間のオプティカルフローを取得する。
That is, the optical
最終的に、インクリメント後の値Bが値Aに一致する(第Bフレームと第Aフレームとが同一である)と判別すると(ステップS209;YES)、オプティカルフロー取得部102aは、値Aを1だけディクリメントする(ステップS210)。すなわち、ステップS202〜S209の処理対象となる第Aフレームを、直前の(次に撮像時刻が古い)フレームに移す。例えば、直前に実行したステップS202〜S209の処理において、第tフレームが第Aフレームとして設定されていた場合、ステップS210において、第tフレームの直前のフレームである第(t−1)フレームが、新たに第Aフレームとして設定される。
When it is finally determined that the incremented value B matches the value A (the B-th frame and the A-th frame are the same) (step S209; YES), the optical
ステップS210で値Aを1だけディクリメントした後、オプティカルフロー取得部102aは、ディクリメント後の値Aが値(t−10)に一致するか否かを判別する(ステップS211)。
After decrementing the value A by 1 in step S210, the optical
ディクリメント後の値Aが値(t−10)に一致しないと判別すると(ステップS211;NO)、処理はステップS202へ戻る。 If it is determined that the decremented value A does not match the value (t−10) (step S211; NO), the process returns to step S202.
すなわち、オプティカルフロー取得部102aは、値Aを1ずつディクリメントしながら、ディクリメント後の値Aが値(t−10)に一致すると判別するまで(ステップS211においてYESと判別するまで)、ステップS202〜S210の処理を繰り返す。これにより、特徴点軌道pを取得すると共に、図10に示すように、第tフレーム及び第tフレームの直前の10フレームそれぞれについて、各フレームの画像と、各フレームより以前のフレームの画像と、の間のオプティカルフローを取得する。
That is, the optical
ディクリメント後の値Aが値(t−10)に一致すると判別すると(ステップS211;YES)、オプティカルフロー取得部102aは、オプティカルフロー取得処理を終了する。
When it is determined that the decremented value A matches the value (t-10) (step S211; YES), the optical
図8のフローチャートに戻って、ステップS2のオプティカルフロー取得処理終了後、基礎行列取得部102は、基礎行列取得処理を実行する(ステップS3)。
Returning to the flowchart of FIG. 8, after the optical flow acquisition process of step S <b> 2 ends, the basic
以下、ステップS3の基礎行列取得処理の詳細を、図11のフローチャートを参照しながら説明する。 Hereinafter, the details of the basic matrix acquisition process of step S3 will be described with reference to the flowchart of FIG.
ステップS3の基礎行列取得処理を開始すると、基礎行列取得部102は、まず、第(t−10)フレーム(第tフレームより10フレーム前のフレーム)を第Gフレームとして設定する(ステップS301)。
When the basic matrix acquisition process in step S3 is started, the basic
次に、基礎行列取得部102は、オプティカルフロー取得処理により取得された、第tフレームの画像と第Gフレームの画像との間のオプティカルフローに基づいて、第Gフレームの画像と第tフレームの画像との間のエピポーラ関係を表す基礎行列FG,tを取得する(ステップS302)。
Next, based on the optical flow between the t-th frame image and the G-th frame image acquired by the optical flow acquisition process, the basic
具体的には、基礎行列取得部102は、第Gフレームの画像と第tフレームの画像との間のオプティカルフローを形成する特徴点piの移動ベクトルのうち、複数の特徴点piの移動ベクトルの始点と終点の座標(例えば、同次座標)を対応点として用い、8ポイントアルゴリズムとRANSAC法により上述の式(2)で表される基礎行列Fの各パラメータを求める。
Specifically, the basic
ステップS302において基礎行列FG,tを取得した後、基礎行列取得部102は、値Gを1だけインクリメントし(ステップS303)、インクリメント後の値Gが値tに一致するか否かを判別する(ステップS304)。一致しないと判別された場合(ステップS304;NO)、処理はステップS302へ戻る。
After acquiring the basic matrix F G, t in step S302, the basic
すなわち、基礎行列取得部102は、値Gを1ずつインクリメントしながら、インクリメント後の値Gが値tに一致すると判別されるまで(ステップS304においてYESと判別されるまで)、ステップS302〜S303の処理を繰り返す。これにより、指定部101によって指定された第tフレームの画像と、指定されたフレームの画像の直前10フレーム分の画像それぞれと、の間のエピポーラ関係を表す基礎行列Ft-10,t〜Ft-1,tを取得する。
That is, the basic
インクリメント後の値Gが値tに一致すると判別した場合(ステップS304;YES)、基礎行列取得部102は、基礎行列取得処理を終了する。
When it is determined that the incremented value G matches the value t (step S304; YES), the basic
図8のフローチャートに戻って、ステップS3の基礎行列取得処理が終了した後、選別部103は、フレーム選別処理を実行する(ステップS4)。
Returning to the flowchart of FIG. 8, after the basic matrix acquisition process in step S3 is completed, the
以下、ステップS4のフレーム選別処理の詳細について、図12のフローチャートを参照しながら説明する。 Details of the frame selection process in step S4 will be described below with reference to the flowchart of FIG.
ステップS4のフレーム選別処理を開始すると、選別部103は、指定部101が指定したフレーム(第tフレーム)の10フレーム前のフレーム(第(t−10)フレーム)を第Cフレームとして設定する(ステップS401)。
When the frame selection process in step S4 is started, the
次に、評価部108が、基礎行列取得処理によって取得された基礎行列のうち、第Cフレームの画像と第tフレームの画像と間の関係を表す基礎行列FC,tと、第tフレームの画像との関係を表す他の基礎行列FC+1,t〜Ft-1,tとの類似性を評価する(ステップS402)。
Next, the
具体的には図13に示すように、評価部108は、第Cフレームの画像と第tフレームの画像との間の関係を表す基礎行列FC,tと、第tフレームより以前の10フレームのうち第Cフレームより後に撮像された(t−C−1)個の各フレームの画像と第tフレームの画像との間の関係を表す基礎行列FC+1,t〜Ft-1,tと、が類似しているか否かを順次判別していく。そして、基礎行列FC+1,t〜Ft-1,tの中に、基礎行列FC,tと類似しているものがあるか否かを評価する。評価部108による基礎行列の類似度の評価は、具体的には上述したように、異なる2つの基礎行列の間において、一方の基礎行列に含まれる各要素と、他方の基礎行列に含まれる各要素と、を比較することによって得られる。
Specifically, as illustrated in FIG. 13, the
類似性の評価の結果、選別部103は、基礎行列FC,tと類似している基礎行列があるか否かを判別する(ステップS403)。判別の結果、基礎行列FC,tと類似している基礎行列がある場合(ステップS403;YES)、選別部103は、第Cフレームを、第tフレームの画像へのエピポーラ転送をスキップするフレームとして、RAM等のメモリに一時的に保存する(ステップS404)。
As a result of the similarity evaluation, the
一方、基礎行列FC,tと類似している基礎行列がない場合(ステップS403;NO)、選別部103は、第Cフレームはスキップするフレームではないと判別する。そのため、ステップS404の処理を実行せず、第Cフレームをスキップするフレームとしては保存しない。
On the other hand, when there is no basic matrix similar to the basic matrix F C, t (step S403; NO), the
このように第Cフレームをスキップするか否かを決定すると、選別部103は、値Cを1だけインリメントする(ステップS405)。そして、インクリメント後の値Cが値(t−1)に一致するか否かを判別する(ステップS406)。一致しないと判別した場合(ステップS406;NO)、処理はステップS402へ戻る。
When determining whether or not to skip the C-th frame in this way, the selecting
すなわち、選別部103は、値Cを1ずつインクリメントしながら、インクリメント後の値Cが値(t−1)に達するまで、ステップS402〜S405の処理を繰り返す。これにより、図13に示すように、第tフレームの直前の10フレーム分それぞれについて、第Cフレームより後に撮像された各フレームの画像と第tフレームの画像との間の関係を表す基礎行列FC+1,t〜Ft-1,tと、が類似しているか否かを順次判別していく。そして、基礎行列FC+1,t〜Ft-1,tの中に基礎行列FC,tと類似しているものがある場合に、第Cフレームを、第tフレームの画像へのエピポーラ転送をスキップするフレームとして保存していく。
That is, the
最終的に、値Cが値(t−1)に一致すると(ステップS406;YES)、第Cフレームが第(t−1)フレームにまで達したため、基礎行列FC,tとの類似度を評価する基礎行列がなくなる。そのため、選別部103は、フレーム選別処理を終了する。
Finally, when the value C matches the value (t−1) (step S406; YES), since the Cth frame has reached the (t−1) th frame, the similarity with the basic matrix F C, t is determined. There is no basis matrix to evaluate. Therefore, the
図8のフローチャートに戻って、ステップS4のフレーム選別処理が終了した後、仮想特徴点生成部104は、仮想特徴点生成処理を実行する(ステップS5)。これにより、基礎行列取得処理によって取得された基礎行列Fに基づいて、ステップS1で指定部101によって指定されたフレーム(第tフレーム)より前の10フレーム分の画像内の互いに対応する仮想特徴点viを第tフレームの画像にエピポーラ転送することにより、第tフレームの画像内における仮想特徴点viを生成する。
Returning to the flowchart of FIG. 8, after the frame selection process in step S4 is completed, the virtual feature
以下、ステップS5の仮想特徴点生成処理の詳細について、図14のフローチャートを参照しながら説明する。 Hereinafter, the details of the virtual feature point generation processing in step S5 will be described with reference to the flowchart of FIG.
仮想特徴点生成処理においては、第tフレームより前の10フレーム分の画像が含む仮想特徴点viが第tフレームへ投影するエピポーラ線を求める必要がある。しかし、手ぶれ補正処理の初期段階においては、エピポーラ線の投影元となるべき過去のフレームの画像に含まれる仮想特徴点viが未だ生成されていないことがある。そこで、仮想特徴点生成処理を開始すると、仮想特徴点生成部104は、まず、仮想特徴点軌道準備処理を実行する(ステップS501)。
In the virtual feature point generation process is a virtual feature point v i which image contains 10 frames before the t-th frame is necessary to obtain the epipolar line to be projected to the t frame. However, in the initial stage of the image stabilization process, it is the virtual feature point v i included in the image of the past frame to be the projection source epipolar line is not generated yet. Thus, when the virtual feature point generation process is started, the virtual feature
以下、ステップS501の仮想特徴点軌道準備処理の詳細について、図15のフローチャートを参照しながら説明する。 Details of the virtual feature point trajectory preparation process in step S501 will be described below with reference to the flowchart of FIG.
仮想特徴点軌道準備処理を開始すると、仮想特徴点生成部104は、まず、第tフレームより以前のフレームにおいて構築された仮想特徴点軌道vのうち何れか1つを選択する(ステップS501a)。
When the virtual feature point trajectory preparation process is started, the virtual feature
そして、仮想特徴点生成部104は、選択した仮想特徴点軌道vが第(t−1)フレームまで伸びているか否かを判別する(ステップS501b)。すなわち、仮想特徴点生成部104は、選択した仮想特徴点軌道vが第(t−1)フレームより前のフレームから、第(t−1)フレームまで連続しているか否かを判別する。
Then, the virtual feature
仮想特徴点軌道vが第(t−1)フレームまで伸びていると判別した場合(ステップS501b;YES)、仮想特徴点生成部104は、選択した仮想特徴点軌道vを仮想特徴点生成のための初期軌道として用いることができるので、処理はステップS501dへ移る。
If it is determined that the virtual feature point trajectory v extends to the (t−1) th frame (step S501b; YES), the virtual feature
一方、仮想特徴点軌道vが第(t−1)フレームまで伸びていないと判別された場合(ステップS501b;NO)、仮想特徴点生成部104は、第tフレームの直前に撮像された5フレーム分の画像から取得された特徴点軌道pを仮想特徴点軌道vにコピーする(ステップS501c)。すなわち、仮想特徴点生成部104は、第(t−1)〜第(t−5)フレームの画像から抽出済みの特徴点piを、これらの画像中の仮想特徴点viと見なし、仮想特徴点生成のための初期軌道を取得する。
On the other hand, when it is determined that the virtual feature point trajectory v does not extend to the (t−1) th frame (step S501b; NO), the virtual feature
本実施形態では、100本の仮想特徴点軌道vにより、手ぶれ補正前の撮像装置1の動きを定義する(手ぶれ補正前の各フレームの画像を定義する)。そこで、ステップS501dにおいて、仮想特徴点生成部104は、100個の仮想特徴点軌道vに対してステップS501b〜S501cの処理を施したか否か判別する(ステップS501d)。100個の仮想特徴点軌道vに処理を施していないと判別すると(ステップS501d;NO)、処理はステップS501aへ戻り、仮想特徴点生成部104は、別の仮想特徴点軌道vを選択してステップS501b〜S501cの処理を実行する。
In this embodiment, the motion of the
最終的に、100個の仮想特徴点軌道vに処理を施したと判別すると(ステップS501d;YES)、仮想特徴点生成部104は、仮想特徴点軌道準備処理を終了する。
When it is finally determined that 100 virtual feature point trajectories v have been processed (step S501d; YES), the virtual feature
図14のフローチャートに戻って、ステップS501の仮想特徴点軌道準備処理を終了した後、仮想特徴点生成部104は、仮想特徴点軌道準備処理を施された100本の仮想特徴点軌道vのうち何れか1つを選択する(ステップS502)。
Returning to the flowchart of FIG. 14, after the virtual feature point trajectory preparation process in step S <b> 501 is completed, the virtual feature
次に、仮想特徴点生成部104は、第(t−10)フレーム(第tフレームより10フレーム前のフレーム)を第Hフレームとして設定し(ステップS503)、第Hフレームが、ステップS4におけるフレーム選別処理において、非スキップ対象と評価されたか否かを判別する(ステップS504)。
Next, the virtual feature
第Hフレームの画像と第tフレームの画像との間の関係を表す基礎行列が、第Hフレームから第tフレームまでの他のフレームの画像と第tフレームの画像との関係を表す基礎行列の何れかに類似している場合、第Hフレームは、フレーム選別処理により、スキップ対象と評価されている。この場合、仮想特徴点生成部104は、第Hフレームを非スキップ対象と評価されていないと判別し(ステップS504;NO)、処理はステップS506へ移る。
The basic matrix representing the relationship between the image of the Hth frame and the image of the tth frame is a basic matrix representing the relationship between the image of the other frame from the Hth frame to the tth frame and the image of the tth frame. If they are similar to any of them, the H-th frame is evaluated as a skip target by the frame selection process. In this case, the virtual feature
第Hフレームの画像と第tフレームの画像との間の関係を表す基礎行列が、第Hフレームから第tフレームまでの他のフレームの画像と第tフレームの画像との関係を表す基礎行列の何れにも類似していなかった場合、第Hフレームは、フレーム選別処理により、非スキップ対象と評価されている。この場合、仮想特徴点生成部104は、非スキップ対象と評価されていると判別する(ステップS504;YES)。そして、仮想特徴点生成部104は、ステップS3における基礎行列取得処理によって取得された、第tフレームの画像と第Hフレームの画像との間のエピポーラ関係を表す基礎行列Ft、Hに基づいて、選択した仮想特徴点軌道vに含まれる第Hフレームの画像の仮想特徴点viから、第tフレームの画像へ、エピポーラ線を投影する(ステップS505)。
The basic matrix representing the relationship between the image of the Hth frame and the image of the tth frame is a basic matrix representing the relationship between the image of the other frame from the Hth frame to the tth frame and the image of the tth frame. If they are not similar to each other, the H-th frame is evaluated as a non-skip target by the frame selection process. In this case, the virtual feature
エピポーラ線を取得した後、仮想特徴点生成部104は、値Hを1だけインクリメントし(ステップS506)、インクリメント後の値Hが値tに一致するか否かを判別する(ステップS507)。一致しないと判別すると(ステップS507;NO)、処理はステップS504へ戻る。
After acquiring the epipolar line, the virtual feature
すなわち、仮想特徴点生成部104は、値Hを1ずつインクリメントしながら、インクリメント後の値Hが値tに一致すると判別されるまで(ステップS507においてYESと判別されるまで)、ステップS504〜S506の処理を繰り返す。これにより、第tフレームより前の10フレームのうち非スキップ対象と判別された各フレームの画像に含まれる仮想特徴点viから第tフレームの画像へ、順次エピポーラ線を投影する。
That is, the virtual feature
最終的に、インクリメント後の値Hが値tに一致すると判別した場合(ステップS507;YES)、仮想特徴点生成部104は、第tフレームの画像に投影した複数のエピポーラ線から任意の1組を選択する(ステップS508)。そして、選択した1組のエピポーラ線が互いに成す角が1.5°以上であるか否かを判別する(ステップS509)。
Finally, when it is determined that the incremented value H matches the value t (step S507; YES), the virtual feature
1組のエピポーラ線が平行に近いほど、これらのエピポーラ線が与える交点の信頼度は低い。そこで、仮想特徴点生成部104は、一定以上に大きな角を成すエピポーラ線の組が与える交点の座標のみを取得することにより、信頼性の低い交点を排除する。
The closer a pair of epipolar lines are to parallel, the lower the reliability of the intersection given by these epipolar lines. Therefore, the virtual feature
具体的には、成す角が1.5°を下回ると判別すると(ステップS509;NO)、処理はステップS511へ移る。一方、成す角が1.5°以上であると判別すると(ステップS509;YES)、仮想特徴点生成部104は、これらのエピポーラ線の交点の座標を取得し(ステップS510)、処理はステップS511へ移る。
Specifically, if it is determined that the formed angle is less than 1.5 ° (step S509; NO), the process proceeds to step S511. On the other hand, if it is determined that the formed angle is 1.5 ° or more (step S509; YES), the virtual feature
ステップS511において、仮想特徴点生成部104は、第tフレームの画像に投影した複数のエピポーラ線から選択可能な全ての組み合わせを選択したか否かを判別する(ステップS511)。選択されていない組み合わせがあると判別すると(ステップS511;NO)、処理はステップS508へ戻り、仮想特徴点生成部104は、未だ選択されていない組み合わせを選択して、同様の処理を実行する。
In step S511, the virtual feature
選択可能な全ての組み合わせが選択されたと判別すると(ステップS511;YES)、仮想特徴点生成部104は、取得された全ての交点座標の平均値を求め、この平均値と、取得された全ての交点座標の中央値と、の間の距離が5画素より小さいか否か判別する(ステップS512)。
When it is determined that all selectable combinations have been selected (step S511; YES), the virtual feature
具体的には、平均値と中央値との間の距離が5画素より小さいと判別すると(ステップS512;YES)、仮想特徴点生成部104は、平均値を第tフレーム中の仮想特徴点viの座標として取得し(ステップS513)、処理はステップS514へ移る。
Specifically, when it is determined that the distance between the average value and the median value is smaller than 5 pixels (step S512; YES), the virtual feature
平均値が中央値から5画素以上離れていると判別すると(ステップS512;NO)、処理はステップS514へ移る。すなわち、交点座標の平均値が中央値から5画素以上離れている場合、トラッキングエラーである可能性が高い。そこで、中央値から5画素以上離れている平均値の取得をスキップすることにより、信頼性に欠ける交点を排除する。 If it is determined that the average value is 5 pixels or more away from the median value (step S512; NO), the process proceeds to step S514. That is, when the average value of the intersection coordinates is 5 pixels or more away from the median value, there is a high possibility of a tracking error. Therefore, by skipping the acquisition of an average value that is 5 pixels or more away from the median value, intersections lacking in reliability are eliminated.
ステップS514において、仮想特徴点生成部104は、ステップS501の仮想特徴点軌道準備処理により処理された100本の仮想特徴点軌道v全てが選択されたか否かを判別する(ステップS514)。未だ選択されていない仮想特徴点軌道vがあると判別すると(ステップS514;NO)、処理はステップS502へ戻り、仮想特徴点生成部104は、未選択の仮想特徴点軌道vのうち何れか1本を選択して、同様の仮想特徴点生成処理を実行する。
In step S514, the virtual feature
最終的に、全ての仮想特徴点軌道vが選択済みであると判別すると(ステップS514;YES)、仮想特徴点生成部104は、仮想特徴点生成処理を終了する。
Finally, when it is determined that all the virtual feature point trajectories v have been selected (step S514; YES), the virtual feature
図8のフローチャートに戻って、ステップS5の仮想特徴点生成処理が終了した後、仮想特徴点軌道構築部105は、仮想特徴点生成処理によって生成された仮想特徴点viを、仮想特徴点軌道vを構成する点に追加することにより、仮想特徴点軌道vを延長する(ステップS6)。
Returning to the flowchart of FIG. 8, after the virtual feature point generation process in step S5 is completed, the virtual feature point
そして、仮想特徴点軌道構築部105は、指定部101が指定したフレーム(第tフレーム)が手ぶれ補正終了フレームであるか否かを判別する(ステップS7)。手ぶれ補正終了フレームは、手ぶれ補正対象の動画が含む複数のフレームのうち最後の(撮像時刻が最も新しい)フレームである。
Then, the virtual feature point
第tフレームが手ぶれ補正終了フレームではないと判別すると(ステップS7;NO)、仮想特徴点軌道構築部105は、指定部101に、直前に実行されたステップS2〜S6の処理において第tフレームとして設定されていたフレームの次の(次に撮像時刻が新しい)フレームを、新たな第tフレームとして設定させ(ステップS13)、処理はステップS2へ戻る。
When it is determined that the t-th frame is not the camera shake correction end frame (step S7; NO), the virtual feature point
すなわち、仮想特徴点軌道構築部105は、手ぶれ補正対象の動画が含む複数フレームの画像の中から指定部101が指定する画像を変えて、ステップS2〜S6の処理を繰り返す。これにより、仮想特徴点軌道構築部105は、仮想特徴点軌道vを構築する。
That is, the virtual feature point
第tフレームが手ぶれ補正終了フレームであると判別されると(ステップS7;YES)、平滑化部106が、構築された仮想特徴点軌道vをσ=50のガウシアンカーネルにより時間方向に平滑化し、平滑化された仮想特徴点軌道〜vを取得する(ステップS8)。
If it is determined that the t-th frame is a camera shake correction end frame (step S7; YES), the smoothing
そして、補正部107は、仮想特徴点軌道vと平滑化された仮想特徴点軌道〜vとの間の関係に基づいて、手ぶれ補正前の各フレームの画像と手ぶれ補正後の各フレームの画像との間のエピポーラ関係を表す基礎行列〜Fを取得する(ステップS9)。
Then, the correcting
具体的には、補正部107は、仮想特徴点軌道vを形成する仮想特徴点viと、平滑化された仮想特徴点軌道〜vを形成する手ぶれ補正後の仮想特徴点〜viと、を対応点として用い、8ポイントアルゴリズムとRANSAC法により基礎行列〜Fを求める。
Specifically, the
そして、補正部107は、ステップS9で取得した基礎行列〜Fに基づいてエピポーラ転送を行うことにより、手ぶれ補正後の特徴点軌道〜pを取得する(ステップS10)。
And the correction |
具体的には、補正部107は、手ぶれ補正後の各フレームの画像に、手ぶれ補正前の前後5フレームの画像に含まれる特徴点piが投影するエピポーラ線を、基礎行列〜Fに基づいて取得する。そして、図6に示すように、エピポーラ線の交点により定まる点を、手ぶれ補正後の各フレームの画像が含む手ぶれ補正後の特徴点〜piとして取得する。手ぶれ補正後の特徴点軌道〜pは、手ぶれ補正後の特徴点〜piによって構成される軌道として取得される。
Specifically, the
補正部107は、取得された手ぶれ補正後の特徴点軌道〜pをσ=6のガウシアンカーネルを用いて時間方向に平滑化することにより、高周波ジッタを除去する(ステップS11)。
The
補正部107は、手ぶれ補正対象の動画が含む各フレームの画像に対し、特徴点軌道pと手ぶれ補正後の特徴点軌道〜pとの間の関係に基づいて射影変換を実行することにより手ぶれを補正する(ステップS12)。以上により、図8のフローチャートに示した手ぶれ補正処理を終了する。
The
具体的には、補正部107は、特徴点軌道pを構成する特徴点piの座標と、手ぶれ補正後の特徴点軌道〜pを構成する手ぶれ補正後の特徴点〜piの座標と、を対応点として式(6)に代入することにより射影変換パラメータを求める。そして、手ぶれ補正対象の動画を構成する複数の画像それぞれを射影変換し、射影変換された複数の画像によって構成される動画を、手ぶれを補正した動画として生成する。
Specifically, the
以上説明したように、本実施形態に係る撮像装置1及び画像処理装置100は、エピポーラ幾何を利用することにより、視差の影響を考慮した手ぶれ補正を動画に対して施すことができる。
As described above, the
さらに、本実施形態に係る撮像装置1及び画像処理装置100は、手ぶれ補正対象の動画を構成する各画像間の関係を表す基礎行列の類似度を評価して、評価結果に基づいてエピポーラ投影の計算を実行する画像を選別している。これにより、精度の良くないエピポーラ転送を行うフレームを事前に選別して、エピポーラ転送の計算をスキップできるため、計算量を削減できる。そのため、手ぶれ補正処理の時間短縮につながる。
Furthermore, the
以上に本発明の実施形態について説明したが、これらの実施形態は一例であり、本発明の適用範囲はこれに限られない。すなわち、本発明の実施形態は種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。 Although the embodiments of the present invention have been described above, these embodiments are merely examples, and the scope of application of the present invention is not limited thereto. That is, the embodiments of the present invention can be applied in various ways, and all the embodiments are included in the scope of the present invention.
上記実施形態において、画像処理装置100は、撮像装置1の内部に具備されていた。しかし、本発明に係る画像処理装置は、撮像装置から独立した装置であってもよい。例えば、コンピュータ等の情報処理装置が、本発明に係る画像処理装置として機能することができる。この場合、画像処理装置は、外部の撮像装置が撮像した動画を手ぶれ補正対象の動画として取得し、上述の手ぶれ補正を施せばよい。
In the above embodiment, the
上記実施形態において、画像処理装置100は、撮像部10が被写体を撮像することにより生成し外部記憶部23に記憶されていた動画を、外部記憶部23から手ぶれ補正の対象として取得した。撮像装置1は、外部記憶部23からではなく、外部の画像入力装置(例えば、デジタルカメラやメモリカード、ネットワーク)から手ぶれ補正対象の動画を予め取得し、記憶しておいてもよい。
In the above-described embodiment, the
上記実施形態では、KLT法を用いて各フレームの画像から互いに対応する特徴点piを抽出した。しかし、本発明では、KLT法以外の方法を用いて特徴点piを抽出してもよい。例えば、Harrisオペレータ、SUSANオペレータ、Foerstnerオペレータ、Sojakオペレータ、SIFT等を用いることができる。 In the above embodiment, feature points p i corresponding to each other are extracted from the image of each frame using the KLT method. However, in the present invention, the feature points p i may be extracted using a method other than the KLT method. For example, a Harris operator, a SUSAN operator, a Forersner operator, a Sojak operator, SIFT, or the like can be used.
上記実施形態では、仮想特徴点軌道vをガウシアンカーネルで平滑化することにより、平滑化された仮想特徴点軌道〜vを取得した。しかし、本発明では、平滑化は、ガウシアンカーネル以外の関数(例えば、ラプラシアンフィルタ)を用いて行ってもよい。 In the above-described embodiment, the virtual feature point trajectory v is smoothed by the Gaussian kernel to obtain the smoothed virtual feature point trajectory to v. However, in the present invention, smoothing may be performed using a function other than the Gaussian kernel (for example, a Laplacian filter).
上記実施形態では、手ぶれ補正対象の画像全体に対して一括して射影変換を施すことにより手ぶれ補正を実行した。しかし、本発明では、画像が含む複数の画像領域それぞれに射影変換を施し、射影変換後の画像領域を再結合することにより手ぶれ補正を施すこともできる。 In the embodiment described above, camera shake correction is performed by performing projective transformation on the entire image to be corrected for camera shake in a lump. However, in the present invention, it is also possible to perform camera shake correction by performing projective transformation on each of a plurality of image regions included in an image and recombining the image regions after the projective transformation.
上記実施形態では、本発明に係る画像処理装置、撮像装置及び画像処理方法を、撮像装置1及び画像処理装置100を例に用いて説明した。本発明に係る画像処理装置、撮像装置、及び画像処理方法は、コンピュータ、携帯電話機、デジタルカメラ、PDA(Personal Digital Assistance)等の任意の電子機器によって実現することができる。
In the above embodiment, the image processing apparatus, the imaging apparatus, and the image processing method according to the present invention have been described using the
具体的には、コンピュータ、携帯電話機、デジタルカメラ、PDA等を本発明に係る撮像装置及び画像処理装置として動作させるためのプログラムを、これらの電子機器が読み取り可能な記録媒体(例えば、メモリカードやCD−ROM(Compact Disc Read−Only Memory)、DVD−ROM(Digital Versatile Disc Read−Only Memory)等)に格納して配布し、インストールすることにより本発明に係る撮像装置及び画像処理装置を実現することができる。 Specifically, a program for causing a computer, a mobile phone, a digital camera, a PDA, etc. to operate as an imaging apparatus and an image processing apparatus according to the present invention is recorded on a recording medium (for example, a memory card or An image pickup apparatus and an image processing apparatus according to the present invention are realized by storing, distributing, and installing on a CD-ROM (Compact Disc Read-Only Memory), DVD-ROM (Digital Versatile Disc Read-Only Memory), and the like. be able to.
あるいは、上記プログラムを、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置(例えば、ディスク装置等)に格納しておき、コンピュータ、携帯電話機、デジタルカメラ、PDA等がこのプログラムをダウンロードすることによって本発明に係る撮像装置及び画像処理装置を実現してもよい。 Alternatively, the above program is stored in a storage device (for example, a disk device) included in a server device on a communication network such as the Internet, and the computer, mobile phone, digital camera, PDA, or the like downloads this program. You may implement | achieve the imaging device and image processing apparatus which concern on this invention.
また、本発明に係る撮像装置及び画像処理装置の機能を、オペレーティングシステム(OS:Operating System)とアプリケーションプログラムとの協働又は分担により実現する場合には、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。 Further, when the functions of the imaging apparatus and the image processing apparatus according to the present invention are realized by cooperation or sharing of an operating system (OS) and an application program, only the application program portion is recorded on a recording medium or a storage device. May be stored.
また、アプリケーションプログラムを搬送波に重畳し、通信ネットワークを介して配信してもよい。例えば、通信ネットワーク上の掲示板(BBS:Bulletin Board System)にアプリケーションプログラムを掲示し、ネットワークを介してアプリケーションプログラムを配信してもよい。そして、このアプリケーションプログラムをコンピュータにインストールして起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、本発明に係る撮像装置及び画像処理装置を実現してもよい。 Further, the application program may be superimposed on a carrier wave and distributed via a communication network. For example, an application program may be posted on a bulletin board (BBS: Bulletin Board System) on a communication network, and the application program may be distributed via the network. Then, the imaging apparatus and the image processing apparatus according to the present invention may be realized by installing and starting up the application program in a computer and executing the application program in the same manner as other application programs under the control of the OS.
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願当初の特許請求の範囲に記載された発明を付記する。 As mentioned above, although preferable embodiment of this invention was described, this invention is not limited to the specific embodiment which concerns, This invention includes the invention described in the claim, and its equivalent range It is. The invention described in the scope of claims at the beginning of the present application will be appended.
(付記1)
動画を構成する複数の画像の中から1つを指定する指定部と、
前記複数の画像のうちの前記指定部によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得部と、
前記基礎行列取得部によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別部と、
前記基礎行列取得部によって取得された基礎行列のうち、前記選別部によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成部と、
前記複数の画像の中から前記指定部が指定する画像を変えて、前記指定部、前記基礎行列取得部、前記選別部、及び前記仮想特徴点生成部の処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築部と、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化部と、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正部と、
を備えることを特徴とする画像処理装置。
(Appendix 1)
A designating unit for designating one of a plurality of images constituting the video,
A basic matrix acquisition unit that acquires a basic matrix representing a relationship with the designated image for each of a predetermined number of images other than the image designated by the designation unit of the plurality of images;
A selection unit that selects an image for epipolar projection on the designated image from the predetermined number of images based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit; ,
Among the basic matrices acquired by the basic matrix acquisition unit, based on the basic matrix acquired for the image selected by the selection unit, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation unit that generates a virtual feature point in the specified image by performing an epipolar projection on the specified image;
By changing the image designated by the designation unit from the plurality of images and repeating the processing of the designation unit, the basic matrix acquisition unit, the selection unit, and the virtual feature point generation unit, a virtual feature point trajectory A virtual feature point trajectory construction unit for constructing
A smoothing unit that smoothes the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit and the virtual feature point trajectory smoothed by the smoothing unit. And
An image processing apparatus comprising:
(付記2)
前記基礎行列取得部によって前記所定数の画像のそれぞれについて取得された基礎行列の類似度を評価する評価部をさらに備え、
前記選別部は、前記評価部による評価結果に基づいて、前記所定数の画像の中から前記指定された画像にエピポーラ投影するための画像を選別する、
ことを特徴とする付記1に記載の画像処理装置。
(Appendix 2)
An evaluation unit that evaluates the similarity of the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit;
The selecting unit selects an image for epipolar projection on the designated image from the predetermined number of images based on the evaluation result by the evaluating unit.
The image processing apparatus according to
(付記3)
前記選別部は、前記評価部による評価の結果、前記所定数の画像の中に互いに類似している2以上の画像がある場合、該2以上の画像のうちのいずれか1つ以外の画像を、前記指定された画像にエピポーラ投影するための画像から除外する、
ことを特徴とする付記2に記載の画像処理装置。
(Appendix 3)
When there are two or more images that are similar to each other in the predetermined number of images as a result of the evaluation by the evaluation unit, the selecting unit selects an image other than any one of the two or more images. Exclude from the image for epipolar projection to the specified image,
The image processing apparatus according to
(付記4)
前記評価部は、異なる2つの基礎行列の間において、一方の基礎行列を正規化した行列に含まれる各要素と、他方の基礎行列を正規化した行列における対応する要素と、の差分をとった値がいずれも閾値以下である場合に、該2つの基礎行列が類似していると評価する、
ことを特徴とする付記2又は3に記載の画像処理装置。
(Appendix 4)
The evaluation unit takes a difference between each element included in a matrix obtained by normalizing one basic matrix and a corresponding element in a matrix obtained by normalizing the other basic matrix between two different basic matrices. Evaluates that the two base matrices are similar if both values are below a threshold,
The image processing apparatus according to
(付記5)
前記評価部は、異なる2つの基礎行列の間において、一方の基礎行列を正規化した行列に含まれる各要素と、他方の基礎行列を正規化した行列における対応する要素と、の差分の2乗和をとった値が閾値以下である場合に、該2つの基礎行列が類似していると評価する、
ことを特徴とする付記2又は3に記載の画像処理装置。
(Appendix 5)
The evaluation unit squares a difference between each element included in a matrix obtained by normalizing one basic matrix and a corresponding element in a matrix obtained by normalizing the other basic matrix between two different basic matrices. If the sum is less than or equal to the threshold, the two base matrices are evaluated as being similar,
The image processing apparatus according to
(付記6)
付記1乃至5の何れか1つに記載の画像処理装置と、
被写体を撮像することにより、前記動画を構成する画像を生成する撮像部と、
を備えることを特徴とする撮像装置。
(Appendix 6)
The image processing apparatus according to any one of
An imaging unit that generates an image constituting the moving image by imaging a subject;
An imaging apparatus comprising:
(付記7)
動画を構成する複数の画像の中から1つを指定する指定処理と、
前記複数の画像のうちの前記指定処理によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得処理と、
前記基礎行列取得処理によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別処理と、
前記基礎行列取得処理によって取得された基礎行列のうち、前記選別処理によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成処理と、
前記複数の画像の中から前記指定処理が指定する画像を変えて、前記指定処理、前記基礎行列取得処理、前記選別処理、及び前記仮想特徴点生成処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築処理と、
前記仮想特徴点軌道構築処理によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化処理と、
前記仮想特徴点軌道構築処理によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正処理と、
を含むことを特徴とする画像処理方法。
(Appendix 7)
A designation process for designating one of a plurality of images constituting a movie;
A basic matrix acquisition process for acquiring a basic matrix representing a relationship with the specified image for each of a predetermined number of images other than the image specified by the specifying process among the plurality of images;
A selection process for selecting an image for epipolar projection on the designated image from the predetermined number of images based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition process; ,
Among the basic matrices acquired by the basic matrix acquisition process, based on the basic matrix acquired for the image selected by the selection process, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation process for generating a virtual feature point in the specified image by performing an epipolar projection on the specified image;
A virtual feature point trajectory is constructed by changing the image designated by the designation processing from the plurality of images and repeating the designation processing, the basic matrix acquisition processing, the selection processing, and the virtual feature point generation processing. Virtual feature point trajectory construction processing,
Smoothing processing for smoothing the virtual feature point trajectory constructed by the virtual feature point trajectory construction processing in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction process and the virtual feature point trajectory smoothed by the smoothing unit. Processing,
An image processing method comprising:
(付記8)
コンピュータを、
動画を構成する複数の画像の中から1つを指定する指定部、
前記複数の画像のうちの前記指定部によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得部、
前記基礎行列取得部によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別部、
前記基礎行列取得部によって取得された基礎行列のうち、前記選別部によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成部、
前記複数の画像の中から前記指定部が指定する画像を変えて、前記指定部、前記基礎行列取得部、前記選別部、及び前記仮想特徴点生成部の処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築部、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化部、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正部、
として機能させることを特徴とするプログラム。
(Appendix 8)
Computer
A designating part for designating one of a plurality of images constituting the video,
A basic matrix acquisition unit that acquires a basic matrix representing a relationship with the designated image for each of a predetermined number of images other than the image designated by the designation unit among the plurality of images;
Based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit, a selection unit that selects an image for epipolar projection on the specified image from the predetermined number of images,
Among the basic matrices acquired by the basic matrix acquisition unit, based on the basic matrix acquired for the image selected by the selection unit, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation unit that generates a virtual feature point in the specified image by performing an epipolar projection on the specified image;
By changing the image designated by the designation unit from the plurality of images and repeating the processing of the designation unit, the basic matrix acquisition unit, the selection unit, and the virtual feature point generation unit, a virtual feature point trajectory A virtual feature point trajectory construction unit,
A smoothing unit that smoothes the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit and the virtual feature point trajectory smoothed by the smoothing unit. Part,
A program characterized by functioning as
1…撮像装置、10…撮像部、11…光学レンズ、12…イメージセンサ、20…データ処理部、21…主記憶部、22…出力部、23…外部記憶部、24…CPU、30…ユーザインタフェース部、31…表示部、32…操作部、33…外部インタフェース、100…画像処理装置、101…指定部、102…基礎行列取得部、102a…オプティカルフロー取得部、103…選別部、104…仮想特徴点生成部、105…仮想特徴点軌道構築部、106…平滑化部、107…補正部、108…評価部
DESCRIPTION OF
Claims (8)
前記複数の画像のうちの前記指定部によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得部と、
前記基礎行列取得部によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別部と、
前記基礎行列取得部によって取得された基礎行列のうち、前記選別部によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成部と、
前記複数の画像の中から前記指定部が指定する画像を変えて、前記指定部、前記基礎行列取得部、前記選別部、及び前記仮想特徴点生成部の処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築部と、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化部と、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正部と、
を備えることを特徴とする画像処理装置。 A designating unit for designating one of a plurality of images constituting the video,
A basic matrix acquisition unit that acquires a basic matrix representing a relationship with the designated image for each of a predetermined number of images other than the image designated by the designation unit of the plurality of images;
A selection unit that selects an image for epipolar projection on the designated image from the predetermined number of images based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit; ,
Among the basic matrices acquired by the basic matrix acquisition unit, based on the basic matrix acquired for the image selected by the selection unit, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation unit that generates a virtual feature point in the specified image by performing an epipolar projection on the specified image;
By changing the image designated by the designation unit from the plurality of images and repeating the processing of the designation unit, the basic matrix acquisition unit, the selection unit, and the virtual feature point generation unit, a virtual feature point trajectory A virtual feature point trajectory construction unit for constructing
A smoothing unit that smoothes the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit and the virtual feature point trajectory smoothed by the smoothing unit. And
An image processing apparatus comprising:
前記選別部は、前記評価部による評価結果に基づいて、前記所定数の画像の中から前記指定された画像にエピポーラ投影するための画像を選別する、
ことを特徴とする請求項1に記載の画像処理装置。 An evaluation unit that evaluates the similarity of the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit;
The sorting unit sorts an image for epipolar projection on the designated image from the predetermined number of images based on the evaluation result by the evaluation unit.
The image processing apparatus according to claim 1.
ことを特徴とする請求項2に記載の画像処理装置。 When there are two or more images that are similar to each other in the predetermined number of images as a result of the evaluation by the evaluation unit, the selecting unit selects an image other than any one of the two or more images. Exclude from the image for epipolar projection to the specified image,
The image processing apparatus according to claim 2.
ことを特徴とする請求項2又は3に記載の画像処理装置。 The evaluation unit takes a difference between each element included in a matrix obtained by normalizing one basic matrix and a corresponding element in a matrix obtained by normalizing the other basic matrix between two different basic matrices. Evaluates that the two base matrices are similar if both values are below a threshold,
The image processing apparatus according to claim 2, wherein the image processing apparatus is an image processing apparatus.
ことを特徴とする請求項2又は3に記載の画像処理装置。 The evaluation unit squares a difference between each element included in a matrix obtained by normalizing one basic matrix and a corresponding element in a matrix obtained by normalizing the other basic matrix between two different basic matrices. If the sum is less than or equal to the threshold, the two base matrices are evaluated as being similar,
The image processing apparatus according to claim 2, wherein the image processing apparatus is an image processing apparatus.
被写体を撮像することにより、前記動画を構成する画像を生成する撮像部と、
を備えることを特徴とする撮像装置。 An image processing apparatus according to any one of claims 1 to 5,
An imaging unit that generates an image constituting the moving image by imaging a subject;
An imaging apparatus comprising:
前記複数の画像のうちの前記指定処理によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得処理と、
前記基礎行列取得処理によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別処理と、
前記基礎行列取得処理によって取得された基礎行列のうち、前記選別処理によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成処理と、
前記複数の画像の中から前記指定処理が指定する画像を変えて、前記指定処理、前記基礎行列取得処理、前記選別処理、及び前記仮想特徴点生成処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築処理と、
前記仮想特徴点軌道構築処理によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化処理と、
前記仮想特徴点軌道構築処理によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正処理と、
を含むことを特徴とする画像処理方法。 A designation process for designating one of a plurality of images constituting a movie;
A basic matrix acquisition process for acquiring a basic matrix representing a relationship with the specified image for each of a predetermined number of images other than the image specified by the specifying process among the plurality of images;
A selection process for selecting an image for epipolar projection on the designated image from the predetermined number of images based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition process; ,
Among the basic matrices acquired by the basic matrix acquisition process, based on the basic matrix acquired for the image selected by the selection process, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation process for generating a virtual feature point in the specified image by performing an epipolar projection on the specified image;
A virtual feature point trajectory is constructed by changing the image designated by the designation processing from the plurality of images and repeating the designation processing, the basic matrix acquisition processing, the selection processing, and the virtual feature point generation processing. Virtual feature point trajectory construction processing,
Smoothing processing for smoothing the virtual feature point trajectory constructed by the virtual feature point trajectory construction processing in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction process and the virtual feature point trajectory smoothed by the smoothing unit. Processing,
An image processing method comprising:
動画を構成する複数の画像の中から1つを指定する指定部、
前記複数の画像のうちの前記指定部によって指定された画像以外の所定数の画像のそれぞれについて、該指定された画像との関係を表す基礎行列を取得する基礎行列取得部、
前記基礎行列取得部によって前記所定数の画像のそれぞれについて取得された基礎行列に基づいて、前記所定数の画像の中から、前記指定された画像にエピポーラ投影するための画像を選別する選別部、
前記基礎行列取得部によって取得された基礎行列のうち、前記選別部によって選別された画像について取得された基礎行列に基づいて、該選別された画像内の互いに対応する特徴点又は仮想特徴点を前記指定された画像にエピポーラ投影することにより、前記指定された画像内における仮想特徴点を生成する仮想特徴点生成部、
前記複数の画像の中から前記指定部が指定する画像を変えて、前記指定部、前記基礎行列取得部、前記選別部、及び前記仮想特徴点生成部の処理を繰り返すことにより、仮想特徴点軌道を構築する仮想特徴点軌道構築部、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道を時間方向に平滑化する平滑化部、
前記仮想特徴点軌道構築部によって構築された仮想特徴点軌道と、前記平滑化部によって平滑化された仮想特徴点軌道と、の間の関係に基づいて、前記複数の画像のそれぞれを補正する補正部、
として機能させることを特徴とするプログラム。 Computer
A designating part for designating one of a plurality of images constituting the video,
A basic matrix acquisition unit that acquires a basic matrix representing a relationship with the designated image for each of a predetermined number of images other than the image designated by the designation unit among the plurality of images;
Based on the basic matrix acquired for each of the predetermined number of images by the basic matrix acquisition unit, a selection unit that selects an image for epipolar projection on the specified image from the predetermined number of images,
Among the basic matrices acquired by the basic matrix acquisition unit, based on the basic matrix acquired for the image selected by the selection unit, the feature points or virtual feature points corresponding to each other in the selected image are A virtual feature point generation unit that generates a virtual feature point in the specified image by performing an epipolar projection on the specified image;
By changing the image designated by the designation unit from the plurality of images and repeating the processing of the designation unit, the basic matrix acquisition unit, the selection unit, and the virtual feature point generation unit, a virtual feature point trajectory A virtual feature point trajectory construction unit,
A smoothing unit that smoothes the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit in the time direction;
Correction that corrects each of the plurality of images based on the relationship between the virtual feature point trajectory constructed by the virtual feature point trajectory construction unit and the virtual feature point trajectory smoothed by the smoothing unit. Part,
A program characterized by functioning as
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014258378A JP6421587B2 (en) | 2014-12-22 | 2014-12-22 | Image processing apparatus, imaging apparatus, image processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014258378A JP6421587B2 (en) | 2014-12-22 | 2014-12-22 | Image processing apparatus, imaging apparatus, image processing method, and program |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016119580A true JP2016119580A (en) | 2016-06-30 |
JP2016119580A5 JP2016119580A5 (en) | 2018-01-25 |
JP6421587B2 JP6421587B2 (en) | 2018-11-14 |
Family
ID=56243224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014258378A Active JP6421587B2 (en) | 2014-12-22 | 2014-12-22 | Image processing apparatus, imaging apparatus, image processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6421587B2 (en) |
-
2014
- 2014-12-22 JP JP2014258378A patent/JP6421587B2/en active Active
Non-Patent Citations (1)
Title |
---|
AMIT GOLDSTEIN AND RAANAN FATTAL: "Video Stabilization Using Epipolar Geometry", ACM TRANSACTIONS ON GRAPHICS, vol. Vol.31, No.5, Article 126, JPN7018003226, August 2012 (2012-08-01) * |
Also Published As
Publication number | Publication date |
---|---|
JP6421587B2 (en) | 2018-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5980294B2 (en) | Data processing apparatus, imaging apparatus, and data processing method | |
CN106257910B (en) | Image processing apparatus, image processing method, and recording medium | |
KR20180019709A (en) | Distortion correction method and terminal | |
CN112019768A (en) | Video generation method and device and electronic equipment | |
CN110611767B (en) | Image processing method and device and electronic equipment | |
JP2019215622A5 (en) | ||
US20160379052A1 (en) | Image processing apparatus, display state determination apparatus, and image processing method | |
JP2022500792A (en) | Image processing methods and devices, electronic devices and storage media | |
JP2008217526A (en) | Image processor, image processing program, and image processing method | |
KR20160066425A (en) | Method and apparatus for blurring an image | |
US11625816B2 (en) | Learning device, image generation device, learning method, image generation method, and program | |
JP2019096222A (en) | Image processor, method for processing image, and computer program | |
JP6451300B2 (en) | Image processing apparatus, imaging apparatus, image processing method, and program | |
CN103685854A (en) | Image processing apparatus, image processing method, and program | |
JP6221333B2 (en) | Image processing apparatus, image processing circuit, and image processing method | |
JP6421587B2 (en) | Image processing apparatus, imaging apparatus, image processing method, and program | |
US9270883B2 (en) | Image processing apparatus, image pickup apparatus, image pickup system, image processing method, and non-transitory computer-readable storage medium | |
JP6369461B2 (en) | Image processing apparatus, image processing method, and program | |
JP6952298B2 (en) | Line-of-sight conversion device and line-of-sight conversion method | |
JP6155349B2 (en) | Method, apparatus and computer program product for reducing chromatic aberration in deconvolved images | |
US20170163903A1 (en) | Method and electronic device for processing image | |
JP2006285655A (en) | Image processor, image processing method and image processing program | |
US9454801B2 (en) | Image processing apparatus, method for processing image, and program | |
US11202000B2 (en) | Learning apparatus, image generation apparatus, learning method, image generation method, and program | |
US11900258B2 (en) | Learning device, image generating device, learning method, image generating method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171207 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171207 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180910 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180918 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181001 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6421587 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |