WO2010052772A1 - カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム - Google Patents

カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム Download PDF

Info

Publication number
WO2010052772A1
WO2010052772A1 PCT/JP2008/070135 JP2008070135W WO2010052772A1 WO 2010052772 A1 WO2010052772 A1 WO 2010052772A1 JP 2008070135 W JP2008070135 W JP 2008070135W WO 2010052772 A1 WO2010052772 A1 WO 2010052772A1
Authority
WO
WIPO (PCT)
Prior art keywords
camera
image
marker
jig
angle calculation
Prior art date
Application number
PCT/JP2008/070135
Other languages
English (en)
French (fr)
Inventor
清水 誠也
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to JP2010536608A priority Critical patent/JP5387580B2/ja
Priority to PCT/JP2008/070135 priority patent/WO2010052772A1/ja
Publication of WO2010052772A1 publication Critical patent/WO2010052772A1/ja
Priority to US13/064,690 priority patent/US8537199B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/10Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of camera system used
    • B60R2300/105Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of camera system used using multiple cameras
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/30Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
    • B60R2300/303Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing using joined images, e.g. multiple camera images
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/40Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the details of the power supply or the coupling to vehicle components
    • B60R2300/402Image calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Definitions

  • the present invention relates to a camera angle calculation device, a camera angle calculation method, and a camera angle calculation program for calculating installation parameters of a camera attached to a moving body.
  • the camera installation parameters include a position (X coordinate, Y coordinate, Z coordinate) and angle (roll angle, pitch angle, yaw angle) with respect to the vehicle coordinate system.
  • the conventional technique described above has a problem that the camera cannot be calibrated in a narrow space.
  • the camera calibration can be executed even in a narrow space, and it is an important issue to accurately determine the camera installation parameters.
  • An object is to provide an angle calculation device, a camera angle calculation method, and a camera angle calculation program.
  • FIG. 10 is a diagram illustrating an example of the data structure of the conversion table.
  • FIG. 11 is a diagram for explaining the calculation of the angle between each line-of-sight vector.
  • FIG. 12 is a diagram illustrating camera coordinates and marker coordinates in the vehicle coordinate system.
  • FIG. 13 is a diagram (1) for explaining the processing of the camera angle parameter estimation unit.
  • FIG. 14 is a diagram (2) for explaining the processing of the camera angle parameter estimation unit.
  • FIG. 15 is a diagram illustrating an example of an image output by the image composition processing unit.
  • FIG. 16 is a flowchart of a process procedure of the calibration apparatus according to the first embodiment.
  • FIG. 17 is a diagram for explaining marker division shooting.
  • FIG. 18 is a diagram for explaining the synthesis of the camera image.
  • FIG. 19 is a diagram illustrating the configuration of the calibration apparatus according to the second embodiment.
  • FIG. 20 is a diagram illustrating a hardware configuration of a computer configuring the calibration apparatus according to the embodiment.
  • 1 and 2 are diagrams for explaining camera installation parameters.
  • the installation positions of the cameras 10a to 10d are given by coordinates (x, y, z) in the vehicle coordinate system with the vehicle 1 as a reference.
  • the coordinates of the cameras 10a to 10d are known.
  • the camera position coordinates are referred to as camera position parameters.
  • the angle of the camera 10a is the rotation angle ⁇ around the optical axis of the camera 10a in the camera coordinate system based on the optical axis of the camera 10a.
  • the camera rotation angle ⁇ , rotation angle ⁇ , and rotation angle ⁇ are collectively referred to as camera angle parameters.
  • FIG. 5 is a diagram illustrating the configuration of the calibration apparatus 100 according to the first embodiment.
  • the calibration apparatus 100 includes a parameter storage unit 110, a frame buffer 120, a marker extraction unit 130, a marker position estimation unit 140, a camera angle parameter estimation unit 150, and an image composition processing unit. 160 and a display 170.
  • FIG. 6 is a diagram showing an example of the data structure of the camera position parameter 110a.
  • the camera position parameter 110a stores camera identification information and camera coordinates in association with each other.
  • the user measures the coordinates of the cameras 10a to 10d in advance, and stores the camera position parameter 110a in the parameter storage unit 110 using an input device (not shown).
  • FIG. 7 is a diagram illustrating an example of a data structure of the camera angle parameter 110b.
  • the camera angle parameter 110b stores camera identification information and rotation angles ⁇ , ⁇ , and ⁇ in association with each other.
  • the camera angle parameter 110b is calculated by the camera angle parameter estimation unit 150.
  • the camera angle parameter estimation unit 150 will be described later.
  • the frame buffer 120 is a storage unit that sequentially stores images taken by the cameras 10a to 10d.
  • FIG. 8 is a diagram illustrating an example of each image captured by the cameras 10a to 10d. As shown in the upper left of FIG. 8, the image captured by the camera 10a includes markers 20a and 20b. As shown in the upper right of FIG. 8, the image captured by the camera 10c includes the marker 20d. , 20e.
  • the image taken by the camera 10d includes a marker 20e, a marker 20f, and a marker 20a, and taken by the camera 10b as shown in the lower right of FIG.
  • the images include markers 20b, 20c, and 20d.
  • the marker extraction unit 130 is a processing unit that acquires image data captured by the cameras 10a to 10d from the frame buffer 120, extracts a marker included in the image, and specifies coordinates of the extracted marker on the image. Any conventional image processing technique may be used as a method for extracting a marker included in an image.
  • FIG. 9 is a diagram illustrating a marker extraction result of the marker extraction unit 130. If the image shown in FIG. 9 is taken by the camera 10b, the marker extraction unit 130 extracts the coordinates of the markers 20b, 20c, and 20d as P 1 , P 2 , and P 3 in the image coordinate axis system. The marker extraction unit 130 also specifies marker coordinates (coordinates in the image coordinate axis system) for images taken by the cameras 10a, 10c, and 10c. The marker extraction unit 130 outputs the coordinates of each identified marker to the marker position estimation unit 140.
  • an LED Light Emitting Diode
  • the marker extraction unit 130 may be provided with a function of collectively collecting blinking pixel sets as patterns as markers.
  • the marker extraction unit 130 may display an image on the display 170, and the marker may be notified to the marker extraction unit 130 when the user inputs the coordinates on the marker image using a pointing device.
  • the marker position estimation unit 140 calculates the coordinates of the markers 20a to 20f in the vehicle coordinate system based on the coordinates of the markers 20a to 20f (the coordinates of the image coordinate system) and the camera position parameter 110a (see FIG. 6). In addition, it is a processing unit that calculates the optical axis vector R and the vertical vector D of each of the cameras 10a to 10d in the vehicle coordinate system. By using the optical axis vector and the vertical vector, the camera angle parameters of the cameras 10a to 10d can be calculated.
  • the marker position estimation unit 140 compares the coordinates of the markers 20a to 20f (the coordinates of the image coordinate system) with the conversion table, and determines the line-of-sight vector of each coordinate.
  • the line-of-sight vector is a direction vector of a line segment connecting the optical center of the camera and the coordinates of the marker
  • the direction of the line-of-sight vector is the direction from the camera to the marker.
  • the conversion table is a table for converting coordinates on the image captured by the camera into a line-of-sight vector, and the relationship between each coordinate and the line-of-sight vector is calculated in advance from eigenvalues of the camera and the lens system.
  • This conversion table is held by the marker position estimation unit 140.
  • FIG. 10 is a diagram illustrating an example of the data structure of the conversion table.
  • the marker position estimation unit 140 calculates an angle between each line-of-sight vector in the camera coordinate system.
  • FIG. 11 is a diagram for explaining the calculation of the angle between each line-of-sight vector.
  • the markers are P 1 to P 3 (P 3 is a marker vertically below the camera), and the line-of-sight vector of each marker is v 1 to v 3 .
  • the angle between the line-of-sight vectors of the marker is arccos (v m ⁇ v n) ⁇ (1) Is calculated by Note that “ ⁇ ” included in Equation 1 is an inner product of vectors.
  • Equation 1 the angle ⁇ ( ⁇ P 1 0P 2 ) formed by P 1 and P 2 in the camera coordinate system, and the angle formed by P 1 and P 3 are ⁇ A ( ⁇ P 1 0P 3 ),
  • the angle formed by P 2 and P 3 is calculated from ⁇ B ( ⁇ ⁇ P 2 0P 3 ) from images taken by the cameras 10d and 10b. Note that the image captured camera 10a, by 10c, since the marker P 3 is absent, is calculated only the angle ⁇ formed by the P 1 and P 2.
  • angles ⁇ A and ⁇ B corresponding to the camera 10b are ⁇ 2A and ⁇ 2B
  • angles ⁇ A and ⁇ B corresponding to the camera 10d are ⁇ 4A and ⁇ 4B .
  • the marker position estimation unit 140 uses F (M 1 , M 2 , M 3 , M 4 ) as an evaluation function.
  • F (M 1 , M 2 , M 3 , M 4 ) as an evaluation function.
  • the markers 20a to 20f are arranged on the ground, the z components of M 1 to M 4 , N 2 , and N 4 are “0”.
  • FIG. 12 is a diagram showing the coordinates C 1 to C 4 of the cameras 10a to 10d and the coordinates M 1 to M 4 , N 2 , and N 4 of the markers 20a to 20f in the vehicle coordinate system.
  • the marker position estimation unit 140 calculates M 1 to M 4 that minimize the value of the evaluation function F (M 1 , M 2 , M 3 , M 4 ) shown in Equation 2. For example, the marker position estimation unit 140 gives initial values to M 1 to M 4 , and uses the steepest descent method that is a well-known technique, so that the value of the evaluation function F (M 1 , M 2 , M 3 , M 4 ). M 1 to M 4 are calculated by determining M 1 to M 4 that becomes 0 (or close to 0 as much as possible). Note that the values of the coordinates C 1 to C 4 and the values of N 2 and N 4 of the cameras 10a to 10d included in Expression 2 are known, and the value of the camera position parameter 110a is used.
  • the marker position estimation unit 140 outputs information on the coordinates M 1 to M 4 of the markers 20a to 20f in the vehicle coordinate system to the camera angle parameter estimation unit 150.
  • Camera angle parameter estimation unit 150 obtains the coordinates M 1 ⁇ M 4 markers 20a ⁇ 20f, based on the coordinates M 1 ⁇ M 4 obtained is the processing unit that calculates a camera angle parameters of the camera 10a ⁇ 10d .
  • the processing of the camera angle parameter estimation unit 150 will be specifically described.
  • FIGS. 13 and 14 are diagrams for explaining the processing of the camera angle parameter estimation unit 150.
  • the optical axis vectors R 1 to R 4 correspond to the optical axis vectors of the cameras 10a to 10d, respectively, and the vertical vectors d 1 to d 4 correspond to the vertical vectors of the cameras 10a to 10d, respectively.
  • ⁇ 2A indicates the angle formed by the vector from the camera 10b toward the coordinate M 2 and the optical axis vector R n
  • ⁇ 2B is determined from the camera 10b to the coordinate M 3 .
  • a vector from the camera to the marker coordinates in the vehicle coordinate system is converted from the marker coordinates in the vehicle coordinate system using a conversion table or the like.
  • Gamma nA vehicle coordinate system, ⁇ nB, ⁇ nA, ⁇ nB is, gamma nA of the camera coordinate system, ⁇ nB, ⁇ nA, it becomes equal to the beta nB.
  • ⁇ 2A, ⁇ 2B in FIG. 13 ⁇ 2A, ⁇ 2B is, gamma 2A of FIG. 14, ⁇ 2B, ⁇ 2A, a value equal to the beta 2B.
  • the camera angle parameter estimation unit 150 calculates the optical axis vector R 2 and the vertical vector d 2 of the camera 10b will be described as an example.
  • the camera angle parameter estimation unit 150 uses the optical axis vector r 2 to ⁇ 2A and ⁇ 2B are calculated from the line-of-sight vector. Since the calculated ⁇ 2A and ⁇ 2B are also established in the vehicle coordinate system shown in FIG. 13, the direction vector of the markers M 2 and M 2 from the lens of the camera 10b and the vector having an angular relationship between ⁇ 2A and ⁇ 2B . , to select the appropriate ones as R 2. In general, there are two vectors that satisfy the angular relationship, but they can be uniquely determined from the relationship between the camera and the road surface.
  • the camera angle parameter estimation unit 150 uses Equation 1 to calculate the vertical vector D and the direction vector ( ⁇ 2A and ⁇ 2B are calculated from the direction vector of the marker M 2 from the lens of the camera 10d and the direction vector of the marker M 3 from the lens of the camera 10d. Since the calculated ⁇ 2A and ⁇ 2B are also established in the camera coordinate system shown in FIG. 14, a vector having an angular relationship with the line-of-sight vector is selected as d 2 .
  • the image composition processing unit 160 is a processing unit that acquires images captured by the cameras 10 a to 10 d from the frame buffer 120, combines the acquired images, and outputs a composite image to the display 170.
  • FIG. 15 is a diagram illustrating an example of an image output by the image composition processing unit 160.
  • the image composition processing unit 160 tilts the image displayed on the display as shown in the upper part of FIG. When there is an error in the rotation angle ⁇ ).
  • the marker position estimation unit 140 converts the marker position of the camera image into a line-of-sight vector (step S103), calculates an angle formed between the line-of-sight vectors (step S104), and uses a marker function M 1 in the vehicle coordinate system using the evaluation function. calculating a ⁇ M 4 (step S105).
  • FIG. 17 is a view for explaining marker division shooting.
  • the calibration apparatus photographs each marker in the order of the areas (1) to (4).
  • the markers 20a to 20f are arranged at the time when the corresponding area is shot. That is, when photographing the area (1), it is not necessary to place a jig in the areas (2) to (3).
  • the calibration apparatus images the area (1) using the cameras 10a and 10d.
  • the marker 20a is arranged in the area (1), and the marker 20a is photographed by the cameras 10a and 10d.
  • the calibration apparatus photographs the area (3) using the cameras 10b and 10c.
  • the markers 20c and 20d are arranged in the area (3), the marker 20c is photographed by the camera 10b, and the marker 20d is photographed by the camera 10c.
  • the calibration apparatus photographs the area (4) using the cameras 10c and 10d.
  • the markers 20e and 20f are arranged in the area (4), the marker 20e is photographed by the cameras 10c and 10d, and the marker 20f is photographed by the camera 10d.
  • the calibration device synthesizes the camera image for each area shown in FIG.
  • FIG. 18 is a diagram for explaining the synthesis of the camera image.
  • the image shown in the upper left of FIG. 18 is an image in which the camera 10a combines an image obtained by photographing the marker 20a in the region (1) and an image obtained by photographing the marker 20b in the region (2).
  • the same image as that obtained when the marker 20a in the region (1) and the marker 20b in the region (2) are simultaneously photographed can be obtained as in the first embodiment.
  • the image shown in the upper right of FIG. 18 is an image in which the camera 10c combines the image obtained by photographing the marker 20d in the region (3) and the image obtained by photographing the marker 20e in the region (4).
  • the same image as when the marker 20d in the region (3) and the marker 20e in the region (4) are simultaneously photographed can be obtained.
  • the image shown in the lower right of FIG. 18 is an image in which the camera 10b combines an image obtained by photographing the marker 20b in the region (2) and an image obtained by photographing the marker 20c and the marker 20d in the region (3).
  • the same image as when the marker 20b in the region (2) and the markers 20c and 20d in the region (3) are simultaneously photographed can be obtained.
  • the image shown in the lower left of FIG. 18 is an image in which the camera 10d combines an image obtained by photographing the marker 20a in the region (1) and an image obtained by photographing the marker 20e and the marker 20f in the region (4).
  • the same image as when the marker 20a in the region (1) and the markers 20e and 20f in the region (4) are simultaneously photographed can be obtained.
  • the calibration apparatus calculates camera angle parameters of the cameras 10a to 10d in the same manner as in the first embodiment.
  • the calibration apparatus according to the second embodiment suffices to capture images in the order of the areas (1) to (4), so that the space required for camera calibration can be further reduced.
  • FIG. 19 is a diagram illustrating the configuration of the calibration apparatus according to the second embodiment. As shown in FIG. 19, a composition processing device 200 is disposed between the cameras 10a to 10d and the calibration device 100. The configuration of the calibration apparatus 100 is the same as that of the calibration apparatus 100 shown in FIG.
  • the composition processing device 200 is a device that synthesizes images taken at different times by the cameras 10a to 10d, and includes subframe buffers 200a to 200h and composition units 210a to 210d.
  • the synthesis processing unit 200 is synchronized by the synchronization control unit 220.
  • the subframe buffer 200a is a storage unit that stores a left half image (an image including the marker 20a in the area (1)) captured by the camera 10a, and the subframe buffer 200b is a right half image captured by the camera 10a. It is a storage unit for storing an image (an image including the marker 20b in the area (2)).
  • the subframe buffer 200c is a storage unit that stores a left half image (an image including the marker 20b in the area (2)) captured by the camera 10b, and the subframe buffer 200d is a right half image captured by the camera 10b. It is a storage unit for storing an image (an image including the markers 20c and 20d in the area (3)).
  • the subframe buffer 200e is a storage unit that stores a left half image (an image including the marker 20d in the region (3)) captured by the camera 10c, and the subframe buffer 200f is a right half image captured by the camera 10c. It is a storage unit for storing an image (an image including the marker 20e in the region (4)).
  • the subframe buffer 200g is a storage unit that stores a left half image (an image including the markers 20e and 20f in the region (4)) captured by the camera 10d, and the subframe buffer 200h is a right image captured by the camera 10d. It is a storage unit for storing a half image (an image including the marker 20a in the region (1)).
  • the synthesizing unit 210a is a processing unit that synthesizes images stored in the subframe buffers 200a and 200b.
  • the image synthesized by the synthesis unit 210a corresponds to, for example, the upper left image in FIG.
  • the combining unit 210a stores the combined image in the frame buffer 120 of the calibration apparatus 100.
  • the combining unit 210b is a processing unit that combines the images stored in the subframe buffers 200c and 200d.
  • the image synthesized by the synthesis unit 210b corresponds to, for example, the lower right image in FIG.
  • the combining unit 210 b stores the combined image in the frame buffer 120 of the calibration apparatus 100.
  • the combining unit 210c is a processing unit that combines the images stored in the subframe buffers 200e and 200f.
  • the image synthesized by the synthesis unit 210c corresponds to, for example, the upper right image in FIG.
  • the combining unit 210c stores the combined image in the frame buffer 120 of the calibration apparatus 100.
  • the combining unit 210d is a processing unit that combines the images stored in the subframe buffers 200g and 200h.
  • the image synthesized by the synthesis unit 210d corresponds to, for example, the lower left image in FIG.
  • the combining unit 210d stores the combined image in the frame buffer 120 of the calibration apparatus 100.
  • each component of each illustrated apparatus is functionally conceptual and does not necessarily need to be physically configured as illustrated.
  • the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured.
  • all or any part of each processing function performed in each device may be realized by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by wired logic.
  • FIG. 20 is a diagram illustrating a hardware configuration of a computer constituting the calibration apparatus 100 according to the embodiment.
  • the computer (calibration device) 30 includes an input device 31, a display 32, a RAM (Random Access Memory) 33, a ROM (Read Only Memory) 34, and a medium reading device 35 that reads data from a storage medium.
  • a camera 36, a CPU (Central Processing Unit) 37, and an HDD (Hard Disk Drive) 38 are connected by a bus 39. It is assumed that the computer 30 has a camera in addition to the camera 36.
  • the HDD 38 stores a calibration program 38b and an image composition program 38c that exhibit functions similar to the functions of the calibration device 100 described above.
  • the CPU 37 reads out and executes the calibration program 38b and the image composition program 38c, thereby starting the calibration process 37a and the image composition process 37b.
  • the calibration process 37 a corresponds to the marker extraction unit 130, the marker position estimation unit 140, and the camera angle parameter estimation unit 150 shown in FIG. 5, and the image synthesis process 37 b corresponds to the image synthesis processing unit 160. .
  • the HDD 38 stores a camera position parameter 38 a corresponding to information stored in the parameter storage unit 110.
  • the CPU 37 reads out the camera position parameter 38a stored in the HDD 38, stores it in the RAM 33, calculates the camera angle parameter using the camera position parameter 33a stored in the RAM 33 and the image taken by the camera 36, and calculates it. Each image is synthesized using the camera angle parameter and the camera position parameter 38b.
  • the calibration program 38b and the image composition program 38c shown in FIG. 20 are not necessarily stored in the HDD 38 from the beginning.
  • a “portable physical medium” such as a flexible disk (FD), a CD-ROM, a DVD disk, a magneto-optical disk, or an IC card inserted into a computer, or a hard disk drive (HDD) provided inside or outside the computer.
  • the calibration program 38b and the image composition program 38c are connected to the “fixed physical medium” and “other computer (or server)” connected to the computer via the public line, the Internet, LAN, WAN, etc.
  • the computer may read out and execute the calibration program 38b and the image composition program 38c from these.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Abstract

 カメラ(10a)とカメラ(10d)との視野が重複する領域にマーカを配置し、カメラ(10a)とカメラ(10b)との視野が重複する領域にマーカを配置し、カメラ(10b)の鉛直下にマーカを配置する。また、カメラ(10b)とカメラ(10c)との視野が重複する領域にマーカを配置し、カメラ(10c)とカメラ(10d)との視野が重複する領域にマーカを配置し、カメラ(10d)の鉛直下にマーカを配置する。そして、キャリブレーション装置(100)は、上記条件で配置されたマーカをカメラ(10a~10d)で撮影し、撮影した画像内のマーカ座標に基づいて、カメラ角度パラメータを算出する。

