WO2014002521A1 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
WO2014002521A1
WO2014002521A1 PCT/JP2013/053106 JP2013053106W WO2014002521A1 WO 2014002521 A1 WO2014002521 A1 WO 2014002521A1 JP 2013053106 W JP2013053106 W JP 2013053106W WO 2014002521 A1 WO2014002521 A1 WO 2014002521A1
Authority
WO
WIPO (PCT)
Prior art keywords
epipole
coordinates
coordinate
unit
basic matrix
Prior art date
Application number
PCT/JP2013/053106
Other languages
English (en)
French (fr)
Inventor
都築 俊宏
Original Assignee
オリンパス株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オリンパス株式会社 filed Critical オリンパス株式会社
Priority to CN201380034425.8A priority Critical patent/CN104471612B/zh
Publication of WO2014002521A1 publication Critical patent/WO2014002521A1/ja
Priority to US14/574,698 priority patent/US9183634B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images

Definitions

  • the present invention relates to an image processing apparatus and an image processing method.
  • Japanese Patent Application Laid-Open No. 2007-256029 discloses a technique related to determining the most probable position and orientation change by repeatedly performing the calculation from the basic matrix to the estimation of the camera position and orientation change. Is disclosed.
  • the present invention provides an image processing for determining a base matrix that is robust against a miscorrespondence between corresponding points and a dynamic subject and that is robust against errors resulting from the distribution of corresponding points being close to a plane.
  • An object is to provide an apparatus and an image processing method.
  • an image processing apparatus acquires an image acquisition unit that acquires a plurality of images and a plurality of first corresponding points that correspond to each other between the plurality of images.
  • a corresponding point acquisition unit a first basic matrix estimation unit that calculates a plurality of first basic matrices based on the plurality of first corresponding points, and the plurality of first basic matrices for at least one image
  • An epipole coordinate deriving unit that calculates a plurality of first epipole coordinates corresponding to each of the first epipole coordinates, and using a predetermined statistical method among the plurality of first epipole coordinates,
  • An epipole coordinate determining unit that determines the coordinates; and a basic matrix determining unit that determines the first basic matrix corresponding to the second epipole coordinates as a second basic matrix.
  • an imaging apparatus includes: an imaging unit that captures an image; an image acquisition unit that acquires a plurality of the images captured at different times; and a plurality of the images
  • a corresponding point acquisition unit that acquires a plurality of first corresponding points corresponding to each other
  • a first basic matrix estimation unit that calculates a plurality of first basic matrices based on the plurality of first corresponding points
  • at least An epipole coordinate deriving unit that calculates a plurality of first epipole coordinates corresponding to each of the plurality of first basic matrices for one image, and a predetermined statistical method among the plurality of first epipole coordinates
  • a foundation matrix determination unit on the basis of the second fundamental matrix, characterized by comprising a correction unit for correcting a blur that is present between the plurality of images.
  • an image processing method acquires a plurality of images, and acquires a plurality of first corresponding points corresponding to each other between the plurality of images. Calculating a plurality of first basic matrices based on the plurality of first corresponding points, and a plurality of first epipoles corresponding to each of the plurality of first basic matrices for at least one image Calculating a coordinate, determining one epipole coordinate as a second epipole coordinate using a predetermined statistical method among the plurality of first epipole coordinates, and determining the second epipole coordinate as Determining the corresponding first base matrix as a second base matrix.
  • a computer-readable recording medium acquires a plurality of images and a plurality of first corresponding points corresponding to each other between the plurality of images. Calculating a plurality of first basic matrices based on the plurality of first corresponding points, and for at least one image, a plurality of first matrixes corresponding to each of the plurality of first basic matrices. Calculating one epipole coordinate, determining one epipole coordinate as a second epipole coordinate using a predetermined statistical method among the plurality of first epipole coordinates, An image processing program for causing the computer to execute the determination of the first basic matrix corresponding to the epipole coordinates as the second basic matrix is recorded.
  • the correspondence between the corresponding points is robust against the dynamic subject and the corresponding point distribution is close to a plane. It is possible to provide an image processing apparatus and an image processing method for determining a basic matrix that is robust against an error caused by.
  • FIG. 1 is a block diagram illustrating a configuration example of an image processing apparatus according to the first embodiment.
  • FIG. 2 is a flowchart illustrating an example of processing performed by the image processing apparatus according to the first embodiment.
  • FIG. 3 is a flowchart illustrating an example of a basic matrix determination process according to the first embodiment.
  • FIG. 4 is a diagram for explaining the epipolar geometry.
  • FIG. 5 is a flowchart illustrating an example of a basic matrix estimation process according to the first embodiment.
  • FIG. 6 is a flowchart illustrating an example of the inlier number calculation process according to the first embodiment.
  • FIG. 7 is a block diagram illustrating a configuration example of the epipole coordinate determination unit according to the first embodiment.
  • FIG. 8 is a flowchart showing an example of the optimal epipole selection process according to the first embodiment.
  • FIG. 9 is a block diagram illustrating a configuration example of the epipole coordinate determination unit according to the second embodiment.
  • FIG. 10 is a flowchart illustrating an example of the optimal epipole selection process according to the second embodiment.
  • FIG. 11 is a diagram illustrating an example of a histogram according to the second embodiment.
  • FIG. 12 is a block diagram illustrating a configuration example of an image processing apparatus according to the third embodiment.
  • FIG. 13 is a flowchart illustrating an example of processing performed by the image processing apparatus according to the third embodiment.
  • FIG. 14 is a block diagram illustrating a configuration example of a digital camera according to the fourth embodiment.
  • FIG. 1 A configuration example of an image processing apparatus 10 according to the present embodiment is shown in FIG.
  • the image processing apparatus 10 includes an image processing unit 100, an image acquisition unit 12, a storage unit 14, and a control unit 16.
  • the image processing apparatus 10 calculates and outputs a basic matrix representing the relationship between images for a plurality of input images.
  • the image processing unit 100 plays a central role in the image processing apparatus 10 and calculates a basic matrix related to a plurality of images input as described later.
  • the image acquisition unit 12 acquires image data to be processed from the outside of the image processing apparatus 10 or the storage unit 14 and inputs the acquired image data to the image processing unit 100.
  • the storage unit 14 stores image data to be processed, programs related to various calculations, calculation results, and the like.
  • the control unit 16 controls the operation of the image processing apparatus 10.
  • the image processing unit 100 includes a corresponding point acquisition unit 110, a basic matrix estimation unit 120, an epipole coordinate derivation unit 130, an epipole coordinate determination unit 140, and a basic matrix determination unit 150.
  • the corresponding point acquisition unit 110 extracts a plurality of common points included in the image from the plurality of images input from the image acquisition unit 12, and the correspondence between the images for the plurality of points. To get. The point at which this correspondence is obtained is output as a corresponding point.
  • the basic matrix estimation unit 120 is, for example, a first basic matrix that is a basic matrix that represents a relationship between images using a robust technique such as RANSAC (RANdom Sampl Consensus). A plurality is calculated.
  • the epipole coordinate deriving unit 130 calculates the epipole coordinates between images corresponding to the basic matrix based on each first basic matrix calculated by the basic matrix estimating unit 120.
  • the epipole coordinate determination unit 140 selects the most probable epipole from the plurality of epipole coordinates calculated by the epipole coordinate deriving unit 130.
  • the base matrix determination unit 150 determines the second base matrix using the first base matrix corresponding to the epipole selected by the epipole coordinate determination unit 140 as the optimal base matrix.
  • step S ⁇ b> 101 the image acquisition unit 12 acquires, for example, two images that are targets of image processing by the image processing apparatus 10.
  • the image acquisition unit 12 may acquire an image from the outside of the image processing apparatus 10 or may acquire an image stored in the storage unit 14.
  • the acquired image is input to the image processing unit 100.
  • step S102 the corresponding point acquisition unit 110 in the image processing unit 100 performs a corresponding point acquisition process between images. That is, the corresponding point acquisition unit 110 acquires the positional relationship between the points corresponding to each other in the two images input from the image acquisition unit 12.
  • This corresponding point acquisition processing may be feature-based matching such as feature point tracking or region-based matching such as block matching.
  • the point at which the correspondence relationship is obtained by the corresponding point acquisition unit 110 will be referred to as a corresponding point. Note that thousands of corresponding points are usually obtained by the corresponding point acquisition processing.
  • step S103 the image processing unit 100 performs basic matrix determination processing based on the corresponding points acquired by the corresponding point acquiring unit 110.
  • the basic matrix determination process will be described with reference to the flowchart shown in FIG.
  • steps S201 to S204 the image processing unit 100 repeatedly calculates a basic matrix and an epipole coordinate, which will be described later, N times, which is a predetermined number of times, based on the epipolar geometry. That is, a combination of N basic matrices and epipole coordinates is calculated.
  • first epipole e1 intersection of the first lens principal point O1 and the second lens principal point O2 and the first image plane I1
  • second image plane I2 The intersection point is referred to as a second epipole e2.
  • an intersection line between the plane including the point P, the first lens principal point O1, and the second lens principal point O2 and the first image plane I1 is referred to as a first epipolar line L1, and the second image.
  • a line of intersection with the plane I2 is referred to as a second epipolar line L2.
  • the epipolar equation is a basic equation in epipolar geometry. Assuming that m1 and m2 are vectors in which the coordinates p1 and the coordinates p2 are displayed in homogeneous coordinates, m1 and m2 are expressed by the following equation (1).
  • the above equation (2) is called an epipolar equation, and the matrix F is called a basic matrix.
  • the basic matrix F has nine components, the degree of freedom is 7 because of the two points of scale indefiniteness and the basic matrix F being a regular matrix.
  • the basic matrix is determined, for example, by solving equation (2) based on eight or more corresponding points in a known eight-point algorithm. Based on the basic matrix F, a basic matrix is obtained, and from this basic matrix, a rotation matrix R representing a difference in posture and position between the first camera and the second camera and a translation vector t are obtained.
  • step S201 the basic matrix estimation unit 120 of the image processing unit 100 performs basic matrix estimation processing.
  • This process is performed by a method using, for example, RANSAC (RANdom Sampl Consensus).
  • RANSAC Random Sampl Consensus
  • the basic matrix estimation process using RANSAC will be described with reference to the flowchart shown in FIG.
  • step S ⁇ b> 301 the basic matrix estimation unit 120 randomly extracts a plurality of corresponding points from the corresponding points acquired by the corresponding point acquisition process by the corresponding point acquisition unit 110. For example, in this embodiment, eight corresponding points are extracted.
  • step S302 the basic matrix estimation unit 120 calculates the above-described basic matrix F using, for example, a known eight-point algorithm based on the extracted eight corresponding points.
  • the basic matrix calculated here will be referred to as a temporary basic matrix.
  • step S303 the basic matrix estimation unit 120 performs inlier number calculation processing.
  • the inlier count calculation process epipolar geometry related to two images is considered.
  • the corresponding point is defined as an inlier (high evaluation). To do.
  • the inlier number calculation process the number of corresponding points that are inliers among a plurality of corresponding points is obtained.
  • step S401 the basic matrix estimation unit 120 sets a variable I indicating the number of inliers to 8. This is because, in the present embodiment, the eight corresponding points used for calculating the temporary basic matrix are counted as inliers.
  • step S402 the basic matrix estimation unit 120 calculates the distance between the epipolar line obtained from the temporary basic matrix and the corresponding corresponding point.
  • step S403 the basic matrix estimation unit 120 determines whether the distance from the epipolar line calculated in step S402 is less than (or may be less than) a predetermined threshold. When it is determined that the distance is less than the threshold value, in step S404, the basic matrix estimation unit 120 increments the variable I representing the number of inliers by one. Of the corresponding points, a corresponding point whose distance from the epipolar line is less than a predetermined threshold is referred to as an inlier corresponding point. Thereafter, the process proceeds to step S405. When it is determined in step S403 that the distance is equal to or greater than the predetermined threshold, the process proceeds to step S405.
  • step S405 the basic matrix estimation unit 120 determines whether or not the processing in steps S402 to S404 has been performed for all corresponding points. When it is determined that the process has not been performed, the process returns to step S402, and the same process is performed for the next corresponding point. When it is determined in step S405 that the process has been performed, the process returns to the basic matrix estimation process using the variable I as a return value.
  • a temporary base matrix having a larger number of inlier corresponding points is a base matrix that appropriately represents the relationship between two images.
  • step S304 the basic matrix estimation unit 120 determines whether the processes in steps S301 to S303 have been performed a predetermined number of times. If not, the process returns to step S301. When it is determined in step S304 that the process has been performed a predetermined number of times, the process proceeds to step S305. In step S305, the basic matrix estimation unit 120 determines a temporary basic matrix having the largest number I of inlier corresponding points as the first basic matrix.
  • the number of provisional basic matrices for calculating the number of inlier corresponding points determined in step S304 is a predetermined number.
  • the present invention is not limited to this, and the number of inlier corresponding points may be calculated for the temporary base matrix until a predetermined end condition is satisfied.
  • the process returns to the basic matrix determination process using the first basic matrix as a return value.
  • the basic matrix estimation unit 120 stores the first basic matrix obtained by the basic matrix estimation process in the storage unit.
  • the epipole coordinate deriving unit 130 calculates epipole coordinates. The calculation of epipole coordinates is performed according to the following procedure.
  • e 1 (e1x, e1y, 1) T
  • e 2 (e2x, e2y, 1) T.
  • e 1 and e 2 are determined by solving the simultaneous equations of the formula (3).
  • the singular value decomposition of the matrix is performed as in the following formula (4).
  • U 1 and U 2 are called left orthogonal matrices
  • V 1 and V 2 are called right orthogonal matrices
  • W 1 and W 2 are called singular value matrices or diagonal matrices.
  • e 1 and e 2 are obtained by the following equation (5).
  • step S ⁇ b> 204 the epipole coordinate deriving unit 130 stores the calculated epipole coordinates in the storage unit 14 in association with the basic matrix using the coordinates.
  • step S205 the epipole coordinate determination unit 140 performs an optimal epipole selection process. That is, the epipole coordinate determining unit 140 determines one optimal epipole for each image from the N or 2N epipole coordinates calculated by the epipole coordinate deriving unit 130 using a statistical method.
  • the N epipole coordinates mean the epipole coordinates corresponding to each first basic matrix in one of the two images, and the 2N epipole coordinates are both of the two images.
  • the epipole coordinate determination unit 140 includes a median value calculation unit 142, a distance calculation unit 146, and an epipole selection unit 148, as shown in FIG.
  • step S501 the median value calculation unit 142 in the epipole coordinate determination unit 140 reads out the coordinates of each epipole stored in the storage unit 14 by repeatedly performing the processing from step S201 to step S204, and coordinates of these epipoles. Determine the median of.
  • the distance calculation unit 146 of the epipole coordinate determination unit 140 calculates the distance dEpi1 between the median value calculated by the median value calculation unit 142 and the coordinates of each of the N or 2N epipoles in step S501.
  • the distance dEpi1 is calculated as follows, for example.
  • the median value of the epipole coordinates of the first image plane I1 is (Epi1_X_Mid, Epi1_Y_Mid)
  • the median value of the epipole coordinates of the second image plane I2 is (Epi2_X_Mid, Epi2_Y_Mid).
  • the coordinates of the i-th first epipole e1 determined according to the first basic matrix are (Epi1_X (i), Epi1_Y (i)), and the coordinates of the second epipole e2 are (Epi2_X (i), Epi2_Y). (I)).
  • the distance dEpi1 is obtained by the following formula (6), for example.
  • step S503 the epipole selection unit 148 in the epipole coordinate determination unit 140 selects the epipole coordinate having the smallest distance dEpi1 calculated by the distance calculation unit 146 as the optimal epipole coordinate.
  • the process returns to the basic matrix determination process using the selected optimal epipole coordinates as a return value.
  • the optimal epipole is selected based on the median value of the epipole coordinates, but various statistical values such as an average value may be used without being limited to the median value. However, it is preferable to use a median value in order to suppress the influence of outliers and the like.
  • the base matrix determination unit 150 reads out the first base matrix corresponding to the optimal epipole selected by the optimal epipole selection process by the epipole coordinate determination unit 140 from the storage unit 14, and optimizes the first base matrix. Determine as the base matrix.
  • This optimal basic matrix will be referred to as a second basic matrix.
  • the image processing unit 100 outputs the determined second basic matrix as an optimal basic matrix for the input image. This basic matrix may be stored in the storage unit 14.
  • the image acquisition unit 12 functions as an image acquisition unit that acquires a plurality of images.
  • the corresponding point acquisition unit 110 functions as a corresponding point acquisition unit that acquires a plurality of first corresponding points corresponding to each other between the plurality of images.
  • the base matrix estimation unit 120 functions as a first base matrix estimation unit that calculates a plurality of the first base matrices based on the plurality of first corresponding points.
  • the epipole coordinate deriving unit 130 functions as an epipole coordinate deriving unit that calculates a plurality of first epipole coordinates corresponding to each of the plurality of first basic matrices for at least one image.
  • the epipole coordinate determination unit 140 functions as an epipole coordinate determination unit that determines one epipole coordinate as the second epipole coordinate using a predetermined statistical method among the plurality of first epipole coordinates.
  • the coordinates of the optimal epipole correspond to the second epipole coordinates.
  • the base matrix determination unit 150 functions as a base matrix determination unit that determines the first base matrix corresponding to the second epipole coordinates as a second base matrix.
  • a high-precision basic matrix can be output for the input image. More details are as follows.
  • a robust method such as RANSAC, for example, in the calculation of the first basic matrix, the error in the correspondence calculated in the corresponding point acquisition process in step S102 and the error derived from the moving subject are eliminated, and the robustness is increased. Is expected to improve.
  • RANSAC Radio Access to System for Mobile Communications
  • the effect of eliminating errors caused by a state close to degeneracy in the calculation of the basic matrix cannot be expected by RANSAC or the like.
  • robustness with respect to a planar subject is selected by selecting the optimal value of the basic matrix by iterative calculation using the coordinates of the epipole serving as an index representing the posture of the camera that acquired the image. Improvement is obtained.
  • the robustness against the miscorrespondence of the corresponding points and the dynamic subject is improved by a method such as RANSAC, and the robustness against the flatness of the subject is improved by the calculation using the epipole, so that the reliability is improved as a whole.
  • a very high basic matrix is calculated.
  • RANSAC is used to calculate the first basic matrix.
  • various robust estimation methods can be used. For example, methods derived from M estimation, least median method (Least Media of Square; LMedS), and RANSAC such as PROSAC may be used.
  • LMedS least Media of Square
  • PROSAC PROSAC
  • the present embodiment is adapted to the base matrix calculated by various methods and exhibits an effect.
  • steps S201 to S204 in the basic matrix determination process are repeated a predetermined N times.
  • the number of repetitions of the calculation may be increased in order to improve robustness.
  • the number of repetitions of this calculation may be determined based on at least one of imaging device information, scene discrimination information, motion vector information, and epipole coordinate distribution information, for example. By changing the number of repetitions based on these pieces of information, it can be expected to improve the accuracy of the calculation result.
  • the imaging device information is, for example, information of an imaging optical system used for imaging, and for example, focal length information can be used. That is, when a telephoto optical system having a long focal length is used, the depth included in the subject tends to be small with respect to the distance to the subject. For this reason, when the telephoto optical system is used, the subject is close to a flat surface, and the error of the calculated basic matrix tends to increase. Therefore, it is conceivable that the number of repeated calculations is relatively large when the focal length of the imaging optical system is long, and the number of repeated calculations is relatively small when the focal length is short.
  • the scene discrimination information is automatic scene discrimination information such as “landscape” and “person”. For example, when the scene is determined to be “landscape”, the depth tends to be small with respect to the distance to the subject, so that the subject is close to a plane and the error tends to increase. Therefore, it is conceivable to increase the number of repetitions relatively when the scene is “scenery”.
  • the motion vector information can be, for example, the distribution and area of corresponding points, and the distribution of calculated three-dimensional coordinates.
  • the distribution of the corresponding points is narrow, that is, when the area is small, or when the distribution of the three-dimensional coordinates is close to a plane, the error tends to increase. Therefore, in such a case, it is conceivable to relatively increase the number of repeated calculations.
  • the epipole coordinate distribution information can be, for example, calculated epipole distribution information.
  • the epipole distribution is wide, it is determined that the error of the basic matrix is large. Therefore, in such a case, it is conceivable to relatively increase the number of repeated calculations.
  • the optimum epipole is selected using the median value of the plurality of epipoles calculated according to the plurality of first basic matrices.
  • a two-dimensional histogram is created for the coordinates of the epipole, and the optimal epipole is selected based on the two-dimensional histogram.
  • the epipole coordinate determination unit 140 includes a histogram generation unit 144, a centroid position calculation unit 145, a distance calculation unit 146, and an epipole selection unit 148, as shown in FIG.
  • the optimum epipole selection process according to this embodiment will be described with reference to the flowchart shown in FIG.
  • step S601 the histogram generation unit 144 of the epipole coordinate determination unit 140 generates a two-dimensional histogram for the epipole coordinates obtained for each first basic matrix by the processing of the epipole coordinate derivation unit 130.
  • step S601 for example, a histogram as shown in FIG. 11 is generated.
  • the generation of this histogram is performed by the following procedure, for example. First, the center-of-gravity position and the standard deviation with respect to the N epipole coordinates are calculated in the X direction and the Y direction. Next, for the X direction and the Y direction, the center of the histogram and the bin width are determined based on the position of the center of gravity and the standard deviation. Next, voting is performed on N epipole coordinates to create a two-dimensional histogram.
  • step S602 the center-of-gravity position calculation unit 145 of the epipole coordinate determination unit 140 calculates the center-of-gravity position of the epipole coordinates in the region showing the mode value based on the histogram generated by the histogram generation unit 144 in step S601.
  • the center of gravity is determined by the following procedure, for example. First, an area indicating the mode value of the two-dimensional histogram is determined. Next, the center-of-gravity position of the epipole coordinates in the region showing the mode value is determined. Note that the calculation of the center-of-gravity position may include not only the area indicating the mode value but also the surrounding area.
  • the distance calculation unit 146 of the epipole coordinate determination unit 140 calculates a distance dEpi2 between the centroid position calculated by the centroid position calculation unit 145 in step S602 and the coordinates of each of the N or 2N epipoles.
  • the distance dEpi2 is calculated as follows, for example.
  • the epipole coordinate centroid of the first image is (Epi1_X_Ave, Epi1_Y_Ave), and the epipole coordinate centroid of the second image is (Epi2_X_Ave, Epi2_Y_Ave).
  • the coordinates of the i-th first epipole determined according to the first basic matrix are (Epi1_X (i), Epi1_Y (i)), and the coordinates of the second epipole are (Epi2_X (i), Epi2_Y (i )).
  • the distance dEpi2 is obtained by the following formula (7).
  • step S604 the epipole selection unit 148 of the epipole coordinate determination unit 140 selects the epipole coordinate having the smallest distance dEpi2 calculated by the distance calculation unit 146 in step S603 as the optimal epipole coordinate.
  • the process returns to the basic matrix determination process using the selected optimal epipole as a return value.
  • step S206 of the base matrix determination process the base matrix determination unit 150 reads out the first base matrix corresponding to the optimal epipole from the storage unit 14, and uses the first base matrix as the second base matrix that is the optimal base matrix. Determine as. Thereafter, the processing returns to the processing described with reference to FIG.
  • the image processing unit 100 outputs the determined second basic matrix as a basic matrix for the input image.
  • the image processing apparatus 10 according to the first embodiment and the second embodiment is an apparatus that outputs a basic matrix when a plurality of images are input.
  • the image processing apparatus 10 according to the present embodiment calculates a basic matrix when a plurality of images are input, and outputs three-dimensional coordinates corresponding to the input image obtained based on the basic matrix. It is.
  • FIG. 12 shows an outline of a configuration example of the image processing apparatus 10 according to the present embodiment.
  • the image processing unit 100 of the image processing apparatus 10 further includes a motion estimation unit 160, a three-dimensional coordinate estimation unit 170, and a subsequent stage of the basic matrix determination unit 150 in comparison with the first embodiment. Is provided.
  • the motion estimation unit 160 calculates the difference between the position and orientation of the camera that captured each input image, that is, the camera motion.
  • the three-dimensional coordinate estimation unit 170 calculates the three-dimensional coordinates of the corresponding points of the input image based on the camera motion calculated by the motion estimation unit 160.
  • step S701 the image acquisition unit 12 acquires, for example, two images.
  • step S702 the corresponding point acquisition unit 110 acquires corresponding points for the two input images, as in step S102 of the first embodiment.
  • step S703 the basic matrix estimation unit 120, the epipole coordinate derivation unit 130, the epipole coordinate determination unit 140, and the basic matrix determination unit 150 perform the basic matrix determination process in the same manner as in step S103 of the first embodiment. To decide.
  • step S704 the motion estimation unit 160 calculates the difference between the position and orientation of the camera that captured the two input images based on the basic matrix calculated by the basic matrix determination process. For example, the motion estimation unit 160 calculates a basic matrix based on the basic matrix, and calculates a rotation matrix and a translation vector based on the basic matrix. These rotation matrices and translation vectors represent the rotation and translation, or motion, between the two camera positions. In the present embodiment, this rotation and translation may be output from the image processing apparatus 10 or may be stored in the storage unit 14.
  • step S705 the three-dimensional coordinate estimation unit 170 estimates the three-dimensional coordinates for the corresponding points of the two input images by a known method based on the calculated positional relationship between the two cameras.
  • the estimated three-dimensional coordinate information is used as the output of the image processing apparatus 10. Further, this three-dimensional information may be stored in the storage unit 14.
  • a highly accurate basic matrix is calculated, and is used to perform three-dimensional estimation, so that highly accurate three-dimensional estimation can be performed.
  • a method using a histogram may be used as in the second embodiment. In this case, the same function is obtained and the same effect can be obtained.
  • the present embodiment relates to a digital camera 1 including the image processing apparatus 10 of the first embodiment or the second embodiment.
  • a configuration example of the digital camera 1 according to the present embodiment is shown in FIG.
  • the digital camera 1 includes a CPU 20, an imaging optical system 22, an imaging device 24, an AFE (Analog Front End) 26, a signal image processing unit 28, a compression / decompression unit 30, and a RAM (Random Access Memory) 32.
  • the CPU 20 functions as a control unit and controls each unit of the digital camera 1.
  • the imaging optical system 22 includes a lens, a diaphragm, and the like, and guides the subject image to the imaging element 24.
  • the image sensor 24 converts the subject image guided through the imaging optical system 22 into an electrical signal.
  • the AFE 26 performs analog signal processing such as correlated double sampling, analog gain control, and A / D conversion.
  • the signal image processing unit 28 performs image processing such as color separation, white balance, and gamma conversion on the digital image signal output from the AFE 26.
  • the compression / decompression unit 30 compresses or decompresses an image.
  • the RAM 32 performs temporary storage necessary for various processes and calculations.
  • the ROM 34 stores various programs necessary for the control and calculation of the digital camera 1.
  • the operation unit 36 receives an input of an instruction related to the operation of the digital camera 1 from the user.
  • the recording unit 38 is detachably connected to the digital camera 1, for example, and records an image acquired by the digital camera 1.
  • the display processing unit 40 performs image processing for displaying on the display unit 42.
  • the display unit 42 includes, for example, a liquid crystal display and displays the image processed by the display processing unit 40.
  • the image signal of the subject that is incident on the image sensor 24 through the imaging optical system 22 and converted into an electrical signal is subjected to image processing by the AFE 26 and the signal image processing unit 28.
  • These image processed signals are sequentially input to the image processing apparatus 10 as moving images.
  • the image processing apparatus 10 sequentially performs a process of calculating the basic matrix described in the first embodiment between an image of a certain frame of the input moving image and an image of the next frame.
  • the blur correction unit 18 acquires a basic matrix output from the image processing apparatus 10 and performs a process of removing blur between frames of a moving image input based on the basic matrix. That is, the shake correction unit 18 calculates a basic matrix based on the basic matrix. In order to calculate the basic matrix from the basic matrix, a generally known method is used. The blur correction unit 18 calculates a rotation matrix and a translation vector based on the calculated basic matrix.
  • the rotation matrix and the translation vector represent the difference between the position and orientation of the camera that acquired the image of a certain frame and the position and orientation of the camera that acquired the image of the next frame. That is, the rotation matrix and the translation vector represent the amount of camera shake that acquired the images between both frames.
  • the blur correction unit 18 calculates a blur correction amount based on the calculated rotation matrix and translation vector. In other words, the blur correction unit 18 calculates an appropriate image correction amount in order to cancel out camera shake between frames obtained as a rotation matrix and a translation vector. At this time, for example, using a low-pass filter, the correction amount is determined so that smooth correction is achieved without performing rapid correction.
  • the blur correction unit 18 performs image conversion based on the calculated correction amount and removes the blur of the image. In this way, an image from which blurring between frames is removed is created by the blur correction unit 18.
  • the image signal from which the blur is removed is displayed on the display unit 42 via the display processing unit 40. Further, the image signal from which the blur is removed is recorded in the recording unit 38.
  • blur removal is performed by the image processing apparatus 10 and the blur correction unit 18. Therefore, image blurring due to camera shake or the like of the user operating the digital camera 1 is removed, and an image recorded in the recording unit 38 and an image displayed on the display unit 42 are acquired by a camera that does not include the image processing device 10. The quality is higher than the rendered image.
  • the image processing apparatus 10 may perform processing using a histogram as in the second embodiment. In this case as well, similar functions and similar effects can be obtained. Further, the image processing apparatus 10 may calculate three-dimensional coordinates as in the third embodiment, and the digital camera 1 may be configured to output a three-dimensional reconstructed image of the photographed subject.
  • the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying constituent elements without departing from the scope of the invention in the implementation stage.
  • the order of processing can be changed as appropriate.
  • various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, even if some constituent elements are deleted from all the constituent elements shown in the embodiment, the problem described in the column of problems to be solved by the invention can be solved and the effect of the invention can be obtained. The configuration in which this component is deleted can also be extracted as an invention.
  • constituent elements over different embodiments may be appropriately combined.

