JP2015179426A - Information processing apparatus, parameter determination method, and program - Google Patents

Information processing apparatus, parameter determination method, and program Download PDF

Info

Publication number
JP2015179426A
JP2015179426A JP2014056813A JP2014056813A JP2015179426A JP 2015179426 A JP2015179426 A JP 2015179426A JP 2014056813 A JP2014056813 A JP 2014056813A JP 2014056813 A JP2014056813 A JP 2014056813A JP 2015179426 A JP2015179426 A JP 2015179426A
Authority
JP
Japan
Prior art keywords
feature point
feature
parameter
image
point
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.)
Ceased
Application number
JP2014056813A
Other languages
Japanese (ja)
Inventor
小林 弘幸
Hiroyuki Kobayashi
弘幸 小林
明洋 皆川
Akihiro Minagawa
明洋 皆川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014056813A priority Critical patent/JP2015179426A/en
Publication of JP2015179426A publication Critical patent/JP2015179426A/en
Ceased legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To accurately calculate parameters for a transformation model for use in the alignment of images.SOLUTION: There is provided an information processing apparatus 10 comprising: a storage unit 11 for storing a first feature point q1 contained in a first image P1, a second feature point q2 contained in a second image P2, and a transformation model TM which transforms a point on the first image P1 to a corresponding point on the second image P2; and an arithmetic unit 12 for calculating an estimated value A1 of a parameter A contained in the transformation model TM using a set of the first and second feature points q1 and q2 greater in feature quantity than a set first threshold Th1, selecting a pair of the first feature point q1 and the second feature point q2 greater in feature quantity than a second threshold Th2 smaller than the first threshold Th1 and falling within a range set by an error of the transformation model TM to which the estimated value A1 is applied, calculating the parameter A and an evaluation value of the parameter A per selected pair, and determining the parameter A based on the evaluation value.

Description

本発明は、情報処理装置、パラメータの決定方法、及びプログラムに関する。   The present invention relates to an information processing apparatus, a parameter determination method, and a program.

撮像デバイスとして利用できる身近な携帯機器には、例えば、デジタルカメラ、スマートフォン、及び携帯電話などがある。こうした撮像デバイスの処理能力は年々向上しており、最近では撮像デバイスの内部で高度な画像処理を行うことが可能になってきている。例えば、電子式手ぶれ補正の機能やHDR(High Dynamic Range)撮影の機能などは、連続して撮像された複数枚の画像に対する高度な画像処理により実現される。   Examples of familiar portable devices that can be used as imaging devices include digital cameras, smartphones, and mobile phones. The processing capability of such an imaging device is improving year by year, and recently it has become possible to perform advanced image processing inside the imaging device. For example, an electronic camera shake correction function, an HDR (High Dynamic Range) imaging function, and the like are realized by advanced image processing on a plurality of images captured continuously.

動画撮影時に適用される電子式手ぶれ補正は、連続する動画フレーム間で被写体の位置がずれないように位置を合わせて表示する技術である。また、静止画撮影時に適用される電子式手ぶれ補正は、速いシャッター速度で連続撮影された複数枚の画像を位置合わせして合成する技術である。また、HDR撮影は、露出を変えて撮像した複数枚の画像を合成して白飛びや黒つぶれの少ない画像を生成する技術である。HDR撮影の場合も画像同士の位置合わせが行われる。   The electronic camera shake correction applied at the time of moving image shooting is a technique for displaying the subject in alignment so that the position of the subject does not shift between consecutive moving image frames. Electronic camera shake correction applied during still image shooting is a technique for aligning and synthesizing a plurality of images continuously shot at a high shutter speed. HDR photography is a technique for generating an image with less whiteout or blackout by combining a plurality of images taken with different exposures. In HDR shooting, the images are aligned.

画像同士の位置合わせは、一方の画像に含まれる複数の特徴点と他方の画像に含まれる複数の特徴点とが最も良く適合するように一方の画像を変換する処理に相当する。例えば、手ぶれに伴う画像の並進移動、回転、拡大・縮小などをアフィン変換の変換パラメータで表現し、複数画像の特徴点を用いて変換パラメータを決め、その変換パラメータを適用して画像全体を変換することにより、画像同士の位置合わせが実現される。   The alignment between images corresponds to a process of converting one image so that a plurality of feature points included in one image and a plurality of feature points included in the other image are best matched. For example, the translation movement, rotation, enlargement / reduction, etc. of an image caused by camera shake are expressed by conversion parameters of affine transformation, conversion parameters are determined using feature points of multiple images, and the entire image is converted by applying the conversion parameters. By doing so, alignment between images is realized.

変換パラメータを計算する方法としては、例えば、RANSAC(RANdom SAmple Consensus)法がある。但し、RANSAC法による変換パラメータの計算は、ロバスト性に優れる一方で演算量が多い。そのため、RANSAC法に基づく変換パラメータの計算を上記のような撮像デバイスに実行させると処理に時間がかかる。また、考慮する変換の自由度が高く、変換パラメータの種類が多くなるほど、RANSAC法に基づく変換パラメータの計算に長い処理時間がかかる。   As a method for calculating the conversion parameter, for example, there is a RANSAC (RANdom SAmple Consensus) method. However, calculation of the conversion parameter by the RANSAC method is excellent in robustness but has a large amount of calculation. For this reason, if the above-described imaging device is caused to execute conversion parameter calculation based on the RANSAC method, it takes time for processing. In addition, the higher the degree of freedom of conversion to consider and the greater the number of types of conversion parameters, the longer it takes to calculate conversion parameters based on the RANSAC method.

このような事情を受け、RANSAC法に基づく変換パラメータの計算を2段階に分けて実行する技術が提案されている。この技術の1段階目では、並進移動に対応する変換パラメータだけを含む変換モデルを用いてRANSAC法により画像同士の位置合わせを行い、許容範囲内で一致する特徴点の組み合わせを抽出する。2段階目では、並進移動や回転に対応する変換パラメータを含む変換モデルを用い、1段階目で抽出した特徴点を利用してRANSAC法により変換パラメータを計算する。   Under such circumstances, a technique has been proposed in which conversion parameter calculation based on the RANSAC method is executed in two stages. In the first stage of this technique, images are aligned by the RANSAC method using a transformation model that includes only transformation parameters corresponding to translational movement, and combinations of feature points that match within an allowable range are extracted. In the second stage, a conversion model including a conversion parameter corresponding to translation and rotation is used, and the conversion parameter is calculated by the RANSAC method using the feature points extracted in the first stage.

特開2009−122843号公報JP 2009-122843 A

上記の技術を適用した場合、計算負荷を低減できる可能性がある。但し、変換パラメータの計算を2段階に分ける技術を適用した場合、回転や拡大・縮小の成分が大きい画像に適用する場合には、1段階目で正しく特徴点の組み合わせが抽出できない可能性がある。この場合、2段階目の処理を実行しても正しい変換パラメータが得られない。また、1段階目の処理に適用する変換パラメータの種類を増加させたり、許容範囲を拡大して1段階目で抽出される特徴点の数を増加させたりすれば、演算量の削減効果が抑制される。つまり、変換パラメータの計算を高速化するに際し、現実的な撮影状況において変換パラメータを精度良く計算することが課題となる。   When the above technique is applied, there is a possibility that the calculation load can be reduced. However, when the technique for dividing the calculation of the conversion parameter into two stages is applied, there is a possibility that the combination of feature points cannot be correctly extracted at the first stage when applied to an image having a large rotation or enlargement / reduction component. . In this case, a correct conversion parameter cannot be obtained even if the second stage process is executed. Also, if the types of conversion parameters applied to the first stage processing are increased, or the allowable range is expanded to increase the number of feature points extracted in the first stage, the effect of reducing the amount of computation is suppressed. Is done. In other words, in order to speed up the calculation of the conversion parameter, it becomes a problem to accurately calculate the conversion parameter in a realistic shooting situation.

そこで、1つの側面によれば、本発明の目的は、画像同士の位置合わせに用いる変換モデルのパラメータを精度良く計算することが可能な情報処理装置、パラメータの決定方法、及びプログラムを提供することにある。   Therefore, according to one aspect, an object of the present invention is to provide an information processing apparatus, a parameter determination method, and a program capable of accurately calculating parameters of a conversion model used for registration between images. It is in.

本開示の1つの側面によれば、第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、第1画像上の点を第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部と、設定された第1閾値より特徴量が大きい第1及び第2特徴点の集合を用いて変換モデルに含まれるパラメータの推定値を計算し、第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、推定値を適用した変換モデルに対する誤差が設定した範囲内にある第1特徴点と第2特徴点との組を選択し、選択した組毎にパラメータ及び当該パラメータの評価値を計算し、評価値に基づいてパラメータを決定する演算部とを有する、情報処理装置が提供される。   According to one aspect of the present disclosure, a first feature point included in the first image, a second feature point included in the second image, and a point on the first image are converted into corresponding points on the second image. Calculating a parameter estimated value included in the conversion model by using a storage unit that stores the conversion model to be used, and a set of first and second feature points having a feature amount larger than the set first threshold, A pair of first feature points and second feature points having a feature amount larger than a smaller second threshold and having an error with respect to the conversion model to which the estimated value is applied is set. An information processing apparatus is provided that includes a calculation unit that calculates a parameter and an evaluation value of the parameter, and that determines a parameter based on the evaluation value.

また、本開示の他の1つの側面によれば、第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、第1画像上の点を第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、第1特徴点、第2特徴点、及び変換モデルの情報を取得可能なコンピュータが、設定された第1閾値より特徴量が大きい第1及び第2特徴点の集合を用いて変換モデルに含まれるパラメータの推定値を計算し、第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、推定値を適用した変換モデルに対する誤差が設定した範囲内にある第1特徴点と第2特徴点との組を選択し、選択した組毎にパラメータ及び当該パラメータの評価値を計算し、評価値に基づいてパラメータを決定するパラメータの決定方法が提供される。   According to another aspect of the present disclosure, a first feature point included in the first image, a second feature point included in the second image, and a point on the first image correspond to each other on the second image. A computer capable of acquiring information about the first feature point, the second feature point, and the conversion model from a storage unit that stores a conversion model to be converted into a point has a feature amount larger than a set first threshold value. And an estimated value of a parameter included in the conversion model using the set of the second feature points, and an error with respect to the conversion model in which the feature amount is larger than the second threshold smaller than the first threshold and the estimated value is applied. Select a set of first feature points and second feature points within a set range, calculate a parameter and an evaluation value of the parameter for each selected set, and determine a parameter for determining the parameter based on the evaluation value A method is provided.

また、本開示の他の1つの側面によれば、第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、第1画像上の点を第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、第1特徴点、第2特徴点、及び変換モデルの情報を取得可能なコンピュータに、設定された第1閾値より特徴量が大きい第1及び第2特徴点の集合を用いて変換モデルに含まれるパラメータの推定値を計算し、第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、推定値を適用した変換モデルに対する誤差が設定した範囲内にある第1特徴点と第2特徴点との組を選択し、選択した組毎にパラメータ及び当該パラメータの評価値を計算し、評価値に基づいてパラメータを決定する処理を実行させる、プログラムが提供される。   According to another aspect of the present disclosure, a first feature point included in the first image, a second feature point included in the second image, and a point on the first image correspond to each other on the second image. A computer that can acquire information of a first feature point, a second feature point, and a conversion model from a storage unit that stores a conversion model to be converted into a point. And an estimated value of a parameter included in the conversion model using the set of the second feature points, and an error with respect to the conversion model in which the feature amount is larger than the second threshold smaller than the first threshold and the estimated value is applied. Select a set of first feature points and second feature points within the set range, calculate parameters and evaluation values of the parameters for each selected set, and execute a process of determining parameters based on the evaluation values A program is provided.

本発明によれば、画像同士の位置合わせに用いる変換モデルのパラメータを精度良く計算することが可能になる。   According to the present invention, it is possible to accurately calculate parameters of a conversion model used for alignment between images.

第1実施形態に係る情報処理装置の一例を示した図である。It is the figure which showed an example of the information processing apparatus which concerns on 1st Embodiment. RANSAC法について説明するための図である。It is a figure for demonstrating the RANSAC method. RANSAC法によるパラメータの計算について処理の流れを示したフロー図である。It is the flowchart which showed the flow of a process about calculation of the parameter by a RANSAC method. RANSAC法によるパラメータの計算を画像処理へと適用する例を示した図である。It is the figure which showed the example which applies the calculation of the parameter by a RANSAC method to image processing. 第2実施形態に係る情報処理装置が有する機能を実現可能なハードウェアの一例を示した図である。It is the figure which showed an example of the hardware which can implement | achieve the function which the information processing apparatus which concerns on 2nd Embodiment has. 第2実施形態に係る情報処理装置の機能について説明するためのブロック図である。It is a block diagram for demonstrating the function of the information processing apparatus which concerns on 2nd Embodiment. 第2実施形態に係る特徴点情報の一例を示した図である。It is the figure which showed an example of the feature point information which concerns on 2nd Embodiment. 第2実施形態に係る投票数テーブルの一例を示した図である。It is the figure which showed an example of the vote number table which concerns on 2nd Embodiment. 第2実施形態に係るカウンタテーブルの一例を示した図である。It is the figure which showed an example of the counter table which concerns on 2nd Embodiment. 第2実施形態に係る前段処理(特徴点ペアの抽出)について説明するための図である。It is a figure for demonstrating the front | former process (extraction of a feature point pair) which concerns on 2nd Embodiment. 第2実施形態に係る前段処理(投票処理)について説明するための図である。It is a figure for demonstrating the front | former process (voting process) which concerns on 2nd Embodiment. 第2実施形態に係る前段処理(推定変換行列の決定)について説明するための図である。It is a figure for demonstrating the front | former process (determination of an estimated conversion matrix) which concerns on 2nd Embodiment. 第2実施形態に係る後段処理(最大投票数の計算)について説明するための図である。It is a figure for demonstrating the back | latter stage process (calculation of the maximum vote number) which concerns on 2nd Embodiment. 第2実施形態に係る後段処理(特徴点ペアの抽出)について説明するための図である。It is a figure for demonstrating the back | latter stage process (extraction of a feature point pair) which concerns on 2nd Embodiment. 第2実施形態に係る後段処理(変換行列の比較)について説明するための図である。It is a figure for demonstrating the back | latter stage process (comparison of a conversion matrix) which concerns on 2nd Embodiment. 第2実施形態に係る後段処理(投票処理)について説明するための図である。It is a figure for demonstrating the back | latter stage process (voting process) which concerns on 2nd Embodiment. 第2実施形態に係る後段処理(変換行列の決定)について説明するための図である。It is a figure for demonstrating the back | latter stage process (determination of a conversion matrix) which concerns on 2nd Embodiment. 第2実施形態に係る情報処理装置が実行する処理の全体的な流れを示したフロー図である。It is the flowchart which showed the whole flow of the process which the information processing apparatus which concerns on 2nd Embodiment performs. 第2実施形態に係る情報処理装置が実行する前段処理の流れを示した第1のフロー図である。It is the 1st flowchart which showed the flow of the front | former stage process which the information processing apparatus which concerns on 2nd Embodiment performs. 第2実施形態に係る情報処理装置が実行する前段処理の流れを示した第2のフロー図である。It is the 2nd flowchart which showed the flow of the front | former stage process which the information processing apparatus which concerns on 2nd Embodiment performs. 第2実施形態に係る情報処理装置が実行する後段処理の流れを示した第1のフロー図である。It is the 1st flowchart which showed the flow of the back | latter stage process which the information processing apparatus which concerns on 2nd Embodiment performs. 第2実施形態に係る情報処理装置が実行する後段処理の流れを示した第2のフロー図である。It is the 2nd flowchart which showed the flow of the back | latter stage process which the information processing apparatus which concerns on 2nd Embodiment performs. 第2実施形態に係る情報処理装置が実行する後段処理の流れを示した第3のフロー図である。It is the 3rd flowchart which showed the flow of the back | latter stage process which the information processing apparatus which concerns on 2nd Embodiment performs. 第3実施形態に係る後段処理の概要を示した図である。It is the figure which showed the outline | summary of the back | latter stage process which concerns on 3rd Embodiment. 第3実施形態に係る情報処理装置の機能について説明するためのブロック図である。It is a block diagram for demonstrating the function of the information processing apparatus which concerns on 3rd Embodiment. 第3実施形態に係る許容範囲情報の一例を示した図である。It is the figure which showed an example of the tolerance | permissible_range information which concerns on 3rd Embodiment. 第3実施形態に係るペアマップリストの一例を示した図である。It is the figure which showed an example of the pair map list | wrist which concerns on 3rd Embodiment. 第3実施形態に係るペアマップリストの生成方法について説明するための第1の図である。It is a 1st figure for demonstrating the generation method of the pair map list which concerns on 3rd Embodiment. 第3実施形態に係るペアマップリストの生成方法について説明するための第2の図である。It is a 2nd figure for demonstrating the generation method of the pair map list which concerns on 3rd Embodiment. 第3実施形態に係る後段処理(変換行列の決定)について説明するための図である。It is a figure for demonstrating the back | latter stage process (determination of a conversion matrix) which concerns on 3rd Embodiment. 第3実施形態に係る情報処理装置が実行する後段処理の流れを示した第1のフロー図である。It is the 1st flowchart which showed the flow of the back | latter stage process which the information processing apparatus which concerns on 3rd Embodiment performs. 第3実施形態に係る情報処理装置が実行する後段処理の流れを示した第2のフロー図である。It is the 2nd flowchart which showed the flow of the back | latter stage process which the information processing apparatus which concerns on 3rd Embodiment performs. 第3実施形態に係る情報処理装置が実行する後段処理のうち、ペアマップリストの生成に関する処理の流れを示したフロー図である。It is the flowchart which showed the flow of the process regarding the production | generation of a pair map list among the back | latter stage processes which the information processing apparatus which concerns on 3rd Embodiment performs. 第2及び第3実施形態の組み合わせについて説明するための第1の図である。It is a 1st figure for demonstrating the combination of 2nd and 3rd embodiment. 第2及び第3実施形態の組み合わせについて説明するための第2の図である。It is a 2nd figure for demonstrating the combination of 2nd and 3rd embodiment. 第2及び第3実施形態の組み合わせに係る後段処理の流れを示したフロー図である。It is the flowchart which showed the flow of the back | latter stage process which concerns on the combination of 2nd and 3rd embodiment.

以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。   Embodiments of the present invention will be described below with reference to the accompanying drawings. In addition, about the element which has the substantially same function in this specification and drawing, duplication description may be abbreviate | omitted by attaching | subjecting the same code | symbol.

<1.第1実施形態>
図1を参照しながら、第1実施形態について説明する。図1は、第1実施形態に係る情報処理装置の一例を示した図である。なお、図1に例示した情報処理装置10は、第1実施形態に係る情報処理装置の一例である。
<1. First Embodiment>
The first embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of an information processing apparatus according to the first embodiment. Note that the information processing apparatus 10 illustrated in FIG. 1 is an example of an information processing apparatus according to the first embodiment.

図1に示すように、情報処理装置10は、記憶部11、及び演算部12を有する。
なお、記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置、或いは、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置である。演算部12は、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサである。但し、演算部12は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの電子回路であってもよい。また、演算部12は、例えば、記憶部11又は他のメモリに記憶されたプログラムを実行する。
As illustrated in FIG. 1, the information processing apparatus 10 includes a storage unit 11 and a calculation unit 12.
The storage unit 11 is a volatile storage device such as a RAM (Random Access Memory) or a non-volatile storage device such as an HDD (Hard Disk Drive) or a flash memory. The arithmetic unit 12 is a processor such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor). However, the arithmetic unit 12 may be an electronic circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA). Moreover, the calculating part 12 performs the program memorize | stored in the memory | storage part 11 or another memory, for example.

記憶部11は、第1画像P1が有する第1特徴点q1と、第2画像P2が有する第2特徴点q2と、第1画像P1上の点を第2画像P2上の対応する点へと変換する変換モデルTMとを記憶する。例えば、第1画像P1、第2画像P2は、連続して撮影された画像である。また、第1特徴点q1は、特徴量が設定した閾値より大きい点である。例えば、第1画像P1の画素毎に特徴量を検出し、検出した特徴量が設定した閾値より大きい画素を抽出することで、第1特徴点q1が得られる。   The storage unit 11 converts the first feature point q1 included in the first image P1, the second feature point q2 included in the second image P2, and the point on the first image P1 into a corresponding point on the second image P2. The conversion model TM to be converted is stored. For example, the first image P1 and the second image P2 are images that are continuously captured. The first feature point q1 is a point where the feature amount is larger than the set threshold value. For example, the first feature point q1 is obtained by detecting the feature amount for each pixel of the first image P1 and extracting pixels whose detected feature amount is larger than the set threshold value.

同様に、第2特徴点q2は、特徴量が設定した閾値より大きい点である。例えば、第2画像P2の画素毎に特徴量を検出し、検出した特徴量が設定した閾値より大きい画素を抽出することで、第2特徴点q2が得られる。特徴量としては、例えば、エッジ検出により得られるエッジの強度(勾配の大きさ)やエッジの方向(勾配方向)がある。勾配方向を利用する場合、注目画素の周囲にある画素のうち注目画素とは勾配方向が異なる画素の数を検出し、その数が設定した閾値より多い注目画素を抽出して特徴点とする。   Similarly, the second feature point q2 is a point where the feature amount is larger than the set threshold value. For example, the feature amount is detected for each pixel of the second image P2, and the second feature point q2 is obtained by extracting pixels whose detected feature amount is larger than a set threshold value. Examples of the feature amount include edge strength (gradient magnitude) obtained by edge detection and edge direction (gradient direction). When the gradient direction is used, the number of pixels having a gradient direction different from the pixel of interest among the pixels around the pixel of interest is detected, and pixels of interest whose number is larger than the set threshold value are extracted as feature points.

図1の例では、第1特徴点q1として、第1特徴点q11、q12、…、q16が示されている。第1特徴点q11、q12、q13は、対象物C11の特徴部分を示す特徴点である。また、第1特徴点q14、q15、q16は、対象物C12の特徴部分を示す特徴点である。   In the example of FIG. 1, first feature points q11, q12,..., Q16 are shown as the first feature points q1. The first feature points q11, q12, and q13 are feature points that indicate a feature portion of the object C11. In addition, the first feature points q14, q15, and q16 are feature points that indicate feature portions of the object C12.

また、図1の例では、第2特徴点q2として、第2特徴点q21、q22、…、q26が示されている。第2特徴点q21、q22、q23は、対象物C21の特徴部分を示す特徴点である。また、第2特徴点q24、q25、q26は、対象物C22の特徴部分を示す特徴点である。なお、対象物C11、C21は同じ被写体を表す。また、対象物C12、C22は同じ被写体を表す。但し、図1の例では、第1画像P1の撮影時と第2画像P2の撮影時とで撮影状況(露出の変化や撮影者の手ぶれによる撮像範囲のずれなど)が異なるため、第1特徴点q1と第2特徴点q2とが一致していない。   In the example of FIG. 1, second feature points q21, q22,..., Q26 are shown as the second feature points q2. The second feature points q21, q22, and q23 are feature points that indicate a feature portion of the object C21. In addition, the second feature points q24, q25, and q26 are feature points that indicate feature portions of the object C22. The objects C11 and C21 represent the same subject. The objects C12 and C22 represent the same subject. However, in the example of FIG. 1, since the shooting situation (such as a change in exposure or a shift in the imaging range due to camera shake of the photographer) differs when shooting the first image P1 and when shooting the second image P2. The point q1 and the second feature point q2 do not match.

演算部12は、設定された第1閾値Th1より特徴量が大きい第1特徴点q1及び第2特徴点q2の集合を用いて変換モデルTMに含まれるパラメータAの推定値A1を計算する。変換モデルTMとしては、例えば、アフィン変換の変換モデルなどを適用することが可能である。この場合、パラメータAは、並進移動、回転、拡大・縮小を表す複数のパラメータを含む変換行列となる。   The calculation unit 12 calculates an estimated value A1 of the parameter A included in the conversion model TM using a set of the first feature point q1 and the second feature point q2 having a feature amount larger than the set first threshold Th1. As the conversion model TM, for example, a conversion model of affine conversion can be applied. In this case, the parameter A is a conversion matrix including a plurality of parameters representing translation, rotation, and enlargement / reduction.

なお、第1特徴点q1及び第2特徴点q2の抽出時に利用した閾値よりも第1閾値Th1を高く設定することで、対象物C11、C12、C21、C22の特徴を表す特徴点としての信頼度が高い第1特徴点q1及び第2特徴点q2の集合が得られる。そのため、第1閾値Th1を利用して特徴点を絞り込む上記の方法を適用すれば、推定値A1の計算に利用する特徴点をランダムに選択する方法に比べて高い推定精度を得ることができる。   Note that by setting the first threshold value Th1 higher than the threshold value used when extracting the first feature point q1 and the second feature point q2, the reliability as the feature point representing the features of the objects C11, C12, C21, and C22. A set of the first feature point q1 and the second feature point q2 having a high degree is obtained. Therefore, if the above-described method of narrowing down feature points using the first threshold Th1 is applied, higher estimation accuracy can be obtained compared to a method of randomly selecting feature points used for calculation of the estimated value A1.

推定値A1を計算した演算部12は、第1閾値Th1より小さい第2閾値Th2よりも特徴量が大きく、かつ、推定値A1を適用した変換モデルTMに対する誤差が設定した範囲内にある第1特徴点q1と第2特徴点q2との組を選択する。また、演算部12は、選択した組毎にパラメータA及び当該パラメータAの評価値を計算する。そして、演算部12は、評価値に基づいてパラメータAを決定する。   The computing unit 12 that has calculated the estimated value A1 has a feature amount larger than the second threshold Th2 that is smaller than the first threshold Th1, and is within a set range of an error with respect to the conversion model TM to which the estimated value A1 is applied. A set of the feature point q1 and the second feature point q2 is selected. In addition, the calculation unit 12 calculates the parameter A and the evaluation value of the parameter A for each selected set. Then, the calculation unit 12 determines the parameter A based on the evaluation value.

上記のように、第2閾値Th2が第1閾値Th1より小さいことで、推定値A1の計算に利用した第1特徴点q1及び第2特徴点q2よりも多くの特徴点が選択の対象となる。但し、推定値A1を適用した変換モデルTMに対する誤差が大きい組については評価値の計算が回避される。   As described above, since the second threshold Th2 is smaller than the first threshold Th1, more feature points than the first feature point q1 and the second feature point q2 used for calculating the estimated value A1 are selected. . However, calculation of an evaluation value is avoided for a set having a large error with respect to the conversion model TM to which the estimated value A1 is applied.

上記のように、推定値A1は、特徴量の大きな特徴点を利用して計算されており、すべての第1特徴点q1及び第2特徴点q2を利用して計算したパラメータAの値に近いと考えられる。そのため、誤差の大きい組を利用してパラメータAを計算しても、そのパラメータAの評価値は小さくなり、パラメータAの決定に寄与しない。このように、パラメータAの決定に寄与しない組を候補から除外して評価値の計算を回避することにより、パラメータAの計算精度を維持しつつ、演算量を低減することができる。   As described above, the estimated value A1 is calculated using feature points having a large feature amount, and is close to the value of the parameter A calculated using all the first feature points q1 and the second feature points q2. it is conceivable that. Therefore, even if the parameter A is calculated using a group having a large error, the evaluation value of the parameter A becomes small and does not contribute to the determination of the parameter A. In this way, by omitting the set that does not contribute to the determination of the parameter A from the candidates and avoiding the calculation of the evaluation value, the calculation amount can be reduced while maintaining the calculation accuracy of the parameter A.

なお、上記の誤差は、第1特徴点q1と第2特徴点q2との組から計算されたパラメータAと推定値A1との差や、推定値A1を適用した変換モデルTMを利用して第1特徴点q1を変換した点と第2特徴点q2との距離に基づいて評価することが可能である。また、評価値の計算方法としては、例えば、RANSAC法に基づく計算に利用される投票処理を適用可能である。この場合、評価値は投票数となり、投票数が最大となるパラメータAが決定される。なお、図1の例では、候補となるパラメータAとしてパラメータA21、A22、…が示され、投票によりパラメータA21が決定されている。   Note that the above error is obtained by using the difference between the parameter A calculated from the set of the first feature point q1 and the second feature point q2 and the estimated value A1, or the conversion model TM to which the estimated value A1 is applied. It is possible to evaluate based on the distance between the point obtained by converting the one feature point q1 and the second feature point q2. As a method for calculating the evaluation value, for example, a voting process used for calculation based on the RANSAC method can be applied. In this case, the evaluation value is the number of votes, and the parameter A that maximizes the number of votes is determined. In the example of FIG. 1, parameters A21, A22,... Are shown as candidate parameters A, and the parameter A21 is determined by voting.

以上、第1実施形態について説明した。
<2.第2実施形態>
次に、第2実施形態について説明する。第2実施形態は、RANSAC法に基づく変換パラメータの計算を2段階で実行する方法に関し、計算精度を維持しつつ演算量の削減を実現する仕組みを提案するものである。
The first embodiment has been described above.
<2. Second Embodiment>
Next, a second embodiment will be described. The second embodiment relates to a method of executing conversion parameter calculation based on the RANSAC method in two stages, and proposes a mechanism for realizing a reduction in the amount of calculation while maintaining calculation accuracy.

[2−1.RANSAC法について]
ここで、図2及び図3を参照しながら、RANSAC法について説明する。なお、図2は、RANSAC法について説明するための図である。また、図3は、RANSAC法によるパラメータの計算について処理の流れを示したフロー図である。
[2-1. About RANSAC method]
Here, the RANSAC method will be described with reference to FIGS. FIG. 2 is a diagram for explaining the RANSAC method. FIG. 3 is a flowchart showing a processing flow for parameter calculation by the RANSAC method.

RANSAC法は、多数のデータを良く表す数式モデルを推定する方法の一つである。RANSAC法では、ランダムに取り出したデータの組を用いて数式モデルのパラメータを計算する処理、及びそのパラメータを適用した数式モデルと他のデータとの誤差が許容可能な範囲に含まれるか否かを判定する処理が繰り返し実行される。   The RANSAC method is one of methods for estimating a mathematical model that well represents a large number of data. In the RANSAC method, a process for calculating a parameter of a mathematical model using a set of randomly extracted data, and whether or not an error between the mathematical model to which the parameter is applied and other data are included in an allowable range. The determination process is repeatedly executed.

データが許容可能な範囲に含まれることをインライヤと呼び、データが許容可能な範囲に含まれないことをアウトライヤと呼ぶ。RANSAC法では、パラメータ毎にインライヤとなるデータの数がカウントされ、カウント数が最も多いパラメータが最適なパラメータに決定される。つまり、決定されたパラメータを適用した数式モデルが、データを良く表す数式モデルの推定結果とされる。   When the data is included in the allowable range is called an inlier, and when the data is not included in the allowable range, it is called an outlier. In the RANSAC method, the number of inlier data is counted for each parameter, and the parameter with the largest count is determined as the optimum parameter. That is, the mathematical model to which the determined parameter is applied is the estimation result of the mathematical model that well represents the data.

図2には、x−y座標系に配置された複数のデータ(座標点)から数式モデル(y=ax)のパラメータ(a)を推定する方法が例示されている。この例では数式モデルが一次式であるため、2つのデータがあればパラメータを計算することができる。例えば、ランダムに2つのデータ(x1,y1)、(x2,y2)が取り出された場合、パラメータaは、(y2−y1)/(x2−x1)で与えられる。   FIG. 2 illustrates a method for estimating the parameter (a) of the mathematical model (y = ax) from a plurality of data (coordinate points) arranged in the xy coordinate system. In this example, since the mathematical model is a linear expression, the parameters can be calculated if there are two data. For example, when two pieces of data (x1, y1) and (x2, y2) are extracted at random, the parameter a is given by (y2-y1) / (x2-x1).

ランダムに取り出された2つのデータからパラメータaが計算されると、計算されたパラメータaを適用した数式モデル(y=ax)と他のデータとの距離dが計算される。そして、許容範囲(図2の例では2つの鎖線l1、l2間の領域)に含まれるデータの数(インライヤとなるデータの数)がカウントされる。同様に、データの取り出し、パラメータaの計算、及びインライヤとなるデータ数のカウントが繰り返し実行され、最大カウント数のパラメータaが最適なパラメータに決定される。   When the parameter a is calculated from two randomly extracted data, the distance d between the mathematical model (y = ax) to which the calculated parameter a is applied and other data is calculated. Then, the number of data included in the permissible range (the region between the two chain lines 11 and 12 in the example of FIG. 2) (the number of inliers) is counted. Similarly, extraction of data, calculation of parameter a, and count of the number of data serving as inliers are repeatedly executed, and the parameter a having the maximum count is determined as an optimum parameter.

なお、データの取り出し、パラメータaの計算、及びインライヤとなるデータ数のカウントを繰り返す回数は、下記の式(1)で与えられるサンプリング回数T以上に設定される。但し、Fは数式モデルの自由度を表し、Eはアウトライヤとなるデータの割合を表し、Pは正しい数式モデルが得られる確率を表す。つまり、繰り返し回数をT以上にすれば、確率P以上で正しい数式モデルが得られる。   Note that the number of repetitions of data extraction, parameter a calculation, and counting of the number of data serving as inliers is set to be equal to or greater than the number of sampling times T given by the following equation (1). Here, F represents the degree of freedom of the mathematical model, E represents the proportion of data that becomes an outlier, and P represents the probability that a correct mathematical model will be obtained. That is, if the number of repetitions is set to T or more, a correct mathematical model can be obtained with a probability P or more.

Figure 2015179426
パラメータを推定する方法の一つである最小二乗法の場合、アウトライヤとなるデータがパラメータの推定結果に影響を与えてしまう。一方、RANSAC法の場合、インライヤとなるデータを用いてパラメータが推定されるため、アウトライヤとなるデータがパラメータの推定結果に影響を及ぼさないという利点がある。
Figure 2015179426
In the case of the least square method, which is one of the methods for estimating the parameter, the outlier data affects the parameter estimation result. On the other hand, in the case of the RANSAC method, parameters are estimated using data serving as inliers, and therefore there is an advantage that data serving as outliers does not affect the parameter estimation results.

ここで、図3を参照しながら、RANSAC法によるパラメータの計算について処理の流れを説明する。
図3に示すように、まず、ランダムに2つのデータが選択される(S11)。次いで、S11で選択されたデータを用いてパラメータが計算される(S12)。次いで、S11で選択されたデータを除く残りのデータから1つのデータが抽出される(S13)。次いで、S13で抽出されたデータがインライヤか否かが判定される(S14)。インライヤである場合、処理はS15へと進む。一方、アウトライヤである場合、処理はS16へと進む。
Here, with reference to FIG. 3, the flow of processing for parameter calculation by the RANSAC method will be described.
As shown in FIG. 3, first, two pieces of data are selected at random (S11). Next, parameters are calculated using the data selected in S11 (S12). Next, one data is extracted from the remaining data excluding the data selected in S11 (S13). Next, it is determined whether or not the data extracted in S13 is an inlier (S14). If so, the process proceeds to S15. On the other hand, if it is an outlier, the process proceeds to S16.

処理がS15へと進んだ場合、S12で計算されたパラメータに対する投票が行われる(S15)。つまり、パラメータ毎に投票数が設定されており、S12で計算されたパラメータの投票数が1増加する。S15の処理が完了すると、処理はS16へと進む。   When the process proceeds to S15, voting is performed for the parameter calculated in S12 (S15). That is, the number of votes is set for each parameter, and the number of votes for the parameter calculated in S12 increases by one. When the process of S15 is completed, the process proceeds to S16.

処理がS16へと進んだ場合、S11で選択されたデータを除く残りのデータがすべてS13で抽出されたか否かが判定される(S16)。残りのデータがすべてS13で抽出されている場合、処理はS17へと進む。一方、S13で抽出されていないデータがある場合、処理はS13へと進む。   When the process proceeds to S16, it is determined whether all the remaining data except for the data selected in S11 has been extracted in S13 (S16). If all the remaining data has been extracted in S13, the process proceeds to S17. On the other hand, if there is data that has not been extracted in S13, the process proceeds to S13.

処理がS17へと進んだ場合、S11からS17へと至る一連の処理がT回実行されたか(T回ループしたか)が判定される(S17)。ループ回数を示すTは、例えば、上記の式(1)により与えられる。T回ループした場合、処理はS18へと進む。一方、T回ループしていない場合、処理はS11へと進む。   When the process proceeds to S17, it is determined whether a series of processes from S11 to S17 has been executed T times (whether T has been looped) (S17). T indicating the number of loops is given by, for example, the above equation (1). If the process loops T times, the process proceeds to S18. On the other hand, if it has not looped T times, the process proceeds to S11.

処理がS18へと進んだ場合、投票数が最大のパラメータが出力される(S18)。つまり、インライヤとなるデータの数が最大となるパラメータが出力される。S18の処理が完了すると、図3に示した一連の処理は終了する。   When the process proceeds to S18, the parameter with the largest number of votes is output (S18). That is, the parameter that maximizes the number of inliers is output. When the process of S18 is completed, the series of processes shown in FIG.

上記のように、RANSAC法による計算処理は、S11からS17へと至る外側のループ処理と、S13からS16へと至る内側のループ処理とを含む。内側のループ処理は、パラメータの計算に利用していないすべてのデータを対象に、インライヤとなるか否かの判定を実行して投票を行う処理(以下、投票処理)である。そのため、データの数が増加すると投票処理を実行する回数が飛躍的に増大する。第2実施形態では、計算精度を維持しつつ投票処理の実行回数を低減する仕組みを提案する。   As described above, the calculation process by the RANSAC method includes the outer loop process from S11 to S17 and the inner loop process from S13 to S16. The inner loop process is a process (hereinafter referred to as a voting process) in which voting is performed by determining whether or not to become an inlier for all data not used for parameter calculation. Therefore, when the number of data increases, the number of times that the voting process is executed increases dramatically. In the second embodiment, a mechanism for reducing the number of times the voting process is executed while maintaining calculation accuracy is proposed.

(画像処理への適用例)
ここで、図4を参照しながら、RANSAC法によるパラメータの計算を画像処理へと適用する例について説明する。図4は、RANSAC法によるパラメータの計算を画像処理へと適用する例を示した図である。
(Example of application to image processing)
Here, an example of applying the parameter calculation by the RANSAC method to image processing will be described with reference to FIG. FIG. 4 is a diagram showing an example in which parameter calculation by the RANSAC method is applied to image processing.

画像処理技術としては、複数の画像を利用して画質を向上させる技術や、複数の画像を照合して認証を行う技術などがある。例えば、動画撮影時に適用される電子式手ぶれ補正は、動画フレーム間で位置合わせを行い、重なる領域をクロップして表示することにより手ぶれによる表示画像の乱れを抑制する技術である。また、静止画撮影時に適用される電子式手ぶれ補正は、速いシャッター速度で複数枚の画像を撮像し、画像同士の位置を合わせて合成した上で重なる領域をクロップすることにより、手ぶれや被写体ぶれによる画像の乱れを抑制する技術である。   Image processing techniques include a technique for improving image quality using a plurality of images and a technique for performing authentication by collating a plurality of images. For example, electronic camera shake correction applied at the time of moving image shooting is a technology that suppresses disturbance of a display image due to camera shake by positioning between moving image frames and cropping and displaying an overlapping region. In addition, electronic image stabilization applied during still image shooting captures multiple images at a fast shutter speed, combines the images and combines them, and crops the overlapping area, thereby reducing camera shake and subject shake. This is a technology that suppresses image disturbance caused by.

また、HDR撮影は、露出の異なる複数の画像を連続して撮影し、画像同士の位置を合わせて合成した上で重なる領域をクロップすることにより、露光不足や露光過多による白飛びや黒つぶれを抑制したダイナミックレンジの広い画像を生成する技術である。また、静脈認証、光彩認証、顔認証などの認証技術は、テンプレート画像と撮像画像とを照合して本人確認を行う技術である。   In HDR shooting, multiple images with different exposures are shot in succession, the images are aligned and combined, and the overlapping areas are cropped, so that overexposure and overexposure cause overexposure and overexposure. This is a technique for generating a suppressed dynamic range image. Authentication techniques such as vein authentication, glow authentication, and face authentication are techniques for verifying the identity by comparing a template image and a captured image.

上記のような画像処理技術は、いずれも画像同士の位置合わせを利用する。なお、ここで言う画像同士の位置合わせとは、対象となる画像間における並進移動、回転、拡大・縮小などを補正することである。例えば、連続して撮像された画像であっても、被写体ぶれや手ぶれなどの影響で画像間に様々なずれが生じる。ずれが生じた状態で画像同士を重ね合わせても画質の向上や認証精度の向上などの効果は得られない。そこで、画像同士の位置合わせを実行してから表示、合成、認証などの各種処理が実行される。   All of the image processing techniques as described above use registration between images. Note that the registration of images referred to here is correction of translation, rotation, enlargement / reduction, and the like between target images. For example, even in the case of continuously captured images, various shifts occur between the images due to the effects of subject shake and camera shake. Even if the images are overlapped with each other in a state where a shift has occurred, effects such as an improvement in image quality and an improvement in authentication accuracy cannot be obtained. Therefore, various processes such as display, composition, and authentication are performed after the registration of the images.

図4には、連続して撮像された2つの画像P1、P2を合成する処理の流れが例示されている。図4の例では、画像P1に4つの特徴点q10、…、q13が含まれ、画像P2に4つの特徴点q20、…、q23が含まれている。画像P1の座標と画像P2の座標との関係は、例えば、アフィン変換の変換モデル(下記の式(2)を参照)により表現できる。但し、(x1,y1)は画像P1上の座標である。また、(x2,y2)は画像P2上の座標である。また、w11、w12、…、w23は変換パラメータである。   FIG. 4 illustrates a flow of processing for combining two images P1 and P2 captured in succession. In the example of FIG. 4, the image P1 includes four feature points q10,..., Q13, and the image P2 includes four feature points q20,. The relationship between the coordinates of the image P1 and the coordinates of the image P2 can be expressed by, for example, a conversion model of affine transformation (see the following formula (2)). However, (x1, y1) are coordinates on the image P1. Further, (x2, y2) are coordinates on the image P2. W11, w12,..., W23 are conversion parameters.

Figure 2015179426
上記の変換モデルにより画像P1に含まれる各画素の座標変換を行えば、画像P2との位置合わせが実現される。例えば、画像P1を座標変換した画像を画像P3とすると、2つの画像P2、P3を合成することで高画質な画像P4が得られる。このような画像の合成を精度良く行うには、上記の変換パラメータw11、w12、…、w23を精度良く求めることが大事になる。そのため、変換パラメータw11、w12、…、w23の計算に対してロバスト性に優れるRANSAC法を適用することは好適である。
Figure 2015179426
If coordinate conversion of each pixel included in the image P1 is performed using the above conversion model, alignment with the image P2 is realized. For example, if an image obtained by coordinate-transforming the image P1 is an image P3, a high-quality image P4 can be obtained by combining the two images P2 and P3. In order to accurately synthesize such an image, it is important to obtain the above conversion parameters w11, w12,. Therefore, it is preferable to apply the RANSAC method having excellent robustness to the calculation of the conversion parameters w11, w12,..., W23.

RANSAC法を適用する場合、特徴点q10、…、q22からランダムに取り出した特徴点の組み合わせを用いて変換パラメータw11、w12、…、w23が計算され、上述した投票処理が実行される。また、変換パラメータw11、w12、…、w23の計算及び投票処理が繰り返し行われ、最大の投票数を得た変換パラメータw11、w12、…、w23が画像P1の座標変換に利用される。但し、実際に画像に含まれる特徴点の数は多いため、第2実施形態では演算量を削減する仕組みを提案する。   When the RANSAC method is applied, conversion parameters w11, w12,..., W23 are calculated using a combination of feature points randomly extracted from the feature points q10,..., Q22, and the voting process described above is executed. In addition, the conversion parameters w11, w12,..., W23 are repeatedly calculated and voted, and the conversion parameters w11, w12,..., W23 obtained the maximum number of votes are used for the coordinate conversion of the image P1. However, since the number of feature points actually included in the image is large, the second embodiment proposes a mechanism for reducing the amount of calculation.

(その他の適用例)
RANSAC法によるパラメータの計算は、画像処理以外の用途にも利用可能である。例えば、声紋認証や音声解析などを行う際に音声データの特徴点をマッチングさせる用途で利用できる。この場合、2つの音声データに含まれる特徴点が抽出され、特徴点間の関係を表現した変換モデルのパラメータがRANSAC法により計算される。以下では、説明の都合上、画像同士の位置合わせを想定して説明を進めるが、第2実施形態に係る技術の適用範囲はこれに限定されず、RANSAC法を適用可能な任意の分野に及ぶ。
(Other application examples)
The parameter calculation by the RANSAC method can be used for purposes other than image processing. For example, it can be used to match feature points of voice data when performing voiceprint authentication or voice analysis. In this case, feature points included in the two audio data are extracted, and parameters of the conversion model expressing the relationship between the feature points are calculated by the RANSAC method. In the following, for the sake of explanation, the description will be made assuming that the images are aligned. However, the scope of application of the technique according to the second embodiment is not limited to this, and extends to any field to which the RANSAC method can be applied. .

以上、RANSAC法について説明した。
[2−2.ハードウェア]
次に、図5を参照しながら、第2実施形態に係る変換パラメータの計算方法を実現可能な情報処理装置100のハードウェアについて説明する。なお、情報処理装置100は、第2実施形態に係る情報処理装置の一例である。また、図5は、第2実施形態に係る情報処理装置が有する機能を実現可能なハードウェアの一例を示した図である。
The RANSAC method has been described above.
[2-2. hardware]
Next, the hardware of the information processing apparatus 100 capable of realizing the conversion parameter calculation method according to the second embodiment will be described with reference to FIG. The information processing apparatus 100 is an example of an information processing apparatus according to the second embodiment. FIG. 5 is a diagram illustrating an example of hardware capable of realizing the functions of the information processing apparatus according to the second embodiment.

後述する情報処理装置100の機能は、例えば、図5に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、情報処理装置100が有する機能は、コンピュータプログラムを用いて図5に示すハードウェアを制御することにより実現される。   The functions of the information processing apparatus 100 to be described later can be realized by using, for example, hardware resources of the information processing apparatus illustrated in FIG. That is, the functions of the information processing apparatus 100 are realized by controlling the hardware shown in FIG. 5 using a computer program.

図5に示すように、このハードウェアは、主に、CPU902と、ROM(Read Only Memory)904と、RAM906と、ホストバス908と、ブリッジ910とを有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926とを有する。   As shown in FIG. 5, this hardware mainly includes a CPU 902, a ROM (Read Only Memory) 904, a RAM 906, a host bus 908, and a bridge 910. Further, this hardware includes an external bus 912, an interface 914, an input unit 916, an output unit 918, a storage unit 920, a drive 922, a connection port 924, and a communication unit 926.

CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。   The CPU 902 functions as, for example, an arithmetic processing unit or a control unit, and controls the overall operation of each component or a part thereof based on various programs recorded in the ROM 904, the RAM 906, the storage unit 920, or the removable recording medium 928. . The ROM 904 is an example of a storage device that stores a program read by the CPU 902, data used for calculation, and the like. The RAM 906 temporarily or permanently stores, for example, a program read by the CPU 902 and various parameters that change when the program is executed.

これらの要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。   These elements are connected to each other via, for example, a host bus 908 capable of high-speed data transmission. On the other hand, the host bus 908 is connected to an external bus 912 having a relatively low data transmission speed via a bridge 910, for example. As the input unit 916, for example, a mouse, a keyboard, a touch panel, a touch pad, a button, a switch, a lever, or the like is used. Furthermore, as the input unit 916, a remote controller capable of transmitting a control signal using infrared rays or other radio waves may be used.

出力部918としては、例えば、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、又はELD(Electro-Luminescence Display)などのディスプレイ装置が用いられる。また、出力部918として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部918は、情報を視覚的又は聴覚的に出力することが可能な装置である。   As the output unit 918, for example, a display device such as a CRT (Cathode Ray Tube), an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), or an ELD (Electro-Luminescence Display) is used. As the output unit 918, an audio output device such as a speaker or headphones, or a printer may be used. In other words, the output unit 918 is a device that can output information visually or audibly.