Description

カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム
 この発明は、移動体に取り付けられたカメラの設置パラメータを算出するカメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラムに関する。
 近年、移動体に取り付けた複数のカメラを用いて移動体の周囲の画像を撮影し、撮影した各画像を鳥瞰図あるいは360°パノラマなどに合成して表示する画像表示装置が普及している。この画像表示装置としては、自動車向けの駐車支援装置(アラウンドビューモニタ)等がある。
 なお、この画像表示装置がカメラの撮影した各画像を合成する場合には、各カメラの設置パラメータが必要となる。カメラの設置パラメータには、車両座標系に対する位置(X座標、Y座標、Z座標)および角度(ロール角、ピッチー角、ヨー角)等が含まれる。
 この設置パラメータのうち、位置に関してはそれほど厳密に求める必要はない(ユーザが計測した初期値を用いればよい)が、角度に関しては、微小な誤差でも最終的な合成画像に与える影響が大きいため、車両に設置したカメラに対するキャリブレーションを実行して、正確なカメラの角度を算出する必要がある。
 上述したカメラの角度を算出する技術に関して、各種の技術が提案されている。例えば、形状が既知のキャリブレーション冶具(校正パターン)を路面上、かつ各カメラの視野のオーバーラップ部分(各カメラの共通撮影領域)の任意の場所に1個ずつ配置し、校正パターンの形状条件に基づいてカメラの設置パラメータを算出する技術が知られている(例えば、特許文献1参照)。この技術で用いられるキャリブレーション冶具は、正方形形状を有し、正方形の一辺は、1m~1.5m程度であり、冶具上の4頂点にそれぞれマーカを有している。
 また、予め、所定の方法でカメラの設置パラメータをいくつか算出しておき、1点の特徴点からなる小型のキャリブレーション冶具を各カメラの共通撮影領域に2個ずつ配置して、1カメラあたり4個のマーカを撮影する条件のもとで、残りの設置パラメータを算出する技術も知られている(例えば、特許文献2参照)。