Landscapes

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

Abstract

 画像処理装置は、複数の画像を取得する画像取得部(12)と、対応点取得部(110)と、第1の基礎行列推定部(120)と、エピポール座標導出部(130)と、エピポール座標決定部(140)と、基礎行列決定部(150)とを含む。対応点取得部(110)は、複数の前記画像間で互いに対応する複数の第1の対応点を取得する。第1の基礎行列推定部(120)は、複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出する。エピポール座標導出部(130)は、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出する。エピポール座標決定部(140)は、前記複数の第1のエピポール座標のうち、1つのエピポール座標を第2のエピポール座標として決定する。基礎行列決定部(150)は、前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定する。

Description

画像処理装置及び画像処理方法
 本発明は、画像処理装置及び画像処理方法に関する。
 一般に、2枚の画像に基づいて、これら画像を撮影したカメラの位置及び姿勢の変化を推定する次のような技術が知られている。すなわち、この技術では、2枚の画像中で共通に表示されていると判断される点を複数抽出し、それら点の対応関係を取得して対応点として特定する。この対応点に基づいて基礎行列を算出し、その基礎行列に基づいてカメラの位置及び姿勢変化を推定する。このような基礎行列の算出において、RANSAC(RANdam SAmple Consensus)等のロバスト推定手法が用いられることが、例えば日本国特開2007-256029号公報に開示されている。RANSACでは、多数の対応点の中から8点がランダムに抽出され、仮の基礎行列が計算される。例えば、エピポーラ線との距離を指標として、各仮の基礎行列を評価することで、対応点の特定の誤りや画像に含まれる動的被写体の影響が排除される。また、日本国特開2007-256029号公報には、基礎行列の算出からカメラの位置及び姿勢変化の推定までが繰り返し行われることで、最も確からしい位置及び姿勢変化が決定されることに係る技術が開示されている。
 しかしながら、上述のような技術において、対応点の分布が平面に近い場合、基礎行列計算が縮退し、基礎行列の誤差が大きくなることが知られている。例えばRANSACが用いられると、対応点の誤対応や動的被写体に対するロバスト性の向上は見込まれる。しかしながら、例えばRANSACが用いられても、対応点分布が平面に近いことに由来する誤差に対するロバスト性の改善は見込まれない。
 そこで本発明は、対応点の誤対応と動的被写体に対してロバストであり、かつ、対応点の分布が平面に近いことに由来する誤差に対してもロバストである基礎行列を決定する画像処理装置及び画像処理方法を提供することを目的とする。
 前記目的を果たすため、本発明の一態様によれば、画像処理装置は、複数の画像を取得する画像取得部と、複数の前記画像間で互いに対応する複数の第1の対応点を取得する対応点取得部と、複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出する第1の基礎行列推定部と、少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出するエピポール座標導出部と、前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定するエピポール座標決定部と、前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定する基礎行列決定部と、を具備することを特徴とする。
 前記目的を果たすため、本発明の一態様によれば、撮像装置は、画像を撮像する撮像部と、異なる時間に撮像された複数の前記画像を取得する画像取得部と、複数の前記画像において互いに対応する複数の第1の対応点を取得する対応点取得部と、複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出する第1の基礎行列推定部と、少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出するエピポール座標導出部と、前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定するエピポール座標決定部と、前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定する基礎行列決定部と、前記第2の基礎行列に基づいて、前記複数の画像の間に存在するブレを補正する補正部と、を具備することを特徴とする。
 前記目的を果たすため、本発明の一態様によれば、画像処理方法は、複数の画像を取得することと、複数の前記画像間で互いに対応する複数の第1の対応点を取得することと、複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出することと、少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出することと、前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定することと、前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定することと、を具備することを特徴とする。
 前記目的を果たすため、本発明の一態様によれば、コンピュータ読み取り可能な記録媒体は、複数の画像を取得することと、複数の前記画像間で互いに対応する複数の第1の対応点を取得することと、複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出することと、少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出することと、前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定することと、前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定することと、をコンピュータに実行させる画像処理プログラムを記録している。
 本発明によれば、エピポール座標を用いて適切な第2の基礎行列を決定するので、対応点の誤対応と動的被写体に対してロバストであり、かつ、対応点の分布が平面に近いことに由来する誤差に対してもロバストである基礎行列を決定する画像処理装置及び画像処理方法を提供できる。
