JP2017003398A - Estimation method, estimation device and estimation program for internal parameters of fish-eye camera - Google Patents

Estimation method, estimation device and estimation program for internal parameters of fish-eye camera Download PDF

Info

Publication number
JP2017003398A
JP2017003398A JP2015116946A JP2015116946A JP2017003398A JP 2017003398 A JP2017003398 A JP 2017003398A JP 2015116946 A JP2015116946 A JP 2015116946A JP 2015116946 A JP2015116946 A JP 2015116946A JP 2017003398 A JP2017003398 A JP 2017003398A
Authority
JP
Japan
Prior art keywords
fisheye
estimation
fisheye camera
image
trajectory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015116946A
Other languages
Japanese (ja)
Other versions
JP6525195B2 (en
Inventor
和昇 梅田
Kazunori Umeda
和昇 梅田
祐輝 田中
Yuki Tanaka
祐輝 田中
岳人 増山
Gakuto Masuyama
岳人 増山
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.)
Chuo University
Original Assignee
Chuo University
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 Chuo University filed Critical Chuo University
Priority to JP2015116946A priority Critical patent/JP6525195B2/en
Publication of JP2017003398A publication Critical patent/JP2017003398A/en
Application granted granted Critical
Publication of JP6525195B2 publication Critical patent/JP6525195B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Measurement Of Optical Distance (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an estimation method, estimation device and estimation program for internal parameters of a fish-eye camera that can simply and accurately estimate the internal parameters of the fish-eye camera.SOLUTION: The present invention relates to an estimation method for internal parameters of a fish-eye camera including a fish-eye lens, and the estimation method includes: an imaging step of capturing a plurality of fish-eye images by capturing images of a plurality of characteristic points at each of a plurality of different timings with the fish-eye camera while the fish-eye camera 10 passes through an interior of the fish-eye camera in a space containing a plurality of visual characteristic points, and is rotated around a rotation axis line extending almost vertically to an optical axis of the fish-eye camera; a trajectory image generation step of generating a trajectory image containing a trajectory obtained from a set of observation points in each fish-eye image corresponding to each characteristic point; and an estimation step of estimating the internal parameters of the fish-eye camera on the basis of the trajectory image.SELECTED DRAWING: Figure 1

Description

本発明は、魚眼レンズを備えた魚眼カメラの内部パラメータの、推定方法、推定装置、及び推定プログラムに関するものである。   The present invention relates to an estimation method, an estimation device, and an estimation program for internal parameters of a fisheye camera equipped with a fisheye lens.

従来、魚眼カメラを用いて、例えばストライプを含むパターン等を有する被写体を撮像し、撮像により得られた画像に基づいて、魚眼カメラの内部パラメータを推定する技術が、知られている(例えば、特許文献1)。   2. Description of the Related Art Conventionally, a technique is known in which a fish-eye camera is used to image a subject having, for example, a pattern including a stripe, and internal parameters of the fish-eye camera are estimated based on an image obtained by imaging (for example, Patent Document 1).

特開2007-192832号公報JP 2007-192832 JP

しかしながら、上述した技術では、上記のように特別な構成を持った被写体を事前に用意する必要があり、また、そのような被写体を魚眼カメラで撮像するにあたって、魚眼カメラに対する被写体の向きや距離等に応じて、内部パラメータの推定結果がばらつくおそれがあった。   However, in the above-described technique, it is necessary to prepare a subject having a special configuration as described above, and when imaging such a subject with a fisheye camera, the orientation of the subject with respect to the fisheye camera, There is a possibility that the estimation result of the internal parameter varies depending on the distance or the like.

本発明は、上述した課題を解決するためのものであり、簡単かつ高精度に、魚眼カメラの内部パラメータを推定できる、魚眼カメラの内部パラメータの、推定方法、推定装置、及び推定プログラムを提供することを目的とするものである。   An object of the present invention is to solve the above-described problems, and provides an estimation method, an estimation apparatus, and an estimation program for an internal parameter of a fisheye camera that can estimate an internal parameter of a fisheye camera easily and with high accuracy. It is intended to provide.

本発明の推定方法は、魚眼レンズを備えた魚眼カメラの内部パラメータの推定方法であって、
前記魚眼カメラが、複数の視覚的な特徴点を含む空間内で、該魚眼カメラの内部を通るとともに該魚眼カメラの光軸に対してほぼ垂直に延在する回転軸線の周りで回転される間に、前記魚眼カメラによって、複数の異なるタイミングのそれぞれで前記複数の特徴点を撮像することにより、複数の魚眼画像を得る、撮像ステップと、
前記各特徴点に対応する前記各魚眼画像中の観測点の集合から得られる軌跡を含む、軌跡画像を生成する、軌跡画像生成ステップと、
前記軌跡画像に基づいて、前記魚眼カメラの内部パラメータを推定する、推定ステップと、
を含むことを特徴とする。
The estimation method of the present invention is an estimation method of internal parameters of a fisheye camera equipped with a fisheye lens,
The fisheye camera rotates within a space containing a plurality of visual feature points about a rotation axis that passes through the fisheye camera and extends substantially perpendicular to the optical axis of the fisheye camera. In the meantime, an imaging step of obtaining a plurality of fisheye images by imaging the plurality of feature points at each of a plurality of different timings by the fisheye camera;
Generating a trajectory image including a trajectory obtained from a set of observation points in each fisheye image corresponding to each feature point;
Estimating the internal parameters of the fisheye camera based on the trajectory image; and
It is characterized by including.

本発明の推定方法では、前記推定ステップにおいて、前記軌跡画像においてそれぞれ放物線状に現れる前記各軌跡の頂点を求め、前記各軌跡の頂点に基づいて、前記内部パラメータにおける、前記魚眼カメラの魚眼画像の歪みの中心を表す画像中心の座標を、推定すると、好適である。   In the estimation method of the present invention, in the estimation step, the vertices of the trajectories appearing in a parabolic shape in the trajectory image are obtained, and the fisheye of the fisheye camera in the internal parameters based on the vertices of the trajectories It is preferable to estimate the coordinates of the image center representing the center of distortion of the image.

本発明の推定方法では、前記推定ステップにおいて、前記軌跡画像中の前記各観測点にそれぞれ対応する前記特徴点の方位角及び仰角を、前記軌跡画像に基づいて求め、求めた前記各特徴点の前記方位角及び仰角を用いて、前記内部パラメータにおける、前記魚眼カメラの魚眼画像の歪みを表す歪みパラメータを、推定すると、好適である。   In the estimation method of the present invention, in the estimation step, an azimuth angle and an elevation angle of the feature point respectively corresponding to each observation point in the trajectory image are obtained based on the trajectory image, and each of the obtained feature points is obtained. It is preferable to estimate a distortion parameter representing the distortion of the fisheye image of the fisheye camera in the internal parameters using the azimuth angle and the elevation angle.

本発明の推定装置は、魚眼レンズを備えた魚眼カメラの内部パラメータの推定装置であって、
前記魚眼カメラが、複数の視覚的な特徴点を含む空間内で、該魚眼カメラの内部を通るとともに該魚眼カメラの光軸に対してほぼ垂直に延在する回転軸線の周りで回転される間に、該魚眼カメラによって複数の異なるタイミングのそれぞれで前記複数の特徴点を撮像することにより得られた、複数の魚眼画像を、取得する、取得部と、
前記各特徴点に対応する前記各魚眼画像中の観測点の集合から得られる軌跡を含む、軌跡画像を生成する、軌跡画像生成部と、
前記軌跡画像に基づいて、前記魚眼カメラの内部パラメータを推定する、推定処理部と、
を備えたことを特徴とする。
An estimation apparatus of the present invention is an estimation apparatus for internal parameters of a fisheye camera equipped with a fisheye lens,
The fisheye camera rotates within a space containing a plurality of visual feature points about a rotation axis that passes through the fisheye camera and extends substantially perpendicular to the optical axis of the fisheye camera. An acquisition unit that acquires a plurality of fisheye images obtained by imaging the plurality of feature points at each of a plurality of different timings by the fisheye camera;
A trajectory image generation unit that generates a trajectory image including a trajectory obtained from a set of observation points in each fisheye image corresponding to each feature point;
An estimation processing unit that estimates internal parameters of the fisheye camera based on the trajectory image;
It is provided with.

本発明の推定装置において、前記魚眼カメラを前記回転軸線の周りで回転させるように構成された、カメラ回転部をさらに備えていると、好適である。   In the estimation apparatus of the present invention, it is preferable that the estimation apparatus further includes a camera rotation unit configured to rotate the fisheye camera around the rotation axis.

本発明の推定プログラムは、魚眼レンズを備えた魚眼カメラの内部パラメータの推定プログラムであって、
前記魚眼カメラが、複数の視覚的な特徴点を含む空間内で、該魚眼カメラの内部を通るとともに該魚眼カメラの光軸に対してほぼ垂直に延在する回転軸線の周りで回転される間に、前記魚眼カメラによって複数の異なるタイミングのそれぞれで前記複数の特徴点を撮像することにより得られた、複数の魚眼画像を、取得する、取得ステップと、
前記各特徴点に対応する前記各魚眼画像中の観測点の集合から得られる軌跡を含む、軌跡画像を生成する、軌跡画像生成ステップと、
前記軌跡画像に基づいて、前記魚眼カメラの内部パラメータを推定する、推定ステップと、
をコンピュータに実行させることを特徴とする。
An estimation program of the present invention is an estimation program for internal parameters of a fisheye camera equipped with a fisheye lens,
The fisheye camera rotates within a space containing a plurality of visual feature points about a rotation axis that passes through the fisheye camera and extends substantially perpendicular to the optical axis of the fisheye camera. A plurality of fish-eye images obtained by imaging the plurality of feature points at each of a plurality of different timings by the fish-eye camera.
Generating a trajectory image including a trajectory obtained from a set of observation points in each fisheye image corresponding to each feature point;
Estimating the internal parameters of the fisheye camera based on the trajectory image; and
Is executed by a computer.

本発明によれば、簡単かつ高精度に、魚眼カメラの内部パラメータを推定できる、魚眼カメラの内部パラメータの、推定方法、推定装置、及び推定プログラムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, the estimation method of the internal parameter of a fisheye camera, the estimation apparatus, and the estimation program which can estimate the internal parameter of a fisheye camera easily and with high precision can be provided.

本発明の一実施形態に係る推定装置を示す概要図である。It is a schematic diagram which shows the estimation apparatus which concerns on one Embodiment of this invention. 魚眼カメラ座標系を説明するための図である。It is a figure for demonstrating a fisheye camera coordinate system. 魚眼画像座標系を説明するための図である。It is a figure for demonstrating a fish-eye image coordinate system. 本発明の一実施形態に係る推定方法を示すフローチャートである。It is a flowchart which shows the estimation method which concerns on one Embodiment of this invention. 撮像ステップを説明するための図である。It is a figure for demonstrating an imaging step. 軌跡画像の一例を示す図である。It is a figure which shows an example of a locus image. 推定ステップの一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of an estimation step. シミュレーション結果を示す図である。It is a figure which shows a simulation result.

以下に図面を参照しつつ、本発明の実施形態について例示説明する。   Embodiments of the present invention will be described below with reference to the drawings.

(推定装置)
まず、図1を参照して、本発明の一実施形態に係る推定装置の一例を説明する。本実施形態の推定装置1は、魚眼レンズ11を備えた魚眼カメラ10の内部パラメータを推定するものである。図1の例において、推定装置1は、魚眼カメラ10を支持するカメラ支持部90と、コンピュータ70と、を備えている。
(Estimation device)
First, an example of an estimation device according to an embodiment of the present invention will be described with reference to FIG. The estimation apparatus 1 according to the present embodiment estimates an internal parameter of a fisheye camera 10 provided with a fisheye lens 11. In the example of FIG. 1, the estimation device 1 includes a camera support unit 90 that supports the fisheye camera 10 and a computer 70.

本例において、魚眼カメラ10は、ユーザによってシャッターが押された直後又は所定時間後に、撮影を開始し、撮影中は、複数の異なるタイミングで撮像して魚眼画像を生成し、ユーザによってシャッターが再び押された直後に、撮影を終了するように、設定されている。魚眼カメラ10が撮影中に撮像するタイミングは、本例では、ある一定の撮像時間間隔毎(例えば0.033秒毎)に設定されている。
ただし、魚眼カメラ10は、撮影を開始してから、所定の撮影時間(例えば10秒)の経過後に、自動的に撮影を終了するように、設定されてもよい。あるいは、魚眼カメラ10の撮影の開始及び終了は、コンピュータ70によって制御されてもよい。
また、魚眼カメラ10は、ユーザによってシャッターが押される度に撮像するように構成されてもよい。
In this example, the fish-eye camera 10 starts shooting immediately after the shutter is pressed by the user or after a predetermined time, and during shooting, the fish-eye camera 10 captures images at a plurality of different timings to generate fish-eye images. Immediately after is pressed again, the shooting is set to end. In this example, the timing at which the fish-eye camera 10 captures images is set at certain fixed imaging time intervals (for example, every 0.033 seconds).
However, the fisheye camera 10 may be set so that the photographing is automatically ended after a predetermined photographing time (for example, 10 seconds) has elapsed since the photographing was started. Alternatively, the start and end of shooting by the fisheye camera 10 may be controlled by the computer 70.
Further, the fisheye camera 10 may be configured to capture an image every time the user presses the shutter.

魚眼カメラ10によって得られる時系列の魚眼画像は、後述するコンピュータ70の記憶部73に保存される。
より具体的には、本例において、魚眼カメラ10は、撮影中又は撮影後に、無線通信又は有線通信によって、撮像により得られた時系列の魚眼画像を、後述するコンピュータ70の通信部71へ送信する。一方、コンピュータ70側では、通信部71が魚眼画像を受信すると、その魚眼画像が記憶部73に格納される。
ただし、魚眼カメラ10が、撮像により得られた時系列の魚眼画像を、魚眼カメラ10に接続された外部メモリ(SDカードメモリやUSBメモリ等)に保存し、その後、ユーザが該外部メモリをコンピュータ70に接続して、該外部メモリに保存された時系列の魚眼画像を、後述するコンピュータ70の記憶部73内に取り込むようにしてもよい。
A time-series fisheye image obtained by the fisheye camera 10 is stored in a storage unit 73 of a computer 70 described later.
More specifically, in this example, the fish-eye camera 10 uses a communication unit 71 of the computer 70 to be described later with a time-series fish-eye image obtained by imaging by wireless communication or wired communication during or after shooting. Send to. On the other hand, on the computer 70 side, when the communication unit 71 receives a fisheye image, the fisheye image is stored in the storage unit 73.
However, the fish-eye camera 10 stores a time-series fish-eye image obtained by imaging in an external memory (such as an SD card memory or a USB memory) connected to the fish-eye camera 10 and then the user A memory may be connected to the computer 70, and time-series fisheye images stored in the external memory may be captured in the storage unit 73 of the computer 70 described later.

本例において、カメラ支持部90は、所定高さにある水平面内で、魚眼カメラ10を回転させられるように、構成されている。より具体的に、カメラ支持部90は、魚眼カメラ10を上に載せるための回転台20と、回転台20の下端に固定され、鉛直方向に延びる回転軸30と、回転軸30の下部に出力軸が取り付けられ、回転軸30を回転させるように構成された、モータ40と、モータ40に内蔵され、モータ40の出力軸の回転角度位置(ひいては回転軸30の回転角度位置)を出力する、エンコーダ50と、モータ40の下部に設けられた三脚60と、を有している。
モータ40の出力軸、回転軸30及び回転台20は、連動する。すなわち、モータ40の出力軸の回転によって、回転軸30及び回転台20が回転され、これにより、回転台20の上に設置された魚眼カメラ10が回転される。
In this example, the camera support unit 90 is configured to rotate the fisheye camera 10 within a horizontal plane at a predetermined height. More specifically, the camera support unit 90 is mounted on the rotary base 20 on which the fisheye camera 10 is placed, the rotary shaft 30 fixed to the lower end of the rotary base 20 and extending in the vertical direction, and the lower part of the rotary shaft 30. An output shaft is attached, and the motor 40 is configured to rotate the rotating shaft 30. The motor 40 is built in the motor 40, and outputs the rotation angle position of the output shaft of the motor 40 (and thus the rotation angle position of the rotation shaft 30). The encoder 50 and the tripod 60 provided in the lower part of the motor 40 are provided.
The output shaft of the motor 40, the rotary shaft 30 and the rotary base 20 are interlocked. That is, the rotation shaft 30 and the turntable 20 are rotated by the rotation of the output shaft of the motor 40, and thereby the fisheye camera 10 installed on the turntable 20 is rotated.

本例において、回転台20の上面は水平方向と平行にされており、回転台20の上面に載せられた魚眼カメラ10の光軸Oも、水平方向と平行に向けられている。すなわち、光軸Oは水平面内にある。また、回転軸30の中心軸線である回転軸線RAは、鉛直方向に延びている。
魚眼カメラ10は、回転軸30の回転軸線RAが魚眼カメラ10の内部を通るように、回転台20の上に載せられている。ここで、図1に示すように、回転軸30の回転軸線RAが、魚眼カメラ10の内部で、魚眼カメラ10の光軸Oと交差(より具体的には、直交)することが好ましい。
In this example, the upper surface of the turntable 20 is parallel to the horizontal direction, and the optical axis O of the fisheye camera 10 placed on the upper surface of the turntable 20 is also directed parallel to the horizontal direction. That is, the optical axis O is in the horizontal plane. Further, the rotation axis RA that is the central axis of the rotation shaft 30 extends in the vertical direction.
The fisheye camera 10 is placed on the turntable 20 so that the rotation axis RA of the rotation shaft 30 passes through the inside of the fisheye camera 10. Here, as shown in FIG. 1, the rotation axis RA of the rotation shaft 30 preferably intersects (more specifically, orthogonally) with the optical axis O of the fisheye camera 10 inside the fisheye camera 10. .

本例において、モータ40は、後述するコンピュータ70の回転制御部721によって、駆動制御される。本例では、カメラ支持部90と、回転制御部721とが、魚眼カメラ10を回転軸線RAの周りで回転させる、カメラ回転部を構成している。
ただし、モータ40は、コンピュータ70の回転制御部721と同様の機能を持つ回転制御部を、モータ40の内部に有していてもよい。
In this example, the motor 40 is driven and controlled by a rotation control unit 721 of a computer 70 described later. In this example, the camera support unit 90 and the rotation control unit 721 constitute a camera rotation unit that rotates the fisheye camera 10 around the rotation axis RA.
However, the motor 40 may have a rotation control unit having the same function as the rotation control unit 721 of the computer 70 inside the motor 40.

図1の例において、コンピュータ70は、通信部71と、制御部72と、記憶部73と、入力部74と、表示部75と、を有する。
なお、図1では、コンピュータ70を機能ブロックにより模式的に図示しているにすぎず、コンピュータ70のハードウェア構成は、通信部71、制御部72、記憶部73、入力部74、表示部75の各機能が実現される限り、任意のものを採用してよい。例えば、コンピュータ70は、そのハードウェア構成を観た場合に、1つの装置から構成されてもよいし、複数の装置から構成されてもよい。
In the example of FIG. 1, the computer 70 includes a communication unit 71, a control unit 72, a storage unit 73, an input unit 74, and a display unit 75.
In FIG. 1, the computer 70 is only schematically illustrated by functional blocks. The hardware configuration of the computer 70 includes a communication unit 71, a control unit 72, a storage unit 73, an input unit 74, and a display unit 75. As long as each function is realized, an arbitrary one may be adopted. For example, when viewing the hardware configuration of the computer 70, the computer 70 may be configured by one device or a plurality of devices.

本例において、通信部71は、魚眼カメラ10、モータ40、及びエンコーダ50との間で通信を行う。
なお、本例では、通信部71が、魚眼カメラ10から複数の魚眼画像を受信(取得)する、取得部を構成する。ただし、コンピュータ70が、上述のように外部メモリ(SDカードやUSBメモリ)を介して、魚眼カメラ10からの複数の魚眼画像を取得する場合、外部メモリと接続されるインタフェース(図示せず)が、取得部を構成する。
In this example, the communication unit 71 communicates with the fisheye camera 10, the motor 40, and the encoder 50.
In this example, the communication unit 71 configures an acquisition unit that receives (acquires) a plurality of fisheye images from the fisheye camera 10. However, when the computer 70 acquires a plurality of fisheye images from the fisheye camera 10 via the external memory (SD card or USB memory) as described above, an interface (not shown) connected to the external memory. ) Constitutes an acquisition unit.

