JP2018194891A - Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus - Google Patents

Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus Download PDF

Info

Publication number
JP2018194891A
JP2018194891A JP2017095630A JP2017095630A JP2018194891A JP 2018194891 A JP2018194891 A JP 2018194891A JP 2017095630 A JP2017095630 A JP 2017095630A JP 2017095630 A JP2017095630 A JP 2017095630A JP 2018194891 A JP2018194891 A JP 2018194891A
Authority
JP
Japan
Prior art keywords
patch
image data
normal vector
camera
dimensional shape
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017095630A
Other languages
Japanese (ja)
Inventor
恵 近野
Megumi Konno
恵 近野
都市 雅彦
Masahiko Toshi
雅彦 都市
智史 島田
Tomohito Shimada
智史 島田
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 JP2017095630A priority Critical patent/JP2018194891A/en
Publication of JP2018194891A publication Critical patent/JP2018194891A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

To accurately estimate a three-dimentional position of a subject.SOLUTION: A three-dimensional shape estimation apparatus 100 identifies normal vectors of a plurality of patches which are surfaces virtually provided on a subject with respect to a plurality of image data including the same subject photographed by a plurality of cameras disposed at different positions on the basis of correspondence between feature points included in the plurality of image data. The three-dimensional shape estimation apparatus 100 corrects a first normal vector of a first patch among the plurality of patches on the basis of a second normal vector of a second patch positioned around the first patch. The three-dimensional shape estimation apparatus 100 determines a reference camera among the plurality of cameras on the basis of an orientation of the corrected first normal vector. The three-dimensional shape estimation apparatus 100 updates a position of the first patch on the basis of a correlation value between a pixel value in an area corresponding to the first patch included in the image data photographed by the reference camera and a pixel value in an area corresponding to the first patch included in the image data photographed by the other camera.SELECTED DRAWING: Figure 1

Description

本発明は、3次元形状推定方法等に関する。   The present invention relates to a three-dimensional shape estimation method and the like.

複数のカメラを用いて被写体の画像を撮影し、撮影した画像を用いて被写体上の点(パッチ)の3次元位置を推定する処理を繰り返し実行することで、被写体の3次元形状を推定する従来技術がある。   Conventionally, a three-dimensional shape of a subject is estimated by repeatedly performing a process of estimating a three-dimensional position of a point (patch) on the subject using a plurality of cameras to photograph an image of the subject. There is technology.

図15は、従来技術の処理の一例を説明するための図である。参照カメラ5Iが撮影した画像を参照画像R(p)とし、他のカメラ5Jが撮影した画像を、画像Jとする。例えば、従来技術は、以下のステップS10〜S12の処理を実行する。   FIG. 15 is a diagram for explaining an example of the processing of the prior art. An image captured by the reference camera 5I is referred to as a reference image R (p), and an image captured by another camera 5J is referred to as an image J. For example, the conventional technique executes the following steps S10 to S12.

ステップS10について説明する。従来技術は、参照画像R(p)および画像Jから複数の特徴点を抽出する。従来技術は、複数の特徴点のうち、パッチpに対応する特徴点を特定する。例えば、パッチpに対応する参照画像R(p)の特徴点を、特徴点fとする。パッチpに対応する画像Jの特徴点を、特徴点f’とする。従来技術は、特徴点fおよび特徴点f’を基にして、パッチpの3次元位置c(p)とパッチpの法線ベクトルn(p)を算出する。従来技術は、法線ベクトルn(p)で3次元位置c(p)を中心とするパッチpを生成する。   Step S10 will be described. The conventional technique extracts a plurality of feature points from the reference image R (p) and the image J. The conventional technique specifies a feature point corresponding to the patch p among the plurality of feature points. For example, a feature point of the reference image R (p) corresponding to the patch p is set as a feature point f. A feature point of the image J corresponding to the patch p is defined as a feature point f ′. The conventional technique calculates the three-dimensional position c (p) of the patch p and the normal vector n (p) of the patch p based on the feature point f and the feature point f ′. The prior art generates a patch p centered on a three-dimensional position c (p) with a normal vector n (p).

ステップS11について説明する。従来技術は、参照画像R(p)と他の画像(参照画像R(p)以外の画像)とのパッチpの相関値を算出する。従来技術は、相関値が閾値以上となる場合には、かかる他の画像を、パッチpが見えている画像群T(p)に含める。例えば、従来技術は、参照画像R(p)と画像Jとのパッチpの相関値が閾値以上、また、参照画像T(Rp)と画像H(図示略)とのパッチpの相関値が閾値以上である場合には、画像J、Hを、画像群T(p)に含める。   Step S11 will be described. The prior art calculates the correlation value of the patch p between the reference image R (p) and another image (an image other than the reference image R (p)). In the related art, when the correlation value is equal to or greater than the threshold value, the other image is included in the image group T (p) in which the patch p is visible. For example, in the related art, the correlation value of the patch p between the reference image R (p) and the image J is equal to or greater than the threshold value, and the correlation value of the patch p between the reference image T (Rp) and the image H (not shown) is the threshold value. If this is the case, the images J and H are included in the image group T (p).

また、ステップS11において、従来技術は、パッチpの3次元位置c(p)、法線ベクトルn(p)の微調整を行う。従来技術は、c(p)、n(p)の値を少しずつ変化させながら、T(p)に含まれる画像群との平均相関値が最大となる位置を算出し、係る位置を、調整後のパッチpの3次元位置c(p)とする。従来技術は、調整した3次元位置c(p)、法線ベクトルn(p)からなるパッチpに応じて、画像群T(p)を更新する。従来技術は、パッチpが参照カメラ5I以外の他のカメラからよく見えていれば、パッチpを被写体の一部として登録する。   In step S11, the conventional technique finely adjusts the three-dimensional position c (p) and normal vector n (p) of the patch p. Prior art calculates the position where the average correlation value with the image group included in T (p) is maximum while changing the values of c (p) and n (p) little by little, and adjusts the position. The three-dimensional position c (p) of the subsequent patch p is assumed. The conventional technique updates the image group T (p) according to the patch p including the adjusted three-dimensional position c (p) and the normal vector n (p). In the related art, if the patch p is clearly visible from other cameras than the reference camera 5I, the patch p is registered as a part of the subject.

ステップS12について説明する。従来技術は、パッチpの近傍に位置するパッチp’に対しても、上記のステップS10、11の処理を行うことで、パッチp’の3次元位置c(p’)、法線ベクトルn(p’)を算出し、被写体の3次元位置に追加する。従来技術は、パッチp’の近傍に位置するパッチp’’に対しても、上記のステップS10、11の処理を行うことで、パッチp’’の3次元位置c(p’’)、法線ベクトルn(p’’)を算出し、被写体の3次元位置に追加する。従来技術は、パッチの数が密となるまで、上記の処理を繰り返し実行することで、被写体の3次元形状を推定する。   Step S12 will be described. In the conventional technology, the patch p ′ positioned in the vicinity of the patch p is also subjected to the processes in steps S10 and S11 described above, so that the three-dimensional position c (p ′) of the patch p ′ and the normal vector n ( p ′) is calculated and added to the three-dimensional position of the subject. In the conventional technique, the three-dimensional position c (p ″) of the patch p ″ and the method are also obtained by performing the above-described steps S10 and S11 on the patch p ″ located in the vicinity of the patch p ′. A line vector n (p ″) is calculated and added to the three-dimensional position of the subject. The conventional technique estimates the three-dimensional shape of the subject by repeatedly executing the above processing until the number of patches becomes dense.

特開2013−109660号公報JP2013-109660A 特開2014−228941号公報JP 2014-228951 A

しかしながら、上述した従来技術では、被写体の3次元位置を精度良く推定することができないという問題がある。   However, the above-described conventional technique has a problem that the three-dimensional position of the subject cannot be estimated with high accuracy.

図16は、従来技術の問題点を説明するための図である。例えば、被写体6は、境界部分6a周辺において、3次元位置が大きく変化する。このため、パッチpの位置が同じであっても、各カメラの位置により、カメラに撮影される画像が異なる(パッチに投影される領域が異なる)ため、相関値が小さくなり、被写体6の3次元位置を精度良く推定することができない。   FIG. 16 is a diagram for explaining the problems of the prior art. For example, the three-dimensional position of the subject 6 changes greatly around the boundary portion 6a. For this reason, even if the position of the patch p is the same, the image captured by the camera differs depending on the position of each camera (the area projected on the patch is different), so the correlation value becomes small, and 3 of the subject 6 The dimension position cannot be estimated with high accuracy.