図1は、第1の実施形態に係る画像処理装置の構成例を示すブロック図である。 図2は、第1の実施形態に係る画像処理装置による処理の一例を示すフローチャートである。 図3は、第1の実施形態に係る基礎行列決定処理の一例を示すフローチャートである。 図4は、エピポーラ幾何について説明するための図である。 図5は、第1の実施形態に係る基礎行列推定処理の一例を示すフローチャートである。 図6は、第1の実施形態に係るインライア個数算出処理の一例を示すフローチャートである。 図7は、第1の実施形態に係るエピポール座標決定部の構成例を示すブロック図である。 図8は、第1の実施形態に係る最適エピポール選択処理の一例を示すフローチャートである。 図9は、第2の実施形態に係るエピポール座標決定部の構成例を示すブロック図である。 図10は、第2の実施形態に係る最適エピポール選択処理の一例を示すフローチャートである。 図11は、第2の実施形態に係るヒストグラムの一例を示す図である。 図12は、第3の実施形態に係る画像処理装置の構成例を示すブロック図である。 図13は、第3の実施形態に係る画像処理装置による処理の一例を示すフローチャートである。 図14は、第4の実施形態に係るデジタルカメラの構成例を示すブロック図である。
 [第1の実施形態]
 本発明の第1の実施形態について図面を参照して説明する。本実施形態に係る画像処理装置10の構成例を図1に示す。この図に示されるように、画像処理装置10は、画像処理部100と、画像取得部12と、記憶部14と、制御部16とを備える。この画像処理装置10は、入力された複数の画像に対して画像間の関係を表す基礎行列を算出し出力する。
 画像処理部100は、画像処理装置10の中心的役割を担い、後述の通り入力された複数の画像に係る基礎行列の算出を行う。画像取得部12は、画像処理装置10の外部や記憶部14から処理対象とする画像のデータを取得し、画像処理部100に入力する。記憶部14は、処理対象とする画像データや、各種演算に係るプログラムや、演算結果等を記憶する。制御部16は、画像処理装置10の動作を制御する。
 画像処理部100は、対応点取得部110と、基礎行列推定部120と、エピポール座標導出部130と、エピポール座標決定部140と、基礎行列決定部150とを有する。対応点取得部110は、画像取得部12から入力された複数の画像に対して、当該画像中に含まれている共通の点を複数抽出し、それら複数の点について、画像間での対応関係を取得する。この対応関係が得られた点を対応点として出力する。基礎行列推定部120は、対応点取得部110が取得した対応点に基づいて、例えばRANSAC(RANdom SAmple Consensus)等のロバスト手法を用いて画像間の関係を表す基礎行列である第1の基礎行列を複数を算出する。
 エピポール座標導出部130は、基礎行列推定部120が算出した各第1の基礎行列に基づいて、その基礎行列に対応する画像間のエピポールの座標を算出する。エピポール座標決定部140は、エピポール座標導出部130が算出した複数のエピポールの座標のうちから、最も確からしいエピポールを選択する。基礎行列決定部150は、エピポール座標決定部140が選択したエピポールに対応する第1の基礎行列を最適な基礎行列として第2の基礎行列を決定する。
 本実施形態に係る画像処理装置10の動作を図2に示すフローチャートを参照して説明する。ステップS101において、画像取得部12は、この画像処理装置10による画像処理の対象となる例えば2つの画像を取得する。画像取得部12は、画像処理装置10の外部から画像を取得してもよいし、記憶部14に記憶されている画像を取得してもよい。取得された画像は、画像処理部100に入力される。
 ステップS102において、画像処理部100内の対応点取得部110は、画像間の対応点取得処理を行う。すなわち、対応点取得部110は、画像取得部12から入力された2つの画像の互いに対応する点の位置関係を取得する。この対応点取得処理は、特徴点追跡等の特徴ベースマッチングでも、ブロックマッチング等の領域ベースマッチングでもよい。ここで、対応点取得部110によって対応関係が得られた点を、対応点と称することにする。なお、対応点取得処理によって、通常は数千点の対応点が得られる。
 ステップS103において、画像処理部100は、対応点取得部110によって取得された対応点に基づいて、基礎行列決定処理を行う。基礎行列決定処理について、図3に示されるフローチャートを参照して説明する。ステップS201乃至ステップS204において画像処理部100は、エピポーラ幾何に基づいて後述の基礎行列とエピポール座標とを所定の回数であるN回繰り返し算出する。すなわち、N個の基礎行列とエピポール座標との組み合わせを算出する。
 ここで、エピポーラ幾何について図4を参照して簡単に説明する。以下では、カメラはピンホールカメラであると仮定したピンホールカメラモデルで説明する。第1のレンズ主点O1を有する第1のカメラと、第2のレンズ主点O2を有する第2のカメラとによって空間上の静止している点Pを撮影する場合を考える。第1のカメラで得られる第1の画像平面I1上と、第2のカメラで得られる第2の画像平面I2上との座標を考える。第1の画像平面I1上において点Pが撮像された点の座標を座標p1とする。座標p1のx座標及びy座標は画像座標(u1,v1)であるとする。第2の画像平面I2上において点Pが撮像された点の座標を座標p2とする。座標p2のx座標及びy座標は画像座標(u2,v2)であるとする。
 また、第1のレンズ主点O1と第2のレンズ主点O2とを結んだ直線と、第1の画像平面I1との交点を第1のエピポールe1と称し、第2の画像平面I2との交点を第2のエピポールe2と称する。また、点Pと第1のレンズ主点O1と第2のレンズ主点O2とを含む平面と、第1の画像平面I1との交線を第1のエピポーラ線L1と称し、第2の画像平面I2との交線を第2のエピポーラ線L2と称する。
 エピポーラ方程式は、エピポーラ幾何における基本方程式である。座標p1及び座標p2を同次座標表示したベクトルをm1及びm2とすると、m1及びm2は下記式(1)のように表される。
Figure JPOXMLDOC01-appb-M000001
このとき、O1、O2、p1とp2が空間座標系で同一平面上にあることから、3×3の行列Fにおいて、下記式(2)の関係が成り立つ。
Figure JPOXMLDOC01-appb-M000002
 上記方程式(2)はエピポーラ方程式と呼ばれ、行列Fは基礎行列と呼ばれる。基礎行列Fは9成分あるが、スケール不定性と基礎行列Fが正則行列であることの2点のため、自由度は7である。基礎行列は、例えば公知の8点アルゴリズムでは、8点以上の対応点を元に方程式(2)を解くことで決定される。基礎行列Fに基づくと基本行列が求まり、この基本行列から第1のカメラと第2のカメラとの姿勢及び位置の差を表す回転行列Rと並進ベクトルtとが求まる。
 図3に戻って説明を続ける。ステップS201において、画像処理部100の基礎行列推定部120は、基礎行列推定処理を行う。この処理は、例えばRANSAC(RANdom SAmple Consensus)を用いた方法で行われる。RANSACを用いた基礎行列推定処理を図5に示すフローチャートを参照して説明する。ステップS301において、基礎行列推定部120は、対応点取得部110による対応点取得処理で取得された対応点のうち、複数点の対応点をランダムに抽出する。例えば本実施形態では8点の対応点が抽出される。ステップS302において、基礎行列推定部120は、抽出した8点の対応点に基づいて、例えば公知の8点アルゴリズムを用いて上述の基礎行列Fを算出する。ここで算出された基礎行列を仮基礎行列と称することにする。
 ステップS303において、基礎行列推定部120は、インライア個数算出処理を行う。インライア個数算出処理では、2枚の画像に係るエピポーラ幾何を考える。ステップS102において取得された各対応点について、ステップS302で算出された仮基礎行列から求まるエピポーラ線と当該対応点との距離が所定の閾値より小さいとき、その対応点をインライア(評価が高い)とする。インライア個数算出処理では、複数の対応点のうちインライアである対応点の個数が求められる。
 インライア個数算出処理を図6に示すフローチャートを参照して説明する。ステップS401において、基礎行列推定部120は、インライアの個数を表す変数Iを8に設定する。これは、本実施形態では仮基礎行列の算出に用いた8点の対応点をインライアとしてカウントするためである。
 続いて全ての対応点について以下の処理を行う。ステップS402において、基礎行列推定部120は、仮基礎行列から求まるエピポーラ線と対象とする対応点との距離を算出する。ステップS403において、基礎行列推定部120は、ステップS402で算出されたエピポーラ線との距離が所定の閾値未満(以下でもよい)であるか否かを判定する。距離が閾値未満であると判定されたとき、ステップS404において、基礎行列推定部120は、インライアの個数を表す変数Iを1増加させる。対応点のうちエピポーラ線との距離が所定の閾値未満である対応点をインライア対応点と称することにする。その後処理はステップS405に進む。ステップS403の判定で距離が所定の閾値以上であると判定されたとき処理はステップS405に進む。
 ステップS405において、基礎行列推定部120は、全ての対応点についてステップS402乃至ステップS404の処理がなされたか否かを判定する。処理がなされていないと判定されたとき、処理はステップS402に戻り、次の対応点について同様の処理を行う。ステップS405の判定において、処理がなされたと判定されたとき、変数Iを戻り値として、処理は基礎行列推定処理に戻る。
 このようにして、全ての対応点のうち仮基礎行列に対してインライアである対応点の個数Iが算出される。ここで、インライア対応点の個数が多い仮基礎行列ほど、2枚の画像との関係を適切に表す基礎行列であるといえる。
 図5に戻って説明を続ける。ステップS304において、基礎行列推定部120は、ステップS301乃至ステップS303の処理が、所定回数行われたか否かを判定する。所定の回数行われていないとき、処理はステップS301に戻る。ステップS304において所定の回数処理が行われたと判定されたとき、処理はステップS305に進む。ステップS305において、基礎行列推定部120は、インライア対応点の個数Iが最も大きい仮基礎行列を第1の基礎行列として決定する。
 ここでは、ステップS304の判断によるインライア対応点の個数を算出する仮基礎行列の数を所定数としている。しかしながらこれに限らず、所定の終了条件が満たされるまで、仮基礎行列についてインライア対応点の個数を算出するようにしてもよい。ステップS305の後、処理は第1の基礎行列を戻り値として基礎行列決定処理に戻る。
 図3に戻って説明を続ける。ステップS202において、基礎行列推定部120は、基礎行列推定処理で得られた第1の基礎行列を記憶部14に記憶させる。ステップS203において、エピポール座標導出部130は、エピポール座標の算出を行う。エピポール座標の算出は以下の手順で行われる。
 基礎行列推定部120が算出した基礎行列Fの転置行列をF、同次系で表した第1の画像のエピポール座標をe=(e1x,e1y,1)、同次系で表した第2の画像のエピポール座標をe=(e2x,e2y,1)とする。このとき、下記式(3)が成り立つ。