制御部72は、例えば1つ又は複数のCPUから構成され、記憶部73に記憶された各種のプログラムを実行することにより、通信部71、記憶部73、入力部74、及び表示部75を含む、コンピュータ70の全体を制御しながら、様々な処理を実行する。
制御部72は、回転制御部721と、軌跡画像生成部722と、推定処理部723と、を有する。
The control unit 72 includes, for example, one or a plurality of CPUs, and includes a communication unit 71, a storage unit 73, an input unit 74, and a display unit 75 by executing various programs stored in the storage unit 73. Various processes are executed while controlling the entire computer 70.
The control unit 72 includes a rotation control unit 721, a trajectory image generation unit 722, and an estimation processing unit 723.

回転制御部721は、記憶部73に記憶された回転制御プログラム731を実行しながら、通信部71を介して得られるエンコーダ50の出力に基づいて、モータ40の回転(ひいては魚眼カメラ10の回転)を制御する。本例において、回転制御部721は、魚眼カメラ10が撮影を行う間、モータ40を、一定の回転速度で所定の回転角度(例えば180°)分だけ回転させる。
軌跡画像生成部722は、記憶部73に記憶された軌跡画像生成プログラム732を実行しながら、魚眼カメラ10から得られる時系列の魚眼画像に基づいて、後述する軌跡画像を生成する。
推定処理部723は、記憶部73に記憶された推定処理プログラム733を実行しながら、軌跡画像生成部722が生成する軌跡画像に基づいて、魚眼カメラ10の内部パラメータを推定する。
制御部72による処理の詳細については、後にさらに詳しく説明する。
The rotation control unit 721 executes rotation of the motor 40 (and thus rotation of the fisheye camera 10) based on the output of the encoder 50 obtained via the communication unit 71 while executing the rotation control program 731 stored in the storage unit 73. ) To control. In this example, the rotation control unit 721 rotates the motor 40 by a predetermined rotation angle (for example, 180 °) at a constant rotation speed while the fisheye camera 10 performs shooting.
The trajectory image generation unit 722 generates a trajectory image to be described later based on a time-series fisheye image obtained from the fisheye camera 10 while executing the trajectory image generation program 732 stored in the storage unit 73.
The estimation processing unit 723 estimates the internal parameters of the fisheye camera 10 based on the trajectory image generated by the trajectory image generation unit 722 while executing the estimation processing program 733 stored in the storage unit 73.
Details of the processing by the control unit 72 will be described in more detail later.

