WO2013035457A1 - 立体画像処理装置、立体画像処理方法、及びプログラム - Google Patents
立体画像処理装置、立体画像処理方法、及びプログラム Download PDFInfo
- Publication number
- WO2013035457A1 WO2013035457A1 PCT/JP2012/069216 JP2012069216W WO2013035457A1 WO 2013035457 A1 WO2013035457 A1 WO 2013035457A1 JP 2012069216 W JP2012069216 W JP 2012069216W WO 2013035457 A1 WO2013035457 A1 WO 2013035457A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- parallax
- evaluation value
- pixel
- vertical
- horizontal
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- 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 invention relates to a stereoscopic image processing apparatus, a stereoscopic image processing method, and a program capable of estimating parallax between viewpoint images.
- a shift in the coordinates of the subject between the viewpoint images is called parallax and varies depending on the distance between the subject and the camera. Since the depth of the subject can be obtained from the parallax by a conversion formula derived from the geometric arrangement between the viewpoint images, the parallax is used as depth information.
- the parallax is larger for the subject in the foreground and smaller for the subject in the back.
- the parallax is a positive value when the position in the left-eye image is on the right side of the corresponding point in the right-eye image, and similarly, in the right-eye image rather than the position in the left-eye image. If the position of is on the right, the value is negative.
- the parallax estimation is a process of obtaining the corresponding point between the viewpoint images and outputting the parallax at each pixel of the viewpoint image.
- An image representing the parallax of each pixel obtained by the parallax estimation as a pixel value is referred to as a parallax map.
- the parallax estimation method various methods using block matching, dynamic programming, graph cut, and the like have been proposed.
- the number of viewpoint images is not limited to two, and even when there are three or more viewpoint images, the parallax between viewpoint images (for example, the parallax of another viewpoint image with respect to a certain viewpoint image) can be estimated.
- Patent Document 1 discloses a technique for estimating a parallax map that is smooth and has few errors by applying dynamic programming with the continuity of parallax in the horizontal and vertical directions as a constraint. Further, Non-Patent Document 1 discloses a method of identifying a horizontal occlusion area simultaneously with parallax estimation using dynamic programming.
- the occlusion area is a background area that is only shown in one viewpoint image by being blocked by the foreground, and no corresponding point exists in that area.
- FIGS. 1A and 1B are images with a person in front of the house
- FIG. 1A shows a left-eye image 1L
- FIG. 1B shows a right-eye image 1R
- the hatched portion located on the left side of the person is a portion that exists in the left-eye image 1L, but is not shown in the right-eye image 1R
- the hatched portion located on the right side of the person is a portion that exists in the right-eye image 1R, but is not shown in the left-eye image 1L.
- hatched portions are occlusion areas, which are generated by being shielded by a foreground person.
- An area where a person is shown has a large parallax, and a portion where a house is shown has a smaller parallax.
- an occlusion area occurs when areas having different parallaxes are adjacent to each other.
- the vertical shift occurs in an image taken by, for example, the intersection method.
- the intersection method since the optical axes are not parallel, the inclination of the epipolar line differs between the image for the left eye and the image for the right eye, and vertical shifts with different degrees occur depending on the region. That is, the parallax has a horizontal component and a vertical component. Further, when regions having different vertical components of parallax are adjacent to each other, an occlusion region due to vertical shielding occurs.
- FIGS. 2A and 2B are examples of images in which a vertical shift occurs due to the cross-method photographing.
- FIG. 2A represents a left-eye image 2L
- FIG. 2B represents a right-eye image 2R.
- the dotted lines in FIGS. 2A and 2B are drawn to show the position of the same row in the left-eye image 2L and the right-eye image 2R. It can be seen that in the right-eye image 2R, the house is located above the left-eye image 2L, and there is a shift in the vertical direction. The position of the person is also shifted in the vertical direction, but the amount of shift is smaller than that of the house. Similar to the example of FIGS. 1A and 1B, the hatched area is an occlusion area generated by being shielded by the person who is the foreground.
- an occlusion area is also present in the portion above the person's head in the right-eye image 2R. That is, this portion is occlusion caused by vertical shielding.
- shielding is performed only in the horizontal direction, but in the example of FIGS. 2A and 2B, shielding is generated in both the horizontal direction and the vertical direction.
- occlusion caused by vertical shielding is referred to as vertical occlusion
- conventional occlusion caused by horizontal shielding is referred to as horizontal occlusion.
- Such a vertical occlusion area is not considered in the above-described conventional parallax estimation method, and may cause a parallax estimation error.
- the present invention has been made in view of the above situation, and an object of the present invention is to provide a stereoscopic image processing apparatus and a stereoscopic image processing capable of correctly estimating parallax even in the case of an image having a vertical component in parallax. It is to provide a method and a program.
- a first technical means of the present invention is a stereoscopic image processing apparatus that estimates a horizontal component and a vertical component of parallax between viewpoint images from a plurality of viewpoint images, and between the viewpoint images.
- An evaluation value calculation unit that calculates an evaluation value related to the degree of similarity of the pixels and disparity continuity between the viewpoint images, and a combination of parallax of each pixel that minimizes the evaluation value is selected as the parallax of each pixel
- a parallax map creating unit that creates a parallax map having a horizontal component and a vertical component, and the continuity of the parallax is determined by the parallax of the pixel of interest and the parallax of pixels adjacent in the horizontal and / or vertical direction of the pixel of interest. It is continuity, and the evaluation value is calculated to be smaller as the degree of similarity of the pixels is higher and smaller as the continuity of the parallax is higher in the evaluation value calculation unit. .
- the similarity between the pixels corresponds to a pixel in a peripheral region of a predetermined range including the target pixel in one viewpoint image and the target pixel in the other viewpoint image. It is characterized by the similarity with the pixels in the peripheral area of the predetermined range including the pixels to be processed.
- the third technical means is characterized in that, in the first or second technical means, the similarity of the pixel is calculated using at least a luminance value of the pixel.
- the continuity of the parallax is calculated with respect to a horizontal component and / or a vertical component of the parallax.
- the parallax map creation unit includes an occlusion region detection unit that detects an occlusion region based on the evaluation value. Is.
- the occlusion area detection unit detects both a horizontal occlusion area and a vertical occlusion area based on the evaluation value. is there.
- a seventh technical means is the fifth or sixth technical means, wherein the occlusion area detecting unit detects at least a lateral occlusion area based on the evaluation value, and the evaluation value calculating part is arranged in the horizontal direction.
- the evaluation value is calculated under the condition that the difference between the horizontal components of the parallax between the right and left pixels adjacent to the occlusion area is equal to the horizontal width of the horizontal occlusion area. It is what.
- the occlusion region detecting unit detects at least a vertical occlusion region based on the evaluation value
- the evaluation value calculating unit is configured to detect the vertical direction.
- the evaluation value is calculated under the condition that the vertical difference in the vertical component of the parallax between the upper and lower pixels adjacent to the occlusion area is equal to the vertical width of the vertical occlusion area. It is characterized by.
- the evaluation value calculation unit calculates a search range for the vertical component of the parallax between the viewpoint images according to the coordinates of the target pixel. It is characterized by changing.
- the evaluation value calculation unit calculates a search range for a lateral component of parallax between the viewpoint images according to the coordinates of the target pixel. It is characterized by changing.
- An eleventh technical means is a stereoscopic image processing method for estimating a horizontal component and a vertical component of a parallax between viewpoint images from a plurality of viewpoint images, wherein the similarity between pixels between the viewpoint images and between the viewpoint images Calculating a parallax continuity evaluation value, selecting a parallax combination of each pixel that minimizes the evaluation value as a parallax of each pixel, and creating a parallax map having a horizontal component and a vertical component
- the continuity of the parallax is continuity between the parallax of the pixel of interest and the parallax of pixels adjacent in the horizontal and / or vertical direction of the pixel of interest, and the evaluation value calculates the evaluation value In the step, the higher the pixel similarity, the smaller the calculation, and the higher the parallax continuity, the smaller the calculation.
- a twelfth technical means is a program for causing a computer to execute stereoscopic image processing for estimating a horizontal component and a vertical component of parallax between viewpoint images from a plurality of viewpoint images, and the stereoscopic image processing is performed using the viewpoint Calculating an evaluation value related to pixel similarity between images and continuity of parallax between the viewpoint images, and selecting a combination of parallax of each pixel that minimizes the evaluation value as parallax of each pixel;
- a parallax map having a horizontal component and a vertical component, and the continuity of the parallax is a continuity between the parallax of the pixel of interest and the parallax of pixels adjacent to the pixel of interest in the horizontal and / or vertical direction.
- the evaluation value is calculated to be smaller as the similarity between the pixels is higher, and to be smaller as the parallax continuity is higher.
- FIG. 1 is a block diagram illustrating a schematic configuration example of a stereoscopic image processing apparatus according to a first embodiment of the present invention.
- FIG. 3 is a block diagram illustrating a schematic configuration example of the stereoscopic image processing apparatus according to the first embodiment of the present invention
- FIG. 4 illustrates how to obtain an evaluation value according to the first embodiment of the present invention.
- the stereoscopic image processing apparatus 10 includes an input unit 11 that inputs a plurality of viewpoint images, and pixel similarity and viewpoint pixels between viewpoint images for the plurality of input viewpoint images.
- An evaluation value calculation unit 12 that calculates an evaluation value related to the continuity of the parallax between them, and a parallax map creation unit 13 that creates a parallax map having a horizontal component and a vertical component using the calculated evaluation value. .
- the parallax map creation unit 13 creates a parallax map by selecting the parallax combination of each pixel that minimizes the calculated evaluation value as the parallax of each pixel.
- a storage unit that stores a plurality of viewpoint images may be provided, and the evaluation value calculation unit 12 may read a plurality of viewpoint images therefrom.
- the continuity between the parallax of the target pixel and the parallax of pixels adjacent in the horizontal and vertical directions of the target pixel is used as the continuity of the parallax. Furthermore, in the evaluation value calculation unit 12 of the present invention, the evaluation value is calculated to be smaller as the pixel similarity is higher, and to be smaller as the parallax continuity is higher.
- the evaluation value calculation unit 12 calculates the continuity between the parallax of the target pixel and the parallax of the pixel adjacent to the target pixel, and the continuity of the result.
- An example in which the evaluation value is calculated using the calculated pixel similarity will be described.
- the calculation of the continuity with the parallax of the pixel vertically adjacent to the target pixel, and the calculation of the evaluation value using the result and the similarity of the calculated pixel will be described later.
- the stereoscopic image processing apparatus 10 performs parallax estimation independently for each row between viewpoint images input by the input unit 11.
- This parallax estimation is performed by the evaluation value calculation unit 12 and the parallax map creation unit 13, and the processing of each row is performed using dynamic programming. That is, the evaluation value calculation unit 12 and the parallax map creation unit 13 detect the horizontal component and the vertical component of parallax using dynamic programming.
- the evaluation value calculation unit 12 treats a combination of parallax values of each pixel in a row as a path, and calculates an evaluation value for each combination. However, in dynamic programming, the calculation amount is reduced because the route is searched by selecting only the combinations that may minimize the evaluation value without obtaining the evaluation values for all the combinations.
- the parallax map creation unit 13 includes an occlusion area detection unit 101, a parallax horizontal component detection unit 102, and a parallax vertical component detection unit 103, and a combination of parallax values that minimizes the evaluation value calculated by the evaluation value calculation unit 12.
- the selected occlusion map, the parallax horizontal component map, and the parallax vertical component map are generated and output.
- the occlusion map, the parallax horizontal component map, and the parallax vertical component map are collectively referred to as a parallax map.
- the parallax map creation unit 13 includes the occlusion area detection unit 101, that is, an example in which the parallax map creation unit 13 detects an occlusion area is described.
- Any configuration that detects a component and a vertical component and can create a parallax map including a parallax horizontal component map and a parallax vertical component map that is, a parallax map having a horizontal component and a vertical component may be used.
- the stereoscopic image processing apparatus 10 first converts the viewpoint image input by the input unit 11 into a luminance image in advance.
- a plurality of viewpoint images input through the input unit 11 are composed of a total of two images, a left-eye image and a right-eye image.
- the input unit 11 inputs the image for the left eye and the image for the right eye, performs conversion into a luminance image, and outputs the image to the evaluation value calculation unit 12.
- the input unit 11 may input a left-eye image and a right-eye image that have been converted into luminance images in advance.
- the parallax map of the right-eye image with respect to the left-eye image is estimated.
- processing is performed using a luminance image optimal for obtaining parallax (that is, the luminance value of the image), but the pixel values of the left-eye image and the right-eye image are not limited to the luminance value.
- a luminance image optimal for obtaining parallax that is, the luminance value of the image
- the pixel values of the left-eye image and the right-eye image are not limited to the luminance value.
- processing can be performed using one or a plurality of color values.
- the similarity M (x, y, p, q) of the luminance value of the right-eye image with respect to the luminance value of the left-eye image is set to 0 ⁇ x using the following equation (1). ⁇ w-1, 0 ⁇ p ⁇ P, -Q ⁇ q ⁇ Q.
- L and R are the luminance values of the left-eye image and the right-eye image
- (x, y) indicates the coordinates in the image
- y indicates the target line that is being estimated.
- p and q represent the horizontal component and vertical component of parallax, respectively.
- P and Q indicate the search range of the parallax horizontal component and vertical component, respectively, and p and q take values only in the range of 0 ⁇ p ⁇ P and ⁇ Q ⁇ q ⁇ Q, respectively.
- w is the number of horizontal pixels of the image
- 2a + 1 is a block size defined by ⁇ a ⁇ i ⁇ a and ⁇ a ⁇ j ⁇ a.
- the value of a may be determined arbitrarily, and the search range is not limited to a rectangle.
- image edge processing such as replacing the coordinates with the coordinates of the neighboring image edges may be performed.
- the similarity M (x, y, p, q) in the equation (1) is the difference between the luminance value of the right-eye image and the luminance value of the pixel (x, y) of the right-eye image with respect to the left-eye image.
- p, q) is a value defined using the sum of absolute values of the difference in luminance values of the left-eye image at a position shifted by p, q), and the smaller the value, the higher the similarity of the comparison target pixel.
- the degree of similarity is not limited to this example, and the degree of similarity may be defined by another function representing the degree of similarity such as a difference sum of squares or a normalized cross-correlation.
- the evaluation value calculation unit 12 applies to a peripheral region of a predetermined range of the target pixel (the block size range).
- the evaluation value uses the similarity of the luminance values between the viewpoint images. That is, the similarity between the pixels in the peripheral region of the predetermined range including the target pixel in one viewpoint image and the pixels in the peripheral region of the predetermined range including the pixel corresponding to the target pixel in the other viewpoint image It is preferable to use the degree.
- the evaluation value U (x, p) is calculated for all (x, p) satisfying 0 ⁇ x ⁇ w ⁇ 1, 0 ⁇ p ⁇ P.
- the evaluation value U (x, p) is a value calculated based on the minimum value of the above-described similarity M (x, y, p, q). This is because the pixel value to be compared is more similar as the value of the similarity M (x, y, p, q) is smaller.
- Ax in the equation (4) indicates a candidate for the parallax horizontal component adjacent to the left when it is assumed that the parallax horizontal component of the pixel of interest (x coordinate is x) of the right-eye image is p.
- the target pixel (x) of the right-eye image corresponds to the pixel (x + p) of the left-eye image.
- Ax elements will be described by classifying them into three.
- [I] element (x-1, p) This is a case where the parallax horizontal component of the pixel (x ⁇ 1) on the left and the pixel of interest is the same.
- the pixel (x ⁇ 1) of the right eye image corresponds to the pixel (x + p ⁇ 1) of the left eye image.
- Element (x ⁇ 2, p + 1),..., (X ⁇ P ⁇ 1 + p, P) This is a case where the pixel adjacent to the left of the target pixel is a horizontal occlusion region.
- the corresponding pixel is selected from the right eye image.
- the element (x ⁇ 3, p + 2) indicates that the pixel (x ⁇ 3) of the image for the right eye corresponds to the pixel (x + p ⁇ 1) of the image for the left eye.
- the two pixels (x-1) and (x-2) in the right-eye image have no corresponding point in the left-eye image and become a horizontal occlusion region.
- the difference in parallax horizontal component between the pixel (x-3) of the right-eye image and the target pixel is 2, which is equal to the width of the horizontal occlusion region. That is, the horizontal width of the horizontal occlusion region is restricted so as to be equal to the difference in the parallax horizontal component between the right and left pixels.
- FIG. 4 shows the range of the set Ax expressed by equation (4), where the horizontal axis is the x coordinate and the vertical axis is the parallax horizontal component.
- the coordinate with the lattice pattern indicates the target pixel (x), and the parallax horizontal component thereof is p.
- P + 1 coordinates shown in black correspond to elements of Ax.
- coordinates indicated by diagonal lines indicate an area outside the parallax search range at the image end, and are represented by a set B of the following equation.
- equation (2) in this region, the value of U (x, p) is replaced with a large value that can be regarded as infinite.
- the value of q given the minimum value by min (q), that is, the value of q when M (x, y, p, q) is minimized is expressed as Kq (x , P).
- the value of xb giving the minimum value by min (xb, pb) the value of pb, that is, the value of xb when U (xb, pb) + Dpx (p, pb) is minimized, the value of pb
- Kx and Kp represent a path for the evaluation value U.
- xb and pb are the horizontal coordinate and the value of the parallax horizontal component in the set Ax of the right-eye images, respectively. The technical meaning of the equations (2) to (4) will be described later.
- the disparity map creating unit 13 uses the calculated evaluation value U (w ⁇ 1, p) and Kx (x, p), Kp (x, p), and Kq (x, p) for each pixel in the target row. Create a parallax map. First, the minimum evaluation value is selected from the P + 1 evaluation values U (w ⁇ 1, p) obtained by the evaluation value calculation unit 12 based on the dynamic programming. However, in this example, since the value of U (x, p) is infinite in the region of the formula (5), U (w-1, 0) is automatically minimized.
- the occlusion area is also detected from these parallax lateral components.
- step S1 the values of variables x, xb, and pb are initialized.
- x is a horizontal coordinate of the image for the right eye in the target row.
- w ⁇ 1 is input as an initial value in order to perform processing in order from the right end pixel of the target row.
- xb is a horizontal coordinate in the set Ax of right-eye images, and w ⁇ 1 is input as an initial value for the same reason as x.
- pb is the value of the lateral component of parallax in the set Ax of right-eye images, and 0 is input as an initial value.
- step S2 the values of xb and x are compared. If the values are different, that is, if the element [III] is selected from Ax in the evaluation value calculation unit 12, the process proceeds to step S3. In step S3, it is determined that the coordinate (x, y) is a horizontal occlusion area, and a flag indicating that it corresponds to an occlusion area is output to the occlusion map. Thereafter, the process proceeds to step S8.
- step S2 When the values are the same in step S2, that is, when the element [I] or [II] is selected from Ax in the evaluation value calculation unit 12, the process proceeds to step S4, and the value of pb is input to p. .
- step S5 the value of the parallax horizontal component at the coordinates (x, y) is detected as p, and is output to the parallax horizontal component map.
- step S6 the value of the vertical parallax component at the coordinates (x, y) is detected as Kq (x, p), and is output to the vertical parallax component map.
- step S7 After the processing in steps S5 and S6, in step S7, the value of xb and the value of pb are updated with Kx (x, p) and Kp (x, p), respectively.
- steps S2 and S3 are processes for determining the occlusion area, and these processes are executed by the occlusion area detection unit 101.
- steps S ⁇ b> 4 and S ⁇ b> 5 are processes for detecting a parallax lateral component, and these processes are executed by the parallax lateral component detection unit 102.
- Step S ⁇ b> 6 is processing for detecting a vertical parallax component, and this processing is executed by the vertical parallax component detection unit 103.
- the parallax of all the pixels in the target row (the parallax for all x) is estimated, and at the same time, the occlusion region in the row is detected.
- the evaluation value calculation part 12 and the parallax map creation part 13 perform a process with respect to all the lines, the parallax of the whole image is estimated, and a parallax map is produced.
- the term min (q) in equation (2) has the effect of searching for the vertical component of parallax. With respect to each parallax horizontal component p, the value of the parallax vertical component q is added to the evaluation value by using the minimum similarity when the value is changed within the search range.
- the term min (xb, pb) in equation (2) applies a dynamic programming method that accumulates evaluation values using the minimum evaluation value in the left adjacent pixel.
- the evaluation values are accumulated except for the similarity of the occlusion area by using the range of Ax defined by the equation (4).
- the set Ax expressed by the equation (4) is for restricting the magnitude of the difference in the parallax horizontal component between the pixels adjacent to the left end and the right end of the occlusion area so as to be equal to the horizontal width of the occlusion area.
- the evaluation value calculation unit 12 performs the evaluation under the condition that the difference in parallax horizontal component between the right and left pixels adjacent to the horizontal occlusion area is equal to the horizontal width of the horizontal occlusion area. The value is calculated.
- the occlusion area detection unit 101 detects the occlusion area in the horizontal direction. Adopting such a set of ranges Ax has the effect of making it difficult for errors in occlusion area detection and parallax estimation to occur. Further, the constant term c 0 in the equation (2) has an effect of giving a reward to the evaluation value according to the number of corresponding points and preventing the occlusion region from being detected widely and in error.
- Dpx in the equation (3) is a value indicating the continuity of the parallax horizontal component, and when the parallax horizontal component is discontinuous, a penalty (constant term c 1 ) is given to make it difficult to detect the parallax.
- the present invention is not limited to this equation, and the smoothing effect may be given by other functions such as a linear function using a difference between two parallaxes.
- Dpx in the equation (2) is always 0, that is, an equation excluding the term of Dpx can be adopted.
- the evaluation value U (w ⁇ 1, p) in the expression (2) is the minimum value in the vertical component search range of the similarity in all pixels except the pixel estimated as the occlusion region, and the parallax of the disparity It is calculated based on the sum of the added value with the value indicating the continuity in the horizontal direction of the horizontal component.
- the evaluation value calculation unit 12 makes the pixel similarity between the viewpoint images and the lateral continuity of the parallax between the viewpoint images (that is, the parallax of the target pixel and the pixel adjacent to the side of the target pixel).
- the evaluation value is calculated using the continuity with the parallax. Therefore, the calculated evaluation value can be said to be a value related to the similarity and continuity.
- the evaluation value calculated by the evaluation value calculation unit 12 is calculated to be smaller as the pixel similarity between viewpoint pixels is higher (the smaller M (x, y, p, q) is), and the horizontal direction of the parallax It can be seen that the higher the continuity of (the smaller Dpx is), the smaller it is calculated.
- both the horizontal and vertical components of parallax are estimated based on the similarity of pixels between viewpoint images, and occlusion area detection is performed.
- parallax estimation with few errors can be performed even for an image having a vertical component in parallax. This effect can be obtained only by using the continuity between the parallax of the target pixel and the parallax of the pixel adjacent to the side of the target pixel as the continuity of the parallax.
- the description has been made on the assumption that the parallax map creation unit 13 performs the detection of the occlusion area and the horizontal component and the vertical component of the parallax, but even when the occlusion area is not detected, Since the bi-directional component of the parallax is estimated, the parallax can be estimated with few errors even for an image having a vertical component in the parallax.
- the disparity between the pixel of interest and the disparity of pixels adjacent in the horizontal and vertical directions of the pixel of interest are continuous.
- a method for calculating the evaluation value using the result and the calculated similarity of pixels will be described.
- the evaluation value is calculated to be smaller as the pixel similarity is higher, and the evaluation value is calculated to be smaller as the parallax continuity in the horizontal and vertical directions is higher.
- the first embodiment is a modified example in which the above-described continuity only in the horizontal direction is adopted so as to give a smoothing effect to both the horizontal direction and the vertical direction of parallax. Therefore, the schematic configuration example of the stereoscopic image processing apparatus in the present embodiment is shown in the stereoscopic image processing apparatus 10 of FIG. 1 as described above, but the processing method in the evaluation value calculation unit 12 is continuous only in the horizontal direction described above. This is different from the example of adopting sex.
- the evaluation value calculation unit 12 in the example adopting only the continuity in the horizontal direction described above obtains the continuity in the horizontal direction for the horizontal component of the parallax of the target pixel, and uses it for calculation of the evaluation value. Yes.
- the evaluation value calculation unit 12 in the first embodiment obtains the continuity in the horizontal direction and the vertical direction for the horizontal component and the vertical component of the parallax of the target pixel, respectively, and uses it for calculating the evaluation value.
- the parallax estimation is performed for each row in order from the top row, and at this time, the parallax value obtained in the previous row is used.
- the horizontal component and the vertical component of the parallax obtained in the preceding row are Fp (x) and Fq (x), respectively.
- the evaluation value calculation unit 12 first calculates the similarity M (x, y, p, q) in the same manner as in the above-described example in which only the continuity in the horizontal direction is employed.
- the evaluation value calculation unit 12 sets the evaluation value U (x, p) for all (x, p) satisfying 0 ⁇ x ⁇ w ⁇ 1, 0 ⁇ p ⁇ P according to the following expression (6). calculate.
- Dqx, Dpy, and Dqy are functions indicated by the following equations, respectively, and c 2 , c 3 , c 4 , c 5 , and c 6 are constants. occ is a constant indicating that the pixel is an occlusion area.
- the expressions (3) and (4) are used as they are, respectively, and the rest of the processing is performed in the same manner as in the example adopting the continuity only in the horizontal direction described above.
- the value of q given the minimum value by min (q) is held as Kq (x, p).
- the parallax map creation unit 13 performs the same processing as in the example adopting the continuity only in the horizontal direction described above.
- the parallax estimation for all the pixels in the target row is completed, the horizontal and vertical components of all the parallaxes in the row are held as Fp (x) and Fq (x).
- occ is substituted for both Fp (x) and Fq (x). Then move on to the next line.
- processing is performed in order from the top row.
- processing may be performed in order from the bottom row.
- estimation of the center line may be performed first, processing may be performed in order from the center up to the top line, and then processing may be performed in order from the center down to the bottom line.
- the estimation process is performed from the line in which the error is unlikely to occur, thereby reducing the error in the entire image.
- the Dqx in the equation (7) is a value indicating the continuity in the horizontal direction of the parallax vertical component
- the Dpy in the equation (8) and the Dqy in the equation (9) are the continuity in the vertical direction of the parallax horizontal component and the vertical component, respectively. Is a value indicating Dqx, Dpy, and Dqy each give a penalty when they are discontinuous.
- a two-dimensional smoothing effect can be provided, and in particular, an area where there are few patterns in an image, or an area where parallax cannot be uniquely determined only by local similarity, such as a repeated pattern
- errors in parallax estimation can be reduced.
- the evaluation value U (w ⁇ 1, p) of the expression (6) is calculated based on the value indicating the continuity and the similarity M (x, y, p, q) of the expression (1). Value. More specifically, the evaluation value U (w ⁇ 1, p) expressed by the equation (6) is the minimum value in the vertical component search range of the similarity in all pixels except the pixel estimated as the occlusion region. The sum of the added value of the horizontal component of the parallax and the value indicating the continuity in the horizontal direction and the vertical direction of the vertical component is calculated.
- the evaluation value calculation unit 12 makes the pixel similarity between the viewpoint images and the continuity in the horizontal and vertical directions of the parallax between the viewpoint images (that is, the parallax of the target pixel and the horizontal and vertical directions of the target pixel).
- the evaluation value is calculated using the continuity with the parallax of vertically adjacent pixels. Therefore, the calculated evaluation value can be said to be a value related to the similarity and continuity.
- the evaluation value calculated by the evaluation value calculation unit 12 is calculated to be smaller as the pixel similarity between viewpoint pixels is higher (the smaller M (x, y, p, q) is), and the horizontal direction of the parallax It can be seen that the smaller the continuity in the vertical direction (the smaller the Dpx and Dqy are), the smaller the calculation is.
- the expression (10) basically has the same meaning as the expression (6).
- the target line is the uppermost line and the values of Fp (x) and Fq (x) are entered. It is specialized when there is no.
- the stereoscopic image processing apparatus of the present embodiment when performing parallax estimation, the horizontal component and the vertical component of parallax are estimated, and when performing parallax estimation, the parallax is processed in the lateral direction.
- the estimation error of the parallax horizontal component can be reduced by estimating the vertical component of the parallax.
- the evaluation value is calculated using horizontal continuity without using vertical continuity, or using horizontal continuity and vertical continuity, an example is given. It is also possible to use the continuity in the vertical direction without using the continuity in the direction. That is, the evaluation value can be calculated using the continuity between the parallax of the pixel of interest and the parallax of the pixel adjacent in the vertical direction of the pixel of interest. For example, in the equation (6), by simply using an equation in which Dpx and Dqx are always set to 0, only the continuity in the vertical direction can be used, thereby smoothing the parallax only in the vertical direction. You can also
- the search range of the vertical parallax component in the first embodiment is modified.
- the lens distortion increases as the distance from the center of the image increases
- the vertical parallax component generated by the angle of the optical axis in the cross photography method increases as the distance from the center of the subject increases. For this reason, for example, when the characteristics of the optical axis and lens of the photographed camera are known in advance by measurement, the distribution tendency of the parallax vertical component can be predicted.
- the evaluation value calculation unit 12 when the evaluation value calculation unit 12 knows the distribution tendency of the vertical parallax component in the image in advance as described above, the search range for the vertical parallax component between the viewpoint images (that is, the predetermined range described above) accordingly.
- the range in the vertical direction) is varied according to the coordinates. That is, the evaluation value calculation unit 12 in the second embodiment changes the search range for the vertical component of the parallax between viewpoint images according to the coordinates of the pixel of interest.
- the search range of the parallax vertical component is changed according to the coordinates accordingly.
- the search range of the parallax lateral component in the first embodiment can also be corrected. That is, similarly, when the distribution tendency of the parallax horizontal component in the image is known in advance, the search range of the parallax vertical component between the viewpoint images (that is, the horizontal range of the predetermined range) according to the coordinates accordingly. Thus, it is possible to perform parallax estimation with few errors.
- the lateral parallax component generally, the lens distortion increases as the distance from the center of the image increases.
- the lateral parallax component generated by the angle of the optical axis in the crossing method photographing is an image when the distance of the subject is constant. As the distance from the center increases, the distribution tendency can be predicted. Only one of the process for changing the search range of the parallax horizontal component and the process for changing the search range of the parallax vertical component can be employed.
- FIG. 6 is a block diagram illustrating a schematic configuration example of a stereoscopic image processing apparatus according to the third embodiment of the present invention.
- the stereoscopic image processing apparatus 20 includes an input unit 21, an evaluation value calculation unit 22, and a parallax map creation unit 23.
- the parallax map creation unit 23 includes a horizontal occlusion area detection unit 201, a parallax horizontal component detection unit 202, a vertical occlusion area detection unit 203, and a parallax vertical component detection unit 204, which are respectively a horizontal occlusion map and a parallax horizontal component map.
- a vertical occlusion map and a parallax vertical component map are generated and output.
- parallax map The horizontal occlusion map, vertical occlusion map, parallax horizontal component map, and parallax vertical component map are collectively referred to as a parallax map.
- parallax estimation is performed for each row in order from the top row, but the vertical component Fq (x) of the parallax obtained in the previous row and the occlusion flag Fc (x) obtained in the previous row are used.
- the input unit 21 is the same as the input unit 11 of the first embodiment.
- the evaluation value calculation unit 22 calculates the similarity M (x, y, p, q) for the target row y, as in the expression (1) of the first embodiment.
- the evaluation value U (x, p) is calculated for all (x, p) satisfying 0 ⁇ x ⁇ w ⁇ 1, 0 ⁇ p ⁇ P according to the following expression (12).
- the equation (12) is used.
- Ax is a set of (x, p) that satisfies Expression (4) as in the first embodiment.
- Expression (12) is recursive, and U (w ⁇ 1, p) obtained at the end is an evaluation value for a combination of parallax values in the target row. Since 0.ltoreq.p.ltoreq.P, P + 1 U (w-1, p) are obtained and are evaluation values for P + 1 paths.
- Ay in Expression (14) indicates a candidate for a parallax vertical component when it is assumed that the parallax horizontal component of the pixel of interest (coordinates (x, y)) in the target row y of the right-eye image is p.
- Fc (x) 0
- the pixel (x, y ⁇ 1) immediately above the target pixel is neither a horizontal occlusion area nor a vertical occlusion area, and its parallax vertical component is Fq (x).
- Fp the pixel (x, y ⁇ 1) of the right eye image and the pixel (x + Fp, y ⁇ 1 + Fq (x)) of the left eye image correspond to each other.
- the Ay elements in this case will be described by classifying them into three.
- the two pixels (x, y) and (x, y + 1) in the right-eye image have no corresponding point in the left-eye image and become a vertical occlusion region.
- the difference in the vertical parallax component between (x, y ⁇ 1) and (x, y + 2) of the right-eye image is 2, which is equal to the vertical width of the vertical occlusion area. That is, the vertical width of the vertical occlusion area is restricted to be equal to the difference in the vertical parallax component between the upper and lower pixels.
- Fc (x) ⁇ the pixel above the target pixel is a horizontal occlusion region or a vertical occlusion region.
- Fc (x) +1 is the distance from the target pixel to the pixel adjacent to the upper end of the occlusion area, and the parallax vertical component of the pixel is held in Fq (x).
- the lateral parallax component of the pixel is denoted by Fp
- the right-eye image (x, y-1-Fc (x)) and the left-eye image (x + Fp, y-1-Fc (x) + Fq (x)) are It corresponds.
- Ay elements are classified into two and described.
- Element (y, Fq (x) ⁇ Fc (x)) This is a case where the pixel of interest is not the vertical occlusion region.
- the right-eye image (x, y) corresponds to the left-eye image (x + p, y + Fq (x) ⁇ Fc (x)).
- the parallax vertical component of the target pixel is Fq (x) ⁇ Fc (x)
- the difference of the parallax vertical component from the pixel adjacent to the upper end of the vertical occlusion area is Fc (x). This is equal to the vertical width of the vertical occlusion area.
- [V] element (y + 1, Fq (x) ⁇ Fc (x) ⁇ 1),..., (Y + Fq (x) ⁇ Fc (x) + Q, ⁇ Q)
- the pixel of interest is a vertical occlusion region.
- the corresponding pixel of the left-eye image (x + p ′, y + Fq (x) ⁇ Fc (x)) is selected from the right-eye image.
- the parallax map creation unit 23 detects the horizontal component and the vertical component of the parallax from the calculated evaluation values, but the calculated evaluation values U (w ⁇ 1, p), Kx (x, p), Kp (x, p ) And Kq (x, p), it is also determined whether or not the pixel in the target row is an occlusion area, along with detection of the parallax horizontal and vertical components.
- the occlusion area determines both vertical occlusion and horizontal occlusion.
- step S11 the values of variables x, xb, and pb are initialized. This initialization is as described in step S1 of FIG.
- step S12 the values of xb and x are compared. If the values are different, the process proceeds to step S13.
- step S13 it is determined that the coordinates (x, y) are horizontal occlusions, and a flag indicating that the coordinates correspond to the horizontal occlusion area is output to the horizontal occlusion map.
- step S21 the values of Fq (x) and Fc (x) are updated to ⁇ Q ⁇ 1 and 0, respectively, and the process proceeds to step S23.
- step S12 If the values are the same in step S12, the process proceeds to step S14, and the value of pb is input to p. Further, in step S15, the value of the parallax horizontal component at the coordinates (x, y) is detected as p, and is output to the parallax horizontal component map.
- step S16 the difference between the parallax vertical component Kq (x, p) of the coordinates (x, y) and the vertical parallax component of the previous row minus the vertical occlusion area width of the previous row, that is, Fq (x) ⁇ Compare the values of Fc (x).
- Kq (x, p) is equal to or greater than Fq (x) ⁇ Fc (x)
- the value of the vertical parallax component at the coordinates (x, y) is detected as Kq (x, p), and is output to the vertical parallax component map.
- step S18 the values of Fq (x) and Fc (x) are updated with Kq (x, p) and 0, respectively, at step S19, and the values of xb and pb are respectively updated with Kx (x, p) and step S22. Update with Kp (x, p).
- step S16 If Kq (x, p) is less than Fq (x) ⁇ Fc (x) in step S16, that is, if element [iii] or [v] is selected from Ay in evaluation value calculation unit 22, Proceed to S17.
- step S17 it is determined that the coordinates (x, y) are vertical occlusions, and a flag indicating that the vertical occlusion area corresponds to the vertical occlusion area is output.
- step S17 the value of Fc is updated to increase by 1 in step S20, and then the values of xb and pb are updated with Kx (x, p) and Kp (x, p), respectively, in step S22.
- the value of Fq (x) is not updated and is left as it is.
- ⁇ Q ⁇ 1 in step S21 is a range of values that can be taken by Kq (x, p), that is, a value that is smaller than the vertical component search range of parallax.
- x, p) is a value used to determine that Fq (x) ⁇ Fc (x) or more.
- steps S12 and S13 are processing for determining the horizontal occlusion region, and the horizontal occlusion region detection unit 201 collectively executes the determination.
- steps S ⁇ b> 14 and S ⁇ b> 15 are processes for detecting a parallax lateral component, and the parallax lateral component detection unit 202 executes this process collectively.
- Steps S ⁇ b> 16 and S ⁇ b> 17 are processes for determining the vertical occlusion area, and the vertical occlusion area detection unit 203 collectively executes the determination.
- Step S18 is a process of detecting the vertical parallax component, and the parallax vertical component detection unit 204 executes this process.
- the parallax of all the pixels in the target row is estimated, and at the same time, the horizontal occlusion region and the vertical occlusion region in the row are detected.
- the evaluation value calculation unit 22 and the parallax map creation unit 23 are performed in all rows, the parallax of the entire image is estimated and a parallax map is created.
- Equation (12) has the effect of searching for the vertical component of parallax, but by using the range of Ay defined by equation (14) and equation (13), Instead of using the similarity of the occlusion area, the evaluation values are accumulated using the similarity of the pixels adjacent to the lower end of the occlusion area instead.
- the set Ay expressed by the equation (14) is for restricting the difference in the vertical parallax component between the pixels adjacent to the upper and lower ends of the vertical occlusion area to be equal to the vertical width of the vertical occlusion area.
- the evaluation value calculation unit 22 determines that the magnitude of the difference in the vertical parallax component between the upper and lower pixels adjacent to the vertical occlusion area is equal to the vertical width of the vertical occlusion area.
- the evaluation value is calculated. This has the effect of making it difficult for errors in occlusion area detection and parallax estimation to occur.
- the evaluation value U (w ⁇ 1, p) of the expression (12) is the minimum value in the vertical component search range of the similarity in all pixels except the pixel estimated as the horizontal occlusion area, and the parallax of the disparity It is calculated based on the sum of the added value with the value indicating the continuity in the horizontal direction of the horizontal component.
- the evaluation value calculation unit 22 calculates the evaluation value by using the pixel similarity between the viewpoint images and the lateral continuity of the parallax between the viewpoint images.
- the evaluation value calculated by the evaluation value calculation unit 22 is calculated to be smaller as the pixel similarity between the viewpoint pixels is higher (the smaller M ′ (x, yb, p, qb) is), and the side of the parallax is calculated. It can be seen that the higher the direction continuity (the smaller the Dpx is), the smaller it is calculated.
- the formula (12) may be improved to calculate the evaluation value using the continuity in the vertical direction of the parallax between the viewpoint images in the same manner as the formula (6).
- the evaluation value calculated by the evaluation value calculation unit 22 is calculated to be smaller as the degree of similarity of pixels between viewpoint pixels is higher (as M ′ (x, yb, p, qb) is smaller), and the parallax of the parallax is calculated.
- the higher the continuity in the horizontal and vertical directions the smaller the Dpx, Dpy, Dqx, and Dqy are), the smaller the calculation is.
- the stereoscopic image processing apparatus of the present embodiment when performing parallax estimation, detection of the vertical occlusion area is performed at the same time, so that there are fewer errors even for an image having a vertical component in parallax. Parallax estimation can be performed.
- the plurality of viewpoint images input through the input unit 11 are the two viewpoint images of the left-eye image and the right-eye image, that is, the viewpoint image by the camera arranged horizontally.
- the number of viewpoint images is not limited to two, and even when there are three or more viewpoint images, the parallax between the viewpoint images can be similarly estimated by the processing described in each embodiment.
- the parallax of another viewpoint image with respect to a certain viewpoint image can be estimated, or the parallax can be estimated for all combinations between the viewpoint images. The same applies to the estimation of the occlusion area.
- parallax and occlusion areas can be similarly estimated for a plurality of viewpoint images taken by a vertically arranged camera. At that time, the processing in each embodiment can be applied as it is, or the processing in the vertical direction and the horizontal direction can be switched and applied. Furthermore, parallax and occlusion areas can be similarly estimated for a plurality of viewpoint images captured by cameras arranged obliquely.
- the present invention is not limited to the above embodiments. Embodiments obtained by appropriately combining the technical means disclosed in these embodiments are also included in the technical scope of the present invention.
- the stereoscopic image processing apparatus can be incorporated in video output devices such as various recorders and various recording media playback apparatuses.
- the present invention can also take a form as a stereoscopic image display device such as a television device or a monitor device in which a display device is externally connected or mounted in such a stereoscopic image processing device.
- the stereoscopic image processing devices include, for example, a microprocessor (or DSP: Digital Signal Processor), a memory, a bus, an interface, and a peripheral device. It can be realized by hardware such as a device and software executable on these hardware. Part or all of the hardware can be mounted as an integrated circuit / IC (Integrated Circuit) chip set, and in this case, the software may be stored in the memory. In addition, all the components of the present invention may be configured by hardware, and in that case as well, part or all of the hardware can be mounted as an integrated circuit / IC chip set. .
- the stereoscopic image processing apparatus is simply a CPU (Central Processing Unit), a RAM (Random Access Memory) as a work area, a ROM (Read Only Memory) or an EEPROM (ROM) as a storage area for a control program. It can also be configured with a storage device such as Electrically (Erasable Programmable ROM).
- the control program includes a later-described stereoscopic image processing program for executing the processing according to the present invention.
- This stereoscopic image processing program can be incorporated in the PC as application software for stereoscopic image processing, and the PC can function as a stereoscopic image processing apparatus.
- the stereoscopic image processing program may be stored in an external server such as a Web server in a state that can be executed from the client PC.
- the stereoscopic image processing apparatus has been mainly described, but the present invention can also take a form as a stereoscopic image processing method, as exemplified by the flow of control in this stereoscopic image processing apparatus.
- This stereoscopic image processing method is a stereoscopic image processing method for estimating a horizontal component and a vertical component of parallax between viewpoint images from a plurality of viewpoint images, in which an evaluation value calculation unit calculates the similarity between pixels between viewpoint images and A step of calculating an evaluation value related to the continuity of parallax between viewpoint images, and a parallax map creating unit detects a combination of pixels between viewpoint images that minimizes the evaluation value as a parallax; And a step of creating a parallax map having a vertical component.
- the continuity of the parallax is the continuity between the parallax of the pixel of interest and the parallax of the pixel adjacent in the horizontal and / or vertical direction of the pixel of interest, and the evaluation value is calculated in the step of calculating the evaluation value. It is assumed that the higher the similarity is, the smaller the calculation is, and the higher the parallax continuity is, the smaller the calculation is.
- Other application examples are as described for the stereoscopic image processing apparatus.
- the present invention may also take the form of a stereoscopic image processing program for causing the computer to execute the stereoscopic image processing method. That is, this stereoscopic image processing program is a program for causing a computer to execute a stereoscopic image process for estimating a horizontal component and a vertical component of parallax between viewpoint images from a plurality of viewpoint images.
- the stereoscopic image processing includes a step of calculating an evaluation value related to the similarity between pixels between viewpoint images and the continuity of parallax between viewpoint images, and for each pixel between viewpoint images that minimizes the evaluation value. And detecting a combination as a parallax and creating a parallax map having a horizontal component and a vertical component.
- the continuity of the parallax is the continuity between the parallax of the pixel of interest and the parallax of the pixel adjacent in the horizontal and / or vertical direction of the pixel of interest, and the evaluation value is calculated in the step of calculating the evaluation value.
- Other application examples that are calculated to be smaller as the degree of similarity is higher and that are calculated to be smaller as the continuity of parallax is higher are as described for the stereoscopic image processing apparatus.
- the computer is not limited to a general-purpose PC, and various forms of computers such as a microcomputer and a programmable general-purpose integrated circuit / chip set can be applied.
- this program is not limited to be distributed via a portable recording medium, but can also be distributed via a network such as the Internet or via a broadcast wave.
- Receiving via a network refers to receiving a program recorded in a storage device of an external server.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Image Processing (AREA)
Abstract
視差に縦成分がある画像の場合にも正しく視差を推定することが可能な立体画像処理装置を提供する。立体画像処理装置(10)は、複数の視点画像を入力する入力部(11)と、入力された複数の視点画像について視点画像間での画素の類似度及び視点画像間の視差の連続性に関する評価値を算出する評価値算出部(12)と、算出された評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成する視差マップ作成部(13)とを備えている。ここで、視差の連続性は、注目画素の視差とその注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、評価値は、評価値算出部(12)において、画素の類似度が高いほど小さく算出され、視差の連続性が高いほど小さく算出される。
Description
本発明は、視点画像間の視差を推定することが可能な立体画像処理装置、立体画像処理方法、及びプログラムに関するものである。
左目用画像と右目用画像の2枚の視点画像から構成されるステレオ画像において、視点画像間での被写体の座標のずれは視差と呼ばれ、被写体とカメラとの距離に応じて異なる。被写体の奥行きは、視点画像間の幾何学的配置から導かれる変換式によって視差から求めることができるため、視差は奥行き情報として用いられる。
以降の説明では、手前にある被写体ほど視差が大きく、奥にあるほど視差が小さいと表す。また、視差は、対応点において、右目用画像内の位置よりも左目用画像内での位置が右にある場合を正値とし、同様に、左目用画像内の位置よりも右目用画像内での位置が右にある場合を負値とする。
視差推定とは、視点画像の各画素において、視点画像間の対応点を求めて視差を出力する処理であり、視差推定より得られた各画素の視差を画素値として表した画像を視差マップと呼ぶ。視差推定手法については、ブロックマッチング、動的計画法、グラフカットなどを用いた様々な手法が提案されている。無論、視点画像の数は2枚に限らず、3枚以上であっても視点画像間の視差(例えばある基準となる視点画像に対する他の視点画像の視差)は推定できる。
特許文献1には、視差の横方向と縦方向の連続性を拘束条件とし、動的計画法を適用することによって、滑らかで誤差の少ない視差マップを推定する手法が開示されている。また、非特許文献1には、動的計画法を用いて、視差推定と同時に横方向のオクルージョン領域の同定を行う手法が開示されている。オクルージョン領域とは、前景に遮蔽されることによって、片方の視点画像にしか写っていない背景領域であり、その領域では対応点が存在しない。
オクルージョン領域が生じる一例を、図1A,図1Bを参照しながら説明する。図1A,図1Bは家の前に人物がいる画像であり、図1Aは左目用画像1L、図1Bは右目用画像1Rを表している。左目用画像1Lにおいて、人物の左側部分に位置する斜線で示した部分は、左目用画像1Lでは存在する部分であるが、右目用画像1Rには写っていない。同様に右目用画像1Rにおいて、人物の右側部分に位置する斜線で示した部分は、右目用画像1Rでは存在する部分であるが、左目用画像1Lには写っていない。これらの斜線部分はオクルージョン領域であり、前景である人物に遮蔽されて生じたものである。人物が写った領域は視差が大きく、家が写った部分はそれよりも視差が小さいが、図1A,図1Bから分かるように、オクルージョン領域は、視差が異なる領域が隣接した場合に生じる。
S. Birchfield and C. Tomasi, Depth Discontinuities by Pixel-to-Pixel Stereo, International Journal of Computer Vision, 35(3): 269-293, December 1999.
しかしながら、特許文献1、非特許文献1に記載の技術をはじめとする従来の視差推定方法においては、視点画像間の対応点同士は、縦方向にずれが無いことが想定されており、縦方向にずれが生じている画像に対しては正しい視差が推定できないという問題があった。
実際、縦方向のずれは、例えば交差法によって撮影された画像において生じる。交差法では光軸が平行でないため、エピポーラ線の傾きが左目用画像と右目用画像で異なり、領域によって程度の異なる縦方向のずれが生じる。すなわち、視差は横成分と縦成分を持つ。さらに、視差の縦成分が異なる領域が隣接した場合には、縦方向の遮蔽によるオクルージョン領域が生じる。
具体例を挙げて説明する。図2A,図2Bは交差法撮影によって縦方向にずれが生じている画像の例であり、図2Aは左目用画像2L、図2Bは右目用画像2Rを表している。なお、図2A,図2Bにおける点線は、左目用画像2Lと右目用画像2Rとで同じ行の位置を示すために描いたものである。右目用画像2R内では左目用画像2Lよりも家が上方に位置し、縦方向にずれが生じていることが分かる。人物の位置も縦方向にずれているが、ずれの量は家よりも小さい。斜線で示した領域は、図1A,図1Bの例と同様、前景である人物に遮蔽されて生じたオクルージョン領域である。
人物と家とでは縦方向のずれ量が異なっているため、右目用画像2Rにおいて、人物の頭より上の部分にもオクルージョン領域が存在している。すなわち、この部分は縦方向の遮蔽によって生じたオクルージョンである。図1A,図1Bの例では横方向にのみ遮蔽していたが、図2A,図2Bの例では、横方向と縦方向の両方で遮蔽が生じている。以降では、縦方向の遮蔽により生じるオクルージョンを縦方向オクルージョンと呼び、横方向の遮蔽によって生じる従来のオクルージョンを横方向オクルージョンと呼ぶことにする。そして、このような縦方向オクルージョン領域は、上述した従来の視差推定方法では考慮されておらず、視差推定の誤りの要因となり得る。
縦方向のずれや縦方向オクルージョンは、左目用画像と右目用画像でレンズの倍率がずれている場合にも生じる。さらに、左目用画像と右目用画像の撮影位置が縦にずれている場合や、撮影方向が縦にずれている場合にも発生する。また、縦に配置されたカメラで撮影した視点画像間の視差を推定する場合においても、同様に横方向のずれや横方向オクルージョンが発生するという課題がある。さらにより一般的には、斜めに配置されたカメラで撮影した視点画像間の視差を推定する場合においても、同様の課題がある。
本発明は、上述のような実情に鑑みてなされたものであり、その目的は、視差に縦成分がある画像の場合にも正しく視差を推定することが可能な立体画像処理装置、立体画像処理方法、及びプログラムを提供することにある。
上記課題を解決するために、本発明の第1の技術手段は、複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理装置であって、前記視点画像間での画素の類似度及び前記視点画像間の視差の連続性に関する評価値を算出する評価値算出部と、該評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成する視差マップ作成部とを備え、前記視差の連続性は、注目画素の視差と該注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、前記評価値は、前記評価値算出部において、前記画素の類似度が高いほど小さく算出され、前記視差の連続性が高いほど小さく算出される、ことを特徴としたものである。
第2の技術手段は、第1の技術手段において、前記画素の類似度は、一方の視点画像における注目画素を含む所定範囲の周辺領域中の画素と、他方の視点画像における該注目画素に対応する画素を含む所定範囲の周辺領域中の画素との類似度であることを特徴としたものである。
第3の技術手段は、第1又は第2の技術手段において、前記画素の類似度は、少なくとも画素の輝度値を用いて算出されることを特徴としたものである。
第4の技術手段は、第1~第3のいずれか1の技術手段において、前記視差の連続性は、視差の横成分及び/又は縦成分に関して算出されることを特徴としたものである。
第5の技術手段は、第1~第4のいずれか1の技術手段において、前記視差マップ作成部は、前記評価値に基づき、オクルージョン領域を検出するオクルージョン領域検出部を有することを特徴としたものである。
第6の技術手段は、第5の技術手段において、前記オクルージョン領域検出部は、前記評価値に基づき、横方向のオクルージョン領域と縦方向のオクルージョン領域の両方を検出することを特徴としたものである。
第7の技術手段は、第5又は第6の技術手段において、前記オクルージョン領域検出部は、前記評価値に基づき、少なくとも横方向のオクルージョン領域を検出し、前記評価値算出部は、前記横方向のオクルージョン領域に隣接する右側と左側の画素間の視差の横成分の差分の大きさが、前記横方向のオクルージョン領域の横幅と等しくなるという条件下で、前記評価値の算出を行うことを特徴としたものである。
第8の技術手段は、第5又は第6の技術手段において、前記オクルージョン領域検出部は、前記評価値に基づき、少なくとも縦方向のオクルージョン領域を検出し、前記評価値算出部は、前記縦方向のオクルージョン領域に隣接する上側と下側の画素間の視差の縦成分の差分の大きさが、前記縦方向のオクルージョン領域の縦幅と等しくなるという条件下で、前記評価値の算出を行うことを特徴としたものである。
第9の技術手段は、第1~第8のいずれか1の技術手段において、前記評価値算出部は、前記視点画像間の視差の縦成分についての探索範囲を、注目画素の座標に応じて変化させることを特徴としたものである。
第10の技術手段は、第1~第8のいずれか1の技術手段において、前記評価値算出部は、前記視点画像間の視差の横成分についての探索範囲を、注目画素の座標に応じて変化させることを特徴としたものである。
第11の技術手段は、複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理方法であって、前記視点画像間での画素の類似度及び前記視点画像間の視差の連続性に関する評価値を算出するステップと、前記評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成するステップとを有し、前記視差の連続性は、注目画素の視差と該注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、前記評価値は、前記評価値を算出するステップにおいて、前記画素の類似度が高いほど小さく算出され、前記視差の連続性が高いほど小さく算出される、ことを特徴としたものである。
第12の技術手段は、コンピュータに、複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理を実行させるためのプログラムであって、前記立体画像処理は、前記視点画像間での画素の類似度及び前記視点画像間の視差の連続性に関する評価値を算出するステップと、該評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成するステップとを含み、前記視差の連続性は、注目画素の視差と該注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、前記評価値は、前記評価値を算出するステップにおいて、前記画素の類似度が高いほど小さく算出され、前記視差の連続性が高いほど小さく算出される、ことを特徴としたものである。
本発明によれば、視差に縦成分がある画像の場合にも誤りの少ない視差推定を行うことができる。
以下、添付図面を参照しながら本発明の実施の形態について詳細に説明する。図面において同じ機能を有する部分については同じ符号を付し、繰り返しの説明は省略する。
(第一の実施形態)
図3は、本発明の第一の実施形態に係る立体画像処理装置の概略構成例を示すブロック図で、図4は、本発明の第一の実施形態に係る評価値の求め方を説明するための図である。
図3は、本発明の第一の実施形態に係る立体画像処理装置の概略構成例を示すブロック図で、図4は、本発明の第一の実施形態に係る評価値の求め方を説明するための図である。
図3で示すように、本実施形態の立体画像処理装置10は、複数の視点画像を入力する入力部11と、入力された複数の視点画像について視点画像間での画素の類似度及び視点画素間の視差の連続性に関する評価値を算出する評価値算出部12と、算出された評価値を用いて、横成分及び縦成分を有する視差マップを作成する視差マップ作成部13とを備えている。視差マップ作成部13は、算出された評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して視差マップを作成する。無論、入力部11の代わりに複数の視点画像を記憶した記憶部を備え、評価値算出部12がそこから複数の視点画像を読み出すような構成を採用してもよい。
そして、本発明における評価値算出部12では、視差の連続性として、注目画素の視差とその注目画素の横及び縦に隣接する画素の視差との連続性を用いる。さらに、本発明における評価値算出部12では、評価値は、画素の類似度が高いほど小さく算出され、視差の連続性が高いほど小さく算出されるものとする。
以下の説明では、理解を容易にするために、まず、評価値算出部12で注目画素の視差とその注目画素の横に隣接する画素の視差との連続性を算出し、その結果の連続性と算出した画素の類似度とを用いて評価値を算出する例を挙げて説明する。注目画素の縦に隣接する画素の視差との連続性の算出、並びにその結果及び算出した画素の類似性を用いた評価値の算出については後述する。
本実施形態の立体画像処理装置10は、入力部11で入力された視点画像間について、1行ずつ独立に視差推定を行う。この視差推定は、評価値算出部12及び視差マップ作成部13が実行し、各行の処理は、動的計画法を用いて行う。つまり、評価値算出部12及び視差マップ作成部13は、視差の横成分と縦成分とを、動的計画法を用いて検出する。評価値算出部12では、行内の各画素の視差値の組合せを経路として扱い、各組合せに対する評価値を算出する。但し、動的計画法では全ての組合せについての評価値を求めずに、評価値を最小にする可能性のある組合せだけを選んで経路を探索するため、計算量が削減される。
視差マップ作成部13は、オクルージョン領域検出部101、視差横成分検出部102、視差縦成分検出部103を有し、評価値算出部12で算出された評価値を最小とする視差値の組合せを選択しオクルージョンマップ、視差横成分マップ、視差縦成分マップを生成し、出力する。オクルージョンマップ、視差横成分マップ、視差縦成分マップを併せて、視差マップと呼ぶことにする。ここでは、好ましい例として、視差マップ作成部13がオクルージョン領域検出部101を有する例、つまり視差マップ作成部13がオクルージョン領域の検出を行う例を挙げるが、視差マップ作成部13は少なくとも視差の横成分と縦成分とを検出して、視差横成分マップ及び視差縦成分マップでなる視差マップ(つまり、横成分及び縦成分を有する視差マップ)を作成できる構成であればよい。
このような構成において、立体画像処理装置10では、まず入力部11で入力された視点画像を予め輝度画像に変換する。ここでは、入力部11を通して入力される複数の視点画像が左目用画像及び右目用画像の合計2枚から構成される例を挙げる。例えば、入力部11が左目用画像と右目用画像とを入力し、輝度画像への変換も施した上で、評価値算出部12に出力する。無論、入力部11が予め輝度画像に変換された左目用画像及び右目用画像を入力してもよい。以降では、左目用画像を基準とした右目用画像の視差マップを推定する場合について説明する。また、ここでは、視差を求めるのに最適な輝度画像(つまり画像の輝度値)を用いて処理を行うことを前提としているが、輝度値に限らず、左目用画像及び右目用画像の画素値、例えばRGBデータであればそのいずれか1又は複数色の値を用いて処理を行うこともできる。
評価値算出部12では、まず、左目用画像の輝度値に対する右目用画像の輝度値の類似度M(x,y,p,q)を、次の(1)式を用いて、0≦x≦w-1,0≦p≦P,-Q≦q≦Qの範囲で計算する。
ここで、L、Rはそれぞれ左目用画像と右目用画像の輝度値、(x,y)は画像中の座標を示し、yは推定を行っている注目行を示す。p,qはそれぞれ視差の横成分,縦成分を表す。P,Qはそれぞれ視差の横成分、縦成分の探索範囲を示し、p,qはそれぞれ0≦p≦P、-Q≦q≦Qの範囲の値のみをとることとする。wは画像の横画素数、2a+1は-a≦i≦a及び-a≦j≦aで定義されるブロックサイズである。aの値は任意に決めておけばよいし、探索範囲は矩形に限ったものでもない。なお、(1)式の計算の際、座標が画像の外の位置を示した場合は、その座標を近傍の画像端の座標で置き換えるなどの画像端処理を行えばよい。
(1)式の類似度M(x,y,p,q)は、左目用画像に対する右目用画像の輝度値の差分(右目用画像の画素(x,y)の輝度値に対して、(p,q)だけずらした位置の左目用画像の輝度値の差分)の絶対値和を用いて定義した値であり、小さい程、比較対象の画素の類似度が高いと言える。但し、この例に限らず、類似度は、差分平方和、正規化相互相関などの類似度を表す他の関数で定義してもよい。
また、探索範囲をP,Qで定めた例を挙げて本実施形態を説明しているように、評価値算出部12は、注目画素の所定範囲(上記ブロックサイズの範囲)の周辺領域に対して、視点画像間での輝度値の類似度を用いて評価値を算出することが望ましい。つまり、類似度として、一方の視点画像における注目画素を含む所定範囲の周辺領域中の画素と、他方の視点画像におけるその注目画素に対応する画素を含む所定範囲の周辺領域中の画素との類似度を用いることが好ましい。但し、探索範囲を特に決めずに画像の全領域について類似度を求め、評価値を算出することもできる。
次に、下の(2)式に従い、評価値U(x,p)を0≦x≦w-1,0≦p≦Pを満たす全ての(x,p)について算出する。評価値U(x,p)は、上述の類似度M(x,y,p,q)の最小値に基づいて計算した値である。類似度M(x,y,p,q)の値が小さい程、比較対象の画素値が類似しているためである。計算の手順としては、(2)式を用い、まずx=0の場合を計算し、その後x=1からw-1まで順に計算する。(2)式は再帰的になっており、x=0から順に累積して最後に得られたU(w-1,p)が注目行内の視差値の組合せに対する評価値となる。0≦p≦Pであるため、U(w-1,p)はP+1個得られ、P+1通りの経路に対する評価値である。
(4)式のAxは、右目用画像の注目画素(x座標がx)の視差横成分がpであると仮定した場合の、その左隣の視差横成分の候補を示している。右目用画像の注目画素(x)は左目用画像の画素(x+p)と対応している。Axの要素を3つに分類して説明する。
[I]要素(x-1,p)
左隣の画素(x-1)と注目画素の視差横成分が同じ場合である。右目用画像の画素(x-1)と左目用画像の画素(x+p-1)が対応する。
左隣の画素(x-1)と注目画素の視差横成分が同じ場合である。右目用画像の画素(x-1)と左目用画像の画素(x+p-1)が対応する。
[II]要素(x-1,p-1),…,(x-1,0)
左隣の画素の視差横成分が注目画素より小さい場合である。例えば、要素(x-1,p-2)は、右目用画像の画素(x-1)と左目用画像の画素(x+p-3)が対応することを示す。このとき、左目用画像の(x+p-1)と(x+p-2)の2つの画素は、右目用画像内に対応点が無い。つまり、左目用画像に横方向オクルージョン領域がある場合である。
左隣の画素の視差横成分が注目画素より小さい場合である。例えば、要素(x-1,p-2)は、右目用画像の画素(x-1)と左目用画像の画素(x+p-3)が対応することを示す。このとき、左目用画像の(x+p-1)と(x+p-2)の2つの画素は、右目用画像内に対応点が無い。つまり、左目用画像に横方向オクルージョン領域がある場合である。
[III]要素(x-2,p+1),…,(x-P-1+p,P)
注目画素の左隣の画素が横方向オクルージョン領域の場合である。この場合は、左目用画像において注目画素と対応した画素(x+p)の左隣の画素(x+p-1)について、対応画素を右目用画像から選ぶ。例えば、要素(x-3,p+2)は、右目用画像の画素(x-3)と左目用画像の画素(x+p-1)が対応することを示す。このとき、右目用画像の(x-1)と(x-2)の2つの画素は、左目用画像内に対応点が無く、横方向オクルージョン領域となる。また、右目用画像の画素(x-3)と注目画素との視差横成分の差分が2であり、横方向オクルージョン領域の幅と等しい。つまり、横方向オクルージョン領域の横幅がその右側と左側の画素間の視差横成分の差分と等しくなるように制約されている。
注目画素の左隣の画素が横方向オクルージョン領域の場合である。この場合は、左目用画像において注目画素と対応した画素(x+p)の左隣の画素(x+p-1)について、対応画素を右目用画像から選ぶ。例えば、要素(x-3,p+2)は、右目用画像の画素(x-3)と左目用画像の画素(x+p-1)が対応することを示す。このとき、右目用画像の(x-1)と(x-2)の2つの画素は、左目用画像内に対応点が無く、横方向オクルージョン領域となる。また、右目用画像の画素(x-3)と注目画素との視差横成分の差分が2であり、横方向オクルージョン領域の幅と等しい。つまり、横方向オクルージョン領域の横幅がその右側と左側の画素間の視差横成分の差分と等しくなるように制約されている。
図4は(4)式で示す集合Axの範囲を示しており、横軸はx座標、縦軸は視差横成分である。格子模様を付けた座標は注目画素(x)を示し、その視差横成分がpである。このとき、黒で示したP+1個の座標がAxの要素に相当する。また、図4中、斜線で示した座標は、画像端における視差の探索範囲外の領域を示しており、次式の集合Bで表わされる。(2)式の計算において、この領域では、U(x,p)の値を、無限大とみなせる大きな値で置き換える。
また、(2)式の計算において、min(q)で最小値を与えたqの値、つまりM(x,y,p,q)が最小となったときのqの値を、Kq(x,p)として保持しておく。同様に、min(xb,pb)で最小値を与えたxbの値、pbの値、つまりU(xb,pb)+Dpx(p,pb)が最小となったときのxbの値、pbの値を、それぞれKx(x,p)、Kp(x,p)として保持しておく。このKxとKpは、評価値Uに対する経路を表している。また、xb、pbは、それぞれ右目用画像の集合Axにおける横方向の座標、視差の横成分の値である。なお、(2)~(4)式の技術的な意味については後述する。
視差マップ作成部13では、算出した評価値U(w-1,p)とKx(x,p)、Kp(x,p)、Kq(x,p)とを用いて、注目行の各画素の視差マップを作成する。まず、動的計画法に基づき、評価値算出部12で得られたP+1個の評価値U(w-1,p)の中から、最小の評価値を選択する。但し、本例では式(5)の領域においてU(x,p)の値を無限大としたため、自動的にU(w-1,0)が最小となる。そして、その評価値における経路をKxとKpを参照して右端画素(x=w-1)から順に左へ向かってたどり、各画素の視差横成分と視差縦成分を検出する。併せてそれらの視差横成分からオクルージョン領域の検出も行う。
視差マップ作成部13における処理の一例について、その流れを図5を参照しながら説明する。例として、U(w-1,0)が最小となった場合について示したものである。まず、ステップS1において、変数x,xb,pbの値を初期化する。xは注目行における右目用画像の横方向の座標であり、この処理例では注目行の右端画素から順に処理を行うために、初期値としてw-1が入力されている。xbは右目用画像の集合Axにおける横方向の座標であり、xと同様の理由からw-1が初期値として入力されている。pbは右目用画像の集合Axにおける視差の横成分の値であり、初期値として0が入力されている。
次に、ステップS2において、xbとxの値を比較する。値が異なる場合、すなわち、評価値算出部12においてAxの中から要素[III]が選択されていた場合、ステップS3に進む。ステップS3では、座標(x,y)が横方向オクルージョン領域であると判定し、オクルージョンマップにオクルージョン領域に該当することを示すフラグを出力する。その後、ステップS8に進む。
ステップS2において値が同じである場合、すなわち、評価値算出部12においてAxの中から要素[I]又は[II]が選択されていた場合、ステップS4に進み、pにpbの値を入力する。続いて、ステップS5において、座標(x,y)の視差横成分の値をpと検出し、視差横成分マップに出力する。さらに、ステップS6において、座標(x,y)の視差縦成分の値をKq(x,p)と検出し、視差縦成分マップに出力する。ステップS5,S6の処理後は、ステップS7において、xbの値、pbの値を、それぞれKx(x,p)、Kp(x,p)で更新する。
また、ステップS3の処理後、並びにステップS7の処理後は、ステップS8において、x=0となったか否かを判定する。そして、x=0である場合は左端画素まで処理が終了しているため、図5の処理を終了し、それ以外の場合は、ステップS9において左隣りの画素に移動し、ステップS2に戻る。
上述した処理において、ステップS2,S3はオクルージョン領域の判定を行う処理であり、これらの処理はオクルージョン領域検出部101が実行する。ステップS4,S5は視差横成分を検出する処理であり、これらの処理は視差横成分検出部102が実行する。ステップS6は視差縦成分を検出する処理であり、この処理は視差縦成分検出部103が実行する。
このようにして、注目行内の全画素の視差(全てのxについての視差)が推定され、同時に、行内のオクルージョン領域が検出される。そして、評価値算出部12と視差マップ作成部13が全ての行に対して処理を実行することで、画像全体の視差が推定され、視差マップが作成される。
次に、上述した(2)~(4)式について、その技術的意味を説明する。
(2)式のmin(q)の項は、視差の縦成分を探索する効果を持つ。各視差横成分pに対して、視差縦成分qの値を探索範囲内で変化させた際に最小となる類似度を用いて評価値に加算する。また、(2)式のmin(xb,pb)の項は、左隣りの画素における最小評価値を用いて評価値を累積する動的計画法の手法が適用されている。
(2)式のmin(q)の項は、視差の縦成分を探索する効果を持つ。各視差横成分pに対して、視差縦成分qの値を探索範囲内で変化させた際に最小となる類似度を用いて評価値に加算する。また、(2)式のmin(xb,pb)の項は、左隣りの画素における最小評価値を用いて評価値を累積する動的計画法の手法が適用されている。
但し、非特許文献1と同様に、(4)式で定めたAxの範囲を用いることによって、オクルージョン領域の類似度を除いて評価値を累積している。また、(4)式で示す集合Axは、オクルージョン領域の左端と右端に隣接する画素間の視差横成分の差分の大きさを、オクルージョン領域の横幅と等しくなるように制約するためのものである。つまり、ここでは、評価値算出部12は、横方向オクルージョン領域に隣接する右側と左側の画素間の視差横成分の差分の大きさが横方向オクルージョン領域の横幅と等しくなるという条件下で、評価値の算出を行っている。よって、オクルージョン領域検出部101では、横方向のオクルージョン領域を検出していると言える。このような範囲の集合Axを採用することで、オクルージョン領域検出と視差推定の誤りを生じにくくする効果がある。また、(2)式の定数項c0は、対応点の個数に応じて評価値に報酬を与え、オクルージョン領域を誤って広く検出することを防ぐ効果がある。
また、(3)式のDpxは、視差の横成分の連続性を示す値であり、視差の横成分が不連続な場合にペナルティ(定数項c1)を与えてその視差を検出されにくくするものであり、平滑化の効果を持つが、この式に限らず、2つの視差の差分を用いた線形関数などの他の関数によって平滑化の効果を与えてもよい。無論、平滑化の効果を鑑みなければ、(2)式におけるDpxは常に0、つまりDpxの項を除いた式を採用することもできる。
このように、(2)式の評価値U(w-1,p)は、オクルージョン領域と推定した画素を除いた全ての画素における類似度の縦成分探索範囲内での最小値と、視差の横成分の横方向の連続性を示す値との加算値の合計、に基づき算出される。
評価値算出部12では、このようにして視点画像間での画素の類似度、並びに視点画像間の視差の横方向の連続性(つまり、注目画素の視差とその注目画素の横に隣接する画素の視差との連続性)を用いて、評価値を算出する。よって、算出される評価値はこれら類似度及び連続性に関する値と言える。そして、評価値算出部12で算出される評価値は、視点画素間の画素の類似度が高いほど(上記M(x,y,p,q)が小さいほど)小さく算出され、視差の横方向の連続性が高いほど(上記Dpxが小さいほど)小さく算出されているのが分かる。
また、本実施形態では、視差の横成分の範囲を0≦p≦Pとすることでpが正値のみを取る場合について説明したが、pが負値を取り得る場合についても、同様の手法を適用することができる。また、右目用画像の視差マップを求める場合について説明したが、逆に右目用画像に対する左目用画像の視差マップについても同様に求めることができる。
上述のとおり、本実施形態の立体画像処理装置によれば、視差推定を行う際に、視点画像間の画素の類似度によって視差の横成分と縦成分の両方を推定し、オクルージョン領域の検出を同時に行うことにより、視差に縦成分のある画像に対しても誤りの少ない視差推定を行うことができる。この効果は、視差の連続性として、注目画素の視差とその注目画素の横に隣接する画素の視差との連続性を用いるだけでも得られるものである。なお、本実施形態では、視差マップ作成部13が、オクルージョン領域の検出と視差の横成分と縦成分の検出処理を行うことを前提に説明したが、オクルージョン領域の検出を行わない場合にも、視差の両方向成分を推定しているため、視差に縦成分のある画像に対しても誤り少なく視差を推定することができる。
次に、第一の実施形態の主たる特徴として、上述した横方向の連続性を採用した例を参照しながら、注目画素の視差とその注目画素の横及び縦に隣接する画素の視差との連続性を算出し、その結果及び算出した画素の類似性を用いて評価値を算出する方法について説明する。ここでは、評価値は、画素の類似度が高いほど小さく算出され、視差の横方向及び縦方向の連続性が高いほど小さく算出されることになる。
第一の実施形態は、視差の横方向と縦方向の両方に平滑化の効果を与えるように上述した横方向のみの連続性を採用した例を変更したものである。よって、本実施形態における立体画像処理装置の概略構成例は、上述したように図1の立体画像処理装置10で示されるが、評価値算出部12における処理の方法が上述した横方向のみの連続性を採用した例とは異なる。
その相違点について説明すると、上述した横方向のみの連続性を採用した例における評価値算出部12は、注目画素の視差の横成分について横方向の連続性を求め、評価値の算出に用いている。これに対し、第一の実施形態における評価値算出部12は、注目画素の視差の横成分と縦成分について、それぞれ横方向と縦方向の連続性を求め、評価値の算出に用いている。
より具体的な例を挙げると、第一の実施形態では、上端の行から順に1行ずつ視差推定を行うが、その際、前の行で求めた視差の値を用いる。前行で求めた視差の横成分、縦成分をそれぞれFp(x)、Fq(x)として説明する。評価値算出部12では、まず、上述した横方向のみの連続性を採用した例と同様に類似度M(x,y,p,q)を計算する。
評価値算出部12では、次に、下の(6)式に従い、評価値U(x,p)を0≦x≦w-1,0≦p≦Pを満たす全ての(x,p)について算出する。計算の手順としては、(6)式を用い、まずx=0の場合を計算し、その後x=1からw-1まで順に計算する。
ここで、Dqx,Dpy,Dqyはそれぞれ次式で示す関数であり、c2,c3,c4,c5,c6は定数である。occは、その画素がオクルージョン領域であることを示す定数である。Dpx、Axは、それぞれ(3)式、(4)式をそのまま用い、残りの処理は、上述した横方向のみの連続性を採用した例と同様に行う。(6)式の計算において、min(q)で最小値を与えたqの値をKq(x,p)として保持しておく。同様に、min(xb,pb)で最小値を与えたxbの値、pbの値をそれぞれKx(x,p)、Kp(x,p)として保持しておく。なお、(6)~(9)式の技術的な意味については後述する。
但し、注目行が画像の上端の行の場合は、Fp(x)、Fq(x)に値が入っていないため、(6)式の代わりに下の(10)式を用いる。
視差マップ作成部13では、上述した横方向のみの連続性を採用した例と同様の処理を行う。注目行内の全ての画素の視差推定が終了した時点で、行内の全ての視差の横成分と縦成分をFp(x)とFq(x)として保持する。但し、オクルージョン領域と検出された画素については、Fp(x)とFq(x)の両方にoccを代入する。その後、次の行に移る。以上の処理を全ての行で行うことで、画像全体の視差が推定され、視差マップが作成される。
また、本実施形態では、最上行から順に処理を行った例を挙げたが、これに限らず、例えば最下行から順に上に向かって処理を行ってもよい。他の例として、中心行の推定を最初に行い、中心から順に上に向かって最上行まで処理を行い、その後、中心から順に下に向かって最下行まで処理を行ってもよい。これは、前行の誤りが注目行に伝播する場合があることを考慮し、誤りが生じにくい行から推定処理を行うことによって、画像全体での誤りを少なく抑える効果がある。
ここで、上述した(6)~(9)式について、その技術的意味を説明する。
(7)式のDqxは視差縦成分の横方向の連続性を示す値であり、(8)式のDpyと(9)式のDqyはそれぞれ視差の横成分と縦成分の縦方向の連続性を示す値である。Dqx、Dpy、Dqyはそれぞれ不連続な場合にペナルティを与えている。これにより、2次元的な平滑化の効果を与えることができ、特に、画像中の模様が少ない領域、若しくは、繰返し模様のように、局所的な類似度だけでは視差を一意に決められない領域に対して、視差推定の誤りを減らすことができる。
(7)式のDqxは視差縦成分の横方向の連続性を示す値であり、(8)式のDpyと(9)式のDqyはそれぞれ視差の横成分と縦成分の縦方向の連続性を示す値である。Dqx、Dpy、Dqyはそれぞれ不連続な場合にペナルティを与えている。これにより、2次元的な平滑化の効果を与えることができ、特に、画像中の模様が少ない領域、若しくは、繰返し模様のように、局所的な類似度だけでは視差を一意に決められない領域に対して、視差推定の誤りを減らすことができる。
そして、(6)式の評価値U(w-1,p)は、これらの連続性を示す値と(1)式の類似度M(x,y,p,q)とに基づいて算出された値である。より具体的には、(6)式で示す評価値U(w-1,p)は、オクルージョン領域と推定した画素を除いた全ての画素における類似度の縦成分探索範囲内での最小値と、視差の横成分と縦成分の横方向と縦方向の連続性を示す値との加算値の合計、に基づき算出される。
評価値算出部12では、このようにして視点画像間での画素の類似度、並びに視点画像間の視差の横方向及び縦方向の連続性(つまり、注目画素の視差とその注目画素の横及び縦に隣接する画素の視差との連続性)を用いて、評価値を算出する。よって、算出される評価値はこれら類似度及び連続性に関する値と言える。そして、評価値算出部12で算出される評価値は、視点画素間の画素の類似度が高いほど(上記M(x,y,p,q)が小さいほど)小さく算出され、視差の横方向及び縦方向の連続性が高いほど(上記Dpx及び上記Dqyが小さいほど)小さく算出されているのが分かる。
なお、(10)式については、基本的に(6)式と同様の意味をもっており、上述したように注目行が上端の行であってFp(x),Fq(x)の値が入っていない場合について特化したものである。
上述のとおり、本実施形態の立体画像処理装置によれば、視差推定を行う際には視差の横成分と縦成分を推定すること、並びに視差推定を行う際には視差に対して横方向に若しくは横方向及び縦方向に平滑化を行うことによって、視差に縦成分がありかつ模様が曖昧な画像に対しても誤りの少ない視差推定を行うことができる。特に、視差の縦成分も推定することで視差の横成分の推定誤りを低減させることができる。なお、上述した横方向のみの連続性を採用した例では、視差の横成分について横方向の連続性を評価値の算出に用いた例を挙げたが、ここでの説明を適用するなどして、視差横成分の縦方向の連続性も用いるように構成することもできる。
また、評価値の算出を、縦方向の連続性を用いず横方向の連続性を用いて行うか、若しくは横方向の連続性及び縦方向の連続性を用いて行う例を挙げたが、横方向の連続性を用いず縦方向の連続性を用いて行うこともできる。つまり、評価値の算出を、注目画素の視差とその注目画素の縦に隣接する画素の視差との連続性を用いて行うことができる。例えば、(6)式において、単にDpx、Dqxを常に0にした式を用いることで、縦方向の連続性だけを用いることができ、これにより、視差に対して縦方向にのみ平滑化を行うこともできる。
(第二の実施形態)
第二の実施形態は、第一の実施形態における視差縦成分の探索範囲を修正したものである。一般的に、レンズ歪は画像中心から遠い程大きくなり、また、交差法撮影における光軸の角度によって生じる視差縦成分は、被写体の距離が一定の場合には画像中心から遠い程、大きくなる。このため、例えば、撮影したカメラの光軸やレンズ等の特性が測定によって予め分かっている場合、視差縦成分の分布傾向が予測できる。
第二の実施形態は、第一の実施形態における視差縦成分の探索範囲を修正したものである。一般的に、レンズ歪は画像中心から遠い程大きくなり、また、交差法撮影における光軸の角度によって生じる視差縦成分は、被写体の距離が一定の場合には画像中心から遠い程、大きくなる。このため、例えば、撮影したカメラの光軸やレンズ等の特性が測定によって予め分かっている場合、視差縦成分の分布傾向が予測できる。
本実施形態では、評価値算出部12において、このように視差縦成分の画像内での分布傾向が予め分かっている場合、それに応じて視点画像間の視差縦成分の探索範囲(つまり上記所定範囲の縦方向の範囲)を座標に応じて変動させる。つまり、第二の実施形態における評価値算出部12は、視点画像間の視差の縦成分についての探索範囲を注目画素の座標に応じて変化させる。
例えば、画像の中心付近では視差縦成分の大きさが小さいことが分かっている画像の場合、(2)式においてminを求める範囲(-Q≦q≦Q)の代わりに、次の(11)式を用いる。但しw,hはそれぞれ画像の横画素数、縦画素数である。
上述のとおり、本実施形態の立体画像処理装置によれば、視差縦成分の画像内での分布傾向が予め分かっている場合、それに応じて視差縦成分の探索範囲を座標に応じて変動させることで、誤りの少ない視差推定を行うことができる。
また、第二の実施形態では、より好ましい例として、第一の実施形態における視差横成分の探索範囲も修正することができる。すなわち、同様に、視差横成分の画像内での分布傾向が予め分かっている場合、それに応じて視点画像間の視差縦成分の探索範囲(つまり上記所定範囲の横方向の範囲)を座標に応じて変動させることで、誤りの少ない視差推定を行うことができる。なお、視差横成分についても、一般的に、レンズ歪は画像中心から遠い程大きくなり、また、交差法撮影における光軸の角度によって生じる視差横成分は、被写体の距離が一定の場合には画像中心から遠い程、大きくなるため、分布傾向の予測は可能である。このような視差横成分の探索範囲を変動させる処理と、視差縦成分の探索範囲を変動させる処理とは、いずれか一方のみを採用することもできる。
(第三の実施形態)
第三の実施形態は、横方向オクルージョン領域と縦方向オクルージョン領域の両方を検出できるように第一の実施形態を変更したものである。無論、ここで説明する第三の実施形態は、第二の実施形態と併せて採用することができる。図6は、本発明の第三の実施形態に係る立体画像処理装置の概略構成例を示すブロック図である。
第三の実施形態は、横方向オクルージョン領域と縦方向オクルージョン領域の両方を検出できるように第一の実施形態を変更したものである。無論、ここで説明する第三の実施形態は、第二の実施形態と併せて採用することができる。図6は、本発明の第三の実施形態に係る立体画像処理装置の概略構成例を示すブロック図である。
図6で示すように、本実施形態の立体画像処理装置20は、入力部21と、評価値算出部22と、視差マップ作成部23とを有している。視差マップ作成部23は、横方向オクルージョン領域検出部201、視差横成分検出部202、縦方向オクルージョン領域検出部203、視差縦成分検出部204を有し、それぞれ横方向オクルージョンマップ、視差横成分マップ、縦方向オクルージョンマップ、視差縦成分マップを生成、出力する。横方向オクルージョンマップ、縦方向オクルージョンマップ、視差横成分マップ、視差縦成分マップを併せて、視差マップと呼ぶことにする。本実施形態では、上端の行から順に1行ずつ視差推定を行うが、前行で求めた視差の縦成分Fq(x)と前行で求めたオクルージョンフラグFc(x)を用いる。
入力部21は、第一の実施形態の入力部11と同様である。評価値算出部22では、まず、第一の実施形態の(1)式と同様に、注目行yについて類似度M(x,y,p,q)を計算する。次に、下の(12)式に従い、評価値U(x,p)を0≦x≦w-1,0≦p≦Pを満たす全ての(x,p)について算出する。計算の手順としては、(12)式を用い、まず、x=0の場合を計算し、その後x=1から順にw-1まで計算する。Axは、第一の実施形態と同様に式(4)を満たす(x,p)の集合である。式(12)式は再帰的になっており、最後に得られたU(w-1,p)が注目行内の視差値の組合せに対する評価値となる。0≦p≦Pであるため、U(w-1,p)はP+1個得られ、P+1通りの経路に対する評価値である。
(14)式のAyは、右目用画像の注目行yにおける注目画素(座標(x,y))の視差横成分がpであると仮定した場合の視差縦成分の候補を示している。
Fc(x)=0のとき、注目画素の上隣の画素(x,y-1)は横方向オクルージョン領域でも縦方向オクルージョン領域でもなく、その視差縦成分はFq(x)である。また、その視差横成分をFpと示すと、右目用画像の画素(x,y-1)と左目用画像の画素(x+Fp,y-1+Fq(x))が対応している。この場合のAyの要素を3つに分類して説明する。
Fc(x)=0のとき、注目画素の上隣の画素(x,y-1)は横方向オクルージョン領域でも縦方向オクルージョン領域でもなく、その視差縦成分はFq(x)である。また、その視差横成分をFpと示すと、右目用画像の画素(x,y-1)と左目用画像の画素(x+Fp,y-1+Fq(x))が対応している。この場合のAyの要素を3つに分類して説明する。
[i]要素(y,Fq(x))
上隣の画素(x,y-1)と注目画素の視差縦成分が同じ場合である。右目用画像の画素(x,y)と左目用画像の画素(x+p,y+Fq(x))が対応する。
上隣の画素(x,y-1)と注目画素の視差縦成分が同じ場合である。右目用画像の画素(x,y)と左目用画像の画素(x+p,y+Fq(x))が対応する。
[ii]要素(y,Fq(x)+1),…,(y,Q)
注目画素の視差縦成分が、上隣の画素より大きい場合である。例えば、要素(y,Fq(x)+2)は、右目用画像の画素(x,y)と左目用画像の画素(x+p,y+Fq(x)+2)が対応することを示す。このとき、左目用画像の(x+p,y+Fq(x))と(x+p,y+Fq(x)+1)の2つの画素は右目用画像内に対応点が無いと考える。つまり、左目用画像に縦方向オクルージョンがある場合である。
注目画素の視差縦成分が、上隣の画素より大きい場合である。例えば、要素(y,Fq(x)+2)は、右目用画像の画素(x,y)と左目用画像の画素(x+p,y+Fq(x)+2)が対応することを示す。このとき、左目用画像の(x+p,y+Fq(x))と(x+p,y+Fq(x)+1)の2つの画素は右目用画像内に対応点が無いと考える。つまり、左目用画像に縦方向オクルージョンがある場合である。
[iii]要素(y+1,Fq(x)-1),…,(y+Fq(x)+Q,-Q)
注目画素が縦方向オクルージョン領域の場合である。この場合は、左目用画像の画素(x+p′,y+Fq(x))の対応画素を右目用画像から選ぶ。例えば、要素(y+2,Fq(x)-2)は、右目用画像の画素(x,y+2)と左目用画像の画素(x+p′,y+Fq(x))が対応することを示す。このとき、右目用画像の(x,y)と(x,y+1)の2つの画素は、左目用画像内に対応点が無く、縦方向オクルージョン領域となる。また、右目用画像の(x,y-1)と(x,y+2)との視差縦成分の差分が2であり、縦方向オクルージョン領域の縦幅と等しい。つまり、縦方向オクルージョン領域の縦幅がその上側と下側の画素間の視差縦成分の差分と等しくなるように制約されている。
注目画素が縦方向オクルージョン領域の場合である。この場合は、左目用画像の画素(x+p′,y+Fq(x))の対応画素を右目用画像から選ぶ。例えば、要素(y+2,Fq(x)-2)は、右目用画像の画素(x,y+2)と左目用画像の画素(x+p′,y+Fq(x))が対応することを示す。このとき、右目用画像の(x,y)と(x,y+1)の2つの画素は、左目用画像内に対応点が無く、縦方向オクルージョン領域となる。また、右目用画像の(x,y-1)と(x,y+2)との視差縦成分の差分が2であり、縦方向オクルージョン領域の縦幅と等しい。つまり、縦方向オクルージョン領域の縦幅がその上側と下側の画素間の視差縦成分の差分と等しくなるように制約されている。
Fc(x)≠0のとき、注目画素の上隣の画素は横方向オクルージョン領域又は縦方向オクルージョン領域である。Fc(x)+1は、注目画素からオクルージョン領域の上端に隣接する画素までの距離であり、その画素の視差縦成分がFq(x)に保持されている。その画素の視差横成分をFpと示すと、右目用画像の(x,y-1-Fc(x))と左目用画像の(x+Fp,y-1-Fc(x)+Fq(x))が対応している。この場合のAyの要素を2つに分類して説明する。
[iv]要素(y,Fq(x)-Fc(x))
注目画素が縦方向オクルージョン領域でない場合である。右目用画像の(x,y)と左目用画像の(x+p,y+Fq(x)-Fc(x))が対応する。注目画素の視差縦成分はFq(x)-Fc(x)であり、縦方向オクルージョン領域の上端に隣接する画素との視差縦成分の差分がFc(x)となる。これは、縦方向オクルージョン領域の縦幅と等しい。
注目画素が縦方向オクルージョン領域でない場合である。右目用画像の(x,y)と左目用画像の(x+p,y+Fq(x)-Fc(x))が対応する。注目画素の視差縦成分はFq(x)-Fc(x)であり、縦方向オクルージョン領域の上端に隣接する画素との視差縦成分の差分がFc(x)となる。これは、縦方向オクルージョン領域の縦幅と等しい。
[v]要素(y+1,Fq(x)-Fc(x)-1),…,(y+Fq(x)-Fc(x)+Q,-Q)
注目画素が縦方向オクルージョン領域の場合である。この場合は、左目用画像(x+p′,y+Fq(x)-Fc(x))の対応画素を右目用画像から選ぶ。
注目画素が縦方向オクルージョン領域の場合である。この場合は、左目用画像(x+p′,y+Fq(x)-Fc(x))の対応画素を右目用画像から選ぶ。
(12)式の計算において、min(yb,qb)で最小値を与えたybとqbの値、つまりM′(x,yb,p,qb)が最小となったときのybの値、qbの値を、それぞれKy(x,p),Kq(x,p)に保持しておく。また、第一の実施形態と同様に、min(xb,pb)で最小値を与えたxb,pbの値をそれぞれKx(x,p)、Kp(x,p)に保持しておく。但し、注目行が画像の上端の行の場合は、Fq(x)、Fc(x)に値が入っていないため、(12)式の代わりに(2)式を用いる。これらのKx、Kp、Ky、Kqは、評価値Uに対する経路を表している。なお、(12)~(14)式の技術的な意味については後述する。
視差マップ作成部23では、算出された評価値から視差の横成分及び縦成分を検出するが、算出した評価値U(w-1,p)とKx(x,p)、Kp(x,p)、Kq(x,p)とを用いて、注目行の各画素について、視差の横成分・縦成分の検出と共にオクルージョン領域か否かの判定も行う。オクルージョン領域は、縦方向オクルージョンと横方向オクルージョンの両方を判定する。
視差マップ作成部23における処理の一例について、その流れを図7を参照しながら説明する。例として、U(w-1,0)が最小となった場合について示したものである。まず、ステップS11において、変数x,xb,pbの値を初期化する。この初期化については図5のステップS1で説明したとおりである。
次に、ステップS12において、xbとxの値を比較する。値が異なる場合、ステップS13に進む。ステップS13では、座標(x,y)が横方向オクルージョンであると判定し、横方向オクルージョンマップに横方向オクルージョン領域に該当することを示すフラグを出力する。その後、ステップS21でFq(x)、Fc(x)の値をそれぞれ-Q-1、0に更新し、ステップS23に進む。
ステップS12において値が同じである場合、ステップS14に進み、pにpbの値を入力する。さらに、ステップS15において、座標(x,y)の視差横成分の値をpと検出し、視差横成分マップに出力する。
次に、ステップS16において、座標(x,y)の視差縦成分Kq(x,p)と、前行の視差縦成分から前行の縦オクルージョン領域幅を引いた差分、すなわちFq(x)-Fc(x)の値を比較する。Kq(x,p)がFq(x)-Fc(x)以上の場合、すなわち評価値算出部22においてAyの中から要素[i]、[ii]、[iv]のいずれかが選択されていた場合、ステップS18において、座標(x,y)の視差縦成分の値をKq(x,p)と検出し、視差縦成分マップに出力する。ステップS18の後、ステップS19においてFq(x)、Fc(x)の値をそれぞれKq(x,p)、0で更新し、ステップS22においてxb、pbの値をそれぞれKx(x,p)、Kp(x,p)で更新する。
ステップS16においてKq(x,p)がFq(x)-Fc(x)未満の場合、すなわち評価値算出部22においてAyの中から要素[iii]又は[v]が選択されていた場合、ステップS17に進む。ステップS17では、座標(x,y)が縦方向オクルージョンであると判定し、縦方向オクルージョンマップに縦方向オクルージョン領域に該当することを示すフラグを出力する。ステップS17の後、ステップS20においてFcの値を1だけ増やすように更新し、その後、ステップS22においてxb、pbの値をそれぞれKx(x,p)、Kp(x,p)で更新する。ここでFq(x)の値は更新せずそのままとする。
最後に、ステップS21の処理後、並びにステップS22の処理後は、ステップS23においてx=0となったか否かを判定する。x=0である場合は左端画素まで処理が終了しているため、図7の処理を終了し、それ以外の場合は、ステップS24において左隣りの画素に移動し、ステップS12に戻る。但し、注目行が画像の上端の行の場合は、予めFq(x)=-Q-1,Fc(x)=0で初期化しておく。なお、ステップS21における-Q-1とは、Kq(x,p)がとり得る値の範囲、すなわち視差の縦成分探索範囲よりも小さい値であり、次にステップS16を通る際に、Kq(x,p)がFq(x)-Fc(x)以上であると判定させるために用いる値である。
上述した処理において、ステップS12,S13は、横方向オクルージョン領域の判定を行う処理であり、これをまとめて横方向オクルージョン領域検出部201が実行する。ステップS14,S15は、視差横成分を検出する処理であり、これをまとめて視差横成分検出部202が実行する。ステップS16,S17は、縦方向オクルージョン領域の判定を行う処理であり、これをまとめて縦方向オクルージョン領域検出部203が実行する。ステップS18は、視差縦成分を検出する処理であり、これを視差縦成分検出部204が実行する。
このようにして、注目行内の全画素の視差が推定され、同時に、行内の横方向オクルージョン領域と縦方向オクルージョン領域が検出される。評価値算出部22と視差マップ作成部23を全ての行で行うことで、画像全体の視差が推定され、視差マップが作成される。
次に、上述した(12)~(14)式について、その技術的意味を説明する。
(12)式のmin(yb,qb)の項は、視差の縦成分を探索する効果を持つが、(14)式で定めたAyの範囲と(13)式を用いることによって、縦方向のオクルージョン領域の類似度を用いず、代わりにオクルージョン領域の下端に隣接する画素の類似度を用いて評価値を累積している。
(12)式のmin(yb,qb)の項は、視差の縦成分を探索する効果を持つが、(14)式で定めたAyの範囲と(13)式を用いることによって、縦方向のオクルージョン領域の類似度を用いず、代わりにオクルージョン領域の下端に隣接する画素の類似度を用いて評価値を累積している。
(13)式は、yb=y、すなわち縦方向オクルージョン領域でない場合には、類似度としてそのままのM(x,yb,p,qb)を用い、yb≠y、すなわち縦方向オクルージョン領域の場合には、縦方向オクルージョン領域の下端に隣接する画素の類似度を用いている。この際、オクルージョン領域の下端に隣接する画素の視差横成分はまだ検出されていないため、min(p′)により視差横成分探索範囲内で最小となる類似度を用いる。
(14)式で示す集合Ayは、縦方向オクルージョン領域の上端と下端に隣接する画素間の視差縦成分の差分の大きさが、縦方向オクルージョン領域の縦幅と等しくなるように制約するためのものである。つまり、ここでは、評価値算出部22は、縦方向のオクルージョン領域に隣接する上側と下側の画素間の視差縦成分の差分の大きさが、縦方向オクルージョン領域の縦幅と等しくなるという条件下で、評価値の算出を行う。これは、オクルージョン領域検出と視差推定の誤りを生じにくくする効果がある。
そして、(12)式の評価値U(w-1,p)は、横方向オクルージョン領域と推定した画素を除いた全ての画素における類似度の縦成分探索範囲内での最小値と、視差の横成分の横方向の連続性を示す値との加算値の合計、に基づき算出される。評価値算出部22では、このようにして視点画像間での画素の類似度、並びに視点画像間の視差の横方向の連続性を用いて、評価値を算出する。そして、評価値算出部22で算出される評価値は、視点画素間の画素の類似度が高いほど(上記M′(x,yb,p,qb)が小さいほど)小さく算出され、視差の横方向の連続性が高いほど(上記Dpxが小さいほど)小さく算出されているのが分かる。
そして、本実施形態においても、(12)式を(6)式と同様にして視点画像間の視差の縦方向の連続性も用いて評価値を算出するように改良すればよい。これにより、評価値算出部22で算出される評価値は、視点画素間の画素の類似度が高いほど(上記M′(x,yb,p,qb)が小さいほど)小さく算出され、視差の横方向及び縦方向の連続性が高いほど(上記Dpx、Dpy、Dqx及び上記Dqyが小さいほど)小さく算出されるようになる。
上述のとおり、本実施形態の立体画像処理装置によれば、視差推定を行う際に、縦方向オクルージョン領域の検出を同時に行うことにより、視差に縦成分のある画像に対してもさらに誤りの少ない視差推定を行うことができる。
(第一~第三の実施形態について)
以上、本発明の各実施形態においては上記の通り、入力部11を通して入力される複数の視点画像が左目用画像及び右目用画像の2枚の視点画像、すなわち横に配置されたカメラによる視点画像から構成される例を挙げた。但し、視点画像の数は2枚に限らず、3枚以上であっても、各実施形態において説明した処理により同様に視点画像間の視差は推定できる。例えば、ある基準となる視点画像に対する他の視点画像の視差を推定することもできるし、各視点画像間の全ての組合せについて視差を推定することもできる。オクルージョン領域の推定についても同様である。
以上、本発明の各実施形態においては上記の通り、入力部11を通して入力される複数の視点画像が左目用画像及び右目用画像の2枚の視点画像、すなわち横に配置されたカメラによる視点画像から構成される例を挙げた。但し、視点画像の数は2枚に限らず、3枚以上であっても、各実施形態において説明した処理により同様に視点画像間の視差は推定できる。例えば、ある基準となる視点画像に対する他の視点画像の視差を推定することもできるし、各視点画像間の全ての組合せについて視差を推定することもできる。オクルージョン領域の推定についても同様である。
また、縦に配置されたカメラで撮影した複数の視点画像に対しても、同様に視差やオクルージョン領域を推定することも可能である。その際、各実施形態における処理をそのまま適用することも、縦方向と横方向の処理を入れ替えて適用することも可能である。さらには、斜めに配置されたカメラで撮影した複数の視点画像に対しても、同様に視差やオクルージョン領域を推定することも可能である。
また、本発明の各実施形態において、動的計画法を適用して視差推定に係る各行の処理を行うことを例に挙げたが、これに限ったものではなく、例えばブロックマッチング、グラフカットなどの他の手法を適用してもよい。
本発明は、上記の各実施形態に限定されるものではない。これらの実施形態にそれぞれ開示された技術的手段を適宜組合せて得られる実施形態についても本発明の技術的範囲に含まれる。
また、本発明の第一~第三の実施形態に係る立体画像処理装置は、各種レコーダや各種記録メディア再生装置などの映像出力機器に組み込むことができる。さらに、本発明は、このような立体画像処理装置に表示デバイスを外部接続又は内部に搭載したテレビ装置やモニタ装置などの立体画像表示装置としての形態も採り得る。
また、図3,図6で例示した立体画像処理装置10,20をはじめ、各実施形態に係る立体画像処理装置は、例えばマイクロプロセッサ(又はDSP:Digital Signal Processor)、メモリ、バス、インターフェイス、周辺装置などのハードウェアと、これらのハードウェア上にて実行可能なソフトウェアとにより実現できる。上記ハードウェアの一部又は全部は集積回路/IC(Integrated Circuit)チップセットとして搭載することができ、その場合、上記ソフトウェアは上記メモリに記憶しておければよい。また、本発明の各構成要素の全てをハードウェアで構成してもよく、その場合についても同様に、そのハードウェアの一部又は全部を集積回路/ICチップセットとして搭載することも可能である。
また、各実施形態に係る立体画像処理装置は単に、CPU(Central Processing Unit)、作業領域としてのRAM(Random Access Memory)、制御用のプログラムの格納領域としてのROM(Read Only Memory)やEEPROM(Electrically Erasable Programmable ROM)等の記憶装置などで構成することもできる。その場合、上記制御用のプログラムは、本発明に係る処理を実行するための後述の立体画像処理プログラムを含むことになる。この立体画像処理プログラムは、PC内に立体画像処理用のアプリケーションソフトとして組み込み、PCを立体画像処理装置として機能させることもできる。また、この立体画像処理プログラムは、クライアントPCから実行可能な状態でWebサーバ等の外部サーバに格納されていてもよい。
以上、本発明に係る立体画像処理装置を中心に説明したが、本発明は、この立体画像処理装置における制御の流れを例示したように、立体画像処理方法としての形態も採り得る。この立体画像処理方法は、複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理方法であって、評価値算出部が、視点画像間での画素の類似度及び視点画像間の視差の連続性に関する評価値を算出するステップと、視差マップ作成部が、その評価値を最小とする、視点画像間の各画素の組合せを、視差として検出して、横成分及び縦成分を有する視差マップを作成するステップとを有するものとする。ここで、視差の連続性は、注目画素の視差とその注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、評価値は、評価値を算出するステップにおいて、画素の類似度が高いほど小さく算出され、視差の連続性が高いほど小さく算出されるものとする。その他の応用例については、立体画像処理装置について説明したとおりである。
また、本発明は、その立体画像処理方法をコンピュータにより実行させるための立体画像処理プログラムとしての形態も採り得る。つまり、この立体画像処理プログラムは、コンピュータに、複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理を実行させるためのプログラムである。そして、この立体画像処理は、視点画像間での画素の類似度及び視点画像間の視差の連続性に関する評価値を算出するステップと、その評価値を最小とする、視点画像間の各画素の組合せを、視差として検出して、横成分及び縦成分を有する視差マップを作成するステップと、を含むものとする。ここで、視差の連続性は、注目画素の視差とその注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、評価値は、評価値を算出するステップにおいて、画素の類似度が高いほど小さく算出され、視差の連続性が高いほど小さく算出されるその他の応用例については、立体画像処理装置について説明したとおりである。
また、その立体画像処理プログラムをコンピュータにより読み取り可能な記録媒体に記録したプログラム記録媒体としての形態についても容易に理解することができる。このコンピュータとしては、上述したように、汎用のPCに限らず、マイクロコンピュータやプログラム可能な汎用の集積回路/チップセットなど、様々な形態のコンピュータが適用できる。また、このプログラムは、可搬の記録媒体を介して流通させるに限らず、インターネット等のネットワークを介して、また放送波を介して流通させることもできる。ネットワークを介して受信するとは、外部サーバの記憶装置などに記録されたプログラムを受信することを指す。
1L,2L…左目用画像、1R,2R…右目用画像、10,20…立体画像処理装置、11,21…入力部、12,22…評価値算出部、13,23…視差マップ作成部、101…オクルージョン領域検出部、102,202…視差横成分検出部、103,204…視差縦成分検出部、201…横方向オクルージョン領域検出部、203…縦方向オクルージョン領域検出部。
Claims (12)
- 複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理装置であって、
前記視点画像間での画素の類似度及び前記視点画像間の視差の連続性に関する評価値を算出する評価値算出部と、該評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成する視差マップ作成部とを備え、
前記視差の連続性は、注目画素の視差と該注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、
前記評価値は、前記評価値算出部において、前記画素の類似度が高いほど小さく算出され、前記視差の連続性が高いほど小さく算出される、
ことを特徴とする立体画像処理装置。 - 前記画素の類似度は、一方の視点画像における注目画素を含む所定範囲の周辺領域中の画素と、他方の視点画像における該注目画素に対応する画素を含む所定範囲の周辺領域中の画素との類似度であることを特徴とする請求項1に記載の立体画像処理装置。
- 前記画素の類似度は、少なくとも画素の輝度値を用いて算出されることを特徴とする請求項1又は2に記載の立体画像処理装置。
- 前記視差の連続性は、視差の横成分及び/又は縦成分に関して算出されることを特徴とする請求項1~3のいずれか1項に記載の立体画像処理装置。
- 前記視差マップ作成部は、前記評価値に基づき、オクルージョン領域を検出するオクルージョン領域検出部を有することを特徴とする請求項1~4のいずれか1項に記載の立体画像処理装置。
- 前記オクルージョン領域検出部は、前記評価値に基づき、横方向のオクルージョン領域と縦方向のオクルージョン領域の両方を検出することを特徴とする請求項5に記載の立体画像処理装置。
- 前記オクルージョン領域検出部は、前記評価値に基づき、少なくとも横方向のオクルージョン領域を検出し、
前記評価値算出部は、前記横方向のオクルージョン領域に隣接する右側と左側の画素間の視差の横成分の差分の大きさが、前記横方向のオクルージョン領域の横幅と等しくなるという条件下で、前記評価値の算出を行うことを特徴とする請求項5又は6に記載の立体画像処理装置。 - 前記オクルージョン領域検出部は、前記評価値に基づき、少なくとも縦方向のオクルージョン領域を検出し、
前記評価値算出部は、前記縦方向のオクルージョン領域に隣接する上側と下側の画素間の視差の縦成分の差分の大きさが、前記縦方向のオクルージョン領域の縦幅と等しくなるという条件下で、前記評価値の算出を行うことを特徴とする請求項5又は6に記載の立体画像処理装置。 - 前記評価値算出部は、前記視点画像間の視差の縦成分についての探索範囲を、注目画素の座標に応じて変化させることを特徴とする請求項1~8のいずれか1項に記載の立体画像処理装置。
- 前記評価値算出部は、前記視点画像間の視差の横成分についての探索範囲を、注目画素の座標に応じて変化させることを特徴とする請求項1~8のいずれか1項に記載の立体画像処理装置。
- 複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理方法であって、
前記視点画像間での画素の類似度及び前記視点画像間の視差の連続性に関する評価値を算出するステップと、前記評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成するステップとを有し、
前記視差の連続性は、注目画素の視差と該注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、
前記評価値は、前記評価値を算出するステップにおいて、前記画素の類似度が高いほど小さく算出され、前記視差の連続性が高いほど小さく算出される、
ことを特徴とする立体画像処理方法。 - コンピュータに、複数の視点画像から視点画像間の視差の横成分及び縦成分を推定する立体画像処理を実行させるためのプログラムであって、
前記立体画像処理は、前記視点画像間での画素の類似度及び前記視点画像間の視差の連続性に関する評価値を算出するステップと、該評価値を最小とする各画素の視差の組合せを、各画素の視差と選択して、横成分及び縦成分を有する視差マップを作成するステップとを含み、
前記視差の連続性は、注目画素の視差と該注目画素の横及び/又は縦に隣接する画素の視差との連続性であり、
前記評価値は、前記評価値を算出するステップにおいて、前記画素の類似度が高いほど小さく算出され、前記視差の連続性が高いほど小さく算出される、
ことを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/240,460 US20140176539A1 (en) | 2011-09-07 | 2012-07-27 | Stereoscopic image processing apparatus, stereoscopic image processing method, and recording medium |
EP12830848.3A EP2755391A4 (en) | 2011-09-07 | 2012-07-27 | STEREOSCOPIC IMAGE PROCESSING APPARATUS, STEREOSCOPIC IMAGE PROCESSING METHOD, AND PROGRAM |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011195070A JP5318168B2 (ja) | 2011-09-07 | 2011-09-07 | 立体画像処理装置、立体画像処理方法、及びプログラム |
JP2011-195070 | 2011-09-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013035457A1 true WO2013035457A1 (ja) | 2013-03-14 |
Family
ID=47831909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/069216 WO2013035457A1 (ja) | 2011-09-07 | 2012-07-27 | 立体画像処理装置、立体画像処理方法、及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20140176539A1 (ja) |
EP (1) | EP2755391A4 (ja) |
JP (1) | JP5318168B2 (ja) |
WO (1) | WO2013035457A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114390271A (zh) * | 2020-10-19 | 2022-04-22 | 苏州佳世达光电有限公司 | 判别连续影像顺序的系统及其方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103828359B (zh) | 2011-09-29 | 2016-06-22 | 杜比实验室特许公司 | 用于产生场景的视图的方法、编码系统以及解码系统 |
WO2013072212A1 (en) * | 2011-11-15 | 2013-05-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for real-time capable disparity estimation for virtual view rendering suitable for multi-threaded execution |
US9866813B2 (en) * | 2013-07-05 | 2018-01-09 | Dolby Laboratories Licensing Corporation | Autostereo tapestry representation |
WO2017130546A1 (ja) * | 2016-01-29 | 2017-08-03 | Necソリューションイノベータ株式会社 | 画像処理装置、画像処理方法、及びコンピュータ読み取り可能な記録媒体 |
EP3252713A1 (en) * | 2016-06-01 | 2017-12-06 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for performing 3d estimation based on locally determined 3d information hypotheses |
JP2020190438A (ja) * | 2019-05-20 | 2020-11-26 | 株式会社リコー | 計測装置および計測システム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09261653A (ja) * | 1996-03-18 | 1997-10-03 | Sharp Corp | 多視点画像符号化装置 |
JP2002245451A (ja) * | 2001-02-19 | 2002-08-30 | Nippon Hoso Kyokai <Nhk> | 立体画像評価装置 |
JP2003085566A (ja) | 2001-09-10 | 2003-03-20 | Nippon Hoso Kyokai <Nhk> | 対応点探索方法及びこれを用いたマッチング装置 |
JP2011166757A (ja) * | 2010-01-15 | 2011-08-25 | Sony Corp | 送信装置、送信方法および受信装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6163337A (en) * | 1996-04-05 | 2000-12-19 | Matsushita Electric Industrial Co., Ltd. | Multi-view point image transmission method and multi-view point image display method |
KR100307883B1 (ko) * | 1998-04-13 | 2001-10-19 | 박호군 | 정합화소수를이용한유사도측정방법및이를구현하기위한장치 |
US6674892B1 (en) * | 1999-11-01 | 2004-01-06 | Canon Kabushiki Kaisha | Correcting an epipolar axis for skew and offset |
KR101419979B1 (ko) * | 2008-01-29 | 2014-07-16 | 톰슨 라이센싱 | 2d 이미지 데이터를 스테레오스코픽 이미지 데이터로 변환하기 위한 방법 및 시스템 |
US8090195B2 (en) * | 2008-02-12 | 2012-01-03 | Panasonic Corporation | Compound eye imaging apparatus, distance measuring apparatus, disparity calculation method, and distance measuring method |
JP5556394B2 (ja) * | 2010-06-07 | 2014-07-23 | ソニー株式会社 | 立体画像表示システム、視差変換装置、視差変換方法およびプログラム |
JP5627498B2 (ja) * | 2010-07-08 | 2014-11-19 | 株式会社東芝 | 立体画像生成装置及び方法 |
EP2676446B1 (en) * | 2011-02-15 | 2018-07-04 | Thomson Licensing DTV | Apparatus and method for generating a disparity map in a receiving device |
-
2011
- 2011-09-07 JP JP2011195070A patent/JP5318168B2/ja not_active Expired - Fee Related
-
2012
- 2012-07-27 US US14/240,460 patent/US20140176539A1/en not_active Abandoned
- 2012-07-27 WO PCT/JP2012/069216 patent/WO2013035457A1/ja active Application Filing
- 2012-07-27 EP EP12830848.3A patent/EP2755391A4/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09261653A (ja) * | 1996-03-18 | 1997-10-03 | Sharp Corp | 多視点画像符号化装置 |
JP2002245451A (ja) * | 2001-02-19 | 2002-08-30 | Nippon Hoso Kyokai <Nhk> | 立体画像評価装置 |
JP2003085566A (ja) | 2001-09-10 | 2003-03-20 | Nippon Hoso Kyokai <Nhk> | 対応点探索方法及びこれを用いたマッチング装置 |
JP2011166757A (ja) * | 2010-01-15 | 2011-08-25 | Sony Corp | 送信装置、送信方法および受信装置 |
Non-Patent Citations (2)
Title |
---|
S. BIRCHFIELD; C. TOMASI: "Depth Discontinuities by Pixel-to-Pixel Stereo", INTERNATIONAL JOURNAL OF COMPUTER VISION, vol. 35, no. 3, December 1999 (1999-12-01), pages 269 - 293, XP007913059 |
See also references of EP2755391A4 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114390271A (zh) * | 2020-10-19 | 2022-04-22 | 苏州佳世达光电有限公司 | 判别连续影像顺序的系统及其方法 |
CN114390271B (zh) * | 2020-10-19 | 2023-08-18 | 苏州佳世达光电有限公司 | 判别连续影像顺序的系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
US20140176539A1 (en) | 2014-06-26 |
EP2755391A4 (en) | 2015-10-28 |
EP2755391A1 (en) | 2014-07-16 |
JP5318168B2 (ja) | 2013-10-16 |
JP2013058848A (ja) | 2013-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5318168B2 (ja) | 立体画像処理装置、立体画像処理方法、及びプログラム | |
US9111389B2 (en) | Image generation apparatus and image generation method | |
JP5954668B2 (ja) | 画像処理装置、撮像装置および画像処理方法 | |
US9460545B2 (en) | Apparatus and method for generating new viewpoint image | |
WO2013038833A1 (ja) | 画像処理システム、画像処理方法および画像処理プログラム | |
JP6412690B2 (ja) | 深さ情報を取得する方法及びディスプレイ装置 | |
JP5370542B1 (ja) | 画像処理装置、撮像装置、画像処理方法及びプログラム | |
CN105069804B (zh) | 基于智能手机的三维模型扫描重建方法 | |
WO2012096163A1 (ja) | 画像処理装置、画像処理方法、及びそのプログラム | |
US9619886B2 (en) | Image processing apparatus, imaging apparatus, image processing method and program | |
US10116917B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2015035658A (ja) | 画像処理装置、画像処理方法、および撮像装置 | |
US9380286B2 (en) | Stereoscopic target region filling | |
JP5533529B2 (ja) | 画像処理装置及び画像処理システム | |
US20140313188A1 (en) | Target Region Filling Involving Source Regions, Depth Information, or Occlusions | |
KR101082046B1 (ko) | 2차원 영상의 3차원 영상으로의 변환방법 및 그 장치 | |
WO2020125637A1 (zh) | 一种立体匹配方法、装置和电子设备 | |
US11153479B2 (en) | Image processing apparatus, capable of detecting an amount of motion between images by tracking a point across one or more images, image capturing apparatus, image processing method, and storage medium | |
JP6395429B2 (ja) | 画像処理装置、その制御方法及び記憶媒体 | |
JP5900017B2 (ja) | 奥行き推定装置、再構成画像生成装置、奥行き推定方法、再構成画像生成方法及びプログラム | |
WO2015198592A1 (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
TWI618394B (zh) | 利用影像特性之立體匹配裝置 | |
JP5931062B2 (ja) | 立体画像処理装置、立体画像処理方法、及びプログラム | |
CN104408710B (zh) | 一种全局视差估计方法和系统 | |
JP6601893B2 (ja) | 画像処理装置、画像処理方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12830848 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14240460 Country of ref document: US |
|
REEP | Request for entry into the european phase |
Ref document number: 2012830848 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012830848 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |