WO2020175062A1 - 演算装置、視差算出方法 - Google Patents

演算装置、視差算出方法 Download PDF

Info

Publication number
WO2020175062A1
WO2020175062A1 PCT/JP2020/004334 JP2020004334W WO2020175062A1 WO 2020175062 A1 WO2020175062 A1 WO 2020175062A1 JP 2020004334 W JP2020004334 W JP 2020004334W WO 2020175062 A1 WO2020175062 A1 WO 2020175062A1
Authority
WO
WIPO (PCT)
Prior art keywords
parallax
block
unit
image
search
Prior art date
Application number
PCT/JP2020/004334
Other languages
English (en)
French (fr)
Inventor
裕介 内田
稲田 圭介
野中 進一
雅士 高田
Original Assignee
日立オートモティブシステムズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立オートモティブシステムズ株式会社 filed Critical 日立オートモティブシステムズ株式会社
Priority to EP20762283.8A priority Critical patent/EP3933340B1/en
Publication of WO2020175062A1 publication Critical patent/WO2020175062A1/ja

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • G01C3/10Measuring distances in line of sight; Optical rangefinders using a parallactic triangle with variable angles and a base of fixed length in the observation station, e.g. in the instrument
    • G01C3/14Measuring distances in line of sight; Optical rangefinders using a parallactic triangle with variable angles and a base of fixed length in the observation station, e.g. in the instrument with binocular observation at a single point, e.g. stereoscopic type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Definitions

  • the present invention relates to an arithmetic device and a parallax calculation method.
  • a position measuring device that measures a distance to an object existing within a field of view of a camera by a principle of triangulation using a stereo image taken by a stereo camera having a pair of cameras.
  • the principle of triangulation is to calculate the distance from the camera to the object using the displacement of the image position of the same object captured by the left and right cameras, that is, the parallax. Derivation of parallax is realized by identifying where the image on one image of the object exists on the other image.
  • parallax derivation methods have been proposed so far.
  • block matching in which an area consisting of multiple pixels in one image is searched for an area having the lowest dissimilarity in the other image.
  • the parallax calculation density can be determined according to the application, such as one parallax for multiple pixels and one parallax for one pixel.
  • the process of searching a region with low dissimilarity if there are multiple regions with low dissimilarity, it cannot be determined which is the correct parallax, and the parallax of that region must be determined to be invalid. There is a so-called invalid parallax problem.
  • the method of Patent Document 1 is known.
  • an effective pixel determining unit that determines an effective pixel based on a feature amount of each pixel of a captured image, and an effective parallax corresponding to the effective pixel in a parallax image corresponding to the captured image.
  • a parallax image generation device including a validation unit that validates parallax that is not the valid parallax in the vicinity of.
  • Patent Document 1 Japanese Patent Laid-Open No. 2 0 1 7-5 4 4 8 1 ⁇ 0 2020/175062 2 ((17 2020/004334)
  • the arithmetic device provides a reference image, which is an image obtained by shooting with a first camera, and a reference image, which is an image obtained by shooting with a second camera.
  • a first parallax search unit that calculates a parallax in the reference image in a first block unit to generate a temporary range image, and a parallax invalid area that identifies an invalid region in which parallax calculation fails from the temporary range image.
  • a determination unit a condition generation unit that generates a search condition including a parallax candidate of the invalid region using the temporary distance image, the reference image, the reference image, and the search condition, the invalid region
  • a second parallax search unit that calculates the parallax in units of a second block having a size equal to or smaller than the first block.
  • the reference image which is the image obtained by the second camera and the reference image which is the image obtained by the first camera are obtained.
  • a proper parallax can be calculated. ⁇ 02020/175062 3 ⁇ (: 171?2020/004334
  • FIG. 2 Functional block diagram of arithmetic unit 1 in the first embodiment.
  • FIG. 3 Conceptual diagram for explaining disparity determination by the first disparity search unit 103.
  • FIG. 4 Conceptual diagram for explaining the operations of the condition generation unit 106 and the second parallax search unit 103
  • FIG. 5 Flow chart showing the operation of the arithmetic unit 1 in the first embodiment.
  • FIG. 6 Functional block diagram of the arithmetic unit 1 in the modified example 2.
  • FIG. 7 A diagram showing pixel blocks referenced by the condition generation unit 106 in Modification 3.
  • FIG. 8 Parallax value of pixel blocks horizontally adjacent to the invalid region 1109 by the condition generation unit 106. The figure which shows the concrete example which makes reference value
  • FIG. 9 A diagram showing an example in which the condition generation unit 106 refers to a pixel block other than the pixel block adjacent to the invalid region.
  • FIG. 11 Flow chart showing the operation of the arithmetic unit 1 in the modified example 5
  • FIG. 13 is a diagram for explaining the operation of the fourth parallax search unit 1300 in Modification 6.
  • FIG. 14 Functional block diagram of arithmetic unit 1 according to the second embodiment
  • FIG. 15 is a flow chart showing the operation of the arithmetic unit 18 according to the second embodiment.
  • FIG. 16 Hardware configuration diagram of vehicle 9M according to the third embodiment
  • FIG. 17 A diagram showing a pixel block referred to by the condition generation unit 106 in the second embodiment.
  • FIG. 1 is a hardware configuration diagram of a vehicle 9 equipped with an arithmetic unit 1 according to the present invention.
  • the vehicle 9 includes a computing device 1, a left camera 2, a right camera 3, and a vehicle control device 4.
  • the arithmetic unit 1 and the vehicle control unit 4 are electronic control units (EI ectronic Control Unit).
  • the left camera 2 and the right camera 3 output captured images obtained by capturing the surroundings of the vehicle 9 to the arithmetic unit 1.
  • the left camera 2 and the right camera 3 are arranged side by side in the horizontal direction. Below, the image taken by the left camera 2 is called the left image 21 and the image taken by the right camera 3 is called the right image 3 1.
  • the left camera 2 is sometimes called the “first camera” and the right camera 3 is sometimes called the “second camera”.
  • the arithmetic unit 1 includes a CPU 1 1 which is a central arithmetic unit, a ROM 12 which is a read-only storage device, a RAM 1 3 which is a readable/writable storage device, and a left image 2 1 and a right image 3 1 Interface 14 for receiving the.
  • the CPU stores the program stored in ROM 1 2 in RAM 13 and executes it to realize multiple functions described later.
  • the arithmetic unit 1 is a combination of the CPU 11, the ROM 12, and the RAM 13 instead of the rewritable logic circuit F PGA (Field Programmable Gate Array) or the application-specific integrated circuit AS C It may be realized by (Application Specific Integrated Circuit).
  • the arithmetic unit 1 is realized by a combination of different configurations, for example, a combination of CPU 11, ROM 12, RAM 13 and F PGA instead of the combination of CPU 11, ROM 12 and RAM 13. Good.
  • the arithmetic unit 1 creates a temporary distance image 4 1 using the input left image 21 and right image 3 1 and outputs it to the vehicle control unit 4.
  • the process in which the arithmetic unit 1 creates the temporary distance image 4 1 will be described in detail later with reference to FIG.
  • the provisional range image 41 is a representation of the distance perspective in the two-dimensional plane by the shade of color and the saturation of color. However, in the present embodiment, each pixel of the temporary distance image 41 stores an integer value of “0” to “255” that represents light and shade. Of these, "0" is a special value indicating that the distance could not be calculated.
  • the range shown in the temporary distance image 4 1 is substantially the same as that of the left image 2 1 and the right image 3 1. Is. However, the range shown in the tentative distance image 41 may be narrower than the range shown in the left image 21 and the right image 31. The number of pixels of the temporary distance image 4 1 may be substantially the same as that of the left image 2 1 and the right image 3 1, or may be about a fraction thereof.
  • the vehicle control device 4 controls the vehicle 9 using the provisional distance image 41 input from the arithmetic device 1.
  • the vehicle control device 4 detects, for example, an obstacle existing around the vehicle 9 from the temporary distance image 41, and controls the vehicle 9 so as to avoid a collision between the vehicle 9 and the detected obstacle.
  • the control of the vehicle 9 by the vehicle control device 4 is realized by, for example, the vehicle control device 4 issuing an operation command to a steering device (not shown) and a braking device (not shown).
  • FIG. 2 is a functional block diagram showing the functions of the arithmetic unit 1 as functional blocks.
  • the arithmetic device 1 has, as its functions, a first parallax searching unit 103A, a second parallax searching unit 103B, a parallax invalidity judging unit 105, and a condition generating unit 106.
  • the first parallax search unit 103A, the second parallax search unit 103B, the parallax invalidity judgment unit 105, and the condition generation unit 106 are realized by software processing by the CPU 11 described above. ..
  • the information generated by the processing described below, for example, the temporary distance image 41, the information 42 indicating the invalid area, the search condition 43, and the distance image 44 are temporarily stored in RAM 13.
  • the left image 2 1 and the right image 3 1 are input to the first parallax search unit 103A.
  • the first parallax searching unit 103A first sets either the left image 21 or the right image 31 as a standard image and the other as a reference image.
  • the first parallax searching unit 103A may select either the left image 21 or the right image 31 as the reference image, but this selection is consistent in this embodiment.
  • the first parallax search unit 103A searches for the region of the reference image corresponding to the pixel block of the standard image. A known method is used for this search.
  • the first parallax search unit 103A calculates the dissimilarity using ZSAD (Zero-mean Sum of Absolute Differences) and searches for the region on the reference image with the smallest ZSAD value.
  • ZSAD Zero-mean Sum of Absolute Differences
  • the first parallax search unit 103A may search all regions on the epipolar line, or may search only a predetermined range on the epipolar line.
  • First parallax search The size of the pixel block searched by Part 103A may be 1 pixel x 1 pixel, that is, every pixel, or 4 pixels x 4 pixels, 8 pixels x 8 pixels, 16 pixels x 2 5 pixels And so on. The size of this pixel block is also called the “first pixel block” size.
  • the first parallax search unit 103A is SAD (Sum of Absolute Differences), SSD (Sum of Squared Differences), ZSSD (Zero-mean Sum of Squared Differences), NCC (Normalized Cross Correlation), instead of ZSAD, And ZNCC (Zero-me an Normalized Cross Correlation) may be used.
  • the first parallax search unit 103A calculates the parallax for each pixel block to create a temporary distance image 4 1. However, if the parallax cannot be determined, the first parallax search unit 103 A sets the pixel value of the provisional distance image 4 1 corresponding to the pixel block to a special value indicating that parallax cannot be calculated, for example, “0”. To do. Note that the first parallax search unit 103A may use the calculated parallax as it is as the value of each pixel of the temporary distance image 41, or may set the parallax value so that the minimum value to the maximum value is 1 to 255. Scale conversion is possible. Note that the calculation of the first parallax search unit 103A is performed in units of the first pixel block, so the output temporary range image 41 is also in the unit of the first pixel block.
  • the parallax invalidity determination unit 105 identifies, from the temporary distance image 41, pixels for which the parallax is invalidated in the temporary distance image 41, that is, pixels for which the pixel value is set to "0". In the following, the area of pixels for which the parallax is invalid is called an “invalid area”.
  • the parallax invalidity determination unit 105 outputs information 42 indicating the invalid area to the condition generation unit 106.
  • the condition generation unit 106 When the information 42 indicating the invalid area is input from the parallax invalidity determination unit 105, the condition generation unit 106 generates the search condition 43 using the temporary distance image 4 1 generated by the first parallax search unit 103 A. And outputs it to the second parallax search unit 103B. The operation of the condition generator 106 will be described later.
  • a left image 21, a right image 31 and a search condition 43 are input to the second parallax search unit 103.
  • the second parallax searching unit 103 Min searches the area of the reference image corresponding to the invalid area of the standard image according to the search condition 43.
  • the 2nd parallax search unit 10 3 uses 30 as in the case of the 1st parallax search unit 10 3.
  • the second parallax searching unit 10 3 generates a distance image 4 4 by operation and outputs it to the vehicle control device 4.
  • the second parallax search unit 103 may recalculate the parallax value of the pixel block for which the first parallax search unit 103 has calculated the parallax, or the first parallax search unit 103 may temporarily The calculation result may be used by receiving the range image 41.
  • FIG. 3 is a conceptual diagram illustrating the disparity determination performed by the first disparity search unit 1038.
  • the left image 2 1 and the right image 3 1 are shown in Fig. 3 (a).
  • the reference image corresponding to the region 90 1 of the left image 21 which is the reference image, that is, the region of the right image 31 is searched.
  • the epipolar line is a dashed line extending in the horizontal direction indicated by reference numeral 90 2.
  • the width of the left image 21 and the right image 31 in the horizontal direction in the figure is 100 pixels and the center of the region 9011 is at the 400th pixel from the left edge, the right image 31 which is the reference image 31 As shown in the figure, a value between 400 and +600 is given. For example, if it is determined that the area 903 centered at 500 pixels from the left of the reference image corresponds to the area 9011 of the standard image, the parallax is calculated as "100".
  • FIG. 3 ( ⁇ ) is a diagram showing an example of the dissimilarity with respect to the region 901 at each position on the broken line 902 of the reference image.
  • the parallax of region 90 1 is calculated as “100 0”.
  • FIG. 3 ( ⁇ ) is a diagram showing another example of the dissimilarity between the reference image and the region 90 1 for each position on the broken line 90 2.
  • the parallax of region 90 1 is "1 180" and "+ 1 1”. It is not possible to determine which of the above is “5”. In such a case, the first parallax searching unit 1038 sets "0" to the position corresponding to the region 901 of the provisional distance image 41 as the region 9011 is an invalid region.
  • FIG. 4 illustrates the operations of the condition generation unit 106 and the second parallax search unit 103. ⁇ 02020/175062 8 ⁇ (: 171?2020/004334
  • the condition generation unit 106 determines the parallax candidate value of the invalid region with reference to the temporary distance image 4 1.
  • the parallax candidate value is determined based on one or more parallax values set around the invalid area in the temporary distance image 41.
  • the periphery of the invalid region may be a region adjacent to the invalid region or a region around the invalid region and not adjacent to the invalid region.
  • a specific operation will be described below assuming that the parallax value of the area adjacent to the right side of the invalid area is adopted as the candidate reference value.
  • the range of plus or minus 20 pixels from the reference value is set as a candidate.
  • the condition generation unit 1 06 sets the disparity candidate value to "1. Since it is +/- 20 of "0 0", it is assumed to be "80-120". That is, the search condition 43 in this case is information indicating that “the candidates for the disparity value in the area 90 1 are 80 to 120 ”. Actually, for example, the information of the X coordinate and the vertical coordinate in the reference image of the area 9001 is stored so that the area 9001 can be specified.
  • the second parallax search unit 10 3 that has received the search condition 4 3 sets the area of the reference image.
  • the parallax of 90 1 is searched in the range of parallax 80 to 120.
  • the parallax can be specified as "1 15". Therefore, as shown on the right side of Fig. 4 (a), the parallax of the invalid area can be specified.
  • Fig. 5 is a flow chart showing the operation of the arithmetic unit 1 in the present embodiment. However, in FIG. 5, only the processing of one pixel block is described for simplicity of notation and description. In reality, the arithmetic unit 1 sequentially changes the pixel blocks to be processed in the reference image and executes the process shown in FIG. 5 on the entire area of the reference image.
  • the first disparity search unit 1308 calculates the dissimilarity of each block of the reference image arranged in the horizontal direction of the pixel block to be processed, ⁇ 02020/175062 9 ⁇ (: 171?2020/004334
  • the first parallax search unit 103 determines whether the obtained peak is an effective value to be adopted as the parallax. For example, the first disparity search unit 103 determines that the plurality of peaks are invalid when a peak having a value close to the peak having the minimum dissimilarity is present.
  • the first parallax search unit 1038 determines that the peak value is valid, it sets the parallax value corresponding to the peak value in the temporary distance image 4 1 and the distance image 4 4 and outputs (3 3 0 7 ). The process shown in 5 ends.
  • the parallax invalidity determination unit 105 detects the pixel block to be processed, and the information 42 indicating the invalid region includes the information that identifies the pixel block to be processed and is output to the condition generation unit 106. It In the following step 3303, the condition generation unit 106 reads out the parallax of the invalid region in the temporary distance image 41, that is, the pixel block adjacent to the pixel block to be processed, and sets the parallax value to a predetermined width. , For example, plus or minus 20 pixels are added to determine the parallax candidate, that is, the search condition 43 as the search range.
  • the condition generation unit 106 outputs the search condition 43 to the second parallax search unit 103
  • the second parallax search unit 103 returns to the search condition 43 in step 3340. Therefore, search again.
  • the second parallax search unit 103 finds a peak by calculating the dissimilarity in the range set in the search condition 43 as in step 3301.
  • the second parallax search unit 103 determines whether or not the obtained peak is an effective value to be adopted as the parallax, as in step 3302.
  • the second parallax search unit 103 When the second parallax search unit 103 returns an affirmative judgment of 3305, the parallax value corresponding to the peak value is set in the pixel block to be processed of the distance image 44, and the output is performed. Then, the processing shown in FIG. 5 ends.
  • the second parallax search unit 103 decides to reject 3305, the parallax is calculated for the pixel block to be processed in the range image 44. ⁇ 02020/175062 10 ((171?2020/004334
  • the arithmetic unit 1 has a left image 2 1, which is an image obtained by shooting with the left camera 2, that is, a reference image, and a right image 3 1, which is an image obtained by shooting with the right camera 3, That is, using the reference image, the first parallax searching unit 10 3 that calculates the parallax in the left image 2 1 in pixel block units to generate the temporary distance image 4 1 and the parallax calculation from the temporary distance image 4 1
  • the parallax invalidity determination unit 1 0 5 that identifies the invalid region that failed in the above
  • the condition generation unit 1 0 6 that generates the search condition 4 3 that includes the parallax candidate of the invalid region using the temporary distance image 4 1, and the left image.
  • a right image 3 1, and a search condition 43 are used to provide a second parallax search unit 103 that calculates the parallax of the invalid region in pixel block units. Therefore, for pixel blocks for which parallax could not be calculated, by adding search condition 43, parallax can be calculated using the dissimilarity calculation result. That is, since the calculation result of the dissimilarity of the pixel block itself is used, an appropriate parallax can be calculated.
  • the second parallax search unit 103 calculates the parallax of the invalid region in pixel block units, using a predetermined range as the search range from the parallax candidates. Therefore, since the search is performed again within the range limited by the search condition 43, the peaks of dissimilarity can be evaluated correctly.
  • the condition generation unit 106 sets the parallax of the region adjacent to the invalid region as a candidate for the parallax of the invalid region. Since the distance often changes continuously, the accuracy of the calculated parallax can be improved by using the parallax of the adjacent region closest to the invalid region as a candidate.
  • Both the left image 21 and the right image 3 1 are images obtained by photographing a three-dimensional space having a vertical and horizontal spread.
  • the condition generation unit 106 sets the parallax of a region adjacent to the invalid region and existing in the horizontal direction of the invalid region as a candidate for the parallax of the invalid region. Even if there are no obstacles, the distance from the vertical direction from the bottom to the top in the captured image increases to the ground, but the horizontal direction. ⁇ 0 2020/175062 1 1 ⁇ (: 171? 2020 /004334
  • the direction is almost constant if there are no obstacles. Therefore, the accuracy of the calculated parallax can be improved by using the parallax of the horizontally adjacent regions as a candidate.
  • the vehicle control device 4 may not be mounted on the vehicle 9.
  • the vehicle 9 may be equipped with some device that uses the provisional distance image 41.
  • a display device for presenting the temporary distance image 4 1 to the occupant of the vehicle 9 may be mounted, or a wireless communication device for transmitting the temporary distance image 4 1 to the outside of the vehicle 9 may be mounted.
  • the functional configuration of the arithmetic unit 1 described in the first embodiment is merely an example. Some of the functional configurations shown in FIG. 2 may be configured integrally, or the configuration represented by one functional block diagram in FIG. 2 may be divided into two or more functions. In particular, the first parallax searching unit 103 and the second parallax searching unit 103 having similar operations may be integrally configured. It should be noted that the term “integrated configuration” includes duplication of hardware calculation circuits and software.
  • FIG. 6 is a functional configuration diagram of the arithmetic unit 1 in the second modification.
  • the arithmetic device 1 includes a third parallax searching unit 10 3 (3, which is configured by integrating the first parallax searching unit 10 3 and the second parallax searching unit 10 3 instead of the first parallax searching unit 10 3 and the second parallax searching unit 10 3.
  • the third parallax search unit 10 3 (3 is a condition generation unit depending on whether or not the search condition 43 is input from the condition generation unit 106).
  • the third parallax search unit 10 3 (3 is a condition generation unit.
  • the search condition 4 3 When the search condition 4 3 is not input from 1 06, it operates as the first disparity search unit 1 0 3, and when the search condition 4 3 is input from the condition generation unit 106, the second disparity search unit 1 3 is input. 0 3 It works as a mirror.
  • FIG. 7 is a diagram showing pixel blocks referred to by the condition generation unit 106 in Modification 3.
  • the condition generation unit 106 refers to only one area around the invalid area has been described. But the condition generator ⁇ 02020/175062 12 ⁇ (:171?2020/004334
  • 106 may determine the complementary value of the parallax by referring to a plurality of regions as shown in FIGS.
  • FIG. 7(a) is a diagram for explaining the names of pixel blocks.
  • Figure 7 ( 3 ) is a diagram showing an invalid area 901 and the pixel blocks adjacent to the invalid area 901. Is attached. In the first embodiment, since only the pixel block on the right of the invalid area 901 is referred to, it corresponds to referencing only the block in FIG. 7(8).
  • the condition generation unit 106 selects two or more regions adjacent to the invalid region 901 as shown in Fig. 7 ( ⁇ ) ⁇ ( ⁇ 0) and stores the parallax stored in the selected region.
  • the condition generator 106 may adopt the parallax values of all the regions from region to I as the reference value as shown in Fig. 7(b). It is also useful when there is a margin.
  • the condition generator 106 may use the parallax values of the regions and the regions arranged in the horizontal direction as the reference value as shown in Fig. 7 ( ⁇ ). This method takes advantage of the fact that regions have close parallax, and can be implemented at a lower computational cost than the method shown in Fig. 7(b).
  • condition generating unit 1 06 7 only vertical and horizontal areas of the invalid area as shown in ( ⁇ 1), i.e. regions ⁇ 3, snake, as a reference value only the values 1 and 1 of the parallax May be adopted.
  • the method shown in Fig. 7 () can be realized at an intermediate calculation cost between Fig. 7 (b) and Fig. 7 ( ⁇ ), and an intermediate effect of both can be obtained.
  • a specific example of the method shown in Fig. 7 ( ⁇ ) will be described.
  • FIG. 8 is a diagram showing a specific example in which the condition generation unit 106 uses the value of the parallax of the pixel blocks horizontally adjacent to the invalid region 109 as a reference value, and in the first embodiment.
  • the condition is generated when the disparity value of the area adjacent to the right of the invalid area is "100" and the disparity value of the area adjacent to the left of the invalid area is "180".
  • the parallax candidate values are plus or minus 20 for "100" and "180” respectively, so "80 ⁇ 120", "1 60 ⁇ "
  • the search condition 43 in this case is “parallax of region 901. ⁇ 0 2020/175062 13 ⁇ (: 17 2020 /004334
  • the second parallax search unit 103 that has received this search condition 43 determines the area of the reference image.
  • the parallax of 90 1 is searched in the range of parallax 80 to 120 and parallax 160 to 200.
  • the output of the second parallax searching unit 1033 is the same as that in the first embodiment. is there.
  • the pixel block referred to by the condition generation unit 106 is not limited to the block adjacent to the invalid area.
  • FIG. 9 is a diagram showing an example in which the condition generation unit 106 refers to a pixel block other than the pixel block adjacent to the invalid area.
  • the three pixel blocks in the center that is, the pixel blocks 60 1 to 60 3 are invalid areas, and the pixel blocks 60 5 and 60 7 existing to the left of them are Pixel block 604 and pixel block 606 existing to the right of it are not invalid areas.
  • Reference numeral 106 refers to the pixel block that is closest to the pixel block to be processed and is not an invalid area.
  • the pixel block 60 4 and pixel block 60 Refer to any one of 5.
  • the second parallax search unit 103 performs the search in the same manner as the first parallax search unit 103 although the area to be searched is narrowed.
  • the second parallax searching unit 10 3 may use the past calculation process to simplify the calculation and only make a selection. In this case, the second parallax searching unit 103 obtains the calculation progress from the first parallax searching unit 103.
  • FIG. 10 is a functional configuration diagram of a computing device 1 according to Modification 5. Shown in Figure 10 ⁇ 02020/175062 14 ⁇ (: 171?2020/004334
  • the functional configuration diagram differs from that in FIG. 2 in that the calculation progress 45 is output from the first parallax searching unit 103 to the second parallax searching unit 103.
  • the operation of the first parallax searching unit 103 and the operation of the second parallax searching unit 103 are different from those in the first embodiment as follows.
  • the first disparity search unit 103 outputs a plurality of disparity candidates, that is, disparity values having a minimum dissimilarity value for pixel blocks for which disparity cannot be determined.
  • the first parallax search unit 1 0 3 8 says, "The invalid region 9 0 1 at the 4 0 0th pixel from the left has 1 8 Information” is output as the calculation progress 45.
  • the second parallax search unit 10 3 determines the parallax using the search condition 4 3 and the calculation progress 4 5. Specifically, the second parallax search unit 103 selects the parallax included in the search condition 43 from the calculation progress 45. For example, when the calculation progress 45 is the above-mentioned information and the search condition 43 is “the candidates of the parallax value of the region 9 01 are 80 to 120 ”, the second parallax search unit 10 3 As the parallax of the region 901, select "+1 1 5" included in the range of "1 0 8" and "+ 1 1 5" to "8 0 ⁇ 1 2 0".
  • FIG. 11 is a flow chart showing the operation of the arithmetic unit 1 in Modification 5.
  • FIG. 11 corresponds to FIG. 5 in the first embodiment.
  • step 3304 is executed instead of step 3304.
  • the second parallax search unit 103 determines the parallax using the search condition 4 3 and the calculation progress 4 5 as described above.
  • the second parallax search unit 103 does not calculate the parallax if none of the calculation progresses 4 5 falls within the range of the parallax included in the search condition 43, for example, ⁇ 0. To be decided.
  • the processes other than step 3340 are the same as those in the first embodiment, and therefore the description thereof is omitted.
  • the first parallax searching unit 103 outputs the candidates of the parallax of the invalid region as the calculation progress to the second parallax searching unit 103.
  • the second parallax search unit 1 0 3 is a search condition. ⁇ 02020/175062 15 ⁇ (: 171?2020/004334
  • one parallax candidate is selected from the calculation process 45 and used as the parallax of the invalid region. Therefore, the second parallax search unit 103 does not need to calculate the dissimilarity again, and the calculation amount of the second parallax search unit 103 can be reduced.
  • a smaller pixel block is defined as a second pixel block.
  • the first pixel block is 4 pixels x 4 pixels
  • the second pixel block is 1 pixel x 1 pixel.
  • the arithmetic unit 1 may further calculate the parallax of the second pixel block included in the first pixel block using the parallax of the first pixel block.
  • a configuration overlapping with modified example 5 in particular, the description of the operation in which the second parallax search unit 103 selects the value of parallax using the calculation progress 45 is omitted.
  • the value of the parallax of the invalid area selected by the second parallax searching unit 10 3 using the calculation progress 45 is also referred to as “temporary parallax”.
  • FIG. 12 is a functional configuration diagram of a computing device 1 in Modification 6.
  • the arithmetic unit 1 further includes a fourth parallax search unit 1030.
  • the present embodiment differs from Modification 5 in that the second parallax searching unit 103 outputs the distance image 44 to the fourth parallax searching unit 130 0 instead of the vehicle control device 4.
  • the fourth parallax search unit 1030 generates a detailed distance image 46 in which the distance information of the second pixel block unit is stored and outputs it to the vehicle control device 4.
  • FIG. 13 is a diagram for explaining the operation of the fourth parallax searching unit 1303 in Modification 6.
  • Each of the eight to nine blocks shown on the left side of Fig. 13 is the size of the first pixel block, eg 4 pixels x 4 pixels.
  • Each of the 16 blocks 300 to 333 shown on the right side of FIG. 13 has the size of the second pixel block, for example, 1 pixel ⁇ 1 pixel.
  • the distance image 44 stores the distance information in the first pixel block unit
  • the detailed distance image 46 stores the distance information in the second pixel block unit. Therefore, the left and right of Fig. 13 respectively ⁇ 02020/175062 16 ⁇ (: 171-12020/004334
  • the fourth parallax search unit 1030 calculates detailed distance information as shown in FIG. 13 for all the pixel blocks forming the distance image 44.
  • the relationship with each block from 0 to 3333 is called upper/lower relationship.
  • the larger the area the higher.
  • the upper block of block 800 is block eight
  • the lower block of block eight is blocks 300 to 3333.
  • the fourth parallax search unit 1030 calculates the dissimilarity for each of the 300 to 3333 as in the case of the first parallax search unit 103, and specifies the corresponding region in the reference image. Calculate the parallax. However, the fourth parallax search unit 1030 searches only a predetermined range based on the parallax of the upper block, eight, when searching the region corresponding to 300 to 33 in the reference image. .. For example, when the parallax of block 8 is "+ 1 15", only the range of "+ 9 5 to + 1 35" is searched as the range of plus or minus 20 pixels.
  • the fourth parallax search unit 1030 may decide that the parallax of the corresponding lower block cannot be calculated, or the parallax on the epipolar line is not specified. You may search all points.
  • the source of the information that limits the size of the target block and the search range is different.
  • the second parallax search unit 103 is in the first pixel block unit
  • the fourth parallax search unit 1030 is in the second pixel block unit.
  • the source of the information that limits the search range is the second parallax search unit 1 0 3 is the search condition 4 3 and the fourth parallax search unit 1 0 3 0 is the parallax of the corresponding upper block.
  • the size of the second block is smaller than the size of the first block.
  • the 1-parallax searching unit 103 outputs the candidate value, which is a candidate for the parallax of the invalid region, to the second parallax searching unit 103 as the calculation progress 45.
  • the second parallax search unit 103 uses the candidate parallax to select one of the candidate values as a temporary parallax, and the fourth parallax search unit 1030 sets the second block included in the invalid region.
  • the parallax is calculated from the temporary parallax as a search range with a predetermined range.
  • the arithmetic unit 1101 first calculates the temporary parallax by the second parallax search unit 103 using the peripheral parallax information, The parallax of the second block can be calculated using the temporary parallax.
  • the second parallax search unit 103 calculates the temporary parallax using the calculation process 45, but the second parallax search unit 10 as in the first embodiment. For 3rd, the dissimilarity of the invalid area may be calculated again without using the calculation process 45.
  • the second parallax search unit 103 and the fourth parallax search unit 1030 have been described as different configurations, but they may be integrally configured.
  • the condition generation unit 106 includes in the search condition 4 3 information in which the reference value of the parallax candidate has a range.
  • the search condition 43 includes the reference value of the parallax candidate but does not include the range information, and the second parallax search unit 103 may set the range based on the reference value.
  • the search condition 43 in the first embodiment is information indicating that, for example, “parallax value candidates in the region 90 1 are 8 0 to 120 0 ”.
  • the search condition 43 is set to the information indicating that the reference value of the disparity value of the area 90 1 is 100, and the second disparity search unit 1 0 3 0 1 It is possible to set the range of "80 to 120" by setting plus or minus 20 around "".
  • the first parallax search unit 103 and the second parallax search unit 103 generate and output whether or not effective parallax cannot be calculated, independently of the temporary distance image 4 1 and the distance image 4 4. You may.
  • at least one of the temporary range image 41, the information 42 indicating the invalid area, the search condition 43, and the range image 44 is calculated by the arithmetic unit 1 in the calculation process. ⁇ 0 2020/175062 18 ⁇ (: 171-1? 2020 /004334
  • a second embodiment of the arithmetic unit according to the present invention will be described with reference to FIGS. 14 to 15.
  • the same components as those of the first embodiment are designated by the same reference numerals, and the differences are mainly described.
  • the points that are not particularly described are the same as those in the first embodiment.
  • the present embodiment differs from Modified Example 6 of the first embodiment mainly in that a fifth parallax search unit that creates a detailed distance image 46 without passing through the distance image 44 is provided.
  • the size of the first block is larger than 1 pixel ⁇ 1 pixel, and the second block size is smaller than the first block size.
  • the hardware configuration of the arithmetic unit 18 in the second embodiment is the same as the hardware configuration of the arithmetic unit 1 in the first embodiment, and the description thereof is omitted.
  • FIG. 14 is a functional configuration diagram of a computing device 1 according to the second embodiment.
  • a fifth parallax searching unit 103 is provided instead of the second parallax searching unit 103.
  • the function of the fifth parallax search unit 103 is roughly equivalent to a combination of the function of the second parallax search unit 103 and the function of the fourth parallax search unit 1030 in Modification 6. Details of the operation of the fifth parallax search unit 103 will be described later.
  • the first parallax searching unit 103 outputs the calculated provisional distance image 41 to the fifth parallax searching unit 103.
  • the left image 2 1, the right image 3 1, the tentative distance image 4 1, and the search condition 4 3 are input to the fifth parallax search unit 103.
  • the detailed distance image 46 is output to the vehicle controller 4.
  • the operations of the parallax invalidity judgment unit 105 and the condition generation unit 106 are the same as in the first embodiment.
  • the fifth parallax search unit 103 calculates the distance information with higher resolution, that is, the parallax of a plurality of second pixel blocks, for each of the first pixel blocks forming the temporary distance image 41. To do. At this time, the fifth parallax searching unit 1033 is the first parallax search target. ⁇ 0 2020/175062 19 ⁇ (: 171-1?2020/004334
  • the range for searching the parallax of the second pixel block is determined based on the value of that parallax. Also, the fifth parallax search unit 103 finds that if no parallax is set in the first pixel block to be processed, in other words, if the first pixel block to be processed is an invalid region, Search for the range set in Condition 4 3.
  • FIG. 15 is a flowchart showing the operation of the arithmetic unit 1 according to the second embodiment.
  • steps 3330 to 3307 are the processing for each first pixel block
  • steps 3351 and thereafter are for each second pixel block. Processing.
  • the symbol of the repetitive process is omitted for the sake of simplicity, but in reality, steps 3 3 0 1 to 3
  • the process of 3 0 7 is executed, and the processes of step 3 3 5 1 and subsequent steps are executed for all the second pixel blocks forming the provisional distance image 4 1. That is
  • the “processing target” in is the first pixel block
  • the “processing target” in and after step 3335 is the second pixel block.
  • the first disparity search unit 1308 sets the first pixel block included in the standard image as the processing target, and sets the dissimilarity of each block of the reference images arranged in the horizontal direction. Is calculated, and the peak showing the minimum value is detected.
  • the first parallax search unit 103 determines whether the obtained peak is a valid value to be adopted as the parallax. If the first parallax search unit 103 determines that the values are valid, it sets the parallax value corresponding to the peak value to the value of the pixel block to be processed of the temporary distance image 41, and outputs it. (3307), go to step 3351.
  • the parallax search unit 1 03 8 determines that it is invalid in step 3302 (3302: N0)
  • the parallax is calculated for the pixel block to be processed in the temporary distance image 41. Set it to a special value that indicates that you cannot do it, for example "0" and output. ⁇ 02020/175062 20 boxes (: 171?2020/004334
  • the parallax invalidity determination unit 105 detects the pixel block to be processed, the information 42 indicating the invalid region is recorded with the information specifying the pixel block to be processed, and is output to the condition generation unit 106. It In the following step 3303, the condition generation unit 106 reads out the invalid area in the temporary distance image 41, that is, the parallax of the pixel block adjacent to the pixel block to be processed.
  • condition generation unit 106 determines the search condition 4 3 as a parallax candidate, that is, a search range by adding a predetermined width, for example, plus or minus 20 pixels, to the value of the parallax, and sets the determined search condition 4 3 Output to the fifth parallax search unit 1 0 3 and proceed to step 3 3 5 1.
  • the fifth parallax search unit 103 is the third parallax search unit included in the reference image.
  • the degree of dissimilarity is calculated using the second pixel block as the processing target.
  • the processing of step 3351 is similar to that of 3301, except that the candidate value of disparity is used.
  • the parallax candidate values used by the fifth parallax search unit 103 will be described.
  • the parallax candidate value used for calculating the dissimilarity is based on the parallax value set in the pixel block above the pixel block to be processed in the provisional distance image 4 1.
  • the reference value is set to "1 0 0"
  • a predetermined range for example, as a plus or minus 20 pixel, “80 to 120” is set as a parallax candidate value.
  • the fifth parallax search unit 103 is described in the search condition 43 when the parallax is not set in the pixel block above the pixel block to be processed in the temporary distance image 41.
  • the calculated value is used as the parallax candidate value.
  • the case where the parallax is not set in the upper pixel block is a case where a special value indicating that the parallax cannot be calculated, for example, “0” is set. Since the fifth parallax search unit 103 needs only to calculate the dissimilarity targeting only the parallax candidate values, the parallax calculation accuracy can be improved while reducing the calculation amount.
  • the fifth parallax searching unit 1033 determines whether the peak obtained similarly to step 3302 is an effective value to be adopted as the parallax. However, in step 3330 and step 3352, the pixel block to be processed ⁇ 0 2020/175062 21 ⁇ (: 171-1? 2020 /004334
  • step 3 3 5 4 if it affirms step 3 3 5 2, and proceeds to step 3 3 5 3 if it makes a negative determination to step 3 3 5 2.
  • step 3353 the fifth parallax search unit 1033 sets the value of the region corresponding to the processing target in the detailed distance image 46 to a special value indicating that parallax cannot be calculated, for example, Set it to "0", output it, and end the processing shown in Figure #1 6 #.
  • step 3 3 5 4 the fifth parallax search unit 10 3 sets the value of the region corresponding to the processing target in the detailed distance image 4 6 to the parallax value determined to be valid and outputs it. #1 6 The process shown in # is terminated.
  • the second parallax search unit 103 uses the parallax of the surrounding pixel blocks to reconstruct the parallax of the first pixel block. Then, the fourth parallax search unit 1030 calculates the parallax of the second pixel block.
  • the fifth parallax search unit 103 is adjacent to the pixel block above the second pixel block to be processed. Then, the parallax of the second pixel block is calculated by using the parallax value of the other first pixel block.
  • the modified example 6 and the second embodiment are common in that the parallax in the pixel block to be processed is calculated using the parallax value of the pixel block existing in the periphery of the process target. Both methods also have the common point of improving the parallax accuracy while reducing the calculation amount.
  • the size of the second block is smaller than the size of the first block.
  • the fifth parallax search unit 103 determines that the parallax of the second block unit other than the invalid area is the parallax of a predetermined range from the parallax of the first block including the second block that is the calculation target. To calculate. Therefore, computing device 1 is ⁇ 0 2020/175062 22 ⁇ (: 171? 2020 /004334
  • a detailed range image 46 can be created for the entire image.
  • a third embodiment of the arithmetic unit according to the present invention will be described with reference to FIGS.
  • the same components as those of the first embodiment are designated by the same reference numerals, and the differences are mainly described.
  • the points that are not particularly described are the same as those in the first embodiment.
  • the present embodiment differs from the first embodiment mainly in considering the inclination of the vehicle.
  • FIG. 16 is a hardware configuration diagram of a vehicle No. 9 in the third embodiment.
  • FIG. X 3 is different from FIG. 1 in the first embodiment in that a vehicle information acquisition device 5 is added.
  • the vehicle information acquisition device 5 acquires the vehicle information 47 by a sensor (not shown) and outputs it to the arithmetic unit 1.
  • the vehicle information 47 is information that can calculate the inclination of the vehicle 9 at least.
  • the vehicle information 47 is, for example, information about the curvature of the road surface on which the vehicle 9 is currently traveling, the inclination, the curvature of the curve, and the wear of the tire.
  • the vehicle information 47 may include the output of an inclinometer (not shown) or a gyro sensor, which measures the inclination of the vehicle No. 9.
  • the functional configuration of the arithmetic unit 1 and the operation of each functional configuration are the same as those in the first embodiment except the operation of the condition generation unit 106.
  • the condition generation unit 106 changes the pixel block to be referred to according to the inclination of the vehicle 9m. Compared to the rate of change in depth with respect to change in vertical position, the change in depth with respect to change in horizontal position is more gradual, so the pixel block to be referenced is changed according to the tilt of the vehicle body.
  • FIG. 17 is a diagram showing a pixel block referenced by the condition generation unit 106 in the present embodiment.
  • Fig. 17 ( 3 ) shows that the pixel block to be referred to is selected asymmetrically when the vehicle 9 is tilted with respect to the road surface due to road surface curvature, slope, force, tire wear, etc. It is a figure which shows the example which does.
  • Figure 17 ( 3 ) shows that the vehicle No. 9 is tilted clockwise in the direction of travel, that is, the images taken by the left camera 2 and the right camera 3 are rotated counterclockwise. Correspond. This place ⁇ 0 2020/175062 23 ⁇ (: 17 2020/004334
  • Block 5 0 1 and the block 5 0 6 horizontally adjacent to the block 5 0 1 on the image in order to re-search for the disparity for the block 5 0 1 for which the disparity is determined to be invalid.
  • FIG. 17 ( ⁇ ) is a diagram showing an example of the case where the vehicle No. 9 is inclined on the opposite side to that of FIG. 17( a ).
  • the pixel block to be referred to is also opposite, that is, in addition to block 505 and block 506, block 502 and block 509 are selected.
  • the arithmetic unit 1 ( 3, the left camera 2, and the right camera 3 are mounted on the vehicle 9).
  • the condition generation unit 10 6 specifies the horizontal direction based on the vehicle information 4 7. Even when the vehicle 9 is tilted due to tire wear or road inclination, the parallax value of the horizontally adjacent pixel blocks, which has less difference than the vertical direction, is searched for the parallax of the ineffective area. It can be used as a candidate reference value.
  • the program is stored in an unillustrated [III IV!, but the program is stored in a nonvolatile memory (not illustrated) of the arithmetic unit 1.
  • the arithmetic unit 1 may include an input/output interface (not shown), and the program may be read from another device via the input/output interface and a medium usable by the arithmetic unit 1 when necessary.
  • the medium refers to, for example, a storage medium that can be attached to and detached from the input/output interface, or a communication medium, that is, a network such as wired, wireless, or optical, or a carrier wave or a digital signal that propagates through the network.
  • a part or all of the functions realized by the program may be realized by a hardware circuit or 08.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Measurement Of Optical Distance (AREA)

Abstract

演算装置は、第1のカメラで撮影して得られた画像である基準画像、および第2のカメラで撮影して得られた画像である参照画像を用いて、第1のブロック単位で基準画像における視差を算出して仮距離画像を生成する第1視差探索部と、仮距離画像から視差の算出に失敗した無効領域を特定する視差無効判定部と、仮距離画像を用いて無効領域の視差の候補を含む探索条件を生成する条件生成部と、基準画像、参照画像、および探索条件を用いて、無効領域の視差を第1のブロック以下のサイズである第2のブロック単位で算出する第2視差探索部とを備える。

Description

\¥0 2020/175062 1 卩(:17 2020 /004334 明 細 書
発明の名称 : 演算装置、 視差算出方法
技術分野
[0001 ] 本発明は、 演算装置、 および視差算出方法に関する。
背景技術
[0002] —対のカメラを有するステレオカメラで撮影されたステレオ画像を用いて 、 カメラ視野内に存在する物体までの距離を三角測量の原理で計測する位置 測定装置が知られている。 三角測量の原理とはすなわち、 左右のカメラによ って撮影された同一の物体の像の位置のずれ、 すなわち視差を用いて、 カメ ラからその物体までの距離を算出するものである。 視差の導出は、 物体の一 方の画像上における像が、 他方の画像上のどこに存在するかを特定すること によって実現する。
これまでに様々な視差の導出手法が提案されている。 たとえば古典的手法 では、 一方の画像中の複数画素からなる領域に対して、 他方の画像中で最も 非類似度の低い領域を探索するブロックマッチングが知られている。 視差計 算の密度は、 複数画素に対して 1視差、 1画素に対して 1視差など用途に応 じて決定することができる。 ただし、 非類似度の低い領域を探索する過程で 、 非類似度が低い領域が複数存在した場合に、 いずれが正しい視差か決定で きず、 その領域の視差を無効と判定せざるを得ない問題、 いわゆる無効視差 の問題が存在する。 視差無効の解消に関して、 たとえば特許文献 1の手法が 知られている。 特許文献 1 には、 撮像画像の各画素の特徴量に基づいて、 有 効画素を決定する有効画素決定部と、 前記撮像画像に対応する視差画像にお ける、 前記有効画素に相当する有効視差の近傍の有効視差でない視差を有効 化する有効化部とを有する視差画像生成装置が開示されている。
先行技術文献
特許文献
[0003] 特許文献 1 : 日本国特開 2 0 1 7 - 5 4 4 8 1号公報 \¥0 2020/175062 2 卩(:17 2020 /004334 発明の概要
発明が解決しようとする課題
[0004] 特許文献 1 に記載されている発明では、 視差が算出できなかったブロック の非類似度計算結果を全く用いずに視差を決定しているので、 決定された視 差の有効性や精度に問題が生じうる。
課題を解決するための手段
[0005] 本発明の第 1の態様による演算装置は、 第 1のカメラで撮影して得られた 画像である基準画像、 および第 2のカメラで撮影して得られた画像である参 照画像を用いて、 第 1のブロック単位で前記基準画像における視差を算出し て仮距離画像を生成する第 1視差探索部と、 前記仮距離画像から視差の算出 に失敗した無効領域を特定する視差無効判定部と、 前記仮距離画像を用いて 前記無効領域の視差の候補を含む探索条件を生成する条件生成部と、 前記基 準画像、 前記参照画像、 および前記探索条件を用いて、 前記無効領域の視差 を前記第 1のブロック以下のサイズである第 2のブロック単位で算出する第 2視差探索部とを備える。
本発明の第 2の態様による視差算出方法は、 第 1のカメラで撮影して得ら れた画像である基準画像、 および第 2のカメラで撮影して得られた画像であ る参照画像が入力される演算装置が実行する視差算出方法であって、 前記演 算装置が、 前記基準画像および前記参照画像を用いて、 第 1のブロック単位 で前記基準画像における視差を算出して仮距離画像を生成することと、 前記 仮距離画像から視差の算出に失敗した無効領域を特定することと、 前記仮距 離画像を用いて前記無効領域の視差の候補を含む探索条件を生成することと 、 前記基準画像、 前記参照画像、 および前記探索条件を用いて、 前記無効領 域の視差を前記第 1のブロック以下のサイズである第 2のブロック単位で算 出することとを含む。
発明の効果
[0006] 本発明によれば、 妥当な視差を算出できる。 \¥02020/175062 3 卩(:171?2020/004334
図面の簡単な説明
[0007] [図 1]車両 9のハードウエア構成図
[図 2]第 1の実施の形態における演算装置 1の機能ブロック図
[図 3]第 1視差探索部 1 0 3 による視差の決定を説明する概念図
[図 4]条件生成部 1 0 6および第 2視差探索部 1 0 3巳の動作を説明する概念 図
[図 5]第 1の実施の形態における演算装置 1の動作を表すフローチヤート [図 6]変形例 2における演算装置 1の機能構成図
[図 7]変形例 3において条件生成部 1 0 6が参照する画素ブロックを示す図 [図 8]条件生成部 1 0 6が無効領域 1 0 9に水平方向に隣接する画素ブロック の視差の値を基準値とする具体例を示す図
[図 9]条件生成部 1 0 6が無効領域に隣接する画素ブロック以外を参照する例 を示す図
[図 10]変形例 5における演算装置 1の機能構成図
[図 1 1]変形例 5における演算装置 1の動作を表すフローチヤート
[図 12]変形例 6における演算装置 1の機能構成図
[図 13]変形例 6における第 4視差探索部 1 0 3 0の動作を説明する図
[図 14]第 2の実施の形態における演算装置 1 の機能ブロック図
[図 15]第 2の実施の形態における演算装置 1 八の動作を示すフローチヤート
[図 16]第 3の実施の形態における車両 9巳のハードウエア構成図
[図 17]第 2の実施の形態において条件生成部 1 0 6巳が参照する画素ブロッ クを示す図
発明を実施するための形態
[0008] 一第 1の実施の形態一
以下、 図 1〜図 5を参照して、 本発明に係る演算装置 1の第 1の実施の形 態を説明する。
[0009] (構成)
図 1は、 本発明に係る演算装置 1 を搭載する車両 9のハードウエア構成図 である。 車両 9は、 演算装置 1 と、 左カメラ 2と、 右カメラ 3と、 車両制御 装置 4とを備える。 演算装置 1および車両制御装置 4は電子制御装置 (E I e c t r o n i c Co n t r o l U n i t ) である。 左カメラ 2および 右カメラ 3は、 車両 9の周囲を撮影して得られた撮影画像を演算装置 1 に出 力する。 左カメラ 2および右カメラ 3は、 水平方向に並んで配置される。 以 下では、 左カメラ 2の撮影画像を左画像 2 1、 右カメラ 3の撮影画像を右画 像 3 1 と呼ぶ。 また左カメラ 2を 「第 1のカメラ」 と呼び、 右カメラ 3を 「 第 2のカメラ」 と呼ぶこともある。
[0010] 演算装置 1は、 中央演算装置である C P U 1 1、 読み出し専用の記憶装置 である ROM 1 2、 読み書き可能な記憶装置である RAM 1 3、 および左画 像 2 1や右画像 3 1 を受信するインタフェース 1 4を備える。 C P U 1 1が ROM 1 2に格納されるプログラムを RAM 1 3に展開して実行することで 後述する複数の機能を実現する。 ただし演算装置 1は、 C P U 1 1、 ROM 1 2、 および RAM 1 3の組み合わせの代わりに、 書き換え可能な論理回路 である F PGA (Field Programmable Gate Array) や特定用途向け集積 回路である AS 丨 C (Application Specific Integrated Circuit) によ り実現されてもよい。 また演算装置 1は、 C P U 1 1、 ROM 1 2, および RAM 1 3の組み合わせの代わりに、 異なる構成の組み合わせ、 たとえば C P U 1 1、 ROM 1 2、 RAM 1 3と F PGAの組み合わせにより実現され てもよい。
[0011] 演算装置 1は、 入力される左画像 2 1および右画像 3 1 を用いて仮距離画 像 4 1 を作成し、 車両制御装置 4に出力する。 演算装置 1が仮距離画像 4 1 を作成する過程は図 2以降を参照してのちに詳述する。 仮距離画像 4 1 とは 、 二次元平面における距離の遠近を色の濃淡や色の彩度で表したものである 。 ただし本実施の形態では、 仮距離画像 4 1の各画素には濃淡を表す 「0」 〜 「255」 の整数値が格納される。 このうち 「0」 は、 距離の算出が不可 能であつたことを示す特別な数値である。
[0012] 仮距離画像 4 1 に示される範囲は、 左画像 2 1および右画像 3 1 と略同一 である。 ただし仮距離画像 4 1 に示される範囲は、 左画像 2 1および右画像 3 1 に示される範囲よりも狭くてもよい。 仮距離画像 4 1の画素数は、 左画 像 2 1および右画像 3 1 と略同一でもよいし、 数分の一程度でもよい。
[0013] 車両制御装置 4は、 演算装置 1から入力される仮距離画像 4 1 を用いて車 両 9を制御する。 車両制御装置 4はたとえば、 仮距離画像 4 1から車両 9の 周辺に存在する障害物を検出し、 車両 9と検出した障害物との衝突を避ける ように車両 9を制御する。 車両制御装置 4による車両 9の制御は、 たとえば 車両制御装置 4が不図示の操舵装置および不図示の制動装置に動作指令を出 力することにより実現される。
[0014] 図 2は、 演算装置 1が有する機能を機能ブロックとして示した機能ブロッ ク図である。 演算装置 1はその機能として、 第 1視差探索部 1 0 3 Aと、 第 2視差探索部 1 0 3 Bと、 視差無効判定部 1 0 5と、 条件生成部 1 0 6とを 備える。 第 1視差探索部 1 0 3 A、 第 2視差探索部 1 0 3 B、 視差無効判定 部 1 0 5、 および条件生成部 1 0 6は、 前述の C P U 1 1 によりソフトウエ ア処理により実現される。 なお以下に説明する処理により生成される情報、 たとえば仮距離画像 4 1、 無効領域を示す情報 4 2、 探索条件 4 3、 および 距離画像 4 4は、 R A M 1 3に一時的に保存される。
[0015] 第 1視差探索部 1 0 3 Aには、 左画像 2 1および右画像 3 1が入力される 。 第 1視差探索部 1 0 3 Aは、 まず左画像 2 1および右画像 3 1のいずれか _方を基準画像、 他方を参照画像とする。 第 1視差探索部 1 0 3 Aは基準画 像として左画像 2 1 と右画像 3 1のいずれを選択してもよいが、 この選択は 本実施の形態では一貫させる。 そして第 1視差探索部 1 0 3 Aは、 基準画像 の画素ブロックに対応する参照画像の領域を探索する。 この探索には、 既知 の手法を用いる。 たとえば第 1視差探索部 1 0 3 Aは Z S A D (Zero-mean Sum of Abso lute D i fferences) により非類似度を算出し、 Z S A D値が 最も小さい参照画像上の領域を探索する。
[0016] 第 1視差探索部 1 0 3 Aは、 エピポーラ線上のすべての領域を探索しても よいし、 エピポーラ線上の所定の範囲のみを探索してもよい。 第 1視差探索 部 1 03 Aが探索を行う画素ブロックの大きさは、 1画素 x 1画素、 すなわ ち 1画素ごとでもよいし、 4画素 X 4画素、 8画素 X 8画素、 1 6画素 x 2 5画素などでもよい。 なおこの画素ブロックのサイズのことを 「第 1の画素 ブロック」 のサイズとも呼ぶ。 第 1視差探索部 1 03 Aは、 Z S A Dの代わ りに SAD (Sum of Absolute Differences) 、 S S D (Sum of Square d Differences) 、 Z S S D (Zero-mean Sum of Squared Differences ) 、 NCC (Normalized Cross Correlation) 、 および ZNCC (Zero-me an Normalized Cross Correlation) のいずれかを用いてもよい。
[0017] 第 1視差探索部 1 03 Aは、 画素ブロックごとに視差を算出して仮距離画 像 4 1 を作成する。 ただし第 1視差探索部 1 03 Aは、 視差が決定できない 場合にはその画素ブロックに対応する仮距離画像 4 1の画素値を視差が算出 できないことを示す特別な値、 たとえば 「0」 に設定する。 なお第 1視差探 索部 1 03 Aは、 算出した視差をそのまま仮距離画像 4 1の各画素の値とし てもよいし、 最小値〜最大値が 1〜 255となるように視差の値をスケール 変換してもよい。 なお、 第 1視差探索部 1 03 Aの演算が第 1の画素ブロッ クを単位として行われるので、 出力される仮距離画像 4 1 も第 1の画素ブロ ックの単位となる。
[0018] 視差無効判定部 1 05は、 仮距離画像 4 1 において視差が無効にされてい る画素、 すなわち画素値が 「0」 に設定されている画素を仮距離画像 4 1か ら特定する。 以下では、 視差が無効にされている画素の領域を 「無効領域」 と呼ぶ。 視差無効判定部 1 〇 5は、 無効領域を示す情報 42を条件生成部 1 06に出力する。 条件生成部 1 06は、 視差無効判定部 1 05から無効領域 を示す情報 42が入力されると、 第 1視差探索部 1 03 Aが生成した仮距離 画像 4 1 を用いて探索条件 43を生成して第 2視差探索部 1 03 Bに出力す る。 条件生成部 1 06の動作は後述する。
[0019] 第 2視差探索部 1 03巳には、 左画像 2 1、 右画像 3 1、 および探索条件 43が入力される。 第 2視差探索部 1 03巳は、 探索条件 43にしたがって 基準画像の無効領域に対応する参照画像の領域を探索する。 第 2視差探索部 \¥02020/175062 7 卩(:171?2020/004334
1 0 3巳の詳細な動作は後述するが、 第 2視差探索部 1 0 3巳は第 1視差探 索部 1 0 3 と同様に 3 0などを用いる。 第 2視差探索部 1 0 3巳は演 算により距離画像 4 4を生成して車両制御装置 4に出力する。 第 2視差探索 部 1 0 3巳は、 第 1視差探索部 1 0 3 が視差を算出できた画素ブロックの 視差の値を再計算してもよいし、 第 1視差探索部 1 0 3 から仮距離画像 4 1 を受信して計算結果を利用してもよい。
[0020] 図 3は、 第 1視差探索部 1 0 3八による視差の決定を説明する概念図であ る。 図 3 (a) に左画像 2 1 と右画像 3 1が示されている。 この例では、 基 準画像である左画像 2 1の領域 9 0 1 に対応する参照画像、 すなわち右画像 3 1の領域を探索している。 本実施の形態では左カメラ 2と右カメラ 3が水 平方向に並んで設置されているので、 エピポーラ線は符号 9 0 2で示す水平 方向に延びる破線である。 左画像 2 1および右画像 3 1の図示横方向の幅が 1 0 0 0画素であり、 領域 9 0 1の中心が左端から 4 0 0画素目の場合に、 参照画像である右画像 3 1 には図示するように一 4 0 0〜 + 6 0 0の数値が 振られる。 たとえば参照画像の左から 5 0 0画素を中心とする領域 9 0 3が 基準画像の領域 9 0 1 に対応すると判断された場合には、 視差は 「1 0 0」 と算出される。
[0021 ] 図 3 (匕) は、 参照画像の破線 9 0 2上の位置ごとの領域 9 0 1 との非類 似度の一例を示す図である。 図 3 (13) に示す例では、 非類似度が最小とな るピークが存在し、 他に近い値のピークが存在しないため、 領域 9 0 1の視 差が 「1 0 0」 と算出される。 図 3 (〇) は、 参照画像の破線 9 0 2上の位 置ごとの領域 9 0 1 との非類似度の別の一例を示す図である。 図 3 (匕) に 示す例では、 非類似度が最小となるピークが 2つ存在しそれらの値が略同一 のため、 領域 9 0 1の視差が 「一 1 8 0」 と 「+ 1 1 5」 のいずれであるの かが決定できない。 このような場合には第 1視差探索部 1 0 3八は、 領域 9 0 1は無効領域として仮距離画像 4 1の領域 9 0 1 に対応する位置には 「0 」 を設定する。
[0022] 図 4は、 条件生成部 1 0 6および第 2視差探索部 1 0 3巳の動作を説明す \¥02020/175062 8 卩(:171?2020/004334
る概念図である。 条件生成部 1 〇 6は、 視差無効判定部 1 0 5から無効領域 を示す情報 4 2を受信すると、 仮距離画像 4 1 を参照して無効領域の視差の 候補値を決定する。 視差の候補値は、 仮距離画像 4 1 において無効領域の周 辺に設定されている 1つ以上の視差の値に基づき決定される。 無効領域の周 辺とは、 無効領域に隣接する領域であってもよいし、 無効領域の周辺であっ て無効領域に隣接しない領域であってもよい。 本実施の形態では、 無効領域 の右側に隣接する領域の視差値を候補の基準値に採用するとして以下で具体 的な動作を説明する。 また本実施の形態では、 基準値からプラスマイナス 2 0画素の範囲を候補とする。
[0023] たとえば図 4 ( 3 ) の左に示すように無効領域の右に隣接する領域の視差 値が 「1 0 0」 の場合に、 条件生成部 1 0 6は視差の候補値を 「1 0 0」 の プラスマイナス 2 0なので、 「8 0〜 1 2 0」 とする。 すなわちこの場合の 探索条件 4 3は、 「領域 9 0 1の視差値の候補が 8 0〜 1 2 0」 であること を示す情報である。 なお実際には領域 9 0 1 を特定可能なように、 たとえば 領域 9 0 1の基準画像における X座標や丫座標の情報が格納される。
[0024] この探索条件 4 3を受信した第 2視差探索部 1 0 3巳は、 基準画像の領域
9 0 1の視差を視差 8 0〜 1 2 0の範囲で探索する。 たとえば図 3 (〇) に 示した例では全域を対象としていたのでピークが 2つ存在したが、 図 4 (匕 ) に示すように視差 8 0〜 1 2 0の範囲のみで探索を行うことで視差を 「 1 1 5」 と特定できる。 そのため図 4 ( a ) の右に示すように、 無効領域の視 差を特定できる。
[0025] 図 5は、 本実施の形態における演算装置 1の動作を表すフローチヤートで ある。 ただし図 5は表記及び説明を簡潔にするために 1つの画素ブロックの 処理についてのみ記載している。 実際には演算装置 1は、 基準画像における 処理対象の画素ブロックを次々に変更して、 基準画像の全域について図 5に 示す処理を実行する。
[0026] まずステップ 3 3 0 1 において第 1視差探索部 1 0 3八は、 処理対象の画 素ブロックの水平方向に並ぶ参照画像の各ブロックの非類似度を算出し、 そ \¥02020/175062 9 卩(:171?2020/004334
の極小値を示すピークを検出する。 続く 3 3 0 2において第 1視差探索部 1 0 3 は、 得られたピークが視差として採用すべき有効な値か否かを判別す る。 たとえば第 1視差探索部 1 0 3 は、 複数のピークが得られ、 非類似度 の最小値を示すピークの他に近い値を示すピークが存在した場合に無効と判 定する。 第 1視差探索部 1 0 3八は、 有効と判定した場合はそのピーク値に 対応する視差値を仮距離画像 4 1および距離画像 4 4に設定して出力し ( 3 3 0 7 ) 、 図 5に示す処理を終了する。
[0027] ステップ 3 3 0 2において第 1視差探索部 1 0 3八が無効と判断をすると
( 3 3 0 2 : N 0 ) 、 仮距離画像 4 1では処理対象の画素ブロックには視差 が算出できないことを示す特別な値、 たとえば 「0」 に設定されて出力され る。 そのため視差無効判定部 1 0 5により処理対象の画素ブロックが検出さ れ、 無効領域を示す情報 4 2にその処理対象の画素ブロックを特定する情報 が記載されて条件生成部 1 0 6に出力される。 続くステップ 3 3 0 3では条 件生成部 1 0 6が、 仮距離画像 4 1 における無効領域、 すなわち処理対象の 画素ブロックに隣接する画素ブロックの視差を読み出し、 その視差の値に所 定の幅、 たとえばプラスマイナス 2 0画素を加えて視差の候補、 すなわち探 索範囲として探索条件 4 3を決定する。
[0028] 条件生成部 1 0 6は探索条件 4 3を第 2視差探索部 1 0 3巳に出力するの で、 第 2視差探索部 1 0 3巳はステップ 3 3 0 4において探索条件 4 3にし たがって再度の探索を行う。 具体的には第 2視差探索部 1 0 3巳は、 探索条 件 4 3において設定された範囲でステップ 3 3 0 1 と同様に非類似度を算出 してピークを検出する。 続く 3 3 0 5において第 2視差探索部 1 0 3巳は、 ステップ 3 3 0 2と同様に、 得られたピークが視差として採用すべき有効な 値か否かを判別する。
[0029] 第 2視差探索部 1 0 3巳は3 3 0 5を肯定判断する場合には、 距離画像 4 4の処理対象の画素ブロックにそのピーク値に対応する視差値を設定して出 力し、 図 5に示す処理を終了する。 第 2視差探索部 1 0 3巳は3 3 0 5を否 定判断する場合には、 距離画像 4 4の処理対象の画素ブロックに視差が算出 \¥02020/175062 10 卩(:171?2020/004334
できないことを示す特別な値、 たとえば 「0」 に設定して出力し、 図 5に示 す処理を終了する。
[0030] 上述した第 1の実施の形態によれば、 次の作用効果が得られる。
( 1 ) 演算装置 1は、 左カメラ 2で撮影して得られた画像である左画像 2 1 、 すなわち基準画像、 および右カメラ 3で撮影して得られた画像である右画 像 3 1、 すなわち参照画像を用いて、 画素ブロック単位で左画像 2 1 におけ る視差を算出して仮距離画像 4 1 を生成する第 1視差探索部 1 0 3 と、 仮 距離画像 4 1から視差の算出に失敗した無効領域を特定する視差無効判定部 1 0 5と、 仮距離画像 4 1 を用いて無効領域の視差の候補を含む探索条件 4 3を生成する条件生成部 1 0 6と、 左画像 2 1、 右画像 3 1、 および探索条 件 4 3を用いて、 無効領域の視差を画素ブロック単位で算出する第 2視差探 索部 1 0 3巳とを備える。 そのため視差が算出できなかった画素ブロックに ついて、 探索条件 4 3を加えることで非類似度の計算結果を用いて視差を算 出できる。 すなわち、 その画素ブロック自体の非類似度の計算結果を利用し ているので、 妥当な視差を算出できる。
[0031 ] ( 2 ) 第 2視差探索部 1 0 3巳は、 視差の候補から所定の範囲を探索範囲と して無効領域の視差を画素ブロック単位で算出する。 そのため探索条件 4 3 で制限された範囲で改めて探索を行うので、 非類似度のピークを正しく評価 できる。
[0032] ( 3 ) 条件生成部 1 0 6は、 無効領域に隣接する領域の視差を無効領域の視 差の候補とする。 距離は連続的に変化することが多いため、 無効領域からの 距離が最も近い隣接する領域の視差を候補とすることで、 算出する視差の精 度を向上させることができる。
[0033] ( 4 ) 左画像 2 1および右画像 3 1のいずれも、 鉛直方向および水平方向に 広がりのある 3次元空間を撮影して得られた画像である。 条件生成部 1 0 6 は、 無効領域に隣接する領域であって、 無効領域の水平方向に存在する領域 の視差を無効領域の視差の候補とする。 障害物が存在しなくても、 撮影画像 では鉛直方向の下から上に向かって、 地面までの距離は遠くなるが、 水平方 \¥0 2020/175062 1 1 卩(:171? 2020 /004334
向は障害物が存在しなければ距離は略一定である。 そのため水平方向に隣接 する領域の視差を候補とすることで、 算出する視差の精度を向上させること ができる。
[0034] (変形例 1)
車両 9には車両制御装置 4が搭載されなくてもよい。 この場合には、 車両 9には仮距離画像 4 1 を利用する何らかの装置が搭載されればよい。 たとえ ば仮距離画像 4 1 を車両 9の乗員に提示する表示装置が搭載されてもよいし 、 仮距離画像 4 1 を車両 9の外部に送信する無線通信装置が搭載されてもよ い。
[0035] (変形例 2)
第 1の実施の形態において、 説明した演算装置 1の機能構成は一例に過ぎ ない。 図 2に示したいくつかの機能構成を一体に構成されてもよいし、 図 2 では 1つの機能ブロック図で表した構成を 2以上の機能に分割してもよい。 特に、 動作が類似する第 1視差探索部 1 0 3 および第 2視差探索部 1 0 3 巳を一体に構成してもよい。 なお一体に構成するとは、 ハードウェア演算回 路やソフトウェアを重複して利用することを含む。
[0036] 図 6は、 変形例 2における演算装置 1の機能構成図である。 変形例 2では 演算装置 1は、 第 1視差探索部 1 0 3 および第 2視差探索部 1 0 3巳の代 わりに、 両者を一体に構成した第 3視差探索部 1 0 3(3を備える。 第 3視差 探索部 1 0 3(3は、 条件生成部 1 〇 6から探索条件 4 3が入力されたか否か により動作を変更する。 第 3視差探索部 1 0 3(3は、 条件生成部 1 0 6から 探索条件 4 3が入力されない場合には第 1視差探索部 1 0 3 として動作し 、 条件生成部 1 〇 6から探索条件 4 3が入力される場合には第 2視差探索部 1 0 3巳として動作する。
[0037] (変形例 3)
図 7は、 変形例 3において条件生成部 1 〇 6が参照する画素ブロックを示 す図である。 上述した第 1の実施の形態では、 条件生成部 1 0 6は、 無効領 域の周辺の 1つの領域のみを参照する具体例を説明した。 しかし条件生成部 \¥02020/175062 12 卩(:171?2020/004334
1 06は、 図 7 (匕) 〜 (¢0 に示すように複数の領域を参照して視差の候 補値を決定してもよい。
[0038] 図 7 (a) は画素ブロックの名称を説明する図である。 図 7 (3) は、 あ る無効領域 901 と、 無効領域 901 に隣接する画素ブロックを示す図であ り、 無効領域 901 に隣接する 8つの画素ブロックにアルファベッ ト 1文字 の巳〜 Iの名称を付している。 第 1の実施の形態では、 無効領域 901の右 隣の画素ブロックのみを参照したので、 図 7 (8) ではブロック のみを参 照することに相当する。
[0039] 本変形例では条件生成部 1 06は、 図 7 (匕) 〜 (¢0 に示すように無効 領域 901 に隣接する 2以上の領域を選択し、 選択した領域に格納される視 差の値を基準値としてもよい。 条件生成部 1 06は図 7 (b) に示すように 領域巳〜 Iの全ての領域の視差の値を基準値として採用してもよい。 計算コ ストに余裕がある場合に有用である。 また条件生成部 1 06は、 図 7 (〇) に示すように水平方向に並ぶ領域巳および領域 の視差の値を基準値として もよい。 水平方向の隣接する領域は近い視差となることを利用した方法であ り、 図 7 (b) に示す手法に比べて少ない計算コストで実施可能である。
[0040] さらに条件生成部 1 06は、 図 7 (¢1 ) に示すように無効領域の上下左右 の領域のみ、 すなわち領域<3、 巳、 、 1~1の視差の値のみを基準値として採 用してもよい。 図 7 ( ) に示す手法は、 図 7 (b) と図 7 (〇) の中間的 な計算コストで実現でき、 両者の中間的な効果が得られる。 次に図 7 (〇) に示す手法の具体例を説明する。
[0041] 図 8は、 条件生成部 1 06が無効領域 1 09に水平方向に隣接する画素ブ ロックの視差の値を基準値とする具体例を示す図であり、 第 1の実施の形態 における図 4に対応する。 図 8 (a) の左に示すように無効領域の右に隣接 する領域の視差値が 「1 00」 、 無効領域の左に隣接する領域の視差値が 「 1 80」 の場合に、 条件生成部 1 06は視差の候補値を 「1 00」 と 「1 8 0」 それぞれのプラスマイナス 20なので、 「80〜 1 20」 、 「1 60〜
200」 とする。 すなわちこの場合の探索条件 43は、 「領域 901の視差 \¥0 2020/175062 13 卩(:17 2020 /004334
値の候補が 8 0〜 1 2 0および 1 6 0〜 2 0 0」 であることを示す情報であ る。
[0042] この探索条件 4 3を受信した第 2視差探索部 1 0 3巳は、 基準画像の領域
9 0 1の視差を視差 8〇〜 1 2 0および視差 1 6 0〜 2 0 0の範囲で探索す る。 なお図 8 (匕) に示す例では視差 1 6 0〜 2 0 0には極小値のピークが 存在しないので、 第 2視差探索部 1 0 3巳の出力は第 1の実施の形態と同様 である。
[0043] (変形例 4)
条件生成部 1 0 6が参照する画素ブロックは、 無効領域に隣接するブロッ クに限定されない。 図 9は、 条件生成部 1 0 6が無効領域に隣接する画素ブ ロック以外を参照する例を示す図である。 図 9に示す例では、 中央に存在す る 3つの画素ブロック、 すなわち画素ブロック 6 0 1〜 6 0 3は無効領域で あり、 その左に存在する画素ブロック 6 0 5および画素ブロック 6 0 7、 そ の右に存在する画素ブロック 6 0 4および画素ブロック 6 0 6は無効領域で はない。
[0044] 無効領域である画素ブロック 6 0 1が処理対象である場合に、 条件生成部
1 〇 6は処理対象の画素ブロックに最も近く、 かつ無効領域ではない画素ブ ロックを参照する。 図 9に示す例では、 処理対象の画素ブロック 6 0 1 に隣 接する画素ブロック 6 0 2および画素ブロック 6 0 3のいずれも無効領域な ので、 次に近い画素ブロック 6 0 4および画素ブロック 6 0 5のいずれかを 参照する。
[0045] (変形例 5)
上述した第 1の実施の形態では第 2視差探索部 1 0 3巳は、 探索する領域 は狭まっているものの第 1視差探索部 1 0 3 と同様に探索を行った。 しか し第 2視差探索部 1 0 3巳は過去の計算経過を利用して計算を簡略化し、 選 択を行うだけでもよい。 この場合には第 2視差探索部 1 0 3巳は、 第 1視差 探索部 1 0 3 から計算経過を取得する。
[0046] 図 1 0は、 変形例 5における演算装置 1の機能構成図である。 図 1 0に示 \¥02020/175062 14 卩(:171?2020/004334
す機能構成図では、 図 2に比べて第 1視差探索部 1 0 3 から第 2視差探索 部 1 0 3巳へ算出経過 4 5が出力されている点が異なる。 本変形例では、 第 1視差探索部 1 〇 3 の動作および第 2視差探索部 1 0 3巳の動作が次のよ うに第 1の実施の形態と異なる。
[0047] すなわち第 1視差探索部 1 0 3八は、 視差が決定できない画素ブロックに ついて、 複数の視差の候補、 すなわち非類似度が極小値を有する視差の値を 出力する。 たとえば図 3 (〇) に示す例では第 1視差探索部 1 0 3八は、 「 左から 4 0 0画素目の無効領域 9 0 1は視差候補が一 1 8 0と + 1 1 5であ る」 旨の情報を算出経過 4 5として出力する。
[0048] 第 2視差探索部 1 0 3巳は、 探索条件 4 3と算出経過 4 5とを用いて視差 を決定する。 具体的には第 2視差探索部 1 0 3巳は、 算出経過 4 5から探索 条件 4 3に含まれる視差を選択する。 たとえば算出経過 4 5が前述の情報で あり、 探索条件 4 3が 「領域 9 0 1の視差値の候補が 8 0〜 1 2 0」 の場合 には、 第 2視差探索部 1 0 3巳は領域 9 0 1の視差として 「一 1 8 0」 と 「 + 1 1 5」 の 2つから 「8 0〜 1 2 0」 の範囲に含まれる 「+ 1 1 5」 を選 択する。
[0049] 図 1 1は、 変形例 5における演算装置 1の動作を表すフローチヤートであ る。 図 1 1は、 第 1の実施の形態における図 5に対応する。 第 1の実施の形 態との違いは、 ステップ3 3 0 4の代わりにステップ3 3 0 4八を実行する 点である。 ステップ 3 3 0 4八では第 2視差探索部 1 0 3巳は、 前述のよう に探索条件 4 3と算出経過 4 5とを用いて視差を決定する。 ただし第 2視差 探索部 1 0 3巳は、 算出経過 4 5のいずれも探索条件 4 3に含まれる視差の 範囲に該当しない場合は、 視差が算出できないことを示す特別な値、 たとえ ば 「0」 に決定する。 ステップ3 3 0 4八以外の処理は第 1の実施の形態と 同様なので説明を省略する。
[0050] 本変形例によれば、 次の作用効果が得られる。
( 5 ) 第 1視差探索部 1 0 3 は、 無効領域の視差の候補を算出経過として 第 2視差探索部 1 0 3巳に出力する。 第 2視差探索部 1 0 3巳は、 探索条件 \¥02020/175062 15 卩(:171?2020/004334
4 3に含まれる視差の候補を用いて算出経過 4 5から 1つの視差の候補を選 択して無効領域の視差とする。 そのため第 2視差探索部 1 0 3巳は改めて非 類似度を算出する必要がなく、 第 2視差探索部 1 0 3巳の演算量を減らすこ とができる。
[0051 ] (変形例 6)
第 1の実施の形態の変形例 5において、 第 1の画素ブロックのサイズが 1 画素 X 1画素よりも大きい場合に、 より小さい画素ブロックを第 2の画素ブ ロックとして定義する。 たとえば第 1の画素ブロックが 4画素 X 4画素、 第 2の画素ブロックが 1画素 X 1画素である。 この場合に演算装置 1はさらに 、 第 1の画素ブロックに含まれる第 2の画素ブロックの視差を、 第 1の画素 ブロックの視差を利用して算出してもよい。 本変形例において変形例 5と重 複する構成、 特に第 2視差探索部 1 0 3巳が算出経過 4 5を用いて視差の値 を選択する動作の説明は省略する。 ただし本実施の形態では、 第 2視差探索 部 1 0 3巳が算出経過 4 5を用いて選択した無効領域の視差の値を 「仮視差 」 とも呼ぶ。
[0052] 図 1 2は、 変形例 6における演算装置 1の機能構成図である。 変形例 6で は、 演算装置 1は第 4視差探索部 1 0 3 0をさらに備える。 本実施の形態で は、 第 2視差探索部 1 0 3巳は距離画像 4 4を車両制御装置 4ではなく第 4 視差探索部 1 〇 3 0に出力する点が変形例 5と異なる。 第 4視差探索部 1 0 3 0は、 第 2の画素ブロック単位の距離情報が格納された詳細距離画像 4 6 を生成して車両制御装置 4に出力する。
[0053] 図 1 3は、 変形例 6における第 4視差探索部 1 0 3〇の動作を説明する図 である。 図 1 3の左側に示す八〜丨の 9個のブロックは、 それぞれが第 1の 画素ブロックのサイズ、 たとえば 4画素 X 4画素である。 図 1 3の右側に示 す 3〇 0 ~ 3 3 3の 1 6個のブロックは、 それぞれが第 2の画素ブロックの サイズ、 たとえば 1画素 X 1画素である。 前述のとおり、 距離画像 4 4は第 1の画素ブロック単位で距離情報が格納され、 詳細距離画像 4 6は第 2の画 素ブロック単位で距離情報が格納される。 そのため図 1 3の左右のそれぞれ \¥02020/175062 16 卩(:171?2020/004334
は、 距離画像 4 4と詳細距離画像 4 6の一部に相当するともいえる。 第 4視 差探索部 1 0 3 0は、 距離画像 4 4を構成するすべての画素ブロックについ て、 図 1 3に示すように詳細な距離情報を算出する。
[0054] 本変形例では、 図 1 3の左に示す八のブロックと、 図 1 3の右に示す 8 0
0〜 3 3 3の各ブロックとの関係を、 上位 ·下位の関係と呼ぶ。 ここでは、 領域が広いほうが上位とする。 たとえばブロック 8 0 0の上位ブロックがブ ロック八であり、 ブロック八の下位ブロックはブロック 3〇 0 ~ 3 3 3であ る。
[0055] 図 1 3の右側に示す 8 0 0〜8 3 3は、 八のブロックの詳細を示すもので ある。 第 4視差探索部 1 0 3 0は、 3 0 0 ~ 3 3 3のそれぞれについて、 第 1視差探索部 1 0 3 と同様に非類似度を算出し、 参照画像における対応す る領域を特定して視差を算出する。 ただし第 4視差探索部 1 0 3 0は、 参照 画像から 3 0 0〜3 3 3に対応する領域を探索する際に、 上位ブロックであ る八の視差を基準として所定の範囲のみを探索する。 たとえばブロック八の 視差が 「+ 1 1 5」 の場合にプラスマイナス 2 0画素の範囲として 「+ 9 5 〜 + 1 3 5」 の範囲のみを探索する。 ただし第 4視差探索部 1 0 3 0は、 上 位ブロックの視差が算出されていない場合には、 対応する下位ブロックの視 差は算出不能としてもよいし、 範囲を特定することなくエピポーラ線上の全 点を探索してもよい。
[0056] 第 2視差探索部 1 0 3巳と第 4視差探索部 1 0 3〇の動作を比較すると、 対象とするブロックの大きさおよび探索範囲を制限する情報の出所が異なる 。 対象とするブロックの大きさは、 第 2視差探索部 1 0 3巳は第 1の画素ブ ロック単位であり、 第 4視差探索部 1 0 3 0は第 2の画素ブロック単位であ る。 探索範囲を制限する情報の出所は、 第 2視差探索部 1 0 3巳は探索条件 4 3であり、 第 4視差探索部 1 0 3 0は対応する上位ブロックの視差である
[0057] 本変形例によれば、 次の作用効果が得られる。
( 6 ) 第 2のブロックのサイズは第 1のブロックのサイズよりも小さい。 第 \¥02020/175062 17 卩(:171?2020/004334
1視差探索部 1 0 3 は、 無効領域の視差の候補である候補値を算出経過 4 5として第 2視差探索部 1 0 3巳に出力する。 第 2視差探索部 1 0 3巳は、 視差の候補を用いて候補値から 1つを選択して仮視差とし、 第 4視差探索部 1 0 3 0は、 無効領域に含まれる第 2のブロックの視差を仮視差から所定の 範囲を探索範囲として算出する。 そのため演算装置 1 0 1は、 第 1のブロッ クのサイズで視差が得られなかった場合でも、 先に周辺の視差情報を用いて 第 2視差探索部 1 0 3巳が仮視差を算出し、 その仮視差を用いて第 2のブロ ックの視差を算出できる。
[0058] なお、 本変形例では第 2視差探索部 1 0 3巳は算出経過 4 5を用いて仮視 差を算出したが、 第 1の実施の形態のように第 2視差探索部 1 0 3巳は算出 経過 4 5を用いることなく、 無効領域の非類似度を改めて算出してもよい。
[0059] なお、 本変形例では第 2視差探索部 1 0 3巳と第 4視差探索部 1 0 3 0と を異なる構成として説明したが、 両者が一体に構成されてもよい。
[0060] (変形例 7)
上述した第 1の実施の形態では、 条件生成部 1 0 6が視差の候補の基準値 に範囲を持たせた情報を探索条件 4 3に含ませた。 しかし探索条件 4 3には 視差の候補の基準値を含めるが範囲の情報は含ませず、 第 2視差探索部 1 0 3巳が基準値に基づき範囲を定めてもよい。 たとえば第 1の実施の形態にお ける探索条件 4 3は、 たとえば 「領域 9 0 1の視差値の候補が 8 0〜 1 2 0 」 であることを示す情報であった。 しかし本変形例では探索条件 4 3を、 「 領域 9 0 1の視差値の基準値が 1 0 0」 であることを示す情報とし、 第 2視 差探索部 1 〇 3巳が 「 1 0 0」 を中心にプラスマイナス 2 0に設定して 「8 〇〜 1 2 0」 の範囲を定めてもよい。
[0061 ] (変形例 8)
第 1視差探索部 1 〇 3 および第 2視差探索部 1 0 3巳は、 有効な視差を 算出できなか否かを、 仮距離画像 4 1や距離画像 4 4とは独立して生成して 出力してもよい。 また、 仮距離画像 4 1、 無効領域を示す情報 4 2、 探索条 件 4 3、 および距離画像 4 4の少なくとも 1つは、 計算の過程で演算装置 1 \¥0 2020/175062 18 卩(:171? 2020 /004334
の外部に存在する不図示の記憶装置に保存されてもよい。
[0062] 一第 2の実施の形態一
図 1 4〜図 1 5を参照して、 本発明に係る演算装置の第 2の実施の形態を 説明する。 以下の説明では、 第 1の実施の形態と同じ構成要素には同じ符号 を付して相違点を主に説明する。 特に説明しない点については、 第 1の実施 の形態と同じである。 本実施の形態では、 主に、 距離画像 4 4を経ることな く詳細距離画像 4 6を作成する第 5視差探索部を備える点で、 第 1の実施の 形態の変形例 6と異なる。 また本実施の形態では変形例 6と同様に、 第 1の ブロックのサイズは 1画素 X 1画素よりも大きいとし、 第 2のブロックサイ ズを第 1のブロックサイズよりも小さいサイズと定義する。
[0063] 第 2の実施の形態における演算装置 1 八のハードウエア構成は第 1の実施 の形態における演算装置 1のハードウエア構成と同一のため説明を省略する
[0064] 図 1 4は、 第 2の実施の形態における演算装置 1 の機能構成図である。
第 1の実施の形態における図 2との違いは、 第 2視差探索部 1 0 3巳の代わ りに第 5視差探索部 1 0 3巳を備える点である。 第 5視差探索部 1 0 3巳の 機能は、 第 2視差探索部 1 0 3巳の機能と変形例 6における第 4視差探索部 1 0 3 0の機能とを組み合わせたものに概ね相当する。 第 5視差探索部 1 0 3巳の動作の詳細は後述する。
[0065] 本実施の形態では、 第 1視差探索部 1 0 3 は、 算出した仮距離画像 4 1 を第 5視差探索部 1 0 3巳にも出力する。 第 5視差探索部 1 0 3巳には、 左 画像 2 1、 右画像 3 1、 仮距離画像 4 1、 および探索条件 4 3が入力される 。 第 5視差探索部 1 0 3日は、 車両制御装置 4に詳細距離画像 4 6を出力す る。 視差無効判定部 1 〇 5および条件生成部 1 0 6の動作は第 1の実施の形 態と同様である。
[0066] 第 5視差探索部 1 0 3巳は、 仮距離画像 4 1 を構成する第 1の画素ブロッ クごとに、 より解像度の高い距離情報、 すなわち複数の第 2の画素ブロック の視差を算出する。 このとき第 5視差探索部 1 0 3巳は、 処理対象とする第 \¥0 2020/175062 19 卩(:171? 2020 /004334
1の画素ブロックに視差が設定されている場合はその視差の値を基準として 第 2の画素ブロックの視差を探索する範囲を決定する。 また第 5視差探索部 1 0 3巳は、 処理対象とする第 1の画素ブロックに視差が設定されていない 場合は、 換言すると処理対象の第 1の画素ブロックが無効領域である場合は 、 探索条件 4 3に設定されている範囲を探索する。
[0067] (演算装置 1 の動作)
図 1 5は、 第 2の実施の形態における演算装置 1 の動作を示すフローチ ヤートである。 以下に説明する演算装置 1 八の動作のうち、 ステップ 3 3 0 1 ~ 3 3 0 7までが第 1の画素ブロックごとの処理であり、 ステップ 3 3 5 1以降は第 2の画素ブロックごとの処理である。 以下に説明するフローチヤ -卜では、 記載を簡潔にするために繰り返し処理の記号を省略しているが、 実際には基準画像を構成する全ての第 1の画素ブロックについてステップ 3 3 0 1〜3 3 0 7の処理が実行され、 仮距離画像 4 1 を構成する全ての第 2 の画素ブロックについてステップ 3 3 5 1以降の処理が実行される。 すなわ ちステ
Figure imgf000021_0001
における 「処理対象」 は第 1の画素ブロック ごとであり、 ステップ 3 3 5 1以降における 「処理対象」 は第 2の画素ブロ ックごとである。
[0068] まずステップ3 3 0 1 において第 1視差探索部 1 0 3八は、 基準画像に含 まれる第 1の画素ブロックを処理対象として、 水平方向に並ぶ参照画像の各 ブロックの非類似度を算出し、 その極小値を示すピークを検出する。 続く 3 3 0 2において第 1視差探索部 1 0 3八は、 得られたピークが視差として採 用すべき有効な値か否かを判別する。 第 1視差探索部 1 0 3 は、 有効な値 であると判定をした場合は、 そのピーク値に対応する視差値を仮距離画像 4 1の処理対象の画素ブロックの値に設定して出力し (3 3 0 7) 、 ステップ 3 3 5 1 に進む。
[0069] ステップ 3 3 0 2において第 1視差探索部 1 0 3八が無効と判断をすると (3 3 0 2 : N 0) 、 仮距離画像 4 1では処理対象の画素ブロックには視差 が算出できないことを示す特別な値、 たとえば 「0」 に設定して出力する。 \¥02020/175062 20 卩(:171?2020/004334
そのため視差無効判定部 1 0 5により処理対象の画素ブロックが検出され、 無効領域を示す情報 4 2にその処理対象の画素ブロックを特定する情報が記 載されて条件生成部 1 0 6に出力される。 続くステップ 3 3 0 3では条件生 成部 1 0 6が、 仮距離画像 4 1 における無効領域、 すなわち処理対象の画素 ブロックに隣接する画素ブロックの視差を読み出す。 そして条件生成部 1 0 6は、 その視差の値に所定の幅、 たとえばプラスマイナス 2 0画素を加えて 視差の候補、 すなわち探索範囲として探索条件 4 3を決定し、 決定した探索 条件 4 3を第 5視差探索部 1 0 3巳に出力してステップ 3 3 5 1 に進む。
[0070] ステップ 3 3 5 1では第 5視差探索部 1 0 3巳は、 基準画像に含まれる第
2の画素ブロックを処理対象として非類似度を算出する。 ステップ 3 3 5 1 の処理は 3 3 0 1 と類似しているが、 視差の候補値を用いる点が異なる。 第 5視差探索部 1 0 3日が用いる視差の候補値について説明する。 非類似度の 算出に用いる視差の候補値は、 原則として仮距離画像 4 1 における処理対象 の画素ブロックの上位の画素ブロックに設定されている視差の値を基準とす る。 たとえば仮距離画像 4 1 において、 処理対象の画素ブロックの上位の画 素ブロックの視差が 「1 0 0」 に設定されていた場合は、 「1 0 0」 を基準 値として、 基準値を中心とした所定の範囲、 たとえばプラスマイナス 2 0画 素として 「8 0 ~ 1 2 0」 を視差の候補値とする。
[0071 ] ただし第 5視差探索部 1 0 3巳は、 仮距離画像 4 1 における処理対象の画 素ブロックの上位の画素ブロックに視差が設定されていない場合には、 探索 条件 4 3に記載された値を視差の候補値とする。 上位の画素ブロックに視差 が設定されていない場合とは、 たとえば視差が算出できないことを示す特別 な値、 たとえば 「0」 が設定されている場合である。 第 5視差探索部 1 0 3 巳は視差の候補値だけを対象として非類似度を算出すればよいので、 計算量 を減らしつつ視差の算出精度を向上できる。
[0072] 続くステップ 3 3 5 2では第 5視差探索部 1 0 3巳は、 ステップ 3 3 0 2 と同様に得られたピークが視差として採用すべき有効な値か否かを判別する 。 ただしステップ 3 3 0 2とステップ 3 3 5 2では処理対象の画素ブロック \¥0 2020/175062 21 卩(:171? 2020 /004334
の大きさが異なる。 また第 5視差探索部 1 0 3巳はステップ 3 3 5 2を肯定 判断する場合はステップ 3 3 5 4に進み、 ステップ 3 3 5 2を否定判断する 場合はステップ3 3 5 3に進む。
[0073] ステップ 3 3 5 3では第 5視差探索部 1 0 3巳は、 詳細距離画像 4 6にお ける処理対象に対応する領域の値を、 視差が算出できないことを示す特別な 値、 たとえば 「0」 に設定して出力し図# 1 6 #に示す処理を終了する。 ス テップ3 3 5 4では第 5視差探索部 1 0 3巳は、 詳細距離画像 4 6における 処理対象に対応する領域の値を、 有効であると判断した視差の値に設定して 出力し図# 1 6 #に示す処理を終了する。
[0074] (変形例 6との比較)
第 2の実施の形態と同様に詳細距離画像 4 6を出力する、 第 1の実施の形 態の変形例 6の動作と、 本実施の形態の動作を比較して説明する。 変形例 6 では、 第 1の画素ブロックの視差が算出できなかった場合に、 第 2視差探索 部 1 0 3巳が周辺の画素ブロックの視差を利用して第 1の画素ブロックの視 差を改めて算出し、 そのうえで第 4視差探索部 1 0 3 0が第 2の画素ブロッ クの視差を算出した。 その一方で本実施の形態では、 第 1の画素ブロックの 視差が算出できなかった場合は、 第 5視差探索部 1 0 3巳が処理対象である 第 2の画素ブロックの上位の画素ブロックに隣接する、 他の第 1の画素ブロ ックの視差の値を利用して第 2の画素ブロックの視差を算出する。
[0075] 変形例 6と第 2の実施の形態は、 処理対象の周辺に存在する画素ブロック の視差の値を利用して処理対象の画素ブロックにおける視差を算出する点で 共通する。 またいずれの手法も、 計算量を削減しつつ視差の精度を高める点 も共通する。
[0076] 上述した第 2の実施の形態によれば、 次の作用効果が得られる。
( 7 ) 第 2のブロックのサイズは第 1のブロックのサイズよりも小さい。 第 5視差探索部 1 0 3巳は、 無効領域以外における第 2のブロック単位の視 差は、 算出対象である第 2のブロックを含む第 1のブロックの視差から所定 の範囲を探索範囲として視差を算出する。 そのため演算装置 1 は、 基準画 \¥0 2020/175062 22 卩(:171? 2020 /004334
像の全体を対象とした詳細距離画像 4 6を作成できる。
[0077] 一第 3の実施の形態一
図 1 6〜図 1 7を参照して、 本発明に係る演算装置の第 3の実施の形態を 説明する。 以下の説明では、 第の実施の形態と同じ構成要素には同じ符号を 付して相違点を主に説明する。 特に説明しない点については、 第 1の実施の 形態と同じである。 本実施の形態では、 主に、 車両の傾きを考慮する点で、 第 1の実施の形態と異なる。
[0078] 図 1 6は第 3の実施の形態における車両 9巳のハードウエア構成図である 。 図巳 X 3は、 第 1の実施の形態における図 1 に比べて、 車両情報取得装置 5が追加されている点が異なる。 車両情報取得装置 5は、 車両情報 4 7を不 図示のセンサにより取得して演算装置 1 に出力する。 車両情報 4 7とは、 少 なくとも車両 9巳の傾きを算出可能な情報である。 車両情報 4 7はたとえば 、 車両 9が現在走行している路面の湾曲、 傾斜、 カーブの曲率、 およびタイ ヤの摩耗に関する情報である。 ただし車両情報 4 7に、 車両 9巳の傾きを測 定した不図示の傾斜計やジャイロセンサの出力が含まれてもよい。
[0079] 演算装置 1の機能構成、 および各機能構成の動作は条件生成部 1 0 6の動 作を除いて第 1の実施の形態と同様である。 条件生成部 1 0 6は、 車両 9巳 の傾きにあわせて参照する画素ブロックを変更する。 鉛直方向の位置の変化 に対する奥行きの変化の割合に比べて、 水平方向の位置変化に対する奥行き の変化のほうが緩やかなので、 車体の傾きにあわせて参照する画素ブロック を変更する。
[0080] 図 1 7は、 本実施の形態において条件生成部 1 0 6巳が参照する画素ブロ ックを示す図である。
[0081 ] 図 1 7 ( 3 ) は、 路面の湾曲や傾斜や力ーブ、 タイヤの磨耗などによって 車両 9巳が路面に対して傾斜していた場合に、 参照する画素ブロックを左右 非対称に選択する例を示す図である。 図 1 7 ( 3 ) は、 車両 9巳が進行方向 に向かって時計回りに傾斜していた場合、 すなわち左カメラ 2や右カメラ 3 により撮影された画像が反時計回りに回転していた場合に対応する。 この場 \¥0 2020/175062 23 卩(:17 2020 /004334
合は、 視差が無効と判定されたブロック 5 0 1 に対して視差を再探索するた めに、 ブロック 5 0 1の画像上の水平方向に隣接するブロック 5 0 5とブロ ック 5 0 6に加えて、 ブロック 5 0 4とブロック 5 0 7の視差の値を用いる
[0082] 図 1 7 (匕) は図 1 7 ( a ) とは逆側に車両 9巳が傾斜した場合の例を示 す図である。 この場合は回転方向が逆なので、 参照する画素ブロックも逆、 すなわちブロック 5 0 5とブロック 5 0 6に加えて、 ブロック 5 0 2とブロ ック 5 0 9を選択することになる。
[0083] 上述した第 3の実施の形態によれば、 次の作用効果が得られる。
( 8 ) 演算装置 1 (3、 左カメラ 2、 および右カメラ 3は、 車両 9巳に搭載さ れる。 条件生成部 1 0 6は、 車両情報 4 7に基づき水平方向を特定する。 そ のため、 車両 9巳がタイヤの摩耗や道路の傾斜などで傾いている際にも、 無 効領域の視差の探索に、 鉛直方向よりも差異が少ない水平方向に隣接する画 素ブロックの視差の値を候補の基準値に用いることができる。
[0084] 上述した各実施の形態および変形例において、 プログラムは不図示の[¾〇 IV!に格納されるとしたが、 プログラムは演算装置 1の不図示の不揮発性メモ リに格納されていてもよい。 また、 演算装置 1が不図示の入出カインタフェ —スを備え、 必要なときに入出カインタフェースと演算装置 1が利用可能な 媒体を介して、 他の装置からプログラムが読み込まれてもよい。 ここで媒体 とは、 たとえば入出カインタフェースに着脱可能な記憶媒体、 または通信媒 体、 すなわち有線、 無線、 光などのネッ トワーク、 または当該ネッ トワーク を伝搬する搬送波やディジタル信号、 を指す。 また、 プログラムにより実現 される機能の一部または全部がハードウエア回路や 〇八により実現され てもよい。
[0085] 上述した各実施の形態および変形例は、 それぞれ組み合わせてもよい。 特 に第 2の実施の形態と、 変形例 1〜 4を組み合わせることが好適である。 上 記では、 種々の実施の形態および変形例を説明したが、 本発明はこれらの内 容に限定されるものではない。 本発明の技術的思想の範囲内で考えられるそ \¥02020/175062 24 卩(:171? 2020 /004334
の他の態様も本発明の範囲内に含まれる。
[0086] 次の優先権基礎出願の開示内容は引用文としてここに組み込まれる。
日本国特許出願 201 9-3423 1 (201 9年 2月 27日出願) 符号の説明
[0087] 1 演算装置
2 左カメラ
3 右カメラ
4 車両制御装置
9、 9巳 車両
1 1 〇 II
2 1 左画像
3 1 右画像
4 1 仮距離画像
42 情報
44 距離画像
45 算出経過
46 詳細距離画像
47 車両情報
1 03 第 1視差探索部
1 03巳 第 2視差探索部
1 03(3 第 3視差探索部
1 030 第 4視差探索部
1 03巳 第 5視差探索部
1 〇 5 視差無効判定部
1 06、 1 06巳 条件生成部
1 06巳 条件生成部

Claims

\¥02020/175062 25 卩(:171?2020/004334 請求の範囲
[請求項 1 ] 第 1のカメラで撮影して得られた画像である基準画像、 および第 2 のカメラで撮影して得られた画像である参照画像を用いて、 第 1のブ ロック単位で前記基準画像における視差を算出して仮距離画像を生成 する第 1視差探索部と、
前記仮距離画像から視差の算出に失敗した無効領域を特定する視差 無効判定部と、
前記仮距離画像を用いて前記無効領域の視差の候補を含む探索条件 を生成する条件生成部と、
前記基準画像、 前記参照画像、 および前記探索条件を用いて、 前記 無効領域の視差を前記第 1のブロック以下のサイズである第 2のブロ ック単位で算出する第 2視差探索部とを備える演算装置。
[請求項 2] 請求項 1 に記載の演算装置において、
前記第 2視差探索部は、 前記視差の候補から所定の範囲を探索範囲 として前記無効領域の視差を第 2のブロック単位で探索する演算装置
[請求項 3] 請求項 1 に記載の演算装置において、
前記第 1のブロックと前記第 2のブロックのサイズは同一であり、 前記第 1視差探索部は、 前記無効領域の視差の候補である候補値を 前記第 2視差探索部に出力し、
前記第 2視差探索部は、 前記視差の候補を用いて前記候補値から 1 つを選択して前記無効領域の視差とする演算装置。
[請求項 4] 請求項 1 に記載の演算装置において、
前記第 2のブロックのサイズは前記第 1のブロックのサイズよりも 小さく、
前記第 1視差探索部は、 前記無効領域の視差の候補である候補値を 前記第 2視差探索部に出力し、
前記第 2視差探索部は、 前記視差の候補を用いて前記候補値から 1 \¥02020/175062 26 卩(:171?2020/004334
つを選択して仮視差とし、 前記無効領域に含まれる前記第 2のブロッ クの視差を前記仮視差から所定の範囲を探索範囲として算出する演算 装置。
[請求項 5] 請求項 1 に記載の演算装置において、
前記第 1のブロックと前記第 2のブロックのサイズは同一である演 算装置。
[請求項 6] 請求項 2に記載の演算装置において、
前記第 2のブロックのサイズは前記第 1のブロックのサイズよりも 小さく、
前記第 2視差探索部は、 前記無効領域以外における前記第 2のブロ ック単位の視差は、 算出対象である前記第 2のブロックを含む前記第 1のブロックの視差から所定の範囲を探索範囲として視差を算出する 演算装置。
[請求項 7] 請求項 1 に記載の演算装置において、
前記条件生成部は、 前記無効領域に隣接する領域の視差を前記無効 領域の視差の候補とする演算装置。
[請求項 8] 請求項 1 に記載の演算装置において、
前記基準画像および前記参照画像のいずれも、 鉛直方向および水平 方向に広がりのある 3次元空間を撮影して得られた画像であり、 前記条件生成部は、 前記無効領域に隣接する領域であって、 前記無 効領域の水平方向に存在する領域の視差を前記無効領域の視差の候補 とする演算装置。
[請求項 9] 請求項 8に記載の演算装置において、
前記演算装置、 前記第 1のカメラ、 前記第 2のカメラは車両に搭載 され、
前記条件生成部は、 前記車両の車両情報に基づき水平方向を特定す る演算装置。
[請求項 10] 第 1のカメラで撮影して得られた画像である基準画像、 および第 2 \¥02020/175062 27 卩(:171?2020/004334
のカメラで撮影して得られた画像である参照画像が入力される演算装 置が実行する視差算出方法であって、 前記演算装置が、 前記基準画像および前記参照画像を用いて、 第 1のブロック単位で 前記基準画像における視差を算出して仮距離画像を生成することと、 前記仮距離画像から視差の算出に失敗した無効領域を特定すること と、
前記仮距離画像を用いて前記無効領域の視差の候補を含む探索条件 を生成することと、
前記基準画像、 前記参照画像、 および前記探索条件を用いて、 前記 無効領域の視差を前記第 1のブロック以下のサイズである第 2のブロ ック単位で算出することとを含む視差算出方法。
PCT/JP2020/004334 2019-02-27 2020-02-05 演算装置、視差算出方法 WO2020175062A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP20762283.8A EP3933340B1 (en) 2019-02-27 2020-02-05 Arithmetic unit and parallax calculation method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-034231 2019-02-27
JP2019034231A JP7118020B2 (ja) 2019-02-27 2019-02-27 演算装置、視差算出方法

Publications (1)

Publication Number Publication Date
WO2020175062A1 true WO2020175062A1 (ja) 2020-09-03

Family

ID=72239037

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/004334 WO2020175062A1 (ja) 2019-02-27 2020-02-05 演算装置、視差算出方法

Country Status (3)

Country Link
EP (1) EP3933340B1 (ja)
JP (1) JP7118020B2 (ja)
WO (1) WO2020175062A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114764824A (zh) * 2020-12-30 2022-07-19 安霸国际有限合伙企业 使用导引节点的视差图构建

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023166832A (ja) * 2022-05-10 2023-11-22 日立Astemo株式会社 画像処理装置及び画像処理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007304743A (ja) * 2006-05-10 2007-11-22 National Institute Of Advanced Industrial & Technology 視差補間処理方法および処理装置
JP2017054481A (ja) * 2015-07-02 2017-03-16 株式会社リコー 視差画像生成装置、視差画像生成方法及び視差画像生成プログラム、物体認識装置、機器制御システム
JP2018151999A (ja) * 2017-03-15 2018-09-27 日立オートモティブシステムズ株式会社 物体距離検出装置
JP2019034231A (ja) 2018-12-06 2019-03-07 株式会社ユニバーサルエンターテインメント 遊技機

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6121776B2 (ja) * 2013-03-29 2017-04-26 ソニー株式会社 画像処理装置及び画像処理方法
JP6589313B2 (ja) * 2014-04-11 2019-10-16 株式会社リコー 視差値導出装置、機器制御システム、移動体、ロボット、視差値導出方法、およびプログラム
TWI549477B (zh) * 2014-04-17 2016-09-11 聚晶半導體股份有限公司 產生深度資訊的方法與裝置
JP6565266B2 (ja) * 2015-03-02 2019-08-28 株式会社リコー 情報処理装置、撮像装置、移動体制御システム、情報処理方法、およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007304743A (ja) * 2006-05-10 2007-11-22 National Institute Of Advanced Industrial & Technology 視差補間処理方法および処理装置
JP2017054481A (ja) * 2015-07-02 2017-03-16 株式会社リコー 視差画像生成装置、視差画像生成方法及び視差画像生成プログラム、物体認識装置、機器制御システム
JP2018151999A (ja) * 2017-03-15 2018-09-27 日立オートモティブシステムズ株式会社 物体距離検出装置
JP2019034231A (ja) 2018-12-06 2019-03-07 株式会社ユニバーサルエンターテインメント 遊技機

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3933340A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114764824A (zh) * 2020-12-30 2022-07-19 安霸国际有限合伙企业 使用导引节点的视差图构建

Also Published As

Publication number Publication date
JP2020140344A (ja) 2020-09-03
EP3933340A4 (en) 2022-11-02
EP3933340B1 (en) 2024-01-03
EP3933340A1 (en) 2022-01-05
JP7118020B2 (ja) 2022-08-15

Similar Documents

Publication Publication Date Title
KR102675523B1 (ko) 차로를 결정하는 방법 및 장치
JP6274557B2 (ja) 移動面情報検出装置、及びこれを用いた移動体機器制御システム並びに移動面情報検出用プログラム
JP5276637B2 (ja) 車線推定装置
US7623700B2 (en) Stereoscopic image processing apparatus and the method of processing stereoscopic images
JP2017100705A (ja) ステレオカメラセンサを用いた車両用の予測的サスペンション制御
JP7077910B2 (ja) 区画線検出装置及び区画線検出方法
US10116918B2 (en) Disparity image generating device, disparity image generating method, and image
WO2020175062A1 (ja) 演算装置、視差算出方法
US20190152487A1 (en) Road surface estimation device, vehicle control device, and road surface estimation method
US11062153B2 (en) Apparatus and method for converting image
US9813694B2 (en) Disparity value deriving device, equipment control system, movable apparatus, robot, and disparity value deriving method
WO2019031137A1 (ja) 路側物検出装置、路側物検出方法及び路側物検出システム
JP5421819B2 (ja) 車線認識装置
JPWO2016063545A1 (ja) ステレオカメラ装置及びステレオカメラ装置を備える車両
JP3956817B2 (ja) 変位データ抽出方法及び物体検出装置
WO2020175063A1 (ja) 演算装置、視差算出方法
WO2022059289A1 (ja) 車両姿勢推定システムおよび車両姿勢推定方法
JP6747176B2 (ja) 画像処理装置、撮影装置、プログラム、機器制御システム及び機器
JPH1153551A (ja) ライン検出装置
JP7291594B2 (ja) 画像処理装置
JP4398216B2 (ja) 情報表示装置および情報表示方法
WO2020036039A1 (ja) ステレオカメラ装置
WO2023218844A1 (ja) 画像処理装置及び画像処理方法
JPH11232466A (ja) 道路形状認識装置
JP5712494B2 (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: 20762283

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020762283

Country of ref document: EP

Effective date: 20210927