例えば、カメラ10〜14がそれぞれ撮影した境界部分6aの画像(パッチに投影した画像)をそれぞれ画像11a〜14aとする。ここで、従来技術は、図15で説明したように、相関値の算出基準となる参照カメラとして、特徴点が算出されたカメラを使用する。例えば、参照カメラをカメラ11bとすると、どの他の画像と相関値を求めても、相関値が低くなり、3次元位置の推定精度が低下する。   For example, images of the boundary portion 6a captured by the cameras 10 to 14 (images projected on the patches) are referred to as images 11a to 14a, respectively. Here, as described with reference to FIG. 15, the conventional technique uses a camera in which a feature point is calculated as a reference camera serving as a correlation value calculation standard. For example, if the reference camera is the camera 11b, the correlation value is lowered and the estimation accuracy of the three-dimensional position is lowered regardless of which other image and correlation value are obtained.

1つの側面では、本発明は、被写体の3次元位置を精度良く推定することができる3次元形状推定方法、3次元形状推定プログラムおよび3次元形状推定装置を提供することを目的とする。   In one aspect, an object of the present invention is to provide a three-dimensional shape estimation method, a three-dimensional shape estimation program, and a three-dimensional shape estimation apparatus that can accurately estimate a three-dimensional position of a subject.

第1の案では、コンピュータは下記の処理を実行する。コンピュータは、それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、複数の画像データに含まれる特徴点同士の対応関係を基にして、被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定する。コンピュータは、複数のパッチのうち、第1パッチの第1法線ベクトルを、第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正する。コンピュータは、補正した前記第1法線ベクトルの方向を基にして、複数のカメラから基準カメラを判定する。コンピュータは、基準カメラに撮影された画像データに含まれる第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる第1パッチに対応する領域の画素値との相関値を基にして、第1パッチの位置を更新する。   In the first plan, the computer executes the following processing. The computer uses a virtual image on a subject based on the correspondence between feature points included in the plurality of image data, including a plurality of image data including the same subject photographed by a plurality of cameras arranged at different positions. The normal vectors of a plurality of patches that are specific surfaces are respectively specified. The computer corrects the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch. The computer determines a reference camera from a plurality of cameras based on the corrected direction of the first normal vector. The computer calculates the pixel value of the area corresponding to the first patch included in the image data captured by the reference camera and the pixel value of the area corresponding to the first patch included in the image data captured by another camera. The position of the first patch is updated based on the correlation value.

被写体の3次元位置の推定精度を向上させることができる。   The estimation accuracy of the three-dimensional position of the subject can be improved.

図1は、本実施例に係るシステムの構成を示す図である。FIG. 1 is a diagram illustrating a configuration of a system according to the present embodiment. 図2は、本実施例に係る3次元形状推定装置の構成を示す機能ブロック図である。FIG. 2 is a functional block diagram illustrating the configuration of the three-dimensional shape estimation apparatus according to the present embodiment. 図3は、画像バッファのデータ構造の一例を示す図である。FIG. 3 is a diagram illustrating an example of the data structure of the image buffer. 図4は、カメラ管理テーブルのデータ構造の一例を示す図である。FIG. 4 is a diagram illustrating an example of the data structure of the camera management table. 図5は、キャリブレーションパターンの一例を示す図である。FIG. 5 is a diagram illustrating an example of a calibration pattern. 図6は、SFMの処理の一例を説明するための図である。FIG. 6 is a diagram for explaining an example of the SFM processing. 図7は、パッチテーブルのデータ構造の一例を示す図である。FIG. 7 is a diagram illustrating an example of the data structure of the patch table. 図8は、特定部の処理を説明するための図(1)である。FIG. 8 is a diagram (1) for explaining the processing of the specifying unit. 図9は、特定部の処理を説明するための図(2)である。FIG. 9 is a diagram (2) for explaining the processing of the specifying unit. 図10は、被写体から特定される各パッチの法線ベクトルの一例を示す図である。FIG. 10 is a diagram illustrating an example of a normal vector of each patch specified from a subject. 図11は、補正部の処理を説明するための図である。FIG. 11 is a diagram for explaining the processing of the correction unit. 図12は、更新部の処理を説明するための図である。FIG. 12 is a diagram for explaining the processing of the update unit. 図13は、本実施例に係る3次元形状推定装置の処理手順を示すフローチャートである。FIG. 13 is a flowchart illustrating the processing procedure of the three-dimensional shape estimation apparatus according to the present embodiment. 図14は、3次元形状推定装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。FIG. 14 is a diagram illustrating an example of a hardware configuration of a computer that realizes the same function as the three-dimensional shape estimation apparatus. 図15は、従来技術の処理の一例を説明するための図である。FIG. 15 is a diagram for explaining an example of the processing of the prior art. 図16は、従来技術の問題点を説明するための図である。FIG. 16 is a diagram for explaining the problems of the prior art.

以下に、本願の開示する3次元形状推定方法、3次元形状推定プログラムおよび3次元形状推定装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。   Hereinafter, embodiments of a three-dimensional shape estimation method, a three-dimensional shape estimation program, and a three-dimensional shape estimation apparatus disclosed in the present application will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.

図1は、本実施例に係るシステムの構成を示す図である。図1に示すように、このシステムは、カメラ30a、30b、30c、30d、30eと、3次元形状推定装置100とを有する。カメラ30a〜30eと、3次元形状推定装置100とは、相互に接続される。ここではカメラ30a〜30eを示すが、その他のカメラが接続されていても良い。   FIG. 1 is a diagram illustrating a configuration of a system according to the present embodiment. As shown in FIG. 1, this system includes cameras 30a, 30b, 30c, 30d, and 30e, and a three-dimensional shape estimation apparatus 100. The cameras 30a to 30e and the three-dimensional shape estimation apparatus 100 are connected to each other. Here, the cameras 30a to 30e are shown, but other cameras may be connected.

カメラ30a〜30eは、それぞれ異なる位置に配置され、被写体6を撮影するカメラである。カメラ30a〜30eは、撮影した画像のデータを3次元形状推定装置100に出力する。以下の説明では適宜、カメラ30a〜30eをまとめて、カメラ30と表記する。また、カメラ30が撮影した画像のデータを、画像データと表記する。   The cameras 30 a to 30 e are cameras that are arranged at different positions and shoot the subject 6. The cameras 30 a to 30 e output captured image data to the three-dimensional shape estimation apparatus 100. In the following description, the cameras 30a to 30e are collectively referred to as the camera 30 as appropriate. In addition, image data captured by the camera 30 is referred to as image data.

3次元形状推定装置100は、カメラ30から取得する画像データを基にして、被写体6の3次元形状を推定する装置である。   The three-dimensional shape estimation device 100 is a device that estimates the three-dimensional shape of the subject 6 based on image data acquired from the camera 30.

図2は、本実施例に係る3次元形状推定装置の構成を示す機能ブロック図である。図2に示すように、この3次元形状推定装置100は、カメラ30に接続される。3次元形状推定装置100は、入力部110と、表示部120と、記憶部130と、制御部140とを有する。   FIG. 2 is a functional block diagram illustrating the configuration of the three-dimensional shape estimation apparatus according to the present embodiment. As shown in FIG. 2, the three-dimensional shape estimation apparatus 100 is connected to a camera 30. The three-dimensional shape estimation apparatus 100 includes an input unit 110, a display unit 120, a storage unit 130, and a control unit 140.

入力部110は、各種の情報を3次元形状推定装置100に入力するための入力装置である。例えば、入力部110は、キーボードやマウス、タッチパネルなどに対応する。   The input unit 110 is an input device for inputting various information to the three-dimensional shape estimation device 100. For example, the input unit 110 corresponds to a keyboard, a mouse, a touch panel, or the like.

表示部120は、制御部140から出力される各種の情報を表示する表示装置である。例えば、表示部120は、液晶ディスプレイやタッチパネルなどに対応する。   The display unit 120 is a display device that displays various types of information output from the control unit 140. For example, the display unit 120 corresponds to a liquid crystal display, a touch panel, or the like.

記憶部130は、画像バッファ131と、カメラ管理テーブル132と、パッチテーブル133とを有する。記憶部130は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。   The storage unit 130 includes an image buffer 131, a camera management table 132, and a patch table 133. The storage unit 130 corresponds to a semiconductor memory device such as a random access memory (RAM), a read only memory (ROM), and a flash memory, and a storage device such as a hard disk drive (HDD).

画像バッファ131は、カメラ30a〜30eにより撮影された画像データを保持するバッファである。図3は、画像バッファのデータ構造の一例を示す図である。図3に示すように、この画像バッファ131は、カメラ識別情報と、画像データとを対応づける。カメラ識別情報は、カメラ30を一意に識別する情報である。画像データは、カメラ識別情報に対応するカメラ30により撮影された画像データである。   The image buffer 131 is a buffer that holds image data taken by the cameras 30a to 30e. FIG. 3 is a diagram illustrating an example of the data structure of the image buffer. As shown in FIG. 3, the image buffer 131 associates camera identification information with image data. The camera identification information is information that uniquely identifies the camera 30. The image data is image data taken by the camera 30 corresponding to the camera identification information.