記憶部73は、例えば1つ又は複数のROM及び/又はRAMから構成され、制御部72が実行するための各種のプログラム(回転制御プログラム731、軌跡画像生成プログラム732、推定処理プログラム733等)や、魚眼カメラ10から得られる時系列の魚眼画像等、様々な情報を記憶する。
なお、軌跡画像生成プログラム732と推定処理プログラム733とが、本実施形態の推定プログラムを構成している。
The storage unit 73 includes, for example, one or a plurality of ROMs and / or RAMs, and various programs (rotation control program 731, locus image generation program 732, estimation processing program 733, etc.) executed by the control unit 72, Various information such as a time-series fisheye image obtained from the fisheye camera 10 is stored.
Note that the trajectory image generation program 732 and the estimation processing program 733 constitute the estimation program of this embodiment.

入力部74は、例えばキーボード、マウス、及び/又は押しボタン等から構成され、ユーザからの入力を受け付ける。
表示部75は、例えば液晶パネル等から構成され、後述する軌跡画像等、様々な情報を表示する。
なお、入力部74及び表示部75は、タッチパネルを構成してもよい。
The input unit 74 includes, for example, a keyboard, a mouse, and / or a push button, and receives input from the user.
The display unit 75 is composed of a liquid crystal panel, for example, and displays various information such as a trajectory image described later.
The input unit 74 and the display unit 75 may constitute a touch panel.

(内部パラメータ)
ここで、図2及び図3を参照して、本発明の一実施形態に係る推定装置、推定方法、及び推定プログラムにより求められる、魚眼カメラの内部パラメータの一例について説明する。
図2は、魚眼カメラ10を含む実空間の座標系(以下、「魚眼カメラ座標系」という。)を示している。図2に示す魚眼カメラ座標系は、魚眼カメラ10の光軸OをY軸とし、魚眼カメラ10の内部を通りY軸に直交する平面をXZ平面とする、3次元座標系である。XY平面は、水平面に平行である。魚眼カメラ座標系において、実空間上の点Pの方位角、すなわち、点Pから魚眼カメラ10への投射線の、XY平面上への投影線が、Y軸に対してなす角度を、αとする。また、点Pの仰角、すなわち、点Pから魚眼カメラ10への投射線の、XY平面上への投影線が、該投射線に対してなす角度を、βとする。
このとき、点Pから魚眼カメラ10への投射線と魚眼カメラ10の光軸Oとのなす角θは、
で表される。
(Internal parameters)
Here, with reference to FIG. 2 and FIG. 3, an example of the internal parameters of the fisheye camera obtained by the estimation apparatus, the estimation method, and the estimation program according to an embodiment of the present invention will be described.
FIG. 2 shows a coordinate system in real space including the fisheye camera 10 (hereinafter referred to as “fisheye camera coordinate system”). The fisheye camera coordinate system shown in FIG. 2 is a three-dimensional coordinate system in which the optical axis O of the fisheye camera 10 is the Y axis, and a plane that passes through the fisheye camera 10 and is orthogonal to the Y axis is the XZ plane. . The XY plane is parallel to the horizontal plane. In the fish-eye camera coordinate system, the azimuth angle of the point P in the real space, that is, the angle formed by the projection line from the point P to the fish-eye camera 10 on the XY plane with respect to the Y-axis, Let α be. Further, an elevation angle of the point P, that is, an angle formed by the projection line from the point P to the fisheye camera 10 on the XY plane with respect to the projection line is β.
At this time, the angle θ formed by the projection line from the point P to the fisheye camera 10 and the optical axis O of the fisheye camera 10 is
It is represented by

図3は、魚眼カメラ10の魚眼画像の座標系(以下、「魚眼画像座標系」という。)を示している。図3に示す魚眼画像座標系は、魚眼カメラ10の光軸Oと魚眼画像との交点である画像中心Cを原点とする、xy直交座標系である。魚眼画像座標系のx軸は、魚眼カメラ座標系のXY平面と平行であり、魚眼画像座標系のy軸は、魚眼カメラ座標系のZ軸と平行である。   3 shows a fish-eye image coordinate system of the fish-eye camera 10 (hereinafter referred to as “fish-eye image coordinate system”). The fish-eye image coordinate system shown in FIG. 3 is an xy orthogonal coordinate system in which the origin is the image center C that is the intersection of the optical axis O of the fish-eye camera 10 and the fish-eye image. The x axis of the fisheye image coordinate system is parallel to the XY plane of the fisheye camera coordinate system, and the y axis of the fisheye image coordinate system is parallel to the Z axis of the fisheye camera coordinate system.

実空間上の点Pは、魚眼カメラ10によって、魚眼画像座標系における点p(r,φ)に投影される。
魚眼画像座標系の原点(画像中心C)と投影点pとを結ぶ線の、y軸とのなす角φは、
で表わされる。
A point P in the real space is projected by the fisheye camera 10 onto a point p (r, φ) in the fisheye image coordinate system.
The angle φ between the line connecting the origin (image center C) of the fish-eye image coordinate system and the projection point p with the y-axis is
It is represented by

本例では、魚眼画像座標系の原点(画像中心C)から投影点pまでの距離rを、
で表すものとする。
1、k3、k5は、魚眼カメラ10の魚眼画像の歪みを表す、歪みパラメータである。k1は、1次の歪みパラメータであり、いわゆる焦点距離に関係している。k3は、3次の歪みパラメータである。k5は、5次の歪みパラメータである。
In this example, the distance r from the origin (image center C) of the fish-eye image coordinate system to the projection point p is
It shall be expressed as
k 1 , k 3 , and k 5 are distortion parameters representing distortion of the fisheye image of the fisheye camera 10. k 1 is a first-order distortion parameter and is related to a so-called focal length. k 3 is a third-order distortion parameter. k 5 is a fifth-order distortion parameter.

そして、式(3)に基づき、魚眼カメラ10の内部パラメータIは、
で表わされる。
u、cvは、図3に示すように、魚眼画像の左上端を原点とするuv直交座標系における、画像中心Cの座標である。画像中心Cは、魚眼カメラ10の魚眼画像の歪みの中心を表す。
このように、本例における内部パラメータIは、歪みパラメータk1、k3、k5と、画像中心Cの座標cu、cvと、を含むものである。
Based on equation (3), the internal parameter I of the fisheye camera 10 is
It is represented by
As shown in FIG. 3, c u and c v are the coordinates of the image center C in the uv orthogonal coordinate system with the origin at the upper left corner of the fisheye image. The image center C represents the center of distortion of the fisheye image of the fisheye camera 10.
Thus, the internal parameter I in this example includes the distortion parameters k 1 , k 3 , k 5 and the coordinates c u , c v of the image center C.

なお、投影点pのuv直交座標系における位置ベクトルをm(u,v)とすると、
となる。
以上の式(1)〜(6)により、投影点pの位置ベクトルmは、α、β、Iで表わすことができる。
If the position vector of the projection point p in the uv orthogonal coordinate system is m (u, v),
It becomes.
By the above formulas (1) to (6), the position vector m of the projection point p can be expressed by α, β, I.

なお、魚眼画像座標系の原点(画像中心C)から投影点pまでの距離rは、式(3)以外の式から求めるようにしてもよい。式(3)により表される距離rは、1次、3次、及び5次の項からなるが、例えば、これに加えて、2次、4次、7次、及び/又は9次の項を加えてもよい。あるいは、式(3)における3次及び/又は5次の項を省略してもよい。この場合、距離rの式に応じて、内部パラメータIの式も変わることとなる。   The distance r from the origin (image center C) of the fish-eye image coordinate system to the projection point p may be obtained from an expression other than Expression (3). The distance r represented by the equation (3) is composed of first-order, third-order, and fifth-order terms. For example, in addition to this, the second-order, fourth-order, seventh-order, and / or ninth-order terms. May be added. Or you may abbreviate | omit the 3rd-order and / or 5th-order term in Formula (3). In this case, the equation for the internal parameter I also changes according to the equation for the distance r.