Figure JPOXMLDOC01-appb-M000003
このため、e及びeは上記式(3)の連立方程式を解くことで求められる。例えば、下記式(4)のように行列を特異値分解する。
Figure JPOXMLDOC01-appb-M000004
ここで、U及びUは左直交行列と、V及びVは右直交行列と、W及びWは特異値行列又は対角行列と呼ばれる。この右直交行列の最終列ベクトル成分に基づいて、e及びeは下記式(5)で求まる。
Figure JPOXMLDOC01-appb-M000005
このようにして、ステップS203においてエピポールの座標が算出される。ステップS204において、エピポール座標導出部130は、算出されたエピポールの座標を用いた基礎行列と関連付けて記憶部14に記憶させる。
 以上のような、基礎行列推定部120による例えばRANSACを用いた第1の基礎行列の算出と、その第1の基礎行列に基づくエピポール座標導出部130によるエピポール座標の導出とが、N回繰り返される。その後、処理はステップS205に進む。ステップS205において、エピポール座標決定部140は、最適エピポール選択処理を行う。すなわち、エピポール座標決定部140は、エピポール座標導出部130によって算出されたN個又は2N個のエピポール座標から、統計的な手法を用いて、画像ごとに1つの最適なエピポールを決定する。ここで、N個のエピポール座標とは、2つの画像のうち一方の画像における各第1の基礎行列に対応するエピポールの座標のことをいい、2N個のエピポール座標とは、2つの画像の両方の画像における各第1の基礎行列に対応するエピポールの座標のことをいう。例えば本実施形態では、中央値を用いて最適なエピポールを決定する。このため、エピポール座標決定部140は、図7に示されるように、中央値算出部142と、距離算出部146と、エピポール選択部148とを有する。
 最適エピポール選択処理について、図8に示されるフローチャートを参照して説明する。ステップS501において、エピポール座標決定部140内の中央値算出部142は、ステップS201からステップS204の処理を繰り返し行ったことで記憶部14に格納されている各エピポールの座標を読出し、それらエピポールの座標の中央値を決定する。
 ステップS502において、エピポール座標決定部140の距離算出部146は、ステップS501で、中央値算出部142によって算出された中央値と、N個又は2N個の各エピポールの座標と、の距離dEpi1を計算する。ここで、2N個のエピポール座標を用いる場合、距離dEpi1は例えば以下のように算出される。第1の画像平面I1のエピポール座標の中央値を(Epi1_X_Mid,Epi1_Y_Mid)とし、第2の画像平面I2のエピポール座標の中央値を(Epi2_X_Mid,Epi2_Y_Mid)とする。第1の基礎行列に応じて決定されたi番目の第1のエピポールe1の座標を(Epi1_X(i),Epi1_Y(i))とし、第2のエピポールe2の座標を(Epi2_X(i),Epi2_Y(i))とする。このとき、距離dEpi1は例えば下記式(6)で得られる。
