WO2019093136A1 - 画像処理装置、および画像処理方法、並びにプログラム - Google Patents

画像処理装置、および画像処理方法、並びにプログラム Download PDF

Info

Publication number
WO2019093136A1
WO2019093136A1 PCT/JP2018/039602 JP2018039602W WO2019093136A1 WO 2019093136 A1 WO2019093136 A1 WO 2019093136A1 JP 2018039602 W JP2018039602 W JP 2018039602W WO 2019093136 A1 WO2019093136 A1 WO 2019093136A1
Authority
WO
WIPO (PCT)
Prior art keywords
position information
active sensor
information
object position
circle
Prior art date
Application number
PCT/JP2018/039602
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 ソニー株式会社
Publication of WO2019093136A1 publication Critical patent/WO2019093136A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • 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

Definitions

  • the present disclosure relates to an image processing apparatus, an image processing method, and a program, and more particularly to an image processing apparatus, an image processing method, and a program that can realize calibration of a passive sensor and an active sensor with a simple configuration. .
  • reference point group position data describing scan data of a reference laser scanner which is an active sensor in a coordinate system at a specific time is calculated, and feature points in the reference point group position data and an image captured by a camera which is a passive sensor Perform calibration between the laser scanner and the camera by calculating the external orientation factor of the camera based on the correspondence between the reference point group position data of the corresponding point with the upper feature point and the screen coordinate value on the image
  • Patent Document 1 proposes Patent Document 1
  • Non-Patent Document 1 A technique has been proposed in which alignment is performed such that the distance between the LiDAR point and the straight line of the camera is minimized by detecting the straight edge by the camera which is a passive sensor (see Non-Patent Document 1).
  • Non-Patent Document 2 a technique has been proposed in which a plate with a hole is used as a calibration target to calibrate LiDAR as an active sensor and a camera as a passive sensor.
  • Non-Patent Document 1 since LiDAR data has a low resolution, high-accuracy alignment is required and the straight line must be thick in order to irradiate the linear retroreflecting material. Although it is conceivable to facilitate the alignment at the above, the accuracy decreases in proportion to the thickness.
  • LiDAR calculates the center of the hole from the periphery of the hole, but since LiDAR is prone to errors at depth boundaries, there is a risk that accuracy may be degraded.
  • This indication is made in view of such a situation, and enables it to calibrate an active sensor and a passive sensor with high precision by simple composition especially.
  • An image processing apparatus detects an object position information of a predetermined object as active sensor object position information based on the reflection intensity using an active sensor capable of acquiring reflection intensity.
  • a passive sensor object position detection unit for detecting position information of the predetermined object detected by the passive sensor as passive sensor object position information, the active sensor object position information corresponding to each other, and the passive sensor It is an image processing device including a calibration unit which calibrates the active sensor and the passive sensor based on object position information.
  • the predetermined object may be made to use a member having a reflectance different from that of another portion in a partial range, and the active sensor object position detection unit is based on the reflection intensity.
  • the position information of the partial range of the predetermined object may be detected as the active sensor object position information.
  • the active sensor object position information may be three-dimensional point group information of the predetermined object, and the passive sensor object position information may be position information in a two-dimensional image of the predetermined object captured.
  • the active sensor object position detection unit extracts three-dimensional point group information corresponding to the partial range in the predetermined object based on the reflection intensity, and the extracted partial And detecting the position information of the predetermined object from the two-dimensional image by the passive sensor object position detection unit.
  • the passive sensor object position information can be output.
  • the predetermined object may be a planar sheet in which a member having a reflectance different from that of the other part is formed in the circle-shaped part of the area, and the active sensor object position detection Causing the unit to detect, as the active sensor object position information, the barycentric position of the extracted three-dimensional point group information corresponding to the partial range of the circle shape, and the passive sensor object position detection unit
  • the position of the center of gravity of the partial range of the circle shape can be detected from the dimensional image, and can be output as the passive sensor object position information.
  • the active sensor object position detection unit may be configured to detect, as the active sensor object position information, a barycentric position including an average value of three-dimensional point group information corresponding to the extracted partial range of the circle shape. can do.
  • the active sensor object position detection unit when the density of the three-dimensional point group information corresponding to the extracted partial range of the circular shape is higher than a predetermined density, the extracted one of the circular shapes The position of the center of gravity consisting of the average value of the three-dimensional point group information corresponding to the range of the part can be detected as the active sensor object position information.
  • the active sensor object position detection unit is configured to extract an end point of the circle-shaped range of the scan line of the active sensor from among the extracted three-dimensional point group information corresponding to the partial range of the circle-shaped;
  • the barycentric position obtained based on the information of the end point may be detected as the active sensor object position information.
  • the active sensor object position detection unit extracts the part of the extracted circle.
  • the end point of the circle-like range of the scan line of the active sensor is extracted, and the barycentric position determined based on the information of the end point is used as the active sensor object position information. It can be made to detect.
  • the active sensor object position detection unit is configured to extract an end point of the circle-shaped range of the scan line of the active sensor from among the extracted three-dimensional point group information corresponding to the partial range of the circle-shaped;
  • the position of the center of gravity which is the average of the center positions of the circumscribed circles determined for all combinations of three of the extracted end points, can be detected as the active sensor object position information.
  • the circle shape with a constraint that the center-of-gravity position determined from the extracted three-dimensional point group information corresponding to the partial range of the circle shape becomes the position information on the same plane corresponding to the sheet It is possible to further include a gravity center position correction unit that corrects the gravity center position obtained from three-dimensional point group information corresponding to the partial range of.
  • the calibration unit includes the active sensor object position information including position information of the partial range of at least six sets of the predetermined object, which correspond to each other, and the partial of the predetermined object.
  • the active sensor and the passive sensor may be calibrated based on the passive sensor object position information including position information in the range of.
  • the calibration unit is configured based on the active sensor object position information including position information of the partial range of the predetermined object for one frame and position information of the partial range of the predetermined object.
  • the partial range of the predetermined object can be larger than at least six.
  • the calibration unit includes the active sensor object position information including position information of the partial range of the predetermined object at least for six frames, and the partial range of the predetermined object.
  • the active sensor and the passive sensor When calibrating the active sensor and the passive sensor based on the passive sensor object position information including position information, the partial range of the predetermined object is larger than at least one position. Can.
  • the predetermined object may be a road sign.
  • the calibration unit may use the position information of the partial range of the predetermined predetermined object, and the active sensor object including position information of the partial range of the predetermined object corresponding to each other.
  • the active sensor and the passive sensor may be calibrated based on position information and the passive sensor object position information including position information of the partial range of the predetermined object.
  • the predetermined object is a planar sheet in which a member having a reflectance different from that of the other part is formed in the part of the part which is a plurality of pieces and has a plurality of types of shapes. be able to.
  • the active sensor object position information including position information of the partial range of the predetermined object corresponding to each other and position information of the partial range of the predetermined object
  • the active sensor and the passive sensor can be calibrated by calculating a rotation matrix and a translation matrix that correspond to the passive sensor object position information.
  • the predetermined object may be a planar sheet in which a member having a reflectance different from that of the other partial area is formed in the partial area of the rhombus shape, and the active sensor object position detection Causing the unit to detect, as the active sensor object position information, the corner position of the three-dimensional point group information corresponding to the partial range of the extracted rhombus shape, and the passive sensor object position detection unit
  • the corner position of the partial range of the rhombus shape may be detected from two-dimensional information in the image, and may be output as the passive sensor object position information.
  • An image processing method detects active object position information of a predetermined object whose reflection intensity is different from that of another region, which is detected by an active sensor capable of acquiring reflection intensity.
  • an image processing method including a calibration process of calibrating the active sensor and the passive sensor based on the passive sensor object position information.
  • a program is an active sensor object that detects position information of a predetermined object whose reflection intensity is different from other regions, detected by an active sensor capable of acquiring reflection intensity as active sensor object position information.
  • a position detection unit, a passive sensor object position detection unit detecting position information of the predetermined object detected by the passive sensor as passive sensor object position information, and the active sensor object position information corresponding to each other; It is a program that causes a computer to function as a calibration unit that calibrates the active sensor and the passive sensor based on the passive sensor object position information.
  • position information of a predetermined object which is detected by an active sensor capable of acquiring reflection intensity and whose reflection intensity is different from other regions, is detected as active sensor object position information, and is passive Position information of the predetermined object to be detected is detected as passive sensor object position information, and based on the active sensor object position information and the passive sensor object position information corresponding to each other, The passive sensor is calibrated.
  • the present disclosure makes it possible to calibrate an active sensor and a passive sensor with high accuracy with a simple configuration.
  • a three-dimensional model M is constructed by associating an omnidirectional image composed of a texture image T1 with an omnidirectional image composed of a depth image D1, for example, an HMD (Head Mounted Display)
  • a technology for displaying a VR (Virtual Reality) image is widely used.
  • the texture image T1 and the depth image D1 are both acquired by the stereo camera using the same stereo camera, there is a gap between the texture image T1 and the depth image D1. There is no problem with assuming that it will not occur.
  • the accuracy may be reduced depending on the image to be captured.
  • the line of sight passing through that point is the other image ( In the image Px, it appears as one straight line on the right image RV). Also, the line of sight passing through each point on the straight line is one straight line on the original image. Then, since the corresponding point pair of the point XL exists on the pair of straight lines eR-XR on the left and right images, block matching is applied only on the straight lines. This straight line is the epipolar line epL in the image P3.
  • the epipolar line of the corresponding lower right image VR in FIG. 2 corresponds to the epipolar line epL1. , EpL2.
  • a graph G1 in the lower part of FIG. 2 shows the relationship between the depth (distance from the point of interest: disparity) of the pixel on each epipolar line and the difference (cost) of the sum of difference absolute values.
  • the attention point ep2 there is a change in the surroundings, and it is possible to detect the texture, so there is a change in the cost and it is possible to detect parallax pixels.
  • the parallax can not be detected because the cost does not change (because the surrounding area also has similar pixel values). As a result, depth can not be accurately detected.
  • the arrangement of the stereo cameras is set to the cameras C1 and C1. Whether the combination is C2, the combination of the cameras C2 and C3, or the combination of the cameras C1 and C3, it is not possible to capture an area in which one matches the other. That is, since so-called occlusion occurs, the parallax can not be detected for the area Z1, and as a result, the depth can not be obtained.
  • LiDAR measures the round trip time of reflected light from a surrounding obstacle etc. to laser light emitted in a pulse shape, and measures the distance. Generally, the distance is changed while changing the angle at predetermined intervals in the horizontal direction.
  • Three-dimensional point cloud information (three-dimensional point cloud information) is acquired by performing measurement, changing the angle in the vertical direction sequentially, and repeatedly measuring the distance.
  • the RGB camera 12 consisting of a stereo camera provided with cameras 12A and 12B is provided on the left side in the drawing and the LiDAR 11 is provided on the right side in the drawing.
  • the LiDAR 11 measures the distances from the points LP1 to LP3 while changing the angle sequentially as shown by the dotted line.
  • the RGB camera 12 obtains the depth image by obtaining the distance of each pixel corresponding to the points LP1 to LP3 in the captured image from the measurement result of the LiDAR 11.
  • a depth image P22 is simultaneously obtained based on stereo images captured by the cameras 12A and 12B.
  • the three-dimensional point cloud information measured by the LiDAR 11 is associated with the depth image obtained by this stereo image.
  • the three-dimensional point group information detected by LiDAR 11 is lower resolution information than the depth image obtained based on the stereo image, but the distance accuracy is high, so by combining the two, high accuracy is achieved.
  • the depth image P24 is obtained.
  • the calibration is generally a method of matching the depth image of the RGB camera 12 which is a passive sensor and the three-dimensional point group information of the LiDAR 11 which is an active sensor using ICP (Iterative Closest Point).
  • the present disclosure has been made in view of such a situation, and in particular, implements calibration of an active sensor and a passive sensor with high accuracy with a simple configuration.
  • the calibration system 100 of FIG. 4 includes a LiDAR 111, an RGB camera 112, a calibration sheet 113, and a calibration unit 114.
  • the LiDAR 111 is an active sensor, and acquires three-dimensional point cloud information of the monitoring area. At the time of calibration, the LiDAR 111 scans a range including the calibration sheet 113 to acquire three-dimensional point group information, and acquires a reflection intensity distribution when measuring the coordinates of each point, and the calibration unit Output to 114.
  • the RGB camera 112 is a passive sensor, and is configured by a stereo camera similar to the RGB camera 12 of FIG. 3 in a basic structure, and the calibration is performed by imaging a range in which the calibration sheet 113 exists.
  • the image of the sheet 113 is output to the calibration unit 114.
  • the calibration sheet 113 is one in which markers 121 made of, for example, a circular reflector having a high reflectivity are regularly arranged on a black plate having a low reflectivity.
  • markers 121 made of, for example, a circular reflector having a high reflectivity are regularly arranged on a black plate having a low reflectivity.
  • FIG. 4 a total of nine markers 121 of 3 ⁇ 3 are provided for the horizontal direction ⁇ vertical direction, but as long as the position and size of the marker 121 to be arranged are specified, The number and size of 121 can be set arbitrarily.
  • the calibration unit 114 determines the coordinate system of the LiDAR 111 based on the correspondence between the three-dimensional point group information and reflection intensity distribution for the calibration sheet 113 supplied from the LiDAR 111 and the image of the calibration sheet 113 supplied from the RGB camera 112.
  • the rotation matrix R and the translation matrix t which are required to correspond the coordinate system of the RGB camera 112, are calculated. That is, calibration is performed by appropriately correlating the three-dimensional point group information detected by the LiDAR 111 with each pixel position in the image captured by the RGB camera 112 by determining the rotation matrix R and the translation matrix t. Is realized.
  • the detailed configuration of the calibration unit 114 will be described later in detail with reference to FIG.
  • a range in which a two-dimensional image including the calibration sheet 113 is captured by the RGB camera 112 is also referred to as a sensing range of the RGB camera 112.
  • a range in which three-dimensional point group information including the calibration sheet 113 is detected by the LiDAR 111 is also referred to as a sensing range of the LiDAR 111.
  • the sensing result of the LiDAR 111 is assumed to be three-dimensional point group information composed of three-dimensional coordinates of a point group up to the subject in the sensing range. Further, the sensing result of the RGB camera 112 is assumed to be a two-dimensional image in which the subject in the sensing range is imaged.
  • the retroreflective material used for the marker 121 formed on the calibration sheet 113 is a material having a high reflectance to incident light, while the other black ground is a material having a low reflectance. Therefore, the area of the marker 121 has a higher reflectance than the surrounding area.
  • a material that reflects in a range other than the marker 121 may be used as long as the marker 121 can have a higher reflectance than the other regions.
  • the range other than the marker 121 be a material with a low reflectance or a material that absorbs light. .
  • the LiDAR 111 irradiates the laser light while changing the irradiation direction in two dimensions, and takes time to receive the light reflected by the obstacle, that is, the round trip time of the laser light to the obstacle to the obstacle.
  • the distance is acquired as point cloud information of three-dimensional coordinates, that is, as three-dimensional point cloud information.
  • the LiDAR 111 also detects the reflection intensity at the irradiation position of each laser beam, that is, in the unit of each point of the three-dimensional coordinate.
  • the LiDAR 111 By measuring the distance at which the 113 is installed, three-dimensional point group information indicating the position of the calibration sheet 113 is acquired.
  • the distribution chart PC1 in FIG. 5 is described as a LiDAR coordinate system, and shows a distribution of point groups up to a subject representing in a three-dimensional space represented by x, y and z axes, and a calibration sheet A distribution of three-dimensional point group information in the same plane shape consisting of 113 is expressed.
  • the LiDAR 111 detects high reflection intensity in the area ZM of the marker 121 on the calibration sheet 113, and detects low reflection intensity in the other areas.
  • the horizontal axis represents the position on the scan line L11
  • the vertical axis represents the reflection intensity.
  • the ranges a1 to a2, a3 to a4, a5 to a6 belonging to the region ZM of the marker 121 The reflection intensity is high, and the other areas are low.
  • the range higher than the predetermined threshold value is extracted from the distribution of the reflection intensity on the calibration sheet 113, as shown in the extraction example R3 of FIG. 5, the three-dimensional area ZM provided with the marker 121 Point cloud information is extracted.
  • the calibration sheet 113 captured by the RGB camera 112 is, for example, an image as shown by an image P51 in FIG.
  • the position indicated by the gray cross can be obtained as the barycentric position of the circle formed by the marker 121.
  • the calibration unit 114 recognizes the marker 121 on the calibration sheet 113 recognized based on the sensing result of the LiDAR 111 indicated by a black cross in the gravity center distribution map R4, as shown in the comparison diagram CL1 of FIG.
  • Rotation matrix R for correlating the two coordinate systems based on the positional relationship between the barycentric position of the center of gravity and the barycentric position of the marker 121 indicated by a gray cross detected from the image P51 that is the sensing result of the RGB camera 112 And the translation matrix t.
  • the rotation matrix R and the translation matrix t make it possible to associate the sensing result of the LiDAR 111 with the sensing result of the RGB camera 112. That is, the calibration in the present disclosure is to associate the sensing result of the LiDAR 111 with the sensing result of the RGB camera 112, and is substantially an action of obtaining the rotation matrix R and the translation matrix t.
  • a rotation matrix R and a translation matrix t for associating the coordinate systems of both the LiDAR 111 and the RGB camera 112 can be obtained based on the positional relationship between corresponding points. That is, it can be obtained by using the information of the center of gravity position of the circle serving as the area of the marker 121 on the calibration sheet 113 of each of the LiDAR 111 and the RGB camera 112.
  • the center of gravity position of the circle that is the area of the marker 121 on the calibration sheet 113 is also simply referred to as the circle center of gravity position.
  • K is a camera internal matrix
  • R is a rotation matrix
  • t is a translation matrix
  • s is a coefficient having a predetermined value.
  • the circle centroid position Pi is expressed as a three-dimensional coordinate system as represented by the following equation (2).
  • Xi, Yi, Zi are coordinates in the three-dimensional space of the circle centroid position Pi.
  • the circle gravity center position Ui obtained by the RGB camera 112 is expressed as a two-dimensional coordinate system as shown in the following equation (3) as coordinates in a two-dimensional image.
  • ui, vi are coordinates in the horizontal direction and vertical direction of the circle gravity center position Ui in the image V.
  • fx and fy represent known focal distances of the optical system in the RGB camera 112
  • cx and cy are known coordinates of the central pixel in the image V
  • r11, r12, r13, r21, r22. , R23, r31, r32, r33 are elements of the rotation matrix
  • tx, ty, tz are elements of the translation matrix.
  • the calibration unit 114 calculates the rotation matrix R and the translation matrix t from the circle barycentric positions obtained from the sensing results of six or more sets of LiDAR 111 and the circle barycentric positions obtained from the RGB camera 112. Perform calibration.
  • the circle barycentric position obtained from the sensing results of six or more sets of LiDAR 111 and the circle barycentric position obtained from the RGB camera 112 are required, one frame of information is stored on the calibration sheet 113 At least six markers 121 are required to perform calibration. However, when calibration is performed using a plurality of frames, it is not limited to this. For example, if at least six frames or more of sensing results can be used, one marker 121 is present on the calibration sheet 113. , Calibration can be realized.
  • the calibration unit 114 in FIG. 4 includes a passive sensor system processing unit 141, an active sensor system processing unit 142, and a projection error minimizing unit 143.
  • the passive sensor system processing unit 141 obtains the position of the center of gravity of the circle based on the image that is the sensing result of the RGB camera 112 which is a passive sensor, and outputs it to the projection error minimizing unit 143.
  • the passive sensor system processing unit 141 includes a circle detection unit 151, a circle gravity center calculation unit 152, and a false detection removal unit 153.
  • the circle detection unit 151 detects a circle, which is a portion on which the marker 121 is formed, of the calibration sheet 113 in the image based on the image supplied from the RGB camera 112, and the position in the image of the detected circle. Is output to the circle centroid calculation unit 152.
  • the circle gravity center calculation unit 152 calculates the gravity center position of the circle in the image based on the information on the position of the circle in the image captured by the RGB camera 112, and outputs the calculated position to the erroneous detection removal unit 153.
  • the false detection removal unit 153 removes false detection at the barycentric position of the circle in the image by using the information of the geometrical arrangement of the markers 121 on the calibration sheet 113, and captures an image by the RGB camera 112. The information of the barycentric position of the two-dimensional circle in the captured image is output to the projection error minimizing unit 143.
  • the barycentric position of the circle formed by the markers 121 in the calibration sheet 113 in the image captured by the RGB camera 112 which is a passive sensor will be simply referred to as a passive sensor circle barycentric position.
  • the active sensor system processing unit 142 obtains the position of the center of gravity of the circle based on the three-dimensional point group information which is the sensing result of the LiDAR 111 which is the active sensor, and outputs it to the projection error minimizing unit 143.
  • the active sensor system processing unit 142 includes a reflection intensity filter 161, a clustering unit 162, a circle gravity center calculation unit 163, an erroneous detection removal unit 164, and a gravity center correction unit 165.
  • the reflection intensity filter 161 extracts the distribution of the reflection intensity larger than a predetermined threshold with respect to the information of the distribution of the reflection intensity supplied from the LiDAR 111, whereby the marker 121 on the calibration sheet 113 is formed.
  • the distribution of the reflection intensity present in the circle is extracted and output to the clustering unit 162.
  • the clustering unit 162 performs clustering on a distribution having a reflection intensity larger than a predetermined threshold output from the reflection intensity filter 161, thereby extracting the distribution as a circle unit distribution, and a distribution of reflection intensities on a circle unit as a result of clustering. Is output to the circle centroid calculation unit 163.
  • the circle gravity center calculation unit 163 calculates the gravity center position in the distribution of the reflection intensity of the circle unit which is clustered, and outputs it to the erroneous detection removal unit 164 as information of the gravity center position of the circle obtained based on the scan result of LiDAR 111 .
  • the false detection removal unit 164 removes false detection at the barycentric position of the circle obtained based on the scan result of the LiDAR 111 by using the information of the geometrical arrangement of the markers 121 in the calibration sheet 113, It is output to the gravity center correction unit 165.
  • the center of gravity correction unit 165 corrects the center of gravity position of the circle obtained based on the scan result of the LiDAR 111 by using the information of the geometrical arrangement of the markers 121 in the calibration sheet 113, thereby minimizing the projection error Output to 143.
  • the barycentric position of the circle serving as the area of the marker 121 in the calibration sheet 113 in the sensing area of the LiDAR 111 is simply referred to as the active sensor circle barycentric position based on the sensing result of the LiDAR 111 which is the active sensor.
  • the projection error minimization unit 143 performs two-dimensional detection in the image obtained based on the sensing result of the active sensor circle center position including the three-dimensional point group information obtained based on the sensing result of the LiDAR 111 and the sensing result of the RGB camera 112. From the information of the passive sensor circle center of gravity position, the mutual correspondence relationship is used to calculate the rotation matrix R and the translation matrix t necessary to minimize the deviation between the LiDAR 111 and the RGB camera 112.
  • the rotation matrix R and the translation matrix t obtained here are the calibration results of the LiDAR 111 and the RGB camera 112, and the deviation between the LiDAR 111 and the RGB camera 112 is corrected.
  • step S11 the passive sensor system processing unit 141 executes passive sensor system processing, calculates the position of the passive sensor circle center of gravity, and outputs the calculated position to the projection error minimizing unit 143.
  • the details of the passive sensor system processing will be described later with reference to the flowchart of FIG.
  • step S12 the active sensor system processing unit 142 executes active sensor system processing, calculates an active sensor circle center of gravity position, and outputs the result to the projection error minimizing unit 143.
  • active sensor system processing executes active sensor system processing, calculates an active sensor circle center of gravity position, and outputs the result to the projection error minimizing unit 143.
  • step S13 the projection error minimization unit 143 determines whether or not the active sensor circle center of gravity position can not be calculated. If the calculation is not possible and the active sensor circle center of gravity position is determined, the process is Go to S14.
  • step S14 the projection error minimization unit 143 constructs the equation (5) from the passive sensor circle barycentric position and the active sensor circle barycentric position, calculates the rotation matrix R and the translation matrix t, and ends the process. .
  • step S13 determines that the active sensor circle center of gravity position can not be calculated. If it is determined in step S13 that the active sensor circle center of gravity position can not be calculated, the process proceeds to step S15.
  • step S15 the projection error minimizing unit 143 notifies that calculation of the rotation matrix R and the translation matrix t is impossible, and ends the process.
  • step S31 the circle detection unit 151 of the passive sensor system processing unit 141 recognizes the calibration sheet 113 by image recognition from the image captured by the RGB camera 112, and further recognizes the marker 121 on the calibration sheet 113.
  • the imaging region of the marker 121 is detected as the position information of the circle, and is output to the circle centroid calculation unit 152.
  • step S ⁇ b> 32 the circle centroid calculation unit 152 sets an unprocessed circle as a processing target circle based on the information of the circle supplied from the circle detection unit 151.
  • step S33 the circle gravity center calculation unit 152 calculates the gravity center position in the image of the processing target circle, and outputs it to the erroneous detection removal unit 153 for storage.
  • step S34 the circle centroid calculation unit 152 determines whether or not there is an unprocessed circle, and if there is an unprocessed circle, the process returns to step S32. That is, the processes in steps S32 to S34 are repeated until all barycentric positions are calculated for the circle corresponding to the number of markers 121 on the calibration sheet 113. Then, in step S34, when the barycentric positions of all the circles are calculated, it is considered that there is no unprocessed circle, and the process proceeds to step S35.
  • step S35 the false detection and removal unit 153 determines that falsely detected in the circle barycentric position obtained based on the information on the position of the marker 121 on the calibration sheet 113, which is a known design value.
  • the detected detection result is removed, and output to the projection error minimizing unit 143 as information of the passive sensor circle center of gravity position.
  • step S51 the reflection intensity filter 161 of the active sensor system processing unit 142 extracts point cloud information with a reflection intensity higher than a predetermined value from the three-dimensional point cloud information that is the sensing result of the LiDAR 111 that is the active sensor. It is output to the clustering unit 162.
  • step S52 the clustering unit 162 extracts three-dimensional point group information whose reflection intensity is higher than a predetermined value, and regards the point group information existing within the predetermined range as point group information contained in one circle.
  • the clustering is performed to cluster the point group information substantially on a circle basis and to output it to the circle centroid calculation unit 163.
  • step S53 the circle centroid calculation unit 163 sets any point cloud information of the unprocessed class as point cloud information of the processing target circle.
  • step S54 the circle gravity center calculation unit 163 executes the gravity center coordinate calculation process, obtains the gravity center position of the point cloud information clustered in the processing target circle, and stores the position in the false detection removal unit 164.
  • the details of the barycentric coordinate calculation process will be described later with reference to the flowchart of FIG.
  • step S55 the circle centroid calculation unit 163 determines whether or not the calculation of the centroid coordinates is not possible in the centroid coordinates calculation processing, and if it is not possible to calculate, that is, if the centroid coordinates are obtained, The processing proceeds to step S56.
  • step S56 the circle gravity center calculation unit 163 determines whether or not there is an unprocessed class, and when there is an unprocessed class, the processing returns to step S53. That is, the processes of steps S53 to S56 are repeated until the barycentric positions of the point cloud information of all classes are calculated as the active sensor circle barycentric positions.
  • step S57 when the barycentric positions of the point cloud information of all the classes are calculated as the circle barycentric positions, the process proceeds to step S57.
  • step S57 the false detection and removal unit 164 clearly detects false detection among the active sensor circle center of gravity positions obtained based on the information on the position of the marker 121 on the calibration sheet 113, which is a known design value.
  • the detection result that is recognized to be present is removed and output to the gravity center correction unit 165.
  • a circle obtained as point group information higher than a predetermined reflection intensity among three-dimensional point group information detected by LiDAR 111 For example, as indicated by three-dimensional point group information 11A in the upper right part of FIG. 11, a circle obtained as point group information higher than a predetermined reflection intensity among three-dimensional point group information detected by LiDAR 111
  • a barycentric position is indicated by a black cross
  • a barycentric position corresponding to a design value is indicated by an open cross.
  • the black cross mark in the upper right part surrounded by the dotted line is detected at a position farther than the white cross mark which is the design value, and is clearly different.
  • the part 164 considers that it is a false detection and removes it.
  • step S58 the gravity center correction unit 165 corrects the information of the active sensor circle gravity center position based on the geometrical information of the position of the marker 121 on the calibration sheet 113, which is a known design value, and then corrects it.
  • the information on the position of the center of gravity of the active sensor circle is output to the projection error minimizing unit 143.
  • the gravity center correction unit 165 calculates the plane Sf from the information of the calculated active sensor circle gravity center position, and calculates the gravity center position ep deviated from the calculated plane Sf. It corrects to the barycentric position ap on the plane Sf.
  • the center-of-gravity correction unit 165 indicates the active sensor circle center of gravity position obtained by the active sensor system processing indicated by the black cross
  • the center position is corrected by shifting the whole such that the difference with the circle center position, which is a design value indicated by the cross mark, is minimized.
  • step S71 the projection error minimization unit 143 determines whether or not the density is higher than a predetermined value based on whether the density of the three-dimensional point group information detected by the LiDAR 111 is higher than a predetermined value. If it is determined to be dense, the process proceeds to step S72.
  • step S72 the projection error minimization unit 143 obtains the average value of all the data of the three-dimensional point group information in the processing target circle, and outputs the average value as the barycentric position of the processing target circle.
  • the circle gravity center calculation unit 163 sets the processing object circle Cx as shown in the example Ex1 of FIG. 13 and the points included in the processing object circle Cx as shown in the example Ex2 of FIG. Read out 3D point cloud information expressed by. Then, the circle centroid calculation unit 163 calculates, as the active sensor circle centroid position, the centroid position in the three-dimensional point group information in the process target circle Cx, as indicated by the cross in the example Ex3 of FIG.
  • step S71 determines whether the density of the three-dimensional point group information is smaller than the predetermined value and not dense but sparse. If it is determined in step S71 that the density of the three-dimensional point group information is smaller than the predetermined value and not dense but sparse, the process proceeds to step S73.
  • step S73 the circle centroid calculation unit 163 determines whether or not two or more scan lines exist in the processing target circle, and when it is determined that two or more lines exist, the process proceeds to step S74.
  • step S74 the circle centroid calculation unit 163 extracts information of a position that is an intersection of the processing target circle and the scan line as information of an end point.
  • step S75 the circle gravity center calculation unit 163 extracts a combination of three unprocessed points among the extracted end points as a processing target end point.
  • step S76 the circle centroid calculation unit 163 calculates and stores the center of the circumscribed circle of three points to be the processing target end point as the circle centroid position.
  • step S77 the circle gravity center calculation unit 163 determines whether or not there are three unprocessed points among the combinations of three end points, and there is a combination of three unprocessed points. , Processing returns to step S74.
  • steps S75 to S77 is repeated until the barycentric position is determined by all combinations of three end points among all the end points.
  • step S77 when the barycentric position is determined by the combination of all three end points, the process proceeds to step S78.
  • step S78 the circle centroid calculation unit 163 obtains the average of the centroid positions determined by the combination of all the obtained three end points, and the average value of the determined centroid positions is used as the active sensor circle centroid in the processing target circle. Output as a position.
  • step S73 if there are two or more scan lines in step S73, the process proceeds to step S79.
  • step S79 the circle gravity center calculation unit 163 outputs that the gravity center position can not be calculated.
  • the circle gravity center calculation unit 163 sets the circle Cx1 as the processing target circle Cx1 as illustrated in an example Ex11 of FIG. 14.
  • a case where there are two scan lines included in the process target circle Cx1 is the scan lines SC1 and SC2.
  • step S74 As shown in the example Ex13 of FIG. 14, the end points Pa to Pd, which are intersection points of the scan lines SC1 and SC2 and the process target circle Cx, are extracted. In the case where there are two scan lines on the processing target circle Cx, four end points are obtained as indicated by end points Pa to Pd.
  • a circumscribed circle is determined using a combination of three of the end points Pa to Pd, and the center position is calculated as the barycentric position, By repeatedly determining all combinations of three points, the center of gravity is determined as indicated by the cross mark of Ex 15. In the example Ex15, since four combinations of three points are to be obtained, four barycentric positions are to be obtained.
  • step S78 the average of the barycentric positions of the four points is determined as the barycentric position of the process target circle Cx, and is output as the active sensor circle barycentric position. Ru.
  • the shape of the marker 121 in the calibration sheet 113 is a circle (circular shape) and is formed of a retroreflective material
  • the barycentric position of the circle-shaped marker 121 is an active sensor LiDAR 111 and a passive sensor RGB camera It is determined as the corresponding point in the sensing result with 112.
  • the barycentric position of the circle can be used as the position of each marker. Therefore, utilizing the fact that each barycentric position is the same plane, Geometrical correction makes it possible to improve the calculation accuracy of the center of gravity position, and as a result, highly accurate calibration can be realized.
  • Second Embodiment of the Present Disclosure >>
  • a circular marker 121 is formed on the calibration sheet 113 using a retroreflective material, and the calibration sheet 113 is sensed using the LiDAR 111 as an active sensor and the RGB camera 112 as a passive sensor.
  • the rotation matrix R and the translation matrix so that the displacement between the LiDAR 111 and the RGB camera 112 can be corrected such that the barycentric positions of the circles detected corresponding to the markers 121 obtained as the respective sensing results become corresponding points.
  • requiring and t has been demonstrated.
  • the shape of the marker 121 may not be circular as long as corresponding points in the sensing results of the LiDAR 111 and the RGB camera 112 are determined, and may be, for example, a square shape such as a diamond.
  • FIG. 16 shows a configuration example of a calibration system 100 in which a diamond-shaped marker 201 is formed on a calibration sheet 113.
  • the calibration system 100 of FIG. 16 differs from the calibration system 100 of FIG. 4 in that diamond-shaped markers 201 are provided instead of the circular markers 121 formed on the calibration sheet 113. That is the point.
  • the calibration unit 114 obtains a rotation matrix R and a translation matrix t as corresponding points in the sensing results of the LiDAR 111 and the RGB camera 112 for each corner point of the diamond shaped marker 201.
  • the calibration sheet 113 is placed on the LiDAR 111.
  • the three-dimensional point cloud information indicating the position of the calibration sheet 113 is obtained by measuring the distance between the two.
  • the LiDAR 111 is detected on the calibration sheet 113 in a state in which the reflection intensity is high in the area ZN of the marker 201 and is higher than the other areas.
  • the horizontal axis represents the position on the scan line L111
  • the vertical axis represents the reflection intensity.
  • the ranges a11 to a12, a13 to a14, a15 to a16 belonging to the region ZN of the marker 201 The reflection intensity is high, and the other areas are low.
  • the reflection intensity of the laser light indicated by the gray points in the area where the marker 201 is provided is higher than a predetermined value.
  • a corner point of the range of the diamond shape of the marker 201 is obtained as a corner position of the marker 201 indicated by a white cross.
  • the calibration sheet 113 imaged by the RGB camera 112 is, for example, an image as shown by an image P201 in FIG.
  • the position indicated by the black cross can be determined as the rhombus corner position consisting of the marker 201.
  • the calibration unit 114 recognizes the marker on the calibration sheet 113 recognized on the basis of the scan result of the LiDAR 111 indicated by the white cross in the corner distribution map R14, as shown in the comparison diagram CL11 of FIG.
  • a rotation matrix R for correlating the two coordinate systems based on the positional relationship between the barycentric position of 201 and the barycentric position of the marker 121 indicated by a black cross detected by the image P201 captured by the RGB camera 112.
  • the translation matrix t is also used to calculate the translation matrix t.
  • the calibration unit 114 in FIG. 16 includes a passive sensor system processing unit 211, an active sensor system processing unit 212, and a projection error minimizing unit 213.
  • the passive sensor system processing unit 211 obtains the corner position of the rhombus constituting the marker 201 based on the image that is the sensing result of the RGB camera 112 which is a passive sensor, and outputs the corner position to the projection error minimizing unit 143.
  • the passive sensor system processing unit 211 includes a corner detection unit 221 and an erroneous detection removal unit 222.
  • the corner detection unit 221 detects a corner of a range of the calibration sheet 113 in the image, which is a portion where the diamond-shaped marker 201 is formed, based on the image supplied from the RGB camera 112 and detects the corner.
  • the information on the position in the image is output to the false detection and removal unit 222.
  • the false detection removal unit 222 removes false detection at a corner position in the image by using information of geometrical arrangement of the markers 201 on the calibration sheet 113, and the image is captured by the RGB camera 112.
  • the information on the position of the two-dimensional corner in the image is output to the projection error minimizing unit 213.
  • Information on the corner position detected by the RGB camera 112 as a passive sensor is referred to as passive sensor corner position information.
  • the active sensor system processing unit 212 obtains a corner position based on three-dimensional point group information which is a sensing result of the LiDAR 111 which is an active sensor, and outputs the corner position to the projection error minimizing unit 143.
  • the active sensor system processing unit 212 includes a reflection intensity filter 231, a clustering unit 232, and a corner calculation unit 233.
  • the reflection intensity filter 231 forms the marker 201 on the calibration sheet 113 by extracting only the distribution of the reflection intensity larger than the predetermined threshold with respect to the information of the distribution of the reflection intensity supplied from the LiDAR 111.
  • the distribution of the reflection intensity present in the range of the diamond shape is extracted and output to the clustering unit 232.
  • the clustering unit 232 extracts a distribution of markers 201 having a rhombus shape by clustering a distribution having a reflection intensity larger than a predetermined threshold output from the reflection intensity filter 161 and is a clustering result of the marker 201 unit. Information on the distribution of the reflection intensity is output to the corner calculation unit 233.
  • the corner calculation unit 233 calculates the coordinates of the corner in the distribution of the reflection intensity of the clustered rhombus-shaped markers 201, and the projection error minimizing unit is used as the information on the corner position obtained based on the scan result of LiDAR 111. Output to 213. Information on the corner position detected by the active sensor LiDAR 111 is referred to as active sensor corner position information.
  • the projection error minimization unit 213 uses the correlation between the active sensor corner position information obtained based on the scan result of the LiDAR 111 and the passive sensor corner position information obtained based on the imaging result of the RGB camera 112. Then, a rotation matrix R and a translation matrix t necessary to minimize the deviation between the LiDAR 111 and the RGB camera 112 are calculated.
  • the marker 121 on the calibration sheet 113 uses the barycentric position of the circular circle as the corresponding point, while in the calibration system 100 of FIG.
  • the processing other than the point in which the corners of the marker 201 in the shape of the shape are taken as the corresponding points is the same as the processing described with reference to the flowchart of FIG.
  • the passive sensor system process and the active sensor system process are different from each other, they will be described below.
  • step S101 the corner detection unit 221 of the passive sensor system processing unit 211 recognizes the marker 201 on the calibration sheet 113 by image recognition from the image captured by the RGB camera 112, and further detects the corner of the marker 201. To memorize.
  • step S102 the corner detection unit 221 sets an unprocessed corner as a processing target corner.
  • step S103 the corner detection unit 221 calculates the coordinate position in the image of the processing target corner, and outputs the coordinate position to the erroneous detection removal unit 222 for storage.
  • step S104 the corner detection unit 221 determines whether or not there is an unprocessed corner. If there is an unprocessed corner, the process returns to step S102. That is, the process of steps S102 to S104 is repeated until all coordinate positions are calculated for all corners of all the markers 201 on the calibration sheet 113. Then, in step S104, when the coordinate positions of all the corners are calculated, it is considered that there is no unprocessed corner, and the process proceeds to step S105.
  • step S105 the false detection and removal unit 222 clearly detects false detection among the coordinate positions of the corner obtained based on the information of the position of the marker 201 on the calibration sheet 113 which is a known design value.
  • the detection result that is recognized to be removed is removed, and output to the projection error minimizing unit 213 as passive sensor corner position information.
  • step S121 the reflection intensity filter 231 of the active sensor system processing unit 212 extracts point cloud information having a reflection intensity higher than a predetermined value from among three-dimensional point cloud information which is a sensing result of the LiDAR 111 which is an active sensor. It is output to the clustering unit 232.
  • step S122 the clustering unit 232 extracts three-dimensional point group information whose reflection intensity is higher than a predetermined value, and the point group information existing within the predetermined range is an area corresponding to one
  • the point cloud information which is regarded as information and is clustered, and which is substantially clustered in the unit of the diamond shaped marker 201 is output to the corner calculation unit 233.
  • step S123 the corner calculation unit 233 sets any point cloud information of an unprocessed class as point cloud information of the diamond-shaped marker 201 to be processed.
  • step S124 the corner calculation unit 233 executes corner coordinate calculation processing to obtain the coordinates of the corner position of the point cloud information clustered on the diamond-shaped marker 201 to be processed, and outputs the coordinates to the projection error minimizing unit 213. Do.
  • the corner coordinate calculation process will be described later in detail with reference to the flowchart of FIG.
  • step S125 the corner calculation unit 233 determines whether or not the coordinates of the corner position are regarded as uncalculable in the corner coordinate calculation processing. If the calculation is not impossible, that is, the coordinates of the corner position are determined. If yes, the process proceeds to step S126.
  • step S126 the corner calculation unit 233 determines whether or not there is an unprocessed class, and if there is an unprocessed class, the process returns to step S123. That is, the process of steps S123 to S126 is repeated until the coordinates of the corner position of the point cloud information of all classes are calculated as active sensor corner position information.
  • step S126 when the coordinates of the corner positions of the point cloud information of all the classes, that is, all the diamond shaped markers 201 are calculated in step S126, the process ends.
  • step S125 when the impossibility of calculation is output, the process proceeds to step S127, and the corner calculation unit 233 outputs the impossibility of calculation of the corner position.
  • step S141 the corner calculation unit 233 determines whether four or more scan lines exist in the diamond-shaped marker 201 to be processed, and if it is determined that four or more lines exist, the process proceeds to step S142. Go to
  • step S142 the corner calculation unit 233 extracts information of a position that is an intersection of the processing target marker and the scan line as information of an end point.
  • step S143 the corner calculation unit 233 sets, for each of the extracted end points, a straight line connecting adjacent end points.
  • step S144 the corner calculation unit 233 calculates the coordinates of the intersection point position of the set straight lines or the coordinates of the midpoint position of the re-approximated position, and stores the calculated coordinates as the corner position coordinates.
  • step S145 the corner calculating unit 233 outputs the determined coordinates of the corner position to the projection error minimizing unit 213 as information of the coordinates of the corner position in the processing target marker.
  • step S141 if four or more scan lines do not exist in step S141, the process proceeds to step S146.
  • step S146 the corner calculating unit 233 outputs that the coordinates of the corner position can not be calculated.
  • the marker Cx100 is considered.
  • the corner calculation unit 233 sets the marker as the processing target marker Cx100 as illustrated in an example Ex101 of FIG.
  • an example Ex102 in FIG. 22 a case is considered where there are four scan lines of the LiDAR 111 included in the processing target marker Cx 100, which are scan lines SC1 to SC4.
  • step S142 By the process of step S142, as shown in an example Ex103 of FIG. 22, end points Pa to Ph that are intersection points of the scan lines SC1 to SC4 and the processing target marker Cx 100 are extracted. In the case where there are four scan lines on the processing target marker Cx 100, eight end points are obtained as indicated by end points Pa to Ph.
  • step S143 as shown in the example Ex104 of FIG. 22, straight lines connecting the end points Pa and Pc, the end points Pb and Pd, the end points Pe and Pg, and the end points Pf and Ph are set.
  • straight line L1 where the end points Pa and Pc are connected and the straight line L2 where the end points Pb and Pd are connected are shown.
  • step S144 as shown by the example Ex105 in FIG. 22, an intersection CL1 with the straight lines L1 and L2 is obtained as the coordinates of the corner position.
  • the three-dimensional point group information is not continuous space information but only point group information measured by LiDAR, there is a possibility that it does not necessarily intersect the straight lines L1 and L2. Therefore, in such a case, as shown in the example Ex 105 ′ of FIG. 22, the midpoint of the closest position between the straight lines L 1 and L 2 is obtained as the corner position information.
  • each of four points CL11 to CL14 of the diamond-shaped marker 201 to be processed is obtained as the coordinates of the corner position.
  • the active sensor corner position determined by the LiDAR 111 and the passive sensor corner position determined by the RGB camera 112 when the calibration sheet 113 including the marker 201 is included in the sensing area by the series of calibration processes described above thus, it is possible to obtain a rotation matrix R and a translation matrix t which are used for the correction to minimize the deviation of the detection results of the LiDAR 111 and the RGB camera 112.
  • the markers need not have the same shape. It does not have to be arranged regularly.
  • the circular marker 251, the triangular marker 252, and the square marker 253 may be arranged on the calibration sheet 113 in a mixed state.
  • the marker 262 may be formed of a material that absorbs light.
  • three-dimensional point group information of the marker 261 can be extracted by extracting three-dimensional point group information whose reflection intensity is lower than a predetermined value.
  • the marker can be detected by the active sensor as a region of reflection intensity higher than a predetermined reflection intensity different from other objects, or a region of reflection intensity lower than the predetermined reflection intensity, and as an image by a passive sensor It may be any one that can be recognized by its shape or color.
  • the number of unknowns of the rotation matrix R and the translation matrix t is 12, and six sets of information of corresponding points need to be present.
  • the sensing result of 112 six sets of sensing results may be used for one frame, or sensing results obtained from six different frames in time series may be used.
  • the marker since it is sufficient for the marker to be position information that can be mutually recognized by the LiDAR 111 and the RGB camera 112 as a corresponding point, for example, a road sign painted with a retroreflective material may be used instead of the marker .
  • the LiDAR 111 and the RGB 112 detect three-dimensional point group information in the monitoring area Z 201 in front of the vehicle and pick up an image from the front window of the vehicle.
  • a road sign painted with a retroreflective material is used as a marker 271, and corresponding points in the marker 271 From this, each element of the rotation matrix R and the translation matrix t may be obtained.
  • equation (5) can be solved if it is determined for at least six frames or more.
  • calibration with the LiDAR 111 or the RGB camera 112 mounted on a mobile object such as a vehicle can be repeatedly performed at any timing without preparing a specific calibration sheet.
  • At least two areas where the reflection intensity of the light projected by the active sensor according to the LiDAR 111 can be set can be set to at least two areas, so the area provided with the road sign coated with the retroreflective material And the other space may be regarded as a calibration sheet to perform calibration.
  • the LiDAR 111 is used as the active sensor and the RGB camera 112 is used as the passive sensor
  • other sensors may be used as the active sensor and the passive sensor.
  • the active sensor may be, for example, a ToF (Time of Flight) sensor, a laser radar, or the like, and for the calibration sheet (for the sensing area required for calibration), a marker, a road sign, etc.
  • Other sensors may be used as long as they can detect regions with different reflectances with different reflection intensities.
  • an IR (Infrared) camera or the like may be used, and a marker or a road sign can be detected as an image (with respect to a sensing area required for calibration) If it is a sensor that can be recognized as a shape or a shape, another sensor may be used.
  • IR Infrared
  • FIG. 25 shows a configuration example of a general-purpose computer.
  • This personal computer incorporates a CPU (Central Processing Unit) 1001.
  • An input / output interface 1005 is connected to the CPU 1001 via the bus 1004.
  • a ROM (Read Only Memory) 1002 and a RAM (Random Access Memory) 1003 are connected to the bus 1004.
  • the input / output interface 1005 includes an input unit 1006 including an input device such as a keyboard and a mouse through which the user inputs an operation command, an output unit 1007 for outputting a processing operation screen and an image of a processing result to a display device, programs and various data.
  • a storage unit 1008 including a hard disk drive to be stored, a LAN (Local Area Network) adapter, and the like are connected to a communication unit 1009 that executes communication processing via a network represented by the Internet.
  • a magnetic disc including a flexible disc
  • an optical disc including a compact disc-read only memory (CD-ROM), a digital versatile disc (DVD)
  • a magneto-optical disc including a mini disc (MD)
  • a semiconductor A drive 1010 for reading and writing data to a removable medium 1011 such as a memory is connected.
  • the CPU 1001 reads a program stored in the ROM 1002 or a removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, is installed in the storage unit 1008, and is loaded from the storage unit 1008 to the RAM 1003. Execute various processes according to the program.
  • the RAM 1003 also stores data necessary for the CPU 1001 to execute various processes.
  • the CPU 1001 loads the program stored in the storage unit 1008 into the RAM 1003 via the input / output interface 1005 and the bus 1004, and executes the program. Processing is performed.
  • the program executed by the computer (CPU 1001) can be provided by being recorded on, for example, a removable medium 1011 as a package medium or the like. Also, the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the storage unit 1008 via the input / output interface 1005 by mounting the removable media 1011 in the drive 1010.
  • the program can be received by the communication unit 1009 via a wired or wireless transmission medium and installed in the storage unit 1008.
  • the program can be installed in advance in the ROM 1002 or the storage unit 1008.
  • the program executed by the computer may be a program that performs processing in chronological order according to the order described in this specification, in parallel, or when necessary, such as when a call is made. It may be a program to be processed.
  • the CPU 1001 in FIG. 25 implements the function of the calibration unit 114 in FIGS. 7 and 18.
  • a system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same case. Therefore, a plurality of devices housed in separate housings and connected via a network, and one device housing a plurality of modules in one housing are all systems. .
  • the present disclosure can have a cloud computing configuration in which one function is shared and processed by a plurality of devices via a network.
  • each step described in the above-described flowchart can be executed by one device or in a shared manner by a plurality of devices.
  • the plurality of processes included in one step can be executed by being shared by a plurality of devices in addition to being executed by one device.
  • the technology according to the present disclosure can be applied to various products.
  • the technology according to the present disclosure is any type of movement, such as automobiles, electric vehicles, hybrid electric vehicles, motorcycles, bicycles, personal mobility, airplanes, drones, ships, robots, construction machines, agricultural machines (tractors), etc. It may be realized as a device mounted on the body.
  • FIG. 26 is a block diagram showing a schematic configuration example of a vehicle control system 7000 which is an example of a mobile control system to which the technology according to the present disclosure can be applied.
  • Vehicle control system 7000 comprises a plurality of electronic control units connected via communication network 7010.
  • the vehicle control system 7000 includes a drive system control unit 7100, a body system control unit 7200, a battery control unit 7300, an external information detection unit 7400, an in-vehicle information detection unit 7500, and an integrated control unit 7600. .
  • the communication network 7010 connecting the plurality of control units is, for example, an arbitrary standard such as CAN (Controller Area Network), LIN (Local Interconnect Network), LAN (Local Area Network), or FlexRay (registered trademark). It may be an in-vehicle communication network.
  • CAN Controller Area Network
  • LIN Local Interconnect Network
  • LAN Local Area Network
  • FlexRay registered trademark
  • Each control unit includes a microcomputer that performs arithmetic processing in accordance with various programs, a storage unit that stores programs executed by the microcomputer or parameters used in various arithmetic operations, and drive circuits that drive devices to be controlled. Equipped with Each control unit is provided with a network I / F for communicating with other control units via the communication network 7010, and by wired communication or wireless communication with an apparatus or sensor inside or outside the vehicle. A communication I / F for performing communication is provided. In FIG.
  • a microcomputer 7610 As a functional configuration of the integrated control unit 7600, a microcomputer 7610, a general-purpose communication I / F 7620, a dedicated communication I / F 7630, a positioning unit 7640, a beacon receiving unit 7650, an in-vehicle device I / F 7660, an audio image output unit 7670, An in-vehicle network I / F 7680 and a storage unit 7690 are illustrated.
  • the other control units also include a microcomputer, a communication I / F, a storage unit, and the like.
  • Drive system control unit 7100 controls the operation of devices related to the drive system of the vehicle according to various programs.
  • drive system control unit 7100 includes a drive force generation device for generating a drive force of a vehicle such as an internal combustion engine or a drive motor, a drive force transmission mechanism for transmitting the drive force to the wheels, and a steering angle of the vehicle. It functions as a control mechanism such as a steering mechanism that adjusts and a braking device that generates a braking force of the vehicle.
  • the drive system control unit 7100 may have a function as a control device such as an ABS (Antilock Brake System) or an ESC (Electronic Stability Control).
  • Vehicle state detection unit 7110 is connected to drive system control unit 7100.
  • the vehicle state detection unit 7110 may be, for example, a gyro sensor that detects an angular velocity of an axial rotational movement of a vehicle body, an acceleration sensor that detects an acceleration of the vehicle, or an operation amount of an accelerator pedal, an operation amount of a brake pedal, and steering of a steering wheel. At least one of the sensors for detecting the angle, the engine speed, the rotational speed of the wheel, etc. is included.
  • Drive system control unit 7100 performs arithmetic processing using a signal input from vehicle state detection unit 7110 to control an internal combustion engine, a drive motor, an electric power steering device, a brake device, and the like.
  • Body system control unit 7200 controls the operation of various devices equipped on the vehicle body according to various programs.
  • the body control unit 7200 functions as a keyless entry system, a smart key system, a power window device, or a control device of various lamps such as a head lamp, a back lamp, a brake lamp, a blinker or a fog lamp.
  • the body system control unit 7200 may receive radio waves or signals of various switches transmitted from a portable device substituting a key.
  • Body system control unit 7200 receives the input of these radio waves or signals, and controls a door lock device, a power window device, a lamp and the like of the vehicle.
  • the battery control unit 7300 controls the secondary battery 7310 which is a power supply source of the drive motor according to various programs. For example, information such as the battery temperature, the battery output voltage, or the remaining capacity of the battery is input to the battery control unit 7300 from the battery device provided with the secondary battery 7310. The battery control unit 7300 performs arithmetic processing using these signals, and performs temperature adjustment control of the secondary battery 7310 or control of a cooling device or the like provided in the battery device.
  • Outside-vehicle information detection unit 7400 detects information outside the vehicle equipped with vehicle control system 7000.
  • the imaging unit 7410 and the external information detection unit 7420 is connected to the external information detection unit 7400.
  • the imaging unit 7410 includes at least one of a time-of-flight (ToF) camera, a stereo camera, a monocular camera, an infrared camera, and another camera.
  • ToF time-of-flight
  • an environment sensor for detecting the current weather or weather, or another vehicle, an obstacle or a pedestrian around the vehicle equipped with the vehicle control system 7000 is detected in the outside-vehicle information detection unit 7420, for example.
  • the ambient information detection sensors at least one of the ambient information detection sensors.
  • the environment sensor may be, for example, at least one of a raindrop sensor that detects wet weather, a fog sensor that detects fog, a sunshine sensor that detects sunshine intensity, and a snow sensor that detects snowfall.
  • the ambient information detection sensor may be at least one of an ultrasonic sensor, a radar device, and a light detection and ranging (LIDAR) device.
  • the imaging unit 7410 and the external information detection unit 7420 may be provided as independent sensors or devices, or may be provided as an integrated device of a plurality of sensors or devices.
  • FIG. 27 shows an example of installation positions of the imaging unit 7410 and the external information detection unit 7420.
  • the imaging units 7910, 7912, 7914, 7916, 7918 are provided at, for example, at least one of the front nose of the vehicle 7900, the side mirror, the rear bumper, the back door, and the upper portion of the windshield of the vehicle interior.
  • An imaging unit 7910 provided in the front nose and an imaging unit 7918 provided in the upper part of the windshield in the vehicle cabin mainly acquire an image in front of the vehicle 7900.
  • the imaging units 7912 and 7914 provided in the side mirror mainly acquire an image of the side of the vehicle 7900.
  • An imaging unit 7916 provided in the rear bumper or back door mainly acquires an image behind the vehicle 7900.
  • the imaging unit 7918 provided on the upper part of the windshield in the passenger compartment is mainly used to detect a leading vehicle or a pedestrian, an obstacle, a traffic light, a traffic sign, a lane, or the like.
  • FIG. 27 illustrates an example of the imaging range of each of the imaging units 7910, 7912, 7914, and 7916.
  • the imaging range a indicates the imaging range of the imaging unit 7910 provided on the front nose
  • the imaging ranges b and c indicate the imaging ranges of the imaging units 7912 and 7914 provided on the side mirrors
  • the imaging range d indicates The imaging range of the imaging part 7916 provided in the rear bumper or the back door is shown.
  • a bird's-eye view of the vehicle 7900 as viewed from above can be obtained.
  • the external information detection units 7920, 7922, 7924, 7926, 7928, and 7930 provided on the front, rear, sides, and corners of the vehicle 7900 and above the windshield of the vehicle interior may be, for example, ultrasonic sensors or radar devices.
  • the external information detection units 7920, 7926, 7930 provided on the front nose of the vehicle 7900, the rear bumper, the back door, and the upper part of the windshield of the vehicle interior may be, for example, a LIDAR device.
  • These outside-of-vehicle information detection units 7920 to 7930 are mainly used for detecting a preceding vehicle, a pedestrian, an obstacle or the like.
  • the out-of-vehicle information detection unit 7400 causes the imaging unit 7410 to capture an image outside the vehicle, and receives the captured image data. Further, the external information detection unit 7400 receives detection information from the external information detection unit 7420 connected. When the out-of-vehicle information detection unit 7420 is an ultrasonic sensor, a radar device, or a LIDAR device, the out-of-vehicle information detection unit 7400 transmits ultrasonic waves or electromagnetic waves and receives information on the received reflected waves.
  • the external information detection unit 7400 may perform object detection processing or distance detection processing of a person, a car, an obstacle, a sign, a character on a road surface, or the like based on the received information.
  • the external information detection unit 7400 may perform environment recognition processing for recognizing rainfall, fog, road surface conditions and the like based on the received information.
  • the external information detection unit 7400 may calculate the distance to an object outside the vehicle based on the received information.
  • the external information detection unit 7400 may perform image recognition processing or distance detection processing for recognizing a person, a car, an obstacle, a sign, a character on a road surface, or the like based on the received image data.
  • the external information detection unit 7400 performs processing such as distortion correction or alignment on the received image data, and combines the image data captured by different imaging units 7410 to generate an overhead image or a panoramic image. It is also good.
  • the external information detection unit 7400 may perform viewpoint conversion processing using image data captured by different imaging units 7410.
  • An in-vehicle information detection unit 7500 detects information in the vehicle.
  • a driver state detection unit 7510 that detects a state of a driver is connected to the in-vehicle information detection unit 7500.
  • the driver state detection unit 7510 may include a camera for imaging the driver, a biometric sensor for detecting the driver's biological information, a microphone for collecting sound in the vehicle interior, and the like.
  • the biological sensor is provided, for example, on a seat or a steering wheel, and detects biological information of an occupant sitting on a seat or a driver who grips the steering wheel.
  • the in-vehicle information detection unit 7500 may calculate the degree of fatigue or concentration of the driver based on the detection information input from the driver state detection unit 7510, or determine whether the driver does not go to sleep You may The in-vehicle information detection unit 7500 may perform processing such as noise canceling processing on the collected audio signal.
  • the integrated control unit 7600 controls the overall operation in the vehicle control system 7000 in accordance with various programs.
  • An input unit 7800 is connected to the integrated control unit 7600.
  • the input unit 7800 is realized by, for example, a device such as a touch panel, a button, a microphone, a switch or a lever, which can be input operated by the passenger.
  • the integrated control unit 7600 may receive data obtained by speech recognition of speech input by the microphone.
  • the input unit 7800 may be, for example, a remote control device using infrared rays or other radio waves, or an external connection device such as a mobile phone or a PDA (Personal Digital Assistant) corresponding to the operation of the vehicle control system 7000.
  • PDA Personal Digital Assistant
  • the input unit 7800 may be, for example, a camera, in which case the passenger can input information by gesture. Alternatively, data obtained by detecting the movement of the wearable device worn by the passenger may be input. Furthermore, the input unit 7800 may include, for example, an input control circuit that generates an input signal based on the information input by the passenger or the like using the above-described input unit 7800 and outputs the generated signal to the integrated control unit 7600. The passenger or the like operates the input unit 7800 to input various data to the vehicle control system 7000 and instruct processing operations.
  • the storage unit 7690 may include a ROM (Read Only Memory) that stores various programs executed by the microcomputer, and a RAM (Random Access Memory) that stores various parameters, calculation results, sensor values, and the like.
  • the storage unit 7690 may be realized by a magnetic storage device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, a magneto-optical storage device, or the like.
  • HDD hard disk drive
  • semiconductor storage device an optical storage device
  • magneto-optical storage device or the like.
  • the general-purpose communication I / F 7620 is a general-purpose communication I / F that mediates communication with various devices existing in the external environment 7750.
  • General-purpose communication I / F 7620 is a cellular communication protocol such as GSM (registered trademark) (Global System of Mobile communications), WiMAX (registered trademark), LTE (registered trademark) (Long Term Evolution) or LTE-A (LTE-Advanced).
  • GSM Global System of Mobile communications
  • WiMAX registered trademark
  • LTE registered trademark
  • LTE-A Long Term Evolution-Advanced
  • other wireless communication protocols such as wireless LAN (also referred to as Wi-Fi (registered trademark)), Bluetooth (registered trademark), etc. may be implemented.
  • the general-purpose communication I / F 7620 is connected to, for example, an apparatus (for example, an application server or control server) existing on an external network (for example, the Internet, a cloud network, or an operator-specific network) via a base station or access point
  • an apparatus for example, an application server or control server
  • an external network for example, the Internet, a cloud network, or an operator-specific network
  • the general-purpose communication I / F 7620 is a terminal (for example, a driver, a pedestrian or a shop terminal, or an MTC (Machine Type Communication) terminal) existing near the vehicle using, for example, P2P (Peer To Peer) technology. It may be connected with
  • the dedicated communication I / F 7630 is a communication I / F that supports a communication protocol designed for use in a vehicle.
  • the dedicated communication I / F 7630 may be a standard protocol such as WAVE (Wireless Access in Vehicle Environment), DSRC (Dedicated Short Range Communications), or cellular communication protocol, which is a combination of lower layer IEEE 802.11p and upper layer IEEE 1609, for example. May be implemented.
  • the dedicated communication I / F 7630 is typically used for Vehicle to Vehicle communication, Vehicle to Infrastructure communication, Vehicle to Home communication, and Vehicle to Pedestrian. 2.) Perform V2X communication, a concept that includes one or more of the communication.
  • the positioning unit 7640 receives a GNSS signal (for example, a GPS signal from a Global Positioning System (GPS) satellite) from, for example, a Global Navigation Satellite System (GNSS) satellite and executes positioning, thereby performing latitude, longitude, and altitude of the vehicle.
  • Generate location information including Positioning section 7640 may specify the current position by exchanging signals with the wireless access point, or may acquire position information from a terminal such as a mobile phone having a positioning function, a PHS, or a smartphone.
  • the beacon receiving unit 7650 receives, for example, radio waves or electromagnetic waves transmitted from a radio station or the like installed on a road, and acquires information such as the current position, traffic jams, closing times or required time.
  • the function of the beacon reception unit 7650 may be included in the above-described dedicated communication I / F 7630.
  • An in-vehicle apparatus I / F 7660 is a communication interface that mediates the connection between the microcomputer 7610 and various in-vehicle apparatuses 7760 existing in the vehicle.
  • the in-car device I / F 7660 may establish a wireless connection using a wireless communication protocol such as wireless LAN, Bluetooth (registered trademark), NFC (Near Field Communication), or WUSB (Wireless USB).
  • a wireless communication protocol such as wireless LAN, Bluetooth (registered trademark), NFC (Near Field Communication), or WUSB (Wireless USB).
  • the in-vehicle device I / F 7660 is connected via a connection terminal (not shown) (and, if necessary, a cable) via USB (Universal Serial Bus), HDMI (High-Definition Multimedia Interface), or MHL (Mobile)
  • USB Universal Serial Bus
  • HDMI High-Definition Multimedia Interface
  • MHL Mobile
  • the in-vehicle device 7760 may include, for example, at least one of a mobile device or wearable device owned by a passenger, or an information device carried in or attached to a vehicle. Further, the in-vehicle device 7760 may include a navigation device for performing a route search to any destination.
  • the in-vehicle device I / F 7660 exchanges control signals or data signals with these in-vehicle devices 7760.
  • the in-vehicle network I / F 7680 is an interface that mediates communication between the microcomputer 7610 and the communication network 7010.
  • the in-vehicle network I / F 7680 transmits and receives signals and the like in accordance with a predetermined protocol supported by the communication network 7010.
  • the microcomputer 7610 of the integrated control unit 7600 is connected via at least one of a general-purpose communication I / F 7620, a dedicated communication I / F 7630, a positioning unit 7640, a beacon reception unit 7650, an in-vehicle device I / F 7660, and an in-vehicle network I / F 7680.
  • the vehicle control system 7000 is controlled in accordance with various programs based on the information acquired. For example, the microcomputer 7610 calculates a control target value of the driving force generation device, the steering mechanism or the braking device based on the acquired information inside and outside the vehicle, and outputs a control command to the driving system control unit 7100. It is also good.
  • the microcomputer 7610 realizes the function of an advanced driver assistance system (ADAS) including collision avoidance or shock mitigation of a vehicle, follow-up traveling based on an inter-vehicle distance, vehicle speed maintenance traveling, vehicle collision warning, vehicle lane departure warning, etc. Cooperative control for the purpose of In addition, the microcomputer 7610 automatically runs without using the driver's operation by controlling the driving force generating device, the steering mechanism, the braking device, etc. based on the acquired information of the surroundings of the vehicle. Coordinated control may be performed for the purpose of driving and the like.
  • ADAS advanced driver assistance system
  • the microcomputer 7610 is information acquired via at least one of a general-purpose communication I / F 7620, a dedicated communication I / F 7630, a positioning unit 7640, a beacon reception unit 7650, an in-vehicle device I / F 7660, and an in-vehicle network I / F 7680. Based on the above, three-dimensional distance information between the vehicle and an object such as a surrounding structure or a person may be generated, and local map information including the peripheral information of the current position of the vehicle may be created. Further, the microcomputer 7610 may predict a danger such as a collision of a vehicle or a pedestrian or the like approaching a road or the like on the basis of the acquired information, and may generate a signal for warning.
  • the warning signal may be, for example, a signal for generating a warning sound or lighting a warning lamp.
  • the audio image output unit 7670 transmits an output signal of at least one of audio and image to an output device capable of visually or aurally notifying information to a passenger or the outside of a vehicle.
  • an audio speaker 7710, a display unit 7720, and an instrument panel 7730 are illustrated as output devices.
  • the display unit 7720 may include, for example, at least one of an on-board display and a head-up display.
  • the display portion 7720 may have an AR (Augmented Reality) display function.
  • the output device may be another device such as a headphone, a wearable device such as a glasses-type display worn by a passenger, a projector, or a lamp other than these devices.
  • the display device may obtain information obtained from various processes performed by the microcomputer 7610 or information received from another control unit in various formats such as text, images, tables, graphs, etc. Display visually.
  • the audio output device converts an audio signal composed of reproduced audio data or audio data into an analog signal and outputs it in an auditory manner.
  • At least two control units connected via the communication network 7010 may be integrated as one control unit.
  • each control unit may be configured by a plurality of control units.
  • the vehicle control system 7000 may comprise another control unit not shown.
  • part or all of the functions of any control unit may be provided to another control unit. That is, as long as transmission and reception of information are performed via the communication network 7010, predetermined arithmetic processing may be performed by any control unit.
  • a sensor or device connected to any control unit is connected to another control unit, a plurality of control units may mutually transmit and receive detection information via the communication network 7010. .
  • a computer program for realizing each function of the calibration unit 114 according to the present embodiment described with reference to FIGS. 7 and 18 can be implemented in any control unit or the like.
  • a computer readable recording medium in which such a computer program is stored can be provided.
  • the recording medium is, for example, a magnetic disk, an optical disk, a magneto-optical disk, a flash memory or the like.
  • the above computer program may be distributed via, for example, a network without using a recording medium.
  • the calibration unit 114 can be applied to the integrated control unit 7600 of the application example shown in FIG.
  • the passive sensor system processing units 141 and 211, the active sensor system processing units 142 and 212, and the projection error minimizing units 143 and 213 of the calibration unit 114 are the microcomputer 7610 of the integrated control unit 7600, the storage unit 7690, and the on-vehicle unit. It corresponds to network I / F 7680.
  • calibration can be performed between the LiDAR device that is the outside vehicle information detection unit 7420 and the imaging unit 7410.
  • the calibration unit 114 described with reference to FIGS. 7 and 18 is a module for the integrated control unit 7600 shown in FIG. 26 (for example, an integrated circuit configured with one die) Module).
  • the calibration unit 114 described with reference to FIGS. 7 and 18 may be realized by a plurality of control units of the vehicle control system 7000 shown in FIG.
  • the present disclosure can also have the following configurations.
  • An active sensor object position detection unit that detects position information of a predetermined object as active sensor object position information based on the reflection intensity by an active sensor capable of acquiring reflection intensity;
  • a passive sensor object position detection unit that detects position information of the predetermined object detected by a passive sensor as passive sensor object position information;
  • An image processing apparatus comprising: a calibration unit that calibrates the active sensor and the passive sensor based on the active sensor object position information and the passive sensor object position information that correspond to each other.
  • the active sensor object position information is three-dimensional point group information of the predetermined object
  • the passive sensor object position information is position information in a two-dimensional image in which the predetermined object is captured
  • the active sensor object position detection unit extracts three-dimensional point group information corresponding to the partial range in the predetermined object based on the reflection intensity, and corresponds to the partial range extracted
  • the active sensor object position information is detected from dimensional point cloud information
  • the image processing apparatus according to ⁇ 2>, wherein the passive sensor object position detection unit detects position information of the predetermined object from the two-dimensional image, and outputs the position information as the passive sensor object position information.
  • the predetermined object is a planar sheet in which a member having a reflectance different from the range of the other part is formed in the circle-like part of the area
  • the active sensor object position detection unit detects, as the active sensor object position information, a barycentric position of three-dimensional point group information corresponding to the extracted part of the circle shape.
  • the image processing apparatus according to ⁇ 3>, wherein the passive sensor object position detection unit detects the center-of-gravity position of the part of the circle shape from the two-dimensional image and outputs the position as the passive sensor object position information. .
  • the active sensor object position detection unit detects, as the active sensor object position information, a barycentric position formed of an average value of three-dimensional point group information corresponding to the extracted partial range of the circle shape.
  • the image processing apparatus as described in ⁇ 4>.
  • the active sensor object position detection unit is configured to extract the circle shape when the density of the three-dimensional point group information corresponding to the extracted range of the circle shape is higher than a predetermined density.
  • the active sensor object position detection unit extracts the end point of the circle-shaped range of the scan line of the active sensor from the extracted three-dimensional point group information corresponding to the partial range of the circle-shaped
  • the image processing apparatus according to ⁇ 4>, wherein a barycentric position obtained based on information of the end point is detected as the active sensor object position information.
  • the active sensor object position detection unit when the density of the three-dimensional point group information corresponding to the extracted partial range of the circular shape is lower than a predetermined density, the extracted one of the circular shape
  • the end point of the circle-like range of the scan line of the active sensor is extracted from the three-dimensional point group information corresponding to the range of the part, and the barycentric position determined based on the information of the end point corresponds to the active sensor object position
  • the image processing apparatus according to ⁇ 7>, which detects information.
  • the active sensor object position detection unit extracts an end point of the circle-like range of the scan line of the active sensor from among the extracted three-dimensional point group information corresponding to the partial range of the circle-like shape And detecting, as the active sensor object position information, a center-of-gravity position formed by an average of center positions of circumscribed circles obtained for all combinations of three extracted end points. . ⁇ 10>
  • the constraint condition is that the position of the center of gravity determined from the three-dimensional point group information corresponding to the extracted partial range of the circle shape is the position information on the same plane corresponding to the sheet.
  • the image processing apparatus according to ⁇ 4>, further including a gravity center position correction unit that corrects a gravity center position obtained from three-dimensional point group information corresponding to the part of the circle.
  • the calibration unit includes the active sensor object position information including position information of the partial range of at least six sets of the predetermined object, which correspond to each other, and the predetermined object.
  • the image processing apparatus according to any one of ⁇ 3> to ⁇ 10>, wherein the active sensor and the passive sensor are calibrated based on the passive sensor object position information including position information of a partial range.
  • the active sensor object position information including position information of the partial range of the predetermined object for one frame of the calibration unit, and the partial range of the predetermined object When calibrating the active sensor and the passive sensor based on the passive sensor object position information including position information, the partial range of the predetermined object is larger than at least six places ⁇ 11
  • the image processing apparatus according to>.
  • the active sensor object position information including position information of the partial range of the predetermined object at least for six frames by the calibration unit, and the partial of the predetermined object
  • the partial range of the predetermined object is more than at least one position.
  • ⁇ 14> The image processing apparatus according to ⁇ 13>, wherein the predetermined object is a road sign.
  • the calibration unit includes position information of the partial range of the predetermined object corresponding to each other by using positional information of the partial range of the predetermined predetermined object.
  • the image processing apparatus in any one of ⁇ 14>.
  • the predetermined object is planar, and a member having a reflectance different from that of the other part is formed in the part of the plurality of types of shapes and the part of the plurality of shapes.
  • the calibration unit includes the active sensor object position information including position information of the partial range of the predetermined object and the partial range of the predetermined object corresponding to each other.
  • the predetermined object is a planar sheet in which a member having a reflectance different from the range of the other part is formed in the range of the part of the rhombus shape,
  • the active sensor object position detection unit detects, as the active sensor object position information, a corner position of three-dimensional point cloud information corresponding to the partial range of the extracted diamond shape.
  • the passive sensor object position detection unit detects a corner position of the partial range of the rhombus shape from the two-dimensional information in the image, and outputs it as the passive sensor object position information ⁇ 3> to ⁇ 14>
  • the image processing apparatus according to any one of the above. ⁇ 19> Active sensor object position detection processing for detecting position information of a predetermined object whose reflection intensity is different from other regions, detected by an active sensor capable of acquiring reflection intensity as active sensor object position information; Passive sensor object position detection processing for detecting position information of the predetermined object detected by a passive sensor as passive sensor object position information; An image processing method including calibration processing of calibrating the active sensor and the passive sensor based on the active sensor object position information and the passive sensor object position information corresponding to each other.
  • An active sensor object position detection unit that detects, as an active sensor object position information, position information of a predetermined object which is detected by an active sensor capable of acquiring reflection intensity and whose reflection intensity is different from other regions;
  • a passive sensor object position detection unit that detects position information of the predetermined object detected by a passive sensor as passive sensor object position information;
  • a program that causes a computer to function as a calibration unit that calibrates the active sensor and the passive sensor based on the active sensor object position information and the passive sensor object position information that correspond to each other.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Measurement Of Optical Distance (AREA)