(推定方法)
つぎに、図4〜図8を参照して、本発明の一実施形態に係る魚眼カメラの内部パラメータの推定方法を説明する。図4は、本発明の一実施形態に係る推定方法を示すフローチャートである。ここでは、図1の例の推定装置1を用いる場合について説明するが、後述するように、他の構成を持つ推定装置を用いて、本実施形態に係る推定方法を実施することもできる。また、以下に説明する例では、推定の対象とする内部パラメータIとして、式(4)に表されるものを用いるが、式(4)以外の式により表される内部パラメータIを、本実施形態に係る推定方法によって推定するようにしてもよい。また、以下に説明する例では、図2及び図3を参照して説明した魚眼カメラ座標系及び魚眼画像座標系を用いるものとする。
(Estimation method)
Next, an internal parameter estimation method for a fisheye camera according to an embodiment of the present invention will be described with reference to FIGS. FIG. 4 is a flowchart showing an estimation method according to an embodiment of the present invention. Here, although the case where the estimation apparatus 1 of the example of FIG. 1 is used will be described, as will be described later, the estimation method according to the present embodiment can be implemented using an estimation apparatus having another configuration. In the example described below, the internal parameter I to be estimated is the one represented by the equation (4), but the internal parameter I represented by an equation other than the equation (4) is used in the present embodiment. You may make it estimate with the estimation method which concerns on a form. In the example described below, the fisheye camera coordinate system and the fisheye image coordinate system described with reference to FIGS. 2 and 3 are used.

−撮像ステップ(S1)−
まず、予め、魚眼カメラ10が、カメラ支持部90の回転台20の上に設置される。本例において、回転台20の回転軸線RAは、魚眼カメラ10の内部を通るとともに鉛直方向に延びており、魚眼カメラ10の内部で、魚眼カメラ10の光軸Oと直交している。
そして、図5に示すように、魚眼カメラ10が、複数(この例では、4つ)の視覚的な特徴点81a〜84aを含む空間内で、回転軸線RAの周りで回転される間に、魚眼カメラ10によって、複数の異なるタイミングのそれぞれで(ひいては、魚眼カメラ10が複数の異なる回転位置のそれぞれにあるときに)、複数の特徴点81a〜84aを撮像することにより、該複数の異なるタイミングに対応した複数の魚眼画像を得る(撮像ステップS1)。図5(a)及び図5(b)は、それぞれ、撮像ステップS1において魚眼カメラ10が回転軸線RAの周りで回転されながら撮影する様子を示す、上面図及び側面図である。
-Imaging step (S1)-
First, the fisheye camera 10 is installed on the turntable 20 of the camera support unit 90 in advance. In this example, the rotation axis RA of the turntable 20 passes through the fisheye camera 10 and extends in the vertical direction, and is orthogonal to the optical axis O of the fisheye camera 10 inside the fisheye camera 10. .
Then, as shown in FIG. 5, while the fisheye camera 10 is rotated around the rotation axis RA within a space including a plurality (four in this example) of visual feature points 81 a to 84 a. The plurality of feature points 81a to 84a are imaged by the fisheye camera 10 at each of a plurality of different timings (and thus when the fisheye camera 10 is at each of a plurality of different rotational positions). A plurality of fisheye images corresponding to different timings are obtained (imaging step S1). FIG. 5A and FIG. 5B are a top view and a side view, respectively, showing how the fisheye camera 10 takes a picture while rotating around the rotation axis RA in the imaging step S1.

より具体的に、本例では、コンピュータ70の回転制御部721が、回転制御プログラム731に従い、通信部71を介して得られるエンコーダ50の出力に基づいて、モータ40の回転を制御することにより、魚眼カメラ10を、回転軸線RAの周りで、一定の回転速度で180°分だけ回転させる。このときの魚眼カメラ10の回転速度や回転角度(180°)は、予めユーザ等により設定される。
本例において、魚眼カメラ10は、水平面に平行な仮想回転平面RP内で回転される。
また、魚眼カメラ10は、回転軸線RAの周りで回転される間、ある一定の撮像時間間隔毎(例えば0.033秒毎)に、その周囲にある特徴点81a〜84aを撮像する。
魚眼カメラ10は、撮影中又は撮影後に、無線通信又は有線通信によって、撮像により得られた時系列の魚眼画像を、コンピュータ70の通信部71へ送信する。一方、コンピュータ70側では、通信部71が魚眼画像を受信すると、制御部72が、魚眼画像を記憶部73に格納する。
More specifically, in this example, the rotation control unit 721 of the computer 70 controls the rotation of the motor 40 based on the output of the encoder 50 obtained via the communication unit 71 according to the rotation control program 731. The fisheye camera 10 is rotated by 180 ° around the rotation axis RA at a constant rotation speed. The rotation speed and rotation angle (180 °) of the fisheye camera 10 at this time are set in advance by the user or the like.
In this example, the fisheye camera 10 is rotated in a virtual rotation plane RP parallel to the horizontal plane.
In addition, the fisheye camera 10 captures the feature points 81a to 84a around it at every certain imaging time interval (for example, every 0.033 seconds) while being rotated around the rotation axis RA.
The fisheye camera 10 transmits a time-series fisheye image obtained by imaging to the communication unit 71 of the computer 70 by wireless communication or wired communication during or after shooting. On the other hand, on the computer 70 side, when the communication unit 71 receives the fisheye image, the control unit 72 stores the fisheye image in the storage unit 73.

視覚的な特徴点81a〜84aとは、それが魚眼カメラ10によって撮像されて魚眼画像に写ったときに、視覚的に識別し得るような点であり、例えば、魚眼カメラ10の周りにある物体81〜84の角である。通常の環境内には、このような視覚的な特徴点が多数含まれているので、撮像ステップS1を実施するにあたっては、特別な被写体を用意する必要は無い。なお、図5に示す例では、4つの特徴点81a〜84aを示しているが、特徴点は2個以上あればよい。また、特徴点の数が多いほど、より高精度に魚眼カメラの内部パラメータを推定できるので、好ましい。   The visual feature points 81a to 84a are points that can be visually identified when they are picked up by the fisheye camera 10 and appear in the fisheye image, for example, around the fisheye camera 10. Are the corners of the objects 81-84. Since many such visual feature points are included in the normal environment, it is not necessary to prepare a special subject when performing the imaging step S1. In the example shown in FIG. 5, four feature points 81 a to 84 a are shown, but two or more feature points are sufficient. In addition, the larger the number of feature points, the better the internal parameters of the fisheye camera can be estimated with higher accuracy.

なお、本例に限られず、回転軸線RAは、魚眼カメラ10の内部を通るとともに魚眼カメラ10の光軸Oに対してほぼ垂直に延在していればよく、例えば鉛直方向と交わる方向に延びていてもよい。回転軸線RAは、魚眼レンズ11の内部(特に好ましくは、魚眼レンズ11の中心(主点))を通るとともに魚眼カメラ10の光軸Oに対してほぼ垂直に延在していることが、好ましい。なお、回転軸線RAは、特徴点までの距離に比べて、魚眼レンズ11の主点までの距離が、小さいほど良い。
また、魚眼カメラ10による撮影と並行して行われる魚眼カメラ10の回転の回転角度は、本例のように180°である必要はなく、180°より小さくてもよいし、180°より大きくてもよい。また、該回転角度は、180°以上であることが好ましく、360°であることがより好ましい。
The rotation axis RA is not limited to this example, and the rotation axis RA only needs to extend through the inside of the fisheye camera 10 and substantially perpendicular to the optical axis O of the fisheye camera 10. For example, the direction intersecting the vertical direction It may extend to. The rotation axis RA preferably passes through the inside of the fisheye lens 11 (particularly preferably, the center (principal point) of the fisheye lens 11) and extends substantially perpendicular to the optical axis O of the fisheye camera 10. The rotation axis RA is better as the distance to the principal point of the fisheye lens 11 is smaller than the distance to the feature point.
Further, the rotation angle of the rotation of the fisheye camera 10 performed in parallel with the photographing by the fisheye camera 10 does not have to be 180 ° as in this example, and may be smaller than 180 ° or from 180 °. It can be large. Further, the rotation angle is preferably 180 ° or more, and more preferably 360 °.

−軌跡画像生成ステップ(S2)−
撮像ステップS1の後、図6に示すように、各特徴点81a〜84aに対応する各魚眼画像中の観測点(像点)の集合から得られる軌跡T1〜T4を含む、軌跡画像を生成する(軌跡画像生成ステップS2)。図6は、軌跡画像の一例を模式的に表す図である。
より具体的には、まず、コンピュータ70の軌跡画像生成部722が、軌跡画像生成プログラム732に従って、記憶部73から時系列の魚眼画像を読み出す(取得する)。そして、軌跡画像生成部722は、軌跡画像生成プログラム732に従って、時系列の魚眼画像に基づいて、軌跡画像を生成する。ここで、例えば、軌跡画像生成部722は、各魚眼画像どうしを重ね合わせることにより、軌跡画像を生成する。あるいは、軌跡画像生成部722は、各魚眼画像から、それぞれの魚眼画像内に現れる特徴点81a〜84aの観測点を抽出し、抽出した各観測点を1つの魚眼画像上に重ね合わせることにより、軌跡画像を生成する。その後、軌跡画像生成部722は、生成した軌跡画像を、記憶部73に記憶させる。
-Trajectory image generation step (S2)-
After the imaging step S1, as shown in FIG. 6, a trajectory image including trajectories T1 to T4 obtained from a set of observation points (image points) in each fisheye image corresponding to each feature point 81a to 84a is generated. (Trajectory image generation step S2). FIG. 6 is a diagram schematically illustrating an example of a trajectory image.
More specifically, first, the trajectory image generation unit 722 of the computer 70 reads (acquires) a time-series fisheye image from the storage unit 73 according to the trajectory image generation program 732. Then, the trajectory image generation unit 722 generates a trajectory image based on the time-series fisheye image according to the trajectory image generation program 732. Here, for example, the trajectory image generation unit 722 generates a trajectory image by superimposing the fisheye images. Alternatively, the trajectory image generation unit 722 extracts the observation points of the feature points 81a to 84a that appear in each fisheye image from each fisheye image, and superimposes the extracted observation points on one fisheye image. Thus, a trajectory image is generated. Thereafter, the trajectory image generation unit 722 stores the generated trajectory image in the storage unit 73.