Figure JPOXMLDOC01-appb-M000006
 ステップS503において、エピポール座標決定部140内のエピポール選択部148は、距離算出部146によって算出された距離dEpi1が最も小さいエピポール座標を最適なエピポール座標として選択する。選択された最適エピポール座標を戻り値として、処理は基礎行列決定処理に戻る。
 なお、本実施形態では、エピポール座標の中央値を基準として最適なエピポールの選択が行われているが、中央値に限らず平均値等の種々の統計値が用いられてもよい。ただし、外れ値等の影響を抑えるため、中央値が用いられることが好ましい。
 図3に戻って説明を続ける。ステップS206において、基礎行列決定部150は、エピポール座標決定部140による最適エピポール選択処理で選択された最適エピポールに対応する第1の基礎行列を記憶部14から読出し、この第1の基礎行列を最適基礎行列として決定する。この最適基礎行列を第2の基礎行列と称することにする。その後、処理は第2の基礎行列を戻り値として図2を参照して説明している処理に戻る。画像処理部100は、決定された第2の基礎行列を入力された画像に対する最適な基礎行列として出力する。この基礎行列は記憶部14に記憶されてもよい。
 このように、例えば画像取得部12は、複数の画像を取得する画像取得部として機能する。例えば対応点取得部110は、複数の前記画像間の互いに対応する複数の第1の対応点を取得する対応点取得部として機能する。例えば基礎行列推定部120は、複数の前記第1の対応点に基づいて複数の前記第1の基礎行列を算出する第1の基礎行列推定部として機能する。例えばエピポール座標導出部130は、少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出するエピポール座標導出部として機能する。例えばエピポール座標決定部140は、前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定するエピポール座標決定部として機能する。ここで、例えば最適エピポールの座標は、第2のエピポール座標に相当する。例えば基礎行列決定部150は、前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定する基礎行列決定部として機能する。
 本実施形態によれば、エピポールの座標を利用して、第1の基礎行列のうちから精度の高い基礎行列を選択するので、入力画像に対して高精度な基礎行列を出力することができる。より詳しくは以下のとおりである。第1の基礎行列の算出において例えばRANSACといったロバスト手法が用いられることによって、ステップS102の対応点取得処理で算出された対応関係の誤りや、移動している被写体に由来する誤りが排除されロバスト性が向上することが期待される。しかしながら、被写体が平面に近いとき、すなわち、被写体の奥行差が小さいときに、基礎行列の算出において縮退に近い状態が生じることで起こる誤りを排除する効果は、RANSAC等では期待できない。これに対して本実施形態によれば、画像を取得したカメラの姿勢を表す指標となるエピポールの座標を利用して繰り返し演算による基礎行列の最適値の選択を行うことで、平面被写体に対するロバスト性の向上が得られる。
 本実施形態では、RANSAC等の手法により対応点の誤対応と動的被写体とに対するロバスト性を向上させ、エピポールを用いた演算により被写体の平面性に対するロバスト性を向上させるので、全体として信頼性が非常に高い基礎行列の算出が行われる。
 なお、上記説明では第1の基礎行列の算出にRANSACを用いる例を示した。しかしながらRANSACに限らず種々のロバスト推定手法が用いられ得る。例えば、M推定や、最小メジアン法(Least Median of Square;LMedS)や、PROSAC等のRANSACから派生した手法が用いられ得る。本実施形態は、種々の手法によって算出された基礎行列に対して適応されて効果を発揮する。
 なお、上記説明では、基礎行列決定処理におけるステップS201乃至ステップS204は、所定のN回繰り返される例を示した。しかしながら、第1の基礎行列の誤差が大きくなりやすい場合には、ロバスト性向上のため、演算の繰り返し回数を増やすようにしてもよい。この演算の繰り返し回数は、例えば撮像装置情報、シーン判別情報、動きベクトル情報、エピポール座標分布情報の少なくとも何れか1つに基づいて決定されてもよい。これら情報に基づいて繰り返し回数が変更されることで、演算結果の精度の向上が期待できる。
 ここで、撮像装置情報とは、例えば画像の撮像に用いられた撮像光学系の情報であり、例えば焦点距離情報が用いられ得る。すなわち、焦点距離が長い望遠光学系が用いられた場合、被写体までの距離に対して被写体に含まれる奥行きが小さくなる傾向がある。このため、望遠光学系が用いられた場合、被写体が平面に近い状態となり、算出される基礎行列の誤差が大きくなりやすい。そこで、撮像光学系の焦点距離が長い場合は繰り返し演算回数を比較的多くし、焦点距離が短い場合は繰り返し演算回数を比較的少なくすることが考えられる。
 また、シーン判別情報とは、例えば「風景」「人物」などの自動シーン判別情報である。例えばシーンが「風景」と判別された場合は、被写体までの距離に対して奥行きが小さくなる傾向があるため、被写体が平面に近くなり誤差が大きくなりやすい。そこで、シーンが「風景」である場合等に繰り返し演算回数を比較的多くすることが考えられる。
 また、動きベクトル情報とは、例えば対応点の分布や面積、計算された3次元座標の分布であり得る。対応点の分布が狭い場合、すなわち面積が小さい場合、又は3次元座標の分布が平面に近い場合は誤差が大きくなりやすい。そこで、このような場合に繰り返し演算回数を比較的多くすることが考えられる。
 また、エピポール座標分布情報は、例えば算出されたエピポールの分布情報であり得る。エピポールの分布が広い場合、基礎行列の誤差が大きいと判断される。そこで、このような場合に繰り返し演算回数を比較的多くすることが考えられる。
 [第2の実施形態]
 本発明の第2の実施形態について説明する。ここでは、第1の実施形態との相違点について説明し、同一の部分については、同一の符号を付してその説明を省略する。第1の実施形態では、最適エピポール選択処理において、複数の第1の基礎行列に応じて算出された複数のエピポールの中央値を用いて、最適エピポールが選択されている。これに対して、本実施形態では、エピポールの座標について2次元ヒストグラムを作成し、この2次元ヒストグラムに基づいて最適エピポールを選択する。
 このため本実施形態に係るエピポール座標決定部140は、図9に示すように、ヒストグラム生成部144と、重心位置算出部145と、距離算出部146と、エピポール選択部148とを有する。本実施形態に係る最適エピポール選択処理を図10に示されたフローチャートを参照して説明する。
 ステップS601において、エピポール座標決定部140のヒストグラム生成部144は、エピポール座標導出部130の処理により、各第1の基礎行列に対して得られたエピポール座標について2次元ヒストグラムを生成する。ステップS601において、例えば図11に示されるようなヒストグラムが生成される。このヒストグラムの生成は、例えば以下の手順で行われる。初めに、X方向及びY方向について、N個のエピポール座標に対する重心位置と標準偏差が算出される。次に、X方向及びY方向について、重心位置と標準偏差に基づいてヒストグラムの中心及びビン幅が決定される。次に、N個のエピポール座標について投票が実施され、2次元ヒストグラムが作成される。
 ステップS602において、エピポール座標決定部140の重心位置算出部145は、ステップS601でヒストグラム生成部144が生成したヒストグラムに基づいて、最頻値を示した領域内のエピポール座標の重心位置を算出する。重心の決定は例えば以下の手順で行われる。初めに、2次元ヒストグラムの最頻値を示す領域が決定される。次に、最頻値を示す領域内のエピポール座標の重心位置が決定される。なお、重心位置の算出には、最頻値を示す領域だけでなく、その周辺領域が含まれてもよい。
 ステップS603において、エピポール座標決定部140の距離算出部146は、ステップS602で重心位置算出部145が算出した重心位置と、N個又は2N個の各エピポールの座標と、の距離dEpi2を計算する。距離dEpi2は例えば以下のように算出される。第1の画像のエピポール座標重心を(Epi1_X_Ave,Epi1_Y_Ave)とし、第2の画像のエピポール座標重心を(Epi2_X_Ave,Epi2_Y_Ave)とする。第1の基礎行列に応じて決定されたi番目の第1のエピポールの座標を(Epi1_X(i),Epi1_Y(i))とし、第2のエピポールの座標を(Epi2_X(i),Epi2_Y(i))とする。このとき、距離dEpi2は下記式(7)で得られる。