Abstract

本開示は、アクティブセンサとパッシブセンサとのキャリブレーションを容易に高精度で実現することができるようにする画像処理装置、および画像処理方法、並びにプログラムに関する。 反射強度が取得可能なアクティブセンサであるLiDARにより検出される反射強度が他の領域と異なるマーカの領域の位置情報と、パッシブセンサであるRGBカメラにより撮像される、マーカの領域の位置情報とに基づいて、アクティブセンサとパッシブセンサとをキャリブレーションする回転行列Rと並進行列tとを求める。LiDARとRGBカメラとのキャリブレーション装置に適用することができる。

Description

画像処理装置、および画像処理方法、並びにプログラム
 本開示は、画像処理装置、および画像処理方法、並びにプログラムに関し、特に、パッシブセンサとアクティブセンサとのキャリブレーションを簡易な構成で実現できるようにした画像処理装置、および画像処理方法、並びにプログラムに関する。
 パッシブセンサであるRGBカメラにより撮像される2次元のテクスチャデータ(画像データ)と、アクティブセンサであるLiDAR(Light Detection and Ranging,Laser Imaging Detection and Ranging)により検出される3次元点群データとを対応付けて利用して、3次元モデルを構築し、例えば、VR(Virtual Reality)画像を表示させる技術が提案されている。
 このとき、RGBカメラの画像データと、LiDARの3次元点群データとを高精度に対応させるためには、RGBカメラと、LiDARとのセンシング位置のずれを調整するためにキャリブレーションが必要となる。
 例えば、アクティブセンサである基準レーザスキャナのスキャンデータを特定の時刻における座標系で記述した基準点群位置データを算出し、基準点群位置データにおける特徴点と、パッシブセンサであるカメラが撮影した画像上の特徴点との対応点の基準点群位置データと、画像上の画面座標値との対応関係に基づき、カメラの外部標定要素を算出することで、レーザスキャナとカメラとのキャリブレーションを行う技術が提案されている(特許文献1参照)。
 また、扇のような形をキャリブレーションターゲットとして、扇の真ん中、端には直線の再帰性反射材を利用して、アクティブセンサであるLiDARが再帰性反射材に照射された点を検出し、パッシブセンサであるカメラが直線エッジを検出することで、LiDARの点とカメラの直線との距離が最小になるような位置合わせをする技術が提案されている(非特許文献1参照)。
 さらに、穴の開いた板をキャリブレーションターゲットに利用して、アクティブセンサであるLiDARと、パッシブセンサであるカメラとをキャリブレーションする技術が提案されている(非特許文献2参照)。