記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、HDDなどの磁気記憶デバイスが用いられる。また、記憶部920として、SSD(Solid State Drive)やRAMディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。   The storage unit 920 is a device for storing various data. As the storage unit 920, for example, a magnetic storage device such as an HDD is used. Further, as the storage unit 920, a semiconductor storage device such as an SSD (Solid State Drive) or a RAM disk, an optical storage device, a magneto-optical storage device, or the like may be used.

ドライブ922は、着脱可能な記録媒体であるリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。   The drive 922 is a device that reads information recorded on a removable recording medium 928 that is a removable recording medium or writes information on the removable recording medium 928. As the removable recording medium 928, for example, a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is used.

接続ポート924は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS−232Cポート、又は光オーディオ端子など、外部接続機器930を接続するためのポートである。外部接続機器930としては、例えば、プリンタなどが用いられる。   The connection port 924 is a port for connecting an external connection device 930 such as a USB (Universal Serial Bus) port, an IEEE 1394 port, a SCSI (Small Computer System Interface), an RS-232C port, or an optical audio terminal. For example, a printer or the like is used as the external connection device 930.

通信部926は、ネットワーク932に接続するための通信デバイスである。通信部926としては、例えば、有線又は無線LAN(Local Area Network)用の通信回路、WUSB(Wireless USB)用の通信回路、光通信用の通信回路やルータ、ADSL(Asymmetric Digital Subscriber Line)用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークであり、例えば、インターネット、LAN、放送網、衛星通信回線などを含む。   The communication unit 926 is a communication device for connecting to the network 932. As the communication unit 926, for example, a communication circuit for wired or wireless LAN (Local Area Network), a communication circuit for WUSB (Wireless USB), a communication circuit or router for optical communication, an ADSL (Asymmetric Digital Subscriber Line) Communication circuits, routers, communication circuits for mobile phone networks, and the like are used. A network 932 connected to the communication unit 926 is a wired or wireless network, and includes, for example, the Internet, a LAN, a broadcast network, a satellite communication line, and the like.

以上、情報処理装置100のハードウェアについて説明した。
[2−3.情報処理装置の機能]
次に、図6を参照しながら、情報処理装置100の機能について説明する。図6は、第2実施形態に係る情報処理装置の機能について説明するためのブロック図である。なお、以下の説明において、適宜、図7〜図17を参照する。
The hardware of the information processing apparatus 100 has been described above.
[2-3. Function of information processing apparatus]
Next, functions of the information processing apparatus 100 will be described with reference to FIG. FIG. 6 is a block diagram for explaining functions of the information processing apparatus according to the second embodiment. In the following description, FIGS. 7 to 17 are referred to as appropriate.

図6に示すように、情報処理装置100は、記憶部101、撮像部102、特徴点抽出部103、前段処理部104、後段処理部105、及び画像処理部106を有する。
なお、記憶部101の機能は、上述したRAM906や記憶部920などを用いて実現できる。特徴点抽出部103、前段処理部104、後段処理部105、及び画像処理部106の機能は、上述したCPU902などを用いて実現できる。
As illustrated in FIG. 6, the information processing apparatus 100 includes a storage unit 101, an imaging unit 102, a feature point extraction unit 103, a pre-processing unit 104, a post-processing unit 105, and an image processing unit 106.
Note that the function of the storage unit 101 can be realized by using the above-described RAM 906, the storage unit 920, or the like. The functions of the feature point extraction unit 103, the pre-processing unit 104, the post-processing unit 105, and the image processing unit 106 can be realized using the above-described CPU 902 or the like.

(記憶部101)
記憶部101には、特徴点情報101a、モデル情報101b、投票数テーブル101c、及びカウンタテーブル101dが格納される。特徴点情報101aは、画像から抽出された特徴点に関する情報である。モデル情報101bは、画像の位置合わせに利用する変換モデルに関する情報である。投票数テーブル101c、カウンタテーブル101dは、投票処理の中で投票数を管理するために利用されるテーブルである。
(Storage unit 101)
The storage unit 101 stores feature point information 101a, model information 101b, a vote count table 101c, and a counter table 101d. The feature point information 101a is information related to feature points extracted from the image. The model information 101b is information related to a conversion model used for image alignment. The vote count table 101c and the counter table 101d are tables used for managing the vote count in the voting process.

ここで、図7を参照しながら、特徴点情報101aについて、さらに説明する。図7は、第2実施形態に係る特徴点情報の一例を示した図である。
図7の例では、位置合わせの対象となる2つの画像P1、P2それぞれから抽出された特徴点に関する情報(座標、特徴量)が特徴点情報101aに含まれている。なお、画像P1の特徴点と画像P2の特徴点とは対応付けられていない。特徴量としては、例えば、エッジ検出により得られるエッジの強度(勾配の大きさ)やエッジの方向(勾配方向)がある。エッジの方向を示す特徴量は、例えば、注目画素の周囲にある画素のうち注目画素とは勾配方向が異なる画素の数に基づく指標で表現される。
Here, the feature point information 101a will be further described with reference to FIG. FIG. 7 is a diagram illustrating an example of feature point information according to the second embodiment.
In the example of FIG. 7, information (coordinates and feature amounts) regarding feature points extracted from each of the two images P1 and P2 to be aligned is included in the feature point information 101a. Note that the feature points of the image P1 and the feature points of the image P2 are not associated with each other. Examples of the feature amount include edge strength (gradient magnitude) obtained by edge detection and edge direction (gradient direction). The feature quantity indicating the direction of the edge is expressed by an index based on the number of pixels having a gradient direction different from that of the pixel of interest among the pixels around the pixel of interest.

ここで、モデル情報101bについて、さらに説明する。
モデル情報101bには、変換モデルを表現する数式及び変換パラメータの情報が含まれる。変換モデルとしては、例えば、上記の式(1)で表現されるアフィン変換の変換モデルなどが適用可能である。アフィン変換の場合、変換パラメータは変換行列の形式で表現される。この変換行列は6つの変換パラメータを含む。そのため、画像P1の特徴点と画像P2の特徴点とのペア(以下、特徴点ペア)を3組用意すれば変換行列を計算することができる。
Here, the model information 101b will be further described.
The model information 101b includes information on a mathematical expression expressing the conversion model and conversion parameters. As the conversion model, for example, a conversion model of affine transformation expressed by the above formula (1) can be applied. In the case of affine transformation, the transformation parameters are expressed in the form of a transformation matrix. This transformation matrix includes six transformation parameters. Therefore, if three pairs of feature points of the image P1 and feature points of the image P2 (hereinafter referred to as feature point pairs) are prepared, a transformation matrix can be calculated.

ここで、図8を参照しながら、投票数テーブル101cについて、さらに説明する。図8は、第2実施形態に係る投票数テーブルの一例を示した図である。
図8に示すように、投票数テーブル101cは、変換行列の計算に利用した特徴点ペアと、計算した変換行列に含まれるパラメータと、投票処理の中で当該パラメータに投票された投票数とを対応付けるテーブルである。例えば、図8の例では、3組の特徴点ペア(q14,q22)、(q13,q22)、(q11,q27)について変換パラメータ(0.31,0.26,0.61,0.18,0.53,0.12)が得られている。また、この変換パラメータに対して投票数(10)が対応付けられている。
Here, the vote number table 101c will be further described with reference to FIG. FIG. 8 is a diagram showing an example of the vote number table according to the second embodiment.
As shown in FIG. 8, the vote number table 101c includes the feature point pairs used for calculating the transformation matrix, the parameters included in the calculated transformation matrix, and the number of votes voted for the parameters in the voting process. It is a table to associate. For example, in the example of FIG. 8, conversion parameters (0.31, 0.26, 0.61, 0.18) for three feature point pairs (q14, q22), (q13, q22), and (q11, q27). , 0.53, 0.12). The number of votes (10) is associated with this conversion parameter.

ここで、図9を参照しながら、カウンタテーブル101dについて、さらに説明する。図9は、第2実施形態に係るカウンタテーブルの一例を示した図である。
図9に示すように、カウンタテーブル101dは、一方の画像に含まれる特徴点と、カウンタ値とを対応付けるテーブルである。図9の例では、画像P1の特徴点q10、q11、…、q1nのそれぞれと、カウンタ値とが対応付けられている。カウンタ値は、投票処理の中でインライヤと判定された特徴点ペアに含まれる特徴点をカウントした値である。カウンタテーブル101dは、投票処理を実行する際にインライヤか否かの判定を行う特徴点の選択順序を制御する際に利用される。
Here, the counter table 101d will be further described with reference to FIG. FIG. 9 is a diagram illustrating an example of a counter table according to the second embodiment.
As illustrated in FIG. 9, the counter table 101 d is a table that associates feature points included in one image with a counter value. In the example of FIG. 9, each of the feature points q10, q11,..., Q1n of the image P1 is associated with a counter value. The counter value is a value obtained by counting feature points included in a feature point pair determined as an inlier in the voting process. The counter table 101d is used when controlling the selection order of feature points for determining whether or not an inlier is performed when executing a voting process.

(撮像部102、特徴点抽出部103)
再び図6を参照する。撮像部102は、カメラ機能を提供する要素であり、画像を撮像する。例えば、撮像部102は、光学系、撮像素子、アナログ/デジタル変換回路、及び制御回路などを含む。撮像部102により撮像された画像(以下、画像P1、P2)は、記憶部101に格納されると共に、特徴点抽出部103に入力される。特徴点抽出部103は、入力された画像P1、P2のそれぞれから特徴点を抽出し、特徴点情報101aを生成する。特徴点抽出部103により生成された特徴点情報101aは記憶部101に格納される。
(Imaging unit 102, feature point extracting unit 103)
Refer to FIG. 6 again. The imaging unit 102 is an element that provides a camera function and captures an image. For example, the imaging unit 102 includes an optical system, an imaging device, an analog / digital conversion circuit, a control circuit, and the like. Images captured by the imaging unit 102 (hereinafter, images P1 and P2) are stored in the storage unit 101 and input to the feature point extraction unit 103. The feature point extraction unit 103 extracts feature points from each of the input images P1 and P2, and generates feature point information 101a. The feature point information 101 a generated by the feature point extraction unit 103 is stored in the storage unit 101.

(前段処理部104)
前段処理部104は、特徴量の大きな特徴点を用いて変換行列の推定値(以下、推定変換行列)を計算する。なお、以下では、前段処理部104が実行する処理を「前段処理」と呼ぶ場合がある。前段処理を実行するために、前段処理部104は、図6に示すように、パラメータ計算部141、及び投票処理部142を含む。
(Pre-processing unit 104)
The pre-processing unit 104 calculates an estimated value of a transformation matrix (hereinafter, an estimated transformation matrix) using a feature point having a large feature amount. In the following, the process executed by the pre-processing unit 104 may be referred to as “pre-process”. In order to execute the pre-stage processing, the pre-stage processing section 104 includes a parameter calculation section 141 and a voting processing section 142 as shown in FIG.

パラメータ計算部141は、記憶部101に格納された特徴点情報101aを参照し、画像P1から抽出された特徴点のうち、特徴量が大きい順に予め設定された数(X個)の特徴点を抽出する。また、パラメータ計算部141は、画像P2から抽出された特徴点のうち、特徴量が大きい順に予め設定された数(X個)の特徴点を抽出する。そして、パラメータ計算部141は、抽出した特徴点から特徴点ペアを選択し、変換モデルに含まれる変換行列を計算する。   The parameter calculation unit 141 refers to the feature point information 101a stored in the storage unit 101, and among the feature points extracted from the image P1, sets a predetermined number (X) of feature points in descending order of feature amount. Extract. Further, the parameter calculation unit 141 extracts a preset number (X) of feature points in descending order of the feature amount from the feature points extracted from the image P2. Then, the parameter calculation unit 141 selects a feature point pair from the extracted feature points, and calculates a transformation matrix included in the transformation model.

パラメータ計算部141は、選択した特徴点ペアの情報と、計算した変換行列の変換パラメータとを投票数テーブル101cに記録する。また、パラメータ計算部141により計算された変換行列は、投票処理部142に入力される。投票処理部142は、パラメータ計算部141により画像P1について抽出されたX個の特徴点のうち、入力された変換行列の計算に利用されていない特徴点を順次選択し、選択した特徴点がインライヤであるか否かを判定する。   The parameter calculation unit 141 records the selected feature point pair information and the calculated conversion parameter of the conversion matrix in the vote count table 101c. In addition, the transformation matrix calculated by the parameter calculation unit 141 is input to the voting processing unit 142. The voting processing unit 142 sequentially selects feature points that are not used in the calculation of the input transformation matrix among the X feature points extracted for the image P1 by the parameter calculation unit 141, and the selected feature points are inlined. It is determined whether or not.

例えば、投票処理部142は、入力された変換行列を用いて、選択した画像P1の特徴点を変換し、変換後の点を基準とする許容範囲内に画像P2の特徴点が存在するか否かを判定する。許容範囲内に画像P2の特徴点が存在する場合、投票処理部142は、選択した画像P1の特徴点がインライヤであると判定する。なお、投票処理部142は、変換後の点と画像P2の特徴点との最短距離が許容範囲内にあるか否かを判定し、最短距離が許容範囲内にある場合にインライヤであると判定してもよい。   For example, the voting processing unit 142 converts the feature point of the selected image P1 using the input conversion matrix, and whether or not the feature point of the image P2 exists within the allowable range with the converted point as a reference. Determine whether. When the feature point of the image P2 exists within the allowable range, the voting processing unit 142 determines that the feature point of the selected image P1 is an inlier. Note that the voting processing unit 142 determines whether or not the shortest distance between the converted point and the feature point of the image P2 is within the allowable range, and determines that it is an inlier when the shortest distance is within the allowable range. May be.

投票処理部142は、インライヤと判定する度に、入力された変換行列の変換パラメータに投票する。つまり、投票処理部142は、インライヤと判定した場合に、入力された変換行列の変換パラメータに対応する投票数テーブル101cの投票数を設定した数(例えば、1)だけ増加させる。X個の特徴点すべてについて上記の判定が終了した場合、投票処理部142は、入力された変換行列に関する投票処理の終了をパラメータ計算部141に通知する。この通知を受けたパラメータ計算部141は、未選択の特徴点ペアを選択し、変換モデルに含まれる変換行列を計算する。   Each time the voting processing unit 142 determines to be an inlier, it votes for the conversion parameter of the input conversion matrix. That is, when it is determined that the voter is an inlier, the voting processing unit 142 increases the number of votes set in the vote number table 101c corresponding to the conversion parameter of the input conversion matrix by a set number (for example, 1). When the above determination is completed for all X feature points, the voting processing unit 142 notifies the parameter calculating unit 141 of the end of the voting process for the input transformation matrix. Upon receiving this notification, the parameter calculation unit 141 selects an unselected feature point pair and calculates a transformation matrix included in the transformation model.

パラメータ計算部141は、選択した特徴点ペアの情報と、計算した変換行列の変換パラメータとを投票数テーブル101cに記録する。また、パラメータ計算部141により計算された変換行列は、投票処理部142に入力される。投票処理部142は、パラメータ計算部141により画像P1について抽出されたX個の特徴点のうち、入力された変換行列の計算に利用されていない特徴点を順次選択し、選択した特徴点がインライヤであるか否かを判定する。そして、投票処理部142は、インライヤと判定する度に、入力された変換行列の変換パラメータに投票する。   The parameter calculation unit 141 records the selected feature point pair information and the calculated conversion parameter of the conversion matrix in the vote count table 101c. In addition, the transformation matrix calculated by the parameter calculation unit 141 is input to the voting processing unit 142. The voting processing unit 142 sequentially selects feature points that are not used in the calculation of the input transformation matrix among the X feature points extracted for the image P1 by the parameter calculation unit 141, and the selected feature points are inlined. It is determined whether or not. Each time the voting processing unit 142 determines to be an inlier, it votes for the conversion parameter of the input conversion matrix.

上記と同様に、パラメータ計算部141は、画像P1、P2からX個ずつ抽出された特徴点から順次特徴点ペアを選択して変換行列を計算する。そして、投票処理部142は、計算された変換行列に対して投票処理を実行する。特徴点ペアとして抽出可能なすべての組み合わせを選択し終えた場合、前段処理部104は、投票数テーブル101cを参照し、投票数が最大の変換行列(推定変換行列)を抽出する。前段処理部104により抽出された推定変換行列の情報は、記憶部101に格納されると共に、後段処理部105に入力される。   Similarly to the above, the parameter calculation unit 141 calculates a transformation matrix by sequentially selecting feature point pairs from X feature points extracted from the images P1 and P2. And the voting process part 142 performs a voting process with respect to the calculated conversion matrix. When all combinations that can be extracted as feature point pairs have been selected, the pre-processing unit 104 refers to the vote number table 101c and extracts a conversion matrix (estimated conversion matrix) having the maximum number of votes. Information on the estimated transformation matrix extracted by the upstream processing unit 104 is stored in the storage unit 101 and input to the downstream processing unit 105.

(後段処理部105)
後段処理部105は、記憶部101に格納された特徴点情報101aに含まれる特徴点のうち、推定変換行列の計算に利用した特徴点の数よりも多くの特徴点を利用して画像P1、P2の位置合わせに用いる変換行列を計算する。このとき、後段処理部105は、推定変換行列に基づいて、変換行列の計算に用いる特徴点ペアを絞り込む。なお、以下では、後段処理部105が実行する処理を「後段処理」と呼ぶ場合がある。後段処理を実行するために、後段処理部105は、図6に示すように、パラメータ計算部151、候補抽出部152、及び投票処理部153を含む。
(Post-processing unit 105)
The post-processing unit 105 uses the more feature points than the number of feature points used for calculation of the estimated transformation matrix among the feature points included in the feature point information 101a stored in the storage unit 101, and uses the image P1, A transformation matrix used for the alignment of P2 is calculated. At this time, the post-processing unit 105 narrows down feature point pairs used for calculation of the transformation matrix based on the estimated transformation matrix. In the following, the processing executed by the post-processing unit 105 may be referred to as “post-processing”. In order to execute the post-stage processing, the post-stage processing unit 105 includes a parameter calculation unit 151, a candidate extraction unit 152, and a voting processing unit 153 as shown in FIG.

パラメータ計算部151は、記憶部101に格納された特徴点情報101aを参照し、画像P1から抽出された特徴点と、画像P2から抽出された特徴点とのペアである特徴点ペアをランダムに選択し、変換モデルに含まれる変換行列を計算する。このとき、パラメータ計算部151は、記憶部101に格納されたカウンタテーブル101dを参照し、投票数が最小の特徴点から順に特徴点を選択してもよい。パラメータ計算部151により計算された変換行列は、候補抽出部152に入力される。   The parameter calculation unit 151 refers to the feature point information 101a stored in the storage unit 101, and randomly selects a feature point pair that is a pair of the feature point extracted from the image P1 and the feature point extracted from the image P2. Select and calculate the transformation matrix included in the transformation model. At this time, the parameter calculation unit 151 may refer to the counter table 101d stored in the storage unit 101 and select feature points in order from the feature point with the smallest number of votes. The transformation matrix calculated by the parameter calculation unit 151 is input to the candidate extraction unit 152.

また、パラメータ計算部151は、選択した特徴点ペアの情報と、計算した変換行列の変換パラメータとを投票数テーブル101cに記録する。このとき、パラメータ計算部151は、推定変換行列の計算時に前段処理部104が利用した投票数テーブル101cとは異なる投票数テーブル101cを用意し、用意した投票数テーブル101cに特徴点ペアの情報と変換パラメータとを記録する。   Also, the parameter calculation unit 151 records the selected feature point pair information and the calculated conversion parameter of the conversion matrix in the vote count table 101c. At this time, the parameter calculation unit 151 prepares a vote number table 101c different from the vote number table 101c used by the pre-processing unit 104 at the time of calculating the estimated conversion matrix, and includes information on feature point pairs in the prepared vote number table 101c. Record the conversion parameters.

候補抽出部152は、入力された変換行列と推定変換行列との誤差を計算し、誤差が許容範囲内であるか否かを判定する。例えば、候補抽出部152は、変換パラメータの種類(回転、並進移動、拡大・縮小など)毎に、入力された変換行列に含まれる変換パラメータと、推定変換行列に含まれる変換パラメータとの差(差分絶対値など)を計算する。そして、候補抽出部152は、計算した差が予め設定された許容値より小さいか否かを判定する。但し、上記の許容値は、変換パラメータの種類毎に設定される。   The candidate extraction unit 152 calculates an error between the input conversion matrix and the estimated conversion matrix, and determines whether or not the error is within an allowable range. For example, for each type of conversion parameter (rotation, translational movement, enlargement / reduction, etc.), the candidate extraction unit 152 determines the difference between the conversion parameter included in the input conversion matrix and the conversion parameter included in the estimated conversion matrix ( Difference absolute value). Then, the candidate extraction unit 152 determines whether or not the calculated difference is smaller than a preset allowable value. However, the allowable value is set for each type of conversion parameter.

誤差が許容範囲内である場合、候補抽出部152は、入力された変換行列を投票処理部153に入力する。この場合、誤差が許容範囲内であると判定された変換行列について、後述する投票処理部153による投票処理が実行される。一方、誤差が許容範囲外である場合、候補抽出部152は、誤差が許容範囲外である旨をパラメータ計算部151に通知する。この場合、誤差が許容範囲外であると判定された変換行列について、後述する投票処理部153による投票処理は実行されない。   If the error is within the allowable range, the candidate extraction unit 152 inputs the input conversion matrix to the voting processing unit 153. In this case, a voting process by the voting processing unit 153 described later is executed for the transformation matrix determined that the error is within the allowable range. On the other hand, when the error is outside the allowable range, the candidate extraction unit 152 notifies the parameter calculation unit 151 that the error is outside the allowable range. In this case, voting processing by the voting processing unit 153, which will be described later, is not executed for the transformation matrix for which the error is determined to be outside the allowable range.

変換行列が入力された投票処理部153は、画像P1から抽出された特徴点のうち、入力された変換行列の計算に利用されていない特徴点を順次選択し、選択した特徴点がインライヤであるか否かを判定する。   The voting processing unit 153 to which the transformation matrix is input sequentially selects the feature points that are not used in the calculation of the inputted transformation matrix among the feature points extracted from the image P1, and the selected feature point is an inlier. It is determined whether or not.

例えば、投票処理部153は、入力された変換行列を用いて、選択した画像P1の特徴点を変換し、変換後の点を基準とする許容範囲内に画像P2の特徴点が存在するか否かを判定する。許容範囲内に画像P2の特徴点が存在する場合、投票処理部153は、選択した画像P1の特徴点がインライヤであると判定する。なお、投票処理部153は、変換後の点と画像P2の特徴点との最短距離が許容範囲内にあるか否かを判定し、最短距離が許容範囲内にある場合にインライヤであると判定してもよい。   For example, the voting processing unit 153 converts the feature point of the selected image P1 using the input conversion matrix, and whether or not the feature point of the image P2 exists within the allowable range with the converted point as a reference. Determine whether. When the feature point of the image P2 exists within the allowable range, the voting processing unit 153 determines that the feature point of the selected image P1 is an inlier. The voting processing unit 153 determines whether or not the shortest distance between the converted point and the feature point of the image P2 is within the allowable range, and determines that the inlier is in the case where the shortest distance is within the allowable range. May be.

投票処理部153は、インライヤと判定する度に、入力された変換行列の変換パラメータに投票する。つまり、投票処理部153は、インライヤと判定した場合に、入力された変換行列の変換パラメータに対応する投票数テーブル101cの投票数を設定した数(例えば、1)だけ増加させる。さらに、投票処理部153は、インライヤと判定した場合に、入力された変換行列の計算に利用された特徴点ペアに含まれる画像P1の特徴点について、カウンタテーブル101dのカウント値を増加させる。   Each time the voting processing unit 153 determines to be an inlier, it votes for the conversion parameter of the input conversion matrix. That is, when it is determined as an inlier, the voting processing unit 153 increases the number of votes set in the vote number table 101c corresponding to the conversion parameter of the input conversion matrix (for example, 1). Further, when determining that the voter is an inlier, the voting processing unit 153 increases the count value of the counter table 101d for the feature point of the image P1 included in the feature point pair used for the calculation of the input transformation matrix.

すべての特徴点について上記の判定が終了した場合、投票処理部153は、入力された変換行列に関する投票処理の終了をパラメータ計算部151に通知する。この通知を受けたパラメータ計算部151は、未選択の特徴点ペアを選択し、変換モデルに含まれる変換行列を計算する。   When the above determination is completed for all the feature points, the voting processing unit 153 notifies the parameter calculating unit 151 of the end of the voting process regarding the input transformation matrix. Upon receiving this notification, the parameter calculation unit 151 selects an unselected feature point pair and calculates a transformation matrix included in the transformation model.