なお、「観測点の集合から得られる軌跡」とは、観測点の集合そのものからなる軌跡と、観測点の集合に対して画像処理を施すことにより得られる、例えば、各観測点どうしを線分で結び、それらを連ねた線、あるいは、全観測点を滑らかに連ねた線(近似線)で示される軌跡との、いずれでもよい。本例では、観測点の集合そのものを軌跡としている。但し、図6では、説明の便宜のため、軌跡T1〜T4上の各観測点を滑らかに連ねた線を、破線で示している。   Note that the “trajectory obtained from a set of observation points” refers to a trajectory consisting of a set of observation points and a line segment obtained by performing image processing on the set of observation points. And a trajectory indicated by a line connecting them and a line connecting all observation points smoothly (approximate line). In this example, the set of observation points itself is used as a locus. However, in FIG. 6, for convenience of explanation, a line that smoothly connects the observation points on the trajectories T1 to T4 is indicated by a broken line.

軌跡画像に現れる軌跡T1〜T4は、それぞれ別々の特徴点81a〜84aに対応する。図6では、説明の便宜のため、各軌跡T1〜T4上の各観測点のuv座標系での位置ベクトルを、mf1、mf2、mf3・・・mfN-2、mfN-1、mfNで表している。Nは、各軌跡T1〜T4上の観測点の数であり、撮像ステップS1で魚眼カメラ10が撮像した回数(ひいては、魚眼画像の数)に等しい。 The trajectories T1 to T4 appearing in the trajectory image respectively correspond to different feature points 81a to 84a. In FIG. 6, for convenience of explanation, the position vectors in the uv coordinate system of the observation points on the trajectories T1 to T4 are represented by m f1 , m f2 , m f3 ... M fN−2 , m fN−1. , M fN . N is the number of observation points on each of the trajectories T1 to T4, and is equal to the number of times the fisheye camera 10 has imaged (and consequently the number of fisheye images) in the imaging step S1.

−推定ステップ(S3)−
軌跡画像生成ステップS2の後、軌跡画像生成ステップS2で得られた軌跡画像に基づいて、魚眼カメラ10の内部パラメータを推定する(推定ステップS3)。
より具体的に、本例では、コンピュータ70の推定処理部723が、推定処理プログラム733に従い、軌跡画像に基づいて、式(4)で表される内部パラメータIを推定する。
図7は、推定ステップS3において、推定処理部723が行う処理を説明するためのフローチャートである。
図7に示すように、推定処理部723は、内部パラメータIを推定するにあたって、まず、内部パラメータIのうちの画像中心Cの座標cu、cvを、軌跡画像を用いて推定する(ステップS31)。
つぎに、実際の軌跡画像中の各観測点に対応する実空間上の点の方位角α、仰角βの初期値を、軌跡画像を用いて、大まかに推定する(ステップS32)。その後は、内部パラメータIのうちの歪みパラメータk1、k3、k5を、軌跡画像から求まる方位角α、仰角βを用いて、推定する(ステップS33〜S55)。ここで、推定処理部723は、いったん推定された歪みパラメータk1、k3、k5を用いたシミュレーションによって、実際の軌跡画像中の観測点に対応する実空間上の点を魚眼画像へ投影した場合に得られる点(以下、「再投影点」という。)が、実際の観測点になるべく近づくように、修正パウエル法等の最適化手法により、歪みパラメータk1、k3、k5の推定を行う。
-Estimating step (S3)-
After the trajectory image generation step S2, the internal parameters of the fisheye camera 10 are estimated based on the trajectory image obtained in the trajectory image generation step S2 (estimation step S3).
More specifically, in this example, the estimation processing unit 723 of the computer 70 estimates the internal parameter I represented by Expression (4) based on the trajectory image according to the estimation processing program 733.
FIG. 7 is a flowchart for explaining the processing performed by the estimation processing unit 723 in the estimation step S3.
As shown in FIG. 7, when estimating the internal parameter I, the estimation processing unit 723 first estimates the coordinates c u and c v of the image center C of the internal parameter I using the trajectory image (step). S31).
Next, the initial values of the azimuth angle α and elevation angle β of the point on the real space corresponding to each observation point in the actual trajectory image are roughly estimated using the trajectory image (step S32). Thereafter, the distortion parameters k 1 , k 3 , and k 5 among the internal parameters I are estimated using the azimuth angle α and the elevation angle β obtained from the trajectory image (steps S33 to S55). Here, the estimation processing unit 723 converts a point in the real space corresponding to the observation point in the actual trajectory image into a fish-eye image by simulation using the once estimated distortion parameters k 1 , k 3 , and k 5 . Distortion parameters k 1 , k 3 , k 5 are obtained by an optimization method such as a modified Powell method so that points obtained by projection (hereinafter referred to as “reprojection points”) are as close as possible to actual observation points. Estimate

以下、図7の各ステップS31〜S55での処理について、順番に、詳しく説明する。
まず、推定処理部723は、画像中心Cの座標cu、cvを推定する(ステップS31)。軌跡画像中の軌跡T1〜T4は、画像中心Cを通るとともにv軸に平行な線(u=cuの線)に対して略線対称な放物線状に現れるという特徴がある。また、軌跡画像中の軌跡T1〜T4は、画像中心Cに近い軌跡ほど、軌跡の形状が緩やかである(傾きが小さい)という特徴がある。画像中心Cの座標cu、cvを推定するにあたっては、このような軌跡画像の特徴を利用する。
より具体的に、推定処理部723は、軌跡画像(図6)においてそれぞれ放物線状に現れる各軌跡T1〜T4の頂点を求め、各軌跡T1〜T4の頂点に基づいて、画像中心Cの座標cu、cvを推定する。例えば、軌跡画像における各軌跡T1〜T4を、図6において破線で示されたような放物線(二次曲線)で、近似する。つぎに、放物線状に現れる各軌跡T1〜T4の頂点のu座標を計算し、その平均を、画像中心Cのu座標cuとする。また、各軌跡T1〜T4のうち、近似された放物線の形状が最も緩やかである(放物線の傾きが最も小さい)ものを選択し、選択した軌跡(図6の例では、軌跡T1)の頂点のv座標を、画像中心Cのv座標cvとする。
Hereinafter, the processes in steps S31 to S55 in FIG. 7 will be described in detail in order.
First, the estimation processing unit 723 estimates the coordinates c u and c v of the image center C (step S31). The trajectories T1 to T4 in the trajectory image are characterized by appearing in a parabola shape that is substantially axisymmetric with respect to a line that passes through the image center C and is parallel to the v-axis (a line u = cu ). Further, the trajectories T1 to T4 in the trajectory image have a feature that the trajectory closer to the image center C has a gentler trajectory shape (the inclination is smaller). In estimating the coordinates c u and c v of the image center C, such characteristics of the trajectory image are used.
More specifically, the estimation processing unit 723 obtains vertices of the trajectories T1 to T4 that appear in a parabolic shape in the trajectory image (FIG. 6), and coordinates c of the image center C based on the vertices of the trajectories T1 to T4. u and c v are estimated. For example, each of the trajectories T1 to T4 in the trajectory image is approximated by a parabola (secondary curve) as indicated by a broken line in FIG. Next, the u coordinates of the vertices of the trajectories T1 to T4 appearing in a parabolic shape are calculated, and the average is set as the u coordinate c u of the image center C. Further, among the trajectories T1 to T4, the one having the most approximate parabola shape (the parabola has the smallest inclination) is selected, and the apex of the selected trajectory (the trajectory T1 in the example of FIG. 6) is selected. v coordinates, and v coordinates c v of the image center C.

つぎに、推定処理部723は、軌跡画像中の各観測点に対応する実空間上の点の方位角α、仰角βの初期値を、大まかに推定する(ステップS32)。
まず、軌跡画像中の軌跡T1〜T4毎に、軌跡画像における画像中心Cを通るとともにv軸に平行な線(u=cuの線)上又はそれの最も近くにある観測点を特定し、特定した各観測点にそれぞれ対応する仰角βを計算する。ここで、u=cuの線上又はそれの最も近くにある各観測点が等距離射影されたものであるとの仮定のもと、画像中心Cからの距離に比例して仰角βの絶対値が大きくなり、軌跡画像の上端から下端までの間で仰角βが180°分だけ変化するものとして、仰角βを計算する。また、u=cuの線上又はそれの最も近くにある各観測点に対応する方位角αを、α=0とする。このようにして、各軌跡T1〜T4におけるu=cuの線上又はそれの最も近くにある観測点について、それぞれ方位角α及び仰角βの初期値を、大まかに推定する。
つぎに、u=cuの線上又はそれの最も近くにある観測点以外の各観測点に対応する方位角αを計算する。ここで、軌跡T1〜T4毎に観たときに、1つの軌跡の左端から右端に向かう間、方位角αの値は、軌跡の左端から軌跡に沿って測った距離に比例して変化し、軌跡の右端に至るまでには、撮像ステップS1で魚眼カメラ10が回転された回転角度である180°分だけ変化するものと、仮定する。また、1つの軌跡上の各観測点にそれぞれ対応する仰角βは、同じである。よって、u=cuの線上又はそれの最も近くにある観測点以外の各観測点にそれぞれ対応する仰角βは、u=cuの線上又はそれの最も近くにある該観測点について求めた仰角βと、同じである。このようにして、u=cuの線上又はそれの最も近くにある観測点以外の各観測点についても、方位角α及び仰角βの初期値を大まかに推定する。
Next, the estimation processing unit 723 roughly estimates initial values of the azimuth angle α and the elevation angle β of the point on the real space corresponding to each observation point in the trajectory image (step S32).
First, for each of the trajectories T1 to T4 in the trajectory image, an observation point that passes through the image center C in the trajectory image and is parallel to the v-axis (a line u = cu ) or nearest to it is specified. The elevation angle β corresponding to each identified observation point is calculated. Here, u = original assumption that the observation point in the line or closest to it c u is one that is equidistant projection, the absolute value of the elevation angle β in proportion to the distance from the image center C The elevation angle β is calculated on the assumption that the elevation angle β changes by 180 ° from the upper end to the lower end of the trajectory image. Further, the azimuth angle alpha corresponding to each observation point on the nearest line or that of u = c u, and alpha = 0. In this way, the line or the closest to an observation point u = c u at each locus T1-T4, the initial value of the azimuth angle α and elevation β, respectively, roughly estimated.
Next, calculate the azimuth angle α corresponding to each observation point other than the observation point on the nearest line or that of u = c u. Here, when viewed from each of the trajectories T1 to T4, the value of the azimuth α changes in proportion to the distance measured along the trajectory from the left end of the trajectory while moving from the left end to the right end of one trajectory. It is assumed that until the right end of the locus is reached, the angle changes by 180 ° which is the rotation angle of the fisheye camera 10 rotated in the imaging step S1. Further, the elevation angle β corresponding to each observation point on one locus is the same. Therefore, u = the corresponding elevation angle β to each observation point other than the observation point in the line or closest to that of c u, elevation calculated for the observation point in the nearest line or that of u = c u Same as β. In this way, u = regard to each observation point other than the observation point in the line or closest to that of c u, roughly estimate the initial value of the azimuth angle α and elevation angle beta.