特開2016-57108号公報
Extrinsic Calibration of a LiDAR and a Monocular Camera (https://static1.squarespace.com/static/5879c6b59f745611b9f086da/t/587d25cd3a04118eabd54de1/1484596688787/CV2+Poster.pdf) Circular Targets for 3D Alignment of Video and Lidar Sensors (https://hal.archives-ouvertes.fr/hal-00858103/document)
 しかしながら、特許文献1に記載の技術においては、特徴点の設定方法が開示されておらず、特徴点の抽出に演算コストが増大してしまう恐れがある。
 また、非特許文献1に記載の技術においては、LiDARのデータは解像度が低いので、直線の再帰性反射材に照射させるには、高精度な位置合わせが必要になると共に、直線を太くすることで位置合わせを容易にすることも考えられるが、太さに比例して精度が低下してしまう。
 さらに、非特許文献2に記載の技術においては、LiDARは穴の周りから穴の中心を算出するが、LiDARはデプス境界においてエラーが生じ易くなるので、精度が低下してしまう恐れがある。
 本開示は、このような状況に鑑みてなされたものであり、特に、アクティブセンサと、パッシブセンサとを簡易な構成で、高精度にキャリブレーションできるようにするものである。
 本開示の一側面の画像処理装置は、反射強度が取得可能なアクティブセンサにより、前記反射強度に基づいて、所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出部と、パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出部と、相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション部とを含む画像処理装置である。
 前記所定の物体は、一部の範囲において、他の一部とは異なる反射率となる部材が使用されるようにすることができ、前記アクティブセンサ物体位置検出部には、前記反射強度に基づいて、前記所定の物体における、前記一部の範囲の位置情報を、前記アクティブセンサ物体位置情報として検出させるようにすることができる。
 前記アクティブセンサ物体位置情報は、前記所定の物体の3次元点群情報とすることができ、前記パッシブセンサ物体位置情報は、前記所定の物体が撮像された2次元の画像内の位置情報とすることができ、前記アクティブセンサ物体位置検出部には、前記反射強度に基づいて、前記所定の物体における、前記一部の範囲に対応する3次元点群情報を抽出させ、抽出させた前記一部の範囲に対応する3次元点群情報より、前記アクティブセンサ物体位置情報を検出させ、前記パッシブセンサ物体位置検出部には、前記2次元の画像より、前記所定の物体の位置情報を検出させ、前記パッシブセンサ物体位置情報として出力させるようにすることができる。
 前記所定の物体は、サークル状の前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートとすることができ、前記アクティブセンサ物体位置検出部には、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の重心位置を、前記アクティブセンサ物体位置情報として検出させ、前記パッシブセンサ物体位置検出部には、前記2次元の画像より、前記サークル状の前記一部の範囲の重心位置を検出させ、前記パッシブセンサ物体位置情報として出力させるようにすることができる。
 前記アクティブセンサ物体位置検出部には、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の平均値からなる重心位置を、前記アクティブセンサ物体位置情報として検出させるようにすることができる。
 前記アクティブセンサ物体位置検出部には、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の密度が所定の密度よりも高いとき、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の平均値からなる重心位置を、前記アクティブセンサ物体位置情報として検出させるようにすることができる。
 前記アクティブセンサ物体位置検出部には、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出させ、前記端点の情報に基づいて求められる重心位置を、前記アクティブセンサ物体位置情報として検出させるようにすることができる。
 前記アクティブセンサ物体位置検出部には、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の密度が所定の密度よりも低いとき、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出させ、前記端点の情報に基づいて求められる重心位置を、前記アクティブセンサ物体位置情報として検出させるようにすることができる。
 前記アクティブセンサ物体位置検出部には、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出させ、抽出した前記端点のうちの3点を取る組み合わせの全てについて求められる外接円の中心位置の平均からなる重心位置を、前記アクティブセンサ物体位置情報として検出させるようにすることができる。
 前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報より求められる重心位置が、前記シートに対応する同一の平面上の位置情報となることを拘束条件として、前記サークル状の前記一部の範囲に対応する3次元点群情報より求められる重心位置を補正する重心位置補正部をさらに含ませるようにすることができる。
 前記キャリブレーション部には、相互に対応する、少なくとも6組の、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションさせるようにすることができる。
 前記キャリブレーション部が、1フレーム分の、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするとき、前記所定の物体における、前記一部の範囲は、少なくとも6カ所よりも多くすることができる。
 前記キャリブレーション部が、少なくとも6フレーム分より多くの、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするとき、前記所定の物体における、前記一部の範囲は、少なくとも1カ所よりも多くすることができる。
 前記所定の物体は、道路標識とすることができる。
 前記キャリブレーション部は、既知の前記所定の物体における前記一部の範囲の位置情報を用いて、相互に対応する、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションさせるようにすることができる。
 前記所定の物体は、複数であって、かつ、複数種類の形状からなる前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートとすることができる。
 前記キャリブレーション部には、相互に対応する、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とを対応付ける回転行列と並進行列とを計算することで、前記アクティブセンサと前記パッシブセンサとをキャリブレーションさせるようにすることができる。
 前記所定の物体は、ひし形状の前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートとすることができ、前記アクティブセンサ物体位置検出部には、前記抽出した前記ひし形状の前記一部の範囲に対応する3次元点群情報のコーナ位置を、前記アクティブセンサ物体位置情報として検出させ、前記パッシブセンサ物体位置検出部には、前記画像内の2次元情報より、前記ひし形状の前記一部の範囲のコーナ位置を検出させ、前記パッシブセンサ物体位置情報として出力させるようにすることができる。
 本開示の一側面の画像処理方法は、反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出処理と、パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出処理と、相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション処理とを含む画像処理方法である。
 本開示の一側面のプログラムは、反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出部と、パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出部と、相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション部としてコンピュータを機能させるプログラムである。
 本開示の一側面においては、反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報が、アクティブセンサ物体位置情報として検出され、パッシブセンサにより検出される、前記所定の物体の位置情報が、パッシブセンサ物体位置情報として検出され、相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとがキャリブレーションされる。
 本開示の一側面によれば、特に、アクティブセンサと、パッシブセンサとを簡易な構成で、高精度にキャリブレーションすることが可能となる。
ステレオカメラによるデプス画像とRGB画像とから3次元モデルを形成する例を説明する図である。 ステレオカメラにおいてデプス画像の精度が低下する例を説明する図である。 本開示の概要を説明する図である。 本開示のキャリブレーションシステムの第1の実施の形態の構成例を説明する図である。 図4のキャリブレーションシステムによるキャリブレーション処理の概要を説明する図である。 LiDARとRGBカメラとの対応点を説明する図である。 図4のキャリブレーション部の構成例を説明する図である。 図7のキャリブレーション部によるキャリブレーション処理を説明するフローチャートである。 図7のキャリブレーション部によるパッシブセンサ系処理を説明するフローチャートである。 図7のキャリブレーション部によるアクティブセンサ系処理を説明するフローチャートである。 誤検出除去と補正を説明する図である。 図7のキャリブレーション部による重心座標計算処理を説明するフローチャートである。 図7のキャリブレーション部による3次元点群情報が密であるときの重心座標計算処理を説明する図である。 図7のキャリブレーション部による3次元点群情報が疎であるときの重心座標計算処理を説明する図である。 図7のキャリブレーション部による3次元点群情報が疎であるときの重心座標計算処理を説明する図である。 本開示のキャリブレーションシステムの第2の実施の形態の構成例を説明する図である。 図16のキャリブレーションシステムによるキャリブレーション処理の概要を説明する図である。 図16のキャリブレーション部の構成例を説明する図である。 図18のキャリブレーション部によるパッシブセンサ系処理を説明するフローチャートである。 図18のキャリブレーション部によるアクティブセンサ系処理を説明するフローチャートである。 図18のキャリブレーション部によるコーナ座標計算処理を説明するフローチャートである。 図18のキャリブレーション部によるコーナ座標計算処理を説明する図である。 変形例を説明する図である。 変形例を説明する図である。 汎用のコンピュータの構成例を説明する図である。 車両制御システムの概略的な構成の一例を示すブロック図である。 車外情報検出部及び撮像部の設置位置の一例を示す説明図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
 1.本開示の概要
 2.本開示の第1の実施の形態
 3.本開示の第2の実施の形態
 4.変形例
 5.ソフトウェアにより実行させる例
 6.応用例
 <<1.本開示の概要>>
 本開示は、アクティブセンサと、パッシブセンサとを簡易な構成で、高精度にキャリブレーションできるようにするものである。
 まず、本開示の概要について説明する。
 図1で示されるように、テクスチャ画像T1からなるからなる全方位画像と、デプス画像D1とからなる全方位画像とを対応付けることにより、3次元モデルMを構築し、例えば、HMD(Head Mounted Display)等に、VR(Virtual Reality)画像を表示させる技術が一般に普及している。
 図1で示されるような3次元モデルMを構築して、ストリーミングなどによりVR画像を転送する際には、テクスチャ画像T1と、デプス画像D1とがそれぞれ分離された状態で転送され、表示させるときに3次元モデルMを構成させることにより表示させる。
 ここでは、例えば、ステレオカメラによりテクスチャ画像T1と、デプス画像D1とは、いずれも同一のステレオカメラを用いて取得されることになるので、テクスチャ画像T1と、デプス画像D1との間にずれが生じることはないものと仮定しても略問題はない。
 しかしながら、ステレオカメラを用いてデプス画像を生成するにあたっては、撮像される画像により、精度が低下してしまうことがある。
 例えば、図2の画像P1で示されるような家屋の天井付近の画像においては、テクスチャが存在しない領域があり、視差を検出することができない場合がある。通常、ブロックマッチングにより、左右の画像間で、画素単位で周囲の画素値の差分絶対値和が検出され、その差が最小となる画素が同一画素であるものとみなされ、その画素間のずれが視差とされて、視差に基づいて画素単位で被写体までの距離が求められる。
 ここで、画像全体にブロックマッチングを掛けると膨大な計算量になってしまうため、エピポーラ線(Epipolar Line)が定義される。
 すなわち、図2の左下部の画像Pxで示されるように、一方の画像(画像Pxでは左画像LV)上の1点として点XLに注目したとき、その点を通る視線はもう一方の画像(画像Pxでは右画像RV)上では1本の直線として映る。また、その直線上の各点を通る視線は、元の画像上では1本の直線となる。そこで、点XLの対応点の対は左右の画像上の一対の直線eR-XR上に存在するため、その直線上だけをブロックマッチングを掛ける。この直線が、画像P3におけるエピポーラ線epLである。
 ここで、画像P1について、対応する図2下部の左画像VLにおける注目点が注目点ep1,ep2としてそれぞれ設定された場合、対応する図2下部の右画像VRのエピポーラ線は、それぞれエピポーラ線epL1、epL2となる。
 ここで、それぞれのエピポーラ線上の画素のデプス(注目点からの距離:ディスパリティ)と差分絶対値和の差分(コスト)との関係を示したものが図2下部のグラフG1である。
 すなわち、注目点ep2の場合については、周囲に変化があり、テクスチャの検出が可能であるため、コストに変化があり、視差画素を検出することが可能である。しかしながら、注目点ep1のように周囲に被写体がない、すなわち、テクスチャのない画像においては、コストに変化がないため(周囲も類似した画素値であるため)視差が検出できない。結果として、デプスを正確に検出することができない。
 また、図2の上部の画像P2で示されるように、類似した被写体が繰り返し配置されるような画像においては、類似した画素がいくつも検出されてしまう恐れがあり、適切に視差を求めることができず、デプスを正確に検出することができない恐れがある。
 さらに、画像P3で示されるように、人物H1,H2が存在するような場合、人物H1,H2の間の領域Z1については、上面図P4で示されるように、ステレオカメラの配置をカメラC1,C2で組み合わせても、カメラC2,C3で組み合わせても、カメラC1,C3で組み合わせても、いずれか一方が他方と一致する領域を撮像することができない状態となる。すなわち、いわゆるオクルージョンが発生する状態になるので、領域Z1については、視差を検出することができず、結果として、デプスを求めることができない。
 以上のように、ステレオカメラでは、デプス画像を高精度に求めることができないことがある。
 そこで、デプス画像については、距離精度の高いLiDARを用いて生成して、テクスチャ画像と対応付けることが考えられる。
 LiDARとは、パルス状に発光するレーザ光に対する周囲の障害物などからの反射光の往復時間を測定し、距離を測定するものであり、一般に、水平方向に所定の間隔で角度を変えながら距離測定を行い、順次垂直方向の角度を変えて、繰り返し距離測定を行うことで、3次元点群情報(3次元ポイントクラウド情報)を取得する。
 例えば、図3の上段で示されるように、図中の左側にカメラ12A,12Bを備えたステレオカメラからなるRGBカメラ12が設けられ、図中の右側にLiDAR11が設けられる場合を考える。このとき、LiDAR11は、点線で示されるように、順次、角度を変えながら、点LP1乃至LP3までの距離を測定する。RGBカメラ12は、撮像される画像内における点LP1乃至LP3に対応する各画素の距離を、LiDAR11の計測結果から求めることにより、デプス画像を求める。
 より詳細には、例えば、RGBカメラ12が、図3の下段における画像P21を撮像するとき、同時に、カメラ12A,12Bにより撮像されるステレオ画像に基づいて、デプス画像P22が求められる。
 このステレオ画像により求められたデプス画像上に、LiDAR11により測定される3次元点群情報を対応付ける。
 LiDAR11により検出される3次元点群情報は、ステレオ画像に基づいて得られるデプス画像よりも低解像度な情報であるが、距離精度については高精度であるので、両者を併合することで、高精度なデプス画像P24が得られることになる。
 ここで、ステレオ画像に基づいて得られるデプス画像P22に対して、LiDAR11により求められる3次元点群情報との対応関係にずれが生じると、デプス画像における距離精度が低下してしまう。
 そこで、ステレオカメラからなるRGBカメラ12より得られるデプス画像とLiDAR11により得られる3次元点群情報とが対応するようにキャリブレーションする必要がある。
 キャリブレーションは、パッシブセンサであるRGBカメラ12のデプス画像と、アクティブセンサであるLiDAR11の3次元点群情報とをICP(Iterative Closest Point)を利用してマッチングする手法が一般的である。
 しかしながら、ICPを利用した場合、パッシブセンサのステレオマッチングの精度も影響する上、3次元上でのマッチングになるため、計算コストが高く、または、疎密の違うデータ同士のマッチングであるため、マッチングの精度が低い。
 本開示は、このような状況に鑑みてなされたものであり、特に、アクティブセンサと、パッシブセンサとのキャリブレーションを簡易な構成で、高精度に実現するものである。
 <<2.本開示の第1の実施の形態>>
 次に、図4を参照して、本開示のキャリブレーションシステムについて説明する。
 図4のキャリブレーションシステム100は、LiDAR111、RGBカメラ112、キャリブレーションシート113、およびキャリブレーション部114を備えている。
 LiDAR111は、アクティブセンサであり、監視領域の3次元点群情報を取得する。キャリブレーション時においては、LiDAR111は、キャリブレーションシート113を含む範囲をスキャンして、3次元点群情報を取得すると共に、各点の座標を測定する際の反射強度分布を取得し、キャリブレーション部114に出力する。
 RGBカメラ112は、パッシブセンサであり、基本的な構造において、図3のRGBカメラ12と同様のステレオカメラから構成されており、キャリブレーションシート113が存在する範囲を撮像して、撮像したキャリブレーションシート113の画像を、キャリブレーション部114に出力する。
 キャリブレーションシート113は、反射率の低い黒地のプレート上に、例えば、サークル状の反射率の高い再帰性反射材からなるマーカ121が規則的に配置されたものである。図4においては、水平方向×垂直方向に対して、3個×3個の合計9個のマーカ121が設けられているが、配置されるマーカ121の位置と大きさが特定される限り、マーカ121の数や大きさは、任意に設定することができる。
 キャリブレーション部114は、LiDAR111より供給されるキャリブレーションシート113に対する3次元点群情報および反射強度分布と、RGBカメラ112より供給されるキャリブレーションシート113の画像との対応関係から、LiDAR111の座標系と、RGBカメラ112の座標系とを対応付けるために必要とされる、回転行列R、および並進行列tを算出する。すなわち、回転行列R、および並進行列tが求められることにより、LiDAR111により検出される3次元点群情報と、RGBカメラ112により撮像される画像における各画素位置とが適切に対応付けられることでキャリブレーションが実現される。尚、キャリブレーション部114の詳細な構成については、図6を参照して、詳細を後述する。
 尚、RGBカメラ112によりキャリブレーションシート113を含む2次元の画像が撮像される範囲は、RGBカメラ112のセンシング範囲とも称する。また、LiDAR111によりキャリブレーションシート113を含む3次元点群情報が検出される範囲は、LiDAR111のセンシング範囲とも称する。
 さらに、LiDAR111のセンシング結果については、センシング範囲における被写体までの点群の3次元座標からなる3次元点群情報であるものとする。また、RGBカメラ112のセンシング結果については、センシング範囲における被写体が撮像された2次元の画像であるものとする。
 <図4のキャリブレーションシステムにおけるキャリブレーションの概要>
 次に、図5を参照して、図4のキャリブレーションシステム100におけるキャリブレーション部114によるキャリブレーションの概要について説明する。
 キャリブレーションシート113に形成されているマーカ121に用いられている再帰性反射材は、入射光に対する反射率が高い材質であり、一方、それ以外の黒地部分については反射率が低い素材である。このため、マーカ121の領域は、周囲よりも反射率が高い。キャリブレーションシート113においては、マーカ121が他の領域よりも反射率を高くすることができれば、マーカ121以外の範囲において、反射する素材が用いられてもよい。しかしながら、マーカ121における反射強度を特に高くすることができれば、誤検出を低減させることができるため、マーカ121以外の範囲については、低反射率の素材や、光を吸収する素材であることが望ましい。
 LiDAR111は、レーザ光を、照射方向を二次元的に変化させながら照射し、障害物に反射した光を受光するまでの時間、すなわち、レーザ光の障害物との往復時間により、障害物までの距離を3次元座標の点群の情報、すなわち、3次元点群情報として取得する。このとき、LiDAR111は、各レーザ光の照射位置、すなわち、3次元座標の各点の単位において、反射強度も検出している。
 このため、例えば、図5の左下部の分布図PC1で示されるように、キャリブレーションシート113に対して、灰色の点で示される位置に、順次レーザ光を照射すると、LiDAR111は、キャリブレーションシート113が設置されている距離を測定することにより、キャリブレーションシート113の位置を示す3次元点群情報を取得することになる。尚、図5の分布図PC1は、LiDAR座標系と記載され、x,y,z軸で表現される3次元空間内を表現する被写体までの点群の分布が示されており、キャリブレーションシート113からなる同一平面状の3次元点群情報の分布が表現されている。
 また、LiDAR111は、キャリブレーションシート113上においては、マーカ121の領域ZMにおいて、高い反射強度を検出し、それ以外の領域においては、低い反射強度を検出する。
 すなわち、図5の左下部のスキャン例R1で示されるように、LiDAR111が、キャリブレーションシート113に対してスキャンラインL11で示されるようにレーザ光を順次放射する場合、反射強度は、図5の波形図R2で示されるような分布として検出される。
 波形図R2は、横軸がスキャンラインL11上の位置であり、縦軸が反射強度を示している。波形図R2で示されるように、スキャンラインL11上のマーカ121とそれ以外の領域との境界a1乃至a6のうち、マーカ121の領域ZMに属する範囲a1乃至a2,a3乃至a4,a5乃至a6については、反射強度が高く、それ以外の領域は低い。
 このため、キャリブレーションシート113上の反射強度の分布のうち、所定の閾値よりも高い範囲を抽出すると、図5の抽出例R3で示されるように、マーカ121が設けられた領域ZMの3次元点群情報が抽出される。
 さらに、図5の重心分布図R4で示されるように、マーカ121が設けられた領域ZM内の灰色の点で示されるレーザ光の反射強度が所定値よりも高い3次元点群情報の重心位置が、黒色のバツ印で示され、アクティブセンサであるLiDAR111のセンシング結果により求められるマーカ121の重心位置として求められる。
 一方、RGBカメラ112により撮像されるキャリブレーションシート113は、例えば、図5の画像P51で示されるような画像となる。
 画像P51においては、白色の丸印としてマーカ121が映し出されるため、灰色のバツ印で示される位置を、マーカ121からなるサークルの重心位置として求めることができる。
 従って、キャリブレーション部114は、図5の比較図CL1で示されるように、重心分布図R4における黒色のバツ印で示されるLiDAR111のセンシング結果に基づいて認識されるキャリブレーションシート113上のマーカ121の重心位置と、RGBカメラ112のセンシング結果である画像P51より検出される灰色のバツ印で示されるマーカ121の重心位置との位置関係に基づいて、両者の座標系を対応付けるための回転行列Rおよび並進行列tを求める。
 この回転行列Rおよび並進行列tにより、LiDAR111のセンシング結果と、RGBカメラ112のセンシング結果とを対応付けることが可能となる。すなわち、本開示におけるキャリブレーションとは、LiDAR111のセンシング結果と、RGBカメラ112のセンシング結果とを対応付けることであり、実質的に、回転行列Rおよび並進行列tを求める行為である。
 <回転行列Rおよび並進行列tの具体的な計算方法>
 次に、図6を参照して、回転行列Rおよび並進行列tの算出方法について説明する。
 LiDAR111とRGBカメラ112との両者の座標系を対応付けるための回転行列Rおよび並進行列tは、相互の対応点の位置関係に基づいて求めることができる。すなわち、LiDAR111とRGBカメラ112とのそれぞれのキャリブレーションシート113上のマーカ121の領域となるサークルの重心位置の情報を用いることで求めることができる。尚、以降においては、キャリブレーションシート113上のマーカ121の領域となるサークルの重心位置については、単に、サークル重心位置とも称する。
 例えば、図6で示されるように、LiDAR111のセンシング結果であるサークル重心位置Piと、RGBカメラ112により撮像される画像V上のサークル重心位置Uiとが対応点である場合、以下の式(1)が成り立つ。
 sUi=K{R,t}Pi
                           ・・・(1)
 ここで、Kはカメラ内部行列であり、Rは回転行列であり、tは並進行列であり、sは所定値からなる係数である。
 ここで、LiDAR111のセンシング結果は、3次元点群情報であるので、サークル重心位置Piは、以下の式(2)で示されるように3次元の座標系として表される。
Figure JPOXMLDOC01-appb-M000001
                           ・・・(2)
 ここで、Xi,Yi,Ziは、サークル重心位置Piの3次元空間内の座標である。
 また、RGBカメラ112により求められるサークル重心位置Uiは、2次元の画像内の座標として、以下の式(3)で示されるように2次元の座標系として表される。
Figure JPOXMLDOC01-appb-M000002
                           ・・・(3)
 ここで、ui,viは、画像V内におけるサークル重心位置Uiの水平方向および垂直方向の座標である。
 この結果、式(2),式(3)を式(1)に代入することで、以下の式(4)が求められる。
Figure JPOXMLDOC01-appb-M000003
                           ・・・(4)
 さらに、カメラ内部行列K、回転行列R、および並進行列tを展開すると以下の式(5)で表される。
Figure JPOXMLDOC01-appb-M000004
                           ・・・(5)
 ここで、fx,fyは、RGBカメラ112における光学系の既知の焦点距離を表しており、cx,cyは、画像Vにおける中心画素の既知の座標であり、r11,r12,r13,r21,r22,r23,r31,r32,r33は、回転行列の要素であり、tx,ty,tzは、並進行列の要素である。
 すなわち、式(5)で示されるように、回転行列の要素r11,r12,r13,r21,r22,r23,r31,r32,r33、および、並進行列の要素tx,ty,tzの合計12個の未知数を求めることができれば、回転行列Rおよび並進行列tを求めることができる。
 従って、回転行列Rおよび並進行列tを構成する、合計12個の未知数を求めるには、少なくとも6組以上の、対応するLiDAR111のセンシング結果から得られるサークル重心位置と、RGBカメラ112のセンシング結果から得られるサークル重心位置との情報が必要となる。
 そこで、キャリブレーション部114は、6組以上のLiDAR111のセンシング結果から得られるサークル重心位置と、RGBカメラ112から得られるサークル重心位置とから、回転行列R、および並進行列tを算出することにより、キャリブレーションを実行する。
 尚、上述したように、6組以上のLiDAR111のセンシング結果から得られるサークル重心位置と、RGBカメラ112から得られるサークル重心位置が必要となるため、キャリブレーションシート113上には、1フレームの情報でキャリブレーションするには、少なくとも6個のマーカ121が必要となる。ただし、複数のフレームを利用してキャリブレーションする場合については、この限りではなく、例えば、少なくとも6フレーム以上のセンシング結果を用いることができれば、キャリブレーションシート113上に1個のマーカ121があれば、キャリブレーションを実現することができる。
 <図4のキャリブレーション部の構成例>
 次に、図7のブロック図を参照して、図4のキャリブレーション部114の構成例について説明する。
 図4のキャリブレーション部114は、パッシブセンサ系処理部141、アクティブセンサ系処理部142、および投影誤差最小化部143を備えている。
 パッシブセンサ系処理部141は、パッシブセンサであるRGBカメラ112のセンシング結果である画像に基づいて、サークル重心位置を求めて投影誤差最小化部143に出力する。
 パッシブセンサ系処理部141は、サークル検出部151、サークル重心計算部152、および誤検出除去部153を備えている。
 サークル検出部151は、RGBカメラ112より供給される画像に基づいて、画像内のキャリブレーションシート113のうち、マーカ121が形成された部位であるサークルを検出し、検出したサークルの画像内における位置の情報をサークル重心計算部152に出力する。
 サークル重心計算部152は、RGBカメラ112により撮像された画像内におけるサークルの位置の情報に基づいて、画像内におけるサークルの重心位置を計算し誤検出除去部153に出力する。
 誤検出除去部153は、キャリブレーションシート113上におけるマーカ121の幾何学的な配置の情報を利用することで、画像内におけるサークルの重心位置における、誤検出を除去して、RGBカメラ112により撮像された画像内における2次元のサークルの重心位置の情報を投影誤差最小化部143に出力する。
 尚、以降において、パッシブセンサであるRGBカメラ112により撮像される画像内のキャリブレーションシート113におけるマーカ121からなるサークルの重心位置については、単に、パッシブセンササークル重心位置と称する。
 アクティブセンサ系処理部142は、アクティブセンサであるLiDAR111のセンシング結果である3次元点群情報に基づいて、サークル重心位置を求めて投影誤差最小化部143に出力する。
 アクティブセンサ系処理部142は、反射強度フィルタ161、クラスタリング部162、サークル重心計算部163、誤検出除去部164、および重心補正部165を備えている。
 反射強度フィルタ161は、LiDAR111より供給される反射強度の分布の情報に対して、所定の閾値より大きな反射強度の分布のみを抽出することにより、キャリブレーションシート113上のマーカ121が形成されているサークル内に存在する反射強度の分布を抽出して、クラスタリング部162に出力する。
 クラスタリング部162は、反射強度フィルタ161より出力された所定の閾値よりも大きな反射強度となる分布をクラスタリングすることにより、サークル単位の分布として抽出し、クラスタリングした結果であるサークル単位の反射強度の分布の情報をサークル重心計算部163に出力する。
 サークル重心計算部163は、クラスタリングされた、サークル単位の反射強度の分布における重心位置を計算して、LiDAR111のスキャン結果に基づいて得られるサークルの重心位置の情報として誤検出除去部164に出力する。
 誤検出除去部164は、キャリブレーションシート113におけるマーカ121の幾何学的な配置の情報を利用することで、LiDAR111のスキャン結果に基づいて得られるサークルの重心位置における、誤検出を除去して、重心補正部165に出力する。
 重心補正部165は、キャリブレーションシート113におけるマーカ121の幾何学的の配置の情報を利用することで、LiDAR111のスキャン結果に基づいて得られるサークルの重心位置を補正して、投影誤差最小化部143に出力する。
 尚、アクティブセンサであるLiDAR111のセンシング結果に基づいて、LiDAR111のセンシング領域内のキャリブレーションシート113におけるマーカ121の領域となるサークルの重心位置については、単に、アクティブセンササークル重心位置と称する。
 投影誤差最小化部143は、LiDAR111のセンシング結果に基づいて得られる3次元点群情報からなるアクティブセンササークル重心位置の情報と、RGBカメラ112のセンシング結果に基づいて得られる画像内における2次元のパッシブセンササークル重心位置の情報とから、相互の対応関係を利用して、LiDAR111とRGBカメラ112とのズレを最小にするときに必要な回転行列Rおよび並進行列tを算出する。
 すなわち、ここで求められる回転行列Rおよび並進行列tが、LiDAR111とRGBカメラ112のキャリブレーションの結果であり、LiDAR111とRGBカメラ112とのズレを補正するものである。
 <キャリブレーション処理>
 次に、図8のフローチャートを参照して、キャリブレーション処理について説明する。尚、この処理においては、RiDAR111のセンシング領域内であって、かつ、RGBカメラ112による撮像領域内に、キャリブレーションシート113が設けられており、センシングがなされていることが前提となる。
 ステップS11において、パッシブセンサ系処理部141は、パッシブセンサ系処理を実行し、パッシブセンササークル重心位置を計算し、投影誤差最小化部143に出力する。尚、パッシブセンサ系処理については、図9のフローチャートを参照して、詳細を後述する。
 ステップS12において、アクティブセンサ系処理部142は、アクティブセンサ系処理を実行し、アクティブセンササークル重心位置を計算し、投影誤差最小化部143に出力する。尚、アクティブセンサ系処理については、図10のフローチャートを参照して、詳細を後述する。
 ステップS13において、投影誤差最小化部143は、アクティブセンササークル重心位置が計算不可とされているか否かを判定し、計算不可ではなく、アクティブセンササークル重心位置が求められた場合、処理は、ステップS14に進む。
 ステップS14において、投影誤差最小化部143は、パッシブセンササークル重心位置とアクティブセンササークル重心位置とから、式(5)を構成して、回転行列Rおよび並進行列tを算出し、処理を終了する。
 一方、ステップS13において、アクティブセンササークル重心位置について、計算不可であるとみなされた場合、処理は、ステップS15に進む。
 ステップS15において、投影誤差最小化部143は、回転行列Rおよび並進行列tの計算が不可能であることを通知して処理を終了する。
 <図7のキャリブレーション部によるパッシブセンサ系処理>
 次に、図9のフローチャートを参照して、図7のキャリブレーション部114によるパッシブセンサ系処理について説明する。
 ステップS31において、パッシブセンサ系処理部141のサークル検出部151は、RGBカメラ112により撮像された画像より画像認識によりキャリブレーションシート113を認識し、さらに、キャリブレーションシート113上のマーカ121を認識し、マーカ121の撮像領域をサークルの位置情報として検出し、サークル重心計算部152に出力する。
 ステップS32において、サークル重心計算部152は、サークル検出部151より供給されたサークルの情報に基づいて、未処理のサークルを処理対象サークルに設定する。
 ステップS33において、サークル重心計算部152は、処理対象サークルの画像内の重心位置を算出し、誤検出除去部153に出力し、記憶させる。
 ステップS34において、サークル重心計算部152は、未処理のサークルが存在するか否かを判定し、未処理のサークルが存在する場合、処理は、ステップS32に戻る。すなわち、キャリブレーションシート113上のマーカ121の数に相当するサークルについて、全ての重心位置が計算されるまで、ステップS32乃至S34の処理が繰り返される。そして、ステップS34において、全てのサークルの重心位置が計算された場合、未処理のサークルはないものとみなされ、処理は、ステップS35に進む。
 ステップS35において、誤検出除去部153は、既知の設計値であるキャリブレーションシート113上のマーカ121の位置の情報に基づいて、求められたサークル重心位置のうち、明らかに誤検出されていると認められる検出結果を除去し、パッシブセンササークル重心位置の情報として投影誤差最小化部143に出力する。
 以上の処理により、パッシブセンササークル重心位置の情報が求められる。
 <図7のキャリブレーション部によるアクティブセンサ系処理>
 次に、図10のフローチャートを参照して、図7のキャリブレーション部114によるアクティブセンサ系処理について説明する。
 ステップS51において、アクティブセンサ系処理部142の反射強度フィルタ161は、アクティブセンサであるLiDAR111のセンシング結果である3次元点群情報のうち、所定値よりも高い反射強度の点群情報を抽出し、クラスタリング部162に出力する。
 ステップS52において、クラスタリング部162は、反射強度が所定値よりも高い3次元点群情報を抽出して、所定の範囲内に存在する点群情報を1つサークル内に含まれる点群情報とみなしてクラスタリングすることで、実質的にサークル単位で点群情報をクラスタリングしてサークル重心計算部163に出力する。
 ステップS53において、サークル重心計算部163は、未処理のクラスのいずれかの点群情報を処理対象サークルの点群情報に設定する。
 ステップS54において、サークル重心計算部163は、重心座標計算処理を実行し、処理対象サークルにクラスタリングされた点群情報の重心位置を求めて、誤検出除去部164に記憶させる。尚、重心座標計算処理については、図12のフローチャートを参照して、詳細を後述する。
 ステップS55において、サークル重心計算部163は、重心座標計算処理において、重心座標の計算不可であるとみなされたか否かを判定し、計算不可ではない場合、すなわち、重心座標が求められた場合、処理は、ステップS56に進む。
 ステップS56において、サークル重心計算部163は、未処理のクラスが存在するか否かを判定し、未処理のクラスが存在する場合、処理は、ステップS53に戻る。すなわち、全てのクラスの点群情報の重心位置がアクティブセンササークル重心位置として計算されるまで、ステップS53乃至S56の処理が繰り返される。
 そして、全てのクラスの点群情報の重心位置がサークル重心位置として計算されると、処理は、ステップS57に進む。
 ステップS57において、誤検出除去部164は、既知の設計値であるキャリブレーションシート113上のマーカ121の位置の情報に基づいて、求められたアクティブセンササークル重心位置のうち、明らかに誤検出されていると認められる検出結果を除去し、重心補正部165に出力する。
 すなわち、例えば、図11の右上部の3次元点群情報11Aで示されるように、LiDAR111により検出される3次元点群情報のうち、所定の反射強度よりも高い点群情報として求められたサークル毎の重心位置が黒色のバツ印で示されており、設計値に対応するサークルの重心位置が白抜きのバツ印で示されているような場合を考える。図11の右上部の場合、点線で囲まれた右上部の黒色のバツ印は、設計値となる白抜きのバツ印よりも離れた位置で検出されており、明らかに異なるので、誤検出除去部164は、誤検出であるものとみなして、除去する。
 ステップS58において、重心補正部165は、アクティブセンササークル重心位置の情報を、既知の設計値であるキャリブレーションシート113上のマーカ121の位置の幾何学的な情報に基づいて補正して、補正後のアクティブセンササークル重心位置の情報を投影誤差最小化部143に出力する。
 すなわち、例えば、求められたアクティブセンササークル重心位置は、3次元点群情報であるが、キャリブレーションシート113上の点群情報であるので、同一平面上に存在することになる。そこで、重心補正部165は、図11の下部の補正例11Bで示されるように、求められたアクティブセンササークル重心位置の情報から平面Sfを求め、求められた平面Sfから外れた重心位置epを平面Sf上の重心位置apに補正する。
 また、重心補正部165は、図11の右上部の3次元点群情報11Cで示されるように、黒色のバツ印で示されるアクティブセンサ系処理により求められたアクティブセンササークル重心位置と、白抜きのバツ印で示される設計値からなるサークル重心位置との差が最小となるように全体をシフトさせて、重心位置を補正する。
 以上の処理によりアクティブセンササークル重心位置の情報が投影誤差最小化部143に出力される。
 <重心座標計算処理>
 次に、図12のフローチャートを参照して、重心座標計算処理について説明する。
 ステップS71において、投影誤差最小化部143は、LiDAR111により検出された3次元点群情報の密度が所定値よりも高いか否かにより、密であるか否かを判定し、所定値よりも高く、密であると判定された場合、処理は、ステップS72に進む。
 ステップS72において、投影誤差最小化部143は、処理対象サークル内の3次元点群情報の全データの平均値を求め、処理対象サークルの重心位置として出力する。
 すなわち、例えば、図13の左上部で示されるキャリブレーションシート113上のマーカ121xに対応する3次元点群情報が、クラスタリング部162によりクラスタリングされたサークルのうちサークルCxである場合について考える。
 サークルCxの場合、サークル重心計算部163は、図13の例Ex1で示されるように、処理対象サークルCxとして設定し、図13の例Ex2で示されるように、処理対象サークルCxに含まれる点で表現される3次元点群情報を読み出す。そして、サークル重心計算部163は、図13の例Ex3におけるバツ印で示されるように、処理対象サークルCx内の3次元点群情報における重心位置を、アクティブセンササークル重心位置として計算する。
 一方、ステップS71において、3次元点群情報の密度が所定値よりも小さく、密ではなく疎であるとみなされた場合、処理は、ステップS73に進む。
 ステップS73において、サークル重心計算部163は、処理対象サークル内に、スキャンラインが2ライン以上存在するか否かを判定し、2ライン以上存在すると判定した場合、処理は、ステップS74に進む。
 ステップS74において、サークル重心計算部163は、処理対象サークルとスキャンラインとの交点となる位置の情報を端点の情報として抽出する。
 ステップS75において、サークル重心計算部163は、抽出された端点のうち未処理の3点の組み合わせを処理対象端点として抽出する。
 ステップS76において、サークル重心計算部163は、処理対象端点となる3点の外接円の中心をサークル重心位置として計算し、記憶する。
 ステップS77において、サークル重心計算部163は、3点からなる端点の組み合わせのうち、未処理の3点が存在するか否かを判定し、未処理の3点からなる端点の組み合わせが存在する場合、処理は、ステップS74に戻る。
 すなわち、全ての端点のうちの、3点からなる端点の全ての組み合わせにより重心位置が求められるまで、ステップS75乃至S77の処理が繰り返される。
 そして、ステップS77において、全ての3点からなる端点の組み合わせにより重心位置が求められた場合、処理は、ステップS78に進む。
 ステップS78において、サークル重心計算部163は、求められた全ての3点からなる端点の組み合わせにより求められた重心位置の平均を求め、求めた重心位置の平均値を処理対象サークルにおけるアクティブセンササークル重心位置として出力する。
 一方、ステップS73において、スキャンラインが2ライン以上存在しない場合、処理は、ステップS79に進む。
 ステップS79において、サークル重心計算部163は、重心位置が計算不可であることを出力する。
 すなわち、図14の左上部で示されるキャリブレーションシート113上のマーカ121xに対応する3次元点群情報が、クラスタリング部162によりクラスタリングされたサークルのうちサークルCx1に含まれる場合について考える。
 さらに、サークルCx1の場合、サークル重心計算部163は、図14の例Ex11で示されるように、処理対象サークルCx1として設定する。ここで、図14の例Ex12で示されるように、処理対象サークルCx1に含まれるスキャンラインが、スキャンラインSC1,SC2の2本である場合について考える。
 ステップS74の処理により、図14の例Ex13で示されるように、スキャンラインSC1,SC2と、処理対象サークルCxとの交点となる端点Pa乃至Pdが抽出される。処理対象サークルCx上にスキャンラインが2本である場合については、端点は、端点Pa乃至Pdで示されるように4点が求められる。
 ステップS75乃至S77の処理においては、図14の例Ex14で示されるように、端点Pa乃至Pdのうちの3点の組み合わせを用いて、外接円を求め、その中心位置を重心位置として算出し、全ての3点の組み合わせについて繰り返し求めることにより、例Ex15のバツ印で示されるように重心を求める。例Ex15においては、3点の組み合わせは4個求められることになるため、それぞれの重心位置が4点求められる。
 より詳細には、図15で示されるように、処理対象サークルCx上に端点Pa乃至Pdが設定され、端点Pa,Pb,Pcからなる3点により外接円の重心位置を求める場合、まず、端点Pa,Pb,Pcから特定される第1の平面(Ax+By+Cz+D=0)、端点Pa,Pb間の垂直二等分平面Sf1((Pa-Pb)・(X-(Pa+Pb/2))=0)、および、端点Pa,Pc間の垂直二等分平面Sf1((Pa-Pc)・(X-(Pa+Pc/2))=0)の3平面の交点CPを重心位置として求める。
 そして、ステップS78の処理により、図14の例Ex16のバツ印で示されるように、4点の重心位置の平均が、処理対象サークルCxの重心位置として求められ、アクティブセンササークル重心位置として出力される。
 以上の一連のキャリブレーション処理により、マーカ121を含むキャリブレーションシート113をセンシング領域に含む状態にした時のLiDAR111により求められるアクティブセンササークル重心位置と、RGBカメラ112により求められるパッシブセンササークル重心位置とに基づいて、LiDAR111とRGBカメラ112とのそれぞれのセンシング結果のズレを最小にするための補正に用いる回転行列Rと並進行列tとが求めることが可能となる。
 また、キャリブレーションシート113におけるマーカ121の形状をサークル(円形状)として、再帰性反射材により構成されており、サークル状のマーカ121の重心位置をアクティブセンサであるLiDAR111とパッシブセンサであるRGBカメラ112とのセンシング結果における対応点として求めている。
 これにより、サークル状のマーカ121の重心位置を求めるだけでよいので、LiDAR111のセンシング結果のように低解像度の3次元点群情報を用いても、RGBカメラ112のセンシング結果と対応点を高精度に対応点を特定することができるので、高精度なキャリブレーションを実現することができる。また、重心位置を求めるだけでよいので、計算コストを低減させることが可能となる。
 また、設計値の分かっているキャリブレーションシート113を利用することで、各マーカの位置としてサークルの重心位置を利用することができるので、各重心位置が同一平面状であることを利用して、幾何的に補正することにより重心位置の計算精度を高めることが可能となり、結果として、高精度なキャリブレーションを実現することができる。
 結果として、アクティブセンサからなるLiDAR111と、パッシブセンサからなるRGBカメラ112とを簡易な構成で、高精度にキャリブレーションすることが可能となる。
 <<3.本開示の第2の実施の形態>>
 以上においては、キャリブレーションシート113上に、再帰性反射材を用いて、円形状のマーカ121を形成し、キャリブレーションシート113をアクティブセンサであるLiDAR111とパッシブセンサであるRGBカメラ112を用いてセンシングし、それぞれのセンシング結果として得られるマーカ121に対応して検出されるサークルの重心位置を対応点となるようにして、LiDAR111とRGBカメラ112とのズレを補正できるような回転行列Rと並進行列tとを求めることでキャリブレーションを実現する例について説明してきた。
 しかしながら、LiDAR111とRGBカメラ112との相互のセンシング結果における対応点が求められれば、マーカ121の形状は、円形でなくてもよく、例えば、ひし形などの方形状であってもよい。
 図16は、キャリブレーションシート113上にひし形のマーカ201を形成するようにしたキャリブレーションシステム100の構成例が示されている。
 すなわち、図16のキャリブレーションシステム100において、図4ののキャリブレーションシステム100と異なる点は、キャリブレーションシート113において形成される円形状のマーカ121に代えて、ひし形状のマーカ201が設けられている点である。
 この場合、キャリブレーション部114は、ひし形のマーカ201のそれぞれのコーナ点を、LiDAR111とRGBカメラ112のセンシング結果における対応点として、回転行列Rおよび並進行列tを求める。
 <図16のキャリブレーションシステムにおけるキャリブレーションの概要>
 次に、図17を参照して、図16のキャリブレーションシステム100におけるキャリブレーション部114によるキャリブレーションの概要について説明する。
 図17の左下部の分布図PC11で示されるように、キャリブレーションシート113に対して、灰色の点で示される位置に、順次レーザ光を照射すると、LiDAR111は、キャリブレーションシート113が設置されている距離を測定することにより、キャリブレーションシート113の位置を示す3次元点群情報を取得することになる。
 また、LiDAR111は、キャリブレーションシート113上においては、マーカ201の領域ZNにおいて、反射強度が高く検出され、それ以外の領域よりも高い状態で検出される。
 すなわち、図17の左下部のスキャン例R11で示されるように、LiDAR111が、キャリブレーションシート113に対してスキャンラインL111で示されるようにレーザ光を順次放射する場合、反射強度は、図17の波形図R12で示されるような分布として検出される。
 波形図R12は、横軸がスキャンラインL111上の位置であり、縦軸が反射強度を示している。波形図R12で示されるように、スキャンラインL111上のマーカ201とそれ以外の領域との境界a11乃至a16のうち、マーカ201の領域ZNに属する範囲a11乃至a12,a13乃至a14,a15乃至a16については、反射強度が高く、それ以外の領域は低い。
 このため、キャリブレーションシート113上の反射強度の分布のうち、所定の閾値よりも高い範囲を抽出すると、図17の抽出例R13で示されるように、マーカ201が設けられた領域ZNの3次元点群情報が抽出される。
 さらに、図17のコーナ分布図R14で示されるように、マーカ201が設けられた領域内の灰色の点で示されるレーザ光の反射強度が所定値よりも高い、3次元点群情報のうち、マーカ201のひし形状の範囲のコーナ点が、白抜きのバツ印で示されるマーカ201のコーナ位置として求められる。
 一方、RGBカメラ112により撮像されるキャリブレーションシート113は、例えば、図17の画像P201で示されるような画像となる。
 画像P201においては、白色のひし形のマーカ201が映し出されるため、黒色のバツ印で示される位置を、マーカ201からなるひし形状のコーナ位置として求めることができる。
 従って、キャリブレーション部114は、図17の比較図CL11で示されるように、コーナ分布図R14における白抜きのバツ印で示されるLiDAR111のスキャン結果に基づいて認識されるキャリブレーションシート113上のマーカ201の重心位置と、RGBカメラ112により撮像された画像P201より検出される黒色のバツ印で示されるマーカ121の重心位置との位置関係に基づいて、両者の座標系を対応付けるための回転行列Rと並進行列tとを求める。
 <図16のキャリブレーション部の構成例>
 次に、図18のブロック図を参照して、図16のキャリブレーション部114の構成例について説明する。
 図16のキャリブレーション部114は、パッシブセンサ系処理部211、アクティブセンサ系処理部212、および投影誤差最小化部213を備えている。
 パッシブセンサ系処理部211は、パッシブセンサであるRGBカメラ112のセンシング結果である画像に基づいて、マーカ201を構成するひし形のコーナ位置を求めて投影誤差最小化部143に出力する。
 パッシブセンサ系処理部211は、コーナ検出部221、および誤検出除去部222を備えている。
 コーナ検出部221は、RGBカメラ112より供給される画像に基づいて、画像内のキャリブレーションシート113のうち、ひし形状のマーカ201が形成された部位である範囲のコーナを検出し、検出したコーナの画像内における位置の情報を誤検出除去部222に出力する。
 誤検出除去部222は、キャリブレーションシート113上におけるマーカ201の幾何学的な配置の情報を利用することで、画像内におけるコーナの位置における、誤検出を除去して、RGBカメラ112により撮像された画像内における2次元のコーナの位置の情報を投影誤差最小化部213に出力する。尚、パッシブセンサであるRGBカメラ112により検出されたコーナ位置の情報をパッシブセンサコーナ位置情報と称する。
 尚、パッシブセンサであるRGBカメラ112のセンシング結果に基づいて得られるコーナ位置の情報については、以降において、単に、パッシブセンサコーナ位置情報と称する。
 アクティブセンサ系処理部212は、アクティブセンサであるLiDAR111のセンシング結果である3次元点群情報に基づいて、コーナ位置を求めて投影誤差最小化部143に出力する。
 アクティブセンサ系処理部212は、反射強度フィルタ231、クラスタリング部232、およびコーナ計算部233を備えている。
 反射強度フィルタ231は、LiDAR111より供給される反射強度の分布の情報に対して、所定の閾値より大きな反射強度の分布のみを抽出することにより、キャリブレーションシート113上のマーカ201が形成されているひし形状の範囲内に存在する反射強度の分布を抽出して、クラスタリング部232に出力する。
 クラスタリング部232は、反射強度フィルタ161より出力された所定の閾値よりも大きな反射強度となる分布をクラスタリングすることにより、ひし形状のマーカ201の分布として抽出し、クラスタリングした結果であるマーカ201単位の反射強度の分布の情報をコーナ計算部233に出力する。
 コーナ計算部233は、クラスタリングされた、ひし形状のマーカ201単位の反射強度の分布におけるコーナの座標を計算して、LiDAR111のスキャン結果に基づいて得られるコーナの位置の情報として投影誤差最小化部213に出力する。尚、アクティブセンサであるLiDAR111により検出されたコーナ位置の情報をアクティブセンサコーナ位置情報と称する。
 投影誤差最小化部213は、LiDAR111のスキャン結果に基づいて得られるアクティブセンサコーナ位置情報と、RGBカメラ112の撮像結果に基づいて得られるパッシブセンサコーナ位置情報とから、相互の対応関係を利用して、LiDAR111とRGBカメラ112とのズレを最小にするときに必要な回転行列Rおよび並進行列tを算出する。
 尚、図4のキャリブレーションシステム100においては、キャリブレーションシート113上のマーカ121が円形状のサークルの重心位置を対応点として用いたのに対して、図16のキャリブレーションシステム100においては、ひし形状のマーカ201のコーナを対応点としている点以外の処理は、図8のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。ただし、パッシブセンサ系処理およびアクティブセンサ系処理については、それぞれ異なるので、以降において説明する。
 <図18のキャリブレーション部によるパッシブセンサ系処理>
 次に、図19のフローチャートを参照して、図18のキャリブレーション部114によるパッシブセンサ系処理について説明する。
 ステップS101において、パッシブセンサ系処理部211のコーナ検出部221は、RGBカメラ112により撮像された画像より画像認識によりキャリブレーションシート113上のマーカ201を認識し、さらに、マーカ201のコーナを検出して、記憶する。
 ステップS102において、コーナ検出部221は、未処理のコーナを処理対象コーナに設定する。
 ステップS103において、コーナ検出部221は、処理対象コーナの画像内の座標位置を計算し、誤検出除去部222に出力し、記憶させる。
 ステップS104において、コーナ検出部221は、未処理のコーナが存在するか否かを判定し、未処理のコーナが存在する場合、処理は、ステップS102に戻る。すなわち、キャリブレーションシート113上の全てのマーカ201の全てのコーナについて、全ての座標位置が計算されるまで、ステップS102乃至S104の処理が繰り返される。そして、ステップS104において、全てのコーナの座標位置が計算された場合、未処理のコーナはないものとみなされ、処理は、ステップS105に進む。
 ステップS105において、誤検出除去部222は、既知の設計値であるキャリブレーションシート113上のマーカ201の位置の情報に基づいて、求められたコーナの座標位置のうち、明らかに誤検出されていると認められる検出結果を除去し、パッシブセンサコーナ位置情報として投影誤差最小化部213に出力する。
 以上の処理により、パッシブセンサコーナ位置情報が求められて、投影誤差最小化部213に出力される。
 <図18のキャリブレーション部によるアクティブセンサ系処理>
 次に、図20のフローチャートを参照して、図18のキャリブレーション部114によるアクティブセンサ系処理について説明する。
 ステップS121において、アクティブセンサ系処理部212の反射強度フィルタ231は、アクティブセンサであるLiDAR111のセンシング結果である3次元点群情報のうち、所定値よりも高い反射強度の点群情報を抽出し、クラスタリング部232に出力する。
 ステップS122において、クラスタリング部232は、反射強度が所定値よりも高い3次元点群情報を抽出して、所定の範囲内に存在する点群情報を1つのひし形状のマーカ201に対応する領域の情報とみなしてクラスタリングし、実質的にひし形状のマーカ201の単位でクラスタリングした点群情報をコーナ計算部233に出力する。
 ステップS123において、コーナ計算部233は、未処理のクラスのいずれかの点群情報を処理対象のひし形のマーカ201の点群情報に設定する。
 ステップS124において、コーナ計算部233は、コーナ座標計算処理を実行し、処理対象となるひし形のマーカ201にクラスタリングされた点群情報のコーナ位置の座標を求めて、投影誤差最小化部213に出力する。尚、コーナ座標計算処理については、図21のフローチャートを参照して、詳細を後述する。
 ステップS125において、コーナ計算部233は、コーナ座標計算処理において、コーナ位置の座標が計算不可であるとみなされたか否かを判定し、計算不可ではない場合、すなわち、コーナ位置の座標が求められた場合、処理は、ステップS126に進む。
 ステップS126において、コーナ計算部233は、未処理のクラスが存在するか否かを判定し、未処理のクラスが存在する場合、処理は、ステップS123に戻る。すなわち、全てのクラスの点群情報のコーナ位置の座標がアクティブセンサコーナ位置情報として計算されるまで、ステップS123乃至S126の処理が繰り返される。
 そして、ステップS126において、全てのクラス、すなわち、全てのひし形のマーカ201の点群情報のコーナ位置の座標が計算されると、処理は、終了する。
 また、ステップS125において、計算不可が出力された場合、処理は、ステップS127に進み、コーナ計算部233は、コーナ位置の計算不可を出力する。
 以上の処理により、アクティブセンサコーナ位置情報が求められて、投影誤差最小化部213に出力される。
 <コーナ座標計算処理>
 次に、図21のフローチャートを参照して、コーナ座標計算処理について説明する。
 ステップS141において、コーナ計算部233は、処理対象となるひし形のマーカ201内に、スキャンラインが4ライン以上存在するか否かを判定し、4ライン以上存在すると判定した場合、処理は、ステップS142に進む。
 ステップS142において、コーナ計算部233は、処理対象マーカとスキャンラインとの交点となる位置の情報を端点の情報として抽出する。
 ステップS143において、コーナ計算部233は、抽出された端点のそれぞれについて、隣接する端点同士を結ぶ直線を設定する。
 ステップS144において、コーナ計算部233は、設定した直線同士の交点位置の座標、または、再接近した位置の中点位置の座標を計算し、コーナ位置の座標として記憶する。
 ステップS145において、コーナ計算部233は、求められたコーナ位置の座標を処理対象マーカにおけるコーナ位置の座標の情報として投影誤差最小化部213に出力する。
 一方、ステップS141において、スキャンラインが4ライン以上存在しない場合、処理は、ステップS146に進む。
 ステップS146において、コーナ計算部233は、コーナ位置の座標が計算不可であることを出力する。
 すなわち、図22の左上部で示されるキャリブレーションシート113上のマーカ201xに対応する3次元点群情報が、クラスタリング部232によりクラスタリングされたマーカのうちマーカCx100について考える。
 マーカCx100の場合、コーナ計算部233は、図22の例Ex101で示されるように、処理対象マーカCx100として設定する。ここで、図22の例Ex102で示されるように、処理対象マーカCx100に含まれるLiDAR111のスキャンラインがスキャンラインSC1乃至SC4の4本である場合について考える。
 ステップS142の処理により、図22の例Ex103で示されるように、スキャンラインSC1乃至SC4と、処理対象マーカCx100との交点となる端点Pa乃至Phが抽出される。処理対象マーカCx100上にスキャンラインが4本である場合については、端点は、端点Pa乃至Phで示されるように8点が求められる。
 ステップS143の処理においては、図22の例Ex104で示されるように、端点PaとPc、端点PbとPd、端点PeとPg、端点PfとPhをそれぞれ結ぶ直線が設定される。尚、図22の例Ex104においては、端点PaとPcが結ばれる直線L1と、端点PbとPdが結ばれる直線L2のみが表記されている。
 ステップS144において、図22の例Ex105で示されるように、直線L1,L2との交点CL1がコーナ位置の座標として求められる。ただし、3次元点群情報は、連続的な空間情報ではなく、LiDARにより距離計測された点群情報でしかないので、必ずしも、直線L1,L2と交わらない可能性がある。そこで、そのような場合については、図22の例Ex105’で示されるように、直線L1,L2間の最接近する位置の中間点がコーナ位置の情報として求められる。
 そして、図22の例Ex106のバツ印で示されるように、処理対象のひし形のマーカ201の4点CL11乃至CL14のそれぞれがコーナ位置の座標として求められる。
 以上の処理により、ひし形状のマーカ201からなるコーナ位置の座標を求めることが可能となる。
 すなわち、上述した一連のキャリブレーション処理により、マーカ201を含むキャリブレーションシート113をセンシングする領域に含む状態にした時のLiDAR111により求められるアクティブセンサコーナ位置と、RGBカメラ112により求められるパッシブセンサコーナ位置とに基づいて、LiDAR111とRGBカメラ112とのそれぞれの検出結果のズレを最小にするための補正に用いる回転行列Rと並進行列tとが求めることが可能となる。
 <<4.変形例>>
 以上においては、キャリブレーションシート113上に、再帰性反射材からなる円形状のマーカ121や、ひし形状のマーカ201が、全て同一の形状で、比較的規則的に設けられる例について説明してきた。
 しかしながら、予めキャリブレーションシート113上にどのような形状のマーカが、どの位置に、どの大きさで配置されているのかがわかっていればよいので、マーカは、全てが同一の形状でなくてもよいし、規則的に配置されていなくてもよい。例えば、図23の左部で示されるように、キャリブレーションシート113上に円形状マーカ251、三角形状のマーカ252、および方形状のマーカ253が混在する状態で配置されていてもよい。
 また、反射率が異なる領域が形成されて、形状や配置が認識できればよいので、例えば、図23の右部で示されるように、キャリブレーションシート113におけるマーカ261以外の領域に再帰性反射材領域262を形成し、マーカ261は、光を吸収する材質から構成するようにしてもよい。この場合、反射強度が所定値よりも低い3次元点群情報を抽出することで、マーカ261の3次元点群情報を抽出することができる。
 すなわち、マーカは、アクティブセンサにより、他の被写体とは異なる、所定の反射強度より高い反射強度の領域、または、所定の反射強度より低い反射強度の領域として検出でき、かつ、パッシブセンサにより画像として形状や色で認識できるものであればよい。
 さらに、式(5)を参照して説明したように、回転行列Rと並進行列tとの未知数は、12個であるため、対応点の情報が6組存在すればよいので、LiDAR111とRGBカメラ112とのセンシング結果は、1フレームに対して6組のセンシング結果を用いるようにしてもよいし、1組ずつ時系列に異なる6フレームから求められるセンシング結果を用いるようにしてもよい。また、マーカは、LiDAR111とRGBカメラ112とで、相互に認識できる位置情報を対応点にできればよいので、例えば、再帰性反射材で塗装された道路標識などをマーカの代わりに使用してもよい。
 このため、LiDAR111およびRGB112が車両のフロントウィンドウから、例えば、図24で示されるように、車両の前方の監視領域Z201に対して3次元点群情報を検出すると共に、画像を撮像するようにして、時刻T=t1乃至t6からなる時系列に6フレーム分の異なるタイミングで得られた情報を用いることで、再帰性反射材で塗装された道路標識をマーカ271として利用し、マーカ271における対応点から、回転行列Rおよび並進行列tの各要素を求めるようにしてもよい。
 尚、図24においては、監視領域Z201に対して、道路272の左側に設けられた再帰性反射材が塗装されたマーカ271として機能させる道路標識が、時刻T=t1乃至t6の経過に伴って、6フレーム分求められ、道路標識からなるマーカ271が徐々に接近する様子が示されている。
 すなわち、道路標識は形状や大きさが特定できるので、マーカ271として機能する道路標識までの距離や角度が、時系列に変化して取得されるため、これらの情報が1フレームで少なくとも1組求められるので、少なくとも6フレーム分以上求められれば、式(5)を解くことが可能となる。
 結果として、車両などの移動体に搭載されるLiDAR111やRGBカメラ112とのキャリブレーションを、特定のキャリブレーションシートを用意することなく、また、任意のタイミングで繰り返し実施することが可能となる。
 また、キャリブレーションシート113においても、LiDAR111のよるアクティブセンサにより投光される光の反射強度が異なる領域が少なくとも2領域設定できれば良いので、再帰性反射材が塗装された道路標識が設けられた領域と、それ以外の空間とをキャリブレーションシートとみなしてキャリブレーションするようにしてもよい。
 また、以上においては、アクティブセンサとしてLiDAR111を用い、パッシブセンサとしてRGBカメラ112を用いる例について説明してきたが、アクティブセンサやパッシブセンサについては、その他のセンサでもよい。
 アクティブセンサとしては、例えば、ToF(Time of Flight)センサやレーザレーダなどであってもよく、キャリブレーションシートに対して(キャリブレーションに必要とされるセンシング領域に対して)、マーカや道路標識などの反射率が異なる領域を、異なる反射強度で検出することができるセンサであれば、他のセンサであってもよい。
 また、パッシブセンサとしては、IR(Infrared)カメラなどでもよく、キャリブレーションシートに対して(キャリブレーションに必要とされるセンシング領域に対して)、マーカや道路標識を画像として検出できる(画像として色や形状として認識できる)センサであれば、他のセンサであってもよい。
 <<5.ソフトウェアにより実行させる例>>
 ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどに、記録媒体からインストールされる。
 図25は、汎用のコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)1001を内蔵している。CPU1001にはバス1004を介して、入出力インタフェース1005が接続されている。バス1004には、ROM(Read Only Memory)1002およびRAM(Random Access Memory)1003が接続されている。
 入出力インタフェース1005には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部1006、処理操作画面や処理結果の画像を表示デバイスに出力する出力部1007、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部1008、LAN(Local Area Network)アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部1009が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどのリムーバブルメディア1011に対してデータを読み書きするドライブ1010が接続されている。
 CPU1001は、ROM1002に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア1011ら読み出されて記憶部1008にインストールされ、記憶部1008からRAM1003にロードされたプログラムに従って各種の処理を実行する。RAM1003にはまた、CPU1001が各種の処理を実行する上において必要なデータなども適宜記憶される。
 以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータでは、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 尚、図25におけるCPU1001が、図7,図18におけるキャリブレーション部114の機能を実現させる。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 なお、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本開示は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 <<6.応用例>>
 本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
 図26は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図26に示した例では、車両制御システム7000は、駆動系制御ユニット7100、ボディ系制御ユニット7200、バッテリ制御ユニット7300、車外情報検出ユニット7400、車内情報検出ユニット7500、及び統合制御ユニット7600を備える。これらの複数の制御ユニットを接続する通信ネットワーク7010は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)又はFlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークであってよい。
 各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク7010を介して他の制御ユニットとの間で通信を行うためのネットワークI/Fを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信I/Fを備える。図26では、統合制御ユニット7600の機能構成として、マイクロコンピュータ7610、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660、音声画像出力部7670、車載ネットワークI/F7680及び記憶部7690が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信I/F及び記憶部等を備える。
 駆動系制御ユニット7100は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット7100は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット7100は、ABS(Antilock Brake System)又はESC(Electronic Stability Control)等の制御装置としての機能を有してもよい。
 駆動系制御ユニット7100には、車両状態検出部7110が接続される。車両状態検出部7110には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット7100は、車両状態検出部7110から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
 ボディ系制御ユニット7200は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット7200は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット7200には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット7200は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
 バッテリ制御ユニット7300は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池7310を制御する。例えば、バッテリ制御ユニット7300には、二次電池7310を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット7300は、これらの信号を用いて演算処理を行い、二次電池7310の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
 車外情報検出ユニット7400は、車両制御システム7000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット7400には、撮像部7410及び車外情報検出部7420のうちの少なくとも一方が接続される。撮像部7410には、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部7420には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム7000を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
 環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びLIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)装置のうちの少なくとも一つであってよい。これらの撮像部7410及び車外情報検出部7420は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
 ここで、図27は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
 なお、図27には、それぞれの撮像部7910,7912,7914,7916の撮影範囲の一例が示されている。撮像範囲aは、フロントノーズに設けられた撮像部7910の撮像範囲を示し、撮像範囲b,cは、それぞれサイドミラーに設けられた撮像部7912,7914の撮像範囲を示し、撮像範囲dは、リアバンパ又はバックドアに設けられた撮像部7916の撮像範囲を示す。例えば、撮像部7910,7912,7914,7916で撮像された画像データが重ね合わせられることにより、車両7900を上方から見た俯瞰画像が得られる。
 車両7900のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7922,7924,7926,7928,7930は、例えば超音波センサ又はレーダ装置であってよい。車両7900のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7926,7930は、例えばLIDAR装置であってよい。これらの車外情報検出部7920~7930は、主として先行車両、歩行者又は障害物等の検出に用いられる。
 図26に戻って説明を続ける。車外情報検出ユニット7400は、撮像部7410に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット7400は、接続されている車外情報検出部7420から検出情報を受信する。車外情報検出部7420が超音波センサ、レーダ装置又はLIDAR装置である場合には、車外情報検出ユニット7400は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット7400は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
 また、車外情報検出ユニット7400は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部7410により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット7400は、異なる撮像部7410により撮像された画像データを用いて、視点変換処理を行ってもよい。
 車内情報検出ユニット7500は、車内の情報を検出する。車内情報検出ユニット7500には、例えば、運転者の状態を検出する運転者状態検出部7510が接続される。運転者状態検出部7510は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット7500は、運転者状態検出部7510から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット7500は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
 統合制御ユニット7600は、各種プログラムにしたがって車両制御システム7000内の動作全般を制御する。統合制御ユニット7600には、入力部7800が接続されている。入力部7800は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット7600には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部7800は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム7000の操作に対応した携帯電話又はPDA(Personal Digital Assistant)等の外部接続機器であってもよい。入力部7800は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部7800は、例えば、上記の入力部7800を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット7600に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部7800を操作することにより、車両制御システム7000に対して各種のデータを入力したり処理動作を指示したりする。
 記憶部7690は、マイクロコンピュータにより実行される各種プログラムを記憶するROM(Read Only Memory)、及び各種パラメータ、演算結果又はセンサ値等を記憶するRAM(Random Access Memory)を含んでいてもよい。また、記憶部7690は、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
 汎用通信I/F7620は、外部環境7750に存在する様々な機器との間の通信を仲介する汎用的な通信I/Fである。汎用通信I/F7620は、GSM(登録商標)(Global System of Mobile communications)、WiMAX(登録商標)、LTE(登録商標)(Long Term Evolution)若しくはLTE-A(LTE-Advanced)などのセルラー通信プロトコル、又は無線LAN(Wi-Fi(登録商標)ともいう)、Bluetooth(登録商標)などのその他の無線通信プロトコルを実装してよい。汎用通信I/F7620は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)へ接続してもよい。また、汎用通信I/F7620は、例えばP2P(Peer To Peer)技術を用いて、車両の近傍に存在する端末(例えば、運転者、歩行者若しくは店舗の端末、又はMTC(Machine Type Communication)端末)と接続してもよい。
 専用通信I/F7630は、車両における使用を目的として策定された通信プロトコルをサポートする通信I/Fである。専用通信I/F7630は、例えば、下位レイヤのIEEE802.11pと上位レイヤのIEEE1609との組合せであるWAVE(Wireless Access in Vehicle Environment)、DSRC(Dedicated Short Range Communications)、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信I/F7630は、典型的には、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、車両と家との間(Vehicle to Home)の通信及び歩車間(Vehicle to Pedestrian)通信のうちの1つ以上を含む概念であるV2X通信を遂行する。
 測位部7640は、例えば、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部7640は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、PHS若しくはスマートフォンといった端末から位置情報を取得してもよい。
 ビーコン受信部7650は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部7650の機能は、上述した専用通信I/F7630に含まれてもよい。
 車内機器I/F7660は、マイクロコンピュータ7610と車内に存在する様々な車内機器7760との間の接続を仲介する通信インタフェースである。車内機器I/F7660は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)又はWUSB(Wireless USB)といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器I/F7660は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)、又はMHL(Mobile High-definition Link)等の有線接続を確立してもよい。車内機器7760は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも1つを含んでいてもよい。また、車内機器7760は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器I/F7660は、これらの車内機器7760との間で、制御信号又はデータ信号を交換する。
 車載ネットワークI/F7680は、マイクロコンピュータ7610と通信ネットワーク7010との間の通信を仲介するインタフェースである。車載ネットワークI/F7680は、通信ネットワーク7010によりサポートされる所定のプロトコルに則して、信号等を送受信する。
 統合制御ユニット7600のマイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム7000を制御する。例えば、マイクロコンピュータ7610は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット7100に対して制御指令を出力してもよい。例えば、マイクロコンピュータ7610は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ7610は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
 マイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の3次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ7610は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
 音声画像出力部7670は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図26の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
 なお、図26に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
 なお、図7,図18を用いて説明した本実施形態に係るキャリブレーション部114の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
 以上説明した車両制御システム7000において、図7,図18を用いて説明した本実施形態に係るキャリブレーション部114は、図26に示した応用例の統合制御ユニット7600に適用することができる。例えば、キャリブレーション部114のパッシブセンサ系処理部141,211、アクティブセンサ系処理部142,212、および投影誤差最小化部143,213は、統合制御ユニット7600のマイクロコンピュータ7610、記憶部7690、車載ネットワークI/F7680に相当する。例えば、統合制御ユニット7600がキャリブレーション処理を実行することにより、車外情報検出部7420であるLiDAR装置と、撮像部7410とのキャリブレーションを実行することができる。
 また、図7,図18を用いて説明したキャリブレーション部114の少なくとも一部の構成要素は、図26に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、図7,図18を用いて説明したキャリブレーション部114が、図26に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。
 尚、本開示は、以下のような構成も取ることができる。