カメラ管理テーブル132は、カメラ30のパラメータを保持するテーブルである。図4は、カメラ管理テーブルのデータ構造の一例を示す図である。図4に示すように、このカメラ管理テーブル132は、カメラ識別情報と、パラメータとを対応づける。カメラ識別情報は、カメラ30を一意に識別する情報である。   The camera management table 132 is a table that holds parameters of the camera 30. FIG. 4 is a diagram illustrating an example of the data structure of the camera management table. As shown in FIG. 4, the camera management table 132 associates camera identification information with parameters. The camera identification information is information that uniquely identifies the camera 30.

パラメータは、カメラ30の位置・姿勢等を示す情報である。パラメータは、内部パラメータと、外部パラメータとを含む。内部パラメータは、カメラ30のレンズの主点、焦点位置等を示す情報である。外部パラメータは、カメラ30の位置・姿勢を示す情報である。   The parameter is information indicating the position / posture of the camera 30. The parameters include internal parameters and external parameters. The internal parameter is information indicating the principal point of the lens of the camera 30, the focal position, and the like. The external parameter is information indicating the position / posture of the camera 30.

パラメータの取得方法には、例えば、キャリブレーションパターンを用いる方法と、SFM(Structure From Motion)とがある。   The parameter acquisition method includes, for example, a method using a calibration pattern and an SFM (Structure From Motion).

キャリブレーションパターンを用いてパラメータを求める処理の一例について説明する。図5は、キャリブレーションパターンの一例を示す図である。各カメラ30は、キャリブレーションパターン15を同時に撮影する。キャリブレーションパターン15に含まれるパターンやコーナーの位置関係は既知である。   An example of processing for obtaining parameters using a calibration pattern will be described. FIG. 5 is a diagram illustrating an example of a calibration pattern. Each camera 30 captures the calibration pattern 15 at the same time. The positional relationship between patterns and corners included in the calibration pattern 15 is known.

キャリブレーション装置(図示略)は、カメラ30により撮影された画像データから特徴点を抽出し、画像座標系での特徴点の座標を算出する。キャリブレーション装置は、特徴点の座標と、キャリブレーションパターン15の既知の位置関係等を基にして、カメラ30の内部パラメータの初期値を特定する。キャリブレーション装置は、バンドル調整等を実行することで、内部パラメータおよび外部パラメータを求める。   The calibration device (not shown) extracts feature points from the image data captured by the camera 30, and calculates the coordinates of the feature points in the image coordinate system. The calibration device specifies initial values of internal parameters of the camera 30 based on the coordinates of the feature points and the known positional relationship of the calibration pattern 15. The calibration apparatus obtains internal parameters and external parameters by executing bundle adjustment and the like.

SFMに基づいてパラメータを求める処理の一例について説明する。図6は、SFMの処理の一例を説明するための図である。SFMは、被写体の3次元形状とカメラ30の位置姿勢を同士に求める方法である。カメラ30aが撮影した画像を画像31aとし、カメラ30bが撮影した画像を画像31bとする。ある特徴点の3次元位置16に対応する画像31a上の点を特徴点16aとし、3次元位置16に対応する画像31b上の点を特徴点16bとする。   An example of a process for obtaining parameters based on SFM will be described. FIG. 6 is a diagram for explaining an example of the SFM processing. SFM is a method for obtaining the three-dimensional shape of the subject and the position and orientation of the camera 30 from each other. An image captured by the camera 30a is referred to as an image 31a, and an image captured by the camera 30b is referred to as an image 31b. A point on the image 31a corresponding to the three-dimensional position 16 of a certain feature point is a feature point 16a, and a point on the image 31b corresponding to the three-dimensional position 16 is a feature point 16b.

キャリブレーション装置(図示略)は、特徴点16aと特徴点16bとの対応付けを行い、ステレオカメラの原理により、特徴点16の3次元位置を算出する。キャリブレーション装置は、エピポーラ拘束の関係を用いて、特徴点16aと特徴点16bとの間の変換行列(基礎行列)を算出する。キャリブレーション装置は、基礎行列を用いて、特徴点16aから特徴点16bに対する再投影誤差が最小になるように、カメラ30a、30bのパラメータを調整する。再投影誤差が最小になるカメラ30a、30bのパラメータが、最終的なカメラ30a、30bのパラメータとなる。   The calibration device (not shown) associates the feature point 16a with the feature point 16b, and calculates the three-dimensional position of the feature point 16 based on the principle of the stereo camera. The calibration apparatus calculates a transformation matrix (basic matrix) between the feature points 16a and 16b using the epipolar constraint relationship. The calibration apparatus uses the basic matrix to adjust the parameters of the cameras 30a and 30b so that the reprojection error from the feature point 16a to the feature point 16b is minimized. The parameters of the cameras 30a and 30b that minimize the reprojection error become the final parameters of the cameras 30a and 30b.

例えば、上記に示したキャリブレーション装置により算出されたカメラ30a〜30eのパラメータを、3次元形状推定装置100は予め取得して、カメラ管理テーブル132に格納しておく。   For example, the three-dimensional shape estimation apparatus 100 acquires in advance the parameters of the cameras 30 a to 30 e calculated by the calibration apparatus described above and stores them in the camera management table 132.

図2の説明に戻る。パッチテーブル133は、後述する制御部140に特定されるパッチに関する情報を保持するテーブルである。図7は、パッチテーブルのデータ構造の一例を示す図である。例えば、パッチは、異なるカメラ30に撮影された画像データの組の各特徴点に対応づけられる3次元空間上の点である。図7に示すように、パッチテーブル133は、パッチ識別情報と、3次元位置と、法線ベクトルとを対応づける。パッチ識別情報は、パッチを一意に識別する情報である。3次元位置は、パッチの3次元位置である。法線ベクトルはパッチの法線ベクトルである。   Returning to the description of FIG. The patch table 133 is a table that holds information regarding patches specified by the control unit 140 described later. FIG. 7 is a diagram illustrating an example of the data structure of the patch table. For example, a patch is a point on a three-dimensional space that is associated with each feature point of a set of image data captured by different cameras 30. As shown in FIG. 7, the patch table 133 associates patch identification information, a three-dimensional position, and a normal vector. The patch identification information is information that uniquely identifies a patch. The three-dimensional position is a three-dimensional position of the patch. The normal vector is a patch normal vector.

制御部140は、取得部141と、特徴点抽出部142と、特定部143と、補正部144と、判定部145と、更新部146とを有する。制御部140は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などによって実現できる。また、制御部140は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。   The control unit 140 includes an acquisition unit 141, a feature point extraction unit 142, a specification unit 143, a correction unit 144, a determination unit 145, and an update unit 146. The control unit 140 can be realized by a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or the like. The control unit 140 can also be realized by a hard wired logic such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

取得部141は、カメラ30から画像データを取得する処理部である。取得部141は、カメラ識別情報と対応づけて画像データを画像バッファ131に格納する。   The acquisition unit 141 is a processing unit that acquires image data from the camera 30. The acquisition unit 141 stores the image data in the image buffer 131 in association with the camera identification information.

特徴点抽出部142は、画像バッファ131に格納された各画像データから特徴点を抽出する処理部である。例えば、特徴点抽出部142は、コーナー検出法(Harris)やSIFT等を基にして、画像データから特徴点を抽出する。特徴点抽出部142は、各画像データから抽出した特徴点の情報を、特定部143に出力する。例えば、特徴点の情報は、画像データ上の特徴点の座標と、画像データを撮影したカメラのカメラ識別情報とを対応づけた情報である。   The feature point extraction unit 142 is a processing unit that extracts feature points from each image data stored in the image buffer 131. For example, the feature point extraction unit 142 extracts feature points from the image data based on a corner detection method (Harris), SIFT, or the like. The feature point extraction unit 142 outputs information on the feature points extracted from each image data to the specifying unit 143. For example, the feature point information is information that associates the coordinates of the feature points on the image data with the camera identification information of the camera that captured the image data.

特定部143は、画像データの組に含まれる特徴点同士の対応関係を基にして、パッチの3次元座標、パッチの法線ベクトルを特定する処理部である。以下において、特定部143の処理の一例について説明する。   The specifying unit 143 is a processing unit that specifies the three-dimensional coordinates of the patch and the normal vector of the patch based on the correspondence between the feature points included in the set of image data. Hereinafter, an example of processing of the specifying unit 143 will be described.