パラメータ計算部151は、選択した特徴点ペアの情報と、計算した変換行列の変換パラメータとを投票数テーブル101cに記録する。また、パラメータ計算部151により計算された変換行列は、候補抽出部152に入力される。候補抽出部152は、入力された変換行列に対する判定処理を実行する。投票処理部153は、変換行列が入力された場合に、入力された変換行列の計算に利用されていない特徴点を順次選択し、選択した特徴点がインライヤであるか否かを判定する。そして、投票処理部153は、インライヤと判定する度に、入力された変換行列の変換パラメータに投票する。   The parameter calculation unit 151 records the selected feature point pair information and the calculated conversion parameter of the conversion matrix in the vote count table 101c. In addition, the transformation matrix calculated by the parameter calculation unit 151 is input to the candidate extraction unit 152. The candidate extraction unit 152 performs a determination process on the input transformation matrix. When a conversion matrix is input, the voting processing unit 153 sequentially selects feature points that are not used for calculation of the input conversion matrix, and determines whether or not the selected feature points are inliers. The voting processing unit 153 votes for the conversion parameter of the input conversion matrix every time it is determined as an inlier.

上記と同様に、パラメータ計算部151は、画像P1、P2から抽出された特徴点から順次特徴点ペアを選択して変換行列を計算する。そして、候補抽出部152は、選択された変換行列に対する判定処理を実行する。また、投票処理部153は、変換行列が入力された場合に、計算された変換行列に対して投票処理を実行する。これらの処理が予め設定された回数(例えば、上記の式(1)で与えられるT)実行された場合、後段処理部105は、投票数テーブル101cを参照し、投票数が最大の変換行列を抽出する。   Similarly to the above, the parameter calculation unit 151 sequentially selects feature point pairs from the feature points extracted from the images P1 and P2, and calculates a transformation matrix. Then, the candidate extraction unit 152 executes a determination process for the selected transformation matrix. Further, the voting processing unit 153 performs voting processing on the calculated conversion matrix when the conversion matrix is input. When these processes are executed a predetermined number of times (for example, T given by the above equation (1)), the post-processing unit 105 refers to the vote number table 101c and selects a conversion matrix having the largest vote number. Extract.

後段処理部105により抽出された変換行列の情報は、画像処理部106に入力される。画像処理部106は、入力された変換行列を用いて画像P1に含まれる画素の座標変換を実行する。そして、画像処理部106は、変換後の画像P1、及び画像P2を利用して予め設定された画像処理を実行する。例えば、画像処理部106は、電子式手ぶれ補正、HDR画像の生成、各種の認証処理などを実行する。   Information on the transformation matrix extracted by the post-processing unit 105 is input to the image processing unit 106. The image processing unit 106 performs coordinate conversion of the pixels included in the image P1 using the input conversion matrix. Then, the image processing unit 106 performs preset image processing using the converted image P1 and the image P2. For example, the image processing unit 106 performs electronic camera shake correction, HDR image generation, various authentication processes, and the like.

(前段処理:推定変換行列の計算)
ここで、図10〜図12を参照しながら、前段処理について、さらに説明する。
なお、図10は、第2実施形態に係る前段処理(特徴点ペアの抽出)について説明するための図である。また、図11は、第2実施形態に係る前段処理(投票処理)について説明するための図である。また、図12は、第2実施形態に係る前段処理(推定変換行列の決定)について説明するための図である。
(Pre-processing: Calculation of estimated transformation matrix)
Here, the pre-processing will be further described with reference to FIGS.
FIG. 10 is a diagram for explaining pre-processing (extraction of feature point pairs) according to the second embodiment. FIG. 11 is a diagram for explaining the pre-stage process (voting process) according to the second embodiment. FIG. 12 is a diagram for explaining pre-stage processing (determination of an estimated transformation matrix) according to the second embodiment.

図10に示すように、画像P1からn個(例えば、n=100)の特徴点q10、q11、…、q1nが検出され、画像P2からm個(例えば、m=80)の特徴点q20、q21、…、q2mが検出されている場合について考える。この場合、パラメータ計算部141は、画像P1から検出された特徴点のうち、特徴量が大きい順にX個(図10の例ではX=10)の特徴点を抽出する。また、パラメータ計算部141は、画像P2から検出された特徴点のうち、特徴量が大きい順にX個(図10の例ではX=10)の特徴点を抽出する。   As shown in FIG. 10, n (for example, n = 100) feature points q10, q11,..., Q1n are detected from the image P1, and m (for example, m = 80) feature points q20 are detected from the image P2. Consider the case where q21,..., q2m are detected. In this case, the parameter calculation unit 141 extracts X feature points (X = 10 in the example of FIG. 10) in descending order of the feature amount from the feature points detected from the image P1. Also, the parameter calculation unit 141 extracts X feature points (X = 10 in the example of FIG. 10) in descending order of the feature amount from the feature points detected from the image P2.

特徴量の大きな特徴点は、特徴点としての信頼性が高い特徴点である。また、特徴量の大きな特徴点を抽出することは、特徴点の選択基準となる閾値を上げることに相当する。上記のように、特徴点の数を減らすことで、画像P1の特徴点と画像P2の特徴点とを組み合わせて特徴点ペアを生成する際、組み合わせ数を大幅に低減することが可能になる。考え得る特徴点ペアの数が少なくなれば、投票処理部142による投票処理の実行回数が少なくなり、処理負荷が低減される。   A feature point having a large feature amount is a feature point having high reliability as a feature point. Further, extracting feature points having a large feature amount corresponds to increasing a threshold value that serves as a selection criterion for feature points. As described above, by reducing the number of feature points, it is possible to significantly reduce the number of combinations when generating feature point pairs by combining the feature points of the image P1 and the feature points of the image P2. If the number of possible feature point pairs decreases, the number of times the voting process is executed by the voting processing unit 142 decreases, and the processing load is reduced.

パラメータ計算部141は、抽出した特徴点の中から特徴点の組み合わせを選択して、変換行列を計算するに足りる数の特徴点ペアを生成する。上記の式(2)で与えられるアフィン変換の変換モデルを利用する場合、少なくとも3組の特徴点ペアを利用すれば変換行列を計算することが可能である。そのため、図10には、3組の特徴点ペアを生成する例を示した。なお、特徴点を抽出する際、特徴点間の距離を考慮してもよい。特徴点間の距離を考慮する方法については後段において述べる。   The parameter calculation unit 141 selects a combination of feature points from the extracted feature points, and generates a number of feature point pairs sufficient to calculate the transformation matrix. When the transformation model of affine transformation given by the above equation (2) is used, a transformation matrix can be calculated by using at least three feature point pairs. Therefore, FIG. 10 shows an example in which three feature point pairs are generated. Note that the distance between feature points may be taken into account when extracting feature points. A method for considering the distance between feature points will be described later.

上記のように特徴点ペアを生成した後、パラメータ計算部141は、図11に示すように、生成した特徴点ペアを利用して変換行列を計算する。なお、i番目に生成された特徴点ペアに対応する変換行列をRi(i=1,2,…)と表記する。つまり、パラメータ計算部141は、変換行列Riの変換パラメータr11、r12、…、r23を計算する。計算された変換行列Riは、投票処理部142による投票処理に利用される。   After generating the feature point pair as described above, the parameter calculation unit 141 calculates a transformation matrix using the generated feature point pair as shown in FIG. Note that a transformation matrix corresponding to the i-th generated feature point pair is denoted Ri (i = 1, 2,...). That is, the parameter calculation unit 141 calculates the conversion parameters r11, r12,..., R23 of the conversion matrix Ri. The calculated transformation matrix Ri is used for voting processing by the voting processing unit 142.

投票処理部142は、パラメータ計算部141により抽出された画像P1の特徴点から1つずつ特徴点を選択し、選択した特徴点の座標を変換行列Riにより変換する。そして、投票処理部142は、変換後の座標と画像P2の特徴点とが許容範囲内にあるか否かを判定する。   The voting processing unit 142 selects feature points one by one from the feature points of the image P1 extracted by the parameter calculation unit 141, and converts the coordinates of the selected feature points using the transformation matrix Ri. Then, the voting processing unit 142 determines whether the converted coordinates and the feature points of the image P2 are within the allowable range.

図11の例では、画像P1の特徴点q15に対応する変換後の座標aと、画像P2の特徴点q27とが許容範囲内に収まっている。画像P1の特徴点q17についても同様である。一方、画像P1の特徴点q16に対応する変換後の座標bを基準とする許容範囲内には画像P2の特徴点が存在しない。この場合、特徴点q15、q17はインライヤであると判定され、特徴点q16はアウトライヤであると判定される。インライヤと判定した場合、投票処理部142は、変換行列Riの投票数を増加させる。   In the example of FIG. 11, the converted coordinates a corresponding to the feature point q15 of the image P1 and the feature point q27 of the image P2 are within the allowable range. The same applies to the feature point q17 of the image P1. On the other hand, the feature point of the image P2 does not exist within the allowable range based on the coordinate b after conversion corresponding to the feature point q16 of the image P1. In this case, the feature points q15 and q17 are determined to be inliers, and the feature point q16 is determined to be an outlier. If it is determined as an inlier, the voting processing unit 142 increases the number of votes in the transformation matrix Ri.

パラメータ計算部141により抽出された画像P1の特徴点(X個)をすべて選択し終えた場合、投票処理部142は、変換行列Riに対する投票処理の完了をパラメータ計算部141に通知する。この通知を受けたパラメータ計算部141は、他の特徴点ペアを生成する。そして、再び投票処理部142による投票処理が実行される。図12に示すように、特徴点ペアの抽出、及び投票処理が繰り返し実行される。例えば、取り得るすべての特徴点ペアについて処理が完了するまで処理が繰り返し実行される。但し、繰り返し回数が予め設定されていてもよい。   When all feature points (X) of the image P1 extracted by the parameter calculation unit 141 have been selected, the voting processing unit 142 notifies the parameter calculation unit 141 of the completion of the voting process for the transformation matrix Ri. Upon receiving this notification, the parameter calculation unit 141 generates another feature point pair. Then, the voting process by the voting processing unit 142 is executed again. As shown in FIG. 12, feature point pair extraction and voting processing are repeatedly executed. For example, the process is repeatedly executed until the process is completed for all possible feature point pairs. However, the number of repetitions may be set in advance.

繰り返し処理が完了すると、図12に示すような投票数テーブル101cが得られる。図12の例では、変換パラメータに対応する変換行列の情報を併せて記載している。例えば、投票処理部142は、投票数テーブル101cのレコードを投票数が多い順にソートし、最上位に位置するレコードに対応する変換行列を抽出する。図12の例では、変換行列R3が最大投票数に対応する。そして、投票処理部142は、抽出した変換行列(図12の例ではR3)を推定変換行列Rに設定する。推定変換行列Rの設定が完了すると、前段処理は終了する。   When the iterative process is completed, a vote number table 101c as shown in FIG. 12 is obtained. In the example of FIG. 12, information on the conversion matrix corresponding to the conversion parameter is also described. For example, the voting processing unit 142 sorts the records of the vote number table 101c in descending order of the number of votes, and extracts a conversion matrix corresponding to the record positioned at the top. In the example of FIG. 12, the transformation matrix R3 corresponds to the maximum number of votes. Then, the voting processing unit 142 sets the extracted transformation matrix (R3 in the example of FIG. 12) as the estimated transformation matrix R. When the setting of the estimated transformation matrix R is completed, the pre-processing is finished.

(後段処理:変換行列の決定)
次に、図13〜図17を参照しながら、後段処理について、さらに説明する。
なお、図13は、第2実施形態に係る後段処理(最大投票数の計算)について説明するための図である。また、図14は、第2実施形態に係る後段処理(特徴点ペアの抽出)について説明するための図である。また、図15は、第2実施形態に係る後段処理(変換行列の比較)について説明するための図である。また、図16は、第2実施形態に係る後段処理(投票処理)について説明するための図である。また、図17は、第2実施形態に係る後段処理(変換行列の決定)について説明するための図である。
(Post-processing: Determination of transformation matrix)
Next, the subsequent processing will be further described with reference to FIGS.
FIG. 13 is a diagram for explaining post-processing (calculation of the maximum number of votes) according to the second embodiment. FIG. 14 is a diagram for explaining post-processing (extraction of feature point pairs) according to the second embodiment. FIG. 15 is a diagram for explaining post-stage processing (comparison of transformation matrices) according to the second embodiment. FIG. 16 is a diagram for explaining post-processing (voting processing) according to the second embodiment. FIG. 17 is a diagram for explaining post-processing (conversion matrix determination) according to the second embodiment.

図13に示すように、後段処理部105は、処理の過程で参照する指標(最大投票数)の初期値を計算する。この指標は、最終的に採用されない変換行列に対する投票処理を途中で判定するために利用される。例えば、現時点で投票数が最大となる変換行列があり、他の変換行列に対する投票処理の中でインライヤとなる特徴点の数が、現時点で最大の投票数を下回ることが確定した場合、他の変換行列は最終的に採用されない。この場合、他の変換行列に対する投票処理を継続しても無駄である。そこで、無駄な処理を省くために上記の指標(最大投票数)を導入する。   As illustrated in FIG. 13, the post-processing unit 105 calculates an initial value of an index (maximum number of votes) that is referred to in the process. This index is used to determine a voting process for a transformation matrix that is not finally adopted. For example, if there is a transformation matrix with the largest number of votes at the current time, and it is determined that the number of feature points that are inliers in the voting process for other transformation matrices is less than the largest number of votes at the moment, The transformation matrix is not finally adopted. In this case, it is useless to continue the voting process for another transformation matrix. Therefore, the above index (maximum number of votes) is introduced in order to eliminate useless processing.

投票処理部153は、画像P1の特徴点から1つずつ特徴点を選択し、選択した特徴点の座標を推定変換行列Rにより変換する。このとき、投票処理部153により選択される特徴点は、前段処理で利用されたX個の特徴点に制限されず、画像P1から抽出された特徴点すべて、又はX個以上の特徴点が利用される。投票処理部153は、変換後の座標と画像P2の特徴点とが許容範囲内にあるか否かを判定する。   The voting processing unit 153 selects feature points one by one from the feature points of the image P1, and converts the coordinates of the selected feature points using the estimated conversion matrix R. At this time, the feature points selected by the voting processing unit 153 are not limited to the X feature points used in the previous process, but all the feature points extracted from the image P1 or X or more feature points are used. Is done. The voting processing unit 153 determines whether the converted coordinates and the feature points of the image P2 are within the allowable range.

図13の例では、画像P1の特徴点q15に対応する変換後の座標aと、画像P2の特徴点q27とが許容範囲内に収まっている。画像P1の特徴点q17についても同様である。一方、画像P1の特徴点q16に対応する変換後の座標bを基準とする許容範囲内には画像P2の特徴点が存在しない。この場合、特徴点q15、q17はインライヤであると判定され、特徴点q16はアウトライヤであると判定される。インライヤと判定した場合、投票処理部153は、最大投票数を増加させる。   In the example of FIG. 13, the converted coordinates a corresponding to the feature point q15 of the image P1 and the feature point q27 of the image P2 are within the allowable range. The same applies to the feature point q17 of the image P1. On the other hand, the feature point of the image P2 does not exist within the allowable range based on the coordinate b after conversion corresponding to the feature point q16 of the image P1. In this case, the feature points q15 and q17 are determined to be inliers, and the feature point q16 is determined to be an outlier. When it is determined as an inlier, the voting processing unit 153 increases the maximum number of votes.

最大投票数が計算された後、パラメータ計算部151は、図14に示すように、画像P1、P2の特徴点から特徴点の組み合わせをランダムに選択して、変換行列を計算するに足りる数の特徴点ペアを生成する。但し、パラメータ計算部151は、推定変換行列Rの計算に利用した特徴点ペアとは異なる特徴点ペアを生成する。   After the maximum number of votes is calculated, the parameter calculation unit 151 selects a combination of feature points randomly from the feature points of the images P1 and P2, as shown in FIG. 14, and has a number sufficient to calculate the transformation matrix. Generate feature point pairs. However, the parameter calculation unit 151 generates a feature point pair different from the feature point pair used for calculating the estimated transformation matrix R.

特徴点ペアを生成した後、パラメータ計算部151は、図15に示すように、生成した特徴点ペアを利用して変換行列を計算する。なお、i番目に生成された特徴点ペアに対応する変換行列をHi(i=1,2,…)と表記する。つまり、パラメータ計算部151は、変換行列Hiの変換パラメータh11、h12、…、h23を計算する。計算された変換行列Hiは、候補抽出部152により利用される。   After generating the feature point pair, the parameter calculation unit 151 calculates a transformation matrix using the generated feature point pair as shown in FIG. Note that the transformation matrix corresponding to the i-th generated feature point pair is denoted as Hi (i = 1, 2,...). That is, the parameter calculation unit 151 calculates the conversion parameters h11, h12,..., H23 of the conversion matrix Hi. The calculated transformation matrix Hi is used by the candidate extraction unit 152.

候補抽出部152は、推定変換行列Rの変換パラメータr11、r12、…、r23と、変換行列Hiの変換パラメータh11、h12、…、h23との差|rk−hk|(但し、k=11,12,…,23)をそれぞれ計算する。   The candidate extraction unit 152 determines the difference between the conversion parameters r11, r12, ..., r23 of the estimated conversion matrix R and the conversion parameters h11, h12, ..., h23 of the conversion matrix Hi | rk-hk | (where k = 11, 12,..., 23) are calculated.

また、候補抽出部152は、計算した差|rk−hk|が予め設定された閾値Thkより小さいか否かを判定する。計算した差|rk−hk|が閾値Thkより小さい場合、候補抽出部152は、変換行列Hiを候補として投票処理部153に入力する。この場合、変換行列Hiは投票処理部153による投票処理に利用される。一方、計算した差|rk−hk|が閾値Thkより小さくない場合、候補抽出部152は、変換行列Hiを候補外とし、投票処理部153に入力しない。この場合、変換行列Hiは投票処理部153による投票処理に利用されない。   Further, the candidate extraction unit 152 determines whether or not the calculated difference | rk−hk | is smaller than a preset threshold value Thk. When the calculated difference | rk−hk | is smaller than the threshold Thk, the candidate extraction unit 152 inputs the transformation matrix Hi as a candidate to the voting processing unit 153. In this case, the transformation matrix Hi is used for voting processing by the voting processing unit 153. On the other hand, when the calculated difference | rk−hk | is not smaller than the threshold value Thk, the candidate extraction unit 152 excludes the transformation matrix Hi from the candidates and does not input it to the voting processing unit 153. In this case, the transformation matrix Hi is not used for voting processing by the voting processing unit 153.

変換行列Hiが投票処理部153に入力された場合、投票処理部153は、画像P1の特徴点から1つずつ特徴点を選択し、選択した特徴点の座標を変換行列Hiにより変換する。このとき、投票処理部153により選択される特徴点は、前段処理で利用されたX個の特徴点に制限されず、画像P1から抽出された特徴点すべて、又はX個以上の特徴点が利用される。このとき、投票処理部153は、カウンタテーブル101dを参照し、投票数が小さい順に特徴点を選択する。また、投票処理部153は、変換後の座標と画像P2の特徴点とが許容範囲内にあるか否かを判定する。   When the transformation matrix Hi is input to the voting processing unit 153, the voting processing unit 153 selects feature points one by one from the feature points of the image P1, and transforms the coordinates of the selected feature points using the transformation matrix Hi. At this time, the feature points selected by the voting processing unit 153 are not limited to the X feature points used in the previous process, but all the feature points extracted from the image P1 or X or more feature points are used. Is done. At this time, the voting processing unit 153 refers to the counter table 101d and selects feature points in ascending order of the number of votes. Also, the voting processing unit 153 determines whether or not the converted coordinates and the feature points of the image P2 are within an allowable range.

図16の例では、画像P1の特徴点q15に対応する変換後の座標aと、画像P2の特徴点q27とが許容範囲内に収まっている。画像P1の特徴点q17についても同様である。一方、画像P1の特徴点q16に対応する変換後の座標bを基準とする許容範囲内には画像P2の特徴点が存在しない。この場合、特徴点q15、q17はインライヤであると判定され、特徴点q16はアウトライヤであると判定される。   In the example of FIG. 16, the converted coordinates a corresponding to the feature point q15 of the image P1 and the feature point q27 of the image P2 are within the allowable range. The same applies to the feature point q17 of the image P1. On the other hand, the feature point of the image P2 does not exist within the allowable range based on the coordinate b after conversion corresponding to the feature point q16 of the image P1. In this case, the feature points q15 and q17 are determined to be inliers, and the feature point q16 is determined to be an outlier.

インライヤと判定した場合、投票処理部153は、変換行列Hiに対する投票数を増加させる。さらに、投票処理部153は、変換行列Hiの計算に利用した特徴点ペアに含まれる画像P1の特徴点についてカウンタテーブル101dのカウント値を増加させ、カウンタテーブル101dを更新する。   If it is determined as an inlier, the voting processing unit 153 increases the number of votes for the transformation matrix Hi. Further, the voting processing unit 153 increases the count value of the counter table 101d for the feature points of the image P1 included in the feature point pair used for the calculation of the transformation matrix Hi, and updates the counter table 101d.

また、投票処理部153は、現時点でアウトライヤと判定された特徴点の数をカウントする。現時点の最大投票数をNmaxとし、推定変換行列Rの計算に利用した画像P1の特徴点数をdとした場合に、投票処理部153は、アウトライヤと判定された特徴点の数が(n−d−Nmax)より大きいか否かを判定する。アウトライヤと判定された特徴点の数が(n−d−Nmax)より大きい場合、投票処理部153は、変換行列Hiに対する投票処理の中止をパラメータ計算部151に通知する。   In addition, the voting processing unit 153 counts the number of feature points determined to be outliers at the present time. When the current maximum number of votes is Nmax and the number of feature points of the image P1 used for calculation of the estimated transformation matrix R is d, the voting processing unit 153 determines that the number of feature points determined to be outliers is (n−d -Nmax) is determined. When the number of feature points determined to be outliers is larger than (nd−Nmax), the voting processing unit 153 notifies the parameter calculation unit 151 that the voting processing for the transformation matrix Hi is stopped.

また、画像P1の特徴点をすべて選択し終えた場合、投票処理部153は、変換行列Hiに対する投票処理の完了をパラメータ計算部151に通知する。完了又は中止の通知を受けたパラメータ計算部151は、他の特徴点ペアを生成する。そして、再び候補抽出部152、投票処理部153による処理が実行される。図17に示すように、特徴点ペアの抽出、変換行列の比較、及び投票処理が繰り返し実行される。例えば、予め設定された繰り返し回数(例えば、上記の式(1)で与えられるT)だけ処理が実行される。   When all the feature points of the image P1 have been selected, the voting processing unit 153 notifies the parameter calculating unit 151 of the completion of the voting process for the transformation matrix Hi. Upon receiving the notification of completion or cancellation, the parameter calculation unit 151 generates another feature point pair. And the process by the candidate extraction part 152 and the voting process part 153 is performed again. As shown in FIG. 17, feature point pair extraction, transformation matrix comparison, and voting are repeatedly performed. For example, the process is executed for a preset number of repetitions (for example, T given by the above equation (1)).

繰り返し処理が完了すると、図17に示すような投票数テーブル101cが得られる。図17の例では、変換パラメータに対応する変換行列の情報を併せて記載している。例えば、投票処理部153は、投票数テーブル101cのレコードを投票数が多い順にソートし、最上位に位置するレコードに対応する変換行列を抽出する。図17の例では、変換行列H9が最大投票数に対応する。そして、投票処理部153は、抽出した変換行列(図17の例ではH9)を画像P1の変換に利用する変換行列Hに設定する。変換行列Hの設定が完了すると、後段処理は終了する。   When the iterative process is completed, a vote number table 101c as shown in FIG. 17 is obtained. In the example of FIG. 17, information on the conversion matrix corresponding to the conversion parameter is also described. For example, the voting processing unit 153 sorts the records of the vote number table 101c in descending order of the number of votes, and extracts a conversion matrix corresponding to the record positioned at the highest level. In the example of FIG. 17, the conversion matrix H9 corresponds to the maximum number of votes. Then, the voting processing unit 153 sets the extracted conversion matrix (H9 in the example of FIG. 17) as the conversion matrix H used for the conversion of the image P1. When the setting of the transformation matrix H is completed, the subsequent process is terminated.