<1> 反射強度が取得可能なアクティブセンサにより、前記反射強度に基づいて、所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出部と、
 パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出部と、
 相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション部とを含む
 画像処理装置。
<2> 前記所定の物体は、一部の範囲において、他の一部とは異なる反射率となる部材が使用されており、
 前記アクティブセンサ物体位置検出部は、前記反射強度に基づいて、前記所定の物体における、前記一部の範囲の位置情報を、前記アクティブセンサ物体位置情報として検出する
 <1>に記載の画像処理装置。
<3> 前記アクティブセンサ物体位置情報は、前記所定の物体の3次元点群情報であり、
 前記パッシブセンサ物体位置情報は、前記所定の物体が撮像された2次元の画像内の位置情報であり、
 前記アクティブセンサ物体位置検出部は、前記反射強度に基づいて、前記所定の物体における、前記一部の範囲に対応する3次元点群情報を抽出し、抽出した前記一部の範囲に対応する3次元点群情報より、前記アクティブセンサ物体位置情報を検出し、
 前記パッシブセンサ物体位置検出部は、前記2次元の画像より、前記所定の物体の位置情報を検出し、前記パッシブセンサ物体位置情報として出力する
 <2>に記載の画像処理装置。
<4> 前記所定の物体は、サークル状の前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートであり、
 前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の重心位置を、前記アクティブセンサ物体位置情報として検出し、
 前記パッシブセンサ物体位置検出部は、前記2次元の画像より、前記サークル状の前記一部の範囲の重心位置を検出し、前記パッシブセンサ物体位置情報として出力する
 <3>に記載の画像処理装置。