特開2008-187566号公報 特開2008-187564号公報
 しかしながら、上述した従来の技術では、狭い空間でカメラのキャリブレーションを実行することができないという問題があった。
 例えば、正方形形状の校正パターンを配置してカメラのキャリブレーションを実行する場合には、サイズが1辺1m~1.5m程度の校正パターンを共通撮影領域に2個以上配置する必要があるため、カメラの設置パラメータを算出するためには、車両設置スペースに加えて、車両周囲にそれぞれ2m~3mの空間が必要になる。
 また、小型のキャリブレーション冶具を配置してカメラのキャリブレーションを実行する場合であっても、各カメラの共通撮影領域に、ある程度の間隔をあけて2個のキャリブレーション冶具を配置する必要があるので、結果的に狭い空間でカメラのキャリブレーションを実行することができなくなる。また、かかる技術では、予め、別の方法で設置パラメータの一部を算出しておく必要があり、単独でカメラの設置パラメータを全て算出することが出来ない。
 すなわち、狭い空間であってもカメラのキャリブレーションを実行可能で、正確にカメラの設置パラメータを求めることが重要な課題となっている。
 そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、狭い空間であってもカメラのキャリブレーションを実行可能で、正確にカメラの設置パラメータを求めることが出来るカメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラムを提供することを目的とする。
 上述した課題を解決し、目的を達成するため、このカメラ角度算出装置は、隣接するカメラの撮影範囲が重なる領域に設置された第1の冶具と、カメラの鉛直下に設置された第2の冶具とを含む画像を取得する画像取得手段と、前記画像取得手段が取得した画像中に含まれる前記第1の冶具および第2の冶具の座標に基づいて前記カメラの角度を算出する角度算出手段とを有することを要件とする。
 このカメラ角度算出装置によれば、隣接するカメラの撮影範囲が重なる領域に設置された第1の冶具と、カメラの鉛直下に設置された第2の冶具とを含む画像を取得し、取得した画像中に含まれる第1の冶具および第2の冶具の座標に基づいてカメラの角度を算出するので、カメラのキャリブレーションを実行する場所を縮小化することが出来ると共に、正確にカメラ角度パラメータを算出することができる。