その後、推定処理部723は、上述のように求めた、軌跡画像中の各観測点に対応する方位角α及び仰角βの初期値を用いて、以下の式(7)〜(9)で求められる評価関数Dを計算する。
ここで、mfiは、観測点のuv座標系での位置ベクトルであり、mriは、再投影点のuv座標系での位置ベクトルである。再投影点mriは、式(1)〜(6)により、α、β、Iの関数で表すことができる。i=1は、各軌跡の左端に対応する。Nは、1つの軌跡上の観測点の数である。Mは、魚眼画像内の軌跡の数(ひいては特徴点の数)であり、図6の例では、M=4である。
評価関数Dは、観測点からなる軌跡と、再投影点からなる軌跡との一致度合いを表すものであり、DrjとDsjとの和である。Drjは、再投影誤差、すなわち、1つの軌跡における、観測点と、その観測点に対応する再投影点との距離の総和を表す。Dsjは、観測点からなる軌跡と、再投影点からなる軌跡との、形状の差を表す値である。
ステップS32において、推定処理部723は、k3=0、k5=0とおくとともに、k1の値を変えながら評価関数Dを計算していき、評価関数Dの最小値Dminを求める。
Thereafter, the estimation processing unit 723 obtains the following equations (7) to (9) using the initial values of the azimuth angle α and the elevation angle β corresponding to each observation point in the trajectory image obtained as described above. The evaluation function D to be calculated is calculated.
Here, m fi is a position vector of the observation point in the uv coordinate system, and m ri is a position vector of the reprojection point in the uv coordinate system. The reprojection point m ri can be expressed as a function of α, β, and I by the equations (1) to (6). i = 1 corresponds to the left end of each trajectory. N is the number of observation points on one locus. M is the number of trajectories in the fisheye image (and hence the number of feature points), and in the example of FIG. 6, M = 4.
Evaluation function D is the locus consisting observation point, which represents the degree of matching between path consisting reprojection point is the sum of the D rj and D sj. D rj represents the reprojection error, that is, the total sum of the distance between the observation point and the reprojection point corresponding to the observation point in one trajectory. D sj is a value representing a difference in shape between a trajectory made up of observation points and a trajectory made up of reprojection points.
In step S32, the estimation processing unit 723 sets k 3 = 0 and k 5 = 0, calculates the evaluation function D while changing the value of k 1 , and obtains the minimum value D min of the evaluation function D.

つぎに、推定処理部723は、歪みパラメータk1、k3、k5のうち、k1を推定する(ステップS33)。より具体的には、直前に求めたDminのときのk1を、その推定値とする。 Next, the estimation processing unit 723 of the distortion parameters k 1, k 3, k 5 , estimates the k 1 (step S33). More specifically, k 1 at the time of D min obtained immediately before is set as the estimated value.

つぎに、推定処理部723は、軌跡画像中の各観測点に対応する方位角α及び仰角βを、本例ではステップS32とは異なる方法で、再び計算する(ステップS34)。
まず、軌跡画像中の軌跡T1〜T4毎に、u=cuの線上又はそれの最も近くにある観測点を特定し、特定した各観測点にそれぞれ対応する仰角βを計算する。ここで、特定した各観測点の方位角αを、α=0とおくと、式(1)から、θ=βが得られる。このθ=βを式(3)に代入する。また、式(3)において、k1はステップS33での推定値を用い、k3=0、k5=0とおくとともに、rは軌跡画像から求めたものを用いる。すると、βの方程式が得られ、βが求まる。このようにして、各軌跡に対応するβが得られる。
つぎに、u=cuの線上又はそれの最も近くにある観測点以外の各観測点に対応する方位角αを、上記のとおり既知のk1、k3、k5、βと軌跡画像から求めた該各観測点のrとを用いて、式(1)、(2)によりθを消してαの方程式を得ることにより、求める。
このようにして、軌跡画像中の各観測点に対応する方位角α及び仰角βが求まる。
その後、推定処理部723は、上述のように再計算した方位角α及び仰角βを用いて、上記のDminを再び計算する。
Next, the estimation processing unit 723 calculates again the azimuth angle α and the elevation angle β corresponding to each observation point in the trajectory image by a method different from step S32 in this example (step S34).
First, for each locus T1~T4 in path image to identify observation points located in the nearest line or that of u = c u, calculates the elevation angle β corresponding to each observation point identified. Here, if the azimuth angle α of each specified observation point is set to α = 0, θ = β can be obtained from Equation (1). This θ = β is substituted into equation (3). In Equation (3), k 1 uses the estimated value in step S33, k 3 = 0 and k 5 = 0, and r is obtained from the trajectory image. Then, the equation of β is obtained and β is obtained. In this way, β corresponding to each trajectory is obtained.
Next, the azimuth angle α corresponding to each observation point other than the observation point on the nearest line or that of u = c u, known as the k 1, k 3, k 5 , the β and path image Using the obtained r of each observation point, the equation of α is obtained by eliminating θ by Equations (1) and (2).
In this way, the azimuth angle α and the elevation angle β corresponding to each observation point in the trajectory image are obtained.
Thereafter, the estimation processing unit 723 calculates the D min again using the azimuth angle α and the elevation angle β recalculated as described above.

つぎに、推定処理部723は、今回算出したDminが、前回算出したDmin以下であれば(ステップS35、NO)、ステップS33に戻って再びk1の推定を行う。この場合、ステップS33では、直前に求めたDmin(すなわちステップS34で求めたDmin)のときのk1を、その推定値とする。
以下、ステップS32〜S35の処理を、「ループ処理1」という。
一方、今回算出したDminが前回算出したDminよりも大きければ(ステップS35、YES)、ループ処理1で求めたDminのうち最小のDmin(即ち、前回算出したDmin)と、該最小のDminのときの歪みパラメータk1とを、いったん記憶部73に記憶させる(ステップS36)。
Next, the estimation processing unit 723, D min calculated this time is equal to or less than D min previously calculated (step S35, NO), the estimation of k 1 again returns to step S33. In this case, in step S33, the k 1 when the D min determined immediately before (namely D min found in step S34), and its estimated value.
Hereinafter, the processing of steps S32 to S35 is referred to as “loop processing 1”.
On the other hand, is larger than this calculated D min is D min previously calculated (step S35, YES), the minimum D min among the D min obtained by the loop 1 (i.e., D min previously calculated), the The distortion parameter k 1 for the minimum D min is temporarily stored in the storage unit 73 (step S36).

つぎに、推定処理部723は、歪みパラメータk1、k3、k5のうち、k1、k3を推定する(ステップS37)。ここで、初めてステップS37を実行する場合、推定処理部723は、k5=0とおくとともに、k1、k3の値を変えながら評価関数Dを計算していき、評価関数Dの最小値Dminを求める。ここで、方位角α及び仰角βは、直前にステップS34で求めた値を用いる。そして、得られたDminのときのk1、k3の値を、それらの推定値とする。
なお、2回目以降にステップS37を実行する場合は、直前に求めたDminのときのk1、k3を、それらの推定値とする。
Next, the estimation processing unit 723 of the distortion parameters k 1, k 3, k 5 , it estimates the k 1, k 3 (step S37). Here, when step S37 is executed for the first time, the estimation processing unit 723 sets k 5 = 0, calculates the evaluation function D while changing the values of k 1 and k 3 , and sets the minimum value of the evaluation function D. D min is obtained. Here, as the azimuth angle α and the elevation angle β, the values obtained immediately before in step S34 are used. Then, the obtained values of k 1 and k 3 at the time of D min are used as the estimated values.
In the case of executing the step S37 for the second time or later, the k 1, k 3 when the D min determined immediately before, and their estimates.

つぎに、推定処理部723は、軌跡画像中の各観測点に対応する方位角α及び仰角βを、ステップS34と同様の方法で、再計算する(ステップS38)。ただし、ステップS34とは異なり、k5=0とおく。
その後、推定処理部723は、上記再計算した方位角α及び仰角βを用いて、上記Dminを再び計算する。
Next, the estimation processing unit 723 recalculates the azimuth angle α and the elevation angle β corresponding to each observation point in the trajectory image by the same method as in step S34 (step S38). However, unlike step S34, k 5 = 0.
Thereafter, the estimation processing unit 723 calculates D min again using the recalculated azimuth angle α and elevation angle β.

つぎに、推定処理部723は、ステップS37、S38の処理を10回繰り返し、その後(ステップS39、YES)、その10回繰り返した間に、少なくとも1回、Dminが小さくならなかった場合(ステップS40、YES)、後述のステップS44に進む。
一方、上記10回繰り返した間に、少なくとも1回、Dminが小さくなった場合(ステップS40、YES)、さらにステップS37、S38と同様の処理を行う(ステップS41、S42)。ここで、ステップS41を実行する場合は、上記10回繰り返した間における最小のDminのときのk1、k3を、それらの推定値とする。ステップS42の後、今回算出したDminが、前回算出したDmin以下であれば(ステップS43、NO)、再びステップS41、S42を行う。一方、今回算出したDminが、前回算出したDminよりも大きければ(ステップS43、YES)、後述のステップS44に進む。
以下、ステップS37〜S43の処理を、「ループ処理2」という。
ステップS44では、ループ処理2で求めたDminのうち最小のDminと、該最小のDminのときの歪みパラメータk1、k3とを、いったん記憶部73に記憶させる。
Next, the estimation processing unit 723 repeats the processes of steps S37 and S38 10 times, and then (step S39, YES), when D min does not decrease at least once during the 10 times of repetition (step S39). (S40, YES), the process proceeds to step S44 described later.
On the other hand, when D min becomes small at least once during the above 10 repetitions (step S40, YES), the same processing as in steps S37 and S38 is performed (steps S41 and S42). Here, when step S41 is executed, k 1 and k 3 at the minimum D min during the above 10 repetitions are used as the estimated values. After step S42, D min calculated this time is equal to or less than D min previously calculated (step S43, NO), performing the step S41, S42 again. On the other hand, if D min calculated this time is larger than D min calculated last time (step S43, YES), the process proceeds to step S44 described later.
Hereinafter, the processing of steps S37 to S43 is referred to as “loop processing 2”.
At step S44, the minimum D min among the D min obtained by the loop 2, the distortion parameters k 1, k 3 when the outermost small of D min, is stored temporarily in the storage unit 73.