<5> 前記アクティブセンサ物体位置検出部は、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の平均値からなる重心位置を、前記アクティブセンサ物体位置情報として検出する
 <4>に記載の画像処理装置。
<6> 前記アクティブセンサ物体位置検出部は、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の密度が所定の密度よりも高いとき、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の平均値からなる重心位置を、前記アクティブセンサ物体位置情報として検出する
 <5>に記載の画像処理装置。
<7> 前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出し、前記端点の情報に基づいて求められる重心位置を、前記アクティブセンサ物体位置情報として検出する
 <4>に記載の画像処理装置。
<8> 前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の密度が所定の密度よりも低いとき、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出し、前記端点の情報に基づいて求められる重心位置を、前記アクティブセンサ物体位置情報として検出する
 <7>に記載の画像処理装置。
<9> 前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出し、抽出した前記端点のうちの3点を取る組み合わせの全てについて求められる外接円の中心位置の平均からなる重心位置を、前記アクティブセンサ物体位置情報として検出する
 <7>に記載の画像処理装置。
<10> 前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報より求められる重心位置が、前記シートに対応する同一の平面上の位置情報となることを拘束条件として、前記サークル状の前記一部の範囲に対応する3次元点群情報より求められる重心位置を補正する重心位置補正部をさらに含む
 <4>に記載の画像処理装置。