図8は、特定部の処理を説明するための図(1)である。図8では一例として、基準とする参照カメラをカメラ30aとし、他のカメラをカメラ30bとする。カメラ30aが撮影した画像データを参照画像データ41aとし、カメラ30bが撮影した画像データを画像データ41bとする。特定部143は、参照画像データ41aの特徴点fと、画像データ41bの特徴点f’とを選択する。特徴点fは、参照画像データ41aに含まれる特徴点のうち、いずれかの特徴点に対応する。特徴点f’は、画像データ41bに含まれる全特徴点の内、特徴点fとエピポーラ幾何が成り立つ特徴点となる。   FIG. 8 is a diagram (1) for explaining the processing of the specifying unit. In FIG. 8, as an example, the reference camera serving as a reference is a camera 30a, and the other camera is a camera 30b. Image data captured by the camera 30a is referred to as reference image data 41a, and image data captured by the camera 30b is referred to as image data 41b. The specifying unit 143 selects the feature point f of the reference image data 41a and the feature point f ′ of the image data 41b. The feature point f corresponds to one of the feature points included in the reference image data 41a. The feature point f ′ is a feature point that satisfies the feature point f and the epipolar geometry among all the feature points included in the image data 41b.

特定部143は、画像データ上の特徴点f、f’の座標、カメラ30a、30bのパラメータを基にして、ステレオカメラの原理に基づき、パッチpの3次元位置c(p)を算出する。特定部143は、カメラ30a、30bのパラメータを、カメラ管理テーブル132から取得する。   The specifying unit 143 calculates the three-dimensional position c (p) of the patch p based on the principle of the stereo camera based on the coordinates of the feature points f and f ′ on the image data and the parameters of the cameras 30a and 30b. The specifying unit 143 acquires the parameters of the cameras 30a and 30b from the camera management table 132.

図9の説明に移行する。特定部143は、パッチpの3次元位置c(p)を特定した後に、次の処理を実行する。特定部143は、参照カメラ(カメラ30a)の光学中心方向を、パッチpの法線ベクトルn(p)として特定する。   The description shifts to the description of FIG. The specifying unit 143 executes the following process after specifying the three-dimensional position c (p) of the patch p. The specifying unit 143 specifies the optical center direction of the reference camera (camera 30a) as the normal vector n (p) of the patch p.

特定部143は、参照画像データ41aの特徴点fを中心とするμ×μの領域aiを設定する。特定部143は、領域aiを3次元空間の3次元位置c(p)に投影することで、領域ai’を設定する。特定部143は、領域ai’を画像データ41bに射影することで、パッチpに対応する領域ajを特定する。   The specifying unit 143 sets a μ × μ region ai centered on the feature point f of the reference image data 41a. The specifying unit 143 sets the region ai ′ by projecting the region ai onto the three-dimensional position c (p) in the three-dimensional space. The specifying unit 143 specifies the region aj corresponding to the patch p by projecting the region ai 'onto the image data 41b.

特定部143は、領域aiと、領域ajとの相関値を算出する。特定部143は、領域aiの画素値と、領域ajの画素値とが類似しているほど、相関値が大きくなるようなロジックにより、相関値を算出する。例えば、特定部143は、式(1)に基づいて、相関値を算出する。式(1)において、g(x,y)は、領域aiの座標(x,y)の画素値である。g(x,y)は、領域ajの座標(x,y)の画素値である。αは予め設定される値である。 The specifying unit 143 calculates a correlation value between the area ai and the area aj. The specifying unit 143 calculates the correlation value using a logic that increases the correlation value as the pixel value of the region ai and the pixel value of the region aj are similar. For example, the specifying unit 143 calculates a correlation value based on Expression (1). In Expression (1), g 1 (x n , y n ) is a pixel value of the coordinates (x n , y n ) of the region ai. g 2 (x n , y n ) is a pixel value of the coordinates (x n , y n ) of the region aj. α is a preset value.