Figure JPOXMLDOC01-appb-M000007
 ステップS604において、エピポール座標決定部140のエピポール選択部148は、ステップS603で距離算出部146が算出した距離dEpi2が最も小さいエピポール座標を最適なエピポール座標として選択する。選択された最適エピポールを戻り値として、処理は基礎行列決定処理に戻る。
 基礎行列決定処理のステップS206において基礎行列決定部150は、最適エピポールに対応する第1の基礎行列を記憶部14から読出し、この第1の基礎行列を最適な基礎行列である第2の基礎行列として決定する。その後、処理は図2を参照して説明している処理に戻る。画像処理部100は、決定された第2の基礎行列を入力された画像に対する基礎行列として出力する。
 本実施形態によっても、エピポール座標を用いられることで、第1の実施形態と同様の効果が得られる。
 [第3の実施形態]
 本発明の第3の実施形態について説明する。ここでは、第1の実施形態及び第2の実施形態との相違点について説明し、同一の部分については、同一の符号を付してその説明を省略する。第1の実施形態及び第2の実施形態に係る画像処理装置10は、複数の画像が入力されたときに基礎行列を出力する装置である。これに対して本実施形態に係る画像処理装置10は、複数の画像が入力されたときに基礎行列を算出し、その基礎行列に基づいて得られる入力画像に対応する3次元座標を出力する装置である。
 本実施形態に係る画像処理装置10の構成例の概略を図12に示す。この図に示すように、画像処理装置10の画像処理部100は、第1の実施形態と比較してさらに基礎行列決定部150の後段に、動き推定部160と、3次元座標推定部170とを備える。動き推定部160は、入力された各画像を撮影したカメラの位置及び姿勢の差異、すなわちカメラの動きを算出する。3次元座標推定部170は、動き推定部160で算出されたカメラの動きに基づいて、入力された画像の対応点の3次元座標を算出する。
 本実施形態に係る画像処理を図13に示されるフローチャートを参照して説明する。ステップS701において、画像取得部12は、例えば2枚の画像を取得する。ステップS702において、対応点取得部110は、第1の実施形態のステップS102と同様に、入力された2枚の画像について対応点を取得する。ステップS703において、基礎行列推定部120、エピポール座標導出部130、エピポール座標決定部140及び基礎行列決定部150は、第1の実施形態のステップS103と同様に、基礎行列決定処理を行い、基礎行列を決定する。
 ステップS704において、動き推定部160は、基礎行列決定処理によって算出された基礎行列に基づいて、2枚の入力画像を撮影したカメラの位置及び姿勢の差を算出する。例えば動き推定部160は、基礎行列に基づいて基本行列を算出し、この基本行列に基づいて回転行列及び並進ベクトルを算出する。これら回転行列及び並進ベクトルが2つのカメラ位置間の回転及び並進、すなわち動きを表す。本実施形態では、この回転及び並進を画像処理装置10の出力としてもよいし、記憶部14に記憶させてもよい。
 ステップS705において、3次元座標推定部170は、算出された2つのカメラの位置関係に基づいて、入力された2枚の画像の対応点について公知の方法で3次元座標の推定を行う。推定された3次元座標情報を画像処理装置10の出力とする。また、この3次元情報が記憶部14に記憶されてもよい。
 本実施形態によれば、精度が高い基礎行列が算出され、それが用いられて3次元推定がなされることで、精度の高い3次元推定がなされ得る。
 なお、本実施形態でも第2の実施形態のようにヒストグラムを用いる手法が用いられてもよく、この場合も同様に機能し、同様の効果が得られる。
 [第4の実施形態]
 第4の実施形態について説明する。ここでは、第1の実施形態及び第2の実施形態との相違点について説明し、同一の部分については、同一の符号を付してその説明を省略する。本実施形態は、第1の実施形態又は第2の実施形態の画像処理装置10を備えるデジタルカメラ1に係る。本実施形態に係るデジタルカメラ1の構成例を図14に示す。デジタルカメラ1は、画像処理装置10と、ブレ補正部18とを備える。また、デジタルカメラ1は、CPU20と、撮像光学系22と、撮像素子24と、AFE(Analog Front End)26と、信号画像処理部28と、圧縮伸長部30と、RAM(Random Access Memory)32と、ROM(Read Only Memory)34と、操作部36と、記録部38と、表示処理部40と、表示部42とを備える。
 CPU20は、制御部として機能し、デジタルカメラ1の各部を制御する。撮像光学系22は、レンズや絞り等を含み、被写体像を撮像素子24に導く。撮像素子24は、撮像光学系22を介して導かれた被写体像を電気信号に変換する。AFE26は、相関二重サンプリング、アナログゲインコントロール、A/D変換等のアナログ信号処理を行う。信号画像処理部28は、AFE26から出力されたデジタル画像信号に対して、色分解、ホワイトバランス、ガンマ変換等の画像処理を行う。圧縮伸長部30は、画像の圧縮や伸長等を行う。RAM32は、各種処理及び演算に必要な一時記憶を行う。ROM34は、デジタルカメラ1の制御や演算に必要な各種プログラム等を記憶する。操作部36は、ユーザからのデジタルカメラ1の操作に係る指示の入力を受け付ける。記録部38は、例えばデジタルカメラ1に取り外し可能に接続されており、デジタルカメラ1で取得した画像を記録する。表示処理部40は、表示部42に表示させるための画像処理を行う。表示部42は、例えば液晶ディスプレイ等を含み、表示処理部40で処理された画像を表示する。
 撮像光学系22を介して撮像素子24に入射して電気信号に変換された被写体の画像信号は、AFE26及び信号画像処理部28で画像処理される。これらの画像処理された信号は、画像処理装置10に動画像として順次入力される。画像処理装置10は、入力された動画像のあるフレームの画像と次フレームの画像との間で、順次第1の実施形態で説明した基礎行列を算出する処理を行う。
 ブレ補正部18は、画像処理装置10が出力する基礎行列を取得し、この基礎行列に基づいて入力された動画像のフレーム間のブレを除去する処理を行う。すなわち、ブレ補正部18は、基礎行列に基づいて、基本行列を算出する。基礎行列から基本行列を算出するには、一般に知られている手法が用いられる。ブレ補正部18は、算出された基本行列に基づいて回転行列及び並進ベクトルを算出する。ここで、この回転行列及び並進ベクトルは、あるフレームの画像を取得したカメラの位置及び姿勢と次のフレームの画像を取得したカメラの位置及び姿勢との差を表す。すなわち、この回転行列及び並進ベクトルは、両フレーム間でのそれら画像を取得したカメラのブレ量を表す。
 ブレ補正部18は、算出された回転行列及び並進ベクトルに基づいてブレの補正量を算出する。すなわち、ブレ補正部18は、回転行列及び並進ベクトルとして求まったフレーム間に生じたカメラのブレを相殺するために適切な画像の補正量を算出する。この際、例えばローパスフィルタ等を用いて、急激な補正が行われずに滑らかな補正となるように補正量は決定される。ブレ補正部18は、算出した補正量に基づいて画像変換を行い、画像のブレを除去する。このようにして、ブレ補正部18によって、フレーム間で生じたブレが除去された画像が作成される。このブレが除去された画像の信号は、表示処理部40を介して表示部42に表示される。また、ブレが除去された画像信号は、記録部38に記録される。
 本実施形態によれば、画像処理装置10及びブレ補正部18によってブレの除去が行われる。したがって、デジタルカメラ1を操作するユーザの手振れ等による画像のブレが除去され、記録部38に記録される画像や、表示部42に表示される画像は、画像処理装置10を備えないカメラで取得された画像よりも品質が高くなる。
 なお、本実施形態においても、画像処理装置10において第2の実施形態のようにヒストグラムを用いた処理が行われてもよい。この場合も同様に機能し同様の効果が得られる。また、画像処理装置10が第3の実施形態のように3次元座標を算出し、デジタルカメラ1は撮影した被写体の3次元再構成画像を出力するように構成されてもよい。
 なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。例えば処理の順序は適宜変更され得る。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除しても、発明が解決しようとする課題の欄で述べられた課題が解決でき、かつ、発明の効果が得られる場合には、この構成要素が削除された構成も発明として抽出され得る。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。

Claims (8)

  1.  複数の画像を取得する画像取得部と、
     複数の前記画像間で互いに対応する複数の第1の対応点を取得する対応点取得部と、
     複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出する第1の基礎行列推定部と、
     少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出するエピポール座標導出部と、
     前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定するエピポール座標決定部と、
     前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定する基礎行列決定部と、
    を具備する画像処理装置。
  2.  前記エピポール座標決定部は、
      複数の前記第1のエピポール座標の中央値を算出する中央値算出部と、
      前記第1のエピポール座標の各々と前記中央値との距離を算出する距離算出部と、
      複数の前記第1のエピポール座標のうち、前記距離が最小である前記第1のエピポール座標を前記第2のエピポール座標として決定するエピポール選択部と、
    を有する請求項1に記載の画像処理装置。
  3.  前記エピポール座標決定部は、
      複数の前記第1のエピポール座標の頻度をカウントするヒストグラム生成部と、
      前記頻度が高い領域の重心位置を決定する重心位置算出部と、
      前記第1のエピポール座標の各々と前記重心位置との距離を算出する距離算出部と、
      複数の前記第1のエピポール座標のうち、前記距離が最小である前記第1のエピポール座標を前記第2のエピポール座標に決定するエピポール選択部と、
     を有する請求項1に記載の画像処理装置。
  4.  複数の前記画像を撮像したカメラの位置及び姿勢の差異を推定する動き推定部と、
     前記位置及び姿勢の前記差異に基づいて、前記画像に含まれる被写体の3次元座標を推定する3次元座標推定部と、
    をさらに具備する請求項1乃至3のうち何れか1項に記載の画像処理装置。
  5.  前記第1の基礎行列の個数は、撮像装置情報と、シーン判別情報と、動きベクトル情報と、エピポール座標分布情報と、のうち少なくとも1つに基づいて決定される
    請求項1乃至3のうち何れか1項に記載の画像処理装置。
  6.  画像を撮像する撮像部と、
     異なる時間に撮像された複数の前記画像を取得する画像取得部と、
     複数の前記画像において互いに対応する複数の第1の対応点を取得する対応点取得部と、
     複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出する第1の基礎行列推定部と、
     少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出するエピポール座標導出部と、
     前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定するエピポール座標決定部と、
     前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定する基礎行列決定部と、
     前記第2の基礎行列に基づいて、前記複数の画像の間に存在するブレを補正する補正部と、
    を具備する撮像装置。
  7.  複数の画像を取得することと、
     複数の前記画像間で互いに対応する複数の第1の対応点を取得することと、
     複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出することと、
     少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出することと、
     前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定することと、
     前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定することと、
    を具備する画像処理方法。
  8.  複数の画像を取得することと、
     複数の前記画像間で互いに対応する複数の第1の対応点を取得することと、
     複数の前記第1の対応点に基づいて複数の第1の基礎行列を算出することと、
     少なくとも1つの画像について、前記複数の第1の基礎行列の各々に対応する複数の第1のエピポール座標を算出することと、
     前記複数の第1のエピポール座標のうち、所定の統計的手法を用いて、1つのエピポール座標を第2のエピポール座標として決定することと、
     前記第2のエピポール座標に対応する前記第1の基礎行列を第2の基礎行列として決定することと、
    をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
PCT/JP2013/053106 2012-06-27 2013-02-08 画像処理装置及び画像処理方法 WO2014002521A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201380034425.8A CN104471612B (zh) 2012-06-27 2013-02-08 图像处理装置以及图像处理方法
US14/574,698 US9183634B2 (en) 2012-06-27 2014-12-18 Image processing apparatus and image processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-144598 2012-06-27
JP2012144598A JP5901447B2 (ja) 2012-06-27 2012-06-27 画像処理装置及びそれを備えた撮像装置、画像処理方法、並びに画像処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/574,698 Continuation US9183634B2 (en) 2012-06-27 2014-12-18 Image processing apparatus and image processing method

Publications (1)

Publication Number Publication Date
WO2014002521A1 true WO2014002521A1 (ja) 2014-01-03

Family

ID=49782704

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/053106 WO2014002521A1 (ja) 2012-06-27 2013-02-08 画像処理装置及び画像処理方法

Country Status (4)

Country Link
US (1) US9183634B2 (ja)
JP (1) JP5901447B2 (ja)
CN (1) CN104471612B (ja)
WO (1) WO2014002521A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5977591B2 (ja) 2012-06-20 2016-08-24 オリンパス株式会社 画像処理装置及びそれを備えた撮像装置、画像処理方法、並びに画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP6511980B2 (ja) * 2015-06-19 2019-05-15 カシオ計算機株式会社 画像処理装置、画像処理方法及びプログラム
EP3358294A4 (en) * 2015-09-30 2019-04-10 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND PROGRAM
TWI604417B (zh) * 2016-08-31 2017-11-01 國立交通大學 估算對極幾何模型的方法及其系統
CN106780370B (zh) * 2016-11-25 2019-12-20 阿依瓦(北京)技术有限公司 一种图像去抖动设备及其方法
CN106780365B (zh) * 2016-11-25 2020-03-17 阿依瓦(北京)技术有限公司 一种基于异构计算的图像去抖动系统
CN108230395A (zh) 2017-06-14 2018-06-29 深圳市商汤科技有限公司 双视角图像校准及图像处理方法、装置、存储介质和电子设备
DE102018004592A1 (de) * 2017-06-20 2018-12-20 Mitutoyo Corporation Messapparat für dreidimensionale Geometrie und Messverfahren für dreidimensionale Geometrie

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006234492A (ja) * 2005-02-23 2006-09-07 Aisin Seiki Co Ltd 物体認識装置
JP2007256029A (ja) * 2006-03-23 2007-10-04 Denso It Laboratory Inc ステレオ画像処理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100944293B1 (ko) * 2007-12-27 2010-02-24 중앙대학교 산학협력단 단일 축 회전 영상들로부터의 효율적인 전 방향 3차원모델의 재구성 방법
TW200937348A (en) * 2008-02-19 2009-09-01 Univ Nat Chiao Tung Calibration method for image capturing device
CN101650178B (zh) * 2009-09-09 2011-11-30 中国人民解放军国防科学技术大学 序列图像三维重建中控制特征点与最优局部单应引导的图像匹配方法
JP5385740B2 (ja) * 2009-09-25 2014-01-08 キヤノン株式会社 撮像装置及び画像データの補正方法
CN102074015A (zh) * 2011-02-24 2011-05-25 哈尔滨工业大学 一种基于二维图像序列的目标对象的三维重建方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006234492A (ja) * 2005-02-23 2006-09-07 Aisin Seiki Co Ltd 物体認識装置
JP2007256029A (ja) * 2006-03-23 2007-10-04 Denso It Laboratory Inc ステレオ画像処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TSUYOSHI MIGITA ET AL.: "One Dimensional Epipole Search based on Point Correspondences in Two Uncalibrated Views", IPSJ SIG NOTES, vol. 2006, no. 25, 17 March 2006 (2006-03-17), pages 413 - 420 *

Also Published As

Publication number Publication date
JP2014010495A (ja) 2014-01-20
CN104471612B (zh) 2017-08-04
US20150104097A1 (en) 2015-04-16
CN104471612A (zh) 2015-03-25
US9183634B2 (en) 2015-11-10
JP5901447B2 (ja) 2016-04-13

Similar Documents

Publication Publication Date Title
JP5901447B2 (ja) 画像処理装置及びそれを備えた撮像装置、画像処理方法、並びに画像処理プログラム
US10789765B2 (en) Three-dimensional reconstruction method
JP5997645B2 (ja) 画像処理装置及び方法、及び撮像装置
KR101921672B1 (ko) 이미지 처리 방법 및 장치
JP7002056B2 (ja) 三次元モデル生成装置及び三次元モデル生成方法
US8928736B2 (en) Three-dimensional modeling apparatus, three-dimensional modeling method and computer-readable recording medium storing three-dimensional modeling program
TWI451750B (zh) 攝影裝置、電腦可讀取記錄媒體及控制方法
US20150124059A1 (en) Multi-frame image calibrator
JP5977591B2 (ja) 画像処理装置及びそれを備えた撮像装置、画像処理方法、並びに画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP6570296B2 (ja) 画像処理装置、画像処理方法およびプログラム
US20120069018A1 (en) Ar process apparatus, ar process method and storage medium
KR20150120066A (ko) 패턴 프로젝션을 이용한 왜곡 보정 및 정렬 시스템, 이를 이용한 방법
CN111935398B (zh) 图像的处理方法、装置、电子设备和计算机可读介质
JP6192507B2 (ja) 画像処理装置、その制御方法、および制御プログラム、並びに撮像装置
JP6594170B2 (ja) 画像処理装置、画像処理方法、画像投影システムおよびプログラム
JP2008217243A (ja) 画像生成装置
JP6409769B2 (ja) 3次元形状計測装置、3次元形状計測方法及び3次元形状計測プログラム
JP6153318B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム、および、記憶媒体
KR101673144B1 (ko) 부분 선형화 기반의 3차원 영상 정합 방법
KR20110133677A (ko) 3d 영상 처리 장치 및 그 방법
JP6320165B2 (ja) 画像処理装置及びその制御方法、並びにプログラム
CN111835968B (zh) 图像清晰度还原方法及装置、图像拍摄方法及装置
JP2012248206A (ja) Ar処理装置、ar処理方法及びプログラム

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13810513

Country of ref document: EP

Kind code of ref document: A1