(変形例:前段処理で特徴点間の距離を考慮する方法)
ここで、特徴点間の距離を考慮して前段処理に利用する特徴点ペアを抽出する方法(変形例)について、さらに説明する。
(Modification: A method that considers the distance between feature points in the previous process)
Here, a method (variation example) of extracting a feature point pair used for the pre-stage processing in consideration of the distance between the feature points will be further described.

前処理の中で特徴量が大きい順にX個の特徴点を抽出する方法については既に説明した。ここでは、特徴量の大きさだけでなく、特徴点間の距離が離れているものを優先的に抽出する方法について説明する。   The method of extracting X feature points in descending order of the feature amount in the preprocessing has already been described. Here, a method for preferentially extracting not only the size of the feature amount but also a distance between feature points will be described.

例えば、前段処理部104は、特徴量が大きい順にY個(Y>X)の特徴点を抽出し、抽出した特徴点の中から、他の特徴点との間の最短距離が長いものを順に選択してX個の特徴点を抽出する。他の例として、注目する画素と周囲の画素との間の距離が大きいほど値が大きくなる重み値を用いて注目する画素の特徴量に重み付けした上で、重み付き特徴量が大きい順にX個の特徴点を抽出する方法も考えられる。さらに他の例として、画像を複数の分割領域に分け、分割領域毎に特徴量が大きい順にZ個(但し、X=分割領域数×Z)の特徴点を選ぶ方法も考えられる。   For example, the pre-processing unit 104 extracts Y (Y> X) feature points in descending order of the feature amount, and sequentially selects the feature points with the longest shortest distance from other feature points. Select and extract X feature points. As another example, after weighting the feature amount of the pixel of interest using a weight value that increases as the distance between the pixel of interest and the surrounding pixels increases, the X weighted feature amount increases in descending order. A method of extracting the feature points of can also be considered. As another example, a method may be considered in which an image is divided into a plurality of divided regions, and Z feature points (where X = the number of divided regions × Z) are selected in descending order of the feature amount for each divided region.

上記の方法を適用すれば、画像の全体に広く分散している特徴点が優先的に抽出されるため、特徴量の大きな特徴点が局所的に集まっている画像を対象とする場合でも量子誤差を少なくする効果が期待できる。さらに、特徴量の大きな特徴点を含む被写体が動体である場合に、その動体に画面全体が引きずられてしまうことを防止する効果が期待できる。   If the above method is applied, feature points that are widely dispersed throughout the entire image are preferentially extracted, so that quantum errors can be obtained even when targeting an image in which feature points with large feature quantities are gathered locally. The effect of reducing the amount can be expected. Furthermore, when a subject including a feature point having a large feature amount is a moving object, an effect of preventing the entire screen from being dragged by the moving object can be expected.

以上、情報処理装置100の機能について説明した。
[2−4.処理の流れ]
次に、図18〜図23を参照しながら、情報処理装置100が実行する処理の流れについて説明する。
The function of the information processing apparatus 100 has been described above.
[2-4. Process flow]
Next, the flow of processing executed by the information processing apparatus 100 will be described with reference to FIGS.

(全体的な処理の流れ)
まず、図18を参照しながら、処理の全体的な流れについて説明する。なお、図18は、第2実施形態に係る情報処理装置が実行する処理の全体的な流れを示したフロー図である。
(Overall processing flow)
First, the overall flow of processing will be described with reference to FIG. FIG. 18 is a flowchart showing an overall flow of processing executed by the information processing apparatus according to the second embodiment.

図18に示すように、情報処理装置100は、画像P1、P2を取得する(S101)。例えば、情報処理装置100は、撮像部102の機能により、被写体の画像を連続的に撮像して画像P1、P2を取得する。但し、情報処理装置100は、ネットワーク932や接続ポート924に接続された外部の記憶装置から画像P1、P2を取得してもよい。また、情報処理装置100は、ドライブ922を介してリムーバブル記録媒体928に記録された画像P1、P2を取得してもよい。   As illustrated in FIG. 18, the information processing apparatus 100 acquires images P1 and P2 (S101). For example, the information processing apparatus 100 acquires images P <b> 1 and P <b> 2 by continuously capturing images of the subject using the function of the imaging unit 102. However, the information processing apparatus 100 may acquire the images P1 and P2 from an external storage device connected to the network 932 or the connection port 924. Further, the information processing apparatus 100 may acquire the images P1 and P2 recorded on the removable recording medium 928 via the drive 922.

次いで、情報処理装置100は、特徴点抽出部103の機能により、画像P1、P2から特徴点(例えば、100個ずつ)を抽出する(S102)。次いで、情報処理装置100は、前段処理部104の機能により前段処理を実行する(S103)。S103の処理では、推定変換行列が計算される。   Next, the information processing apparatus 100 extracts feature points (for example, 100 pieces each) from the images P1 and P2 by the function of the feature point extraction unit 103 (S102). Next, the information processing apparatus 100 executes pre-processing by the function of the pre-processing unit 104 (S103). In the process of S103, an estimated transformation matrix is calculated.

次いで、情報処理装置100は、後段処理部105の機能により後段処理を実行する(S104)。S104の処理では、画像P1の変換に利用する変換行列が決定される。次いで、情報処理装置100は、画像処理部106の機能により、S104の処理で決定された変換行列を用いて画像処理を実行し(S105)、画像処理後の画像を出力する(S106)。S106の処理が完了すると、図18に示した一連の処理は終了する。   Next, the information processing apparatus 100 executes post-processing by the function of the post-processing unit 105 (S104). In the process of S104, a conversion matrix used for conversion of the image P1 is determined. Next, the information processing apparatus 100 performs image processing using the transformation matrix determined in S104 by the function of the image processing unit 106 (S105), and outputs an image after image processing (S106). When the process of S106 is completed, the series of processes illustrated in FIG.

(前段処理の流れ)
次に、図19及び図20を参照しながら、前段処理の流れについて、さらに説明する。なお、図19は、第2実施形態に係る情報処理装置が実行する前段処理の流れを示した第1のフロー図である。また、図20は、第2実施形態に係る情報処理装置が実行する前段処理の流れを示した第2のフロー図である。図19及び図20に示した処理は、主に前段処理部104により実行される。
(Flow of pre-processing)
Next, the flow of the pre-processing will be further described with reference to FIGS. FIG. 19 is a first flowchart illustrating a flow of pre-processing performed by the information processing apparatus according to the second embodiment. FIG. 20 is a second flowchart showing the flow of pre-processing performed by the information processing apparatus according to the second embodiment. The processes shown in FIGS. 19 and 20 are mainly executed by the pre-processing unit 104.

図19に示すように、前段処理部104は、パラメータ計算部141の機能により、画像P1の特徴点から特徴量が大きい順にX個(例えば、X=10)の特徴点を抽出する(S111)。次いで、前段処理部104は、パラメータ計算部141の機能により、画像P2の特徴点から特徴量が大きい順にX個の特徴点を抽出する(S112)。   As illustrated in FIG. 19, the pre-processing unit 104 extracts X feature points (for example, X = 10) from the feature points of the image P1 in descending order by the function of the parameter calculation unit 141 (S111). . Next, the pre-processing unit 104 extracts X feature points in descending order of the feature amount from the feature points of the image P2 by the function of the parameter calculation unit 141 (S112).

次いで、前段処理部104は、パラメータ計算部141の機能により、S111の処理で画像P1から抽出した特徴点と、S112の処理で画像P2から抽出した特徴点とを組み合わせたd組の特徴点ペアを生成する(S113)。次いで、前段処理部104は、S113の処理で生成したd組の特徴点ペアを用いて変換行列Riを計算する(S114)。但し、変換行列Riは、S113の処理でi番目に生成された特徴点ペアを用いて計算された変換行列を表す。   Next, the pre-processing unit 104 uses the function of the parameter calculation unit 141 to combine d feature point pairs obtained by combining the feature points extracted from the image P1 in the process of S111 and the feature points extracted from the image P2 in the process of S112. Is generated (S113). Next, the pre-processing unit 104 calculates a transformation matrix Ri using the d feature point pairs generated in the process of S113 (S114). However, the transformation matrix Ri represents a transformation matrix calculated using the i-th feature point pair generated in the process of S113.

次いで、前段処理部104は、投票処理部142の機能により、画像P1の特徴点のうち、変換行列Riの計算に利用していない特徴点を1個選択する(S115)。次いで、前段処理部104は、S115の処理で選択した特徴点の座標を変換行列Riで変換する(S116)。S116の処理が完了すると、処理は図20のS117へと進む。   Next, the pre-processing unit 104 selects one feature point that is not used in the calculation of the transformation matrix Ri from the feature points of the image P1 by the function of the voting processing unit 142 (S115). Next, the pre-processing unit 104 converts the coordinates of the feature point selected in the process of S115 with the conversion matrix Ri (S116). When the process of S116 is completed, the process proceeds to S117 of FIG.

処理がS117へと進んだ場合、前段処理部104は、投票処理部142の機能により、S116の処理による変換後の点との距離が閾値ThD(例えば、5ピクセル)以下となる特徴点が画像P2に存在するか否かを判定する(S117)。変換後の点との距離が閾値ThD以下となる特徴点が画像P2に存在する場合、処理はS118へと進む。一方、S116の処理による変換後の点との距離が閾値ThD以下となる特徴点が画像P2に存在しない場合、処理はS119へと進む。   When the process proceeds to S117, the pre-processing unit 104 uses the function of the voting processing unit 142 to display a feature point whose distance from the point converted by the process of S116 is equal to or less than a threshold ThD (for example, 5 pixels). It is determined whether or not it exists in P2 (S117). If a feature point whose distance from the converted point is equal to or less than the threshold ThD exists in the image P2, the process proceeds to S118. On the other hand, if there is no feature point in the image P2 whose distance from the converted point by the process of S116 is equal to or less than the threshold ThD, the process proceeds to S119.

処理がS118へと進んだ場合、前段処理部104は、投票処理部142の機能により、変換行列Riに投票する(S118)。S118の処理が完了すると、処理はS122へと進む。   When the process proceeds to S118, the pre-processing unit 104 votes for the transformation matrix Ri by the function of the voting processing unit 142 (S118). When the process of S118 is completed, the process proceeds to S122.

処理がS119へと進んだ場合、前段処理部104は、投票処理部142の機能により、現時点における最大投票数Nmaxに基づいて(X−d−Nmax)を計算する(S119)。次いで、前段処理部104は、投票処理部142の機能により、現時点までにアウトライヤと判定した特徴点の数を計算する(S120)。   When the process proceeds to S119, the pre-stage processing unit 104 calculates (Xd-Nmax) based on the maximum number of votes Nmax at the current time by the function of the voting processing unit 142 (S119). Next, the pre-processing unit 104 calculates the number of feature points that have been determined as outliers by the function of the voting processing unit 142 (S120).

次いで、前段処理部104は、投票処理部142の機能により、S120の処理における計算結果が(X−d−Nmax)より大きいか否かを判定する(S121)。計算結果が(X−d−Nmax)より大きい場合、処理は図19のS113へと進む。一方、計算結果が(X−d−Nmax)より大きくない場合、処理はS122へと進む。   Next, the pre-processing unit 104 determines whether the calculation result in the processing of S120 is greater than (Xd-Nmax) by the function of the voting processing unit 142 (S121). If the calculation result is greater than (Xd-Nmax), the process proceeds to S113 in FIG. On the other hand, if the calculation result is not greater than (X−d−Nmax), the process proceeds to S122.

処理がS122へと進んだ場合、前段処理部104は、S115の処理で(X−d)個の特徴点をすべて選択したか否かを判定する(S122)。(X−d)個の特徴点をすべて選択した場合、処理はS123へと進む。一方、(X−d)個の特徴点のうち未選択の特徴点がある場合、処理は図19のS115へと進む。   When the process proceeds to S122, the pre-processing unit 104 determines whether all (Xd) feature points have been selected in the process of S115 (S122). If all (Xd) feature points have been selected, the process proceeds to S123. On the other hand, when there is an unselected feature point among (Xd) feature points, the process proceeds to S115 in FIG.

処理がS123へと進んだ場合、前段処理部104は、S111の処理で画像P1から抽出した特徴点と、S112の処理で画像P2から抽出した特徴点とを組み合わせて生成可能なすべての特徴点ペアをS113の処理で生成したか否かを判定する(S123)。すべての特徴点ペアをS113の処理で生成した場合、処理はS124へと進む。一方、S113の処理で生成していない特徴点ペアがある場合、処理は図19のS113へと進む。   When the process proceeds to S123, the pre-processing unit 104 determines all the feature points that can be generated by combining the feature points extracted from the image P1 in the process of S111 and the feature points extracted from the image P2 in the process of S112. It is determined whether or not a pair has been generated in the process of S113 (S123). If all the feature point pairs have been generated in S113, the process proceeds to S124. On the other hand, if there is a feature point pair that has not been generated in the process of S113, the process proceeds to S113 in FIG.

処理がS124へと進んだ場合、前段処理部104は、投票数が最大の変換行列Riを推定変換行列Rに設定する(S124)。S124の処理が完了すると、図19及び図20に示した一連の処理は終了する。なお、上記の説明では、可能なすべての特徴点ペアを生成する方法を示したが、予め設定した回数の処理を繰り返し、その回数分の特徴点ペアが生成されるように処理を変形することも可能である。   When the process proceeds to S124, the pre-processing unit 104 sets the conversion matrix Ri having the maximum number of votes as the estimated conversion matrix R (S124). When the process of S124 is completed, the series of processes shown in FIGS. 19 and 20 ends. In the above description, the method for generating all possible feature point pairs has been described. However, the process is modified so that feature point pairs are generated by repeating the process a preset number of times. Is also possible.

(後段処理の流れ)
次に、図21〜図23を参照しながら、後段処理の流れについて、さらに説明する。なお、図21は、第2実施形態に係る情報処理装置が実行する後段処理の流れを示した第1のフロー図である。また、図22は、第2実施形態に係る情報処理装置が実行する後段処理の流れを示した第2のフロー図である。また、図23は、第2実施形態に係る情報処理装置が実行する後段処理の流れを示した第3のフロー図である。図21〜図23に示した一連の処理は、主に後段処理部105により実行される。
(Flow of subsequent processing)
Next, the flow of the subsequent process will be further described with reference to FIGS. FIG. 21 is a first flowchart illustrating a flow of subsequent processing executed by the information processing apparatus according to the second embodiment. FIG. 22 is a second flowchart showing the flow of subsequent processing executed by the information processing apparatus according to the second embodiment. FIG. 23 is a third flowchart showing the flow of subsequent processing executed by the information processing apparatus according to the second embodiment. The series of processing illustrated in FIGS. 21 to 23 is mainly executed by the post-processing unit 105.

図21に示すように、後段処理部105は、投票処理部153の機能により、画像P1の特徴点から、推定変換行列Rの計算に利用していない特徴点を1個選択する(S131)。次いで、後段処理部105は、投票処理部153の機能により、S131の処理で選択した特徴点の座標を推定変換行列Rで変換する(S132)。   As illustrated in FIG. 21, the post-processing unit 105 selects one feature point that is not used in the calculation of the estimated transformation matrix R from the feature points of the image P1 by the function of the voting processing unit 153 (S131). Next, the post-processing unit 105 uses the function of the voting processing unit 153 to convert the coordinates of the feature points selected in the process of S131 with the estimated conversion matrix R (S132).

次いで、後段処理部105は、投票処理部153の機能により、S132の処理による変換後の点との距離が閾値ThD以下であり、推定変換行列Rの計算に利用していない画像P2の特徴点があるか否かを判定する。(S133)。変換後の点との距離が閾値ThD以下であり、推定変換行列Rの計算に利用していない画像P2の特徴点がある場合、処理はS134へと進む。一方、変換後の点との距離が閾値ThD以下となる、推定変換行列Rの計算に利用していない画像P2の特徴点がない場合、処理はS131へと進む。   Next, the post-processing unit 105 uses the function of the voting processing unit 153 to determine the feature points of the image P2 whose distance from the point after the conversion in the process of S132 is equal to or less than the threshold ThD and not used for calculating the estimated conversion matrix R It is determined whether or not there is. (S133). If the distance from the converted point is equal to or less than the threshold ThD and there is a feature point of the image P2 that is not used for calculation of the estimated conversion matrix R, the process proceeds to S134. On the other hand, if there is no feature point of the image P2 that is not used for calculation of the estimated transformation matrix R, the distance from the transformed point is equal to or less than the threshold ThD, the process proceeds to S131.

処理がS134へと進んだ場合、後段処理部105は、投票処理部153の機能により、推定変換行列Rに投票する(S134)。次いで、後段処理部105は、投票処理部153の機能により、S131の処理で(n−d)個の特徴点をすべて選択したか否かを判定する(S135)。(n−d)個の特徴点をすべて選択し終えている場合、処理はS136へと進む。一方、(n−d)個の特徴点のうち未選択の特徴点がある場合、処理はS131へと進む。   When the process proceeds to S134, the subsequent processing unit 105 votes for the estimated transformation matrix R by the function of the voting processing unit 153 (S134). Next, the post-processing unit 105 determines whether or not all (nd) feature points have been selected in the processing of S131 by the function of the voting processing unit 153 (S135). If all (n−d) feature points have been selected, the process proceeds to S136. On the other hand, if there is an unselected feature point among the (n−d) feature points, the process proceeds to S131.

処理がS136へと進んだ場合、後段処理部105は、投票処理部153の機能により、S134の処理で投票された推定変換行列Rの投票数(総数)をNmaxとする(S136)。次いで、後段処理部105は、カウンタテーブル101dを初期化(カウンタ値を0に設定)する(S137)。   When the process proceeds to S136, the subsequent stage processing unit 105 sets the number of votes (total number) of the estimated transformation matrix R voted in the process of S134 to Nmax by the function of the voting processing unit 153 (S136). Next, the post-processing unit 105 initializes the counter table 101d (sets the counter value to 0) (S137).

次いで、後段処理部105は、パラメータ計算部151の機能により、画像P1の特徴点と、画像P2の特徴点とをランダムに抽出し、d組の特徴点ペアを生成する(S138)。次いで、後段処理部105は、パラメータ計算部151の機能により、S138の処理で生成したd組の特徴点ペアを用いて変換行列Hiを計算する(S139)。但し、変換行列Hiは、S138の処理でi番目に生成された特徴点ペアを用いて計算された変換行列を表す。S139の処理が完了すると、処理は図22のS140へと進む。   Next, the post-processing unit 105 randomly extracts the feature points of the image P1 and the feature points of the image P2 by the function of the parameter calculation unit 151, and generates d feature point pairs (S138). Next, the post-processing unit 105 uses the function of the parameter calculation unit 151 to calculate the transformation matrix Hi using the d feature point pairs generated in the process of S138 (S139). However, the transformation matrix Hi represents a transformation matrix calculated using the i th feature point pair generated in the process of S138. When the process of S139 is completed, the process proceeds to S140 of FIG.

処理がS140へと進んだ場合、後段処理部105は、候補抽出部152の機能により、変換行列Hiと推定変換行列Rとの差が許容範囲内であるか否かを判定する(S140)。変換行列Hiと推定変換行列Rとの差が許容範囲内である場合、処理はS141へと進む。一方、変換行列Hiと推定変換行列Rとの差が許容範囲内でない場合、処理は図21のS138へと進む。   When the process proceeds to S140, the post-processing unit 105 determines whether the difference between the transformation matrix Hi and the estimated transformation matrix R is within an allowable range by the function of the candidate extraction unit 152 (S140). If the difference between the transformation matrix Hi and the estimated transformation matrix R is within the allowable range, the process proceeds to S141. On the other hand, if the difference between the transformation matrix Hi and the estimated transformation matrix R is not within the allowable range, the process proceeds to S138 in FIG.

処理がS141へと進んだ場合、後段処理部105は、投票処理部153の機能により、画像P1の特徴点から、変換行列Hiの計算に利用していない特徴点を選択する(S141)。このとき、カウンタテーブル101dのカウンタ値が小さい順に特徴点が選択される。次いで、後段処理部105は、投票処理部153の機能により、S141の処理で選択した特徴点の座標を変換行列Hiで変換する(S142)。   When the process proceeds to S141, the post-processing unit 105 selects, from the feature points of the image P1, feature points that are not used for calculating the transformation matrix Hi by using the function of the voting processing unit 153 (S141). At this time, feature points are selected in ascending order of counter values in the counter table 101d. Next, the post-processing unit 105 uses the function of the voting processing unit 153 to convert the coordinates of the feature points selected in the processing of S141 using the conversion matrix Hi (S142).

次いで、後段処理部105は、投票処理部153の機能により、S142の処理による変換後の点との距離が閾値ThD以下となる、変換行列Hiの計算に利用していない画像P2の特徴点があるか否かを判定する(S143)。変換後の点との距離が閾値ThD以下となる、変換行列Hiの計算に利用していない画像P2の特徴点がある場合、処理はS144へと進む。一方、変換後の点との距離が閾値ThD以下となる、変換行列Hiの計算に利用していない画像P2の特徴点がない場合、処理はS146へと進む。   Next, the post-processing unit 105 uses the function of the voting processing unit 153 to determine the feature points of the image P2 that are not used in the calculation of the conversion matrix Hi, the distance from the point after conversion by the process of S142 is equal to or less than the threshold ThD It is determined whether or not there is (S143). If there is a feature point of the image P2 that is not used for the calculation of the transformation matrix Hi, the process proceeds to S144 when the distance from the transformed point is equal to or less than the threshold ThD. On the other hand, if there is no feature point of the image P2 that is not used for calculation of the transformation matrix Hi, the process proceeds to S146 when the distance from the transformed point is equal to or less than the threshold ThD.

処理がS144へと進んだ場合、後段処理部105は、投票処理部153の機能により、変換行列Hiに投票する(S144)。次いで、後段処理部105は、投票処理部153の機能により、S141の処理で選択した特徴点のカウンタ値を増加させる(S145)。S145の処理が完了すると、処理は図23のS149へと進む。   When the process proceeds to S144, the post-processing unit 105 votes for the transformation matrix Hi by the function of the voting processing unit 153 (S144). Next, the post-processing unit 105 increases the counter value of the feature point selected in the processing of S141 by the function of the voting processing unit 153 (S145). When the process of S145 is completed, the process proceeds to S149 of FIG.

S143の処理における判定の結果、S146へと処理が進んだ場合、後段処理部105は、投票処理部153の機能により、(n−d−Nmax)を計算する(S146)。次いで、後段処理部105は、投票処理部153の機能により、現時点までにアウトライヤと判定した特徴点の数を計算する(S147)。   As a result of the determination in the process of S143, when the process proceeds to S146, the post-processing unit 105 calculates (nd−Nmax) by the function of the voting processing unit 153 (S146). Next, the post-processing unit 105 calculates the number of feature points that have been determined as outliers by the function of the voting processing unit 153 (S147).

次いで、後段処理部105は、投票処理部153の機能により、S147の処理における計算結果が(n−d−Nmax)より大きいか否かを判定する(S148)。計算結果が(n−d−Nmax)より大きい場合、処理は図21のS138へと進む。一方、計算結果が(n−d−Nmax)より大きくない場合、処理は図23のS149へと進む。   Next, the post-processing unit 105 determines whether or not the calculation result in the processing of S147 is greater than (nd−Nmax) by the function of the voting processing unit 153 (S148). If the calculation result is greater than (nd−Nmax), the process proceeds to S138 in FIG. On the other hand, if the calculation result is not greater than (nd−Nmax), the process proceeds to S149 in FIG.

処理がS149へと進んだ場合、後段処理部105は、S141の処理で(X−d)個の特徴点をすべて選択したか否かを判定する(S149)。(X−d)個の特徴点をすべて選択し終えた場合、処理はS150へと進む。一方、(X−d)個の特徴点のうち未選択の特徴点がある場合、処理は図22のS141へと進む。   When the process proceeds to S149, the post-processing unit 105 determines whether all (Xd) feature points have been selected in the process of S141 (S149). If all (Xd) feature points have been selected, the process proceeds to S150. On the other hand, when there is an unselected feature point among (Xd) feature points, the process proceeds to S141 in FIG.

