WO2019082460A1 - 情報処理装置、情報処理方法、及びプログラム - Google Patents
情報処理装置、情報処理方法、及びプログラムInfo
- Publication number
- WO2019082460A1 WO2019082460A1 PCT/JP2018/027766 JP2018027766W WO2019082460A1 WO 2019082460 A1 WO2019082460 A1 WO 2019082460A1 JP 2018027766 W JP2018027766 W JP 2018027766W WO 2019082460 A1 WO2019082460 A1 WO 2019082460A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- depth map
- information processing
- evaluation value
- processing apparatus
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
- G06T7/85—Stereo camera calibration
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/26—Measuring arrangements characterised by the use of optical techniques for measuring angles or tapers; for testing the alignment of axes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/271—Image signal generators wherein the generated image signals comprise depth maps or disparity maps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/282—Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
- H04N13/246—Calibration of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/363—Image reproducers using image projection screens
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N2013/0074—Stereoscopic image analysis
- H04N2013/0081—Depth or disparity estimation from stereoscopic image signals
Definitions
- the present disclosure relates to an information processing device, an information processing method, and a program.
- the accuracy of the parameter affects the accuracy of the finally obtained distance information, so that the accuracy of the parameter, in particular, the accuracy of the parameter regarding the posture of the viewpoint at which imaging is performed is obtained with higher accuracy. Was required.
- a plane estimation unit that estimates a plane based on a first depth map obtained based on a plurality of captured images acquired by imaging at a plurality of viewpoints, and the first depth map
- An information processing apparatus comprising: a correction unit configured to correct parameters related to the attitudes of the plurality of viewpoints based on comparison with the plane.
- the processor may estimate a plane based on a first depth map obtained based on a plurality of captured images acquired by imaging at a plurality of viewpoints;
- An information processing method comprising: correcting parameters related to the orientations of the plurality of viewpoints based on a comparison between a depth map and the plane.
- a computer is provided with a function of estimating a plane based on a first depth map obtained based on a plurality of captured images acquired by imaging at a plurality of viewpoints;
- a program is provided for realizing a function of correcting parameters related to the attitudes of the plurality of viewpoints based on comparison between a depth map and the plane.
- a case where a plurality of captured images are mainly acquired by a plurality of imaging devices will be described as an example, but the present technology is not limited to such an example.
- the plurality of captured images may be acquired by, for example, different imaging devices, or may be acquired sequentially by one moving imaging device.
- an example in which two captured images are mainly acquired by two imaging devices and a depth map is generated from the two captured images is mainly described, but the present technology is not limited to such an example.
- a depth map may be generated from one or more captured images.
- stereo matching in which a corresponding point is searched for and matched among a plurality of captured images.
- the search direction of corresponding points may be limited to one direction.
- the search direction of the corresponding points is limited to the arrangement direction, thereby efficiently searching for the corresponding points.
- a plurality of imaging devices are arranged in the horizontal direction, and a corresponding point is often searched in the horizontal direction.
- the search direction of the corresponding point is limited to the horizontal direction, it is desirable that there is no vertical shift between the captured images.
- the imaging device it is difficult to arrange the imaging device with high accuracy, and the arrangement may be shifted as time passes. Then, when positional deviation in the vertical direction and depth direction or positional deviation occurs between the viewpoints related to imaging, vertical deviation may occur between the captured images. In addition, in the case where a plurality of captured images are acquired by different imaging devices, a difference in the characteristics of each imaging device may also be affected, and a vertical shift may occur between the captured images.
- image processing is performed to reduce vertical displacement between captured images.
- image processing is called parallelization processing or rectification, for example, by projective transformation using parameters related to the characteristics of the imaging device (so-called internal parameters) and parameters related to the position and orientation of the viewpoint (so-called external parameters) It is possible to realize.
- the parameters relating to the position of the viewpoint and the posture used when performing the parallelization processing may be given as the position and posture for each viewpoint, or may be given as the difference in position between the viewpoints and the difference in posture. It may be done.
- Estimating such parameters is called camera calibration, or simply calibration, and is performed beforehand, for example, prior to stereo matching.
- camera calibration or simply calibration
- the attitude of the viewpoint is the pitch angle that is the rotation angle around the left and right, the yaw angle that is the rotation angle around the top and bottom, and the roll angle that is the rotation angle around the front and back. Can be broken down.
- the difference in roll angle between viewpoints (hereinafter, also referred to as a roll angle between viewpoints or simply referred to as a roll angle) has a great influence on the possibility of matching in stereo matching. Therefore, the larger the error included in the estimated roll angle between the viewpoints, the more the matching error occurs in stereo matching between captured images subjected to the parallelization process using the parameter including the roll angle. It gets bigger.
- each embodiment of the present disclosure focusing on the above-mentioned circumstances.
- attention is paid to distortion of a depth map generated by stereo matching, and a pitch angle between viewpoints based on comparison between the depth map and a plane estimated from the depth map, And the yaw angle between the viewpoints can be corrected with higher accuracy.
- the first embodiment and the second embodiment of the present disclosure that achieve the above effects will be described in detail.
- FIG. 1 is an explanatory view showing a configuration example of an information processing system according to the first embodiment of the present disclosure.
- the information processing system according to the present embodiment includes a stereo camera 7 and a projector 8.
- the stereo camera 7 includes a right camera 7R and a left camera 7L.
- the right camera 7R and the left camera 7L photoelectrically convert the imaging light obtained by the lens system including the imaging lens, the diaphragm, the focus lens, etc., the drive system for performing the focusing operation on the lens system, and the lens system.
- each has a solid-state imaging element array or the like that generates an imaging signal.
- the lens system may include a zoom lens, and in such a case, the drive system may cause the lens system to perform a zoom operation.
- the solid-state imaging device array may be realized by, for example, a charge coupled device (CCD) sensor array or a complementary metal oxide semiconductor (CMOS) sensor array.
- CCD charge coupled device
- CMOS complementary metal oxide semiconductor
- the right camera 7R and the left camera 7L each acquire a captured image, and hereinafter, the captured image acquired by the right camera 7R may be referred to as an R image, and the captured image acquired by the left camera 7L may be referred to as an L image. That is, the position and the attitude of the right camera 7R are the position and the attitude of the viewpoint related to the imaging of the R image, and the position and the attitude of the left camera 7L are the positions and the attitude of the viewpoint related to the imaging of the L image .
- the right camera 7R and the left camera 7L are arranged side by side horizontally. Therefore, although there is a horizontal shift mainly in the imaging ranges of the right camera 7R and the left camera 7L, at least a part of the imaging ranges of the right camera 7R and the left camera 7L overlap, and a relatively large part Is desirable.
- the stereo camera 7 is disposed toward the top surface of the table 9, which is a flat surface, as shown in FIG.
- the overlapping portion of the imaging range of the right camera 7R and the left camera 7L is not shown in FIG. 1 but may be included in the top surface of the table 9, and the projection area R10 of the projector 8 described later It may be substantially the same.
- the characteristics of the right camera 7R and the left camera 7L, and parameters relating to the position and the posture are calculated by calibration performed in advance, or acquired at the time of designing the stereo camera 7.
- the pitch angle between the right camera 7R and the left camera 7L and the yaw angle may include errors.
- the projector 8 projects an image on the top surface of the table 9.
- the projector 8 projects an image on the projection area R ⁇ b> 10 of the top surface of the table 9.
- the images projected by the projector 8 may vary, for example, it is desirable for the projector 8 to project an image suitable for stereo matching.
- the image suitable for stereo matching is, for example, an image sufficiently including characteristic points and textures.
- FIG. 1 shows an example in which the stereo camera 7 and the projector 8 are disposed right above the table 9, the present invention is not limited to such an example. It may be arranged diagonally.
- the information processing system according to the present embodiment includes an information processing apparatus not shown in FIG.
- the arrangement of the information processing apparatus is not limited, the information processing apparatus is connected to the stereo camera 7 and the projector 8 shown in FIG.
- an information processing apparatus hereinafter, also referred to as an information processing apparatus according to the present embodiment
- FIG. 2 is a block diagram showing an exemplary configuration of the information processing apparatus 1 according to the present embodiment.
- the information processing apparatus 1 according to the present embodiment includes a control unit 10, an operation unit 30, a display unit 40, a storage unit 50, and an interface unit 60.
- the control unit 10 controls each component of the information processing apparatus 1. Further, as shown in FIG. 2, the control unit 10 also functions as a parallelization processing unit 11, a depth map generation unit 12, a plane estimation unit 13, a correction unit 15, a display control unit 17, and a projector control unit 19.
- the parallelization processing unit 11 is a parallel processing to reduce the vertical deviation between the R image and the L image with respect to the R image and the L image acquired from the stereo camera 7 illustrated in FIG. 1 by the interface unit 60 described later.
- the parallelization process performed by the parallelization processing unit 11 may include a projective transformation process using the characteristics of the right camera 7R and the left camera 7L, and parameters related to the position and the posture.
- the parameter used by the parallelization processing unit 11 may be a parameter stored in advance in the storage unit 50, and may be, for example, a parameter calculated by calibration or a parameter at the time of designing the stereo camera 7. .
- the parallelization processing unit 11 may perform the parallelization processing using a parameter provided from the correction unit 15 described later.
- an image obtained by subjecting the R image to parallelization processing by the parallelization processing unit 11 is referred to as a parallelized R image, and an image obtained by subjecting the L image to parallelization processing is parallelized. It is called an L image.
- the parallelization processing unit 11 outputs the parallelization R image and the parallelization L image to the depth map generation unit 12.
- the depth map generation unit 12 generates a depth map by stereo matching using the parallelization R image provided from the parallelization processing unit 11 and the parallelization L image.
- the search direction of the corresponding point in stereo matching performed by the depth map generation unit 12 according to the present embodiment is a horizontal direction.
- the depth map generation unit 12 outputs the generated depth map to the plane estimation unit 13.
- the plane estimation unit 13 estimates a plane based on the depth map generated by the depth map generation unit 12. For example, the plane estimation unit 13 inputs a 3D point group obtained from the depth map generated by the depth map generation unit 12 and estimates a plane included in the 3D point group.
- the plane estimation unit 13 may remove noise and estimate one plane by using a plane estimation method such as RANSAC (Random sample consensus) method.
- a plane estimation method such as RANSAC (Random sample consensus) method.
- RANSAC Random sample consensus
- a point belonging to a plane other than the largest plane a plane having the largest number of belonging points
- the imaging range of the stereo camera 7 particularly, in the overlapping portion of the imaging ranges of the right camera 7R and the left camera 7L It is desirable not to include planes other than the plane of, or other objects as much as possible. Therefore, as described with reference to FIG.
- the stereo camera 7 is disposed such that the overlapping portion of the imaging ranges of the right camera 7R and the left camera 7L is included in the top surface of the table 9 which is a plane. desirable. In addition, it is desirable that no extra objects be placed on the top surface of the table 9.
- the plane estimation unit 13 outputs information (for example, a plane equation) indicating the estimated plane to the correction unit 15.
- the correction unit 15 compares the depth map generated by the depth map generation unit 12 with the right camera 7R and the left based on a comparison between the plane estimated by the plane estimation unit 13 (hereinafter sometimes referred to as an estimated plane).
- the parameters relating to the attitude of the camera 7L are corrected.
- the parameters related to the attitude of the right camera 7R and the left camera 7L corrected by the correction unit 15 include the pitch angle between the right camera 7R and the left camera 7L and the yaw angle between the right camera 7R and the left camera 7L. Good.
- the correction unit 15 corrects the pitch angle between the right camera 7R and the left camera 7L, and acquires the corrected pitch angle.
- the correction unit 15 corrects the yaw angle between the right camera 7R and the left camera 7L, and acquires the corrected yaw angle. As shown in FIG. 2, the correction unit 15 includes a comparison unit 152 and a correction control unit 156.
- the comparison unit 152 compares the depth map generated by the depth map generation unit 12 with the depth map generated based on the estimated plane.
- the depth map generated by the depth map generation unit 12 may be referred to as a first depth map
- the depth map generated based on the estimated plane may be referred to as a second depth map. .
- the second depth map is a depth map in which the estimated plane is viewed from the same viewpoint as the viewpoint of the first depth map, and, for example, a three-dimensional point group existing on the estimated plane is projected onto the second depth map It is possible to generate by doing.
- the comparing unit 152 may perform the comparison by, for example, acquiring (subtracting) the difference between the first depth map and the second depth map. Further, the comparison unit 152 may generate a difference map obtained by subtracting the second depth map from the first depth map for each pixel.
- the comparison unit 152 compares the first depth map with the second depth map to calculate an evaluation value used for correcting the pitch angle and an evaluation value used for correcting the yaw angle. According to such a configuration, it is possible to calculate an evaluation value that reflects the distortion generated in the first depth map due to the error of the pitch angle and the yaw angle.
- an evaluation value used to correct the pitch angle may be referred to as a first evaluation value
- an evaluation value used to correct the yaw angle may be referred to as a second evaluation value.
- the comparison unit 152 may calculate the first evaluation value such that the first evaluation value increases as the difference between the original pitch angle and the pitch angle included in the current parameter increases. Further, the comparison unit 152 may calculate the second evaluation value such that the second evaluation value is larger as the difference between the original yaw angle and the yaw angle included in the current parameter is larger.
- a method of calculating the evaluation value by the comparing unit 152 will be described with reference to FIGS. 3 to 6.
- the comparison unit 152 compares the first depth map and the second depth map for each of the regions divided into four by the horizontal center line and the vertical center line, and the comparison unit 152 compares the right camera 7R and the left camera 7L.
- a first evaluation value to be used for correction of the pitch angle in between is calculated.
- the comparing unit 152 may calculate the sum of the differences between the first depth map and the second depth map for each of the areas, and calculate the first evaluation value based on the sum of the differences.
- FIG. 3 is an explanatory diagram for describing a method of calculating the first evaluation value.
- FIG. 3 shows a first depth map DA, a second depth map DB, and a difference map DD obtained by subtracting the second depth map DB from the first depth map DA.
- the comparison unit 152 calculates the sum of the differences between the first depth map and the second depth map for each of the regions divided into four by the horizontal center line and the vertical center line, as shown in FIG. That is, the sum is calculated in each of the areas DD1 to DD4 of the difference map DD obtained by subtracting the areas DB1 to DB4 of the second depth map DB from the areas DA1 to DA4 of the first depth map DA.
- the sum of differences calculated in each area may be referred to as a difference sum.
- the comparison unit 152 may calculate the absolute value of the difference of the difference sum for each of the upper and lower areas and calculate the first evaluation value based on the absolute value of the difference of the difference sum.
- the comparison unit 152 sets the first evaluation value E 1 to the following equation It may be calculated as (1).
- FIG. 4 is a schematic view schematically showing changes in the depth map generated when the pitch angle is changed.
- the correction control unit 156 described later corrects the pitch angle so as to reduce the first evaluation value while changing (while changing) the pitch angle.
- a trapezoidal change occurs due to the projective transformation included in the parallelization processing performed by the parallelization processing unit 11.
- depth map change DV10 shown in FIG. 4 indicates the amount of change occurring in each area of the depth map obtained by stereo matching with reference to right camera 7R when the pitch angle is changed as shown in FIG. ing.
- the amount of change is negative in the upper left region DV11 and the lower right region DV14, and the amount of change is positive in the upper right region DV12 and the lower left region DV13. That is, the sign (positive or negative) is different for each of the upper and lower areas, and the code is identical for each of the diagonally located areas. Therefore, if there is a shift in the pitch angle, the difference between the pitch angle and the evaluation value is simply canceled out in the area of different signs if a value obtained by simply summing the differences in the entire difference map is used as the evaluation value. There is a risk that the magnitude relationship will not be maintained.
- each pixel shifts according to the change of the pitch angle. Therefore, although only the change in the pitch angle is shown in FIG. 4, it is desirable in practice to move each pixel also in the vertical direction in the parallelization process. For example, a projective transformation may be applied that moves in the vertical direction (so that the vertical center point does not move) so that there is no vertical shift in response to a change in pitch angle.
- FIG. 5 and 6 are schematic views schematically showing changes in the depth map generated when the yaw angle is changed.
- the collimated L image TL2 and the collimated R image TR2 are applied. Is obtained. Further, the depth map change DV20 shown in FIG. 5 indicates the amount of change occurring in each area of the depth map obtained by stereo matching with the right camera 7R as a reference when the yaw angle is changed as shown in FIG. ing.
- the amount of change is positive in the left region DV26, the amount of change is negative in the central region DV27, and the amount of change is positive in the right region DV28.
- the depth map change DV30 shown in FIG. 6 indicates the amount of change that occurs in each area of the depth map obtained by stereo matching based on the right camera 7R when the yaw angle is changed as shown in FIG. ing.
- the amount of change is negative in the left region DV36, the amount of change is positive in the central region DV37, and the amount of change is negative in the right region DV38.
- the change tendency is different in the horizontal direction, and the change tendency is the same in the vertical direction. Therefore, if the first evaluation value is calculated by calculating the absolute value of the difference of the difference sum for each of the left and right areas before correcting the yaw angle, the deviation of the pitch angle and the first evaluation value are calculated. There is a risk that the magnitude relationship between Therefore, it is desirable to calculate the absolute value of the difference of the difference sum for each of the regions located above and below, as in the above-mentioned equation (1), and to calculate the first evaluation value based on the absolute value.
- the comparing unit 152 may calculate a second evaluation value used for correcting the yaw angle, for example, based on the variance of the difference between the first depth map and the second depth map.
- the first depth map and the second depth map are obtained as the difference between the original yaw angle and the yaw angle included in the current parameter is larger.
- the variance of the difference with the depth map increases. Therefore, for example, the comparison unit 152 may calculate the variance of the difference between the first depth map and the second depth map as a whole without dividing the area into the areas, and set the variance as the second evaluation value.
- the calculation method of the 1st evaluation value by the comparison part 152 and the calculation method of the 2nd evaluation value were demonstrated.
- the calculation method of an evaluation value is not limited to said example. The method of calculating other evaluation values will be described later as a modified example.
- the correction control unit 156 performs control regarding correction processing of parameters related to the postures of the right camera 7R and the left camera 7L. For example, the correction control unit 156 corrects the pitch angle using the first evaluation value calculated by the comparison unit 152. Further, the correction control unit 156 corrects the yaw angle using the second evaluation value calculated by the comparison unit 152.
- the comparison unit 152 may calculate the first evaluation value used to correct the pitch angle and the second evaluation value used to correct the yaw angle by different methods.
- the correction of the pitch angle and the correction of the yaw angle may be performed separately.
- the correction control unit 156 may correct the yaw angle after correcting the pitch angle. As described above, since the first evaluation value used to correct the pitch angle is calculated to be able to correct the pitch angle without being affected by the deviation of the yaw angle, after correcting the pitch angle By correcting the yaw angle, each correction can be performed independently.
- the correction control unit 156 specifies, as the corrected pitch angle, a pitch angle such that the first evaluation value calculated by the comparing unit 152 satisfies a predetermined condition (hereinafter also referred to as a condition related to the first evaluation value). May be For example, as described above, when the first evaluation value is calculated such that the first evaluation value is larger as the difference between the original pitch angle and the pitch angle included in the current parameter is larger, as described above, the correction control It is desirable for the unit 156 to search for (specify) a pitch angle with a smaller first evaluation value.
- a predetermined condition hereinafter also referred to as a condition related to the first evaluation value
- the condition regarding the first evaluation value may be the smallest of the first evaluation values calculated based on a plurality of pitch angles, for example.
- the correction control unit 156 provides the parameter including the changed pitch angle to the parallelization processing unit 11 while changing the pitch angle in, for example, a predetermined range, and transmits the first evaluation value to the comparison unit 152. The control for calculating may be repeated. Then, the correction control unit 156 may specify, as the corrected pitch angle, a pitch angle at which the first evaluation value is finally minimized.
- the conditions regarding a 1st evaluation value are not limited to said example, For example, it may be smaller than a predetermined
- the condition relating to the first evaluation value may be a condition according to the calculation method of the first evaluation value. For example, when the first evaluation value is calculated such that the first evaluation value decreases as the difference between the original pitch angle and the pitch angle included in the current parameter increases, the first evaluation value is calculated.
- a condition in which the magnitude of the condition described above is reversed may be used.
- the correction control unit 156 corrects the yaw angle such that the second evaluation value calculated by the comparison unit 152 satisfies a predetermined condition (hereinafter also referred to as a condition related to the second evaluation value). It may be specified as the yaw angle. For example, as described above, when the second evaluation value is calculated such that the second evaluation value is larger as the difference between the original yaw angle and the yaw angle included in the current parameter is larger, as described above, the correction control It is desirable for the part 156 to search for (specify) the yaw angle at which the second evaluation value is smaller.
- the condition regarding the second evaluation value may be the smallest of the second evaluation values calculated based on a plurality of yaw angles, for example.
- the correction control unit 156 provides the parameter including the changed yaw angle to the parallelization processing unit 11 while changing the yaw angle in a predetermined range, for example, and the second evaluation value to the comparison unit 152 The control for calculating may be repeated. Then, the correction control unit 156 may specify, as the corrected yaw angle, the yaw angle at which the second evaluation value is finally minimized.
- the conditions regarding a 2nd evaluation value are not limited to said example, For example, it may be smaller than a predetermined
- the condition regarding the second evaluation value may be a condition according to the method of calculating the second evaluation value. For example, when the second evaluation value is calculated such that the second evaluation value is smaller as the difference between the original yaw angle and the yaw angle included in the current parameter is larger, the second evaluation value is calculated.
- a condition in which the magnitude of the condition described above is reversed may be used.
- the correction control unit 156 may determine whether to correct the pitch angle and the yaw angle described above. For example, the correction control unit 156 provides the display control unit 17 with the difference map generated by the comparison unit 152 and causes the display unit 40 to display the difference map, and receives the input of the user who confirmed the display via the operation unit 30 Such determination may be made according to the user's input. Alternatively, the correction control unit 156 may automatically perform such determination based on the difference map generated by the comparison unit 152.
- the display control unit 17 controls the display unit 40.
- the display control unit 17 may display the difference map provided by the correction unit 15, or may display the first depth map generated by the depth map generation unit 12. Note that a display example of the difference map will be described later with reference to FIG.
- the projector control unit 19 controls the projector 8 connected via the interface unit 60 to project an image on the top surface of the table 9.
- the image projected by the projector control unit 19 is desirably an image suitable for stereo matching, but is not limited to a known image.
- the processing performed by the parallelization processing unit 11, the depth map generation unit 12, the plane estimation unit 13, and the correction unit 15 described above can be performed without using information on an image to be projected by the projector control unit 19.
- the operation unit 30 receives user input.
- the operation unit 30 may receive, for example, the user's input regarding whether to correct the pitch angle and the yaw angle described above.
- the operation unit 30 may be realized by, for example, a mouse, a keyboard, a touch panel, a button, a switch, a lever, or a dial.
- the display unit 40 is a display or the like displayed according to the control of the display control unit 17.
- the display unit 40 displays, for example, the difference map as described above.
- the storage unit 50 stores programs and parameters for the control unit 10 to execute each function.
- the storage unit 50 may store, for example, a parameter calculated by calibration performed in advance, a parameter at the time of designing the stereo camera 7, and the like.
- the interface unit 60 mediates communication with other devices by wire or wirelessly.
- the interface unit 60 is connected to the stereo camera 7 shown in FIG. 1 and receives from the stereo camera 7 an R image acquired by the right camera 7R and an L image acquired by the left camera 7L.
- the interface unit 60 is connected to the projector 8 shown in FIG. 1 and transmits an image to be projected by the projector 8 to the projector 8.
- composition of information processor 1 is not limited to the example concerned,
- the function of the projector control unit 19 exists in the other apparatus connected to the projector 8 May be
- FIG. 7 is a flowchart showing an operation example of the information processing apparatus 1 according to the present embodiment. Note that a series of processes described below may be started based on the user's input via the operation unit 30, or may be started simultaneously with the activation of the information processing apparatus 1, or at predetermined intervals. It may be started.
- the stereo camera 7 acquires a captured image (R image and L image) by capturing, and the interface unit 60 receives the captured image from the stereo camera 7 (S 102).
- the parallelization processing unit 11 reduces the vertical displacement between the R image and the L image based on the parameters stored in advance for the R image and the L image acquired in step S102.
- a parallelization process is performed to obtain a parallelization R image and a parallelization L image (S104).
- the depth map generation unit 12 generates a first depth map by stereo matching using the parallelization R image and the parallelization L image obtained in step S104 (S106).
- the plane estimation unit 13 estimates a plane based on the first depth map generated in step S106 (S108).
- the comparison unit 152 of the correction unit 15 generates a second depth map by projecting a three-dimensional point group existing on the plane estimated in step S108 (S110). Further, the comparison unit 152 subtracts the second depth map generated in step S110 from the first depth map generated in step S106 for each pixel to generate a difference map (S112).
- the display control unit 17 causes the display unit 40 to display the difference map or the first depth map generated in step S112. (S134).
- S134 a display example in step S134 will be described.
- FIG. 8 is a view showing a display example in step S134.
- the display control unit 17 displays on the display unit 40 a difference map expressing visual features such as color, luminance, and gradation according to the value (difference value) of each pixel.
- the difference value is expressed by the density of dots as an example, and the larger the difference value is, the darker, and the larger the negative value, the thinner.
- the display control unit 17 may draw a three-dimensional point group obtained from the first depth map in a three-dimensional manner and cause the display unit 40 to display the three-dimensional point group as shown in display example V12 shown in FIG.
- the user can confirm whether the first depth map generated by the current parameters is distorted.
- step S134 makes an input regarding whether to make correction via the operation unit 30, and the correction control unit 156 determines whether to make correction based on the user's input (S136) ).
- the correction is not performed (NO in S136)
- the process ends.
- FIG. 9 is a flowchart showing the detailed operation of the pitch angle correction process.
- the correction control unit 156 of the correction unit 15 changes the pitch angle (S142).
- the correction control unit 156 may change only the pitch angle among the current parameters (parameters stored in advance in the storage unit 50).
- the correction control unit 156 in addition to the change of the pitch angle, the correction control unit 156 relates to the position of the viewpoint according to the changed pitch angle so that the vertical shift is eliminated (the vertical center point is not moved). Parameters may be changed vertically.
- the parallelization processing unit 11 applies parallelization processing to the R image and the L image acquired in step S102 of FIG. 7 based on the parameters including the pitch angle after being changed in step S142.
- a collimated R image and a collimated L image are obtained (S 144).
- the depth map generation unit 12 generates a first depth map by stereo matching using the parallelization R image and the parallelization L image obtained in step S 144 (S 146).
- the plane estimation unit 13 estimates a plane based on the first depth map generated in step S146 (S148).
- the comparison unit 152 of the correction unit 15 generates a second depth map by projecting a three-dimensional point group existing on the plane estimated in step S148 (S150). Furthermore, the comparison unit 152 calculates the difference between the second depth map generated in step S150 from the first depth map generated in step S146 for each of the regions divided into four by the horizontal center line and the vertical center line. The sum (difference sum) is calculated (S154). Further, the comparison unit 152 calculates an evaluation value (first evaluation value) as in the above-mentioned equation (1) based on the sum of differences calculated for each area (S156).
- the correction control unit 156 compares the evaluation value calculated in step S156 with the minimum evaluation value (S158).
- the minimum evaluation value may be set to a very large value, or the evaluation value calculated when step S156 is first executed is the minimum evaluation value. It may be set as The minimum evaluation value may be temporarily stored in, for example, the storage unit 50.
- the correction control unit 156 updates the minimum evaluation value with the evaluation value calculated in step S156 (S160). For example, when the minimum evaluation value is stored in the storage unit 50 as described above, in step S160, the correction control unit 156 causes the storage unit 50 to store the evaluation value calculated in step S156 as the minimum evaluation value. In step S160, the correction control unit 156 may store the pitch angle changed in step S142 in the storage unit 50 as a pitch angle corresponding to the minimum evaluation value.
- step S162 the correction control unit 156 controls so as to repeat the processes of steps S142 to S160 until it is determined that the change of the pitch angle is sufficiently repeated.
- the correction control unit 156 may determine that the change of the pitch angle has been sufficiently repeated, for example, when the processes of steps S142 to S160 are repeated a predetermined number of times. If it is determined that the change of the pitch angle is sufficiently repeated (YES in S162), the process proceeds to step S164.
- step S164 the correction control unit 156 specifies the pitch angle corresponding to the minimum evaluation value as the pitch angle after correction, and acquires it from, for example, the storage unit 50.
- step S140 The pitch angle correction process of step S140 has been described above. Returning to FIG. 7, the description will be continued. Following the pitch angle correction process of step S140, a yaw angle correction process is performed (S170). Here, the yaw angle correction process of step S170 will be described in detail with reference to FIG. FIG. 10 is a flowchart showing the detailed operation of the yaw angle correction process.
- the correction control unit 156 of the correction unit 15 changes the yaw angle (S172).
- the correction control unit 156 may change, for example, only the yaw angle among the current parameters (parameters after the pitch angle correction process in step S140).
- the parallelization processing unit 11 applies parallelization processing to the R image and L image acquired in step S102 of FIG. 7 based on the parameters including the yaw angle after being changed in step S172.
- a collimated R image and a collimated L image are obtained (S 174).
- the depth map generation unit 12 generates a first depth map by stereo matching using the parallelization R image and the parallelization L image obtained in step S 144 (S 176).
- the plane estimation unit 13 estimates a plane based on the first depth map generated in step S146 (S178).
- the comparison unit 152 of the correction unit 15 generates a second depth map by projecting a three-dimensional point group existing on the plane estimated in step S148 (S180). Further, the comparison unit 152 calculates the variance of the difference of the second depth map generated in step S180 from the first depth map generated in step S176 as an evaluation value (second evaluation value) (S186) .
- the correction control unit 156 compares the evaluation value calculated in step S186 with the minimum evaluation value (S188).
- the minimum evaluation value may be set to a very large value, or the evaluation value calculated when step S186 is first executed is the minimum evaluation value. It may be set as The minimum evaluation value may be temporarily stored in, for example, the storage unit 50.
- the correction control unit 156 updates the minimum evaluation value with the evaluation value calculated in step S186 (S190). For example, when the minimum evaluation value is stored in the storage unit 50 as described above, in step S190, the correction control unit 156 causes the storage unit 50 to store the evaluation value calculated in step S186 as the minimum evaluation value. In step S190, the correction control unit 156 may store the yaw angle changed in step S172 in the storage unit 50 as a yaw angle corresponding to the minimum evaluation value.
- step S192 the correction control unit 156 performs control so as to repeat the processes of steps S172 to S190 until it is determined that the change of the yaw angle has been sufficiently repeated.
- the correction control unit 156 may determine that the change in the yaw angle has been sufficiently repeated, for example, when the processes in steps S172 to S190 are repeated a predetermined number of times. If it is determined that the change of the yaw angle is sufficiently repeated (YES in S192), the process proceeds to step S194.
- step S194 the correction control unit 156 specifies the yaw angle corresponding to the minimum evaluation value as the corrected yaw angle, and acquires it from, for example, the storage unit 50.
- step S198 the display control unit 17 displays the corrected difference map or the corrected first depth map (S198).
- the difference map or the first depth map may be obtained, for example, by performing the same process as steps S102 to S112 again using the parameter after correction, or during the yaw angle correction process (S170). It may be obtained.
- FIG. 11 is a view showing a display example in step S198.
- the display example V13 shown in FIG. 11 is a visual feature such as color, brightness, density according to the value (difference value) of each pixel (shade in the example of FIG. 11) Is a display example of the difference map represented by.
- the three-dimensional point group obtained from the first depth map generated using the parameters after correction is three-dimensionally drawn Is displayed on the display unit 40.
- the user can confirm that the parameters have been corrected.
- the first embodiment of the present disclosure has been described above. According to the present embodiment, based on the comparison between the first depth map generated by stereo matching and the second depth map obtained by projecting the plane estimated based on the first depth map, The correction of the parameters related to the pitch angle between the viewpoints and the yaw angle is performed. As described above, although it is difficult to correct the pitch angle and the yaw angle based on the matching error of stereo matching, according to the present embodiment, the pitch angle and the yaw angle are focused on distortion occurring in the depth map. It is possible to correct
- FIG. 12 is an explanatory diagram for describing an overview of the second embodiment of the present disclosure.
- the information processing system according to the second embodiment of the present disclosure includes, as shown in FIG. 12, a stereo camera 7, a projector 8, and an information processing device not shown in FIG. 12.
- the configurations of the stereo camera 7 and the projector 8 shown in FIG. 12 are the same as the configurations of the stereo camera 7 and the projector 8 shown in FIG. 1, and thus detailed description thereof will be omitted.
- objects B21 to B24 exist on the top surface of the table 9.
- the objects B21 to B24 are included in the projection area R20 of the projector 8, and are also included in the overlapping portion (not shown) of the imaging ranges of the right camera 7R and the left camera 7L.
- FIG. 13 is a block diagram showing a configuration example of the information processing device 2 according to the present embodiment.
- the information processing apparatus 2 according to the present embodiment includes a control unit 20, an operation unit 30, a display unit 40, a storage unit 50, and an interface unit 60.
- the configurations of the operation unit 30, the display unit 40, the storage unit 50, and the interface unit 60 illustrated in FIG. 13 are the same as those of the operation unit 30, the display unit 40, the storage unit 50, and the interface unit 60 described with reference to FIG. Since the configuration is substantially the same as that of the second embodiment, the detailed description is omitted here.
- the control unit 20 illustrated in FIG. 13 controls each component of the information processing device 2.
- the control unit 20 also functions as a parallelization processing unit 11, a depth map generation unit 12, a plane estimation unit 13, a correction unit 25, a display control unit 27, and a projector control unit 19, as shown in FIG.
- the configurations of the parallelization processing unit 11, the depth map generation unit 12, the plane estimation unit 13, and the projector control unit 19 illustrated in FIG. 13 are the same as the parallelization processing unit 11 described with reference to FIG.
- the configuration is substantially the same as the configuration of the plane estimation unit 13 and the projector control unit 19, and thus the detailed description is omitted here.
- the correction unit 25 according to the present embodiment compares the depth map generated by the depth map generation unit 12 with the plane estimated by the plane estimation unit 13. Based on the parameters of the attitude of the right camera 7R and the left camera 7L are corrected.
- the correction unit 25 according to the present embodiment sets the processing target area so as not to be affected by the object, and performs the processing related to the correction in the processing target area.
- the correction unit 25 according to the present embodiment is different from the correction unit 15 according to the first embodiment. In the following, differences between the correction unit 25 according to the present embodiment and the correction unit 15 according to the first embodiment will be mainly described, and the description of the same parts will be appropriately omitted.
- the correction unit 25 includes a comparison unit 252, a processing target area setting unit 254, and a correction control unit 256.
- the comparison unit 252 compares the first depth map generated by the depth map generation unit 12 with the second depth map generated based on the estimated plane. Make a comparison.
- the comparison unit 252 provides, to the processing target area setting unit 254, a difference map generated by subtracting the second depth map from the first depth map for each pixel. Furthermore, after the processing target area setting unit 254 sets the processing target area, the comparison unit 252 compares the first depth map in the processing target area with the estimated plane.
- the comparison unit 252 subtracts the second depth map from the first depth map for each pixel in the processing target area to generate a difference map. And may be provided to the correction control unit 256.
- the comparison unit 252 compares the first depth map and the second depth map in the processing target area, and thereby the first evaluation value used for correction of the pitch angle and the correction of the yaw angle used for correction of the yaw angle.
- An evaluation value of 2 may be calculated.
- the calculation method of the first evaluation value and the second evaluation value by the comparison unit 252 is the first embodiment except that only the processing target area set by the processing target area setting unit 254 is a target of calculation. It may be the same as the method of calculating the first evaluation value and the second evaluation value described in the embodiment.
- the comparing unit 252 can calculate the first evaluation value and the second evaluation value without being influenced by the objects arranged on the top surface of the table 9.
- the processing target area setting unit 254 sets a processing target area based on the first depth map and the second depth map.
- the processing target area setting unit 254 provides the information on the set processing target area to the comparing unit 252 and the correction control unit 256.
- the processing target area setting unit 254 specifies an object area in which the object is present, and sets the processing target area based on the object area.
- the processing target area setting unit 254 may specify an area where the absolute value of the difference between the first depth map and the second depth map is larger than a predetermined threshold as the object area.
- the processing target area setting unit 254 may set the processing target area such that the processing target area is vertically symmetrical.
- the processing target area setting unit 254 may generate a mask image excluding the above-described object area, and a reverse mask image obtained by vertically inverting the mask image. Furthermore, the processing target area setting unit 254 may generate a vertically symmetrical symmetrical mask image obtained by adding the mask image and the reverse mask image, and set the processing target area based on the symmetrical mask image. A specific example of the process target area setting process will be described later with reference to FIG.
- the correction control unit 256 performs control regarding correction processing of parameters related to the postures of the right camera 7R and the left camera 7L.
- the correction control unit 256 according to the present embodiment is based on the first evaluation value and the second evaluation value calculated by the comparison unit 252 based on the processing target region set by the processing target region setting unit 254. This differs from the correction control unit 156 described above in that control regarding correction processing is performed. With such a configuration, it is possible to perform correction with higher accuracy without being affected by unnecessary objects.
- the correction control unit 256 may determine whether or not the correction process can be performed based on the processing target area set by the processing target area setting unit 254. For example, if the processing target area does not sufficiently exist, there is a possibility that the correction processing can not be normally performed. Therefore, the correction control unit 256 may determine that the correction process can not be performed, for example, when the process target area does not sufficiently exist.
- the insufficient presence of the processing target area may be, for example, that the area of the processing target area is smaller than a predetermined threshold.
- the error is larger as it is closer to the four corners, so weighting is performed such that the weight is larger as it is closer to the four corners Whether or not the processing target area is sufficiently present may be determined based on the evaluation value obtained by evaluating the target area.
- the display control unit 27 controls the display of the display unit 40 in the same manner as the display control unit 17 according to the first embodiment.
- the display control unit 27 according to the present embodiment is different from the display control unit 17 in that a difference map in which the processing target area is set or a first depth map in which the processing target area is set is displayed.
- the display control unit 27 according to the present embodiment when it is determined by the correction control unit 256 that the correction processing can not be performed because the processing target area does not sufficiently exist, the user does not need extra objects for the user. A screen may be displayed to notify removal.
- FIG. 14 is a flowchart showing an operation example of the information processing apparatus 2 according to the present embodiment. Note that a series of processes described below may be started based on the user's input through the operation unit 30, or may be started simultaneously with the activation of the information processing device 2, or at predetermined intervals. It may be started.
- steps S202 to S212 shown in FIG. 14 are the same as the processes of steps S102 to S112 described with reference to FIG. 7, and thus the description thereof is omitted here.
- FIG. 15 is a flowchart showing a detailed operation of setting processing of the processing target area.
- FIG. 16 is an explanatory diagram of a specific example of setting processing of the processing target area.
- the operation of the process of setting the processing target area in step S220 will be described along the flowchart of FIG.
- the excluded (masked) region is shown as a black region, but white and black may be reversed, or other colors may be used.
- the processing target area setting unit 254 specifies an object area based on the difference map generated in step S212, and generates a mask image M12 which excludes the object area (S222). Subsequently, the processing target area setting unit 254 generates a reverse mask image M14 obtained by inverting the mask image M12 generated in step S222 in the vertical direction (S224).
- the processing target area setting unit 254 adds the mask image M12 generated in step S222 and the inverted mask image M14 generated in step S224 to generate a symmetric mask image M16 (S226).
- the processing target area setting unit 254 sets a black area in at least one of the mask image M12 and the inverted mask image M14 to a black area also in the symmetric mask image M16. To generate a symmetric mask image M16.
- the processing target area setting unit 254 sets a processing target area based on the symmetric mask image M16 generated in step S226 (S228). For example, in step S228, the processing target area setting unit 254 sets a white area of the symmetric mask image M16 as a processing target area.
- step S220 The process of setting the processing target area in step S220 has been described above. Returning to FIG. 14, the description will be continued.
- the correction control unit 256 of the correction unit 25 determines whether or not the processing target area is sufficiently present (S230).
- the display control unit 27 displays a screen notifying the user to remove an unnecessary object, and the user places extra on the top surface of the table 9. Remove the object (S232). Then, the process returns to step S202.
- the display control unit 27 displays the difference map in which the processing target area is set or the first depth map in which the processing target area is set. Display on. (S234).
- a display example in step S234 will be described with reference to FIG.
- FIG. 17 is a diagram showing a display example in step S234.
- the display control unit 27 displays on the display unit 40 a difference map which is expressed by a color, a luminance, a visual feature such as gradation according to the value (difference value) of each pixel. It may be displayed.
- the difference value is expressed by the density of dots, and the larger the difference value, the darker, and the larger the negative value, the thinner.
- the difference map in which the processing target area is set is displayed, and the area which is not the processing target area is indicated by hatching.
- an area that is not the processing target area may be expressed by another visual feature such as color, luminance, or gradation.
- the display control unit 27 may draw a three-dimensional point group obtained from the first depth map in a three-dimensional manner and cause the display unit 40 to display the three-dimensional point group as illustrated in display example V22 illustrated in FIG. Further, in the display example V22 shown in FIG. 17, the first depth map in which the processing target area is set is displayed, and the area which is not the processing target area is indicated by hatching.
- the present invention is not limited to such an example, and for example, an area which is not the processing target area may be cut out and displayed, or may be displayed in a color different from the processing target area.
- the user can confirm whether the first depth map generated by the current parameters is distorted or not and confirm the processing target area. Is possible.
- step S234 makes an input regarding whether or not to make correction via the operation unit 30, and the correction control unit 256 determines whether to make the correction based on the user's input (S236) ).
- the correction is not performed (NO in S236), the process ends.
- FIG. 18 is a flowchart showing the detailed operation of the pitch angle correction process.
- steps S242 to S250 shown in FIG. 18 are the same as the processes of steps S142 to S150 described with reference to FIG. 9, and thus the description thereof is omitted here.
- step S252 the processing target area setting unit 254 sets a processing target area.
- the process of step S252 is the process of step S220 except that the difference map generated based on the first depth map generated in step S246 and the second depth map generated in step S250 is used. Since it is the same, detailed description here is omitted.
- the comparing unit 252 targets the processing target area set in step S252, and generates the first depth generated in step S246 for each area divided into four by the horizontal center line and the vertical center line. From the maps, the sum (difference sum) of the differences of the second depth map generated in step S250 is calculated.
- steps S256 to S264 are similar to the processes of steps S156 to S164 described with reference to FIG. 9, and thus the description thereof is omitted here.
- step S240 The pitch angle correction process of step S240 has been described above. Returning to FIG. 14, the description will be continued. Following the pitch angle correction process of step S240, a yaw angle correction process is performed (S270). Here, the yaw angle correction process of step S270 will be described in detail with reference to FIG. FIG. 19 is a flowchart showing the detailed operation of the yaw angle correction process.
- steps S272 to S280 shown in FIG. 19 are similar to the processes of steps S172 to S180 described with reference to FIG. 10, and thus the description thereof is omitted here.
- step S 282 the processing target area setting unit 254 sets a processing target area.
- the process of step S282 is the process of step S220 except that the difference map generated based on the first depth map generated in step S276 and the second depth map generated in step S270 is used. Since it is the same, detailed description here is omitted.
- the comparing unit 252 sets the processing target area set in step S282 as a target, and sums the differences of the second depth maps generated in step S280 from the first depth map generated in step S276. Is calculated as an evaluation value (second evaluation value).
- steps S288 to S294 are similar to the processes of steps S188 to S194 described with reference to FIG. 10, and thus the description thereof is omitted here.
- step S270 The pitch angle correction process in step S270 has been described above. Returning to FIG. 14, the description will be continued.
- the display control unit 27 displays the corrected difference map in which the processing target area is set, or the corrected first depth map in which the processing target area is set (S 299).
- a plane for example, the top surface, a floor, a wall, etc. of a table
- the plane includes features suitable for stereo matching, such as characteristic points or textures or feature points.
- the projection of the image by the projector may not be performed.
- the present technology is not limited to such an example.
- the present technology is also applicable to a plurality of captured images acquired by a plurality of imaging devices arranged in the vertical direction.
- the search direction of the corresponding point in stereo matching may be vertical.
- the method of calculating the evaluation value used to correct the pitch angle and the method of calculating the evaluation value used to correct the yaw angle may be switched as appropriate.
- the method of correcting the pitch angle and the yaw angle The correction method of may be replaced as appropriate.
- the search direction of the corresponding point in stereo matching may be defined as the horizontal direction.
- the plurality of captured images may not be images simultaneously acquired by a plurality of imaging devices, but images acquired at different times by a moving imaging device.
- the present technology can be applied to a plurality of captured images acquired at different times by moving imaging devices.
- the attitude of the imaging device at the time when the moving imaging device acquires each captured image (the imaging is performed) becomes the attitude of the viewpoint that is the correction target, and the pitch angle or yaw angle between the time May be corrected.
- the first evaluation value or the second evaluation value may be calculated by summing the absolute values of the differences between the first depth map calculated for each pixel and the second depth map. . Even with such a calculation method, it is possible to calculate an evaluation value which is not affected by the cancellation due to the areas having different signs as described with reference to FIGS. 4 to 6.
- FIG. 20 is a block diagram illustrating an example of a hardware configuration of an information processing apparatus according to an embodiment of the present disclosure.
- the information processing apparatus 900 shown in FIG. 20 can realize, for example, the information processing apparatus 1 and the information processing apparatus 2 shown in FIGS. 2 and 13 respectively.
- Information processing by the information processing device 1 and the information processing device 2 according to the embodiment of the present disclosure is realized by cooperation of software and hardware described below.
- the information processing apparatus 900 includes a central processing unit (CPU) 901, a read only memory (ROM) 902, a random access memory (RAM) 903 and a host bus 904a.
- the information processing apparatus 900 further includes a bridge 904, an external bus 904b, an interface 905, an input device 906, an output device 907, a storage device 908, a drive 909, a connection port 911, a communication device 913, and a sensor 915.
- the information processing apparatus 900 may have a processing circuit such as a DSP or an ASIC instead of or in addition to the CPU 901.
- the CPU 901 functions as an arithmetic processing unit and a control unit, and controls the overall operation in the information processing apparatus 900 according to various programs. Also, the CPU 901 may be a microprocessor.
- the ROM 902 stores programs used by the CPU 901, calculation parameters, and the like.
- the RAM 903 temporarily stores programs used in the execution of the CPU 901, parameters and the like that appropriately change in the execution.
- the CPU 901 can form, for example, the control unit 10 and the control unit 20.
- the CPU 901, the ROM 902, and the RAM 903 are mutually connected by a host bus 904a including a CPU bus and the like.
- the host bus 904 a is connected to an external bus 904 b such as a peripheral component interconnect / interface (PCI) bus via the bridge 904.
- PCI peripheral component interconnect / interface
- the host bus 904a, the bridge 904, and the external bus 904b do not necessarily need to be separately configured, and these functions may be implemented on one bus.
- the input device 906 is realized by, for example, a device such as a mouse, a keyboard, a touch panel, a button, a microphone, a switch, and a lever to which information is input by the user. Further, the input device 906 may be, for example, a remote control device using infrared rays or other radio waves, or may be an external connection device such as a mobile phone or PDA corresponding to the operation of the information processing apparatus 900. . Furthermore, the input device 906 may include, for example, an input control circuit that generates an input signal based on the information input by the user using the above input unit, and outputs the generated input signal to the CPU 901. The user of the information processing apparatus 900 can input various data to the information processing apparatus 900 or instruct processing operations by operating the input device 906.
- the output device 907 is formed of a device capable of visually or aurally notifying the user of the acquired information.
- Such devices include display devices such as CRT display devices, liquid crystal display devices, plasma display devices, EL display devices and lamps, audio output devices such as speakers and headphones, and printer devices.
- the output device 907 outputs, for example, results obtained by various processes performed by the information processing apparatus 900.
- the display device visually displays the results obtained by the various processes performed by the information processing apparatus 900 in various formats such as text, images, tables, graphs, and the like.
- the audio output device converts an audio signal composed of reproduced audio data, acoustic data and the like into an analog signal and aurally outputs it.
- the output device 907 may form, for example, the display unit 40.
- the storage device 908 is a device for data storage formed as an example of a storage unit of the information processing device 900.
- the storage device 908 is realized by, for example, a magnetic storage unit device such as an HDD, a semiconductor storage device, an optical storage device, a magneto-optical storage device, or the like.
- the storage device 908 may include a storage medium, a recording device that records data in the storage medium, a reading device that reads data from the storage medium, and a deletion device that deletes data recorded in the storage medium.
- the storage device 908 stores programs executed by the CPU 901, various data, various data acquired from the outside, and the like.
- the storage device 908 may form, for example, the storage unit 50.
- the drive 909 is a reader / writer for a storage medium, and is built in or externally attached to the information processing apparatus 900.
- the drive 909 reads out information recorded in a removable storage medium such as a mounted magnetic disk, optical disk, magneto-optical disk, or semiconductor memory, and outputs the information to the RAM 903.
- the drive 909 can also write information to the removable storage medium.
- connection port 911 is an interface connected to an external device, and is a connection port to an external device capable of data transmission by USB (Universal Serial Bus), for example.
- USB Universal Serial Bus
- the communication device 913 is, for example, a communication interface formed of a communication device or the like for connecting to the network 920.
- the communication device 913 is, for example, a communication card for wired or wireless Local Area Network (LAN), Long Term Evolution (LTE), Bluetooth (registered trademark), or WUSB (Wireless USB).
- the communication device 913 may be a router for optical communication, a router for asymmetric digital subscriber line (ADSL), a modem for various communications, or the like.
- the communication device 913 can transmit and receive signals and the like according to a predetermined protocol such as TCP / IP, for example, with the Internet or another communication device.
- the sensor 915 is, for example, various sensors such as an acceleration sensor, a gyro sensor, a geomagnetic sensor, an optical sensor, a sound sensor, a distance measuring sensor, and a force sensor.
- the sensor 915 acquires information on the state of the information processing apparatus 900, such as the attitude and movement speed of the information processing apparatus 900, and information on the surrounding environment of the information processing apparatus 900, such as brightness and noise around the information processing apparatus 900.
- sensor 915 may include a GPS sensor that receives GPS signals and measures latitude, longitude and altitude of the device.
- the network 920 is a wired or wireless transmission path of information transmitted from a device connected to the network 920.
- the network 920 may include the Internet, a public network such as a telephone network, a satellite communication network, various LANs (Local Area Networks) including Ethernet (registered trademark), a WAN (Wide Area Network), or the like.
- the network 920 may include a leased line network such as an Internet Protocol-Virtual Private Network (IP-VPN).
- IP-VPN Internet Protocol-Virtual Private Network
- each component described above may be realized using a general-purpose member, or may be realized by hardware specialized for the function of each component. Therefore, it is possible to change the hardware configuration to be used as appropriate according to the level of technology to which the embodiment of the present disclosure is implemented.
- a computer program for realizing each function of the information processing apparatus 900 according to the embodiment of the present disclosure as described above can be created and implemented on a PC 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.
- steps in the above embodiment do not necessarily have to be processed chronologically in the order described as the flowchart diagram.
- each step in the process of the above embodiment may be processed in an order different from the order described as the flowchart diagram, or may be processed in parallel.
- a plane estimation unit that estimates a plane based on a first depth map obtained based on a plurality of captured images acquired by imaging at a plurality of viewpoints;
- a correction unit configured to correct parameters related to the orientations of the plurality of viewpoints based on comparison of the first depth map and the plane;
- An information processing apparatus comprising: (2) The information processing apparatus according to (1), wherein the correction unit compares the first depth map with a second depth map generated based on the plane.
- the parameter includes a pitch angle between the plurality of viewpoints or a yaw angle.
- the correction unit corrects the pitch angle using a first evaluation value calculated based on a comparison between the first depth map and the second depth map, and acquires a corrected pitch angle.
- the correction unit calculates the first evaluation value by comparing the first depth map and the second depth map for each of the regions divided into four by the horizontal center line and the vertical center line.
- the correction unit calculates a sum of differences between the first depth map and the second depth map for each of the areas, and calculates the first evaluation value based on the sum of the differences.
- the information processing apparatus according to 5).
- the first evaluation value is based on an absolute value of a difference of the sum of the differences calculated for each of upper and lower areas among four areas divided into four by the horizontal center line and the vertical center line.
- the information processing apparatus according to (6) which is calculated.
- the correction unit corrects the yaw angle using a second evaluation value calculated based on a comparison between the first depth map and the second depth map, and acquires a corrected yaw angle.
- the information processing apparatus according to any one of (3) to (8).
- the information processing apparatus calculates the second evaluation value based on a variance of a difference between the first depth map and the second depth map.
- the correction unit specifies a yaw angle that satisfies the predetermined condition by the second evaluation value as the corrected yaw angle.
- the first depth map is generated by stereo matching based on the plurality of captured images, The information processing apparatus according to any one of (4) to (11), wherein a search direction of the corresponding point in the stereo matching includes a horizontal direction.
- the correction unit corrects the yaw angle after correcting the pitch angle.
- the information processing apparatus according to any one of (2) to (13), wherein the second depth map is generated by projecting a three-dimensional point group on the plane.
- the correction unit sets a processing target area based on the first depth map and the second depth map, and the correction unit compares the first depth map in the processing target area with the plane.
- the information processing apparatus according to any one of (2) to (14), which corrects a parameter.
- the correction unit may set the processing target area based on an area where an absolute value of a difference between the first depth map and the second depth map is larger than a predetermined threshold value. Information processing equipment.
- the information processing apparatus according to (16), wherein the processing target area is vertically symmetrical.
- Processor is Estimating a plane based on a first depth map obtained based on a plurality of captured images obtained by imaging at a plurality of viewpoints; Correcting parameters related to the orientations of the plurality of viewpoints based on a comparison of the first depth map and the plane; Information processing methods, including: (19) On the computer A function of estimating a plane based on a first depth map obtained based on a plurality of captured images acquired by imaging at a plurality of viewpoints; A function of correcting parameters related to the orientations of the plurality of viewpoints based on a comparison between the first depth map and the plane; A program to make you realize.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Image Analysis (AREA)
Abstract
【課題】複数の視点の姿勢に関するパラメータの精度をより高精度に得ることが可能な情報処理装置、情報処理方法、及びプログラムを提供する。 【解決手段】複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する平面推定部と、前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する補正部と、を備える情報処理装置。
Description
本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
複数の異なる視点での撮像により取得された複数の撮像画像から、距離情報を取得する手法が知られている。このような手法では、各視点での撮像を行った撮像装置の特性に関するパラメータや、視点の位置や姿勢に関するパラメータを用いることが行われている。このようなパラメータを推定することは、カメラキャリブレーション、あるいは単にキャリブレーションと呼ばれ、例えば距離情報の取得に先立って事前に行われている(例えば、下記特許文献1参照)。
上記のような技術においては、パラメータの精度が、最終的に得られる距離情報の精度に影響を与えるため、パラメータの精度、特に撮像が行われる視点の姿勢に関するパラメータの精度をより高精度に得ることが求められていた。
本開示によれば、複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する平面推定部と、前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する補正部と、を備える情報処理装置。
また、本開示によれば、プロセッサが、複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定することと、前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正することと、を含む、情報処理方法が提供される。
また、本開示によれば、コンピュータに、複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する機能と、前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する機能と、を実現させるための、プログラムが提供される。
以上説明したように本開示によれば、撮像が行われる視点の姿勢に関するパラメータの精度をより高精度に得ることが可能となる。
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
<<1.背景>>
<<2.実施形態>>
<2-1.第1の実施形態>
<2-2.第2の実施形態>
<<3.変形例>>
<3-1.変形例1>
<3-2.変形例2>
<3-3.変形例3>
<<4.ハードウェア構成例>>
<<5.むすび>>
<<1.背景>>
<<2.実施形態>>
<2-1.第1の実施形態>
<2-2.第2の実施形態>
<<3.変形例>>
<3-1.変形例1>
<3-2.変形例2>
<3-3.変形例3>
<<4.ハードウェア構成例>>
<<5.むすび>>
<<1.背景>>
近年、複数の異なる視点(以下、撮像に係る視点とも呼ぶ)での撮像により取得された複数の撮像画像から、距離情報を示すデプスマップを生成することが行われている。デプスマップを用いることで、実空間の認識をより高精度に行うことが可能であり、例えば、ユーザによるジェスチャ操作を認識するためにデプスマップが用いられている。
近年、複数の異なる視点(以下、撮像に係る視点とも呼ぶ)での撮像により取得された複数の撮像画像から、距離情報を示すデプスマップを生成することが行われている。デプスマップを用いることで、実空間の認識をより高精度に行うことが可能であり、例えば、ユーザによるジェスチャ操作を認識するためにデプスマップが用いられている。
なお、以下では、主に複数の撮像画像が複数の撮像装置により略同時に取得される場合を例に説明するが、本技術は係る例に限定されるものではない。複数の撮像画像は、例えばそれぞれが異なる撮像装置により取得されてもよいし、移動する1つの撮像装置により経時的に取得されてもよい。また、以下では、主に2つの撮像装置により2つの撮像画像が取得され、当該2つの撮像画像からデプスマップを生成する例を主に説明するが、本技術は係る例に限定されず、3つ以上の撮像画像からデプスマップが生成されてもよい。
デプスマップを生成するための手法の一つとして、複数の撮像画像の間で対応する対応点を探索してマッチングするステレオマッチングがある。ステレオマッチングでは、効率的に対応点を探索するため、対応点の探索方向を一方向に限定する場合がある。例えば、撮像に係る視点の配置方向が一方向に限定される場合、対応点の探索方向を当該配置方向に限定することで、効率的な対応点の探索が実現される。ステレオマッチングを用いた装置やシステムでは、複数の撮像装置が水平方向に配置され、水平方向に対応点の探索が行われていることが多い。対応点の探索方向が水平方向に限定される場合、撮像画像の間で垂直方向のズレが存在しない状態であることが望ましい。
しかし、撮像装置を高い精度で配置することは困難であり、また時間が経過することにより配置にズレが生じる場合もある。そして、撮像に係る視点の間で垂直方向、奥行き方向の位置ズレや、姿勢のズレが発生していた場合には、撮像画像の間において垂直方向のズレが発生し得る。また、複数の撮像画像が、それぞれ異なる撮像装置で取得される場合には、各撮像装置の特性の差も影響して、撮像画像の間において垂直方向のズレが発生し得る。
そのため、ステレオマッチングを行う前に、撮像画像の間での垂直方向のズレを低減させる画像処理を施すことが行われている。係る画像処理は平行化処理、あるいはレクティフィケーションと呼ばれ、例えば、撮像装置の特性に関するパラメータ(所謂内部パラメータ)や、視点の位置、及び姿勢に関するパラメータ(所謂外部パラメータ)を用いた射影変換により実現することが可能である。なお、平行化処理を行う際に用いられる視点の位置、及び姿勢に関するパラメータは、視点ごとの位置、及び姿勢として与えられてもよいし、視点間での位置の差、及び姿勢の差として与えられてもよい。
このようなパラメータを推定することは、カメラキャリブレーション、あるいは単にキャリブレーションと呼ばれ、例えばステレオマッチングに先立って事前に行われている。ステレオマッチングにより高精度にデプスマップを生成するためには、係る平行化処理を高精度に行うことが重要であり、高精度なパラメータを取得することが望ましい。そのため、キャリブレーションした直後に、パラメータをさらに高精度化するための補正や、キャリブレーションが行われた後、ある程度時間が経過したことより発生したズレを反映させるための補正を行うことが望ましい。
ここで、視点の姿勢に関するパラメータの補正について検討する。視点の姿勢は、左右を軸とした回転角であるピッチ(Pitch)角、上下を軸とした回転角であるヨー(Yaw)角、及び前後を軸とした回転角であるロール(Roll)角に分解することができる。このうち、視点間でのロール角の差(以下、視点間のロール角度、あるいは単にロール角度とも呼ぶ)は、ステレオマッチングにおいて、マッチングの可否に大きな影響を与える。そのため、推定された視点間でのロール角度に、より大きな誤差が含まれる程、当該ロール角度を含むパラメータを用いた平行化処理が施された撮像画像の間でのステレオマッチングにおいて、マッチングエラーがより大きくなる。
このような傾向を利用し、視点間のロール角度を高精度化することが考えられる。例えば、視点間のロール角度を変更しながら、平行化処理が施された撮像画像の間でステレオマッチングを行い、マッチングエラーが最も小さくなるロール角度を探索することで、視点間のロール角度をより高精度に補正することが可能である。
しかし、視点間でのピッチ角の差(以下、視点間のピッチ角度、あるいは単にピッチ角度とも呼ぶ)、及び視点間でのヨー角の差(以下、視点間のヨー角度、あるいは単にヨー角度とも呼ぶ)を高精度に補正することは困難であった。例えば、上記のロール角度の補正方法と同様の方法で補正したとしても、ステレオマッチングにおいてピッチ角度、あるいはヨー角度の誤差がマッチングの可否に与えられる影響は小さいため、高精度に補正することができなかった。しかし、視点間のピッチ角度、あるいは視点間のヨー角度に誤差が含まれている場合、マッチング自体は可能であるものの、ステレオマッチングにより生成されるデプスマップに歪み等の誤差が生じる恐れがあった。
そこで、本件開示者は、上述事情を一着眼点にして本開示の各実施形態を創作するに至った。本開示の各実施形態によれば、ステレオマッチングにより生成されるデプスマップの歪みに着目し、当該デプスマップと、当該デプスマップから推定される平面との比較に基づいて、視点間のピッチ角度、及び視点間のヨー角度をより高精度に補正可能である。以下では、上記の効果を奏する本開示の第1の実施形態、及び第2の実施形態について詳細に説明する。
<<2.実施形態>>
<2-1.第1の実施形態>
(システム構成例)
図1は、本開示の第1の実施形態に係る情報処理システムの構成例を示す説明図である。図1に示すように、本実施形態に係る情報処理システムは、ステレオカメラ7、及びプロジェクタ8を含む。
<2-1.第1の実施形態>
(システム構成例)
図1は、本開示の第1の実施形態に係る情報処理システムの構成例を示す説明図である。図1に示すように、本実施形態に係る情報処理システムは、ステレオカメラ7、及びプロジェクタ8を含む。
ステレオカメラ7は、右カメラ7Rと左カメラ7Lを含む。右カメラ7R、及び左カメラ7Lは、撮像レンズ、絞り、及びフォーカスレンズ等により構成されるレンズ系、レンズ系に対してフォーカス動作を行わせる駆動系、レンズ系で得られる撮像光を光電変換して撮像信号を生成する固体撮像素子アレイ等を各々有する。なお、レンズ系はズームレンズを含んでもよく、係る場合、駆動系はレンズ系に対してズーム動作を行わせてもよい。固体撮像素子アレイは、例えばCCD(Charge Coupled Device)センサアレイや、CMOS(Complementary Metal Oxide Semiconductor)センサアレイにより実現されてもよい。
右カメラ7R、及び左カメラ7Lは、それぞれ撮像画像を取得し、以下では右カメラ7Rが取得した撮像画像をR画像、左カメラ7Lが取得した撮像画像をL画像と呼ぶ場合がある。つまり、右カメラ7Rの位置、及び姿勢は、R画像の撮像に係る視点の位置、及び姿勢であり、左カメラ7Lの位置、及び姿勢はL画像の撮像に係る視点の位置、及び姿勢である。
また、右カメラ7Rと左カメラ7Lは、水平に並んで配置される。そのため、右カメラ7Rと左カメラ7Lとの撮像範囲には主に水平方向のズレが存在するが、右カメラ7Rと左カメラ7Lの撮像範囲の少なくとも一部は重複しており、比較的大部分が重複していることが望ましい。ステレオカメラ7は、図1に示すように、平面であるテーブル9の天面に向けて配置される。本実施形態において、右カメラ7Rと左カメラ7Lの撮像範囲の重複部分は図1には示されていないが、テーブル9の天面に含まれてもよく、後述するプロジェクタ8の投映領域R10と略同一であってもよい。
なお、右カメラ7Rと左カメラ7Lの特性、及び位置や姿勢に関するパラメータは、事前に行われるキャリブレーションにより算出、あるいはステレオカメラ7の設計時により取得されている。ただし、パラメータのうち、右カメラ7Rと左カメラ7Lの間のピッチ角度、及びヨー角度には誤差が含まれ得る。
プロジェクタ8は、テーブル9の天面に画像を投映する。図1に示す例では、プロジェクタ8は、テーブル9の天面のうち、投映領域R10に画像を投映する。プロジェクタ8が投映する画像は多様であり得るが、例えば、プロジェクタ8は、ステレオマッチングに適した画像を投映することが望ましい。ステレオマッチングに適した画像とは、例えば特徴的な点やテクスチャを十分に含んだ画像である。
なお、図1では、ステレオカメラ7、及びプロジェクタ8がテーブル9の真上に配置される例が示されているが、係る例に限定されず、ステレオカメラ7、及びプロジェクタ8は、テーブル9の斜め上に配置されてもよい。
また、本実施形態に係る情報処理システムは、図1に示されていない情報処理装置を含む。係る情報処理装置の配置は限定されないが、係る情報処理装置は図1に示したステレオカメラ7、及びプロジェクタ8と接続される。以下、本実施形態に係る情報処理システムが含む情報処理装置(以下、本実施形態に係る情報処理装置とも呼ぶ)の構成例について説明する。
(情報処理装置の構成例)
図2は、本実施形態に係る情報処理装置1の構成例を示すブロック図である。図2に示すように、本実施形態に係る情報処理装置1は、制御部10、操作部30、表示部40、記憶部50、及びインタフェース部60を備える。
図2は、本実施形態に係る情報処理装置1の構成例を示すブロック図である。図2に示すように、本実施形態に係る情報処理装置1は、制御部10、操作部30、表示部40、記憶部50、及びインタフェース部60を備える。
制御部10は、情報処理装置1の各構成を制御する。また、制御部10は、図2に示すように、平行化処理部11、デプスマップ生成部12、平面推定部13、補正部15、表示制御部17、及びプロジェクタ制御部19としても機能する。
平行化処理部11は、後述するインタフェース部60が図1に示したステレオカメラ7から取得したR画像とL画像に対して、R画像とL画像との間の垂直方向のズレを低減させる平行化処理を施す。例えば、平行化処理部11が施す平行化処理は、右カメラ7Rと左カメラ7Lの特性、及び位置や姿勢に関するパラメータを用いた射影変換処理を含んでもよい。なお、平行化処理部11が用いるパラメータは、予め記憶部50に記憶されたパラメータであってもよく、例えばキャリブレーションにより算出されたパラメータやステレオカメラ7の設計時のパラメータ等であってもよい。また、平行化処理部11は、後述する補正部15から提供されるパラメータを用いて、平行化処理を行ってもよい。
なお、以下では、平行化処理部11がR画像に対して平行化処理を施して得た画像を平行化R画像と呼び、L画像に対して平行化処理を施して得た画像を平行化L画像と呼ぶ。平行化処理部11は、平行化R画像、及び平行化L画像をデプスマップ生成部12へ出力する。
デプスマップ生成部12は、平行化処理部11から提供される平行化R画像と平行化L画像を用いたステレオマッチングにより、デプスマップを生成する。なお、本実施形態に係るデプスマップ生成部12が行うステレオマッチングにおける対応点の探索方向は、水平方向である。デプスマップ生成部12は、生成したデプスマップを平面推定部13へ出力する。
平面推定部13は、デプスマップ生成部12により生成されたデプスマップに基づいて、平面を推定する。例えば、平面推定部13は、デプスマップ生成部12により生成されたデプスマップから得られる3次元点群を入力とし、3次元点群に含まれる平面を推定する。
平面推定部13は、RANSAC(Random sample consensus)法等の平面推定手法を用いることで、ノイズを除去して1つの平面を推定してもよい。また、3次元点群に複数の平面が含まれる場合や、平面以外の点が含まれる場合、最大の平面(属する点の数が最大である平面)以外の平面に属する点や平面以外の点は、ノイズとして除去されて、平面が推定され得る。ただし、平面推定をより高精度に行うため、及び後述の補正処理を高精度に行うためには、ステレオカメラ7の撮像範囲、特に右カメラ7Rと左カメラ7Lの撮像範囲の重複部分に、最大の平面以外の平面やその他の物体等が可能な限り含まれていないことが望ましい。そのため、図1を参照して説明したように、右カメラ7Rと左カメラ7Lの撮像範囲の重複部分が、平面であるテーブル9の天面に含まれるようにステレオカメラ7が配置されることが望ましい。また、テーブル9の天面には、余計なオブジェクトが配置されないことが望ましい。
平面推定部13は、推定した平面を示す情報(例えば平面方程式)を補正部15へ出力する。
補正部15は、デプスマップ生成部12により生成されたデプスマップと、平面推定部13により推定された平面(以下、推定平面と呼ぶ場合がある)との比較に基づいて、右カメラ7Rと左カメラ7Lの姿勢に関するパラメータを補正する。補正部15が補正する右カメラ7Rと左カメラ7Lの姿勢に関するパラメータは、右カメラ7Rと左カメラ7Lとの間のピッチ角度、及び右カメラ7Rと左カメラ7Lとの間のヨー角度を含んでもよい。補正部15は、右カメラ7Rと左カメラ7Lとの間のピッチ角度を補正し、補正されたピッチ角度を取得する。また、補正部15は、右カメラ7Rと左カメラ7Lとの間のヨー角度を補正し、補正されたヨー角度を取得する。図2に示すように、補正部15は、比較部152、及び補正制御部156を含む。
比較部152は、デプスマップ生成部12により生成されたデプスマップと、推定平面に基づいて生成されるデプスマップとの比較を行う。なお、以下では区別のため、デプスマップ生成部12により生成されるデプスマップを、第1のデプスマップと呼び、推定平面に基づいて生成されるデプスマップを第2のデプスマップと呼ぶ場合がある。
第2のデプスマップは、第1のデプスマップの視点と同一の視点から推定平面を見たデプスマップであり、例えば、推定平面上に存在する3次元点群を第2のデプスマップ上に投影することで生成することが可能である。
本実施形態では、第1のデプスマップと第2のデプスマップの差が小さい程、右カメラ7Rと左カメラ7Lの姿勢に関するパラメータに含まれる誤差が小さいと考えられる。そこで、比較部152は、例えば第1のデプスマップと、第2のデプスマップとの差分を取得する(減算する)ことにより、比較を行ってもよい。また、比較部152は、画素ごとに第1のデプスマップから第2のデプスマップを減算した差分マップを生成してもよい。
また、比較部152は、第1のデプスマップと、第2のデプスマップとを比較して、ピッチ角度の補正に用いられる評価値、及びヨー角度の補正に用いられる評価値を算出する。係る構成によれば、ピッチ角度、及びヨー角度の誤差により第1のデプスマップに生じた歪みを反映した評価値を算出することが可能となる。なお、区別のため、ピッチ角度の補正に用いられる評価値を第1の評価値と呼び、ヨー角度の補正に用いられる評価値を第2の評価値と呼ぶ場合がある。
比較部152は、例えば本来のピッチ角度と、現在のパラメータに含まれるピッチ角度との差が大きい程、第1の評価値が大きくなるように第1の評価値を算出してもよい。また、比較部152は、本来のヨー角度と、現在のパラメータに含まれるヨー角度との差が大きい程、第2の評価値が大きくなるように第2の評価値を算出してもよい。以下、このような比較部152による評価値の算出方法について、図3~図6を参照して説明する。
例えば、比較部152は、水平中心線と垂直中心線とで4分割された領域ごとに、第1のデプスマップと、第2のデプスマップとを比較して、右カメラ7Rと左カメラ7Lの間のピッチ角度の補正に用いられる第1の評価値を算出する。比較部152は、当該領域ごとに、第1のデプスマップと第2のデプスマップとの差分の和を算出し、当該差分の和に基づいて第1の評価値を算出してもよい。
図3は、第1の評価値の算出方法について説明するための説明図である。図3には、第1のデプスマップDA、第2のデプスマップDB、及び第1のデプスマップDAから第2のデプスマップDBを減算して得られる差分マップDDが示されている。比較部152は、図3に示すように、水平中心線と垂直中心線とで4分割された領域ごとに、第1のデプスマップと第2のデプスマップとの差分の和を算出する。つまり、第1のデプスマップDAの領域DA1~DA4から第2のデプスマップDBの領域DB1~DB4をそれぞれ減算して得られた差分マップDDの領域DD1~DD4のそれぞれにおいて、和を算出する。なお、以下では、各領域で算出される差分の和を差分和と呼ぶ場合がある。
例えば、比較部152は、上下に位置する領域ごとに差分和の差分の絶対値を算出し、当該差分和の差分の絶対値に基づいて、第1の評価値を算出してもよい。ここで、領域DD1、DD2、DD3、DD4において算出される差分和を、それぞれd1、d2、d3、d4とすると、比較部152は、第1の評価値E1を以下の式(1)のように算出してもよい。
E1=|d1-d3|+|d2-d4| …(1)
式(1)のようにして算出される第1の評価値E1をピッチ角度の補正に用いる理由について、図4~図6を参照して説明する。図4は、ピッチ角度を変更したときに生成されるデプスマップの変化を模式的に示す模式図である。
後述する補正制御部156では、ピッチ角度を変化させながら(変更しながら)第1の評価値が小さくなるようにピッチ角度を補正する。ここで、ピッチ角度を変化させると、平行化処理部11が行う平行化処理に含まれる射影変換により、台形的な変化が生じる。
L画像CL1とR画像CR1に対して図4に示すように右カメラ7Rと左カメラ7Lとの間のピッチ角度を変化させて射影変換を適用すると、平行化L画像TL1と平行化R画像TR1が得られる。また、図4に示すデプスマップ変化DV10は、図4に示すようにピッチ角度を変化させた場合に、右カメラ7Rを基準としたステレオマッチングにより得られるデプスマップの各領域に生じる変化量を示している。
図4に示すように、平行化L画像TL1と平行化R画像TR1のそれぞれにおいて、上辺と下辺の長さが射影変換の前後で変化する。その結果、図4に示す例において、L画像CL1と平行化L画像TL1とを比較すると、上側に存在する画素は水平方向の中心側に移動し、下側に存在する画素は水平方向の外側に移動する。また、図4に示す例において、R画像CR1と平行化R画像TR1とを比較すると、上側に存在する画素は水平方向の外側に移動し、下側に存在する画素は水平方向の中心側に移動する。
そのため、デプスマップ変化DV10では、左上領域DV11と右下領域DV14において変化量が負となり、右上領域DV12と左下領域DV13において変化量が正となる。つまり、上下に位置する領域ごとに、符号(正負)が異なり、対角に位置する領域ごとに符号が一致する。したがって、ピッチ角度にズレが存在する場合、もし単純に差分マップの全体で差分を合計した値を評価値に用いてしまうと、符号の異なる領域において打ち消し合うため、ピッチ角度のズレと評価値の大小関係が維持されない恐れがある。一方、式(1)のように上下に位置する領域ごとに差分和の差分の絶対値を算出し、当該絶対値に基づいて第1の評価値を算出することで、ピッチ角度のズレと第1の評価値の大小関係を維持することが可能である。
なお、図4に示す例では、ピッチ角度の変化量をL画像CL1とR画像CR1の両方に振り分けて射影変換を行う例を示したが、片方のみに振り分けて射影変換することによる平行化も可能である。係る場合であっても、ピッチ角度の変化によるデプスマップ変化量の傾向は同様である。
なお、ステレオマッチングのためには垂直方向のズレがないことが望ましいが、ピッチ角度の変化に応じて各画素の垂直位置がズレてしまう。そのため、図4では、ピッチ角度の変化についてのみ示したが、実際には、平行化処理において、垂直方向にも各画素を移動させることが望ましい。例えば、ピッチ角度の変化に応じて、垂直方向のズレがなくなるように(垂直中心点が移動しないように)垂直方向に移動させる射影変換が適用されてもよい。
ところで、図4に示すデプスマップ変化DV10を参照すると、上下に位置する領域だけでなく、左右に位置する領域においても符号が異なる。しかし、ピッチ角度だけでなく、ヨー角度にもズレが存在する場合、左右に位置する領域ごとに差分和の差分の絶対値を算出して評価値を算出するよりも、式(1)のように、上下に位置する領域ごとに差分和の差分の絶対値を算出して評価値を算出する方が望ましい。本実施形態において、後述する補正制御部156は、ピッチ角度を補正した後に、ヨー角度を補正するため、上下に位置する領域ごとに差分和の差分の絶対値を算出して評価値を算出することが望ましい。ここで、係る理由について、図5、図6を参照して説明を行う。図5、図6は、ヨー角度を変更したときに生成されるデプスマップの変化を模式的に示す模式図である。
L画像CL2とR画像CR2に対して図5に示すように右カメラ7Rと左カメラ7Lとの間のヨー角度を変化させて射影変換を適用すると、平行化L画像TL2と平行化R画像TR2が得られる。また、図5に示すデプスマップ変化DV20は、図5に示すようにヨー角度を変化させた場合に、右カメラ7Rを基準としたステレオマッチングにより得られるデプスマップの各領域に生じる変化量を示している。
図5に示すように、平行化L画像TL2と平行化R画像TR2のそれぞれにおいて、右側の辺と左側の辺の長さが射影変換の前後で変化する。その結果、図5に示す例において、L画像CL2と平行化L画像TL2とを比較すると、右側に存在する画素も、左側に存在する画素も左方向に移動する。なお、図示していないが、L画像CL2と平行化L画像TL2とを比較すると、中央近傍に存在する画素は右方向に移動する。また、図5に示す例において、R画像CR2と平行化R画像TR2とを比較すると、右側に存在する画素も、左側に存在する画素も右方向に移動する。なお、図示していないが、R画像CR2と平行化R画像TR2とを比較すると、中央近傍に存在する画素は左方向に移動する。
そのため、デプスマップ変化DV20では、左側領域DV26において変化量は正、中央領域DV27において変化量は負、そして右側領域DV28において変化量は正となる。
また、L画像CL3とR画像CR3に対して図6に示すように右カメラ7Rと左カメラ7Lとの間のヨー角度を変化させて射影変換を適用すると、平行化L画像TL3と平行化R画像TR3が得られる。また、図6に示すデプスマップ変化DV30は、図6に示すようにヨー角度を変化させた場合に、右カメラ7Rを基準としたステレオマッチングにより得られるデプスマップの各領域に生じる変化量を示している。
図6に示すように、平行化L画像TL3と平行化R画像TR3のそれぞれにおいて、右側の辺と左側の辺の長さが射影変換の前後で変化する。その結果、図6に示す例において、L画像CL3と平行化L画像TL3とを比較すると、右側に存在する画素も、左側に存在する画素も右方向に移動する。なお、図示していないが、L画像CL3と平行化L画像TL3とを比較すると、中央近傍に存在する画素は左方向に移動する。また、図6に示す例において、R画像CR3と平行化R画像TR3とを比較すると、右側に存在する画素も、左側に存在する画素も左方向に移動する。なお、図示していないが、R画像CR3と平行化R画像TR3とを比較すると、中央近傍に存在する画素は右方向に移動する。
そのため、デプスマップ変化DV30では、左側領域DV36において変化量は負、中央領域DV37において変化量は正、そして右側領域DV38において変化量は負となる。
上述したヨー角度を変化させた場合のデプスマップ変化の傾向を踏まえると、水平方向においては変化の傾向が異なり、垂直方向においては変化の傾向が一致する。したがって、もしヨー角度の補正を行う前に、左右に位置する領域ごとに差分和の差分の絶対値を算出して第1の評価値を算出すると、ピッチ角度のズレと第1の評価値との大小関係が維持されない恐れがある。したがって、上述した式(1)のように、上下に位置する領域ごとに差分和の差分の絶対値を算出し、当該絶対値に基づいて第1の評価値を算出することが望ましい。
以上、ピッチ角度の補正に用いられる第1の評価値の算出方法について説明した。続いて、ヨー角度の補正に用いられる第2の評価値の算出方法について説明する。
比較部152は、例えば、第1のデプスマップと、第2のデプスマップとの差分の分散に基づいて、ヨー角度の補正に用いられる第2の評価値を算出してもよい。上述したヨー角度を変化させた場合のデプスマップ変化の傾向を踏まえると、本来のヨー角度と、現在のパラメータに含まれるヨー角度との差が大きい程、第1のデプスマップと、第2のデプスマップとの差分の分散が大きくなる。そこで、比較部152は、例えば、領域に分けることなく、全体で第1のデプスマップと、第2のデプスマップとの差分の分散を算出し、係る分散を第2の評価値としてもよい。
以上、比較部152による第1の評価値の算出方法、及び第2の評価値の算出方法について説明した。なお、評価値の算出方法は、上記の例に限定されない。他の評価値の算出方法については変形例として後述する。
図2に戻って説明を続ける。補正制御部156は、右カメラ7Rと左カメラ7Lの姿勢に関するパラメータの補正処理に関する制御を行う。例えば、補正制御部156は、比較部152により算出される第1の評価値を用いて、ピッチ角度を補正する。また、補正制御部156は、比較部152により算出される第2の評価値を用いて、ヨー角度を補正する。
なお、上述したように比較部152は、ピッチ角度の補正に用いられる第1の評価値と、ヨー角度の補正に用いられる第2の評価値を異なる方法で算出してもよく、補正制御部156は、ピッチ角度の補正と、ヨー角度の補正を別々に行ってもよい。
また、補正制御部156は、ピッチ角度を補正した後に、ヨー角度を補正してもよい。上述したように、ピッチ角度の補正に用いられる第1の評価値は、ヨー角度のズレの影響を受けることなくピッチ角度を補正することが可能に算出されているため、ピッチ角度を補正した後にヨー角度を補正することで、それぞれの補正を独立に行うことができる。
補正制御部156は、比較部152により算出される第1の評価値が所定の条件(以下、第1の評価値に関する条件とも呼ぶ)を満たすようなピッチ角度を補正されたピッチ角度として特定してもよい。例えば、上述したように本来のピッチ角度と、現在のパラメータに含まれるピッチ角度との差が大きい程、第1の評価値が大きくなるように第1の評価値が算出される場合、補正制御部156は第1の評価値がより小さいピッチ角度を探索(特定)することが望ましい。
したがって、例えば第1の評価値に関する条件は、例えば複数のピッチ角度に基づいて算出された第1の評価値のうち最も小さいこと、であってもよい。係る場合、例えば、補正制御部156は、例えば所定の範囲でピッチ角度を変更しながら、変更されたピッチ角度を含むパラメータを平行化処理部11へ提供し、比較部152に第1の評価値を算出させる制御を繰り返してもよい。そして、補正制御部156は、最終的に第1の評価値が最も小さくなるようなピッチ角度を補正されたピッチ角度として特定してもよい。
なお、第1の評価値に関する条件は、上記の例に限定されず、例えば所定の閾値よりも小さいことであってもよい。また、上記では、本来のピッチ角度と、現在のパラメータに含まれるピッチ角度との差が大きい程、第1の評価値が大きくなるように第1の評価値が算出される場合について述べたが、第1の評価値に関する条件は、第1の評価値の算出方法に応じた条件であってよい。例えば、本来のピッチ角度と、現在のパラメータに含まれるピッチ角度との差が大きい程、第1の評価値が小さくなるように第1の評価値が算出される場合、第1の評価値に関する条件として、上述した条件の大小を反転した条件が用いられてもよい。
また、同様に、補正制御部156は、比較部152により算出される第2の評価値が所定の条件(以下、第2の評価値に関する条件とも呼ぶ)を満たすようなヨー角度を補正されたヨー角度として特定してもよい。例えば、上述したように本来のヨー角度と、現在のパラメータに含まれるヨー角度との差が大きい程、第2の評価値が大きくなるように第2の評価値が算出される場合、補正制御部156は第2の評価値がより小さいヨー角度を探索(特定)することが望ましい。
したがって、例えば第2の評価値に関する条件は、例えば複数のヨー角度に基づいて算出された第2の評価値のうち最も小さいこと、であってもよい。係る場合、例えば、補正制御部156は、例えば所定の範囲でヨー角度を変更しながら、変更されたヨー角度を含むパラメータを平行化処理部11へ提供し、比較部152に第2の評価値を算出させる制御を繰り返してもよい。そして、補正制御部156は、最終的に第2の評価値が最も小さくなるようなヨー角度を補正されたヨー角度として特定してもよい。
なお、第2の評価値に関する条件は、上記の例に限定されず、例えば所定の閾値よりも小さいことであってもよい。また、上記では、本来のヨー角度と、現在のパラメータに含まれるヨー角度との差が大きい程、第2の評価値が大きくなるように第2の評価値が算出される場合について述べたが、第2の評価値に関する条件は、第2の評価値の算出方法に応じた条件であってよい。例えば、本来のヨー角度と、現在のパラメータに含まれるヨー角度との差が大きい程、第2の評価値が小さくなるように第2の評価値が算出される場合、第2の評価値に関する条件として、上述した条件の大小を反転した条件が用いられてもよい。
また、補正制御部156は、上述したピッチ角度、及びヨー角度の補正を行うか否かの判定を行ってもよい。例えば、補正制御部156は、比較部152により生成された差分マップを表示制御部17に提供して表示部40に表示させ、表示を確認したユーザの入力を操作部30を介して受け付け、係るユーザの入力に応じて係る判定を行ってもよい。あるいは、補正制御部156は、比較部152により生成された差分マップに基づいて、係る判定を自動的に行ってもよい。
表示制御部17は、表示部40を制御する。例えば、表示制御部17は、補正部15から提供される差分マップを表示させてもよいし、デプスマップ生成部12により生成された第1のデプスマップを表示させてもよい。なお、差分マップの表示例については、図8を参照して後述する。
プロジェクタ制御部19は、インタフェース部60を介して接続されたプロジェクタ8を制御し、テーブル9の天面に画像を投映させる。上述したように、プロジェクタ制御部19が投映させる画像は、ステレオマッチングに適した画像であることが望ましいが、既知の画像に限定されるものではない。上述した平行化処理部11、デプスマップ生成部12、平面推定部13、及び補正部15により行われる処理は、プロジェクタ制御部19が投映させる画像についての情報を用いることなく行われ得る。
操作部30は、ユーザの入力を受け付ける。本実施形態に係る操作部30は、例えば上述したピッチ角度、及びヨー角度の補正を行うか否かに関するユーザの入力を受け付けてもよい。また、操作部30は、例えばマウス、キーボード、タッチパネル、ボタン、スイッチ、レバー、あるいはダイヤル等により実現されてもよい。
表示部40は、表示制御部17の制御に従って表示するディスプレイ等である。表示部40は、例えば上述したように差分マップを表示する。
記憶部50は、制御部10が各機能を実行するためのプログラムやパラメータを記憶する。例えば記憶部50には、例えば事前に行われたキャリブレーションにより算出されたパラメータ、あるいはステレオカメラ7の設計時のパラメータ等が記憶されていてもよい。
インタフェース部60は、有線、あるいは無線により、他の装置との間の通信を仲介する。例えば、インタフェース部60は、図1に示したステレオカメラ7と接続されて、右カメラ7Rにより取得されるR画像と左カメラ7Lにより取得されるL画像とをステレオカメラ7から受信する。また、インタフェース部60は、図1に示したプロジェクタ8と接続されて、プロジェクタ8に投影させる画像をプロジェクタ8へ送信する。
以上、本実施形態に係る情報処理装置1の構成例について説明したが、情報処理装置1の構成は係る例に限定されず、例えば情報処理装置1の制御部10が有する少なくとも一部の機能が、他の装置に存在してもよい。例えば、図1に示したプロジェクタ8が情報処理装置1とは接続されず、他の装置と接続されている場合、プロジェクタ制御部19の機能は、プロジェクタ8と接続された他の装置に存在してもよい。
(動作例)
続いて、本実施形態に係る情報処理装置1の動作例について説明する。図7は、本実施形態に係る情報処理装置1の動作例を示すフローチャート図である。なお、以下に説明する一連の処理は、操作部30を介したユーザの入力に基づいて開始されてもよいし、情報処理装置1の起動と同時に開始されてもよいし、あるいは所定期間ごとに開始されてもよい。
続いて、本実施形態に係る情報処理装置1の動作例について説明する。図7は、本実施形態に係る情報処理装置1の動作例を示すフローチャート図である。なお、以下に説明する一連の処理は、操作部30を介したユーザの入力に基づいて開始されてもよいし、情報処理装置1の起動と同時に開始されてもよいし、あるいは所定期間ごとに開始されてもよい。
図7に示すように、ステレオカメラ7が撮像画像(R画像、及びL画像)を撮像により取得し、インタフェース部60が、ステレオカメラ7から撮像画像を受信する(S102)。
続いて、平行化処理部11が、ステップS102で取得されたR画像とL画像に対して、予め記憶されたパラメータに基づいて、R画像とL画像との間の垂直方向のズレを低減させる平行化処理を施し、平行化R画像と平行化L画像を得る(S104)。続いて、デプスマップ生成部12が、ステップS104で得られた平行化R画像と平行化L画像を用いたステレオマッチングにより、第1のデプスマップを生成する(S106)。続いて、平面推定部13が、ステップS106で生成された第1のデプスマップに基づいて、平面を推定する(S108)。
続いて、補正部15の比較部152が、ステップS108で推定された平面上に存在する3次元点群を投影することで第2のデプスマップを生成する(S110)。さらに、比較部152は、ステップS106で生成された第1のデプスマップからステップS110で生成された第2のデプスマップを画素ごとに減算して差分マップを生成する(S112)。
続いて、表示制御部17が、ステップS112で生成された差分マップあるいは第1のデプスマップを表示部40に表示させる。(S134)。ここで、図8を参照して、ステップS134における表示例について説明する。図8は、ステップS134における表示例を示す図である。
図8に示す表示例V11のように、表示制御部17は、各画素の値(差分値)に応じた色や輝度、濃淡等の視覚的特徴等で表現した差分マップを表示部40に表示させてもよい。なお、図8に示す表示例V11では、一例として、ドットの濃淡で差分値を表現しており、差分値が正に大きい程濃く、負に大きい程薄く示されている。
あるいは、表示制御部17は、図8に示す表示例V12のように、第1のデプスマップから得られる3次元点群を3次元的に描画して表示部40に表示させてもよい。
図8に示したような表示を行うことで、ユーザは現状のパラメータにより生成される第1のデプスマップが歪曲しているかどうかを確認することが可能である。
図7に戻って説明を続ける。ステップS134の表示を確認したユーザが操作部30を介して、補正を行うか否かに関する入力を行い、補正制御部156は係るユーザの入力に基づいて補正を行うか否か判定を行う(S136)。補正を行わない場合(S136においてNO)、処理は終了する。
一方、補正を行う場合(S136においてYES)、ピッチ角度の補正処理が行われる(S140)。ここで、ステップS140のピッチ角度の補正処理について、図9を参照して詳細に説明する。図9は、ピッチ角度の補正処理の詳細な動作を示すフローチャート図である。
図9に示すように、まず補正部15の補正制御部156は、ピッチ角度を変更する(S142)。ステップS142において、補正制御部156は、例えば現時点のパラメータ(予め記憶部50に記憶されたパラメータ)のうち、ピッチ角度だけを変更してもよい。あるいは、上述したように、補正制御部156は、ピッチ角度の変更に加え、垂直方向のズレがなくなるように(垂直中心点が移動しないように)、変更したピッチ角度に応じて視点の位置に関するパラメータを垂直方向に変更してもよい。
続いて、平行化処理部11が、図7のステップS102で取得されたR画像とL画像に対して、ステップS142で変更された後のピッチ角度を含むパラメータに基づいて、平行化処理を施し、平行化R画像と平行化L画像を得る(S144)。続いて、デプスマップ生成部12が、ステップS144で得られた平行化R画像と平行化L画像を用いたステレオマッチングにより、第1のデプスマップを生成する(S146)。続いて、平面推定部13が、ステップS146で生成された第1のデプスマップに基づいて、平面を推定する(S148)。
続いて、補正部15の比較部152が、ステップS148で推定された平面上に存在する3次元点群を投影することで第2のデプスマップを生成する(S150)。さらに、比較部152は、水平中心線と垂直中心線とで4分割された領域ごとに、ステップS146で生成された第1のデプスマップからステップS150で生成された第2のデプスマップの差分の和(差分和)を算出する(S154)。さらに、比較部152は、領域ごとに算出された差分和に基づいて上記の式(1)のように評価値(第1の評価値)を算出する(S156)。
続いて、補正制御部156は、ステップS156で算出された評価値と、最小評価値とを比較する(S158)。なお、ステップS158が最初に実行される際には、最小評価値は非常に大きな値に設定されていてもよいし、最初にステップS156が実行された際に算出された評価値が最小評価値として設定されてもよい。最小評価値は、例えば記憶部50に一時的に記憶されてもよい。
ステップS156で算出された評価値が最小評価値よりも小さい場合(S158においてYES)、補正制御部156は、ステップS156で算出された評価値で最小評価値を更新する(S160)。例えば、上述したように最小評価値が記憶部50に記憶される場合、ステップS160において、補正制御部156はステップS156で算出された評価値を最小評価値として記憶部50に記憶させる。また、ステップS160において、補正制御部156は、ステップS142で変更されたピッチ角度を最小評価値に対応するピッチ角度として記憶部50に記憶させてもよい。
ステップS162において、補正制御部156は、ピッチ角度の変更が十分に繰り返されたと判定されるまで、ステップS142~S160の処理を繰り返すように制御する。なお、補正制御部156は、例えばステップS142~S160の処理を所定の回数繰り返した場合に、ピッチ角度の変更を十分に繰り返したと判定してもよい。ピッチ角度の変更を十分に繰り返したと判定されると(S162においてYES)、処理はステップS164に進む。
ステップS164において、補正制御部156は、最小評価値に対応するピッチ角度を補正後のピッチ角度として特定し、例えば記憶部50から取得する。
以上、ステップS140のピッチ角度の補正処理について説明した。図7に戻って説明を続ける。ステップS140のピッチ角度の補正処理に続いて、ヨー角度の補正処理が行われる(S170)。ここで、ステップS170のヨー角度の補正処理について、図10を参照して詳細に説明する。図10は、ヨー角度の補正処理の詳細な動作を示すフローチャート図である。
図10に示すように、まず補正部15の補正制御部156は、ヨー角度を変更する(S172)。ステップS172において、補正制御部156は、例えば現時点のパラメータ(ステップS140のピッチ角度の補正処理後のパラメータ)のうち、ヨー角度だけを変更してもよい。
続いて、平行化処理部11が、図7のステップS102で取得されたR画像とL画像に対して、ステップS172で変更された後のヨー角度を含むパラメータに基づいて、平行化処理を施し、平行化R画像と平行化L画像を得る(S174)。続いて、デプスマップ生成部12が、ステップS144で得られた平行化R画像と平行化L画像を用いたステレオマッチングにより、第1のデプスマップを生成する(S176)。続いて、平面推定部13が、ステップS146で生成された第1のデプスマップに基づいて、平面を推定する(S178)。
続いて、補正部15の比較部152が、ステップS148で推定された平面上に存在する3次元点群を投影することで第2のデプスマップを生成する(S180)。さらに、比較部152は、ステップS176で生成された第1のデプスマップからステップS180で生成された第2のデプスマップの差分の分散を評価値(第2の評価値)として算出する(S186)。
続いて、補正制御部156は、ステップS186で算出された評価値と、最小評価値とを比較する(S188)。なお、ステップS188が最初に実行される際には、最小評価値は非常に大きな値に設定されていてもよいし、最初にステップS186が実行された際に算出された評価値が最小評価値として設定されてもよい。最小評価値は、例えば記憶部50に一時的に記憶されてもよい。
ステップS186で算出された評価値が最小評価値よりも小さい場合(S188においてYES)、補正制御部156は、ステップS186で算出された評価値で最小評価値を更新する(S190)。例えば、上述したように最小評価値が記憶部50に記憶される場合、ステップS190において、補正制御部156はステップS186で算出された評価値を最小評価値として記憶部50に記憶させる。また、ステップS190において、補正制御部156は、ステップS172で変更されたヨー角度を最小評価値に対応するヨー角度として記憶部50に記憶させてもよい。
ステップS192において、補正制御部156は、ヨー角度の変更が十分に繰り返されたと判定されるまで、ステップS172~S190の処理を繰り返すように制御する。なお、補正制御部156は、例えばステップS172~S190の処理を所定の回数繰り返した場合に、ヨー角度の変更を十分に繰り返したと判定してもよい。ヨー角度の変更を十分に繰り返したと判定されると(S192においてYES)、処理はステップS194に進む。
ステップS194において、補正制御部156は、最小評価値に対応するヨー角度を補正後のヨー角度として特定し、例えば記憶部50から取得する。
以上、ステップS170のピッチ角度の補正処理について説明した。図7に戻って説明を続ける。続くステップS198において、表示制御部17は、補正後の差分マップ、あるいは補正後の第1のデプスマップを表示させる(S198)。係る差分マップあるいは第1のデプスマップは、例えば補正後のパラメータを用いてステップS102~S112と同様の処理を再度行うことで得られてもよいし、ヨー角度の補正処理(S170)の間に得られてもよい。
ここで、図11を参照して、ステップS198における表示例について説明する。図11は、ステップS198における表示例を示す図である。
図11に示す表示例V13は、図8に示す表示例V11と同様に、各画素の値(差分値)に応じた色や輝度、濃淡等の視覚的特徴等(図11の例では濃淡)で表現した差分マップが表示部40に表示される例である。
また、図11に示す表示例V14は、図8に示す表示例V12と同様に、補正後のパラメータを用いて生成された第1のデプスマップから得られる3次元点群が3次元的に描画されて表示部40に表示される例である。
図11に示したような表示を行うことで、ユーザはパラメータが補正されたことを確認することが可能である。
(効果)
以上、本開示の第1の実施形態について説明した。本実施形態によれば、ステレオマッチングにより生成される第1のデプスマップと、第1のデプスマップに基づいて推定される平面を投影して得られる第2のデプスマップとの比較に基づいて、視点間のピッチ角度、及びヨー角度に関するパラメータの補正が行われる。上述したように、ステレオマッチングのマッチングエラーに基づいてピッチ角度、及びヨー角度の補正を行うことは難しいが、本実施形態によればデプスマップに生じる歪みに着目して、ピッチ角度、及びヨー角度を補正することが可能である。
以上、本開示の第1の実施形態について説明した。本実施形態によれば、ステレオマッチングにより生成される第1のデプスマップと、第1のデプスマップに基づいて推定される平面を投影して得られる第2のデプスマップとの比較に基づいて、視点間のピッチ角度、及びヨー角度に関するパラメータの補正が行われる。上述したように、ステレオマッチングのマッチングエラーに基づいてピッチ角度、及びヨー角度の補正を行うことは難しいが、本実施形態によればデプスマップに生じる歪みに着目して、ピッチ角度、及びヨー角度を補正することが可能である。
<2-2.第2の実施形態>
(概要)
続いて、本開示の第2の実施形態について説明する。図12は、本開示の第2の実施形態の概要を説明するための説明図である。本開示の第2の実施形態に係る情報処理システムは、図12に示すように、ステレオカメラ7、及びプロジェクタ8と、図12に示されていない情報処理装置を含む。なお、図12に示すステレオカメラ7、及びプロジェクタ8の構成は、図1に示したステレオカメラ7、及びプロジェクタ8の構成と同様であるため、ここでの詳細な説明は省略する。
(概要)
続いて、本開示の第2の実施形態について説明する。図12は、本開示の第2の実施形態の概要を説明するための説明図である。本開示の第2の実施形態に係る情報処理システムは、図12に示すように、ステレオカメラ7、及びプロジェクタ8と、図12に示されていない情報処理装置を含む。なお、図12に示すステレオカメラ7、及びプロジェクタ8の構成は、図1に示したステレオカメラ7、及びプロジェクタ8の構成と同様であるため、ここでの詳細な説明は省略する。
上述した第1の実施形態では、図1に示すテーブル9の天面に余計なオブジェクトが配置されないことが想定されていた。これに対し、図12に示す例では、テーブル9の天面にオブジェクトB21~B24が存在する。なお、図12に示す例では、オブジェクトB21~B24はプロジェクタ8の投映領域R20に含まれており、右カメラ7Rと左カメラ7Lの撮像範囲の重複部分(不図示)にも含まれている。
図12に示すような場合、第1の実施形態では、オブジェクトB21~B24を除去する必要がある。一方、以下に説明する本開示の第2の実施形態では、テーブル9の天面に余計なオブジェクトが配置されていたとしても、視点間の姿勢に関するパラメータを補正することが可能である。以下、このような効果を実現するための、本実施形態に係る情報処理システムが含む情報処理装置(以下、本実施形態に係る情報処理装置とも呼ぶ)の構成例について説明する。
(情報処理装置の構成例)
図13は、本実施形態に係る情報処理装置2の構成例を示すブロック図である。図13に示すように、本実施形態に係る情報処理装置2は、制御部20、操作部30、表示部40、記憶部50、及びインタフェース部60を備える。なお、図13に示す操作部30、表示部40、記憶部50、及びインタフェース部60の構成は、図2を参照して説明した操作部30、表示部40、記憶部50、及びインタフェース部60の構成と実質的に同様であるため、ここでの詳細な説明は省略する。
図13は、本実施形態に係る情報処理装置2の構成例を示すブロック図である。図13に示すように、本実施形態に係る情報処理装置2は、制御部20、操作部30、表示部40、記憶部50、及びインタフェース部60を備える。なお、図13に示す操作部30、表示部40、記憶部50、及びインタフェース部60の構成は、図2を参照して説明した操作部30、表示部40、記憶部50、及びインタフェース部60の構成と実質的に同様であるため、ここでの詳細な説明は省略する。
図13に示す制御部20は、情報処理装置2の各構成を制御する。また、制御部20は、図13に示すように、平行化処理部11、デプスマップ生成部12、平面推定部13、補正部25、表示制御部27、及びプロジェクタ制御部19としても機能する。なお、図13に示す平行化処理部11、デプスマップ生成部12、平面推定部13、及びプロジェクタ制御部19の構成は、図2を参照して説明した平行化処理部11、デプスマップ生成部12、平面推定部13及びプロジェクタ制御部19の構成と実質的に同様であるため、ここでの詳細な説明は省略する。
本実施形態に係る補正部25は、第1の実施形態に係る補正部15と同様に、デプスマップ生成部12により生成されたデプスマップと、平面推定部13により推定された平面との比較に基づいて、右カメラ7Rと左カメラ7Lの姿勢に関するパラメータを補正する。ただし、上述したように、本実施形態では、テーブル9の天面(撮像範囲)に余計なオブジェクトが配置されている恐れがある。そこで、本実施形態に係る補正部25は、係るオブジェクトの影響を受けないように、処理対象領域を設定し、処理対象領域において、補正に係る処理を行う。係る点において、本実施形態に係る補正部25は、第1の実施形態に係る補正部15と異なる。以下では、この本実施形態に係る補正部25が、第1の実施形態に係る補正部15と異なる点について主に説明を行い、同様の部分については適宜説明を省略する。
図13に示すように、本実施形態に係る補正部25は、比較部252、処理対象領域設定部254、及び補正制御部256を含む。
比較部252は、第1の実施形態に係る比較部152と同様に、デプスマップ生成部12により生成された第1のデプスマップと、推定平面に基づいて生成される第2のデプスマップとの比較を行う。
ただし、本実施形態に係る比較部252は、画素ごとに第1のデプスマップから第2のデプスマップを減算して生成した差分マップを処理対象領域設定部254へ提供する。さらに、処理対象領域設定部254によって処理対象領域が設定された後、比較部252は当該処理対象領域における第1のデプスマップと、推定平面との比較を行う。
例えば、処理対象領域設定部254によって処理対象領域が設定された後、比較部252は処理対象領域において差分を画素ごとに第1のデプスマップから第2のデプスマップを減算して差分マップを生成し、補正制御部256へ提供してもよい。
また、比較部252は処理対象領域において、第1のデプスマップと第2のデプスマップを比較することで、ピッチ角度の補正に用いられる第1の評価値、及びヨー角度の補正に用いられる第2の評価値を算出してもよい。比較部252による第1の評価値、及び第2の評価値の算出方法は、処理対象領域設定部254により設定される処理対象領域のみを算出の対象とすることを除いて、第1の実施形態で説明した第1の評価値、及び第2の評価値の算出方法と同様であってもよい。
係る構成により、比較部252は、テーブル9の天面に配置されたオブジェクトの影響を受けることなく、第1の評価値、及び第2の評価値を算出することが可能となる。
処理対象領域設定部254は、第1のデプスマップと、第2のデプスマップとに基づいて、処理対象領域を設定する。処理対象領域設定部254は、設定した処理対象領域の情報を比較部252と補正制御部256へ提供する。
上述したように、本実施形態では、テーブル9の天面にオブジェクトが配置され得るため、処理対象領域設定部254は、比較部252により算出される評価値が係るオブジェクトの影響を受けないように処理対象領域を設定することが望ましい。そのため、処理対象領域設定部254は、オブジェクトが存在するオブジェクト領域を特定し、オブジェクト領域に基づいて処理対象領域を設定する。例えば、処理対象領域設定部254は、第1のデプスマップと第2のデプスマップとの差分の絶対値が所定の閾値よりも大きい領域を、オブジェクト領域として特定してもよい。
比較部252により算出される評価値が係るオブジェクトの影響を受けないようにするためには、例えば処理対象領域からオブジェクト領域を除くことが考えられる。ここで、図3~図6を参照して説明したように、上下に位置する領域ごとに差分和の差分の絶対値が算出されて、算出された絶対値の和が、第1の評価値として用いられる。したがって、上下に位置する領域ごとに、処理対象領域の面積が同一であることが望ましい。さらに、図8に示したように、ピッチ角度やヨー角度にズレが含まれる場合に生成される第1のデプスマップは、四隅に近い程誤差が大きくなる(第2のデプスマップとの差分の絶対値が大きくなる)傾向がある。そこで、第1の評価値をより適切に算出するため、処理対象領域設定部254は、処理対象領域が上下対称であるように、処理対象領域を設定してもよい。
例えば、処理対象領域設定部254は、上述したオブジェクト領域を除くようなマスク画像と、当該マスク画像を上下方向に反転させた反転マスク画像とを生成してもよい。さらに、処理対象領域設定部254は、マスク画像と反転マスク画像とを足し合わせた、上下対称な対称マスク画像を生成し、当該対称マスク画像に基づいて処理対象領域を設定してもよい。なお、係る処理対象領域設定処理の具体例については、図16を参照して後述する。
補正制御部256は、第1の実施形態に係る補正制御部156と同様に、右カメラ7Rと左カメラ7Lの姿勢に関するパラメータの補正処理に関する制御を行う。ただし、本実施形態に係る補正制御部256は、処理対象領域設定部254により設定された処理対象領域に基づいて比較部252が算出した第1の評価値、及び第2の評価値に基づいて、補正処理に関する制御を行う点で上述した補正制御部156と異なる。係る構成により、余計なオブジェクトの影響を受けることなく、より高精度に補正を行うことが可能である。
また、本実施形態に係る補正制御部256は、処理対象領域設定部254により設定された処理対象領域に基づいて、補正処理を実行可能か否かを判定してもよい。例えば、処理対象領域が十分に存在しない場合、正常に補正処理を行えない恐れがある。そこで、補正制御部256は、例えば処理対象領域が十分に存在しない場合、補正処理を実行不可能であると判定してもよい。処理対象領域が十分に存在しないとは、例えば、処理対象領域の面積が所定の閾値よりも小さいことであってもよい。また、ピッチ角度やヨー角度にズレが含まれる場合に生成される第1のデプスマップは、四隅に近い程誤差が大きくなるため、四隅に近い程重みが大きくなるような重みづけを行って処理対象領域を評価した評価値に基づいて処理対象領域が十分に存在するか否かを判定してもよい。
表示制御部27は、第1の実施形態に係る表示制御部17と同様に表示部40の表示を制御する。ただし、本実施形態に係る表示制御部27は、処理対象領域が設定された差分マップ、あるいは処理対象領域が設定された第1のデプスマップを表示させる点で表示制御部17と異なる。また、本実施形態に係る表示制御部27は、補正制御部256により、処理対象領域が十分に存在しないために補正処理を実行不可能であると判定された場合に、ユーザに余計なオブジェクトを除去するように通知する画面を表示させてもよい。
(動作例)
以上、本実施形態に係る情報処理装置2の構成例について説明した。続いて、本実施形態に係る情報処理装置2の動作例について説明する。図14は、本実施形態に係る情報処理装置2の動作例を示すフローチャート図である。なお、以下に説明する一連の処理は、操作部30を介したユーザの入力に基づいて開始されてもよいし、情報処理装置2の起動と同時に開始されてもよいし、あるいは所定期間ごとに開始されてもよい。
以上、本実施形態に係る情報処理装置2の構成例について説明した。続いて、本実施形態に係る情報処理装置2の動作例について説明する。図14は、本実施形態に係る情報処理装置2の動作例を示すフローチャート図である。なお、以下に説明する一連の処理は、操作部30を介したユーザの入力に基づいて開始されてもよいし、情報処理装置2の起動と同時に開始されてもよいし、あるいは所定期間ごとに開始されてもよい。
図14に示すステップS202~S212の処理は、図7を参照して説明したステップS102~S112の処理と同様であるため、ここでの説明は省略する。
続くステップS220において、補正部25の処理対象領域設定部254により処理対象領域が設定される。ここで、ステップS220の処理対象領域の設定処理について、図15、図16を参照して詳細に説明する。図15は、処理対象領域の設定処理の詳細な動作を示すフローチャート図である。また、図16は、処理対象領域の設定処理の具体例を示す説明図である。以下では、図16に示したマスク画像M12、反転マスク画像M14、及び対称マスク画像M16を参照しながら、図15のフローチャートに沿ってステップS220の処理対象領域の設定処理の動作について説明する。なお、図16に示す例では、除かれる(マスクされる)領域が黒色の領域として示されているが、白と黒が反転してもよいし、他の色等が用いられてもよい。
まず、処理対象領域設定部254は、ステップS212で生成された差分マップに基づいて、オブジェクト領域を特定し、オブジェクト領域を除くようなマスク画像M12を生成する(S222)。続いて、処理対象領域設定部254は、ステップS222で生成されたマスク画像M12を上下方向に反転させた反転マスク画像M14を生成する(S224)。
そして、処理対象領域設定部254は、ステップS222で生成されたマスク画像M12と、ステップS224で生成された反転マスク画像M14とを足し合わせて、対称マスク画像M16を生成する(S226)。なお、図16に示すように、ステップS226において、処理対象領域設定部254は、マスク画像M12と反転マスク画像M14の少なくともいずれか一方において、黒色の領域は、対称マスク画像M16においても黒色の領域であるように対称マスク画像M16を生成する。
最後に、処理対象領域設定部254は、ステップS226で生成された対称マスク画像M16に基づいて処理対象領域を設定する(S228)。例えば、ステップS228において、処理対象領域設定部254は、対称マスク画像M16の白色領域を処理対象領域として設定する。
以上、ステップS220の処理対象領域の設定処理について説明した。図14に戻って説明を続ける。続くステップS232において、補正部25の補正制御部256は、処理対象領域が十分に存在するか否かを判定する(S230)。
処理対象領域が十分に存在しない場合(S230においてNO)、表示制御部27がユーザに余計なオブジェクトを除去するように通知する画面を表示させ、ユーザはテーブル9の天面に配置された余計なオブジェクトを除去する(S232)。そして処理はステップS202に戻る。
一方、処理対象領域が十分に存在する場合(S230においてYES)、表示制御部27が、処理対象領域が設定された差分マップ、あるいは処理対象領域が設定された第1のデプスマップを表示部40に表示させる。(S234)。ここで、図17を参照して、ステップS234における表示例について説明する。図17は、ステップS234における表示例を示す図である。
図17に示す表示例V21のように、表示制御部27は、各画素の値(差分値)に応じた色や輝度、濃淡等の視覚的特徴等で表現した、差分マップを表示部40に表示させてもよい。なお、図17に示す表示例V21では、一例として、ドットの濃淡で差分値を表現しており、差分値が正に大きい程濃く、負に大きい程薄く示されている。また、図17に示す表示例V21では、処理対象領域が設定された差分マップを表示しており、処理対象領域ではない領域は、斜線ハッチングにより示されている。ただし、係る例に限定されず、例えば処理対象領域ではない領域が、色や輝度、濃淡等の他の視覚的特徴で表現されてもよい。
あるいは、表示制御部27は、図17に示す表示例V22のように、第1のデプスマップから得られる3次元点群を3次元的に描画して表示部40に表示させてもよい。また、図17に示す表示例V22では、処理対象領域が設定された第1のデプスマップを表示しており、処理対象領域ではない領域は、斜線ハッチングにより示されている。ただし、係る例に限定されず、例えば処理対象領域ではない領域が、切り抜かれて表示されたり、処理対象領域とは別の色で表示されたりしてもよい。
図17に示したような表示を行うことで、ユーザは現状のパラメータにより生成される第1のデプスマップが歪曲しているかどうかを確認することが可能であると共に、処理対象領域を確認することが可能である。
図14に戻って説明を続ける。ステップS234の表示を確認したユーザが操作部30を介して、補正を行うか否かに関する入力を行い、補正制御部256は係るユーザの入力に基づいて補正を行うか否か判定を行う(S236)。補正を行わない場合(S236においてNO)、処理は終了する。
一方、補正を行う場合(S236においてYES)、ピッチ角度の補正処理が行われる(S240)。ここで、ステップS240のピッチ角度の補正処理について、図18を参照して詳細に説明する。図18は、ピッチ角度の補正処理の詳細な動作を示すフローチャート図である。
図18に示すステップS242~S250の処理は、図9を参照して説明したステップS142~S150の処理と同様であるため、ここでの説明は省略する。
続くステップS252において、処理対象領域設定部254により処理対象領域が設定される。ステップS252の処理は、ステップS246で生成された第1のデプスマップと、ステップS250で生成された第2のデプスマップに基づいて生成される差分マップが用いられることを除いてステップS220の処理と同様であるため、ここでの詳細な説明は省略する。
続くステップS254において、比較部252は、ステップS252で設定された処理対象領域を対象とし、水平中心線と垂直中心線とで4分割された領域ごとに、ステップS246で生成された第1のデプスマップからステップS250で生成された第2のデプスマップの差分の和(差分和)を算出する。
続くステップS256~S264の処理は、図9を参照して説明したステップS156~S164の処理と同様であるため、ここでの説明は省略する。
以上、ステップS240のピッチ角度の補正処理について説明した。図14に戻って説明を続ける。ステップS240のピッチ角度の補正処理に続いて、ヨー角度の補正処理が行われる(S270)。ここで、ステップS270のヨー角度の補正処理について、図19を参照して詳細に説明する。図19は、ヨー角度の補正処理の詳細な動作を示すフローチャート図である。
図19に示すステップS272~S280の処理は、図10を参照して説明したステップS172~S180の処理と同様であるため、ここでの説明は省略する。
続くステップS282において、処理対象領域設定部254により処理対象領域が設定される。ステップS282の処理は、ステップS276で生成された第1のデプスマップと、ステップS270で生成された第2のデプスマップに基づいて生成される差分マップが用いられることを除いてステップS220の処理と同様であるため、ここでの詳細な説明は省略する。
続くステップS286において、比較部252は、ステップS282で設定された処理対象領域を対象とし、ステップS276で生成された第1のデプスマップからステップS280で生成された第2のデプスマップの差分の和を評価値(第2の評価値)として算出する。
続くステップS288~S294の処理は、図10を参照して説明したステップS188~S194の処理と同様であるため、ここでの説明は省略する。
以上、ステップS270のピッチ角度の補正処理について説明した。図14に戻って説明を続ける。続くステップS298において、表示制御部27は、処理対象領域が設定された補正後の差分マップ、あるいは処理対象領域が設定された補正後の第1のデプスマップを表示させる(S299)。
(効果)
以上、本開示の第2の実施形態について説明した。本実施形態によれば、処理対象領域を設定することで、テーブル9の天面(撮像範囲)に余計なオブジェクトが存在する場合であっても、高精度に補正を行うことが可能である。
以上、本開示の第2の実施形態について説明した。本実施形態によれば、処理対象領域を設定することで、テーブル9の天面(撮像範囲)に余計なオブジェクトが存在する場合であっても、高精度に補正を行うことが可能である。
<<3.変形例>>
以上、本開示の各実施形態を説明した。以下では、本開示の各実施形態の幾つかの変形例を説明する。なお、以下に説明する各変形例は、単独で本開示の各実施形態に適用されてもよいし、組み合わせで本開示の各実施形態に適用されてもよい。また、各変形例は、本開示の各実施形態で説明した構成に代えて適用されてもよいし、本開示の各実施形態で説明した構成に対して追加的に適用されてもよい。
以上、本開示の各実施形態を説明した。以下では、本開示の各実施形態の幾つかの変形例を説明する。なお、以下に説明する各変形例は、単独で本開示の各実施形態に適用されてもよいし、組み合わせで本開示の各実施形態に適用されてもよい。また、各変形例は、本開示の各実施形態で説明した構成に代えて適用されてもよいし、本開示の各実施形態で説明した構成に対して追加的に適用されてもよい。
<3-1.変形例1>
上記では、プロジェクタ8により画像が投映されたテーブル9の天面を撮像範囲とするように、水平に配置された右カメラ7Rと左カメラ7Lを含むステレオカメラ7が配置される例を説明したが、本技術は係る例に限定されない。本技術は、より多様な状況で適用可能である。
上記では、プロジェクタ8により画像が投映されたテーブル9の天面を撮像範囲とするように、水平に配置された右カメラ7Rと左カメラ7Lを含むステレオカメラ7が配置される例を説明したが、本技術は係る例に限定されない。本技術は、より多様な状況で適用可能である。
例えば、撮像範囲の大部分に平面(例えばテーブルの天面、床、壁等)が存在し、係る平面が特徴的な点やテクスチャや特徴点等、ステレオマッチングに適した特徴を含んでいれば、プロジェクタによる画像の投映が行われなくてもよい。
また、上記では、複数の撮像装置(右カメラ7Rと左カメラ7L)が水平方向に配置される例を説明したが、本技術は係る例に限定されない。例えば、垂直方向に配置された複数の撮像装置により取得された複数の撮像画像に対しても本技術は適用可能である。係る場合、ステレオマッチングにおける対応点の探索方向は垂直方向であってもよい。また、係る場合、ピッチ角度の補正に用いられる評価値の算出方法、及びヨー角度の補正に用いられる評価値の算出方法が適宜入れ替えられてもよく、同様にピッチ角度の補正方法、及びヨー角度の補正方法が適宜入れ替えられてもよい。なお、撮像装置や撮像画像の垂直方向、及び水平方向が特に定義されていない場合、例えばステレオマッチングにおける対応点の探索方向を水平方向と定義してもよい。
また、複数の撮像画像は、複数の撮像装置により同時に取得される画像ではなく、移動する撮像装置により、異なる時刻で取得される画像であってもよい。例えば、移動する撮像装置により異なる時刻で取得された複数の撮像画像に対しても、本技術を適用することが可能である。係る場合、移動する撮像装置が、各撮像画像を取得した(撮像が行われた)時刻における当該撮像装置の姿勢が、補正対象である視点の姿勢となり、時刻で間のピッチ角度、あるいはヨー角度が補正されてもよい。
<3-2.変形例2>
また、上記では、ピッチ角度の補正に用いられる第1の評価値の算出方法、及びヨー角度の補正に用いられる第2の評価値の算出方法の一例を説明したが、他の方法で評価値を算出することも可能である。
また、上記では、ピッチ角度の補正に用いられる第1の評価値の算出方法、及びヨー角度の補正に用いられる第2の評価値の算出方法の一例を説明したが、他の方法で評価値を算出することも可能である。
例えば、第1の評価値、あるいは第2の評価値は、画素ごとに算出される第1のデプスマップと、第2のデプスマップとの差分の絶対値を合計することで算出されてもよい。このような算出方法であっても、図4~図6を参照して説明したような符号の異なる領域による打ち消し合いの影響を受けない評価値を算出することが可能である。
<<4.ハードウェア構成例>>
以上、本開示の実施形態を説明した。最後に、図20を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図20は、本開示の実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。なお、図20に示す情報処理装置900は、例えば、図2、図13にそれぞれ示した情報処理装置1、情報処理装置2を実現し得る。本開示の実施形態に係る情報処理装置1、情報処理装置2による情報処理は、ソフトウェアと、以下に説明するハードウェアとの協働により実現される。
以上、本開示の実施形態を説明した。最後に、図20を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図20は、本開示の実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。なお、図20に示す情報処理装置900は、例えば、図2、図13にそれぞれ示した情報処理装置1、情報処理装置2を実現し得る。本開示の実施形態に係る情報処理装置1、情報処理装置2による情報処理は、ソフトウェアと、以下に説明するハードウェアとの協働により実現される。
図20に示すように、情報処理装置900は、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903及びホストバス904aを備える。また、情報処理装置900は、ブリッジ904、外部バス904b、インタフェース905、入力装置906、出力装置907、ストレージ装置908、ドライブ909、接続ポート911、通信装置913、及びセンサ915を備える。情報処理装置900は、CPU901に代えて、又はこれとともに、DSP若しくはASIC等の処理回路を有してもよい。
CPU901は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置900内の動作全般を制御する。また、CPU901は、マイクロプロセッサであってもよい。ROM902は、CPU901が使用するプログラムや演算パラメータ等を記憶する。RAM903は、CPU901の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。CPU901は、例えば、制御部10、制御部20を形成し得る。
CPU901、ROM902及びRAM903は、CPUバスなどを含むホストバス904aにより相互に接続されている。ホストバス904aは、ブリッジ904を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス904bに接続されている。なお、必ずしもホストバス904a、ブリッジ904および外部バス904bを分離構成する必要はなく、1つのバスにこれらの機能を実装してもよい。
入力装置906は、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチ及びレバー等、ユーザによって情報が入力される装置によって実現される。また、入力装置906は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置900の操作に対応した携帯電話やPDA等の外部接続機器であってもよい。さらに、入力装置906は、例えば、上記の入力手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、CPU901に出力する入力制御回路などを含んでいてもよい。情報処理装置900のユーザは、この入力装置906を操作することにより、情報処理装置900に対して各種のデータを入力したり処理動作を指示したりすることができる。
出力装置907は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で形成される。このような装置として、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ELディスプレイ装置及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置907は、例えば、情報処理装置900が行った各種処理により得られた結果を出力する。具体的には、表示装置は、情報処理装置900が行った各種処理により得られた結果を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。出力装置907は、例えば表示部40を形成し得る。
ストレージ装置908は、情報処理装置900の記憶部の一例として形成されたデータ格納用の装置である。ストレージ装置908は、例えば、HDD等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により実現される。ストレージ装置908は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。このストレージ装置908は、CPU901が実行するプログラムや各種データ及び外部から取得した各種のデータ等を格納する。上記ストレージ装置908は、例えば、記憶部50を形成し得る。
ドライブ909は、記憶媒体用リーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。ドライブ909は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記録されている情報を読み出して、RAM903に出力する。また、ドライブ909は、リムーバブル記憶媒体に情報を書き込むこともできる。
接続ポート911は、外部機器と接続されるインタフェースであって、例えばUSB(Universal Serial Bus)などによりデータ伝送可能な外部機器との接続口である。
通信装置913は、例えば、ネットワーク920に接続するための通信デバイス等で形成された通信インタフェースである。通信装置913は、例えば、有線若しくは無線LAN(Local Area Network)、LTE(Long Term Evolution)、Bluetooth(登録商標)又はWUSB(Wireless USB)用の通信カード等である。また、通信装置913は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ又は各種通信用のモデム等であってもよい。この通信装置913は、例えば、インターネットや他の通信機器との間で、例えばTCP/IP等の所定のプロトコルに則して信号等を送受信することができる。
センサ915は、例えば、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサ、測距センサ、力センサ等の各種のセンサである。センサ915は、情報処理装置900の姿勢、移動速度等、情報処理装置900自身の状態に関する情報や、情報処理装置900の周辺の明るさや騒音等、情報処理装置900の周辺環境に関する情報を取得する。また、センサ915は、GPS信号を受信して装置の緯度、経度及び高度を測定するGPSセンサを含んでもよい。
なお、ネットワーク920は、ネットワーク920に接続されている装置から送信される情報の有線、または無線の伝送路である。例えば、ネットワーク920は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、ネットワーク920は、IP-VPN(Internet Protocol-Virtual Private Network)などの専用回線網を含んでもよい。
以上、本開示の実施形態に係る情報処理装置900の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて実現されていてもよいし、各構成要素の機能に特化したハードウェアにより実現されていてもよい。従って、本開示の実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
なお、上述のような本開示の実施形態に係る情報処理装置900の各機能を実現するためのコンピュータプログラムを作製し、PC等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
<<5.むすび>>
以上説明したように、本開示の実施形態によれば、撮像が行われる視点の姿勢に関するパラメータの精度をより高精度に得ることが可能である。
以上説明したように、本開示の実施形態によれば、撮像が行われる視点の姿勢に関するパラメータの精度をより高精度に得ることが可能である。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
例えば、上記実施形態では、視点間の姿勢に関するパラメータを補正する例を説明したが、補正された視点間の姿勢に関するパラメータを用いて、同一の座標系(例えばいわゆる世界座標系)における各視点の姿勢に関するパラメータを補正することも可能である。
また、上記実施形態における各ステップは、必ずしもフローチャート図として記載された順序に沿って時系列に処理される必要はない。例えば、上記実施形態の処理における各ステップは、フローチャート図として記載した順序と異なる順序で処理されても、並列的に処理されてもよい。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する平面推定部と、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する補正部と、
を備える情報処理装置。
(2)
前記補正部は、前記第1のデプスマップと、前記平面に基づいて生成される第2のデプスマップとの比較を行う、前記(1)に記載の情報処理装置。
(3)
前記パラメータは、前記複数の視点の間のピッチ角度、またはヨー角度を含む、前記(2)に記載の情報処理装置。
(4)
前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの比較に基づいて算出される第1の評価値を用いて前記ピッチ角度を補正し、補正されたピッチ角度を取得する、前記(3)に記載の情報処理装置。
(5)
前記補正部は、水平中心線と垂直中心線とで4分割された領域ごとに、前記第1のデプスマップと、前記第2のデプスマップとを比較して前記第1の評価値を算出する、前記(4)に記載の情報処理装置。
(6)
前記補正部は、前記領域ごとに前記第1のデプスマップと前記第2のデプスマップとの差分の和を算出し、前記差分の和に基づいて前記第1の評価値を算出する、前記(5)に記載の情報処理装置。
(7)
前記第1の評価値は、前記水平中心線と前記垂直中心線とで4分割された4つの領域のうち、上下に位置する領域ごとに算出される前記差分の和の差分の絶対値に基づいて算出される、前記(6)に記載の情報処理装置。
(8)
前記補正部は、前記補正されたピッチ角度として、前記第1の評価値が所定の条件を満たすピッチ角度を特定する、前記(4)~(7)のいずれか一項に記載の情報処理装置。
(9)
前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの比較に基づいて算出される第2の評価値を用いて前記ヨー角度を補正し、補正されたヨー角度を取得する、前記(3)~(8)のいずれか一項に記載の情報処理装置。
(10)
前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの差分の分散に基づいて、前記第2の評価値を算出する、前記(9)に記載の情報処理装置。
(11)
前記補正部は、前記補正されたヨー角度として、前記第2の評価値が所定の条件を満たすヨー角度を特定する、前記(10)に記載の情報処理装置。
(12)
前記第1のデプスマップは、前記複数の撮像画像に基づくステレオマッチングにより生成され、
前記ステレオマッチングにおける対応点の探索方向は、水平方向を含む、前記(4)~(11)のいずれか一項に記載の情報処理装置。
(13)
前記補正部は、前記ピッチ角度を補正した後に前記ヨー角度を補正する、前記(12)に記載の情報処理装置。
(14)
前記第2のデプスマップは、前記平面上の3次元点群を投影して生成される、前記(2)~(13)のいずれか一項に記載の情報処理装置。
(15)
前記補正部は、前記第1のデプスマップと前記第2のデプスマップに基づいて処理対象領域を設定し、前記処理対象領域における前記第1のデプスマップと前記平面との比較に基づいて、前記パラメータを補正する、前記(2)~(14)のいずれか一項に記載の情報処理装置。
(16)
前記補正部は、前記第1のデプスマップと前記第2のデプスマップとの差分の絶対値が所定の閾値よりも大きい領域に基づいて、前記処理対象領域を設定する、前記(15)に記載の情報処理装置。
(17)
前記処理対象領域は、上下対称である、前記(16)に記載の情報処理装置。
(18)
プロセッサが、
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定することと、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正することと、
を含む、情報処理方法。
(19)
コンピュータに、
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する機能と、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する機能と、
を実現させるための、プログラム。
(1)
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する平面推定部と、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する補正部と、
を備える情報処理装置。
(2)
前記補正部は、前記第1のデプスマップと、前記平面に基づいて生成される第2のデプスマップとの比較を行う、前記(1)に記載の情報処理装置。
(3)
前記パラメータは、前記複数の視点の間のピッチ角度、またはヨー角度を含む、前記(2)に記載の情報処理装置。
(4)
前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの比較に基づいて算出される第1の評価値を用いて前記ピッチ角度を補正し、補正されたピッチ角度を取得する、前記(3)に記載の情報処理装置。
(5)
前記補正部は、水平中心線と垂直中心線とで4分割された領域ごとに、前記第1のデプスマップと、前記第2のデプスマップとを比較して前記第1の評価値を算出する、前記(4)に記載の情報処理装置。
(6)
前記補正部は、前記領域ごとに前記第1のデプスマップと前記第2のデプスマップとの差分の和を算出し、前記差分の和に基づいて前記第1の評価値を算出する、前記(5)に記載の情報処理装置。
(7)
前記第1の評価値は、前記水平中心線と前記垂直中心線とで4分割された4つの領域のうち、上下に位置する領域ごとに算出される前記差分の和の差分の絶対値に基づいて算出される、前記(6)に記載の情報処理装置。
(8)
前記補正部は、前記補正されたピッチ角度として、前記第1の評価値が所定の条件を満たすピッチ角度を特定する、前記(4)~(7)のいずれか一項に記載の情報処理装置。
(9)
前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの比較に基づいて算出される第2の評価値を用いて前記ヨー角度を補正し、補正されたヨー角度を取得する、前記(3)~(8)のいずれか一項に記載の情報処理装置。
(10)
前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの差分の分散に基づいて、前記第2の評価値を算出する、前記(9)に記載の情報処理装置。
(11)
前記補正部は、前記補正されたヨー角度として、前記第2の評価値が所定の条件を満たすヨー角度を特定する、前記(10)に記載の情報処理装置。
(12)
前記第1のデプスマップは、前記複数の撮像画像に基づくステレオマッチングにより生成され、
前記ステレオマッチングにおける対応点の探索方向は、水平方向を含む、前記(4)~(11)のいずれか一項に記載の情報処理装置。
(13)
前記補正部は、前記ピッチ角度を補正した後に前記ヨー角度を補正する、前記(12)に記載の情報処理装置。
(14)
前記第2のデプスマップは、前記平面上の3次元点群を投影して生成される、前記(2)~(13)のいずれか一項に記載の情報処理装置。
(15)
前記補正部は、前記第1のデプスマップと前記第2のデプスマップに基づいて処理対象領域を設定し、前記処理対象領域における前記第1のデプスマップと前記平面との比較に基づいて、前記パラメータを補正する、前記(2)~(14)のいずれか一項に記載の情報処理装置。
(16)
前記補正部は、前記第1のデプスマップと前記第2のデプスマップとの差分の絶対値が所定の閾値よりも大きい領域に基づいて、前記処理対象領域を設定する、前記(15)に記載の情報処理装置。
(17)
前記処理対象領域は、上下対称である、前記(16)に記載の情報処理装置。
(18)
プロセッサが、
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定することと、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正することと、
を含む、情報処理方法。
(19)
コンピュータに、
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する機能と、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する機能と、
を実現させるための、プログラム。
1、2 情報処理装置
7 ステレオカメラ
7L 左カメラ
7R 右カメラ
8 プロジェクタ
9 テーブル
10 制御部
11 平行化処理部
12 デプスマップ生成部
13 平面推定部
15 補正部
17 表示制御部
19 プロジェクタ制御部
30 操作部
40 表示部
50 記憶部
60 インタフェース部
152 比較部
156 補正制御部
254 処理対象領域設定部
256 補正制御部
7 ステレオカメラ
7L 左カメラ
7R 右カメラ
8 プロジェクタ
9 テーブル
10 制御部
11 平行化処理部
12 デプスマップ生成部
13 平面推定部
15 補正部
17 表示制御部
19 プロジェクタ制御部
30 操作部
40 表示部
50 記憶部
60 インタフェース部
152 比較部
156 補正制御部
254 処理対象領域設定部
256 補正制御部
Claims (19)
- 複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する平面推定部と、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する補正部と、
を備える情報処理装置。 - 前記補正部は、前記第1のデプスマップと、前記平面に基づいて生成される第2のデプスマップとの比較を行う、請求項1に記載の情報処理装置。
- 前記パラメータは、前記複数の視点の間のピッチ角度、またはヨー角度を含む、請求項2に記載の情報処理装置。
- 前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの比較に基づいて算出される第1の評価値を用いて前記ピッチ角度を補正し、補正されたピッチ角度を取得する、請求項3に記載の情報処理装置。
- 前記補正部は、水平中心線と垂直中心線とで4分割された領域ごとに、前記第1のデプスマップと、前記第2のデプスマップとを比較して前記第1の評価値を算出する、請求項4に記載の情報処理装置。
- 前記補正部は、前記領域ごとに前記第1のデプスマップと前記第2のデプスマップとの差分の和を算出し、前記差分の和に基づいて前記第1の評価値を算出する、請求項5に記載の情報処理装置。
- 前記第1の評価値は、前記水平中心線と前記垂直中心線とで4分割された4つの領域のうち、上下に位置する領域ごとに算出される前記差分の和の差分の絶対値に基づいて算出される、請求項6に記載の情報処理装置。
- 前記補正部は、前記補正されたピッチ角度として、前記第1の評価値が所定の条件を満たすピッチ角度を特定する、請求項4に記載の情報処理装置。
- 前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの比較に基づいて算出される第2の評価値を用いて前記ヨー角度を補正し、補正されたヨー角度を取得する、請求項3に記載の情報処理装置。
- 前記補正部は、前記第1のデプスマップと、前記第2のデプスマップとの差分の分散に基づいて、前記第2の評価値を算出する、請求項9に記載の情報処理装置。
- 前記補正部は、前記補正されたヨー角度として、前記第2の評価値が所定の条件を満たすヨー角度を特定する、請求項10に記載の情報処理装置。
- 前記第1のデプスマップは、前記複数の撮像画像に基づくステレオマッチングにより生成され、
前記ステレオマッチングにおける対応点の探索方向は、水平方向を含む、請求項4に記載の情報処理装置。 - 前記補正部は、前記ピッチ角度を補正した後に前記ヨー角度を補正する、請求項12に記載の情報処理装置。
- 前記第2のデプスマップは、前記平面上の3次元点群を投影して生成される、請求項2に記載の情報処理装置。
- 前記補正部は、前記第1のデプスマップと前記第2のデプスマップに基づいて処理対象領域を設定し、前記処理対象領域における前記第1のデプスマップと前記平面との比較に基づいて、前記パラメータを補正する、請求項2に記載の情報処理装置。
- 前記補正部は、前記第1のデプスマップと前記第2のデプスマップとの差分の絶対値が所定の閾値よりも大きい領域に基づいて、前記処理対象領域を設定する、請求項15に記載の情報処理装置。
- 前記処理対象領域は、上下対称である、請求項16に記載の情報処理装置。
- プロセッサが、
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定することと、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正することと、
を含む、情報処理方法。 - コンピュータに、
複数の視点での撮像により取得される複数の撮像画像に基づいて得られる第1のデプスマップに基づいて、平面を推定する機能と、
前記第1のデプスマップと、前記平面との比較に基づいて、前記複数の視点の姿勢に関するパラメータを補正する機能と、
を実現させるための、プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18870062.9A EP3702725A4 (en) | 2017-10-23 | 2018-07-24 | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND PROGRAM |
US16/755,975 US11240484B2 (en) | 2017-10-23 | 2018-07-24 | Information processing apparatus and information processing method for stereo imaging based on corrected parameters |
CN201880063856.XA CN111183331B (zh) | 2017-10-23 | 2018-07-24 | 信息处理设备、信息处理方法和程序 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-204265 | 2017-10-23 | ||
JP2017204265A JP2019078582A (ja) | 2017-10-23 | 2017-10-23 | 情報処理装置、情報処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019082460A1 true WO2019082460A1 (ja) | 2019-05-02 |
Family
ID=66246860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/027766 WO2019082460A1 (ja) | 2017-10-23 | 2018-07-24 | 情報処理装置、情報処理方法、及びプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11240484B2 (ja) |
EP (1) | EP3702725A4 (ja) |
JP (1) | JP2019078582A (ja) |
CN (1) | CN111183331B (ja) |
WO (1) | WO2019082460A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4007265A4 (en) * | 2019-07-31 | 2024-01-10 | Canon Kabushiki Kaisha | IMAGE PROCESSING DEVICE, IMAGE PROCESSING METHOD, PROGRAM AND STORAGE MEDIUM |
JP7504688B2 (ja) | 2019-07-31 | 2024-06-24 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002027507A (ja) | 2000-07-13 | 2002-01-25 | Sony Corp | カメラ・キャリブレーション装置及び方法、並びに、記憶媒体 |
JP3792832B2 (ja) * | 1997-05-07 | 2006-07-05 | 富士重工業株式会社 | ステレオカメラの調整装置 |
JP2009204532A (ja) * | 2008-02-28 | 2009-09-10 | Aisin Seiki Co Ltd | 距離画像センサの校正装置及び校正方法 |
JP2013224920A (ja) * | 2012-03-21 | 2013-10-31 | Ricoh Co Ltd | 距離計測装置及び車両 |
JP2014010100A (ja) * | 2012-07-02 | 2014-01-20 | Ricoh Co Ltd | 画像処理装置及び方法、並びに撮像装置 |
JP2014138332A (ja) * | 2013-01-17 | 2014-07-28 | Ricoh Co Ltd | 画像処理装置及びプログラム |
JP2015135317A (ja) * | 2013-12-19 | 2015-07-27 | 株式会社リコー | 画像処理装置、システム、画像処理方法およびプログラム |
WO2016129355A1 (ja) * | 2015-02-13 | 2016-08-18 | 株式会社リコー | 計測用具、校正方法、校正装置及びプログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7068815B2 (en) * | 2003-06-13 | 2006-06-27 | Sarnoff Corporation | Method and apparatus for ground detection and removal in vision systems |
US9571810B2 (en) * | 2011-12-23 | 2017-02-14 | Mediatek Inc. | Method and apparatus of determining perspective model for depth map generation by utilizing region-based analysis and/or temporal smoothing |
KR101909544B1 (ko) | 2012-01-19 | 2018-10-18 | 삼성전자주식회사 | 평면 검출 장치 및 방법 |
CN102982557B (zh) * | 2012-11-06 | 2015-03-25 | 桂林电子科技大学 | 基于深度相机的空间手势姿态指令处理方法 |
US9589328B2 (en) * | 2012-11-09 | 2017-03-07 | Nikon Corporation | Globally dominant point spread function estimation |
DE102014201271A1 (de) | 2014-01-24 | 2015-07-30 | Robert Bosch Gmbh | Verfahren und Steuergerät zum Erkennen einer Veränderung eines relativen Gierwinkels innerhalb eines Stereo-Video-Systems für ein Fahrzeug |
US10861177B2 (en) * | 2015-11-11 | 2020-12-08 | Zhejiang Dahua Technology Co., Ltd. | Methods and systems for binocular stereo vision |
US9946264B2 (en) * | 2016-03-22 | 2018-04-17 | Sharp Laboratories Of America, Inc. | Autonomous navigation using visual odometry |
CN106296812B (zh) * | 2016-08-18 | 2019-04-02 | 宁波傲视智绘光电科技有限公司 | 同步定位与建图方法 |
-
2017
- 2017-10-23 JP JP2017204265A patent/JP2019078582A/ja active Pending
-
2018
- 2018-07-24 CN CN201880063856.XA patent/CN111183331B/zh not_active Expired - Fee Related
- 2018-07-24 EP EP18870062.9A patent/EP3702725A4/en not_active Withdrawn
- 2018-07-24 WO PCT/JP2018/027766 patent/WO2019082460A1/ja unknown
- 2018-07-24 US US16/755,975 patent/US11240484B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3792832B2 (ja) * | 1997-05-07 | 2006-07-05 | 富士重工業株式会社 | ステレオカメラの調整装置 |
JP2002027507A (ja) | 2000-07-13 | 2002-01-25 | Sony Corp | カメラ・キャリブレーション装置及び方法、並びに、記憶媒体 |
JP2009204532A (ja) * | 2008-02-28 | 2009-09-10 | Aisin Seiki Co Ltd | 距離画像センサの校正装置及び校正方法 |
JP2013224920A (ja) * | 2012-03-21 | 2013-10-31 | Ricoh Co Ltd | 距離計測装置及び車両 |
JP2014010100A (ja) * | 2012-07-02 | 2014-01-20 | Ricoh Co Ltd | 画像処理装置及び方法、並びに撮像装置 |
JP2014138332A (ja) * | 2013-01-17 | 2014-07-28 | Ricoh Co Ltd | 画像処理装置及びプログラム |
JP2015135317A (ja) * | 2013-12-19 | 2015-07-27 | 株式会社リコー | 画像処理装置、システム、画像処理方法およびプログラム |
WO2016129355A1 (ja) * | 2015-02-13 | 2016-08-18 | 株式会社リコー | 計測用具、校正方法、校正装置及びプログラム |
Non-Patent Citations (1)
Title |
---|
See also references of EP3702725A4 |
Also Published As
Publication number | Publication date |
---|---|
CN111183331A (zh) | 2020-05-19 |
US11240484B2 (en) | 2022-02-01 |
US20200314410A1 (en) | 2020-10-01 |
CN111183331B (zh) | 2022-06-14 |
JP2019078582A (ja) | 2019-05-23 |
EP3702725A1 (en) | 2020-09-02 |
EP3702725A4 (en) | 2020-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4752918B2 (ja) | 画像処理装置、画像照合方法、および、プログラム | |
CN108352056A (zh) | 用于校正错误深度信息的系统和方法 | |
JPWO2018235163A1 (ja) | キャリブレーション装置、キャリブレーション用チャート、チャートパターン生成装置、およびキャリブレーション方法 | |
JP6450982B2 (ja) | 構造化ステレオ | |
KR20110089825A (ko) | 촬영 장치, 컴퓨터 판독 가능한 기록 매체, 및 제어 방법 | |
WO2020119467A1 (zh) | 高精度稠密深度图像的生成方法和装置 | |
JP5644461B2 (ja) | 画像処理装置及びプログラム | |
US11488354B2 (en) | Information processing apparatus and information processing method | |
WO2018083910A1 (ja) | 情報処理装置、情報処理方法、及び記録媒体 | |
WO2019082460A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN114125411B (zh) | 投影设备校正方法、装置、存储介质以及投影设备 | |
CN115471731B (zh) | 图像处理方法、装置、存储介质及设备 | |
JP2020038101A (ja) | 画像処理装置、運転支援システム、画像処理方法及びプログラム | |
JP2010205095A (ja) | 3次元物体認識装置、並びに3次元物体認識プログラム及びこれが記録されたコンピュータ読み取り可能な記録媒体 | |
JP4394487B2 (ja) | ステレオ画像処理装置 | |
TWI571099B (zh) | 深度估測裝置及方法 | |
CN116894907B (zh) | 一种rgbd相机纹理贴图优化方法及系统 | |
CN114140771A (zh) | 一种图像深度数据集自动标注方法及系统 | |
JP2009302731A (ja) | 画像処理装置、画像処理プログラム、画像処理方法、および電子機器 | |
US20220156974A1 (en) | Information processing device, information processing method, recording medium, and image capturing apparatus | |
US20230360322A1 (en) | System and method for extracting an object of interest from a 3d point cloud | |
JP6640876B2 (ja) | 作業支援装置、作業支援方法、作業支援プログラム、及び記録媒体 | |
WO2024101429A1 (ja) | カメラパラメータ算出装置、カメラパラメータ算出方法、カメラパラメータ算出プログラム | |
CN103945211A (zh) | 一种通过单视角彩色图像序列生成深度图序列的方法 | |
CN115908511A (zh) | 用于图像配准的方法和装置 |
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: 18870062 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2018870062 Country of ref document: EP Effective date: 20200525 |