図1は、カメラの設置パラメータを説明するための図(1)である。 図2は、カメラの設置パラメータを説明するための図(2)である。 図3は、車両に配置されたカメラとマーカとの位置関係を説明するための図である。 図4は、車両に配置されたカメラとマーカとの位置関係を斜めから示した図である。 図5は、本実施例1にかかるキャリブレーション装置の構成を示す図である。 図6は、カメラ位置パラメータのデータ構造の一例を示す図である。 図7は、カメラ角度パラメータのデータ構造の一例を示す図である。 図8は、カメラによって撮影される各画像の一例を示す図である。 図9は、マーカ抽出部のマーカ抽出結果を示す図である。 図10は、変換テーブルのデータ構造の一例を示す図である。 図11は、各視線ベクトルの間の角度の算出を説明するための図である。 図12は、車両座標系におけるカメラの座標およびマーカの座標を示す図である。 図13は、カメラ角度パラメータ推定部の処理を説明するための図(1)である。 図14は、カメラ角度パラメータ推定部の処理を説明するための図(2)である。 図15は、画像合成処理部が出力した画像の一例を示す図である。 図16は、本実施例1にかかるキャリブレーション装置の処理手順を示すフローチャートである。 図17は、マーカの分割撮影を説明するための図である。 図18は、カメラ画像の合成を説明するための図である。 図19は、本実施例2にかかるキャリブレーション装置の構成を示す図である。 図20は、実施例にかかるキャリブレーション装置を構成するコンピュータのハードウェア構成を示す図である。
符号の説明
  1  車両
 10a,10b,10c,10d,36 カメラ
 20a,20b,20c,20d,20e,20f マーカ
 30  コンピュータ
 31  入力装置
 32,170  ディスプレイ
 33  RAM
 33a カメラ位置パラメータ
 34  ROM
 35  媒体読取装置
 37  CPU
 37a キャリブレーションプロセス
 37b 画像合成プロセス
 38  HDD
 38a カメラ位置パラメータ
 38b キャリブレーションプログラム
 39  バス
100  キャリブレーション装置
110  パラメータ格納部
110a カメラ位置パラメータ
110b カメラ角度パラメータ
120  フレームバッファ
130  マーカ抽出部
140  マーカ位置推定部
150  カメラ角度パラメータ推定部
160  画像合成処理部
200  合成処理装置
200a,200b,200c,200d,200e,200f,200g,200h サブフレームバッファ
210a,210b,210c,200d 合成部
220  同期制御部
 以下に添付図面を参照して、この発明に係るカメラ角度算出装置の実施例を詳細に説明する。なお、以下に説明する実施例では、カメラ角度算出装置の一例として、キャリブレーション装置を用いて説明する。なお、この実施例により本願発明が限定されるものではない。
 本実施例1にかかるキャリブレーション装置は、車両に設置されたカメラの設置パラメータを算出する場合に、隣接するカメラの撮影範囲が重複する領域に設置されたマーカ(キャリブレーション冶具;以下同様)と、カメラの鉛直下に配置されたマーカとを含む画像を用いることで、カメラ配置に必要な領域の縮小化を可能にすると共に、正確な設置パラメータを算出することを可能にする。
 ここで、カメラの設置パラメータについて説明する。図1および図2は、カメラの設置パラメータを説明するための図である。図1に示すように、カメラ10a~10dの設置パラメータのうち、カメラ10a~10dの設置位置は、車両1を基準とした車両座標系において、座標(x,y,z)で与えられる。なお、本実施例では、カメラ10a~10dの座標を既知とする。以下の説明において、カメラの位置座標をカメラ位置パラメータと表記する。
 図2に示すように、カメラ10a(10b~10d)の設置パラメータのうち、カメラ10aの角度は、カメラ10aの光軸を基準としたカメラ座標系において、カメラ10aの光軸周りの回転角φ、カメラの光軸の水平線方向に対する回転角ψ、地面垂直軸まわりの回転角θで与えられる。以下の説明において、カメラの回転角φ、回転角ψ、回転角θをまとめて、カメラ角度パラメータと表記する。
 次に、車両1に設置されたカメラ10a~10dとマーカとの位置関係について説明する。図3は、車両に配置されたカメラとマーカとの位置関係を説明するための図であり、図4は、車両に配置されたカメラとマーカとの位置関係を斜めから示した図である。
 図3に示すように、カメラ10aとカメラ10dとの視野(撮影範囲;以下同様)が重複する領域にマーカ20aが配置されており、カメラ10aとカメラ10bとの視野が重複する領域にマーカ20bが配置されている。そして、カメラ10bの鉛直下(カメラ10bの光学中心<レンズ位置>の鉛直下方向)にマーカ20cが配置されている(図4参照)。
 また、図3に示すように、カメラ10bとカメラ10cとの視野が重複する領域にマーカ20dが配置されており、カメラ10cとカメラ10dとの視野が重複する領域にマーカ20eが配置されている。そして、カメラ10dの鉛直下(カメラ10dの光学中心<レンズ位置>の鉛直下方向)にマーカ20fが配置されている。なお、車両1、マーカ20a~20fは、水平な平面上に配置されているものとする。
 次に、本実施例1にかかるキャリブレーション装置100の構成について説明する。このキャリブレーション装置100は、例えば、車両1内に設置され、カメラ10a~10dに対するカメラ角度パラメータを算出するものとする。図5は、本実施例1にかかるキャリブレーション装置100の構成を示す図である。図5に示すように、このキャリブレーション装置100は、パラメータ格納部110と、フレームバッファ120と、マーカ抽出部130と、マーカ位置推定部140と、カメラ角度パラメータ推定部150と、画像合成処理部160と、ディスプレイ170とを有する。
 このうち、パラメータ格納部110は、キャリブレーション実行時に用いられる各種のデータを記憶する記憶部であり、特に本発明に密接に関連するものとして、カメラ位置パラメータ110aと、カメラ角度パラメータ110bとを格納する。
 図6は、カメラ位置パラメータ110aのデータ構造の一例を示す図である。図6に示すように、このカメラ位置パラメータ110aは、カメラ識別情報と、カメラの座標とを対応付けて記憶している。例えば、ユーザは、カメラ10a~10dの座標を予め計測し、入力装置(図示略)を用いて、パラメータ格納部110にカメラ位置パラメータ110aを格納させる。
 図7は、カメラ角度パラメータ110bのデータ構造の一例を示す図である。図7に示すように、このカメラ角度パラメータ110bは、カメラ識別情報と、回転角φ、ψ、θとを対応付けて記憶している。このカメラ角度パラメータ110bは、カメラ角度パラメータ推定部150によって算出される。カメラ角度パラメータ推定部150の説明は後述する。
 フレームバッファ120は、カメラ10a~10dが撮影した画像を順次記憶する記憶部である。図8は、カメラ10a~10dによって撮影される各画像の一例を示す図である。図8の左上に示すように、カメラ10aによって撮影された画像には、マーカ20a、20bが含まれており、図8の右上に示すように、カメラ10cに撮影された画像には、マーカ20d、20eが含まれている。
 また、図8の左下に示すように、カメラ10dによって撮影された画像には、マーカ20e、マーカ20f、マーカ20aが含まれており、図8の右下に示すように、カメラ10bに撮影された画像には、マーカ20b、20c、20dが含まれている。
 マーカ抽出部130は、カメラ10a~10dが撮影した画像データをフレームバッファ120から取得し、画像中に含まれるマーカを抽出し、抽出したマーカの画像上の座標を特定する処理部である。画像中に含まれるマーカを抽出する手法はいかなる従来の画像処理技術を用いても構わない。
 図9は、マーカ抽出部130のマーカ抽出結果を示す図である。図9に示す画像が、カメラ10bによって撮影されたものとすると、マーカ抽出部130は、画像座標軸系において、マーカ20b、20c、20dの座標を、P、P、Pとして抽出する。マーカ抽出部130は、カメラ10a、10c、10cの撮影した画像に対してもマーカの座標(画像座標軸系の座標)を特定する。マーカ抽出部130は、特定した各マーカの座標をマーカ位置推定部140に出力する。
 なお、マーカ抽出部130がマーカの位置を抽出する場合に、抽出が容易となるように発光/点滅するLED(Light Emitting Diode)等をマーカとして配置してもよく、その際、近傍に同一発光パターンとなる点滅画素集合をまとめてマーカとして認識する機能をマーカ抽出部130に設けてもよい。あるいは、マーカ抽出部130が、画像をディスプレイ170に表示し、ユーザがポインティングデバイスを用いてマーカの画像上の座標を入力することで、マーカ抽出部130にマーカの座標を通知してもよい。
 マーカ位置推定部140は、マーカ20a~20fの座標(画像座標系の座標)と、カメラ位置パラメータ110a(図6参照)とを基にして、車両座標系におけるマーカ20a~20fの座標を算出すると共に、車両座標系における各カメラ10a~10dの光軸ベクトルRと、鉛直ベクトルDを算出する処理部である。かかる光軸ベクトルおよび鉛直ベクトルを用いることで、カメラ10a~10dのカメラ角度パラメータを算出することができる。
 具体的に、マーカ位置推定部140の処理を説明する。まず、マーカ位置推定部140は、マーカ20a~20fの座標(画像座標系の座標)と、変換テーブルとを比較して、各座標の視線ベクトルを判定する。ここで、視線ベクトルは、カメラの光学中心とマーカの座標とを結んだ線分の方向ベクトルであり、視線ベクトルの向きは、カメラからマーカへの向きとなる。
 また、変換テーブルは、カメラの撮影した画像上の座標を視線ベクトルに変換するためのテーブルであり、各座標と視線ベクトルとの関係は、カメラとレンズ系との固有値から予め算出されている。この変換テーブルは、マーカ位置推定部140が保持しているものとする。図10は、変換テーブルのデータ構造の一例を示す図である。
 次に、マーカ位置推定部140は、カメラ座標系において、各視線ベクトルの間の角度を算出する。図11は、各視線ベクトルの間の角度の算出を説明するための図である。ここでは一例として、マーカをP~P(Pは、カメラ鉛直下方のマーカ)とし、各マーカの視線ベクトルをv~vとする。このとき、マーカの視線ベクトル間の成す角度は