処理がS150へと進んだ場合、後段処理部105は、変換行列Hiの投票数が最大投票数Nmaxを超えたか否かを判定する(S150)。変換行列Hiの投票数が最大投票数Nmaxを超えた場合、処理はS151へと進む。一方、変換行列Hiの投票数が最大投票数Nmaxを超えない場合、処理はS152へと進む。   When the process proceeds to S150, the post-processing unit 105 determines whether or not the number of votes in the transformation matrix Hi exceeds the maximum number of votes Nmax (S150). When the number of votes in the conversion matrix Hi exceeds the maximum number of votes Nmax, the process proceeds to S151. On the other hand, if the number of votes in the transformation matrix Hi does not exceed the maximum number of votes Nmax, the process proceeds to S152.

処理がS151へと進んだ場合、後段処理部105は、変換行列Hiの投票数で最大投票数Nmaxを更新する(S151)。S151の処理が完了すると、処理はS152へと進む。処理がS152へと進んだ場合、後段処理部105は、カウンタテーブル101dを投票数順にソートする(S152)。   When the process proceeds to S151, the post-processing unit 105 updates the maximum vote number Nmax with the vote number of the conversion matrix Hi (S151). When the process of S151 is completed, the process proceeds to S152. When the process proceeds to S152, the post-processing unit 105 sorts the counter table 101d in order of the number of votes (S152).

次いで、後段処理部105は、S138以降の処理をT回実行したか否かを判定する(S153)。但し、Tは、上記の式(1)で与えられる。処理をT回実行し終えた場合、処理はS154へと進む。一方、処理をT回実行し終えていない場合、処理は図21のS138へと進む。処理がS154へと進んだ場合、後段処理部105は、投票数が最大の変換行列Hiを画像処理に利用する変換行列Hに決定する(S154)。S154の処理が完了すると、図21〜図23に示した一連の処理は終了する。   Next, the post-processing unit 105 determines whether or not the processing after S138 has been executed T times (S153). However, T is given by the above equation (1). If the process has been executed T times, the process proceeds to S154. On the other hand, if the process has not been executed T times, the process proceeds to S138 in FIG. When the process proceeds to S154, the post-processing unit 105 determines the conversion matrix Hi having the largest number of votes as the conversion matrix H used for image processing (S154). When the process of S154 is completed, the series of processes shown in FIGS.

以上、情報処理装置100が実行する処理の流れについて説明した。上記のように、後段処理にて変換行列Hiと推定変換行列Rとの差を評価し、差が許容範囲外である変換行列Hiに対する投票処理を回避することで処理負荷が低減される。さらに、カウント値が小さい特徴点から順に処理が実行されることで、最大投票数Nmaxを更新する見込みのない変換行列Hiに対する投票処理が早期に回避されることで処理負荷が低減される。その結果、高速に変換行列Hを決定することが可能になる。   The flow of processing executed by the information processing apparatus 100 has been described above. As described above, the processing load is reduced by evaluating the difference between the transformation matrix Hi and the estimated transformation matrix R in the subsequent processing and avoiding the voting process for the transformation matrix Hi whose difference is outside the allowable range. Furthermore, the processing is reduced by avoiding the voting process for the transformation matrix Hi that is unlikely to update the maximum vote count Nmax at an early stage by executing the processes in order from the feature point with the smallest count value. As a result, the transformation matrix H can be determined at high speed.

以上、第2実施形態について説明した。
<3.第3実施形態>
次に、第3実施形態について説明する。
The second embodiment has been described above.
<3. Third Embodiment>
Next, a third embodiment will be described.

上記の第2実施形態は、前段処理で推定変換行列Rを計算し、後段処理で推定変換行列Rと特徴点ペア毎に計算した変換行列Hiとの差に基づいて無駄な投票処理を回避する方法であった。一方、第3実施形態は、図24に示すように、推定変換行列Rを利用して画像P1の特徴点を変換し、変換後の点を基準とする許容範囲(以下、インライヤ範囲)に収まる画像P2の特徴点を用いて特徴点ペアを生成する方法を提案する。なお、図24は、第3実施形態に係る後段処理の概要を示した図である。   In the second embodiment, the estimated transformation matrix R is calculated in the former stage process, and the useless voting process is avoided based on the difference between the estimated transformation matrix R and the transformation matrix Hi calculated for each feature point pair in the latter stage process. Was the way. On the other hand, as shown in FIG. 24, the third embodiment converts the feature points of the image P1 using the estimated conversion matrix R, and falls within an allowable range (hereinafter referred to as an inlier range) based on the converted points. A method for generating a feature point pair using the feature points of the image P2 is proposed. FIG. 24 is a diagram showing an outline of the post-stage processing according to the third embodiment.

図24の例では、画像P1の特徴点q11、q12、q13が推定変換行列Rで変換され、それぞれ変換後の点a、b、cの座標が得られている。この場合、点aを基準とするインライヤ範囲Daに含まれる画像P2の特徴点それぞれと、画像P1の特徴点q11とのペアが特徴点ペアの候補とされる。また、点bを基準とするインライヤ範囲Dbに含まれる画像P2の特徴点それぞれと、画像P1の特徴点q12とのペアが特徴点ペアの候補とされる。さらに、点cを基準とするインライヤ範囲Dcに含まれる画像P2の特徴点それぞれと、画像P1の特徴点q13とのペアが特徴点ペアの候補とされる。   In the example of FIG. 24, the feature points q11, q12, and q13 of the image P1 are converted by the estimated conversion matrix R, and the coordinates of the converted points a, b, and c are obtained, respectively. In this case, a pair of each feature point of the image P2 included in the inlier range Da with the point a as a reference and the feature point q11 of the image P1 is a candidate feature point pair. In addition, a pair of each feature point of the image P2 included in the inlier range Db with the point b as a reference and the feature point q12 of the image P1 is a candidate feature point pair. Further, a pair of each feature point of the image P2 included in the inlier range Dc with the point c as a reference and the feature point q13 of the image P1 is a candidate feature point pair.

上記のようにして抽出された特徴点ペアの候補から、投票処理の対象とする特徴点ペアが順次選択されて投票処理が実行される。つまり、候補が絞り込まれた上で、その候補の中から特徴点ペアが選択される。そのため、投票処理の実行回数が削減され、後段処理の負荷が低減される。以下、上記のような後段処理を実行可能な情報処理装置200について説明する。情報処理装置200は、第3実施形態に係る情報処理装置の一例である。また、上記の第2実施形態に係る情報処理装置100と実質的に同じ要素については重複説明を避けるため、同一の符号を付して詳細な説明を省略する場合がある。   From the feature point pair candidates extracted as described above, the feature point pairs to be subjected to the voting process are sequentially selected, and the voting process is executed. That is, after the candidates are narrowed down, a feature point pair is selected from the candidates. For this reason, the number of times the voting process is executed is reduced, and the load of the subsequent process is reduced. Hereinafter, the information processing apparatus 200 capable of executing the subsequent processing as described above will be described. The information processing apparatus 200 is an example of an information processing apparatus according to the third embodiment. Moreover, in order to avoid duplication description about the element substantially the same as the information processing apparatus 100 which concerns on said 2nd Embodiment, the same code | symbol may be attached | subjected and detailed description may be abbreviate | omitted.

[3−1.情報処理装置の機能]
図25を参照しながら、情報処理装置200の機能について説明する。図25は、第3実施形態に係る情報処理装置の機能について説明するためのブロック図である。なお、以下の説明において、適宜、図26〜図30を参照する。
[3-1. Function of information processing apparatus]
The function of the information processing apparatus 200 will be described with reference to FIG. FIG. 25 is a block diagram for explaining functions of the information processing apparatus according to the third embodiment. In the following description, FIGS. 26 to 30 will be referred to as appropriate.

図25に示すように、情報処理装置200は、撮像部102、特徴点抽出部103、前段処理部104、画像処理部106、記憶部201、及び後段処理部205を有する。
なお、記憶部201の機能は、上述したRAM906や記憶部920などを用いて実現できる。特徴点抽出部103、前段処理部104、後段処理部205、及び画像処理部106の機能は、上述したCPU902などを用いて実現できる。
As illustrated in FIG. 25, the information processing apparatus 200 includes an imaging unit 102, a feature point extraction unit 103, a pre-processing unit 104, an image processing unit 106, a storage unit 201, and a post-processing unit 205.
Note that the function of the storage unit 201 can be realized by using the above-described RAM 906, the storage unit 920, or the like. The functions of the feature point extraction unit 103, the pre-processing unit 104, the post-processing unit 205, and the image processing unit 106 can be realized using the above-described CPU 902 or the like.

(記憶部201)
記憶部201には、特徴点情報101a、モデル情報101b、投票数テーブル101c、許容範囲情報201a、及びペアマップリスト201bが格納される。なお、記憶部201には、カウンタテーブル101dが格納されてもよい。許容範囲情報201aは、特徴量ペアの候補を抽出する際に利用されるインライヤ範囲を決めるための情報である。また、ペアマップリスト201bは、特徴点ペアの候補が記載されるリストである。
(Storage unit 201)
The storage unit 201 stores feature point information 101a, model information 101b, a vote count table 101c, allowable range information 201a, and a pair map list 201b. The storage unit 201 may store a counter table 101d. The allowable range information 201a is information for determining an inlier range used when extracting feature amount pair candidates. The pair map list 201b is a list in which feature point pair candidates are described.

ここで、図26を参照しながら、許容範囲情報201aについて、さらに説明する。図26は、第3実施形態に係る許容範囲情報の一例を示した図である。
図26に示すように、許容範囲情報201aは、変換パラメータの種類と、変換パラメータの許容範囲とを含む。図26の例は、上記の式(2)で与えられるアフィン変換の変換パラメータw11、w12、…、w23に関するものである。例えば、変換パラメータw11の許容範囲は、[w11−t11,w11+t11](つまり、w11−t11≦w11の許容範囲≦w11+t11)に設定されている。同様に、変換パラメータw12、w13、…、w23の許容範囲もそれぞれ設定されている。但し、t11、t12、…、t23は、許容範囲の幅を決める予め設定された設定値である。
Here, the allowable range information 201a will be further described with reference to FIG. FIG. 26 is a diagram illustrating an example of allowable range information according to the third embodiment.
As shown in FIG. 26, the allowable range information 201a includes the type of conversion parameter and the allowable range of the conversion parameter. The example of FIG. 26 relates to the transformation parameters w11, w12,..., W23 of the affine transformation given by the above equation (2). For example, the allowable range of the conversion parameter w11 is set to [w11−t11, w11 + t11] (that is, the allowable range of w11−t11 ≦ w11 ≦ w11 + t11). Similarly, the allowable ranges of the conversion parameters w12, w13,..., W23 are also set. However, t11, t12,..., T23 are preset setting values that determine the width of the allowable range.

例えば、画像P1の特徴点q11を推定変換行列Rで変換する場合、推定変換行列Rの変換パラメータr11、r12、…、r23を上記の幅で動かすと、変換後の点がとる領域(インライヤ範囲)が決まる。図24の例では、推定変換行列Rの変換パラメータw11、w12、…、w23を上記の幅で動かすことにより、特徴点q11に対応するインライヤ範囲Daが決まる。なお、変換後の点を基準に予め設定された半径の円領域や矩形領域をインライヤ範囲とする変形も可能であり、この場合には許容範囲情報201aとして半径や辺の長さを示す情報が予め設定される。   For example, when the feature point q11 of the image P1 is converted by the estimated conversion matrix R, when the conversion parameters r11, r12,..., R23 of the estimated conversion matrix R are moved by the above width, the area (inlier range) taken by the converted points is taken. ) Is decided. In the example of FIG. 24, the inlier range Da corresponding to the feature point q11 is determined by moving the conversion parameters w11, w12,..., W23 of the estimated conversion matrix R with the above width. Note that it is possible to transform the circular area or rectangular area having a radius set in advance with reference to the converted point as an inlier range. In this case, information indicating the radius and the side length is included as the allowable range information 201a. It is set in advance.

次に、図27を参照しながら、ペアマップリスト201bについて、さらに説明する。図27は、第3実施形態に係るペアマップリストの一例を示した図である。
図27に示すように、ペアマップリスト201bは、候補となる特徴点ペアを特定する情報と、その特徴点ペアに含まれる画像P1、P2の特徴点とを記載したリストである。図27の例では、候補となる特徴点ペアL1、L2、…、L8が示されている。例えば、特徴点ペアL1は、画像P1の特徴点q11と、画像P2の特徴点q21とを含む。このことは、特徴点q21が、特徴点q11を推定変換行列Rで変換した点を基準とするインライヤ範囲に含まれる特徴点であることを意味する。他の特徴点ペアL2、L3、…、L8についても同様である。
Next, the pair map list 201b will be further described with reference to FIG. FIG. 27 is a diagram showing an example of a pair map list according to the third embodiment.
As shown in FIG. 27, the pair map list 201b is a list in which information for specifying candidate feature point pairs and the feature points of the images P1 and P2 included in the feature point pairs are described. In the example of FIG. 27, candidate feature point pairs L1, L2,..., L8 are shown. For example, the feature point pair L1 includes a feature point q11 of the image P1 and a feature point q21 of the image P2. This means that the feature point q21 is a feature point included in the inlier range based on the point obtained by transforming the feature point q11 with the estimated transformation matrix R. The same applies to the other feature point pairs L2, L3,.

(撮像部102、特徴点抽出部103、前段処理部104、画像処理部106)
再び図25を参照する。撮像部102、特徴点抽出部103、前段処理部104、画像処理部106は、第2実施形態と実質的に同じである。前段処理部104により計算された推定変換行列Rの情報は、記憶部201に格納されると共に、後段処理部205に入力される。また、後段処理部205により決定された変換行列の情報は、画像処理部106に入力される。
(Imaging unit 102, feature point extraction unit 103, pre-processing unit 104, image processing unit 106)
Refer to FIG. 25 again. The imaging unit 102, the feature point extraction unit 103, the pre-processing unit 104, and the image processing unit 106 are substantially the same as those in the second embodiment. Information on the estimated transformation matrix R calculated by the upstream processing unit 104 is stored in the storage unit 201 and input to the downstream processing unit 205. Further, information on the transformation matrix determined by the post-processing unit 205 is input to the image processing unit 106.

(後段処理部205)
後段処理部205は、記憶部201に格納された特徴点情報101aに含まれる特徴点のうち、推定変換行列の計算に利用した特徴点の数よりも多くの特徴点を利用して画像P1、P2の位置合わせに用いる変換行列を計算する。このとき、後段処理部205は、推定変換行列に基づいて、変換行列の計算に用いる特徴点ペアを絞り込む。後段処理を実行するために、後段処理部205は、図25に示すように、候補抽出部251、パラメータ計算部252、及び投票処理部253を含む。
(Post-processing unit 205)
The post-processing unit 205 uses the feature points more than the number of feature points used for calculation of the estimated transformation matrix among the feature points included in the feature point information 101a stored in the storage unit 201, and the image P1, A transformation matrix used for the alignment of P2 is calculated. At this time, the post-processing unit 205 narrows down feature point pairs used for calculation of the transformation matrix based on the estimated transformation matrix. In order to execute the post-stage processing, the post-stage processing unit 205 includes a candidate extraction unit 251, a parameter calculation unit 252, and a voting processing unit 253 as illustrated in FIG.

候補抽出部251は、記憶部201に格納された特徴点情報101aを参照し、画像P1から抽出された特徴点を1つ選択し、選択した特徴点の座標を推定変換行列Rにより変換する。また、候補抽出部251は、許容範囲情報201aに基づいて、変換後の座標を基準とするインライヤ範囲を計算する。さらに、候補抽出部251は、インライヤ範囲に含まれる画像P2の特徴点を抽出する。   The candidate extraction unit 251 refers to the feature point information 101a stored in the storage unit 201, selects one feature point extracted from the image P1, and converts the coordinates of the selected feature point using the estimated conversion matrix R. Further, the candidate extraction unit 251 calculates an inlier range based on the converted coordinates based on the allowable range information 201a. Further, the candidate extraction unit 251 extracts feature points of the image P2 included in the inlier range.

そして、候補抽出部251は、選択した画像P1の特徴点と、抽出した画像P2の特徴点のそれぞれとを組み合わせて特徴点ペアの候補を生成する。また、候補抽出部251は、生成した特徴点ペアの候補の情報をペアマップリスト201bに記録する。また、候補抽出部251は、画像P1から抽出された特徴点を1つ選択し、選択した特徴点に対応する特徴点ペアの候補を生成する。これらの処理を繰り返し実行し、候補抽出部251は、ペアマップリスト201bを生成する。   Then, the candidate extraction unit 251 generates feature point pair candidates by combining the feature points of the selected image P1 and the extracted feature points of the image P2. Further, the candidate extraction unit 251 records the generated feature point pair candidate information in the pair map list 201b. In addition, the candidate extraction unit 251 selects one feature point extracted from the image P1, and generates a feature point pair candidate corresponding to the selected feature point. By repeatedly executing these processes, the candidate extraction unit 251 generates a pair map list 201b.

パラメータ計算部252は、ペアマップリスト201bに記録された特徴点ペアの候補からd組の特徴点ペアを選択し、変換モデルに含まれる変換行列を計算する。また、パラメータ計算部252は、選択した特徴点ペアの情報と、計算した変換行列の変換パラメータとを投票数テーブル101cに記録する。投票処理部253は、画像P1から抽出された特徴点のうち、変換行列の計算に利用されていない特徴点を順次選択し、選択した特徴点がインライヤであるか否かを判定する。パラメータ計算部252により計算された変換行列は投票処理部253に入力される。   The parameter calculation unit 252 selects d feature point pairs from the feature point pair candidates recorded in the pair map list 201b, and calculates a transformation matrix included in the transformation model. Also, the parameter calculation unit 252 records the selected feature point pair information and the calculated conversion parameter of the conversion matrix in the vote count table 101c. The voting processing unit 253 sequentially selects feature points that are not used for calculation of the transformation matrix from the feature points extracted from the image P1, and determines whether or not the selected feature points are inliers. The transformation matrix calculated by the parameter calculation unit 252 is input to the voting processing unit 253.

例えば、投票処理部253は、入力された変換行列を用いて、選択した画像P1の特徴点を変換し、変換後の点を基準とする許容範囲(上記のインライヤ範囲と異なる範囲でもよい。)内に画像P2の特徴点が存在するか否かを判定する。この許容範囲内に画像P2の特徴点が存在する場合、投票処理部253は、選択した画像P1の特徴点がインライヤであると判定する。   For example, the voting processing unit 253 converts the feature point of the selected image P1 using the input conversion matrix, and an allowable range based on the converted point (a range different from the above inlier range may be used). It is determined whether or not the feature point of the image P2 exists in the image. When the feature point of the image P2 exists within the allowable range, the voting processing unit 253 determines that the feature point of the selected image P1 is an inlier.

投票処理部253は、インライヤと判定する度に、入力された変換行列の変換パラメータに投票する。つまり、投票処理部253は、インライヤと判定した場合に、入力された変換行列の変換パラメータに対応する投票数テーブル101cの投票数を設定した数(例えば、1)だけ増加させる。すべての特徴点について上記の判定が終了した場合、投票処理部253は、入力された変換行列に関する投票処理の終了をパラメータ計算部252に通知する。この通知を受けたパラメータ計算部252は、未選択の特徴点ペアを選択し、変換モデルに含まれる変換行列を計算する。   Each time the voting processing unit 253 determines to be an inlier, it votes for the conversion parameter of the input conversion matrix. That is, when it is determined as an inlier, the voting processing unit 253 increases the number of votes set in the vote number table 101c corresponding to the conversion parameter of the input conversion matrix by a set number (for example, 1). When the above determination is completed for all feature points, the voting processing unit 253 notifies the parameter calculation unit 252 of the end of the voting processing for the input transformation matrix. Upon receiving this notification, the parameter calculation unit 252 selects an unselected feature point pair and calculates a transformation matrix included in the transformation model.

パラメータ計算部252は、選択した特徴点ペアの情報と、計算した変換行列の変換パラメータとを投票数テーブル101cに記録する。また、パラメータ計算部252により計算された変換行列は、投票処理部253に入力される。投票処理部253は、入力された変換行列の計算に利用されていない特徴点を順次選択し、選択した特徴点がインライヤであるか否かを判定する。そして、投票処理部253は、インライヤと判定する度に、入力された変換行列の変換パラメータに投票する。   The parameter calculation unit 252 records the selected feature point pair information and the calculated conversion parameter of the conversion matrix in the vote count table 101c. Further, the conversion matrix calculated by the parameter calculation unit 252 is input to the voting processing unit 253. The voting processing unit 253 sequentially selects feature points that are not used for calculation of the input transformation matrix, and determines whether or not the selected feature points are inliers. Each time the voting processing unit 253 determines to be an inlier, the voting processing unit 253 votes for the conversion parameters of the input conversion matrix.

上記と同様に、パラメータ計算部252は、ペアマップリスト201bから順次特徴点ペアを選択して変換行列を計算する。また、投票処理部253は、入力された変換行列に対して投票処理を実行する。これらの処理が予め設定された回数(例えば、上記の式(1)で与えられるT)実行された場合、又はペアマップリスト201bの全特徴点ペアについて処理が実行された場合、後段処理部205は、投票数が最大の変換行列を抽出する。   Similarly to the above, the parameter calculation unit 252 sequentially selects feature point pairs from the pair map list 201b and calculates a transformation matrix. In addition, the voting processing unit 253 performs voting processing on the input conversion matrix. When these processes are executed a preset number of times (for example, T given by the above equation (1)), or when the processes are executed for all feature point pairs in the pair map list 201b, the post-processing unit 205 Extracts the transformation matrix with the largest number of votes.

(後段処理:変換行列の決定)
ここで、図28〜図30を参照しながら、後段処理について、さらに説明する。なお、図28は、第3実施形態に係るペアマップリストの生成方法について説明するための第1の図である。また、図29は、第3実施形態に係るペアマップリストの生成方法について説明するための第2の図である。また、図30は、第3実施形態に係る後段処理(変換行列の決定)について説明するための図である。
(Post-processing: Determination of transformation matrix)
Here, the subsequent processing will be further described with reference to FIGS. 28 to 30. FIG. 28 is a first diagram for explaining a pair map list generation method according to the third embodiment. FIG. 29 is a second diagram for explaining a pair map list generation method according to the third embodiment. FIG. 30 is a diagram for explaining post-processing (conversion matrix determination) according to the third embodiment.

いま、画像P1の特徴点q11、q12、…、q16を含む特徴点ペアのペアマップリスト201bを生成する方法について考える。以下、推定変換行列Rにより特徴点q11、q12、…、q16を変換した点をそれぞれQ11、Q12、…、Q16と表記する。   Consider a method of generating a pair map list 201b of feature point pairs including feature points q11, q12,..., Q16 of the image P1. Hereinafter, points obtained by transforming the feature points q11, q12,..., Q16 by the estimated transformation matrix R are denoted as Q11, Q12,.

図28の例では、点Q11のインライヤ範囲に画像P2の特徴点q21が含まれる。そのため、特徴点ペアの候補として、画像P1の特徴点q11と、画像P2の特徴点q21とのペアがペアマップリスト201bに記録される。同様に、点Q12のインライヤ範囲に画像P2の特徴点q22が含まれるため、特徴点ペアの候補として、画像P1の特徴点q12と、画像P2の特徴点q22とのペアがペアマップリスト201bに記録される。   In the example of FIG. 28, the feature point q21 of the image P2 is included in the inlier range of the point Q11. Therefore, a pair of the feature point q11 of the image P1 and the feature point q21 of the image P2 is recorded in the pair map list 201b as a feature point pair candidate. Similarly, since the feature point q22 of the image P2 is included in the inlier range of the point Q12, a pair of the feature point q12 of the image P1 and the feature point q22 of the image P2 is included in the pair map list 201b as a candidate feature point pair. To be recorded.