<11> 前記キャリブレーション部は、相互に対応する、少なくとも6組の、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションする
 <3>乃至<10>のいずれかに記載の画像処理装置。
<12> 前記キャリブレーション部が、1フレーム分の、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするとき、前記所定の物体における、前記一部の範囲は、少なくとも6カ所よりも多い
 <11>に記載の画像処理装置。
<13> 前記キャリブレーション部が、少なくとも6フレーム分より多くの、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするとき、前記所定の物体における、前記一部の範囲は、少なくとも1カ所よりも多い
 <11>に記載の画像処理装置。
<14> 前記所定の物体は、道路標識である
 <13>に記載の画像処理装置。
<15> 前記キャリブレーション部は、既知の前記所定の物体における前記一部の範囲の位置情報を用いて、相互に対応する、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションする
 <3>乃至<14>のいずれかに記載の画像処理装置。
<16> 前記所定の物体は、複数であって、かつ、複数種類の形状からなる前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートである
 <15>に記載の画像処理装置。
<17> 前記キャリブレーション部は、相互に対応する、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とを対応付ける回転行列と並進行列とを計算することで、前記アクティブセンサと前記パッシブセンサとをキャリブレーションする
 <3>乃至<14>のいずれかに記載の画像処理装置。
<18> 前記所定の物体は、ひし形状の前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートであり、
 前記アクティブセンサ物体位置検出部は、前記抽出した前記ひし形状の前記一部の範囲に対応する3次元点群情報のコーナ位置を、前記アクティブセンサ物体位置情報として検出し、
 前記パッシブセンサ物体位置検出部は、前記画像内の2次元情報より、前記ひし形状の前記一部の範囲のコーナ位置を検出し、前記パッシブセンサ物体位置情報として出力する
 <3>乃至<14>のいずれかに記載の画像処理装置。