相関値=α/(Σ|g(x,y)−g(x,y)|・・・(1) Correlation value = α / (Σ | g 1 (x n , y n ) −g 2 (x n , y n ) | (1)

特定部143は、相関値が所定の閾値以上である場合に、パッチ識別情報と、3次元位置と、法線ベクトルとを対応づけて、パッチテーブル133に格納する。特定部143は、参照画像41aに含まれる他の特徴点についても同様の処理を繰り返し実行することで、複数のパッチに関する3次元位置、法線ベクトルを算出し、パッチテーブル133に格納する。また、特定部143は、参照カメラを他のカメラ30b〜30eに変更し、上記処理を繰り返し実行する。   The identification unit 143 stores the patch identification information, the three-dimensional position, and the normal vector in association with each other in the patch table 133 when the correlation value is equal to or greater than a predetermined threshold. The specifying unit 143 repeatedly executes the same processing for other feature points included in the reference image 41a, thereby calculating three-dimensional positions and normal vectors regarding a plurality of patches and storing them in the patch table 133. Further, the specifying unit 143 changes the reference camera to the other cameras 30b to 30e, and repeatedly executes the above processing.

図10は、被写体から特定される各パッチの法線ベクトルの一例を示す図である。図10に示す例では、被写体6から法線ベクトル8a、8b、8c、8d、8e、8f、8g、8h、8iが特定されている。実際には、図10に示した法線ベクトル8a〜8iよりも多くの法線ベクトルが特定されるが、図示を省略する。   FIG. 10 is a diagram illustrating an example of a normal vector of each patch specified from a subject. In the example illustrated in FIG. 10, normal vectors 8 a, 8 b, 8 c, 8 d, 8 e, 8 f, 8 g, 8 h, and 8 i are identified from the subject 6. Actually, more normal vectors than the normal vectors 8a to 8i shown in FIG. 10 are specified, but the illustration is omitted.

図2の説明に戻る。補正部144は、各パッチの法線ベクトルを補正する処理部である。例えば、補正部144は、補正対象となる法線ベクトルを、この法線ベクトルのパッチの周囲に位置するパッチの法線ベクトルを用いてフィルタリングする。   Returning to the description of FIG. The correction unit 144 is a processing unit that corrects the normal vector of each patch. For example, the correction unit 144 filters a normal vector to be corrected using a normal vector of a patch located around the patch of the normal vector.

図11は、補正部の処理を説明するための図である。図11に示す例では、補正部144は、法線ベクトル8dを補正対象として選択する。また、法線ベクトル8dのパッチの周囲の範囲を9とすると、補正部144は、法線ベクトル8b、8c、8d、8e、8fの加重平均を算出することで、補正後の法線ベクトル8d’を算出する。補正部144は、他の法線ベクトル8a〜8c、8e〜8iについても同様にして、補正を行うことで、法線ベクトル8a’〜8c’、8e’〜8i’を得る。   FIG. 11 is a diagram for explaining the processing of the correction unit. In the example illustrated in FIG. 11, the correction unit 144 selects the normal vector 8d as a correction target. Further, assuming that the area around the patch of the normal vector 8d is 9, the correction unit 144 calculates a weighted average of the normal vectors 8b, 8c, 8d, 8e, and 8f, thereby correcting the corrected normal vector 8d. 'Is calculated. The correction unit 144 performs correction in the same manner for the other normal vectors 8a to 8c and 8e to 8i, thereby obtaining normal vectors 8a 'to 8c' and 8e 'to 8i'.

例えば、補正部144は、式(2)に基づいて補正後の法線ベクトルを算出する。式(2)において、pは、補正後のパッチを示す。n(p)は補正後の法線ベクトルを示す。n(p)は、パッチpの法線ベクトルを示す。c(p)は、パッチpの3次元位置を示す。Sneibは、パッチpから距離r以内に含まれるパッチの集合を示す。なお、パッチpは、補正対象の法線ベクトルに対応するパッチである。 For example, the correction unit 144 calculates a corrected normal vector based on Expression (2). In the formula (2), p 2 indicates the patch after correction. n (p 2 ) represents a corrected normal vector. n (p n) indicates the normal vector of the patch p n. c (p n) shows a three-dimensional position of the patch p n. S neib represents a set of patches included within a distance r from the patch p. The patch p is a patch corresponding to the normal vector to be corrected.

Figure 2018194891
Figure 2018194891

w(p)は重みであり、式(3)に示される。式(3)において、c(p)、c(p)、c(p)は、3次元位置のx座標、y座標、z座標を示す。 w (p n ) is a weight, and is shown in Equation (3). In Expression (3), c x (p n ), c y (p n ), and c z (p n ) indicate the x coordinate, y coordinate, and z coordinate of the three-dimensional position.

Figure 2018194891
Figure 2018194891

補正部144は、パッチテーブル133にアクセスし、補正前の法線ベクトルの情報を、補正後の法線ベクトルの情報に更新する。補正部144により、法線ベクトルが補正されると、後述する判定部145および更新部146により、補正後の法線ベクトルに対応するパッチの3次元位置が調整される。   The correction unit 144 accesses the patch table 133 and updates the normal vector information before correction to the corrected normal vector information. When the normal vector is corrected by the correction unit 144, the determination unit 145 and the update unit 146 described later adjust the three-dimensional position of the patch corresponding to the corrected normal vector.

判定部145は、補正後の法線ベクトルに対応するパッチの3次元位置を調整する場合に利用する最適な参照カメラを判定する処理部である。判定部145は、補正後の法線ベクトルと、各カメラ30の光学中心方向とを比較し、補正後の法線ベクトルと最も平行に近い光学中心方向となるカメラを、「第1参照カメラ」として判定する。また、判定部145は、第1参照カメラの次に、平行に近い光学中心方向となるカメラを、「第2参照カメラ」として判定する。   The determination unit 145 is a processing unit that determines an optimal reference camera to be used when adjusting the three-dimensional position of the patch corresponding to the corrected normal vector. The determination unit 145 compares the corrected normal vector with the optical center direction of each camera 30, and determines the camera having the optical center direction closest to the corrected normal vector as the “first reference camera”. Judge as. In addition, the determination unit 145 determines the camera that is in the optical center direction close to parallel next to the first reference camera as the “second reference camera”.

図11を用いて、判定部145の処理を説明する。例えば、判定部145が、補正後の法線ベクトル8d’に対応する参照カメラを判定すると、カメラ30dを第1参照カメラとして判定する。また、判定部145は、カメラ30eを第2参照カメラとして判定する。例えば、法線ベクトル8d’とカメラ30の光学中心方向とを比較して、より平行に近いカメラから順に並べると、1番平行に近いカメラがカメラ30dであり、2番目に平行に近いカメラがカメラ30eであるものとする。   The process of the determination part 145 is demonstrated using FIG. For example, when the determination unit 145 determines the reference camera corresponding to the corrected normal vector 8d ', the camera 30d is determined as the first reference camera. The determination unit 145 determines the camera 30e as the second reference camera. For example, when the normal vector 8d ′ and the optical center direction of the camera 30 are compared and arranged in order from cameras that are closer to parallel, the camera that is closest to parallel is the camera 30d, and the camera that is closest to parallel is the second. Assume that the camera 30e.

判定部145は、補正後の法線ベクトル毎に、法線ベクトルに対応する第1参照カメラおよび第2参照カメラを判定し、判定結果を、更新部146に出力する。   The determination unit 145 determines the first reference camera and the second reference camera corresponding to the normal vector for each corrected normal vector, and outputs the determination result to the update unit 146.

更新部146は、補正後の法線ベクトルに対応するパッチの3次元位置を、第1参照カメラに撮影された画像データおよび第2参照カメラに撮影された画像データを基にして、微調整する処理部である。   The updating unit 146 finely adjusts the three-dimensional position of the patch corresponding to the corrected normal vector based on the image data captured by the first reference camera and the image data captured by the second reference camera. It is a processing unit.

図12は、更新部の処理を説明するための図である。図12では一例として、3次元位置を調整するパッチp2の3次元位置をc(p2)とし、法線ベクトルをn(p2)とし、第1参照カメラをカメラR(p2)、第2参照カメラをT(p2)とする。更新部146は、3次元位置c(p2)を中心とする近傍範囲50内でパッチの3次元位置を変化させ、それぞれの位置で相関値を算出する。更新部146は、算出した各相関値のうち、最大の相関値となるパッチの3次元位置c(p3)を特定する。n(p3)は、3次元位置c(p3)の法線ベクトルである。更新部146は、パッチテーブル133にアクセスし、パッチp2の3次元位置を、c(p2)からc(p3)に更新する。また、更新部146は、法線ベクトルをn(p2)からn(p3)に更新する。   FIG. 12 is a diagram for explaining the processing of the update unit. In FIG. 12, as an example, the three-dimensional position of the patch p2 for adjusting the three-dimensional position is c (p2), the normal vector is n (p2), the first reference camera is the camera R (p2), and the second reference camera is Is T (p2). The update unit 146 changes the three-dimensional position of the patch within the vicinity range 50 centered on the three-dimensional position c (p2), and calculates a correlation value at each position. The update unit 146 identifies the three-dimensional position c (p3) of the patch that is the maximum correlation value among the calculated correlation values. n (p3) is a normal vector of the three-dimensional position c (p3). The update unit 146 accesses the patch table 133 and updates the three-dimensional position of the patch p2 from c (p2) to c (p3). The updating unit 146 also updates the normal vector from n (p2) to n (p3).

更新部146が、相関値を算出する処理は、図9で説明した特定部143が相関値を算出する処理と同様である。更新部146は、カメラR(p2)が撮影した画像データ、カメラT(p2)が撮影した画像データを、画像バッファ131から取得する。また、カメラR(p2)、T(p2)のパラメータをカメラ管理テーブル132から取得する。   The process in which the update unit 146 calculates the correlation value is the same as the process in which the specifying unit 143 described in FIG. 9 calculates the correlation value. The update unit 146 acquires the image data captured by the camera R (p2) and the image data captured by the camera T (p2) from the image buffer 131. Also, parameters of the cameras R (p2) and T (p2) are acquired from the camera management table 132.

更新部146は、他の法線ベクトルについても、図12に示した処理を繰り返し実行することで、各パッチの3次元位置および法線ベクトルを更新する。   The update unit 146 also updates the three-dimensional position and normal vector of each patch by repeatedly executing the processing shown in FIG. 12 for other normal vectors.

次に、本実施例に係る3次元形状推定装置100の処理手順について説明する。図13は、本実施例に係る3次元形状推定装置の処理手順を示すフローチャートである。図13に示すように、3次元形状推定装置100の特徴点抽出部141は、画像バッファ131に格納された全画像データから特徴点を抽出する(ステップS101)。   Next, a processing procedure of the three-dimensional shape estimation apparatus 100 according to the present embodiment will be described. FIG. 13 is a flowchart illustrating the processing procedure of the three-dimensional shape estimation apparatus according to the present embodiment. As shown in FIG. 13, the feature point extraction unit 141 of the three-dimensional shape estimation apparatus 100 extracts feature points from all the image data stored in the image buffer 131 (step S101).

3次元形状推定装置100は、全画像データについてパッチ生成処理済みである場合には(ステップS102,Yes)、ステップS105に移行する。一方、3次元形状推定装置100は、全画像データについてパッチ生成処理済みでない場合には(ステップS102,No)、ステップS103に移行する。   If the patch generation processing has been completed for all image data (Yes in step S102), the 3D shape estimation apparatus 100 proceeds to step S105. On the other hand, if the patch generation processing has not been completed for all image data (step S102, No), the three-dimensional shape estimation apparatus 100 proceeds to step S103.

ステップS103の説明に移行する。3次元形状推定装置100は、全特徴点について処理済みの場合には(ステップS103,Yes)、ステップS102に移行する。一方、3次元形状推定装置100は、全特徴点について処理済みでない場合には(ステップS103,No)、ステップS104に移行する。   The process proceeds to step S103. When the three-dimensional shape estimation apparatus 100 has processed all the feature points (step S103, Yes), the three-dimensional shape estimation apparatus 100 proceeds to step S102. On the other hand, if the three-dimensional shape estimation apparatus 100 has not processed all the feature points (No at Step S103), the three-dimensional shape estimation apparatus 100 proceeds to Step S104.

3次元形状推定装置100の特定部143は、参照画像データR(p)と他の画像データJの特徴点J、J’から3次元位置c(p)と法線ベクトルn(p)を算出し、パッチpを生成し(ステップS104)、ステップS102に移行する。   The specifying unit 143 of the three-dimensional shape estimation apparatus 100 calculates the three-dimensional position c (p) and the normal vector n (p) from the reference image data R (p) and the feature points J and J ′ of the other image data J. Then, the patch p is generated (step S104), and the process proceeds to step S102.

ステップS105の説明に移行する。3次元形状推定装置100は、全画像データについて更新処理済みである場合には(ステップS105,Yes)、処理を終了する。一方、3次元形状推定装置100は、全画像データについて更新処理済みでない場合には(ステップS105,No)、ステップS106に移行する。   The process proceeds to step S105. If the update processing has been completed for all image data (step S105, Yes), the 3D shape estimation apparatus 100 ends the processing. On the other hand, if the update processing has not been completed for all image data (No at Step S105), the 3D shape estimation apparatus 100 proceeds to Step S106.

3次元形状推定装置100の補正部144は、周囲の法線ベクトルを用いてフィルタリングを行い、法線ベクトルn(p2)のパッチp2を生成する(ステップS106)。3次元形状推定装置100の判定部145は、法線ベクトルn(p2)に対して平行に近い第1参照カメラR(p2)、第2参照カメラT(p2)を判定する(ステップS107)。   The correction unit 144 of the three-dimensional shape estimation apparatus 100 performs filtering using surrounding normal vectors to generate a patch p2 of the normal vector n (p2) (step S106). The determination unit 145 of the three-dimensional shape estimation apparatus 100 determines the first reference camera R (p2) and the second reference camera T (p2) that are nearly parallel to the normal vector n (p2) (step S107).

3次元形状推定装置100の更新部146は、3次元位置c(p2)を移動させつつ、第1参照カメラR(p2)、第2参照カメラT(p2)を用いて、最も相関値が高くなる3次元位置c(p3)、法線ベクトルn(p3)を算出し、パッチテーブル133を更新し(ステップS108)、ステップS105に移行する。   The update unit 146 of the three-dimensional shape estimation apparatus 100 uses the first reference camera R (p2) and the second reference camera T (p2) while moving the three-dimensional position c (p2), and has the highest correlation value. The three-dimensional position c (p3) and the normal vector n (p3) are calculated, the patch table 133 is updated (step S108), and the process proceeds to step S105.

次に、本実施例に係る3次元形状推定装置100の効果について説明する。3次元形状推定装置100は、補正されたパッチの法線ベクトルの方向を基にして、複数のカメラから第1参照カメラおよび第2参照カメラを判定し、パッチの3次元位置を更新する。第1参照カメラおよび第2参照カメラは、パッチ面に対して垂直方向に位置するカメラであり、被写体の境界部分周辺においても、画像データの被写体の領域が類似しやすいため、相関値が高くなる。これにより、被写体の3次元位置を精度良く推定することができる。   Next, the effect of the three-dimensional shape estimation apparatus 100 according to the present embodiment will be described. The three-dimensional shape estimation apparatus 100 determines the first reference camera and the second reference camera from a plurality of cameras based on the corrected direction of the normal vector of the patch, and updates the three-dimensional position of the patch. The first reference camera and the second reference camera are cameras that are positioned in a direction perpendicular to the patch plane, and the subject area of the image data is likely to be similar around the boundary portion of the subject, so that the correlation value is high. . Thereby, the three-dimensional position of the subject can be estimated with high accuracy.

3次元形状推定装置100は、パッチの3次元位置c(p2)を周辺位置で移動させつつ、第1参照カメラおよび第2参照カメラの画像データに基づく相関値が最大となる3次元位置c(p3)を探索し、パッチの新たな3次元位置として更新する。このため、被写体上のパッチの3次元位置をより正確に算出することができる。   The three-dimensional shape estimation apparatus 100 moves the three-dimensional position c (p2) of the patch at the peripheral position, and the three-dimensional position c (maximum correlation value based on the image data of the first reference camera and the second reference camera). p3) is searched and updated as a new three-dimensional position of the patch. For this reason, the three-dimensional position of the patch on the subject can be calculated more accurately.

3次元形状推定装置100は、予め求めた法線ベクトルを補正(フィルタリング)するため、被写体の3次元位置の変化に応じた法線ベクトルの設定およびカメラ位置の選択が可能になる。補正の前後で法線ベクトルの変化が大きい部分は、被写体の形状が大きく変化している部分と見なせるため、相関位置算出用に使用するカメラを上記のように選択することで、パッチの3次元位置推定の改善が見込まれる。   Since the three-dimensional shape estimation apparatus 100 corrects (filters) the normal vector obtained in advance, it is possible to set the normal vector and select the camera position according to the change in the three-dimensional position of the subject. Since the portion where the normal vector changes largely before and after correction can be regarded as a portion where the shape of the subject has changed greatly, the three-dimensional patch can be obtained by selecting the camera used for calculating the correlation position as described above. Improvement of position estimation is expected.

ここで、各パッチの3次元位置(パッチの集合)を求めた後の利用方法の一例について説明する。例えば、パッチの集合を求めた後に、Poisson Surface Preconstruction等を用いて3次元形状の表面をMesh化する。Poisson Surface Preconstructionは、法線付き点群からMeshを生成する方法である。また、テクスチャを3次元形状の表面に貼ることにより被写体の3次元モデルを生成する。3次元形状表面のパッチの法線方向とカメラの位置関係から、パッチの3次元位置に近く、かつ、パッチに対して垂直なカメラを選択し、テクスチャの貼り付けを行う。上述したパッチの集合を求めた後の処理は、3次元形状推定装置100が実行しても良いし、3次元形状推定装置100からパッチの集合に関する情報を取得した外部装置が実行しても良い。   Here, an example of a usage method after obtaining the three-dimensional position (a set of patches) of each patch will be described. For example, after obtaining a set of patches, the surface of a three-dimensional shape is meshed using Poisson Surface Preconstruction or the like. Poisson Surface Preconstruction is a method for generating meshes from normal point clouds. Further, a three-dimensional model of the subject is generated by pasting the texture on the surface of the three-dimensional shape. From the normal direction of the patch on the surface of the three-dimensional shape and the positional relationship of the camera, a camera close to the three-dimensional position of the patch and perpendicular to the patch is selected and the texture is pasted. The processing after obtaining the set of patches described above may be executed by the three-dimensional shape estimation apparatus 100, or may be executed by an external apparatus that has acquired information on the set of patches from the three-dimensional shape estimation apparatus 100. .

なお、本実施例では、一例として、法線ベクトルを補正した後に、パッチの3次元位置を微調整していたが、補正後の法線ベクトルと、補正前の法線ベクトルとの差が僅かである場合には、パッチの3次元位置を微調整する処理をスキップしても良い。例えば、3次元形状推定装置100の判定部145および更新部146は、補正前の法線ベクトルと補正後の法線ベクトルとの差分が閾値未満である場合に、微調整する処理をスキップする。これにより、処理負荷を軽減することができる。   In the present embodiment, as an example, the three-dimensional position of the patch is finely adjusted after correcting the normal vector, but the difference between the corrected normal vector and the normal vector before correction is slightly small. In this case, the process of finely adjusting the three-dimensional position of the patch may be skipped. For example, the determination unit 145 and the update unit 146 of the three-dimensional shape estimation apparatus 100 skip the fine adjustment process when the difference between the normal vector before correction and the normal vector after correction is less than the threshold. Thereby, the processing load can be reduced.

次に、上記実施例に示した3次元形状推定装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図14は、3次元形状推定装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。   Next, an example of a hardware configuration of a computer that realizes the same function as that of the three-dimensional shape estimation apparatus 100 shown in the above embodiment will be described. FIG. 14 is a diagram illustrating an example of a hardware configuration of a computer that realizes the same function as the three-dimensional shape estimation apparatus.

図14に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、記憶媒体からプログラム等を読み取る読み取り装置204と、有線または無線ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置205とを有する。コンピュータ200は、カメラ206に接続される。また、コンピュータ200は、各種情報を一時記憶するRAM207と、ハードディスク装置208とを有する。そして、各装置201〜208は、バス209に接続される。   As illustrated in FIG. 14, the computer 200 includes a CPU 201 that executes various arithmetic processes, an input device 202 that receives data input from a user, and a display 203. The computer 200 also includes a reading device 204 that reads a program and the like from a storage medium, and an interface device 205 that exchanges data with another computer via a wired or wireless network. The computer 200 is connected to the camera 206. The computer 200 also includes a RAM 207 that temporarily stores various types of information and a hard disk device 208. The devices 201 to 208 are connected to the bus 209.

ハードディスク装置208は、特徴点抽出プログラム208a、特定プログラム208b、補正プログラム208c、判定プログラム208d、更新プログラム208eを有する。CPU201は、特徴点抽出プログラム208a、特定プログラム208b、補正プログラム208c、判定プログラム208d、更新プログラム208eを読み出してRAM207に展開する。   The hard disk device 208 includes a feature point extraction program 208a, a specific program 208b, a correction program 208c, a determination program 208d, and an update program 208e. The CPU 201 reads the feature point extraction program 208 a, the identification program 208 b, the correction program 208 c, the determination program 208 d, and the update program 208 e and loads them in the RAM 207.

特徴点抽出プログラム208aは、特徴点抽出プロセス207aとして機能する。特定プログラム208bは、特定プロセス207bとして機能する。補正プログラム208cは、補正プロセス207cとして機能する。判定プログラム208dは、判定プロセス207dとして機能する。更新プログラム208eは、更新プロセス207eとして機能する。   The feature point extraction program 208a functions as a feature point extraction process 207a. The specific program 208b functions as the specific process 207b. The correction program 208c functions as a correction process 207c. The determination program 208d functions as a determination process 207d. The update program 208e functions as the update process 207e.

特徴点抽出プロセス207aの処理は、特徴点抽出部142の処理に対応する。特定プロセス207bの処理は、特定部143の処理に対応する。補正プロセス207cの処理は、補正部144の処理に対応する。判定プロセス207dの処理は、判定部145の処理に対応する。更新プロセス207eの処理は、更新部146の処理に対応する。   The processing of the feature point extraction process 207a corresponds to the processing of the feature point extraction unit 142. The process of the specific process 207b corresponds to the process of the specifying unit 143. The process of the correction process 207c corresponds to the process of the correction unit 144. The process of the determination process 207d corresponds to the process of the determination unit 145. The process of the update process 207e corresponds to the process of the update unit 146.

以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。   The following supplementary notes are further disclosed with respect to the embodiments including the above examples.

(付記1)コンピュータが実行する3次元形状推定方法であって、
それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、前記複数の画像データに含まれる特徴点同士の対応関係を基にして、前記被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定し、
前記複数のパッチのうち、第1パッチの第1法線ベクトルを、前記第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正し、
補正した前記第1法線ベクトルの方向を基にして、前記複数のカメラから基準カメラを判定し、
前記基準カメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値との相関値を基にして、前記第1パッチの位置を更新する
処理を実行することを特徴とする3次元形状推定方法。
(Supplementary note 1) A three-dimensional shape estimation method executed by a computer,
A plurality of pieces of image data including the same subject photographed by a plurality of cameras arranged at different positions are virtually displayed on the subject based on the correspondence between feature points included in the plurality of image data. Identify the normal vectors of multiple patches, which are the surfaces
Correcting the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch;
A reference camera is determined from the plurality of cameras based on the corrected direction of the first normal vector,
The pixel value of the area corresponding to the first patch included in the image data shot by the reference camera and the pixel value of the area corresponding to the first patch included in the image data shot by another camera A three-dimensional shape estimation method, comprising: executing a process of updating the position of the first patch based on a correlation value.

(付記2)前記位置を補正する処理は、前記第1パッチの位置を移動させ、移動させた第1パッチの位置に対応する前記基準カメラに撮影された画像データの領域の画素値と、移動させた第1パッチの位置に対応する前記他のカメラに撮影された画像データの領域の画素値との相関値を算出する処理を繰り返し実行し、前記相関値が最大となる第1パッチの位置を、補正後の位置とすることを特徴とする付記1に記載の3次元形状推定方法。 (Supplementary Note 2) The process of correcting the position includes moving the position of the first patch, moving the pixel value of the area of the image data captured by the reference camera corresponding to the moved position of the first patch, and the movement The position of the first patch at which the correlation value is maximized by repeatedly executing a process of calculating a correlation value with the pixel value of the area of the image data captured by the other camera corresponding to the position of the first patch The three-dimensional shape estimation method according to supplementary note 1, wherein the position is a position after correction.

(付記3)前記第1法線ベクトルを補正する処理は、前記第1法線ベクトルと、前記第2法線ベクトルとの加重平均を行うことで、前記第1法線ベクトルを補正することを特徴とする付記1または2に記載の3次元形状推定方法。 (Supplementary Note 3) The process of correcting the first normal vector includes correcting the first normal vector by performing a weighted average of the first normal vector and the second normal vector. 3. The three-dimensional shape estimation method according to appendix 1 or 2, which is a feature.

(付記4)コンピュータに、
それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、前記複数の画像データに含まれる特徴点同士の対応関係を基にして、前記被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定し、
前記複数のパッチのうち、第1パッチの第1法線ベクトルを、前記第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正し、
補正した前記第1法線ベクトルの方向を基にして、前記複数のカメラから基準カメラを判定し、
前記基準カメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値との相関値を基にして、前記第1パッチの位置を更新する
処理を実行させることを特徴とする3次元形状推定プログラム。
(Appendix 4)
A plurality of pieces of image data including the same subject photographed by a plurality of cameras arranged at different positions are virtually displayed on the subject based on the correspondence between feature points included in the plurality of image data. Identify the normal vectors of multiple patches, which are the surfaces
Correcting the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch;
A reference camera is determined from the plurality of cameras based on the corrected direction of the first normal vector,
The pixel value of the area corresponding to the first patch included in the image data shot by the reference camera and the pixel value of the area corresponding to the first patch included in the image data shot by another camera A three-dimensional shape estimation program for executing a process of updating the position of the first patch based on a correlation value.

(付記5)前記位置を補正する処理は、前記第1パッチの位置を移動させ、移動させた第1パッチの位置に対応する前記基準カメラに撮影された画像データの領域の画素値と、移動させた第1パッチの位置に対応する前記他のカメラに撮影された画像データの領域の画素値との相関値を算出する処理を繰り返し実行し、前記相関値が最大となる第1パッチの位置を、補正後の位置とすることを特徴とする付記4に記載の3次元形状推定プログラム。 (Additional remark 5) The process which correct | amends the said position moves the position of the said 1st patch, the pixel value of the area | region of the image data image | photographed with the said reference camera corresponding to the position of the moved 1st patch, and movement The position of the first patch at which the correlation value is maximized by repeatedly executing a process of calculating a correlation value with the pixel value of the area of the image data captured by the other camera corresponding to the position of the first patch The three-dimensional shape estimation program according to appendix 4, wherein the position is a position after correction.

(付記6)前記第1法線ベクトルを補正する処理は、前記第1法線ベクトルと、前記第2法線ベクトルとの加重平均を行うことで、前記第1法線ベクトルを補正することを特徴とする付記4または5に記載の3次元形状推定プログラム。 (Supplementary Note 6) The process of correcting the first normal vector includes correcting the first normal vector by performing a weighted average of the first normal vector and the second normal vector. The three-dimensional shape estimation program according to appendix 4 or 5, which is a feature.

(付記7)それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、前記複数の画像データに含まれる特徴点同士の対応関係を基にして、前記被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定する特定部と、
前記複数のパッチのうち、第1パッチの第1法線ベクトルを、前記第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正する補正部と、
補正した前記第1法線ベクトルの方向を基にして、前記複数のカメラから基準カメラを判定する判定部と、
前記基準カメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値との相関値を基にして、前記第1パッチの位置を更新する更新部と
を有することを特徴とする3次元形状推定装置。
(Supplementary note 7) For a plurality of image data including the same subject photographed by a plurality of cameras arranged at different positions, the subject is based on the correspondence between feature points included in the plurality of image data. A specifying unit for specifying normal vectors of a plurality of patches, which are virtually provided on the surface,
A correction unit that corrects the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch;
A determination unit that determines a reference camera from the plurality of cameras based on the corrected direction of the first normal vector;
The pixel value of the area corresponding to the first patch included in the image data shot by the reference camera and the pixel value of the area corresponding to the first patch included in the image data shot by another camera An update unit that updates the position of the first patch based on the correlation value.

(付記8)前記更新部は、前記第1パッチの位置を移動させ、移動させた第1パッチの位置に対応する前記基準カメラに撮影された画像データの領域の画素値と、移動させた第1パッチの位置に対応する前記他のカメラに撮影された画像データの領域の画素値との相関値を算出する処理を繰り返し実行し、前記相関値が最大となる第1パッチの位置を、補正後の位置とすることを特徴とする付記7に記載の3次元形状推定装置。 (Supplementary Note 8) The update unit moves the position of the first patch, moves the pixel value of the area of the image data captured by the reference camera corresponding to the moved position of the first patch, and moves the first patch. The process of repeatedly calculating the correlation value with the pixel value of the area of the image data photographed by the other camera corresponding to the position of one patch is executed repeatedly to correct the position of the first patch where the correlation value is maximized The three-dimensional shape estimation apparatus according to appendix 7, which is a later position.

(付記9)前記補正部は、前記第1法線ベクトルと、前記第2法線ベクトルとの加重平均を行うことで、前記第1法線ベクトルを補正することを特徴とする付記7または8に記載の3次元形状推定装置。 (Supplementary note 9) The supplementary note 7 or 8, wherein the correction unit corrects the first normal vector by performing a weighted average of the first normal vector and the second normal vector. The three-dimensional shape estimation apparatus described in 1.

30a,30b,30c,30d,30e カメラ
100 3次元形状推定装置
110 入力部
120 表示部
130 記憶部
131 画像バッファ
132 カメラ管理テーブル
133 パッチテーブル
140 制御部
141 取得部
142 特徴点抽出部
143 特定部
144 補正部
145 判定部
146 更新部
30a, 30b, 30c, 30d, 30e Camera 100 Three-dimensional shape estimation device 110 Input unit 120 Display unit 130 Storage unit 131 Image buffer 132 Camera management table 133 Patch table 140 Control unit 141 Acquisition unit 142 Feature point extraction unit 143 Identification unit 144 Correction unit 145 Determination unit 146 Update unit

Claims (5)

コンピュータが実行する3次元形状推定方法であって、
それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、前記複数の画像データに含まれる特徴点同士の対応関係を基にして、前記被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定し、
前記複数のパッチのうち、第1パッチの第1法線ベクトルを、前記第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正し、
補正した前記第1法線ベクトルの方向を基にして、前記複数のカメラから基準カメラを判定し、
前記基準カメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値との相関値を基にして、前記第1パッチの位置を更新する
処理を実行することを特徴とする3次元形状推定方法。
A three-dimensional shape estimation method executed by a computer,
A plurality of pieces of image data including the same subject photographed by a plurality of cameras arranged at different positions are virtually displayed on the subject based on the correspondence between feature points included in the plurality of image data. Identify the normal vectors of multiple patches, which are the surfaces
Correcting the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch;
A reference camera is determined from the plurality of cameras based on the corrected direction of the first normal vector,
The pixel value of the area corresponding to the first patch included in the image data shot by the reference camera and the pixel value of the area corresponding to the first patch included in the image data shot by another camera A three-dimensional shape estimation method, comprising: executing a process of updating the position of the first patch based on a correlation value.
前記位置を補正する処理は、前記第1パッチの位置を移動させ、移動させた第1パッチの位置に対応する前記基準カメラに撮影された画像データの領域の画素値と、移動させた第1パッチの位置に対応する前記他のカメラに撮影された画像データの領域の画素値との相関値を算出する処理を繰り返し実行し、前記相関値が最大となる第1パッチの位置を、補正後の位置とすることを特徴とする請求項1に記載の3次元形状推定方法。   In the process of correcting the position, the position of the first patch is moved, the pixel value of the area of the image data captured by the reference camera corresponding to the moved position of the first patch, and the moved first The process of repeatedly calculating the correlation value with the pixel value of the area of the image data captured by the other camera corresponding to the position of the patch is repeatedly executed, and the position of the first patch having the maximum correlation value is corrected. The three-dimensional shape estimation method according to claim 1, wherein 前記第1法線ベクトルを補正する処理は、前記第1法線ベクトルと、前記第2法線ベクトルとの加重平均を行うことで、前記第1法線ベクトルを補正することを特徴とする請求項1または2に記載の3次元形状推定方法。   The process of correcting the first normal vector includes correcting the first normal vector by performing a weighted average of the first normal vector and the second normal vector. Item 3. The three-dimensional shape estimation method according to item 1 or 2. コンピュータに、
それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、前記複数の画像データに含まれる特徴点同士の対応関係を基にして、前記被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定し、
前記複数のパッチのうち、第1パッチの第1法線ベクトルを、前記第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正し、
補正した前記第1法線ベクトルの方向を基にして、前記複数のカメラから基準カメラを判定し、
前記基準カメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値との相関値を基にして、前記第1パッチの位置を更新する
処理を実行させることを特徴とする3次元形状推定プログラム。
On the computer,
A plurality of pieces of image data including the same subject photographed by a plurality of cameras arranged at different positions are virtually displayed on the subject based on the correspondence between feature points included in the plurality of image data. Identify the normal vectors of multiple patches, which are the surfaces
Correcting the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch;
A reference camera is determined from the plurality of cameras based on the corrected direction of the first normal vector,
The pixel value of the area corresponding to the first patch included in the image data shot by the reference camera and the pixel value of the area corresponding to the first patch included in the image data shot by another camera A three-dimensional shape estimation program for executing a process of updating the position of the first patch based on a correlation value.
それぞれ異なる位置に配置された複数のカメラによって撮影された同一の被写体を含む複数の画像データについて、前記複数の画像データに含まれる特徴点同士の対応関係を基にして、前記被写体上に仮想的に設けた面である複数のパッチの法線ベクトルをそれぞれ特定する特定部と、
前記複数のパッチのうち、第1パッチの第1法線ベクトルを、前記第1パッチの周囲に位置する第2パッチの第2法線ベクトルを基にして補正する補正部と、
補正した前記第1法線ベクトルの方向を基にして、前記複数のカメラから基準カメラを判定する判定部と、
前記基準カメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値と、他のカメラに撮影された画像データに含まれる前記第1パッチに対応する領域の画素値との相関値を基にして、前記第1パッチの位置を更新する更新部と
を有することを特徴とする3次元形状推定装置。
A plurality of pieces of image data including the same subject photographed by a plurality of cameras arranged at different positions are virtually displayed on the subject based on the correspondence between feature points included in the plurality of image data. A specifying unit that specifies normal vectors of a plurality of patches that are surfaces provided in
A correction unit that corrects the first normal vector of the first patch among the plurality of patches based on the second normal vector of the second patch located around the first patch;
A determination unit that determines a reference camera from the plurality of cameras based on the corrected direction of the first normal vector;
The pixel value of the area corresponding to the first patch included in the image data shot by the reference camera and the pixel value of the area corresponding to the first patch included in the image data shot by another camera An update unit that updates the position of the first patch based on the correlation value.
JP2017095630A 2017-05-12 2017-05-12 Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus Pending JP2018194891A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017095630A JP2018194891A (en) 2017-05-12 2017-05-12 Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017095630A JP2018194891A (en) 2017-05-12 2017-05-12 Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus

Publications (1)

Publication Number Publication Date
JP2018194891A true JP2018194891A (en) 2018-12-06

Family

ID=64570839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017095630A Pending JP2018194891A (en) 2017-05-12 2017-05-12 Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus

Country Status (1)

Country Link
JP (1) JP2018194891A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210126903A (en) * 2020-04-13 2021-10-21 주식회사 덱셀리온 Real-time three dimension model construction method and system
JP7429667B2 (en) 2021-03-23 2024-02-08 Kddi株式会社 Camera calibration device, method and program
JP7477528B2 (en) 2019-03-22 2024-05-01 インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ Point Cloud Processing
WO2024090293A1 (en) * 2022-10-28 2024-05-02 パナソニックIpマネジメント株式会社 Three-dimensional model generation method, three-dimensional model generation device, and three-dimensional model generation program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7477528B2 (en) 2019-03-22 2024-05-01 インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ Point Cloud Processing
KR20210126903A (en) * 2020-04-13 2021-10-21 주식회사 덱셀리온 Real-time three dimension model construction method and system
KR102407522B1 (en) 2020-04-13 2022-06-13 주식회사 덱셀리온 Real-time three dimension model construction method and system
JP7429667B2 (en) 2021-03-23 2024-02-08 Kddi株式会社 Camera calibration device, method and program
WO2024090293A1 (en) * 2022-10-28 2024-05-02 パナソニックIpマネジメント株式会社 Three-dimensional model generation method, three-dimensional model generation device, and three-dimensional model generation program

Similar Documents

Publication Publication Date Title
JP6338021B2 (en) Image processing apparatus, image processing method, and image processing program
US9605961B2 (en) Information processing apparatus that performs three-dimensional shape measurement, information processing method, and storage medium
US11037325B2 (en) Information processing apparatus and method of controlling the same
JP2018194891A (en) Three-dimensional shape estimation method, three-dimensional shape estimation program and three-dimensional shape estimation apparatus
JP6547754B2 (en) Triangulation apparatus, triangulation method and program thereof
US10438412B2 (en) Techniques to facilitate accurate real and virtual object positioning in displayed scenes
JP6464938B2 (en) Image processing apparatus, image processing method, and image processing program
JP2012177676A (en) Information processor and method, and program
WO2023116430A1 (en) Video and city information model three-dimensional scene fusion method and system, and storage medium
JP5998532B2 (en) Correction formula calculation method, correction method, correction apparatus, and imaging apparatus
JP2013036831A (en) Calibration apparatus and distortion error calculation method
JP2015031601A (en) Three-dimensional measurement instrument, method, and program
JP2017092756A (en) Image processing system, image processing method, image projecting system and program
CN107197222B (en) Method and device for generating correction information of projection equipment
JP2011155412A (en) Projection system and distortion correction method in the same
CN108696745A (en) Camera calibrated
JP4102386B2 (en) 3D information restoration device
JP4372328B2 (en) Three-dimensional shape restoration method and system
CN116152121B (en) Curved surface screen generating method and correcting method based on distortion parameters
JP2019020839A (en) Image processing apparatus, image processing method and program
JP6156922B2 (en) Three-dimensional data generation apparatus, three-dimensional data generation method, and program
CN108510578B (en) Three-dimensional model building method and device and electronic equipment
JP2006145419A (en) Image processing method
JP5287613B2 (en) Image display method, information processing apparatus, and image display program
JP2014175782A (en) Camera parameter estimation apparatus, camera parameter estimation method and camera parameter estimation program