点Q13のインライヤ範囲には画像P2の特徴点q23が含まれる。この特徴点q23は、点Q15、Q16のインライヤ範囲にも含まれる。この場合、特徴点q13、q23のペア、特徴点q15、q23のペア、及び特徴点q16、q23のペアがペアマップリスト201bに記録される。同様に、画像P2の特徴点q26は点Q15、Q16のインライヤ範囲に含まれるため、特徴点q15、q26のペア、及び特徴点q16、q26のペアがペアマップリスト201bに記録される。   The inlier range of the point Q13 includes the feature point q23 of the image P2. This feature point q23 is also included in the inlier range of points Q15 and Q16. In this case, a pair of feature points q13 and q23, a pair of feature points q15 and q23, and a pair of feature points q16 and q23 are recorded in the pair map list 201b. Similarly, since the feature point q26 of the image P2 is included in the inlier range of the points Q15 and Q16, the pair of feature points q15 and q26 and the pair of feature points q16 and q26 are recorded in the pair map list 201b.

図28の例では、画像P2の特徴点q24、q27がいずれのインライヤ範囲にも含まれない。そのため、特徴点q24、q27に関するペアはペアマップリスト201bに記録されない。また、点Q14のインライヤ範囲には、画像P2の特徴点がいずれも含まれない。そのため、特徴点q14に関するペアはペアマップリスト201bに記録されない。上記の処理を実行することで、図29に示すような特徴点同士の対応関係が得られる。   In the example of FIG. 28, the feature points q24 and q27 of the image P2 are not included in any inlier range. Therefore, a pair related to the feature points q24 and q27 is not recorded in the pair map list 201b. In addition, the feature point of the image P2 is not included in the inlier range of the point Q14. Therefore, a pair related to the feature point q14 is not recorded in the pair map list 201b. By executing the above processing, the correspondence between feature points as shown in FIG. 29 is obtained.

図29に示すように、画像P1の特徴点q11(点Q11に対応)と画像2の特徴点q21とはペア(特徴点ペアL1)となる。また、画像P1の特徴点q12(点Q12に対応)と画像2の特徴点q22とはペア(特徴点ペアL2)となる。また、画像P1の特徴点q13(点Q13に対応)と画像2の特徴点q23とはペア(特徴点ペアL3)となる。一方、画像P1の特徴点q14(点Q14に対応)はペアとならない。   As shown in FIG. 29, the feature point q11 (corresponding to the point Q11) of the image P1 and the feature point q21 of the image 2 form a pair (feature point pair L1). Further, the feature point q12 (corresponding to the point Q12) of the image P1 and the feature point q22 of the image 2 form a pair (feature point pair L2). Further, the feature point q13 (corresponding to the point Q13) of the image P1 and the feature point q23 of the image 2 form a pair (feature point pair L3). On the other hand, the feature point q14 (corresponding to the point Q14) of the image P1 is not paired.

また、画像P1の特徴点q15(点Q15に対応)と画像2の特徴点q23とはペア(特徴点ペアL4)となる。さらに、画像P1の特徴点q15(点Q15に対応)は画像2の特徴点q25ともペア(特徴点ペアL5)を成す。また、画像P1の特徴点q15(点Q15に対応)は画像2の特徴点q26ともペア(特徴点ペアL6)を成す。   Further, the feature point q15 (corresponding to the point Q15) of the image P1 and the feature point q23 of the image 2 form a pair (feature point pair L4). Further, the feature point q15 (corresponding to the point Q15) of the image P1 forms a pair (feature point pair L5) with the feature point q25 of the image 2. The feature point q15 (corresponding to the point Q15) of the image P1 also forms a pair (feature point pair L6) with the feature point q26 of the image 2.

また、画像P1の特徴点q16(点Q16に対応)と画像2の特徴点q23とペア(特徴点ペアL7)となる。さらに、画像P1の特徴点q16(点Q16に対応)は画像2の特徴点q26ともペア(特徴点ペアL8)を成す。一方、画像P2の特徴点q24、q27はペアとならない。これら特徴点同士の対応関係をまとめると、図30に示すようなペアマップリスト201bが得られる。   Also, the feature point q16 (corresponding to the point Q16) of the image P1 and the feature point q23 of the image 2 are paired (feature point pair L7). Further, the feature point q16 (corresponding to the point Q16) of the image P1 also forms a pair (feature point pair L8) with the feature point q26 of the image 2. On the other hand, the feature points q24 and q27 of the image P2 are not paired. When the correspondences between these feature points are collected, a pair map list 201b as shown in FIG. 30 is obtained.

ペアマップリスト201bが得られると、パラメータ計算部252は、図30に示すように、ペアマップリスト201bから抽出したd組の特徴点ペア(図30の例ではL1,L2,L3)を用いて変換行列を計算する。そして、投票処理部253は、パラメータ計算部252が計算した変換行列を対象に投票処理を実行する。これらの処理が繰り返し実行され、最終的に投票数が最大となる変換行列が、画像処理に利用される変換行列Hに決定される。上記のように、特徴点ペアの数が絞り込まれることにより、投票処理の回数が減り、処理負荷が低減される。   When the pair map list 201b is obtained, the parameter calculation unit 252 uses d feature point pairs (L1, L2, and L3 in the example of FIG. 30) extracted from the pair map list 201b as shown in FIG. Calculate the transformation matrix. Then, the voting processing unit 253 performs voting processing on the transformation matrix calculated by the parameter calculation unit 252. These processes are repeatedly executed, and a conversion matrix having the maximum number of votes is finally determined as a conversion matrix H used for image processing. As described above, by narrowing down the number of feature point pairs, the number of voting processes is reduced, and the processing load is reduced.

以上、情報処理装置200の機能について説明した。
[3−2.処理の流れ]
次に、図31〜図33を参照しながら、情報処理装置200が実行する処理の流れについて説明する。なお、情報処理装置200が実行する処理のうち前段処理は第2実施形態と実質的に同じである。そのため、前段処理の流れについては詳細な説明を省略し、後段処理の流れについて説明する。
The function of the information processing apparatus 200 has been described above.
[3-2. Process flow]
Next, the flow of processing executed by the information processing apparatus 200 will be described with reference to FIGS. Of the processes executed by the information processing apparatus 200, the pre-stage process is substantially the same as in the second embodiment. Therefore, a detailed description of the flow of the upstream processing is omitted, and the flow of the downstream processing is described.

(後段処理の流れ)
図31及び図32を参照しながら、後段処理の流れについて説明する。なお、図31は、第3実施形態に係る情報処理装置が実行する後段処理の流れを示した第1のフロー図である。また、図32は、第3実施形態に係る情報処理装置が実行する後段処理の流れを示した第2のフロー図である。図31及び図32に示した一連の処理は、主に後段処理部205により実行される。
(Flow of subsequent processing)
With reference to FIG. 31 and FIG. 32, the flow of the post-stage processing will be described. FIG. 31 is a first flowchart illustrating a flow of subsequent processing executed by the information processing apparatus according to the third embodiment. FIG. 32 is a second flowchart showing the flow of subsequent processing executed by the information processing apparatus according to the third embodiment. The series of processing shown in FIGS. 31 and 32 is mainly executed by the post-processing unit 205.

図31に示すように、後段処理部205は、投票処理部253の機能により、推定変換行列Rについて最大投票数Nmaxを計算する(S201)。S201の処理は、図21に示したS131〜S136の処理に相当する。次いで、後段処理部205は、候補抽出部251の機能により、ペアマップリスト201bを生成する(S202)。   As illustrated in FIG. 31, the post-processing unit 205 calculates the maximum number of votes Nmax for the estimated conversion matrix R by the function of the voting processing unit 253 (S201). The process of S201 corresponds to the processes of S131 to S136 shown in FIG. Next, the post-processing unit 205 generates the pair map list 201b by the function of the candidate extraction unit 251 (S202).

次いで、後段処理部205は、パラメータ計算部252の機能により、d組の特徴点ペアをペアマップリスト201bから選択する(S203)。次いで、後段処理部205は、パラメータ計算部252の機能により、S203の処理で選択したd組の特徴点ペアを用いて変換行列Hiを計算する(S204)。但し、変換行列Hiは、S203の処理でi番目に生成された特徴点ペアを用いて計算された変換行列を表す。   Next, the post-processing unit 205 uses the function of the parameter calculation unit 252 to select d feature point pairs from the pair map list 201b (S203). Next, the post-processing unit 205 uses the function of the parameter calculation unit 252 to calculate the transformation matrix Hi using the d feature point pairs selected in the processing of S203 (S204). However, the transformation matrix Hi represents a transformation matrix calculated using the i-th feature point pair generated in the process of S203.

次いで、後段処理部205は、投票処理部253の機能により、画像P1の特徴点から、変換行列Hiの計算に利用していない特徴点を選択する(S205)。次いで、後段処理部205は、投票処理部253の機能により、S205の処理で選択した特徴点の座標を変換行列Hiで変換する(S206)。S206の処理が完了すると、処理は図31のS207へと進む。   Next, the post-processing unit 205 uses the function of the voting processing unit 253 to select feature points that are not used in the calculation of the transformation matrix Hi from the feature points of the image P1 (S205). Next, the post-processing unit 205 uses the function of the voting processing unit 253 to convert the coordinates of the feature points selected in the processing of S205 with the conversion matrix Hi (S206). When the process of S206 is completed, the process proceeds to S207 of FIG.

処理がS207へ進んだ場合、後段処理部205は、投票処理部253の機能により、S206の処理による変換後の点との距離が閾値ThD以下となる、変換行列Hiの計算に利用していない画像P2の特徴点があるか否かを判定する(S207)。変換後の点との距離が閾値ThD以下となる、変換行列Hiの計算に利用していない画像P2の特徴点がある場合、処理は、S208へと進む。一方、変換後の点との距離が閾値ThD以下となる、変換行列Hiの計算に利用していない画像P2の特徴点がない場合、処理はS209へと進む。   When the process proceeds to S207, the post-processing unit 205 does not use the calculation of the conversion matrix Hi in which the distance from the point after conversion by the process of S206 is equal to or less than the threshold ThD by the function of the voting processing unit 253. It is determined whether there is a feature point of the image P2 (S207). If there is a feature point of the image P2 that is not used for the calculation of the transformation matrix Hi, the process proceeds to S208 when the distance from the transformed point is equal to or less than the threshold ThD. On the other hand, if there is no feature point of the image P2 that is not used for calculation of the transformation matrix Hi, the distance from the transformed point is equal to or less than the threshold ThD, the process proceeds to S209.

処理がS208へと進んだ場合、後段処理部205は、投票処理部253の機能により、変換行列Hiに投票する(S208)。S208の処理が完了すると、処理はS212へと進む。   When the process proceeds to S208, the post-processing unit 205 votes for the transformation matrix Hi by the function of the voting processing unit 253 (S208). When the process of S208 is completed, the process proceeds to S212.

処理がS209へと進んだ場合、後段処理部205は、投票処理部253の機能により、(n−d−Nmax)を計算する(S209)。なお、nは、画像P1から抽出された特徴点の数である。次いで、後段処理部205は、投票処理部253の機能により、現時点までにアウトライヤと判定した特徴点の数を計算する(S210)。   When the process proceeds to S209, the post-processing unit 205 calculates (nd−Nmax) by the function of the voting processing unit 253 (S209). Note that n is the number of feature points extracted from the image P1. Next, the post-processing unit 205 calculates the number of feature points that have been determined as outliers up to the present time by the function of the voting processing unit 253 (S210).

次いで、後段処理部205は、投票処理部253の機能により、S210の処理における計算結果が(n−d−Nmax)より大きいか否かを判定する(S211)。計算結果が(n−d−Nmax)より大きい場合、処理は図31のS203へと進む。一方、計算結果が(n−d−Nmax)より大きくない場合、処理はS212へと進む。   Next, the post-processing unit 205 determines whether or not the calculation result in the processing of S210 is greater than (nd−Nmax) by the function of the voting processing unit 253 (S211). If the calculation result is greater than (nd−Nmax), the process proceeds to S203 in FIG. On the other hand, if the calculation result is not greater than (nd−Nmax), the process proceeds to S212.

処理がS212へと進んだ場合、後段処理部205は、投票処理部253の機能により、S205の処理において(n−d)個の特徴点をすべて選択したか否かを判定する(S212)。(n−d)個の特徴点をすべて選択した場合、処理はS213へと進む。一方、(n−d)個の特徴点のうち未選択の特徴点がある場合、処理は図31のS205へと進む。   When the process proceeds to S212, the post-processing unit 205 determines whether all (n−d) feature points have been selected in the process of S205 by the function of the voting processing unit 253 (S212). If all (n−d) feature points have been selected, the process proceeds to S213. On the other hand, when there is an unselected feature point among the (nd) feature points, the process proceeds to S205 in FIG.

処理がS213へと進んだ場合、後段処理部205は、投票処理部253の機能により、変換行列Hiの投票数が最大投票数Nmaxを超えたか否かを判定する(S213)。変換行列Hiの投票数が最大投票数Nmaxを超えた場合、処理はS214へと進む。一方、変換行列Hiの投票数が最大投票数Nmaxを超えていない場合、処理はS215へと進む。   When the process proceeds to S213, the post-processing unit 205 determines whether or not the number of votes in the conversion matrix Hi exceeds the maximum number of votes Nmax by the function of the vote processing unit 253 (S213). If the number of votes in the conversion matrix Hi exceeds the maximum number of votes Nmax, the process proceeds to S214. On the other hand, if the number of votes in the transformation matrix Hi does not exceed the maximum number of votes Nmax, the process proceeds to S215.

処理がS214へと進んだ場合、後段処理部205は、変換行列Hiの投票数で最大投票数Nmaxを更新する(S214)。S214の処理が完了すると、処理はS215へと進む。処理がS215へと進んだ場合、後段処理部205は、S203以降の処理をT回(例えば、上記の式(1)で与えられるT)実行したか否かを判定する(S215)。処理をT回実行し終えた場合、処理はS216へと進む。一方、処理をT回実行し終えていない場合、処理は図31のS203へと進む。   When the process proceeds to S214, the post-processing unit 205 updates the maximum vote number Nmax with the vote number of the conversion matrix Hi (S214). When the process of S214 is completed, the process proceeds to S215. When the process proceeds to S215, the post-processing unit 205 determines whether or not the process after S203 has been performed T times (for example, T given by the above equation (1)) (S215). If the process has been executed T times, the process proceeds to S216. On the other hand, if the process has not been executed T times, the process proceeds to S203 in FIG.

処理がS216へと進んだ場合、後段処理部205は、画像処理に利用する変換行列Hとして、投票数が最大の変換行列Hiを出力する(S216)。S216の処理が完了すると、図31及び図32に示した一連の処理は終了する。なお、上記の説明ではS203以降の処理をT回実行する例を示したが、ペアマップリスト201bの特徴点ペアがなくなるまでS203以降の処理を実行するように変形することも可能である。   When the process proceeds to S216, the post-processing unit 205 outputs the conversion matrix Hi having the maximum number of votes as the conversion matrix H used for image processing (S216). When the process of S216 is completed, the series of processes shown in FIGS. 31 and 32 is finished. In the above description, an example in which the processing after S203 is executed T times is shown, but it is also possible to modify the processing after S203 until the feature point pairs in the pair map list 201b disappear.

(ペアマップリストの生成に係る処理の流れ)
ここで、図33を参照しながら、上述した後段処理のうち、ペアマップリスト201bの生成に関する処理の流れについて説明する。なお、図33は、第3実施形態に係る情報処理装置が実行する後段処理のうち、ペアマップリストの生成に関する処理の流れを示したフロー図である。図33に示した一連の処理は、上述したS202の処理に対応し、主に候補抽出部251により実行される。
(Processing flow for generating a pair map list)
Here, with reference to FIG. 33, a flow of processing relating to generation of the pair map list 201b in the latter-stage processing described above will be described. FIG. 33 is a flowchart showing a flow of processing relating to generation of a pair map list among subsequent processing executed by the information processing apparatus according to the third embodiment. The series of processing illustrated in FIG. 33 corresponds to the processing of S202 described above, and is mainly executed by the candidate extraction unit 251.

図33に示すように、候補抽出部251は、画像P1の特徴点を1個選択する(S221)。次いで、候補抽出部251は、S221の処理で選択した特徴点を推定変換行列Rで変換する(S222)。次いで、候補抽出部251は、S222の処理による変換後の点のインライヤ範囲に含まれる画像P2の特徴点をすべて抽出する(S223)。   As shown in FIG. 33, the candidate extraction unit 251 selects one feature point of the image P1 (S221). Next, the candidate extraction unit 251 converts the feature points selected in the process of S221 with the estimated conversion matrix R (S222). Next, the candidate extraction unit 251 extracts all the feature points of the image P2 included in the inlier range of the points after the conversion in the process of S222 (S223).

次いで、候補抽出部251は、S223の処理で抽出した特徴点と、S221の処理で選択した特徴点とのペアをペアマップリスト201bに記載する(S224)。次いで、候補抽出部251は、画像P1の全特徴点を選択したか否かを判定する(S225)。画像P1の全特徴点を選択し終えた場合、図33に示した一連の処理は終了する。一方、画像P1の特徴点のうち未選択の特徴点がある場合、処理はS221へと進む。   Next, the candidate extraction unit 251 describes a pair of the feature point extracted in the process of S223 and the feature point selected in the process of S221 in the pair map list 201b (S224). Next, the candidate extraction unit 251 determines whether all feature points of the image P1 have been selected (S225). When all the feature points of the image P1 have been selected, the series of processes shown in FIG. 33 ends. On the other hand, when there is an unselected feature point among the feature points of the image P1, the process proceeds to S221.

以上、情報処理装置200が実行する処理の流れについて説明した。上記のように、インライヤ範囲に基づく特徴点ペアの絞り込みを行うことで投票処理の実行回数を減らすことが可能になり、画像処理に利用する変換行列Hの計算負荷を低減することができる。   The flow of processing executed by the information processing apparatus 200 has been described above. As described above, by narrowing down feature point pairs based on the inlier range, it is possible to reduce the number of times the voting process is executed, and to reduce the calculation load of the transformation matrix H used for image processing.

以上、第3実施形態について説明した。
<4.第2及び第3実施形態の組み合わせ>
ここで、図34〜図36を参照しながら、第2実施形態に係る方法と、第3実施形態に係る方法とを組み合わせる仕組みについて説明する。
The third embodiment has been described above.
<4. Combination of second and third embodiments>
Here, a mechanism for combining the method according to the second embodiment and the method according to the third embodiment will be described with reference to FIGS. 34 to 36.

なお、図34は、第2及び第3実施形態の組み合わせについて説明するための第1の図である。また、図35は、第2及び第3実施形態の組み合わせについて説明するための第2の図である。また、図36は、第2及び第3実施形態の組み合わせに係る後段処理の流れを示したフロー図である。   FIG. 34 is a first diagram for explaining a combination of the second and third embodiments. FIG. 35 is a second diagram for explaining a combination of the second and third embodiments. FIG. 36 is a flowchart showing the flow of subsequent processing according to the combination of the second and third embodiments.

既に説明したように、第3実施形態に係る方法によれば、ペアマップリスト201bを利用することで処理負荷が低減される。例えば、点Q11のインライヤ範囲に含まれる特徴点q21、q22がある場合、図34に示すようなペアマップリスト201bが得られる。この例のように、インライヤ範囲に含まれる特徴点の数が少ない場合、ペアマップリスト201bに記載される特徴点ペアの数が少ないため、処理負荷の低減効果が大きい。   As already described, according to the method according to the third embodiment, the processing load is reduced by using the pair map list 201b. For example, when there are feature points q21 and q22 included in the inlier range of the point Q11, a pair map list 201b as shown in FIG. 34 is obtained. As in this example, when the number of feature points included in the inlier range is small, the number of feature point pairs described in the pair map list 201b is small, so the effect of reducing the processing load is great.

一方、図35に示すように、インライヤ範囲に含まれる特徴点の数が多い場合(図35の例では特徴点q21、q22、…、q25がインライヤ範囲に含まれる。)、ペアマップリスト201bに記載される特徴点ペアの数が多くなる。つまり、特徴点が局所的に密集しているような場合、ペアマップリスト201bを利用することで得られる処理負荷の低減効果が小さくなる。このような場合、第2実施形態に係る方法を適用する方が、より大きな処理負荷の低減効果が得られる可能性がある。   On the other hand, as shown in FIG. 35, when the number of feature points included in the inlier range is large (in the example of FIG. 35, feature points q21, q22,..., Q25 are included in the inlier range), the pair map list 201b The number of feature point pairs to be described increases. That is, when the feature points are locally dense, the processing load reduction effect obtained by using the pair map list 201b is reduced. In such a case, there is a possibility that a larger processing load reduction effect can be obtained by applying the method according to the second embodiment.

そこで、図34に示すような状況では第3実施形態に係る方法を適用し、図35に示すような状況では第2実施形態に係る方法を適用して処理負荷の低減効果を向上させる組み合わせ方式を提案する。この組み合わせ方式を適用する場合、処理の流れは図36のようになる。ここで、図36に示した処理の実行主体を後段処理部300と呼ぶことにする。   Therefore, in the situation shown in FIG. 34, the method according to the third embodiment is applied, and in the situation shown in FIG. 35, the method according to the second embodiment is applied to improve the processing load reduction effect. Propose. When this combination method is applied, the processing flow is as shown in FIG. Here, the execution subject of the process illustrated in FIG. 36 is referred to as a post-processing unit 300.

図36に示すように、後段処理部300は、画像P1の特徴点を推定変換行列Rで変換する(S301)。次いで、後段処理部300は、S301の処理による変換後の点を基準とするインライヤ範囲に含まれる特徴点の数Zを計算する(S302)。   As illustrated in FIG. 36, the post-processing unit 300 converts the feature points of the image P1 using the estimated conversion matrix R (S301). Next, the post-processing unit 300 calculates the number Z of feature points included in the inlier range based on the point converted by the process of S301 (S302).

次いで、後段処理部300は、S302の処理で計算した数Zが、予め設定された閾値ThZより大きいか否かを判定する(S303)。Z≧ThZの場合、処理はS304へと進む。一方、Z<ThZの場合、処理はS305へと進む。   Next, the post-processing unit 300 determines whether or not the number Z calculated in the process of S302 is greater than a preset threshold ThZ (S303). If Z ≧ ThZ, the process proceeds to S304. On the other hand, if Z <ThZ, the process proceeds to S305.

処理がS304へと進んだ場合、後段処理部300は、第2実施形態の後段処理を実行する(S304)。一方、処理がS305へと進んだ場合、後段処理部300は、第3実施形態の後段処理を実行する(S305)。S304又はS305の処理が完了すると、図36に示した一連の処理は終了する。   When the process proceeds to S304, the post-processing unit 300 executes the post-process of the second embodiment (S304). On the other hand, when the process proceeds to S305, the post-processing unit 300 performs the post-process of the third embodiment (S305). When the process of S304 or S305 is completed, the series of processes illustrated in FIG. 36 ends.

上記のようにインライヤ範囲に含まれる特徴点の数に応じて第2実施形態の後段処理と第3実施形態の後段処理とを組み合わせることで、状況に応じた好適な処理が実現され、より大きな処理負荷の低減効果を得ることができる。   As described above, a combination of the post-stage process of the second embodiment and the post-stage process of the third embodiment according to the number of feature points included in the inlier range realizes a suitable process according to the situation, which is larger. An effect of reducing the processing load can be obtained.

以上、第2及び第3実施形態の組み合わせについて説明した。
<5.付記>
以上説明した実施形態に関し、さらに以下の付記を開示する。
The combination of the second and third embodiments has been described above.
<5. Addendum>
The following additional notes are disclosed with respect to the embodiment described above.

(付記1) 第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部と、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する演算部と
を有する、情報処理装置。
(Supplementary Note 1) A first feature point included in the first image, a second feature point included in the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image; A storage unit for storing
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and An information processing apparatus comprising: an arithmetic unit that calculates an evaluation value of the parameter and determines the parameter based on the evaluation value.

(付記2) 前記演算部は、
前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合から前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータを計算し、当該パラメータと前記推定値との差が設定した許容値よりも小さい場合に前記誤差が前記設定した範囲内にあると判断する
付記1に記載の情報処理装置。
(Additional remark 2) The said calculating part is
Selecting a set of the first feature point and the second feature point from a set of the first and second feature points having a feature amount larger than the second threshold, and calculating the parameter for each selected set; The information processing apparatus according to claim 1, wherein the error is determined to be within the set range when a difference between the parameter and the estimated value is smaller than a set allowable value.