arccos(v・v)・・・(1)
によって算出される。なお、式1に含まれる「・」は、ベクトルの内積である。
 式1を用いることで、カメラ座標系でのPとPとが成す角度α(∠P0P)、PとPとが成す角度をβ(∠P0P)、PとPとが成す角度をβ(∠P0P)が、カメラ10d、カメラ10bによって撮影した画像から算出される。なお、カメラ10a、10cによって撮影される画像には、マーカPが存在しないので、PとPとが成す角度αのみ算出される。
 以下の説明において、カメラ10aに対応する角度αをα、カメラ10bに対応する角度αをα、カメラ10cに対応する角度αをα、カメラ10dに対応する角度αをαとする。また、カメラ10bに対応する角度β、βをβ2A、β2Bとし、カメラ10dに対応する角度β、βをβ4A、β4Bとする。
 次に、マーカ位置推定部140は、評価関数となる
F(M,M,M,M
=(α-∠M+(α-∠M+(α-∠M+(α-∠M++K{(β2A-∠M+(β2B-∠M+(β4A-∠M+(β4B-∠M・・・(2)
を用いて、車両座標軸上におけるマーカ20a~20fの座標M~Mを求める。
 式2において、Mは、車両座標系におけるマーカ20aの座標であり、M=(m1x,m1y,0)とする。Mは、車両座標系におけるマーカ20bの座標であり、M=(m2x,m2y,0)とする。Mは、車両座標系におけるマーカ20dの座標であり、M=(m3x,m3y,0)とする。Mは、車両座標系におけるマーカ20eの座標であり、M=(m4x,m4y,0)とする。
 また、式2において、Nは、車両座標系におけるマーカ20cの座標であり、N=(c2x,c2y,0)とする。Nは、車両座標系におけるマーカ20fの座標であり、N=(c4x,c4y,0)とする。ここで、マーカ20a~20fは、地面に配置されているため、M~M、N、Nのz成分は「0」となっている。
 また、式2において、Cは、車両座標系におけるカメラ10aの座標であり、C=(c1x,c1y,c1z)とする。Cは、車両座標系におけるカメラ10bの座標であり、C=(c2x,c2y,c2z)とする。Cは、車両座標系におけるカメラ10cの座標であり、C=(c3x,c3y,c3z)とする。Cは、車両座標系におけるカメラ10dの座標であり、C=(c4x,c4y,c4z)とする。
 ここで、カメラ10bの鉛直下にマーカ20cが配置されているので、CとNとのx、y成分は等しくなり、カメラ10dの鉛直下にマーカ20fが配置されているので、CとNとのx、y成分は等しくなる。なお、式2に含まれるKは定数である。図12は、車両座標系におけるカメラ10a~10dの座標C~Cおよびマーカ20a~20fの座標M~M、N、Nを示す図である。
 マーカ位置推定部140は、式2に示した評価関数F(M,M,M,M)の値が最小になるM~Mを算出する。例えば、マーカ位置推定部140は、M~Mに初期値を与え、周知技術である最急降下法を用いることで、評価関数F(M,M,M,M)の値が0となる(あるいは、0に限りなく近くなる)M~Mを判定することで、M~Mを算出する。なお、式2に含まれるカメラ10a~10dの座標C~Cの値およびN、Nの値は既知であり、カメラ位置パラメータ110aの値を使用する。
 マーカ位置推定部140は、車両座標系におけるマーカ20a~20fの座標M~Mの情報をカメラ角度パラメータ推定部150に出力する。
 カメラ角度パラメータ推定部150は、マーカ20a~20fの座標M~Mを取得し、取得した座標M~Mに基づいて、カメラ10a~10dのカメラ角度パラメータを算出する処理部である。以下において、カメラ角度パラメータ推定部150の処理を具体的に説明する。
 図13および図14は、カメラ角度パラメータ推定部150の処理を説明するための図である。まず、カメラ角度パラメータ推定部150は、カメラ10a~10dの座標M~Mを基にして、車両座標系でのカメラの光軸ベクトルR(n=1,2,3,4;図13参照)と、カメラ座標系における鉛直ベクトルd(n=1,2,3,4;図14参照)を算出する。光軸ベクトルR~Rはカメラ10a~10dの光軸ベクトルにそれぞれ対応し、鉛直ベクトルd~dは、カメラ10a~10dの鉛直ベクトルにそれぞれ対応する。
 図13において、D(n=1,2,3,4)は、車両座標系における鉛直ベクトルを示す。γnA(n=1,2,3,4)は、カメラからマーカの座標に向かうベクトルと、光軸ベクトルRとの成す角度を示し、γnB(n=1,2,3,4)は、カメラからマーカの座標に向かうベクトルと、光軸ベクトルRとの成す角度を示す。例えば、図13において、カメラ10bに着目すると、γ2Aは、カメラ10bから座標Mに向かうベクトルと、光軸ベクトルRとの成す角度を示し、γ2Bは、カメラ10bから座標Mに向かうベクトルと、光軸ベクトルRとの成す角度を示す。
 また、図13において、βnA(n=1,2,3,4)は、カメラからマーカの座標に向かうベクトルと、鉛直ベクトルdとの成す角度を示し、βnB(n=1,2,3,4)は、カメラからマーカの座標に向かうベクトルと、鉛直ベクトルdとの成す角度を示す。例えば、図13において、カメラ10bに着目すると、β2Aは、カメラ10bから座標Mに向かうベクトルと、鉛直ベクトルDとの成す角度を示し、β2Aは、カメラ10bから座標Mに向かうベクトルと、鉛直ベクトルDとの成す角度を示す。
 なお、図13において、車両座標系におけるカメラからマーカの座標に向かうベクトルは、変換テーブル等を用いて、車両座標系におけるマーカの座標から変換される。
 図14において、r(n=1,2,3,4)は、カメラ座標系でのカメラの光軸ベクトルを示し、γnA(n=1,2,3,4)は、視線ベクトルvと、光軸ベクトルrとの成す角度を示し、γnB(n=1,2,3,4)は、視線ベクトルvと、光軸ベクトルrとの成す角度を示す。βnA(n=1,2,3,4)は、視線ベクトルvと、鉛直ベクトルdとの成す角度を示し、βnB(n=1,2,3,4)は、視線ベクトルvと、鉛直ベクトルdとの成す角度を示す。
 車両座標軸系のγnA、γnB、βnA、βnBは、カメラ座標系のγnA、γnB、βnA、βnBと等しい値なる。例えば、図13のγ2A、γ2B、β2A、β2Bは、図14のγ2A、γ2B、β2A、β2Bと等しい値となる。以下では、カメラ角度パラメータ推定部150が、カメラ10bの光軸ベクトルR、鉛直ベクトルdを算出する場合を例にして説明する。
 図14において、カメラ座標系の光軸ベクトルはr=(0,0,-1)で既知であるため、カメラ角度パラメータ推定部150は、式1を利用して、光軸ベクトルrと視線ベクトルとからγ2A、γ2Bを算出する。算出したγ2A、γ2Bは、図13に示した車両座標系でも成立するので、カメラ10bのレンズからマーカM、Mの方向ベクトルとγ2A、γ2Bの角度関係をもつベクトルの内、適切なものをRとして選択する。一般に角度関係を満たすベクトルは2つあるが、カメラと路面との関係から一意に決定することが出来る。
 図13において、車両座標系の鉛直ベクトルはD=(0,0,-1)で既知であるため、カメラ角度パラメータ推定部150は、式1を利用して、鉛直ベクトルDと方向ベクトル(カメラ10dのレンズからマーカMの方向ベクトルおよびカメラ10dのレンズからマーカMの方向ベクトル)とからβ2A、β2Bを算出する。算出したβ2A、β2Bは、図14に示したカメラ座標系でも成立するので、視線ベクトルとの角度関係をもつベクトルをdとして選択する。
 カメラ角度パラメータ推定部150は、図13および図14に示した手法を用いて、カメラ10a~カメラ10dの光軸ベクトルR(n=1,2,3,4)と鉛直ベクトルd(n=1,2,3,4)を算出する。なお、カメラ10b、10dのように、直下にマーカが配置されているケースでは、鉛直ベクトルdは、直下に配置されたマーカに対する視線ベクトルと同一となるので、必ずしも上記手法によって算出する必要はない。
 カメラ角度パラメータ推定部150は、カメラ10a~10dの光軸ベクトルRと鉛直ベクトルdとを算出した後に、
θ=arctan2(-Rnx,Rny)・・・(3)
ψ=π/2-arccos((0,0,-1)・R)・・・(4)
φ=-arctan2(dnx,-dny)・・・(5)
を用いて、カメラ角度パラメータを算出する。カメラ角度パラメータ推定部150は、カメラ角度パラメータを算出した後に、カメラ角度パラメータをパラメータ格納部110に格納する。
 画像合成処理部160は、カメラ10a~10dの撮影した画像をフレームバッファ120から取得し、取得した各画像を合成して合成画像をディスプレイ170に出力する処理部である。図15は、画像合成処理部160が出力した画像の一例を示す図である。画像合成処理部160は、カメラ角度パラメータの初期値をそのまま利用して、各画像を合成した場合には、図15の上段に示すように、ディスプレイに表示される画像が傾いてしまう(例えば、回転角φに誤差が発生している場合)。
 そこで、画像合成処理部160は、パラメータ格納部110に格納されたカメラ角度パラメータ110bを基にして、カメラ角度パラメータの誤差を補正し、各画像を合成することで、図15の下段に示すように、合成画像を適切に表示させることが出来る。
 次に、本実施例1にかかるキャリブレーション装置100の処理手順について説明する。図16は、本実施例1にかかるキャリブレーション装置100の処理手順を示すフローチャートである。図16に示すように、キャリブレーション装置100は、マーカ抽出部130が、各カメラ10a~10dの撮影した画像データを取得し(ステップS101)、画像内のマーカの位置を抽出する(ステップS102)。
 マーカ位置推定部140は、カメラ画像のマーカ位置を視線ベクトルに変換し(ステップS103)、視線ベクトル間が成す角度を算出し(ステップS104)、評価関数を用いて車両座標系のマーカ位置M~Mを算出する(ステップS105)。
 そして、カメラ角度パラメータ推定部150は、車両座標軸系のマーカ位置M~Mに基づいて、車両座標系の光軸ベクトルと、カメラ座標系の鉛直ベクトルとを算出し(ステップS106)、カメラ角度パラメータ110bを算出する(ステップS107)。
 上述してきたように、本実施例1にかかるキャリブレーション装置100は、隣接するカメラの撮影範囲が重複する領域に設置されたマーカ20a,20b,20d,20eと、カメラの鉛直下に配置されたマーカ20c,20fとを含む画像を用いることで、車両に設置されたカメラ10a~10dのカメラ角度パラメータを算出するので、カメラのキャリブレーションを実行する場所を縮小化することが出来る(マーカの配置領域を狭めることが出来る)と共に、正確にカメラ角度パラメータを算出することができる。
 さて、これまで本発明の実施例について説明したが、本発明は上述した実施例1以外にも種々の異なる形態にて実施されてよいものである。そこで、以下では実施例2として本発明に含まれる他の実施例を説明する。
(1)カメラの鉛直下のマーカについて
 例えば、上記の実施例1では、カメラ10b,10dの鉛直下にマーカ20c,20fを配置していたが、本発明はこれに限定されるものではない。ユーザは、マーカ20c,20fをカメラ10b,10dの鉛直下に配置する代わりに、カメラ10b、10dに錘のついた糸を吊るしても良い。このように、錘のついた糸をカメラ10b、10dに吊るすと、自然に錘がカメラ10b,10dの鉛直下に移動するので、ユーザにかかる負担を軽減させることが出来る。
(2)マーカの撮影について
 上記の実施例1では、カメラ10a~10dが画像を撮影するタイミングについて言及していなかったが、キャリブレーションに必要なカメラ画像をすべて同時に撮影しなくてもよい。例えば、キャリブレーション装置100は、撮影範囲を分割して各マーカを撮影した後に各画像を合成することで、実施例1と同様にしてカメラ角度パラメータを算出しても良い。
 図17は、マーカの分割撮影を説明するための図である。図17に示すように、キャリブレーション装置は、領域(1)~(4)の順番に各マーカを撮影する。なお、マーカ20a~20fは、該当領域の撮影が行われる時点で配置されるものとする。すなわち、領域(1)の撮影を行っている場合には、領域(2)~(3)に冶具を配置しておかなくてもよい。
 具体的に、キャリブレーション装置は、カメラ10a,10dを用いて領域(1)を撮影する。この撮影の際に、領域(1)にマーカ20aが配置され、マーカ20aは、カメラ10a,10dに撮影される。
 続いて、キャリブレーション装置は、カメラ10a、10bを用いて領域(2)を撮影する。この撮影の際に、領域(2)にマーカ20bが配置され、マーカ20bは、カメラ10a,10bに撮影される。
 続いて、キャリブレーション装置は、カメラ10b,10cを用いて領域(3)を撮影する。この撮影の際に、領域(3)にマーカ20c,20dが配置され、マーカ20cは、カメラ10bに撮影され、マーカ20dは、カメラ10cに撮影される。
 続いて、キャリブレーション装置は、カメラ10c,10dを用いて領域(4)を撮影する。この撮影の際に、領域(4)にマーカ20e,20fが配置され、マーカ20eは、カメラ10c,10dに撮影され、マーカ20fは、カメラ10dに撮影される。
 キャリブレーション装置は、図17に示した領域毎にカメラの画像を合成する。図18は、カメラ画像の合成を説明するための図である。図18の左上に示す画像は、カメラ10aが、領域(1)のマーカ20aを撮影した画像と、領域(2)のマーカ20bを撮影した画像とを合成した画像である。このように画像を合成することで、実施例1と同様に、領域(1)のマーカ20aと領域(2)のマーカ20bを同時に撮影した場合と同じ画像を得ることができる。
 図18の右上に示す画像は、カメラ10cが、領域(3)のマーカ20dを撮影した画像と、領域(4)のマーカ20eを撮影した画像とを合成した画像である。このように合成することで、実施例1と同様に、領域(3)のマーカ20dと領域(4)のマーカ20eを同時に撮影した場合と同じ画像を得ることが出来る。
 図18の右下に示す画像は、カメラ10bが、領域(2)のマーカ20bを撮影した画像と、領域(3)のマーカ20cおよびマーカ20dを撮影した画像とを合成した画像である。このように合成することで、実施例1と同様に、領域(2)のマーカ20bと領域(3)のマーカ20c,20dを同時に撮影した場合と同じ画像を得ることが出来る。
 図18の左下に示す画像は、カメラ10dが、領域(1)のマーカ20aを撮影した画像と、領域(4)のマーカ20eおよびマーカ20fを撮影した画像とを合成した画像である。このように合成することで、実施例1と同様に、領域(1)のマーカ20aと、領域(4)のマーカ20e,20fとを同時に撮影した場合と同じ画像を得ることが出来る。
 図18に示した各合成画像を作成した後に、キャリブレーション装置は、実施例1と同様にして、カメラ10a~10dのカメラ角度パラメータを算出する。このように、本実施例2にかかるキャリブレーション装置は、領域(1)~(4)の順に画像を撮影すればよいので、カメラのキャリブレーション時に必要となる空間を更に縮小することが出来る。
 次に、図17および図18において説明した手法によってカメラ10a~10dのカメラ角度パラメータを算出するキャリブレーション装置の構成について説明する。図19は、本実施例2にかかるキャリブレーション装置の構成を示す図である。図19に示すように、カメラ10a~10dと、キャリブレーション装置100との間に、合成処理装置200が配置されている。キャリブレーション装置100の構成は、図5に示したキャリブレーション装置100と同様である。
 合成処理装置200は、各カメラ10a~10dが異なる時間に撮影した画像を合成する装置であり、サブフレームバッファ200a~200hと、合成部210a~210dとを有する。合成処理部200は、同期制御部220によって同期が取られている。
 サブフレームバッファ200aは、カメラ10aが撮影した左半分の画像(領域(1)のマーカ20aを含んだ画像)を格納する記憶部であり、サブフレームバッファ200bは、カメラ10aが撮影した右半分の画像(領域(2)のマーカ20bを含んだ画像)を格納する記憶部である。
 サブフレームバッファ200cは、カメラ10bが撮影した左半分の画像(領域(2)のマーカ20bを含んだ画像)を格納する記憶部であり、サブフレームバッファ200dは、カメラ10bが撮影した右半分の画像(領域(3)のマーカ20c,20dを含んだ画像)を格納する記憶部である。
 サブフレームバッファ200eは、カメラ10cが撮影した左半分の画像(領域(3)のマーカ20dを含んだ画像)を格納する記憶部であり、サブフレームバッファ200fは、カメラ10cが撮影した右半分の画像(領域(4)のマーカ20eを含んだ画像)を格納する記憶部である。
 サブフレームバッファ200gは、カメラ10dが撮影した左半分の画像(領域(4)のマーカ20e,20fを含んだ画像)を格納する記憶部であり、サブフレームバッファ200hは、カメラ10dが撮影した右半分の画像(領域(1)のマーカ20aを含んだ画像)を格納する記憶部である。
 合成部210aは、サブフレームバッファ200a,200bに格納された画像を合成する処理部である。合成部210aによって合成される画像は、例えば、図18の左上の画像に対応する。合成部210aは合成した画像をキャリブレーション装置100のフレームバッファ120に格納する。
 合成部210bは、サブフレームバッファ200c,200dに格納された画像を合成する処理部である。合成部210bによって合成される画像は、例えば、図18の右下の画像に対応する。合成部210bは合成した画像をキャリブレーション装置100のフレームバッファ120に格納する。
 合成部210cは、サブフレームバッファ200e,200fに格納された画像を合成する処理部である。合成部210cによって合成される画像は、例えば、図18の右上の画像に対応する。合成部210cは合成した画像をキャリブレーション装置100のフレームバッファ120に格納する。
 合成部210dは、サブフレームバッファ200g,200hに格納された画像を合成する処理部である。合成部210dによって合成される画像は、例えば、図18の左下の画像に対応する。合成部210dは合成した画像をキャリブレーション装置100のフレームバッファ120に格納する。
(3)システム構成等
 また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 図20は、実施例にかかるキャリブレーション装置100を構成するコンピュータのハードウェア構成を示す図である。図20に示すように、このコンピュータ(キャリブレーション装置)30は、入力装置31、ディスプレイ32、RAM(Random Access Memory)33、ROM(Read Only Memory)34、記憶媒体からデータを読み取る媒体読取装置35、カメラ36、CPU(Central Processing Unit)37、HDD(Hard Disk Drive)38をバス39で接続して構成される。コンピュータ30は、カメラ36以外にもカメラを有しているものとする。
 HDD38には、上記したキャリブレーション装置100の機能と同様の機能を発揮するキャリブレーションプログラム38bおよび画像合成プログラム38cが記憶されている。CPU37がキャリブレーションプログラム38bおよび画像合成プログラム38cを読み出して実行することにより、キャリブレーションプロセス37aおよび画像合成プロセス37bが起動される。ここで、キャリブレーションプロセス37aは、図5に示した、マーカ抽出部130、マーカ位置推定部140、カメラ角度パラメータ推定部150に対応し、画像合成プロセス37bは、画像合成処理部160に対応する。
 また、HDD38は、パラメータ格納部110に記憶される情報に対応するカメラ位置パラメータ38aを記憶する。CPU37は、HDD38に格納されたカメラ位置パラメータ38aを読み出して、RAM33に格納し、RAM33に格納されたカメラ位置パラメータ33aおよびカメラ36に撮影された画像を用いて、カメラ角度パラメータを算出し、算出したカメラ角度パラメータ、カメラ位置パラメータ38bを用いて各画像を合成する。
 ところで、図20に示したキャリブレーションプログラム38bおよび画像合成プログラム38cは、必ずしも最初からHDD38に記憶させておく必要はない。たとえば、コンピュータに挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータに接続される「他のコンピュータ(またはサーバ)」などにキャリブレーションプログラム38bおよび画像合成プログラム38cを記憶しておき、コンピュータがこれらからキャリブレーションプログラム38bおよび画像合成プログラム38cを読み出して実行するようにしてもよい。

Claims (9)

  1.  隣接するカメラの撮影範囲が重なる領域に設置された第1の冶具と、カメラの鉛直下に設置された第2の冶具とを含む画像を取得する画像取得手段と、
     前記画像取得手段が取得した画像中に含まれる前記第1の冶具および第2の冶具の座標に基づいて前記カメラの角度を算出する角度算出手段と
     を有するカメラ角度算出装置。
  2.  隣接するカメラが撮影する前記第1の冶具は同一の冶具である請求項1に記載のカメラ角度算出装置。
  3.  前記カメラ毎に異なる時間に撮影された画像を記憶装置に記憶し、当該記憶装置に記憶された各画像を合成する画像合成手段を更に有し、前記画像取得手段は、前記画像合成手段に合成された画像を取得する請求項1または2に記載のカメラ角度算出装置。
  4.  カメラ角度算出装置が、
     隣接するカメラの撮影範囲が重なる領域に設置された第1の冶具と、カメラの鉛直下に設置された第2の冶具とを含む画像を取得して記憶装置に記憶する画像取得ステップと、
     前記記憶装置に記憶された画像中に含まれる前記第1の冶具および第2の冶具の座標に基づいて前記カメラの角度を算出する角度算出ステップと
     を含んだカメラ角度算出方法。
  5.  隣接するカメラが撮影する前記第1の冶具は同一の冶具である請求項4に記載のカメラ角度算出方法。
  6.  前記カメラ毎に異なる時間に撮影された画像を記憶装置に記憶し、当該記憶装置に記憶された各画像を合成する画像合成ステップを更に有し、前記画像取得ステップは、前記画像合成ステップにおいて合成された画像を記憶装置から取得する請求項4または5に記載のカメラ角度算出方法。
  7.  コンピュータに、
     隣接するカメラの撮影範囲が重なる領域に設置された第1の冶具と、カメラの鉛直下に設置された第2の冶具とを含む画像を取得して記憶装置に記憶する画像取得手順と、
     前記記憶装置に記憶された画像中に含まれる前記第1の冶具および第2の冶具の座標に基づいて前記カメラの角度を算出する角度算出手順と
     を実行させるカメラ角度算出プログラム。
  8.  隣接するカメラが撮影する前記第1の冶具は同一の冶具である請求項7に記載のカメラ角度算出プログラム。
  9.  前記カメラ毎に異なる時間に撮影された画像を記憶装置に記憶し、当該記憶装置に記憶された各画像を合成する画像合成手順を更にコンピュータに実行させ、前記画像取得手順は、前記画像合成手順において合成された画像を記憶装置から取得する請求項7または8に記載のカメラ角度算出プログラム。
PCT/JP2008/070135 2008-11-05 2008-11-05 カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム WO2010052772A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010536608A JP5387580B2 (ja) 2008-11-05 2008-11-05 カメラ角度算出装置およびカメラ角度算出方法
PCT/JP2008/070135 WO2010052772A1 (ja) 2008-11-05 2008-11-05 カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム
US13/064,690 US8537199B2 (en) 2008-11-05 2011-04-08 Camera calibration device and method by computing coordinates of jigs in a vehicle system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/070135 WO2010052772A1 (ja) 2008-11-05 2008-11-05 カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/064,690 Continuation US8537199B2 (en) 2008-11-05 2011-04-08 Camera calibration device and method by computing coordinates of jigs in a vehicle system

Publications (1)

Publication Number Publication Date
WO2010052772A1 true WO2010052772A1 (ja) 2010-05-14

Family

ID=42152588

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/070135 WO2010052772A1 (ja) 2008-11-05 2008-11-05 カメラ角度算出装置、カメラ角度算出方法およびカメラ角度算出プログラム

Country Status (3)

Country Link
US (1) US8537199B2 (ja)
JP (1) JP5387580B2 (ja)
WO (1) WO2010052772A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013092871A (ja) * 2011-10-25 2013-05-16 Secom Co Ltd カメラ姿勢算出装置
WO2015079980A1 (ja) * 2013-11-29 2015-06-04 クラリオン株式会社 カメラ校正装置

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4690476B2 (ja) * 2009-03-31 2011-06-01 アイシン精機株式会社 車載カメラの校正装置
US20170186223A1 (en) * 2015-12-23 2017-06-29 Intel Corporation Detection of shadow regions in image depth data caused by multiple image sensors
WO2018143064A1 (ja) * 2017-01-31 2018-08-09 パナソニックIpマネジメント株式会社 車載カメラ
US11004567B2 (en) 2017-08-15 2021-05-11 Koko Home, Inc. System and method for processing wireless backscattered signal using artificial intelligence processing for activities of daily life
JP2019092002A (ja) * 2017-11-13 2019-06-13 ヤマハ発動機株式会社 船舶用俯瞰画像生成装置およびそのキャリブレーション方法
US11997455B2 (en) 2019-02-11 2024-05-28 Koko Home, Inc. System and method for processing multi-directional signals and feedback to a user to improve sleep
US10810850B2 (en) 2019-02-19 2020-10-20 Koko Home, Inc. System and method for state identity of a user and initiating feedback using multiple sources
US11971503B2 (en) 2019-02-19 2024-04-30 Koko Home, Inc. System and method for determining user activities using multiple sources
KR20200126540A (ko) * 2019-04-30 2020-11-09 주식회사 만도 카메라 보정 시스템 및 그 방법
US11719804B2 (en) 2019-09-30 2023-08-08 Koko Home, Inc. System and method for determining user activities using artificial intelligence processing
US11240635B1 (en) * 2020-04-03 2022-02-01 Koko Home, Inc. System and method for processing using multi-core processors, signals, and AI processors from multiple sources to create a spatial map of selected region
US11184738B1 (en) 2020-04-10 2021-11-23 Koko Home, Inc. System and method for processing using multi core processors, signals, and AI processors from multiple sources to create a spatial heat map of selected region

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002135765A (ja) * 1998-07-31 2002-05-10 Matsushita Electric Ind Co Ltd カメラキャリブレーション指示装置及びカメラキャリブレーション装置
JP2004004043A (ja) * 2002-04-22 2004-01-08 Matsushita Electric Ind Co Ltd カメラ補正装置
JP2005217889A (ja) * 2004-01-30 2005-08-11 Toyota Industries Corp 映像位置関係補正装置、該映像位置関係補正装置を備えた操舵支援装置、及び映像位置関係補正方法
JP2008187564A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP2008187566A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1115250B1 (en) 1998-07-31 2012-06-06 Panasonic Corporation Method and apparatus for displaying image
GB9903638D0 (en) * 1999-02-17 1999-04-07 European Community A measurement method and measurement apparatus
US6919880B2 (en) * 2001-06-01 2005-07-19 Smart Technologies Inc. Calibrating camera offsets to facilitate object position determination using triangulation
KR100450954B1 (ko) * 2002-06-12 2004-10-02 삼성전자주식회사 전세계위치확인 시스템에서 최적 위성의 선택방법 및 장치
US7818127B1 (en) * 2004-06-18 2010-10-19 Geneva Aerospace, Inc. Collision avoidance for vehicle control systems
FR2872928B1 (fr) * 2004-07-12 2006-09-15 Giat Ind Sa Procede de guidage et/ou pilotage d'un projectile et dispositif de guidage et/ou pilotage mettant en oeuvre un tel procede

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002135765A (ja) * 1998-07-31 2002-05-10 Matsushita Electric Ind Co Ltd カメラキャリブレーション指示装置及びカメラキャリブレーション装置
JP2004004043A (ja) * 2002-04-22 2004-01-08 Matsushita Electric Ind Co Ltd カメラ補正装置
JP2005217889A (ja) * 2004-01-30 2005-08-11 Toyota Industries Corp 映像位置関係補正装置、該映像位置関係補正装置を備えた操舵支援装置、及び映像位置関係補正方法
JP2008187564A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP2008187566A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013092871A (ja) * 2011-10-25 2013-05-16 Secom Co Ltd カメラ姿勢算出装置
WO2015079980A1 (ja) * 2013-11-29 2015-06-04 クラリオン株式会社 カメラ校正装置
JP2015106785A (ja) * 2013-11-29 2015-06-08 クラリオン株式会社 カメラ校正装置
US10192309B2 (en) 2013-11-29 2019-01-29 Clarion Co., Ltd. Camera calibration device

Also Published As

Publication number Publication date
US8537199B2 (en) 2013-09-17
JPWO2010052772A1 (ja) 2012-03-29
US20110187816A1 (en) 2011-08-04
JP5387580B2 (ja) 2014-01-15

Similar Documents

Publication Publication Date Title
JP5387580B2 (ja) カメラ角度算出装置およびカメラ角度算出方法
EP2615580B1 (en) Automatic scene calibration
JP5580164B2 (ja) 光学情報処理装置、光学情報処理方法、光学情報処理システム、光学情報処理プログラム
WO2017120776A1 (en) Calibration method and apparatus for panoramic stereo video system
JP5872923B2 (ja) Ar画像処理装置及び方法
JP2011244058A5 (ja)
CN108876714A (zh) 图像捕获装置、信息处理装置和图像处理方法
US9881377B2 (en) Apparatus and method for determining the distinct location of an image-recording camera
JP2008204384A (ja) 撮像装置、物体検出方法及び姿勢パラメータの算出方法
CN107710728A (zh) 全球面视频成像***和计算机可读记录介质
US20210120194A1 (en) Temperature measurement processing method and apparatus, and thermal imaging device
WO2018235300A1 (ja) 物体検知装置、物体検知方法、及びコンピュータ読み取り可能な記録媒体
CN105100600A (zh) 用于全景可视***中的自动校准的方法和装置
CN106296646B (zh) Avm***的公差校正装置、方法及其记录介质
KR20140048539A (ko) 차량의 주변영상을 이용한 객체 인식장치 및 방법
JP2010086267A (ja) 車両用画像処理装置
KR20130121290A (ko) 회전식 라인 카메라로 획득한 실내 전방위 영상의 지오레퍼런싱 방법
JP5369873B2 (ja) 判定プログラムおよびキャリブレーション装置
JP6879375B2 (ja) 情報処理装置、長さ測定システム、長さ測定方法およびコンピュータプログラム
CN106447735A (zh) 一种全景相机几何标定处理方法
JP2011155412A (ja) 投影システムおよび投影システムにおける歪み修正方法
JP2011097284A (ja) 監視装置
JP2009294109A (ja) キャリブレーション装置
JP2011228857A (ja) 車載カメラ用キャリブレーション装置
JP2019009643A (ja) 画像処理装置、画像処理方法およびプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08877967

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010536608

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08877967

Country of ref document: EP

Kind code of ref document: A1