その後、ステップS45において、直前の3回にわたって記憶された最小のDmin(すなわち直前のステップS44、直前のステップS53、及び1回前のステップS44のそれぞれで記憶された最小のDmin)どうしを比較する。ステップS53の処理については、後述する。そして、最小のDminが、直前の2回(すなわち直前のステップS44及び直前のステップS53)で連続して大きくならなかった場合(ステップS45、NO)、ステップS46に進み、ループ処理2と同様の処理(以下、「ループ処理3」という。)を、歪みパラメータk1、k3、k5の全てについて行う(ステップS46〜S52)。その後、ステップS53において、ループ処理3で求めたDminのうち最小のDminと、該最小のDminのときの歪みパラメータk1、k3、k5とを、いったん記憶部73に記憶させる。
一方、ステップS45において、直前の2回で連続して大きくなった場合は(ステップS45、YES)、後述のステップS55に進む。
Thereafter, in step S45, the minimum D min stored for the previous three times (that is, the minimum D min stored in each of the previous step S44, the previous step S53, and the previous step S44) is calculated. Compare. The process of step S53 will be described later. If the minimum Dmin does not increase continuously in the previous two times (that is, immediately preceding step S44 and immediately preceding step S53) (step S45, NO), the process proceeds to step S46 and is the same as loop processing 2 (Hereinafter referred to as “loop processing 3”) is performed for all of the distortion parameters k 1 , k 3 , and k 5 (steps S46 to S52). Thereafter, in step S53, the minimum D min among the D min obtained by the loop 3, the distortion parameters k 1, k 3, k 5 when the outermost small of D min, is stored temporarily in the storage unit 73 .
On the other hand, when it becomes larger continuously in the last two times in step S45 (step S45, YES), the process proceeds to step S55 described later.

ステップS53の後のステップS54において、最小のDminが、直前の2回(すなわち直前のステップS53及び直前のステップS44)で連続して大きくならなかった場合(ステップS54、NO)、再びステップS37に戻って、ループ処理2から処理を再び行う。一方、ステップS54において、直前の2回で連続して大きくなった場合は(ステップS54、YES)、ステップS55に進む。
ステップS55において、推定処理部723は、記憶部73を参照して、それまでに求めたDminのうち最小のDminと、該最小のDminのときの歪みパラメータk1、k3、k5とを、最終的な推定結果として出力し、処理を終了する。
In step S54 after step S53, when the minimum Dmin does not increase continuously in the previous two times (that is, immediately preceding step S53 and immediately preceding step S44) (step S54, NO), step S37 is again performed. Returning to the above, the processing from the loop processing 2 is performed again. On the other hand, in step S54, when it becomes large continuously two times immediately before (step S54, YES), the process proceeds to step S55.
In step S55, the estimation processing unit 723 refers to the storage unit 73, the distortion parameters k 1, k 3, k at the time of it with the minimum of D min among the D min obtained by, outermost small of D min 5 is output as the final estimation result, and the process is terminated.

(効果)
図8は、上述した例に係る撮像ステップS1、軌跡画像生成ステップS2を経て生成された、観測点からなる軌跡Tfを含む軌跡画像に、上記の例における推定ステップS3におけるシミュレーションで得られた、再投影点からなる軌跡Trを、重ね合わせて、軌跡画像の右上部分を拡大した図である。図8(a)は、推定ステップS3の実行途中に得られた歪みパラメータの推定値を含む内部パラメータIを用いて、再投影点の軌跡Trを得た場合の図であり、再投影点の軌跡Trが観測点の軌跡Tfから少しずれている。図8(b)は、推定ステップS3の最終結果として得られた歪みパラメータの推定値を含む内部パラメータIを用いて、再投影点の軌跡Trを得た場合の図であり、再投影点の軌跡Trが観測点の軌跡Tfにほぼ重なっている。図8の結果から、上述した例に係る撮像ステップS1、軌跡画像生成ステップS2を用いて生成された軌跡画像を用いることにより、高い精度で内部パラメータIを推定できることが判る。
(effect)
FIG. 8 is obtained by simulation in the estimation step S3 in the above example on the trajectory image including the trajectory Tf composed of observation points generated through the imaging step S1 and the trajectory image generation step S2 according to the above-described example. FIG. 10 is an enlarged view of the upper right part of the trajectory image by superimposing trajectories Tr composed of reprojection points. FIG. 8A is a diagram when the reprojection point trajectory Tr is obtained using the internal parameter I including the distortion parameter estimation value obtained during the execution of the estimation step S3. Is slightly deviated from the trajectory T f of the observation point. FIG. 8B is a diagram in the case where the trajectory Tr of the reprojection point is obtained using the internal parameter I including the estimated value of the distortion parameter obtained as the final result of the estimation step S3. The trajectory T r substantially overlaps the trajectory T f of the observation point. From the result of FIG. 8, it can be seen that the internal parameter I can be estimated with high accuracy by using the trajectory image generated using the imaging step S1 and the trajectory image generation step S2 according to the above-described example.

本実施形態によれば、特別な被写体を用意することを要さず、簡単かつ高精度に、魚眼カメラの内部パラメータを推定することができる。   According to this embodiment, it is not necessary to prepare a special subject, and the internal parameters of the fisheye camera can be estimated easily and with high accuracy.

なお、本施形態の推定装置や本実施形態の推定方法(ひいては本実施形態の推定プログラム)は、それぞれ、様々な変更例が可能である。
例えば、撮像ステップS1において、ユーザが、魚眼カメラ10の回転や、魚眼カメラ10への撮像の指示(シャッターボタンを押す等)を、行ってもよい。
また、撮像ステップS1において、撮像時間間隔は、一定である必要はなく、まだらな間隔でもよい。
Note that the estimation apparatus of the present embodiment and the estimation method of the present embodiment (and thus the estimation program of the present embodiment) can be modified in various ways.
For example, in the imaging step S1, the user may perform rotation of the fisheye camera 10 or an instruction for imaging to the fisheye camera 10 (such as pressing a shutter button).
In the imaging step S1, the imaging time interval does not need to be constant, and may be a mottled interval.

推定ステップS3では、上述した方法以外の方法によっても、軌跡画像に基づいて、内部パラメータIを推定してもよい。
より具体的には、ステップS31において、画像中心Cのv座標cvを求めるにあたっては、軌跡画像内の各軌跡のうち、近似された放物線の形状が最もフラット(すなわち最も直線に近い)ものを特定し、特定した軌跡上の各観測点のv座標の平均値を、画像中心Cのv座標cvとしてもよい。あるいは、軌跡画像内の各軌跡から近似された各放物線の頂点のv座標及び2次の項の係数を求め、2次の項の係数が0になるv座標を最小2乗法で推定して、その結果を、画像中心Cのv座標cvとしてもよい。
In the estimation step S3, the internal parameter I may be estimated based on the trajectory image by a method other than the method described above.
More specifically, in step S31, when determining the v coordinate c v of the image center C, of the trajectory of the path image, that best flat shape of the approximated parabola (i.e. closest to the straight line) identified, the average value of v coordinates of the observation point on a particular trajectory may be v coordinate c v of the image center C. Alternatively, the v-coordinate and quadratic term coefficient of each parabola approximated from each trajectory in the trajectory image are obtained, and the v-coordinate at which the quadratic term coefficient is 0 is estimated by the least square method. the results may be v coordinate c v of the image center C.

また、上記の例では、歪みパラメータの推定において、軌跡画像における観測点と再投影点とを1対1の対応関係とし、方位角α及び仰角βの算出や、評価関数Dの算出を行うものであるが、これに限られない。例えば、評価関数Dを、軌跡画像における観測点と、再投影点が描く軌跡との、距離の式で表し、方位角αを算出せずに、仰角βのみを算出するようにしてもよい。
また、歪みパラメータの推定において、軌跡画像における観測点を用いる代わりに、観測点が描く軌跡あるいは該軌跡から近似された放物線上の、任意の点を用いてもよい。
In the above example, in the estimation of the distortion parameter, the observation point and the reprojection point in the trajectory image have a one-to-one correspondence, and the azimuth angle α and the elevation angle β are calculated and the evaluation function D is calculated. However, it is not limited to this. For example, the evaluation function D may be expressed by a distance formula between the observation point in the trajectory image and the trajectory drawn by the reprojection point, and only the elevation angle β may be calculated without calculating the azimuth angle α.
In estimating the distortion parameter, instead of using the observation point in the locus image, an arbitrary point on the locus drawn by the observation point or a parabola approximated from the locus may be used.

また、撮像ステップS1での各撮像タイミングにおける魚眼カメラ10の回転位置から、方位角αを求めるようにしてもよい。その場合、魚眼カメラ10の回転位置は、エンコーダ50の出力に基づいて求められる。あるいは、モータ40をステッピングモータにより構成することで、各撮像タイミングにおける魚眼カメラ10の回転位置を予め設定したとおりに制御できるようにしてもよい。その場合、エンコーダ50を省略してもよい。   Alternatively, the azimuth angle α may be obtained from the rotational position of the fisheye camera 10 at each imaging timing in the imaging step S1. In that case, the rotational position of the fisheye camera 10 is obtained based on the output of the encoder 50. Alternatively, the motor 40 may be configured by a stepping motor so that the rotational position of the fisheye camera 10 at each imaging timing can be controlled as set in advance. In that case, the encoder 50 may be omitted.

本発明の推定方法、推定装置、及び推定プログラムは、魚眼カメラの内部パラメータを推定する際に利用できる。   The estimation method, estimation apparatus, and estimation program of the present invention can be used when estimating internal parameters of a fisheye camera.

1 推定装置
10 魚眼カメラ
11 魚眼レンズ
20 回転台
30 回転軸
40 モータ
50 エンコーダ
60 三脚
70 コンピュータ
71 通信部(取得部)
72 制御部
73 記憶部
74 入力部
75 表示部
81〜84 物体
81a〜84a 特徴点
90 カメラ支持部(カメラ回転部)
721 回転制御部(カメラ回転部)
722 軌跡画像生成部
723 推定処理部
731 回転制御プログラム
732 軌跡画像生成プログラム(推定プログラム)
733 推定処理プログラム(推定プログラム)
C 画像中心
O 光軸
RA 回転軸線
RP 仮想回転平面
T1〜T4 軌跡
DESCRIPTION OF SYMBOLS 1 Estimation apparatus 10 Fisheye camera 11 Fisheye lens 20 Turntable 30 Rotating shaft 40 Motor 50 Encoder 60 Tripod 70 Computer 71 Communication part (acquisition part)
72 control unit 73 storage unit 74 input unit 75 display units 81-84 objects 81a-84a feature point 90 camera support unit (camera rotation unit)
721 Rotation control unit (camera rotation unit)
722 Trajectory image generation unit 723 Estimation processing unit 731 Rotation control program 732 Trajectory image generation program (estimation program)
733 Estimation processing program (estimation program)
C Image center O Optical axis RA Rotation axis RP Virtual rotation plane T1 to T4 Trajectory