<19> 反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出処理と、
 パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出処理と、
 相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション処理とを含む
 画像処理方法。
<20> 反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出部と、
 パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出部と、
 相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション部と
 してコンピュータを機能させるプログラム。
 100 キャリブレーションシステム, 111 LiDAR, 112 RGBカメラ, 113 キャリブレーションシート, 114 キャリブレーション部, 121 マーカ, 151 サークル検出部, 152 サークル重心計算部, 153 誤検出除去部, 154 反射強度フィルタ, 155 クラスタリング部, 156 サークル受信計算部, 157 誤検出除去部, 158 重心補正部, 159 投影誤差最小化部, 201 マーカ, 211 コーナ検出部, 212 誤検出除去部, 213 反射強度フィルタ, 214 クラスタリング部, 215 コーナ計算部, 216 投影誤差最小化部

Claims (20)

  1.  反射強度が取得可能なアクティブセンサにより、前記反射強度に基づいて、所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出部と、
     パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出部と、
     相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション部とを含む
     画像処理装置。
  2.  前記所定の物体は、一部の範囲において、他の一部とは異なる反射率となる部材が使用されており、
     前記アクティブセンサ物体位置検出部は、前記反射強度に基づいて、前記所定の物体における、前記一部の範囲の位置情報を、前記アクティブセンサ物体位置情報として検出する
     請求項1に記載の画像処理装置。
  3.  前記アクティブセンサ物体位置情報は、前記所定の物体の3次元点群情報であり、
     前記パッシブセンサ物体位置情報は、前記所定の物体が撮像された2次元の画像内の位置情報であり、
     前記アクティブセンサ物体位置検出部は、前記反射強度に基づいて、前記所定の物体における、前記一部の範囲に対応する3次元点群情報を抽出し、抽出した前記一部の範囲に対応する3次元点群情報より、前記アクティブセンサ物体位置情報を検出し、
     前記パッシブセンサ物体位置検出部は、前記2次元の画像より、前記所定の物体の位置情報を検出し、前記パッシブセンサ物体位置情報として出力する
     請求項2に記載の画像処理装置。
  4.  前記所定の物体は、サークル状の前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートであり、
     前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の重心位置を、前記アクティブセンサ物体位置情報として検出し、
     前記パッシブセンサ物体位置検出部は、前記2次元の画像より、前記サークル状の前記一部の範囲の重心位置を検出し、前記パッシブセンサ物体位置情報として出力する
     請求項3に記載の画像処理装置。
  5.  前記アクティブセンサ物体位置検出部は、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の平均値からなる重心位置を、前記アクティブセンサ物体位置情報として検出する
     請求項4に記載の画像処理装置。
  6.  前記アクティブセンサ物体位置検出部は、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の密度が所定の密度よりも高いとき、前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の平均値からなる重心位置を、前記アクティブセンサ物体位置情報として検出する
     請求項5に記載の画像処理装置。
  7.  前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出し、前記端点の情報に基づいて求められる重心位置を、前記アクティブセンサ物体位置情報として検出する
     請求項4に記載の画像処理装置。
  8.  前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報の密度が所定の密度よりも低いとき、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出し、前記端点の情報に基づいて求められる重心位置を、前記アクティブセンサ物体位置情報として検出する
     請求項7に記載の画像処理装置。
  9.  前記アクティブセンサ物体位置検出部は、抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報のうち、前記アクティブセンサのスキャンラインの前記サークル状の範囲の端点を抽出し、抽出した前記端点のうちの3点を取る組み合わせの全てについて求められる外接円の中心位置の平均からなる重心位置を、前記アクティブセンサ物体位置情報として検出する
     請求項7に記載の画像処理装置。
  10.  前記抽出した前記サークル状の前記一部の範囲に対応する3次元点群情報より求められる重心位置が、前記シートに対応する同一の平面上の位置情報となることを拘束条件として、前記サークル状の前記一部の範囲に対応する3次元点群情報より求められる重心位置を補正する重心位置補正部をさらに含む
     請求項4に記載の画像処理装置。
  11.  前記キャリブレーション部は、相互に対応する、少なくとも6組の、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションする
     請求項3に記載の画像処理装置。
  12.  前記キャリブレーション部が、1フレーム分の、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするとき、前記所定の物体における、前記一部の範囲は、少なくとも6カ所よりも多い
     請求項11に記載の画像処理装置。
  13.  前記キャリブレーション部が、少なくとも6フレーム分より多くの、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするとき、前記所定の物体における、前記一部の範囲は、少なくとも1カ所よりも多い
     請求項11に記載の画像処理装置。
  14.  前記所定の物体は、道路標識である
     請求項13に記載の画像処理装置。
  15.  前記キャリブレーション部は、既知の前記所定の物体における前記一部の範囲の位置情報を用いて、相互に対応する、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションする
     請求項3に記載の画像処理装置。
  16.  前記所定の物体は、複数であって、かつ、複数種類の形状からなる前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートである
     請求項15に記載の画像処理装置。
  17.  前記キャリブレーション部は、相互に対応する、前記所定の物体における、前記一部の範囲の位置情報からなる前記アクティブセンサ物体位置情報と、前記所定の物体における、前記一部の範囲の位置情報からなる前記パッシブセンサ物体位置情報とを対応付ける回転行列と並進行列とを計算することで、前記アクティブセンサと前記パッシブセンサとをキャリブレーションする
     請求項3に記載の画像処理装置。
  18.  前記所定の物体は、ひし形状の前記一部の範囲に、前記他の一部の範囲と異なる反射率となる部材が形成された平面状のシートであり、
     前記アクティブセンサ物体位置検出部は、前記抽出した前記ひし形状の前記一部の範囲に対応する3次元点群情報のコーナ位置を、前記アクティブセンサ物体位置情報として検出し、
     前記パッシブセンサ物体位置検出部は、前記画像内の2次元情報より、前記ひし形状の前記一部の範囲のコーナ位置を検出し、前記パッシブセンサ物体位置情報として出力する
     請求項3に記載の画像処理装置。
  19.  反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出処理と、
     パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出処理と、
     相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション処理とを含む
     画像処理方法。
  20.  反射強度が取得可能なアクティブセンサにより検出される、前記反射強度が他の領域と異なる所定の物体の位置情報を、アクティブセンサ物体位置情報として検出するアクティブセンサ物体位置検出部と、
     パッシブセンサにより検出される、前記所定の物体の位置情報を、パッシブセンサ物体位置情報として検出するパッシブセンサ物体位置検出部と、
     相互に対応する、前記アクティブセンサ物体位置情報と、前記パッシブセンサ物体位置情報とに基づいて、前記アクティブセンサと前記パッシブセンサとをキャリブレーションするキャリブレーション部と
     してコンピュータを機能させるプログラム。