(付記3) 前記演算部は、
抽出される前記第1特徴点同士の距離及び抽出される前記第2特徴点同士の距離が第1設定値より大きくなるように抽出した前記第1及び第2特徴点の集合から、前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合を特定する
付記1又は2に記載の情報処理装置。
(Supplementary note 3)
From the set of the first and second feature points extracted so that the distance between the extracted first feature points and the distance between the extracted second feature points are larger than the first set value, the second feature points are extracted. The information processing apparatus according to appendix 1 or 2, wherein a set of the first and second feature points having a feature amount larger than a threshold is specified.

(付記4) 前記演算部は、
前記パラメータの評価値を計算する処理において、当該パラメータの計算に用いていない前記第1特徴点を選択し、当該パラメータを適用した前記変換モデルで当該第1特徴点を変換し、変換後の点と当該第2特徴点との距離が第2設定値より小さい場合に当該パラメータに対する第1投票数を増加させ、選択したすべての前記第1特徴点に関する前記第1投票数の累積値を当該パラメータに対する前記評価値とする
付記1〜3のいずれかに記載の情報処理装置。
(Supplementary Note 4)
In the process of calculating the evaluation value of the parameter, the first feature point that is not used in the calculation of the parameter is selected, the first feature point is converted by the conversion model to which the parameter is applied, and the converted point When the distance between the second feature point and the second feature point is smaller than the second set value, the first vote number for the parameter is increased, and the cumulative value of the first vote number for all the selected first feature points is the parameter. The information processing apparatus according to any one of supplementary notes 1 to 3, wherein the evaluation value is set as the evaluation value.

(付記5) 前記演算部は、
前記パラメータの評価値を計算する処理において、当該パラメータに対する前記第1投票数を増加させる際に当該パラメータの計算に用いた前記第1特徴点に対する第2投票数を増加させ、前記第1特徴点を選択する場合に前記第2投票数が小さい順に前記第1特徴点を選択する
付記4に記載の情報処理装置。
(Supplementary Note 5)
In the process of calculating the evaluation value of the parameter, when increasing the first vote number for the parameter, the second vote number for the first feature point used for calculating the parameter is increased, and the first feature point The information processing apparatus according to claim 4, wherein the first feature point is selected in ascending order of the second number of votes when selecting.

(付記6) 前記演算部は、
前記推定値の計算に用いていない前記第1特徴点を選択し、前記推定値を適用した前記変換モデルで当該第1特徴点を変換し、変換後の点と当該第2特徴点との距離が前記第2設定値より小さくなる場合に当該第1特徴点に対する第3投票数を増加させ、選択したすべての前記第1特徴点に関する前記第3投票数の累積値を上限値に設定し、前記第2投票数が前記上限値より大きい場合に当該第2投票数で前記上限値を更新し、
前記パラメータの評価値を計算する処理において、当該パラメータによる前記変換後の点と前記第2特徴点との距離が前記第2設定値より大きくなる前記第1特徴点の数が前記上限値に達した場合に、当該パラメータに対する前記評価値の計算を回避する
付記5に記載の情報処理装置。
(Additional remark 6) The said calculating part is
The first feature point that is not used for calculation of the estimated value is selected, the first feature point is converted by the conversion model to which the estimated value is applied, and the distance between the converted point and the second feature point is converted When the value is smaller than the second set value, the third vote number for the first feature point is increased, and the cumulative value of the third vote number for all the selected first feature points is set as an upper limit value, When the second vote number is larger than the upper limit value, the upper limit value is updated with the second vote number,
In the process of calculating the evaluation value of the parameter, the number of the first feature points at which the distance between the converted point by the parameter and the second feature point is larger than the second set value reaches the upper limit value. The information processing apparatus according to appendix 5, wherein the calculation of the evaluation value for the parameter is avoided when the parameter is calculated.

(付記7) 前記演算部は、
前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合から前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に、前記推定値を適用した前記変換モデルで前記第1特徴点を変換し、変換後の点を基準に設定した領域に前記第2特徴点が含まれるか否かを判定し、当該領域に前記第2特徴点が含まれる場合に前記誤差が前記設定した範囲内にあると判断する
付記1〜4のいずれかに記載の情報処理装置。
(Supplementary note 7)
A set of the first feature point and the second feature point is selected from the set of the first and second feature points having a feature amount larger than the second threshold value, and the estimated value is applied to each selected set. The first feature point is converted by the converted model, and it is determined whether or not the second feature point is included in a region set based on the converted point, and the second feature point is included in the region. The information processing apparatus according to any one of appendices 1 to 4, wherein the information is determined to be within the set range.

(付記8) 第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、前記第1特徴点、前記第2特徴点、及び前記変換モデルの情報を取得可能なコンピュータが、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する
パラメータの決定方法。
(Supplementary Note 8) A first feature point included in the first image, a second feature point included in the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image A computer capable of acquiring information on the first feature point, the second feature point, and the conversion model from a storage unit that stores
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and A parameter determination method that calculates an evaluation value of the parameter and determines the parameter based on the evaluation value.

(付記9) 第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、前記第1特徴点、前記第2特徴点、及び前記変換モデルの情報を取得可能なコンピュータに、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する
処理を実行させる、プログラム。
(Supplementary Note 9) A first feature point included in the first image, a second feature point included in the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image; A computer capable of acquiring information on the first feature point, the second feature point, and the conversion model from a storage unit storing
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and A program that calculates an evaluation value of the parameter and determines the parameter based on the evaluation value.

(付記10) 第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、前記第1特徴点、前記第2特徴点、及び前記変換モデルの情報を取得可能なコンピュータに、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する
処理を実行させるプログラムが格納された、コンピュータにより読み取り可能な記録媒体。
(Supplementary Note 10) A first feature point included in the first image, a second feature point included in the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image; A computer capable of acquiring information on the first feature point, the second feature point, and the conversion model from a storage unit storing
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and A computer-readable recording medium storing a program for executing a process of calculating an evaluation value of the parameter and determining the parameter based on the evaluation value.

(付記11) 第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部と、
一部の前記第1及び第2特徴点を用いて前記変換モデルに含まれるパラメータの推定値を計算し、全部の前記第1及び第2特徴点を対象に前記第1特徴点と前記第2特徴点との組を順次選択して組毎に前記パラメータを計算し、計算した前記パラメータと前記推定値との差が設定した範囲内となる場合に当該パラメータの評価値を計算し、前記評価値が最大となる前記パラメータを特定する演算部と
を有する、情報処理装置。
(Supplementary Note 11) A first feature point included in the first image, a second feature point included in the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image; A storage unit for storing
An estimated value of a parameter included in the conversion model is calculated using a part of the first and second feature points, and the first feature point and the second feature point are targeted for all the first and second feature points. A set of feature points is sequentially selected and the parameter is calculated for each set. If the difference between the calculated parameter and the estimated value is within a set range, an evaluation value of the parameter is calculated, and the evaluation An information processing apparatus comprising: an arithmetic unit that identifies the parameter having a maximum value.

(付記12) 前記コンピュータが、前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合から前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータを計算し、当該パラメータと前記推定値との差が設定した許容値よりも小さい場合に前記誤差が前記設定した範囲内にあると判断する
付記8に記載のパラメータの決定方法。
(Supplementary Note 12) The computer selects a set of the first feature point and the second feature point from a set of the first and second feature points having a feature amount larger than the second threshold, and the selected set The parameter determination method according to claim 8, wherein the parameter is calculated every time, and the error is determined to be within the set range when a difference between the parameter and the estimated value is smaller than a set allowable value.

(付記13) 前記コンピュータが、抽出される前記第1特徴点同士の距離及び抽出される前記第2特徴点同士の距離が第1設定値より大きくなるように抽出した前記第1及び第2特徴点の集合から、前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合を特定する
付記8又は12に記載のパラメータの決定方法。
(Supplementary Note 13) The first and second features extracted by the computer so that the distance between the extracted first feature points and the distance between the extracted second feature points are larger than a first set value. The parameter determination method according to appendix 8 or 12, wherein a set of the first and second feature points having a feature amount larger than the second threshold is specified from a set of points.

(付記14) 前記パラメータの評価値を計算する処理において、前記コンピュータが、当該パラメータの計算に用いていない前記第1特徴点を選択し、当該パラメータを適用した前記変換モデルで当該第1特徴点を変換し、変換後の点と当該第2特徴点との距離が第2設定値より小さい場合に当該パラメータに対する第1投票数を増加させ、選択したすべての前記第1特徴点に関する前記第1投票数の累積値を当該パラメータに対する前記評価値とする
付記8、12、13のいずれかに記載のパラメータの決定方法。
(Additional remark 14) In the process which calculates the evaluation value of the said parameter, the said computer selects the said 1st feature point which is not used for the calculation of the said parameter, The said 1st feature point by the said conversion model which applied the said parameter And when the distance between the converted point and the second feature point is smaller than the second set value, the first vote number for the parameter is increased, and the first feature points for all the selected first feature points are The parameter determination method according to any one of appendices 8, 12, and 13, wherein a cumulative value of the number of votes is the evaluation value for the parameter.

(付記15) 前記パラメータの評価値を計算する処理において、前記コンピュータが、当該パラメータに対する前記第1投票数を増加させる際に当該パラメータの計算に用いた前記第1特徴点に対する第2投票数を増加させ、前記第1特徴点を選択する場合に前記第2投票数が小さい順に前記第1特徴点を選択する
付記14に記載のパラメータの決定方法。
(Supplementary Note 15) In the process of calculating the evaluation value of the parameter, when the computer increases the first vote number for the parameter, the second vote number for the first feature point used for calculating the parameter is calculated. The parameter determination method according to claim 14, wherein when the first feature point is selected, the first feature point is selected in ascending order of the second vote number.

(付記16) 前記コンピュータが、
前記推定値の計算に用いていない前記第1特徴点を選択し、前記推定値を適用した前記変換モデルで当該第1特徴点を変換し、変換後の点と当該第2特徴点との距離が前記第2設定値より小さくなる場合に当該第1特徴点に対する第3投票数を増加させ、選択したすべての前記第1特徴点に関する前記第3投票数の累積値を上限値に設定し、前記第2投票数が前記上限値より大きい場合に当該第2投票数で前記上限値を更新し、
前記パラメータの評価値を計算する処理において、当該パラメータによる前記変換後の点と前記第2特徴点との距離が前記第2設定値より大きくなる前記第1特徴点の数が前記上限値に達した場合に、当該パラメータに対する前記評価値の計算を回避する
付記15に記載のパラメータの決定方法。
(Supplementary Note 16) The computer
The first feature point that is not used for calculation of the estimated value is selected, the first feature point is converted by the conversion model to which the estimated value is applied, and the distance between the converted point and the second feature point is converted When the value is smaller than the second set value, the third vote number for the first feature point is increased, and the cumulative value of the third vote number for all the selected first feature points is set as an upper limit value, When the second vote number is larger than the upper limit value, the upper limit value is updated with the second vote number,
In the process of calculating the evaluation value of the parameter, the number of the first feature points at which the distance between the converted point by the parameter and the second feature point is larger than the second set value reaches the upper limit value. The parameter determination method according to supplementary note 15, wherein calculation of the evaluation value for the parameter is avoided when the parameter is calculated.

(付記17) 前記コンピュータが、前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合から前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に、前記推定値を適用した前記変換モデルで前記第1特徴点を変換し、変換後の点を基準に設定した領域に前記第2特徴点が含まれるか否かを判定し、当該領域に前記第2特徴点が含まれる場合に前記誤差が前記設定した範囲内にあると判断する
付記8、12〜14のいずれかに記載のパラメータの決定方法。
(Supplementary Note 17) The computer selects a set of the first feature point and the second feature point from a set of the first and second feature points having a feature amount larger than the second threshold, and the selected set Each time, the first feature point is converted by the conversion model to which the estimated value is applied, and it is determined whether or not the second feature point is included in an area set based on the converted point. The parameter determination method according to any one of appendices 8 and 12 to 14, wherein the error is determined to be within the set range when the second feature point is included.

10 情報処理装置
11 記憶部
12 演算部
q1、q11、q12、q13、q14、q15、q16 第1特徴点
q2、q21、q22、q23、q24、q25、q26 第2特徴点
A、A21、A22 パラメータ
A1 推定値
C11、C12、C21、C22 対象物
P1 第1画像
P2 第2画像
TM 変換モデル
Th1 第1閾値
Th2 第2閾値
DESCRIPTION OF SYMBOLS 10 Information processing apparatus 11 Memory | storage part 12 Calculation part q1, q11, q12, q13, q14, q15, q16 1st feature point q2, q21, q22, q23, q24, q25, q26 2nd feature point A, A21, A22 Parameter A1 Estimated value C11, C12, C21, C22 Object P1 First image P2 Second image TM Conversion model Th1 First threshold Th2 Second threshold

Claims (9)

第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部と、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する演算部と
を有する、情報処理装置。
A memory for storing a first feature point of the first image, a second feature point of the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image And
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and An information processing apparatus comprising: an arithmetic unit that calculates an evaluation value of the parameter and determines the parameter based on the evaluation value.
前記演算部は、
前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合から前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータを計算し、当該パラメータと前記推定値との差が設定した許容値よりも小さい場合に前記誤差が前記設定した範囲内にあると判断する
請求項1に記載の情報処理装置。
The computing unit is
Selecting a set of the first feature point and the second feature point from a set of the first and second feature points having a feature amount larger than the second threshold, and calculating the parameter for each selected set; The information processing apparatus according to claim 1, wherein the error is determined to be within the set range when a difference between the parameter and the estimated value is smaller than a set allowable value.
前記演算部は、
抽出される前記第1特徴点同士の距離及び抽出される前記第2特徴点同士の距離が第1設定値より大きくなるように抽出した前記第1及び第2特徴点の集合から、前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合を特定する
請求項1又は2に記載の情報処理装置。
The computing unit is
From the set of the first and second feature points extracted so that the distance between the extracted first feature points and the distance between the extracted second feature points are larger than the first set value, the second feature points are extracted. The information processing apparatus according to claim 1 or 2, wherein a set of the first and second feature points having a feature amount larger than a threshold value is specified.
前記演算部は、
前記パラメータの評価値を計算する処理において、当該パラメータの計算に用いていない前記第1特徴点を選択し、当該パラメータを適用した前記変換モデルで当該第1特徴点を変換し、変換後の点と当該第2特徴点との距離が第2設定値より小さい場合に当該パラメータに対する第1投票数を増加させ、選択したすべての前記第1特徴点に関する前記第1投票数の累積値を当該パラメータに対する前記評価値とする
請求項1〜3のいずれか1項に記載の情報処理装置。
The computing unit is
In the process of calculating the evaluation value of the parameter, the first feature point that is not used in the calculation of the parameter is selected, the first feature point is converted by the conversion model to which the parameter is applied, and the converted point When the distance between the second feature point and the second feature point is smaller than the second set value, the first vote number for the parameter is increased, and the cumulative value of the first vote number for all the selected first feature points is the parameter. The information processing apparatus according to any one of claims 1 to 3, wherein the information value is an evaluation value of the information.
前記演算部は、
前記パラメータの評価値を計算する処理において、当該パラメータに対する前記第1投票数を増加させる際に当該パラメータの計算に用いた前記第1特徴点に対する第2投票数を増加させ、前記第1特徴点を選択する場合に前記第2投票数が小さい順に前記第1特徴点を選択する
請求項4に記載の情報処理装置。
The computing unit is
In the process of calculating the evaluation value of the parameter, when increasing the first vote number for the parameter, the second vote number for the first feature point used for calculating the parameter is increased, and the first feature point The information processing apparatus according to claim 4, wherein the first feature point is selected in ascending order of the second vote number.
前記演算部は、
前記推定値の計算に用いていない前記第1特徴点を選択し、前記推定値を適用した前記変換モデルで当該第1特徴点を変換し、変換後の点と当該第2特徴点との距離が前記第2設定値より小さくなる場合に当該第1特徴点に対する第3投票数を増加させ、選択したすべての前記第1特徴点に関する前記第3投票数の累積値を上限値に設定し、前記第2投票数が前記上限値より大きい場合に当該第2投票数で前記上限値を更新し、
前記パラメータの評価値を計算する処理において、当該パラメータによる前記変換後の点と前記第2特徴点との距離が前記第2設定値より大きくなる前記第1特徴点の数が前記上限値に達した場合に、当該パラメータに対する前記評価値の計算を回避する
請求項5に記載の情報処理装置。
The computing unit is
The first feature point that is not used for calculation of the estimated value is selected, the first feature point is converted by the conversion model to which the estimated value is applied, and the distance between the converted point and the second feature point is converted When the value is smaller than the second set value, the third vote number for the first feature point is increased, and the cumulative value of the third vote number for all the selected first feature points is set as an upper limit value, When the second vote number is larger than the upper limit value, the upper limit value is updated with the second vote number,
In the process of calculating the evaluation value of the parameter, the number of the first feature points at which the distance between the converted point by the parameter and the second feature point is larger than the second set value reaches the upper limit value. The information processing apparatus according to claim 5, wherein calculation of the evaluation value with respect to the parameter is avoided when the parameter is set.
前記演算部は、
前記第2閾値よりも特徴量が大きい前記第1及び第2特徴点の集合から前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に、前記推定値を適用した前記変換モデルで前記第1特徴点を変換し、変換後の点を基準に設定した領域に前記第2特徴点が含まれるか否かを判定し、当該領域に前記第2特徴点が含まれる場合に前記誤差が前記設定した範囲内にあると判断する
請求項1〜4のいずれか1項に記載の情報処理装置。
The computing unit is
A set of the first feature point and the second feature point is selected from the set of the first and second feature points having a feature amount larger than the second threshold value, and the estimated value is applied to each selected set. The first feature point is converted by the converted model, and it is determined whether or not the second feature point is included in a region set based on the converted point, and the second feature point is included in the region. The information processing apparatus according to claim 1, wherein the error is determined to be within the set range.
第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、前記第1特徴点、前記第2特徴点、及び前記変換モデルの情報を取得可能なコンピュータが、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する
パラメータの決定方法。
A memory for storing a first feature point of the first image, a second feature point of the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image A computer capable of acquiring information on the first feature point, the second feature point, and the conversion model from
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and A parameter determination method that calculates an evaluation value of the parameter and determines the parameter based on the evaluation value.
第1画像が有する第1特徴点と、第2画像が有する第2特徴点と、前記第1画像上の点を前記第2画像上の対応する点へと変換する変換モデルとを記憶する記憶部から、前記第1特徴点、前記第2特徴点、及び前記変換モデルの情報を取得可能なコンピュータに、
設定された第1閾値より特徴量が大きい前記第1及び第2特徴点の集合を用いて前記変換モデルに含まれるパラメータの推定値を計算し、前記第1閾値より小さい第2閾値よりも特徴量が大きく、かつ、前記推定値を適用した前記変換モデルに対する誤差が設定した範囲内にある前記第1特徴点と前記第2特徴点との組を選択し、選択した組毎に前記パラメータ及び当該パラメータの評価値を計算し、前記評価値に基づいて前記パラメータを決定する
処理を実行させる、プログラム。
A memory for storing a first feature point of the first image, a second feature point of the second image, and a conversion model for converting a point on the first image into a corresponding point on the second image A computer capable of acquiring information on the first feature point, the second feature point, and the conversion model from
An estimated value of a parameter included in the conversion model is calculated using a set of the first and second feature points having a feature amount larger than the set first threshold, and the feature is smaller than the second threshold smaller than the first threshold. A set of the first feature point and the second feature point that is large and has an error with respect to the conversion model to which the estimated value is applied is within a set range, and for each selected set, the parameter and A program that calculates an evaluation value of the parameter and determines the parameter based on the evaluation value.
JP2014056813A 2014-03-19 2014-03-19 Information processing apparatus, parameter determination method, and program Ceased JP2015179426A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014056813A JP2015179426A (en) 2014-03-19 2014-03-19 Information processing apparatus, parameter determination method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014056813A JP2015179426A (en) 2014-03-19 2014-03-19 Information processing apparatus, parameter determination method, and program

Publications (1)

Publication Number Publication Date
JP2015179426A true JP2015179426A (en) 2015-10-08

Family

ID=54263414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014056813A Ceased JP2015179426A (en) 2014-03-19 2014-03-19 Information processing apparatus, parameter determination method, and program

Country Status (1)

Country Link
JP (1) JP2015179426A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017187990A (en) * 2016-04-07 2017-10-12 株式会社デンソーアイティーラボラトリ Arithmetic device, arithmetic method, and program
JP2018072937A (en) * 2016-10-25 2018-05-10 日本電信電話株式会社 Template matching device, method and program
US10186042B2 (en) * 2015-11-20 2019-01-22 Vivotek Inc. Object matching method and camera system with an object matching function
JP2023505379A (en) * 2019-12-16 2023-02-08 チャンシャ インテリジェント ドライビング インスティテュート コーポレーション リミテッド Method and Apparatus for Generating Panoramic Lookaround Images of Transportation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009163357A (en) * 2007-12-28 2009-07-23 Casio Comput Co Ltd Image composition device and program
JP2011053937A (en) * 2009-09-02 2011-03-17 Nec Corp Image conversion parameter calculation device, image conversion parameter calculation method, and program
JP2011259044A (en) * 2010-06-04 2011-12-22 Panasonic Corp Image processing device and image processing method
WO2012096163A1 (en) * 2011-01-13 2012-07-19 パナソニック株式会社 Image processing device, image processing method, and program therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009163357A (en) * 2007-12-28 2009-07-23 Casio Comput Co Ltd Image composition device and program
JP2011053937A (en) * 2009-09-02 2011-03-17 Nec Corp Image conversion parameter calculation device, image conversion parameter calculation method, and program
JP2011259044A (en) * 2010-06-04 2011-12-22 Panasonic Corp Image processing device and image processing method
WO2012096163A1 (en) * 2011-01-13 2012-07-19 パナソニック株式会社 Image processing device, image processing method, and program therefor

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10186042B2 (en) * 2015-11-20 2019-01-22 Vivotek Inc. Object matching method and camera system with an object matching function
JP2017187990A (en) * 2016-04-07 2017-10-12 株式会社デンソーアイティーラボラトリ Arithmetic device, arithmetic method, and program
JP2018072937A (en) * 2016-10-25 2018-05-10 日本電信電話株式会社 Template matching device, method and program
JP2023505379A (en) * 2019-12-16 2023-02-08 チャンシャ インテリジェント ドライビング インスティテュート コーポレーション リミテッド Method and Apparatus for Generating Panoramic Lookaround Images of Transportation
JP7335446B2 (en) 2019-12-16 2023-08-29 チャンシャ インテリジェント ドライビング インスティテュート コーポレーション リミテッド Method and Apparatus for Generating Panoramic Lookaround Images of Transportation

Similar Documents

Publication Publication Date Title
CN110826519B (en) Face shielding detection method and device, computer equipment and storage medium
KR102538164B1 (en) Image processing method and device, electronic device and storage medium
CN107409166B (en) Automatic generation of panning shots
JP7125541B2 (en) Video restoration method and apparatus, electronics, and storage media
JP5980294B2 (en) Data processing apparatus, imaging apparatus, and data processing method
US9344690B2 (en) Image demosaicing
CN108197618B (en) Method and device for generating human face detection model
US10674066B2 (en) Method for processing image and electronic apparatus therefor
CN107316326B (en) Edge-based disparity map calculation method and device applied to binocular stereo vision
EP3968280A1 (en) Target tracking method and apparatus, storage medium and electronic device
US10306210B2 (en) Image processing apparatus and image capturing apparatus
US9508153B2 (en) Distance measurement apparatus, imaging apparatus, distance measurement method, and program
US9558534B2 (en) Image processing apparatus, image processing method, and medium
US9025889B2 (en) Method, apparatus and computer program product for providing pattern detection with unknown noise levels
CN110991287A (en) Real-time video stream face detection tracking method and detection tracking system
JP6703314B2 (en) Focus detection
KR20150126768A (en) Method for composing image and electronic device thereof
WO2021082819A1 (en) Image generation method and apparatus, and electronic device
JP2015179426A (en) Information processing apparatus, parameter determination method, and program
WO2023160426A1 (en) Video frame interpolation method and apparatus, training method and apparatus, and electronic device
JP7032913B2 (en) Image processing device, image processing method, computer program
CN111507924B (en) Video frame processing method and device
CN110689486A (en) Image processing method, device, equipment and computer storage medium
CN113628259A (en) Image registration processing method and device
JP7176616B2 (en) Image processing system, image processing apparatus, image processing method, and image processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171122

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171219

A045 Written measure of dismissal of application

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20180424