Claims (6)

魚眼レンズを備えた魚眼カメラの内部パラメータの推定方法であって、
前記魚眼カメラが、複数の視覚的な特徴点を含む空間内で、該魚眼カメラの内部を通るとともに該魚眼カメラの光軸に対してほぼ垂直に延在する回転軸線の周りで回転される間に、前記魚眼カメラによって、複数の異なるタイミングのそれぞれで前記複数の特徴点を撮像することにより、複数の魚眼画像を得る、撮像ステップと、
前記各特徴点に対応する前記各魚眼画像中の観測点の集合から得られる軌跡を含む、軌跡画像を生成する、軌跡画像生成ステップと、
前記軌跡画像に基づいて、前記魚眼カメラの内部パラメータを推定する、推定ステップと、
を含むことを特徴とする、推定方法。
A method for estimating internal parameters of a fisheye camera equipped with a fisheye lens,
The fisheye camera rotates within a space containing a plurality of visual feature points about a rotation axis that passes through the fisheye camera and extends substantially perpendicular to the optical axis of the fisheye camera. In the meantime, an imaging step of obtaining a plurality of fisheye images by imaging the plurality of feature points at each of a plurality of different timings by the fisheye camera;
Generating a trajectory image including a trajectory obtained from a set of observation points in each fisheye image corresponding to each feature point;
Estimating the internal parameters of the fisheye camera based on the trajectory image; and
The estimation method characterized by including.
前記推定ステップにおいて、前記軌跡画像においてそれぞれ放物線状に現れる前記各軌跡の頂点を求め、前記各軌跡の頂点に基づいて、前記内部パラメータにおける、前記魚眼カメラの魚眼画像の歪みの中心を表す画像中心の座標を、推定する、請求項1に記載の推定方法。   In the estimation step, vertices of the trajectories appearing in parabolic shapes in the trajectory image are obtained, and based on the vertices of the trajectories, the distortion center of the fisheye image of the fisheye camera in the internal parameters is represented. The estimation method according to claim 1, wherein the coordinates of the center of the image are estimated. 前記推定ステップにおいて、前記軌跡画像中の前記各観測点にそれぞれ対応する前記特徴点の方位角及び仰角を、前記軌跡画像に基づいて求め、求めた前記各特徴点の前記方位角及び仰角を用いて、前記内部パラメータにおける、前記魚眼カメラの魚眼画像の歪みを表す歪みパラメータを、推定する、請求項1又は2に記載の推定方法。   In the estimation step, an azimuth angle and an elevation angle of the feature point corresponding to each observation point in the trajectory image are obtained based on the trajectory image, and the obtained azimuth angle and elevation angle of each feature point are used. The estimation method according to claim 1, wherein a distortion parameter representing a distortion of a fisheye image of the fisheye camera in the internal parameter is estimated. 魚眼レンズを備えた魚眼カメラの内部パラメータの推定装置であって、
前記魚眼カメラが、複数の視覚的な特徴点を含む空間内で、該魚眼カメラの内部を通るとともに該魚眼カメラの光軸に対してほぼ垂直に延在する回転軸線の周りで回転される間に、該魚眼カメラによって複数の異なるタイミングのそれぞれで前記複数の特徴点を撮像することにより得られた、複数の魚眼画像を、取得する、取得部と、
前記各特徴点に対応する前記各魚眼画像中の観測点の集合から得られる軌跡を含む、軌跡画像を生成する、軌跡画像生成部と、
前記軌跡画像に基づいて、前記魚眼カメラの内部パラメータを推定する、推定処理部と、
を備えたことを特徴とする、推定装置。
An apparatus for estimating internal parameters of a fisheye camera equipped with a fisheye lens,
The fisheye camera rotates within a space containing a plurality of visual feature points about a rotation axis that passes through the fisheye camera and extends substantially perpendicular to the optical axis of the fisheye camera. An acquisition unit that acquires a plurality of fisheye images obtained by imaging the plurality of feature points at each of a plurality of different timings by the fisheye camera;
A trajectory image generation unit that generates a trajectory image including a trajectory obtained from a set of observation points in each fisheye image corresponding to each feature point;
An estimation processing unit that estimates internal parameters of the fisheye camera based on the trajectory image;
An estimation device comprising:
前記魚眼カメラを前記回転軸線の周りで回転させるように構成された、カメラ回転部をさらに備えた、請求項4に記載の推定装置。   The estimation apparatus according to claim 4, further comprising a camera rotation unit configured to rotate the fisheye camera around the rotation axis. 魚眼レンズを備えた魚眼カメラの内部パラメータの推定プログラムであって、
前記魚眼カメラが、複数の視覚的な特徴点を含む空間内で、該魚眼カメラの内部を通るとともに該魚眼カメラの光軸に対してほぼ垂直に延在する回転軸線の周りで回転される間に、前記魚眼カメラによって複数の異なるタイミングのそれぞれで前記複数の特徴点を撮像することにより得られた、複数の魚眼画像を、取得する、取得ステップと、
前記各特徴点に対応する前記各魚眼画像中の観測点の集合から得られる軌跡を含む、軌跡画像を生成する、軌跡画像生成ステップと、
前記軌跡画像に基づいて、前記魚眼カメラの内部パラメータを推定する、推定ステップと、
をコンピュータに実行させることを特徴とする、推定プログラム。
A program for estimating internal parameters of a fisheye camera equipped with a fisheye lens,
The fisheye camera rotates within a space containing a plurality of visual feature points about a rotation axis that passes through the fisheye camera and extends substantially perpendicular to the optical axis of the fisheye camera. A plurality of fish-eye images obtained by imaging the plurality of feature points at each of a plurality of different timings by the fish-eye camera.
Generating a trajectory image including a trajectory obtained from a set of observation points in each fisheye image corresponding to each feature point;
Estimating the internal parameters of the fisheye camera based on the trajectory image; and
An estimation program characterized by causing a computer to execute.
JP2015116946A 2015-06-09 2015-06-09 Method of estimating internal parameters of fisheye camera, estimation device, and estimation program Active JP6525195B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015116946A JP6525195B2 (en) 2015-06-09 2015-06-09 Method of estimating internal parameters of fisheye camera, estimation device, and estimation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015116946A JP6525195B2 (en) 2015-06-09 2015-06-09 Method of estimating internal parameters of fisheye camera, estimation device, and estimation program

Publications (2)

Publication Number Publication Date
JP2017003398A true JP2017003398A (en) 2017-01-05
JP6525195B2 JP6525195B2 (en) 2019-06-05

Family

ID=57752595

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015116946A Active JP6525195B2 (en) 2015-06-09 2015-06-09 Method of estimating internal parameters of fisheye camera, estimation device, and estimation program

Country Status (1)

Country Link
JP (1) JP6525195B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110648274A (en) * 2019-09-23 2020-01-03 阿里巴巴集团控股有限公司 Fisheye image generation method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10288513A (en) * 1997-04-14 1998-10-27 Ricoh Co Ltd Shape measuring device
JP2007192832A (en) * 2007-03-06 2007-08-02 Iwate Univ Calibrating method of fish eye camera
JP2011215063A (en) * 2010-04-01 2011-10-27 Tottori Univ Camera attitude parameter estimation device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10288513A (en) * 1997-04-14 1998-10-27 Ricoh Co Ltd Shape measuring device
JP2007192832A (en) * 2007-03-06 2007-08-02 Iwate Univ Calibrating method of fish eye camera
JP2011215063A (en) * 2010-04-01 2011-10-27 Tottori Univ Camera attitude parameter estimation device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110648274A (en) * 2019-09-23 2020-01-03 阿里巴巴集团控股有限公司 Fisheye image generation method and device
CN110648274B (en) * 2019-09-23 2024-02-02 创新先进技术有限公司 Method and device for generating fisheye image

Also Published As

Publication number Publication date
JP6525195B2 (en) 2019-06-05

Similar Documents

Publication Publication Date Title
JP7294396B2 (en) Image processing device, image processing method, and program
JP5580164B2 (en) Optical information processing apparatus, optical information processing method, optical information processing system, and optical information processing program
JP6636252B2 (en) Projection system, projector device, imaging device, and program
US10825249B2 (en) Method and device for blurring a virtual object in a video
WO2013111229A1 (en) Camera calibration device, camera calibration method, and camera calibration program
CN107003744B (en) Viewpoint determines method, apparatus and electronic equipment
JP2007147422A (en) Measurement system, image processor, and method
JP2012063866A (en) Device for processing point group position data, method for processing point group position data, system for processing point group position data, and program for processing point group position data
JP2015219679A (en) Image processing system, information processing device, and program
CN112399158A (en) Projection image calibration method and device and projection equipment
JP2015088819A (en) Imaging simulation device
JP2023546739A (en) Methods, apparatus, and systems for generating three-dimensional models of scenes
JP5410328B2 (en) Optical projection stabilization device, optical projection stabilization method, and program
JP2004140845A (en) Projector
JP6525195B2 (en) Method of estimating internal parameters of fisheye camera, estimation device, and estimation program
JP5728399B2 (en) Measuring device, method and program
CN109859313A (en) 3D point cloud data capture method, device, 3D data creation method and system
JP2017116280A (en) Camera calibration system, camera calibration program, and camera calibration method
JP7287408B2 (en) Display method, information processing device, and program
CN111526297B (en) Curved screen image acquisition method and device and terminal equipment
JP5179784B2 (en) Three-dimensional coordinate measuring apparatus and program executed in three-dimensional coordinate measuring apparatus
CN110785792A (en) 3D modeling method, electronic device, storage medium, and program product
WO2017057426A1 (en) Projection device, content determination device, projection method, and program
KR101990252B1 (en) Method for producing virtual reality image, portable device in which VR photographing program for performing the same is installed, and server supplying the VR photographing program to the portable device
JP6641525B2 (en) Optical device control device, optical device control method, and optical device control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180517

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190329

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190424

R150 Certificate of patent or registration of utility model

Ref document number: 6525195

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250