PCT/JP2018/039602 2017-11-08 2018-10-25 画像処理装置、および画像処理方法、並びにプログラム WO2019093136A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017215274 2017-11-08
JP2017-215274 2017-11-08

Publications (1)

Publication Number Publication Date
WO2019093136A1 true WO2019093136A1 (ja) 2019-05-16

Family

ID=66438423

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/039602 WO2019093136A1 (ja) 2017-11-08 2018-10-25 画像処理装置、および画像処理方法、並びにプログラム

Country Status (1)

Country Link
WO (1) WO2019093136A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220144917A (ko) * 2021-04-20 2022-10-28 주식회사 에이치엘클레무브 차량의 주행을 보조하는 장치 및 그 방법
WO2023190075A1 (ja) * 2022-03-29 2023-10-05 京セラ株式会社 観察装置及び観察方法
JP7492756B2 (ja) 2022-03-18 2024-05-30 株式会社ブレインズ 電波源端末位置検出システム及び電波源端末位置検出方法

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56127267A (en) * 1980-03-10 1981-10-05 Mitsubishi Electric Corp Picture processor
JPH08180192A (ja) * 1994-12-22 1996-07-12 Mazda Motor Corp 画像処理における所定パターンの重心検出方法
JPH0962839A (ja) * 1995-08-30 1997-03-07 Fuji Facom Corp 農水産物の外観検査装置
JP2002259972A (ja) * 2001-02-27 2002-09-13 Sekisui Chem Co Ltd 画像処理における対象物の特定方法
JP2003329419A (ja) * 2002-05-16 2003-11-19 Mitsubishi Electric Corp 形状測定装置
JP2004328096A (ja) * 2003-04-22 2004-11-18 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム
JP2008304224A (ja) * 2007-06-05 2008-12-18 Topcon Corp ターゲット及びその製造方法
JP2010237193A (ja) * 2009-03-12 2010-10-21 Omron Corp キャリブレーション装置および3次元計測のためのパラメータの精度の確認支援方法
JP2011007621A (ja) * 2009-06-25 2011-01-13 Toppan Printing Co Ltd 2層円形位置ずれ測定装置
JP2011033497A (ja) * 2009-08-03 2011-02-17 Honda Motor Co Ltd 環境認識システム、環境認識方法およびロボット
JP2012021958A (ja) * 2010-07-16 2012-02-02 Canon Inc 位置姿勢計測装置、その計測処理方法及びプログラム
JP2014157489A (ja) * 2013-02-15 2014-08-28 Toyota Motor Corp 隊列走行制御装置
JP2015111483A (ja) * 2013-11-11 2015-06-18 三菱電機株式会社 レンズ位置検出方法および装置、並びに、レンズ位置調整方法および装置
US20150260498A1 (en) * 2014-03-13 2015-09-17 The Boeing Company Calibration of sensor arrays
JP2017130794A (ja) * 2016-01-20 2017-07-27 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、評価用チャート、評価システム、および性能評価方法

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56127267A (en) * 1980-03-10 1981-10-05 Mitsubishi Electric Corp Picture processor
JPH08180192A (ja) * 1994-12-22 1996-07-12 Mazda Motor Corp 画像処理における所定パターンの重心検出方法
JPH0962839A (ja) * 1995-08-30 1997-03-07 Fuji Facom Corp 農水産物の外観検査装置
JP2002259972A (ja) * 2001-02-27 2002-09-13 Sekisui Chem Co Ltd 画像処理における対象物の特定方法
JP2003329419A (ja) * 2002-05-16 2003-11-19 Mitsubishi Electric Corp 形状測定装置
JP2004328096A (ja) * 2003-04-22 2004-11-18 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム
JP2008304224A (ja) * 2007-06-05 2008-12-18 Topcon Corp ターゲット及びその製造方法
JP2010237193A (ja) * 2009-03-12 2010-10-21 Omron Corp キャリブレーション装置および3次元計測のためのパラメータの精度の確認支援方法
JP2011007621A (ja) * 2009-06-25 2011-01-13 Toppan Printing Co Ltd 2層円形位置ずれ測定装置
JP2011033497A (ja) * 2009-08-03 2011-02-17 Honda Motor Co Ltd 環境認識システム、環境認識方法およびロボット
JP2012021958A (ja) * 2010-07-16 2012-02-02 Canon Inc 位置姿勢計測装置、その計測処理方法及びプログラム
JP2014157489A (ja) * 2013-02-15 2014-08-28 Toyota Motor Corp 隊列走行制御装置
JP2015111483A (ja) * 2013-11-11 2015-06-18 三菱電機株式会社 レンズ位置検出方法および装置、並びに、レンズ位置調整方法および装置
US20150260498A1 (en) * 2014-03-13 2015-09-17 The Boeing Company Calibration of sensor arrays
JP2017130794A (ja) * 2016-01-20 2017-07-27 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、評価用チャート、評価システム、および性能評価方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220144917A (ko) * 2021-04-20 2022-10-28 주식회사 에이치엘클레무브 차량의 주행을 보조하는 장치 및 그 방법
KR102665635B1 (ko) 2021-04-20 2024-05-14 주식회사 에이치엘클레무브 차량의 주행을 보조하는 장치 및 그 방법
JP7492756B2 (ja) 2022-03-18 2024-05-30 株式会社ブレインズ 電波源端末位置検出システム及び電波源端末位置検出方法
WO2023190075A1 (ja) * 2022-03-29 2023-10-05 京セラ株式会社 観察装置及び観察方法

Similar Documents

Publication Publication Date Title
JP6834964B2 (ja) 画像処理装置、画像処理方法、およびプログラム
WO2017159382A1 (ja) 信号処理装置および信号処理方法
US11076141B2 (en) Image processing device, image processing method, and vehicle
JP6764573B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2019028861A (ja) 信号処理装置、および信号処理方法、プログラム、並びに移動体
JP6645492B2 (ja) 撮像装置および撮像方法
WO2017057044A1 (ja) 情報処理装置及び情報処理方法
WO2019039279A1 (ja) 信号処理装置、および信号処理方法、プログラム、移動体、並びに、信号処理システム
JP6701532B2 (ja) 画像処理装置および画像処理方法
CN110691986B (zh) 用于计算机视觉的设备、方法和非暂时性计算机可读记录介质
WO2019026715A1 (ja) 制御装置、および制御方法、プログラム、並びに移動体
WO2018180579A1 (ja) 撮像制御装置、および撮像制御装置の制御方法、並びに移動体
WO2019093136A1 (ja) 画像処理装置、および画像処理方法、並びにプログラム
WO2016203989A1 (ja) 画像処理装置および画像処理方法
JP6922169B2 (ja) 情報処理装置および方法、車両、並びに情報処理システム
JP2020106396A (ja) 測距装置
WO2019163315A1 (ja) 情報処理装置、撮像装置、及び撮像システム
JP2023122597A (ja) 情報処理装置、情報処理方法及びプログラム
CN114788257A (zh) 信息处理装置、信息处理方法、程序、成像装置和成像系统
CN117741575A (zh) 使用网状雷达传感器的数据融合生成3d网格地图和点云

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: 18876677

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18876677

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP