WO2014171052A1 - 画像処理方法、画像処理装置、撮像装置および画像処理プログラム - Google Patents
画像処理方法、画像処理装置、撮像装置および画像処理プログラム Download PDFInfo
- Publication number
- WO2014171052A1 WO2014171052A1 PCT/JP2014/001158 JP2014001158W WO2014171052A1 WO 2014171052 A1 WO2014171052 A1 WO 2014171052A1 JP 2014001158 W JP2014001158 W JP 2014001158W WO 2014171052 A1 WO2014171052 A1 WO 2014171052A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- distance
- captured image
- image processing
- length
- calculated
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 66
- 238000003672 processing method Methods 0.000 title claims abstract description 38
- 238000003384 imaging method Methods 0.000 claims abstract description 71
- 238000012937 correction Methods 0.000 claims description 92
- 238000004364 calculation method Methods 0.000 claims description 45
- 238000005259 measurement Methods 0.000 claims description 29
- 238000001514 detection method Methods 0.000 claims description 28
- 230000003287 optical effect Effects 0.000 claims description 26
- 230000004075 alteration Effects 0.000 claims description 14
- 238000000034 method Methods 0.000 description 209
- 230000008569 process Effects 0.000 description 50
- 238000010586 diagram Methods 0.000 description 22
- 230000008859 change Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 239000000284 extract Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101100096895 Mus musculus Sult2a2 gene Proteins 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 101150102700 pth2 gene Proteins 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C3/00—Measuring distances in line of sight; Optical rangefinders
- G01C3/02—Details
- G01C3/06—Use of electric means to obtain final indication
- G01C3/08—Use of electric radiation detectors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30236—Traffic on road, railway or crossing
Definitions
- the present invention relates to a technique for measuring a distance from a captured image.
- a technique has been proposed in which the distance between the host vehicle and the preceding vehicle is detected from an image of a camera attached to the host vehicle (see Patent Document 1).
- a distance to an object is calculated from an image of one camera for lane detection based on the focal length of the camera and the vertical coordinates of the distance measurement object (target object) in the image.
- the shape of the road surface is estimated, the distance is corrected based on the estimated shape, and the actual distance is calculated.
- the contact point method if an error occurs in the estimation of the road surface shape, the error in the distance to the object becomes large. End up. In particular, when the object is at a long distance, the error becomes significant.
- the present invention has been made in view of the above circumstances, and an object thereof is to provide a method capable of accurately measuring the distance from an image of one camera to an object in the image. .
- a predetermined constant obtained by photographing a chart having a predetermined length arranged at a predetermined distance from the imaging position.
- the distance to the object is calculated based on the length of the object in the captured image and the reference length of the object determined in advance according to the type of the object. Therefore, the image processing method, the image processing apparatus, the imaging apparatus, and the image processing program according to the present invention can accurately measure the distance from the image of one camera to the object in the image.
- FIG. 1 is a diagram illustrating a configuration of an image processing system according to a first embodiment. It is a figure which shows the example of a structure and the content of the target object size information table 1610 of the image process part shown in FIG. It is a figure for demonstrating the size method. It is a figure for demonstrating a chart.
- FIG. 5A is a diagram illustrating an example of a captured image in which a part of the chart is captured, and FIG. 5B is an overall diagram of the chart.
- FIG. It is a figure for demonstrating the ranging process using a size method. It is a figure for demonstrating the contact point method.
- FIG. 8A is a diagram for illustrating a captured image obtained by capturing a chart in the grounding point method setup process, FIG.
- FIG. 8A is a diagram illustrating an example of a captured image in which a part of the chart is captured, and FIG. It is a figure which shows the example of the captured image which the whole showed. It is a figure for demonstrating the ranging process using the contact point method. It is a figure for demonstrating the error in a grounding point method. It is a figure for demonstrating the error in the size method in case a target object is a car. It is a figure for demonstrating the weighting of a size method and a contact point method. It is a figure for demonstrating the weighting of a size method and a contact point method. It is a figure for demonstrating the weighting of a size method and a contact point method. It is a figure for demonstrating the weighting of a size method and a contact point method.
- FIG. 10 is a diagram for explaining grouping according to the second embodiment.
- FIG. 10 is a diagram for explaining grouping according to the second embodiment.
- 6 is a flowchart of an object extraction process according to the second embodiment. It is a figure for demonstrating the target object of distance calculation impossible of Embodiment 3.
- FIG. 10 is a diagram illustrating an image processing system configuration according to a fourth embodiment.
- FIG. 10 is a diagram for explaining correction of distortion of a captured image according to the fourth embodiment.
- FIG. 29A is a diagram for explaining correction of distortion aberration of a captured image according to the fourth embodiment
- FIG. 29A is a diagram illustrating a coordinate system of the captured image
- FIG. 29B is a configuration of a first correction table (size method) and FIG. FIG.
- FIG. 29C is a diagram showing an example of the contents
- FIG. 29C is a diagram showing an example of the configuration and contents of the second correction table (ground point method).
- 30 is a flowchart of distance measurement processing according to the fourth embodiment when the correction table of FIG. 29 is used.
- FIG. 31A is a diagram for explaining correction of distortion aberration of a captured image according to the fourth embodiment
- FIG. 31A is a diagram illustrating a coordinate system of the captured image
- FIG. 31B is a configuration of a first correction table (size method)
- FIG. It is a figure which shows the example of a content
- FIG. 31C is a figure which shows the example of a structure and content of a 2nd correction table (grounding-point method).
- FIG. 33A is a diagram illustrating an example in which an image processing unit is mounted
- FIG. 33A is a diagram illustrating an example in which the image processing unit is mounted on a camera
- FIG. 33B illustrates an example in which the image processing unit is mounted on a personal computer or the like.
- FIG. 1 is a diagram illustrating a configuration of an image processing system according to the first embodiment.
- the image processing unit 1000 acquires a captured image of the subject from the imaging unit 2000, calculates the distance to the target in the acquired image, and outputs the calculated distance to the output unit 3000.
- the imaging unit 2000 is a so-called camera, and includes an optical system 2100, an imaging element 2200, and an A / D conversion unit 2300.
- the optical system 2100 is composed of a lens or the like, and forms an optical image of a subject on the imaging surface of the imaging device 2200 disposed on the optical axis.
- the image sensor 2200 converts the optical image formed by the optical system 2100 into an analog image signal and outputs the analog image signal to the A / D converter 2300.
- the A / D conversion unit 2300 performs A / D conversion on the analog imaging signal input from the imaging element 2200, and outputs the digital imaging data (captured image).
- the image data may be subjected to other image processing, for example, image processing such as white balance adjustment.
- a captured image captured by a single camera such as visible light
- images captured by a plurality of cameras may be used.
- a captured image captured with two eyes of a visible light camera and a far-infrared camera or a captured image captured with two eyes of a visible light camera and a near-infrared camera may be used.
- the output unit 3000 is a device that outputs (presents) the distance to the object calculated by the image processing unit 1000.
- the output unit 3000 includes a CRT (Cathode Ray TuBe) display, an LCD (Liquid Crystal Display), an organic EL (Electro Liminescence). ) Display devices such as displays and plasma displays.
- FIG. 33 shows a configuration example in which the image processing unit 1000 is mounted.
- FIG. 33A shows an example in which the image processing unit 1000 is mounted on a camera.
- This camera is a vehicle-mounted camera, a surveillance camera, or the like. In the case of a surveillance camera, it is installed indoors and the distance to a person is measured.
- the image processing unit 1000 may be mounted on a head mounted display with a camera.
- the camera includes a camera unit corresponding to the imaging unit 2000, a digital processing circuit for realizing the image processing unit 1000, an image display unit corresponding to the output unit 3000, a card I / F unit for mounting a recording unit such as a flash memory, It has a CPU (Central Processing Unit) that controls the entire system.
- CPU Central Processing Unit
- the image processing unit 1000 may be mounted on an information processing apparatus that does not include the imaging unit 2000, for example, a personal computer that includes an input medium such as a mouse or a keyboard.
- the captured image is acquired via the net or a general external storage device.
- the information processing apparatus includes a microcomputer having a CPU and a memory, and the image processing unit 1000 is realized by the CPU executing an image processing program.
- the information processing apparatus calculates the distance to the object in the captured image and outputs the distance to a monitor corresponding to the output unit 3000.
- the image processing unit 1000 may be mounted on a mobile device, a smartphone, or the like.
- ⁇ Ranging method> the distance from the imaging position to the object in the captured image is accurately measured by using two different distance measuring methods in combination.
- one of the two distance measuring methods used in the embodiment is referred to as a “size method”, and the other method is referred to as a “ground point method”.
- the size method will be described with reference to FIGS.
- the distance is estimated using the fact that the size (number of pixels indicating the length) of the object and the distance are inversely proportional.
- This size method is roughly divided into two processes. These two processes are a setup process before actual distance measurement and a distance measurement process for calculating the distance to the object.
- parameters required for the distance measurement process are calculated.
- a person, a car, a motorcycle, a bicycle, or the like is extracted from the captured image as an object, and the distance is estimated (calculated) for each object using the parameters calculated in the setup process. Is done.
- the user photographs the chart 10 at positions Za and Zb from the principal point 13 of the optical system 2100 (Za ⁇ Zb).
- An example of the chart 10 is shown in FIG.
- the chart 10 is in the shape of a long and narrow bar and has a total length Lc (m).
- the size) is Ya
- the number of pixels in the Y direction occupied by the chart 10 in the captured image obtained by capturing the chart 10 at the position of the distance ZB is Yb
- a constant C as a parameter is calculated by the following equation (1).
- the distance to the object 11 is calculated using the constant C.
- the distance Z is calculated by the following equation (2).
- the Z C ⁇ (Yp ⁇ Lp) (2) That is, if the height Lp of the object is known, the distance can be calculated. Therefore, in this sizing method, the height Lp of the object is determined in advance as “reference size (reference length)” for each type of object, and the distance to the object is calculated based on the reference size.
- the reference size for each object is assumed to be a direction (direction) with little variation in the object.
- the reference size is set along a stable direction in which variations among objects (actual person differences, etc.) and changes with time hardly occur.
- the width is not stable due to the movement (orientation) of the person, and the width is not stable due to the influence of belongings. Bicycles and motorcycles are not stable due to the influence of the direction at the time of shooting (the direction of the object in the image).
- the height of a car varies greatly depending on the type of car (difference between a normal car and a truck, etc.), but the width is approximately the same size (length).
- the standard size is set based on the height for people and bicycles, and the standard size is set based on the width for cars.
- a car has a width of 2 m (meters)
- a person has a height of 1.7 m
- a motorcycle has a height of 1.7 m
- a bicycle has a height of 1.7 m. Assume each.
- FIG. 2 shows a configuration of the object size information table 1610 for managing the reference size and an example of its contents.
- This table is stored in an object size information storage unit 1600 of the image processing unit 1000 described later, and is referred to when the image processing unit 1000 calculates a distance.
- the object size information table 1610 has a type 1611, a reference size 1612, and a direction 1613.
- the type 1611 indicates the type of the object.
- the reference size 1612 indicates the reference size of the type indicated by the type 1611, and the direction 1613 indicates the direction.
- the total length Lc of the chart 10 of the embodiment is 2 m, for example, and a total of ten white and black portions of 0.2 m are alternately arranged. Each white portion is provided with a different mark 20.
- the mark 20 is used when obtaining a ground point method parameter described later when only a part of the chart 10 is photographed.
- FIG. 5 shows a captured image in which the chart 10 is captured.
- FIG. 5A shows a captured image in which a part of the chart 10 is captured
- FIG. 5B shows a captured image in which the entire chart 10 is captured.
- FIG. 5A is a captured image of the chart 10 at a position of distance Za, for example, 2 m in FIG. 3
- FIG. 5B is an captured image of the chart 10 at a position of distance Zb, for example, 3 m.
- the total length Lc of the chart 10 can be obtained. That is, since the ratio of the portion shown in the captured image to the total length Lc of the chart 10 is known, the number of pixels of the total length Lc of the chart 10 is calculated from the ratio. For example, since seven white parts and black parts are shown, it can be seen that the number of pixels is 70% (Y1) of the number of pixels of Lc, and by multiplying the number of pixels by 10/7. The number of pixels of Lc (Ya) is calculated.
- FIG. 6 shows an example in which the distance to each object is obtained by distance measurement processing.
- the number of pixels of each object is detected, and the above equation (2) is used to calculate the distance to each object.
- the object is “person”
- the vertical pixel numbers Yp1 and Yp2 are detected
- the object is “car”
- the horizontal pixel numbers Yp3 and Yp4 are detected.
- the pixel number Yp1 is greater than the pixel number Yp2. If it is larger, the distance to the object “person” having the pixel number Yp1 is calculated to be shorter than the distance to the object “person” having the pixel number Yp2.
- a method for extracting an object from a captured image is extracted by a conventional technique such as pattern matching.
- An extraction method using a neural network may be used.
- the object when the object is a person, a bicycle, or the like, the height (the number of pixels in the vertical direction) may be known, and in the case of a car or the like, the width (the number of pixels in the horizontal direction) may be known. .
- the lateral width of the vehicle can be easily detected from the symmetry of the vehicle, for example, a tail lamp or a tire.
- the grounding point method is a method for estimating the distance by utilizing the fact that a part installed on the road surface such as a person's foot or a tire part of a car is positioned at the upper part of the image as the distance increases.
- the grounding point method is roughly divided into two processes, similar to the size method. These two processes are a setup process before actual distance measurement and a distance measurement process for calculating the distance to the object. Also in the setup process of the contact point method, the parameters necessary for the distance measurement process are calculated as in the size method. In the distance measurement process, a person, a car, a motorcycle, a bicycle, or the like is extracted as an object from the captured image, and the distance is estimated for each object using the parameters calculated in the setup process.
- the mechanism of the contact point method will be described with reference to FIG.
- the user captures the chart 10 at each of the positions Za and Zb from the principal point 13 of the optical system 2100.
- the chart 10 is the chart 10 of the full length Lc shown in FIG.
- the actual height from the road surface at each of the upper and lower ends of the captured image is calculated from the position of the chart 10 in the captured image.
- the captured image 20 and the captured image 21 in FIG. 7 are captured images of the chart 10 installed at the distance Za and the distance Zb, respectively.
- the upper end position Yat and the lower end position Yab of the captured image 20 are calculated, and the upper end position Ybt and the lower end position Ybb of the captured image 21 are calculated.
- FIG. 8 shows a captured image in which the chart 10 is captured.
- FIG. 8A shows the captured image 20 of FIG. 7, and
- FIG. 8B shows the captured image 21.
- the ratio of the captured part to the total length Lc is obtained from the number of white parts and black parts. From the ratio, the upper end position Yat and the lower end position Yab of the captured image 20 are calculated. The length that is not shown in the captured image is the lower end position Yab. If only the center portion of the chart 10 is shown in the captured image, the mark 20 provided in the white portion can tell from which position the white portion is from the bottom, so that the lower end position Yab is Calculated.
- the upper end position Ybt and the lower end position Ybb of the captured image 21 are calculated from the ratio and position with respect to the height of the captured image of the chart 10.
- the upper end inclination At, the intercept Ys, the lower end inclination Ab, and the intercept Ys' are obtained as parameters. It should be noted that even if the three points of the principal point 13 (0, Ys), the upper end (Za, Yat) of the captured image 20 and the upper end (Zb, Ybt) of the captured image 21 are approximated by least squares, the upper end equation is obtained. Good. The same applies to the expression at the lower end.
- the distance to the object 11 shown in the captured image 22 is calculated.
- the height of the captured image 22 is h (pixel)
- the Y coordinate of the grounding point of the object 11 is p (pixel)
- the distance Z is calculated from (6).
- FIG. 9 shows an example in which the distance to each object is obtained by distance measurement processing.
- the Y coordinates P1 to P4 of the contact point are found for each object, and the distance to each object is calculated by using the above equation (6).
- FIG. 10 is a diagram for explaining an error of the ground point method.
- the error of the distance by the contact point method is caused by the calculation error of the contact point. Therefore, it is assumed that the calculation error of the ground point has an error of 10 pixels above and below.
- the horizontal axis represents the actual distance to the object
- the vertical axis represents the (estimated) distance obtained by the contact point method.
- the unit is meters (m).
- a solid line graph is a graph showing an ideal estimation result
- a one-dot chain line graph is a graph showing an estimation result when the detected ground point is shifted 10 pixels upward
- a broken line graph is It is a graph which shows the estimation result when the detected grounding point has shifted
- the captured image size is 480 pixels in the vertical direction and 640 pixels in the horizontal direction, for example, due to the influence of the vibration of the car, the image is moved up and down by ⁇ 10 pixels, and the object moves away from the own vehicle. It can be seen that the estimation accuracy drops significantly as the value increases. In the case of this example, the calculated distance that can guarantee a distance estimation error of 25% or less is up to a distance of 28 m.
- the size method since the distance is calculated using the size of the object (the number of pixels indicating the length), there is no change in the size itself even if the image moves up and down due to car vibrations, etc. Therefore, the vibration of the car does not affect the calculation accuracy of the distance. Therefore, the size method can stably estimate the distance even in the case of a long distance.
- FIG. 11 is a diagram for explaining an error of the size method.
- the error of the distance by the size method is caused by the error between the actual size of the object and the reference size.
- the size method can accurately estimate the distance if the assumed reference size and the actual size of the object in the captured image match.
- the accuracy deteriorates. Assuming that a child with a height of 1.2 m is 1.7 m, the error is mistakenly calculated as being 1.7 / 1.2 times far, and the distance is calculated.
- the reference size may be determined on the assumption that it is slightly smaller. For example, since there is a variation in the extension of the person, the reference size of the person is assumed to be slightly lower 1.5 m. If a person with an actual size of 1.7m is detected and the distance is estimated, it will be mistaken if it is close to 1.5 / 1.7 times. This is because it can be an advantage.
- FIG. 11 is obtained by adding the estimation result by the size method to the graph of FIG.
- a fine broken line graph is a graph showing an estimation result by the size method.
- the size method can be accurately estimated at a long distance, but if the actual size of the target object deviates from the assumed reference size, the error becomes large.
- the distance estimation accuracy can be improved.
- threshold value Dth1 when a calculation result that the distance to the object (provisional distance) is closer than 40 m (threshold value Dth1) is obtained by the size method, each of the size method and the ground point method is used. The result of weighting the estimated distance is output as the estimated distance.
- the distance is calculated to be 40 m or more by the size method, the calculated distance is set as the estimated distance.
- 40 m used as the threshold value Dth1 is a distance at which the estimation error by the contact point method and the estimation error by the size method in the graph of FIG. 10 are reversed. Note that the threshold value Dth1 is not limited to 40 m.
- the threshold value Dth1 may be determined by the number of pixels of the object when calculating the distance by the size method. Further, in FIG. 12, the weighting ratio is proportional to the distance calculated by the size method, but as shown by the broken line 25, the weighting for the distance estimated by the ground contact point method may be made heavier. . This is because the contact point method has higher estimation accuracy as the distance is shorter.
- the distance may be estimated by the contact point method, and the weight amount may be calculated from the estimation result.
- the threshold value may be determined by the Y coordinate (pixel) of the contact point when calculating the distance.
- weighting may be performed so that a distance of 0 m is 0.5.
- a close object such as a distance (Dth2) of 5 m or less
- the size method is weighted, and the distance is estimated only by the size method. Also good.
- This 5 m is a distance such that the contact point position is below the lower end of the captured image.
- the distance from the size method may be determined by the threshold value Dth2, but the contact point position may be a lower end of the image (for example, a car tire protrudes from the lower end).
- 11 to 15 described above show estimation results obtained by calculating the distance with the reference size of 1.7 m when the object is a person (child) and the actual size is 1.2 m.
- FIGS. 16 to 20 show estimation results obtained by calculating the distance with the reference size of 2.5 m when the object is a car and the actual size is 2.0 m.
- the graph of FIG. 16 is obtained by adding the estimation result by the size method when the object is a car to the graph of FIG.
- a fine broken line graph is a graph showing an estimation result by the size method.
- the result of weighting each estimated distance with the contact point method may be output as the estimated distance.
- the calculation result is 35 m (threshold value Dth3) or more, weighting is performed only on the size method, and the distance is estimated only by the size method.
- the distance is estimated by the contact point method, and the weight amount is calculated from the estimation result. Also good.
- the weight is 0 at the position where the distance is 0 m.
- the distance from the size method may be determined by the threshold value Dth4, but it may be a condition that the contact point position is the lower end of the image (for example, a car tire protrudes from the lower end).
- the “size method” and the “contact point method” are used in combination, but the distance measurement process may be executed by only one of them.
- any method may be employed depending on the object to be measured. For example, when only a distant object is measured, only the size method is adopted.
- the image processing unit 1000 includes a parameter calculation unit 1100, a distance estimation unit 1200, an object detection unit 1300, a first distance calculation unit 1400, a second distance calculation unit 1500, and an object size information storage unit 1600.
- the image processing unit 1000 has a setup mode for performing a setup process and a distance measurement mode for performing a distance measurement process, and the user sets the mode.
- the parameter calculation unit 1100 calculates the above-described constant C in the size method using Expression (1), and the slope At of the upper end of the captured image in the ground point method, the intercept Ys, the slope Ab of the lower end, and The intercept Ys ′ is obtained using equations (3) and (4).
- the parameter calculation unit 1100 is executed when the setup mode is set.
- the distance estimation unit 1200 has a function of calculating the distance to the object in the captured image acquired from the imaging unit 2000.
- the distance estimation unit 1200 controls other functional units such as the object detection unit 1300 and calculates a final estimated distance.
- the distance estimation unit 1200 is executed when the distance measurement mode is set.
- the object detection unit 1300 extracts the object in the captured image in response to a request from the distance estimation unit 1200, and determines the pixel size (the length of the object) according to the type of the object and the direction (direction) of the type. The number of pixels to be displayed), the position coordinates of the object, and the like.
- the first distance calculation unit 1400 has a function of calculating a distance to an object by the above-described size method in response to a request from the distance estimation unit 1200 and passing the distance to the distance estimation unit 1200.
- the second distance calculation unit 1500 has a function of calculating a distance to an object by the above-described contact point method in response to a request from the distance estimation unit 1200 and passing the distance to the distance estimation unit 1200.
- the object size information storage unit 1600 has a function of storing a reference size and an orientation for each object. Specifically, the object size information table 1610 (see FIG. 2) described above is stored.
- FIG. 21 is a flowchart of the setup process of the image processing unit 1000.
- a user (initial setting person) who performs the setup process first instructs the image processing unit 1000 to set up a setup mode, installs the chart 10 at a distance Za, for example, 2 m from the imaging unit 2000, and takes an imaging button ( An unillustrated button is pressed to instruct imaging (step S50).
- the imaging device 2200 of the imaging unit 2000 converts the optical image formed by the optical system 2100 into an analog imaging signal and outputs the analog imaging signal to the A / D conversion unit 2300.
- the A / D conversion unit 2300 performs A / D conversion on the analog imaging signal input from the imaging element 2200 and outputs the analog imaging signal to the image processing unit 1000 as digital imaging data (captured image).
- the user places the chart 10 at a distance Zb, for example, 3 m from the imaging unit 2000, and presses an imaging button (not shown) of the imaging unit 2000 to instruct imaging (step S51).
- the imaging unit 2000 outputs the captured image to the image processing unit 1000.
- the parameter calculation unit 1100 which has acquired two captured images obtained by setting the chart 10 at the distance Za and the distance Zb from the imaging unit 2000, obtains the constant C in the size method by the equation (1) as described above. And the slope At and the intercept Ys, the slope Ab and the intercept Ys ′ of the captured image in the contact point method are computed using the equations (3) and (4) (step). S52).
- the parameter calculation unit 1100 stores these calculated parameters in a storage area inside the image processing unit 1000. This storage area can be referred to from each function unit of the image processing unit 1000.
- the parameter calculation unit 1100 having each parameter stored in the storage area outputs to the output unit 3000 that setup has been completed.
- FIG. 22 is a flowchart of the distance measuring process of the image processing unit 1000.
- the user instructs the image processing unit 1000 in the distance measurement mode.
- the imaging unit 2000 outputs the captured image to the image processing unit 1000 at a predetermined cycle, and the distance estimation unit 1200 of the image processing unit 1000 acquires the captured image (step S10).
- the distance estimation unit 1200 requests the object detection unit 1300 to detect the object.
- the object detection unit 1300 extracts the objects in the captured image, that is, people, cars, bicycles, motorcycles, etc., and the number of the extracted objects, the types of the objects, the direction of the types (directions) ) Is passed to the distance estimation unit 1200 (step S11).
- the object detection unit 1300 refers to the object size information table 1610 (see FIG. 2) of the object size information storage unit 1600 to obtain the number of pixels in the direction corresponding to the type of the object. For example, when the type is “person”, the “height” set as the direction 1613 is read from the record in which “person” is set as the type 1611, and the number of pixels of the height of the extracted object is extracted. Ask for.
- the distance estimation unit 1200 performs the processing from step S12 to step S18 for each object passed from the object detection unit 1300 to estimate (determine) the distance.
- the distance estimation unit 1200 determines whether one object is a “person” (including bicycles and motorcycles) or a “car”, and sets a threshold value and a reference size. Specifically, when the object is “person” (step S12: “person”), the distance estimation unit 1200 sets the threshold value to 40 m and refers to the object size information table 1610 to set the reference size to “1”. .7m "(step S14). When the object is “car” (step S12: “car”), the distance estimation unit 1200 sets the threshold value to 35 m and refers to the object size information table 1610 to set the reference size to “2.0 m”. (Step S13).
- the distance estimation unit 1200 requests the first distance calculation unit 1400 to calculate the distance to the object.
- the first distance calculation unit 1400 that has received the request calculates the distance to the object as described in the above-described size method, and passes it to the distance estimation unit 1200 as a provisional distance (step S15).
- the distance estimation unit 1200 determines the provisional distance as the distance to the object (step S18).
- the distance estimation unit 1200 requests the second distance calculation unit 1500 to calculate the distance to the object. .
- the second distance calculation unit 1500 that has received the request calculates the distance to the object as described in the above-described contact point method, and passes the distance to the distance estimation unit 1200 as a provisional distance (step S17).
- the distance estimation unit 1200 that has received the provisional distance from the second distance calculation unit 1500 and the provisional distance (first distance) received from the first distance calculation unit 1400 and the provisional distance received from the second distance calculation unit 1500 (second For example, weighting shown in FIG. 12 is performed on the distance to determine the distance to the object (step S18).
- step S19: No the distance estimation unit 1200 that has determined the distance to the object in step S18 performs processing from step S12, When the distance is determined for all the objects (step S19: Yes), the distance for each object is output to the output unit 3000 (step S20).
- step S21: No If the user has not instructed the end of the distance measurement process (step S21: No), the process from step S10 is repeated, and if the end instruction has been given (step S21: Yes), the process ends.
- the distance obtained by the size method is compared with the threshold value.
- the distance may be obtained by the contact point method in step S15.
- the distance is calculated for each object in the captured image.
- the objects are grouped, and the distance is calculated for each group. Objects having substantially the same ground point position are set as one group.
- FIG. 23 shows an example in which objects of the same type are grouped.
- an object 30 of the type “person” and an object 31 of the type “person” are detected, and the grounding points of the object 30 and the object 31 are substantially the same, for example, within ⁇ 3 pixels
- the two objects are grouped into one group. These two people at the same ground contact point position are people who are walking in parallel and are at the same distance, and the pixel size difference is a height difference. Therefore, the objects that can be regarded as being substantially the same as within 3 pixels are grouped, and the distance to the object is estimated by the size method using the average size.
- a person is shown as an example, but other objects (bicycles, cars, etc.) may be used.
- FIG. 24 shows an example in which different types of objects are grouped together. For example, an object 32 of the type “person” and an object 33 of the type “car” are detected, and the grounding points of the object 30 and the object 31 are substantially the same, for example, ⁇ 3 When the number of pixels is within a pixel, these two objects are made into one group.
- the pixel size is normalized by the reference size and then averaged, and the distance can be calculated by grouping. For example, if the width of a car is 2 pixels (reference size) is 30 pixels and the height of a person is 1.7 m (reference size) is 28 pixels, the car is 15 pixels per meter and the person is 16.47 pixels per meter. Can be calculated. When this is averaged, it becomes 15.74 pixels per meter. Therefore, the width of the car can be corrected to 31.47 pixels, the height of the person can be corrected to 26.75 pixels, and the object 32 and the object 33 are estimated as the same distance.
- such a grouping process is performed by, for example, the object detection unit 1300 of the first embodiment.
- the object detection unit 1300 extracts objects in the captured image, that is, people, cars, bicycles, motorcycles, etc., and the number of the extracted objects.
- the type of each object and the pixel size corresponding to the direction (direction) of the type are detected and passed to the distance estimation unit 1200.
- the target object detection unit 1300 groups the target objects and corrects the pixel size for each group.
- FIG. 23 shows a flowchart of the grouping process. This process is performed as the process of step S11 in the flowchart of FIG. 22 of the first embodiment.
- the target object detection unit 1300 extracts a target object from the captured image (step S30), and obtains a grounding point of each target object (step S31). Then, the object detection unit 1300 groups objects whose grounding points are within a predetermined range, for example, 3 pixels (step S32).
- the object detection unit 1300 calculates the average pixel size of each object when the types of objects constituting the group are the same (step S33: “person / car” (same type)).
- the pixel size of the object is set (step S34).
- step S33 when the types of objects constituting the group are different (step S33: “person & car”), the object detection unit 1300 calculates the number of pixels per meter of each object (step S35), The average number of pixels is obtained (step S36). Then, the object detection unit 1300 calculates the pixel size of each object (step S37).
- the object detection unit 1300 performs the process from step S33 on each group (step S38: No), and obtains the pixel sizes of the objects constituting all the groups (step S38: Yes).
- the first is a determination that a huge object 50 that is far away is an object that cannot be distance-calculated
- the second is that an extremely small object 51 that is nearby cannot be distance-calculated. It is a judgment to be.
- a threshold value is provided, and the distance calculation impossibility is determined when the contact point position is equal to or smaller than the threshold value Pth1 and the pixel size of the object is equal to or larger than the threshold value Sth1.
- the object whose distance cannot be calculated is the object 50 shown in FIG.
- the contact point position is equal to or greater than the threshold value Pth2 and the pixel size of the object is equal to or smaller than the threshold value Sth2
- such an object whose distance cannot be calculated is an object 51 shown in FIG.
- the position in the captured image at a certain distance can be obtained by the grounding point method, and the pixel size when the object is at that distance can be obtained from the reference size of the object. From these, a threshold is set. For example, the position in the captured image at a predetermined distance is set as the threshold value Pth1, and the pixel size of a person (reference size 1.7 m) at the predetermined distance is set as Sth1.
- This determination is performed by the object detection unit 1300 in the first embodiment, for example.
- FIG. 27 shows an image processing system configuration according to the fourth embodiment.
- a distortion aberration correction unit 2400 is added to the imaging unit 2000 and a distortion aberration correction information storage unit 1700 is added to the image processing unit 1000.
- a distortion correction unit 2400 and the distortion correction information storage unit 1700 is provided in each of the two methods described below.
- a distortion aberration correction unit 2400 is provided in the imaging unit 2000, and a captured image 61 (see FIG. 28) obtained by performing distortion correction from the imaging unit 2000 to the image processing unit 1000 is output.
- a captured image 61 obtained by performing distortion correction from the imaging unit 2000 to the image processing unit 1000 is output.
- the distortion correction unit 2400 corrects distortion based on the amount of distortion calculated from lens design data.
- the image processing unit 1000 prepares an LUT (Look Up Table) that describes the influence of distortion on an image instead of performing distortion correction at the time of distance measurement.
- LUT Look Up Table
- a captured image that has been subjected to distortion correction by the distortion aberration correcting unit 2400 of the imaging unit 2000 is used, and a captured image that is not subjected to distortion aberration correction is used in the ranging process. It is done.
- the distortion aberration correction information storage unit 1700 stores the above-described LUT, and FIG. 29 shows an example of an LTU.
- FIG. 29A is a diagram showing a coordinate system of a captured image, and the upper left is (0, 0).
- the pixel size of the captured image is 640 pixels in the X direction and 480 pixels in the Y direction.
- FIG. 29B shows an example of the configuration and contents of the first correction table (size method) 1710
- FIG. 29C shows an example of the configuration and contents of the second correction table (ground point method) 1720.
- the first correction table (size method) 1710 is a correction table when the size method is performed, and an enlargement ratio (magnification) of the pixel size with respect to the coordinate position of the captured image is set.
- the first correction table (size method) 1710 includes an X coordinate 1711, a Y coordinate 1712, an X direction enlargement ratio 1713, and a Y direction enlargement ratio 1714. Since distortion amounts of expansion and contraction (magnification rate) are different in the vertical and horizontal directions, the vertical and horizontal directions (X-axis direction and Y-axis direction) are individually set in a table.
- An X coordinate 1711 and a Y coordinate 1712 indicate the X coordinate and the Y coordinate of the coordinate position of the captured image, respectively.
- the X direction enlargement rate 1713 and the Y direction enlargement rate 1714 indicate the enlargement rate in the X axis direction and the enlargement rate in the Y axis direction with respect to the coordinate positions indicated by the X coordinate 1711 and the Y coordinate 1712, respectively.
- the X direction enlargement rate 1713 is used when the type of the object is “car”
- the Y direction enlargement rate 1714 is used when the type of the object is “person”, “bicycle”, or the like.
- the second correction table (ground point method) 1720 is a correction table when the ground point method is performed, and the ground point coordinate position (corrected Y coordinate) with respect to the coordinate position of the captured image is set.
- the second correction table (ground point method) 1720 includes an X coordinate 1721, a Y coordinate 1722, and a corrected Y coordinate 1723.
- An X coordinate 1721 and a Y coordinate 1722 indicate the X coordinate and the Y coordinate of the coordinate position of the captured image, respectively.
- the corrected Y coordinate 1723 indicates the corrected Y coordinate with respect to the coordinate position indicated by the X coordinate 1721 and the Y coordinate 1722.
- the record 72 of the second correction table (ground point method) 1720 is a record indicating the enlargement ratio of the upper left coordinate (0, 0) of the captured image
- the record 73 is the coordinate (320, 240) of the center of the captured image. It is a record indicating the enlargement ratio of For example, when the coordinates of the contact point of the “person” object are (0, 0), the Y coordinate is ⁇ 30.5, and the distance is calculated.
- FIG. 30 shows a flowchart of the distance measurement processing when the first correction table (size method) 1710 and the second correction table (ground point method) 1720 shown in FIGS. 29B and 29C are used.
- the flowchart of FIG. 30 is obtained by adding the above-described correction process to the flowchart of FIG. 22 of the first embodiment.
- the distance estimation unit 1200 corrects the pixel size of the object using the first correction table (size method) 1710.
- the distance estimation unit 1200 uses the second correction table (ground point method) 1720. Correct the ground contact point position of the object.
- FIG. 29 an example using the size enlargement ratio with respect to the image coordinate position and the LUT indicating the contact point coordinate position is shown.
- the distance data itself after distance calculation is corrected as a correction table. May be.
- a captured image that is not subjected to distortion correction is used in the setup process and the distance measurement process.
- FIG. 31A is a diagram showing a coordinate system of a captured image, and the upper left is (0, 0).
- the pixel size of the captured image is 640 pixels in the X direction and 480 pixels in the Y direction.
- FIG. 31B shows an example of the configuration and contents of the first correction table (size method) 1730
- FIG. 31C shows an example of the configuration and contents of the second correction table (ground point method) 1740.
- the first correction table (size method) 1730 is a correction table for performing the size method, and a correction coefficient for the calculated distance is set.
- the first correction table (size method) 1730 includes an X coordinate 1731, a Y coordinate 1732, an X direction distance correction coefficient 1733, and a Y direction distance correction coefficient 1734.
- An X coordinate 1731 and a Y coordinate 1732 indicate the X coordinate and the Y coordinate of the coordinate position of the captured image, respectively.
- the X-direction distance correction coefficient 1733 indicates a coefficient used when the distance in the X-direction, that is, the type of the object is “car”.
- the Y direction distance correction coefficient 1734 indicates a distance used in the X direction, that is, a coefficient used when the object type is “person”, “bicycle”, or the like.
- the record 80 of the first correction table (size method) 1730 “ ⁇ ” is set as the X direction distance correction coefficient 1733 and the Y direction distance correction coefficient 1734. This indicates that the distance cannot be calculated because the upper portion of the captured image is an empty image.
- the second correction table (ground point method) 1740 is a correction table for performing the ground point method, and a correction coefficient for the coordinate position of the captured image is set.
- the second correction table (ground point method) 1740 includes an X coordinate 1741, a Y coordinate 1742, and a distance correction coefficient 1743.
- An X coordinate 1741 and a Y coordinate 1742 indicate the X coordinate and the Y coordinate of the coordinate position of the captured image, respectively.
- the distance correction coefficient 1743 indicates a distance correction coefficient for the coordinate position indicated by the X coordinate 1721 and the Y coordinate 1722.
- FIG. 32 shows a flowchart of distance measurement processing when the first correction table (size method) 1730 and the second correction table (ground point method) 1740 of FIGS. 31B and 31C are used.
- the flowchart of FIG. 32 is obtained by adding the above-described correction process to the flowchart of FIG. 22 of the first embodiment.
- the distance estimation unit 1200 corrects the distance obtained by the first distance calculation unit 1400 in step S15 using the first correction table (size method) 1730 in step S42.
- the distance estimation unit 1200 corrects the distance obtained by the second distance calculation unit 1500 in step S17 using the second correction table (ground point method) 1740 in step S43.
- the circuit scale can be reduced or the software can be used. It is possible to speed up the processing. In addition, it is possible to use a CPU with relatively low performance, and it is possible to reduce the price.
- An image processing method is an image processing method for measuring a distance from an imaging position to an object in a captured image, and the object for detecting a type of the object in the captured image A detection step, a predetermined constant obtained by photographing a chart of a predetermined length arranged at a predetermined distance from the imaging position, the length of the object in the captured image, and the target A first distance calculating step of calculating a distance to the object based on a reference length of the object determined in advance according to the type detected in the object detecting step.
- An image processing apparatus is an image processing apparatus that measures a distance from an imaging position to an object in a captured image, and stores a reference length for each type of the object
- a storage unit a target detection unit that detects the type of the target in the captured image, and a chart having a predetermined length arranged at a predetermined distance from the imaging position.
- a distance calculation unit that calculates a distance to the object based on the determined predetermined constant, the length of the object in the captured image, and the reference length of the object stored in the storage unit With.
- An image processing program is an image processing program used in an image processing apparatus for measuring a distance from an imaging position to an object in a captured image, and for each type of the object
- a storage unit that stores a reference length
- an object detection unit that detects the type of the object in the captured image
- a predetermined length that is disposed at a predetermined distance from the imaging position. The distance to the object based on a predetermined constant obtained by photographing the chart, the length of the object in the captured image, and the reference length of the object stored in the storage means
- the computer functions as a distance calculating means for calculating.
- a reference length (actual length) is determined in advance for each type of object, and the length of the object (number of pixels) in the captured image. ) Is used to calculate the distance to the target object in the captured image, so that the distance to the target object in the captured image can be accurately calculated. That is, for example, even when an imaging device such as a camera shakes up and down when capturing a captured image and the position of the target in the captured image is shifted up and down, the number of pixels in the captured image of the target This is because the calculated distance does not change.
- the length of the object may be represented by the number of pixels or the ratio of the number of pixels of the captured image, and any distance can be used as long as the distance can be calculated based on this.
- the length of the object is a length of the captured image in a direction according to the type of the object, and the reference length is the type of the object It is preferable that the length is in the direction corresponding to.
- the distance can be calculated more accurately by using the length in the direction with little change due to the movement of the object. Is possible.
- the direction according to the type of the object is vertical. It is preferable that it is a direction (up-down direction when they stand).
- the distance can be calculated with higher accuracy.
- the direction according to the type of the object is orthogonal to the lateral direction (the width direction and the front-rear direction).
- Direction the direction according to the type of the object is orthogonal to the lateral direction (the width direction and the front-rear direction).
- the lateral length with little change that is, the vehicle width is used, so that the distance can be calculated with higher accuracy.
- a second distance calculating step of calculating a distance to the object based on an imaging range in the captured image and a grounding point of the object When the provisional distance to the target object calculated in one of the one distance calculation step and the second distance calculation step is below a threshold value (distance threshold value), the first distance calculated in the first distance calculation step and the first distance A distance to the object is calculated using the second distance calculated in the two-distance calculation step, and when the provisional distance is equal to or greater than the threshold, the first distance calculated in the first distance calculation step is used as the target It is preferable to further include a distance estimation step for setting a distance to the object.
- a distance estimation step for setting a distance to the object.
- the distance calculated using the length (number of pixels) of the object and the grounding point of the object are used for calculation. Since the distance to the object is calculated using the distance as well, the distance can be calculated with higher accuracy.
- the distance calculated using the ground contact point of the target is often highly accurate. is there.
- the temporary distance is short when the distance to the object is calculated using the first distance and the second distance. It is preferable to calculate a distance to the object by weighting the second distance heavier than the first distance.
- the weight of the distance calculated using the contact point of the object is increased, so that the distance can be calculated with higher accuracy. This is because the closer the object is, the smaller the vertical displacement of the position of the object in the captured image, and the higher the accuracy of the calculated distance.
- the threshold value is preferably different depending on the type of the object.
- the distance can be calculated with higher accuracy.
- the first distance calculation step is the same for objects having a grounding point in a predetermined range in the vertical direction in the captured image.
- the distance to the target is calculated based on a length obtained by averaging the lengths of the target images in the captured image and a reference length that is predetermined according to the type of the target. It is preferable to calculate.
- the distance is calculated using the average value of the lengths (number of pixels) of the objects, Can be calculated.
- the first distance calculating step may include each target when the target having a grounding point in a predetermined range in the vertical direction in the captured image is a different type. After correcting the length of each object using the value obtained by normalizing and averaging the length in the captured image of the object with the reference length of the object determined in advance according to the type, It is preferable to calculate the distance to the object based on the length and the reference length of the object determined in advance according to the type.
- the distance (number of pixels) is normalized and the distance is calculated using an average value. For these objects, it is possible to calculate a distance with a small error.
- the contact point of the object is above a first position in the vertical direction of the captured image, and the length of the object in the captured image is , Greater than the first threshold (first length threshold), or the grounding point of the object is below a second position below the first position, and the length of the object is In the case where it is smaller than the second threshold (second length threshold) smaller than the first threshold, it is preferable not to measure the distance to the object.
- an object that cannot actually exist can be determined, so that it can be excluded from the object of distance measurement.
- the captured image is a captured image that is captured by an imaging unit having an optical system and in which distortion due to the optical system is corrected.
- the distance to the object in the captured image after distortion aberration correction is calculated, the distance can be calculated with higher accuracy.
- the captured image is a captured image captured by an imaging unit having an optical system
- the first distance calculating step includes: The length is corrected based on correction information in which a position in the captured image and correction coordinates are associated with each other in order to correct distortion of the captured image due to the optical system, and the corrected length and the reference length Based on the above, it is preferable to calculate the distance to the object.
- the length (number of pixels) of the object in the captured image with distortion is corrected using the correction information, and the distance is calculated using the corrected length (number of pixels).
- the distance can be calculated more easily and with the same accuracy as when a captured image with corrected distortion is used.
- the second distance calculating step is configured to correct a grounding point of the object in the captured image, and to correct distortion aberration due to the optical system of the captured image. It is preferable to perform correction based on correction information in which a position in the captured image is associated with correction coordinates, and to calculate the distance to the object based on the imaging range in the captured image and the ground point after correction. .
- the distortion aberration can be calculated more easily.
- the distance can be calculated with the same accuracy as when the corrected captured image is used.
- the captured image is a captured image captured by an imaging unit having an optical system
- the first distance calculating step includes: The distance to the object is calculated based on the length and a reference length of the object determined in advance according to the type detected in the object detection step, and the calculated distance is calculated based on the captured image. It is preferable that correction is performed based on correction information in which a position in the captured image is associated with correction coordinates for correcting distortion due to the optical system, and the corrected distance is set as the distance to the object.
- the second distance calculating step calculates and calculates a distance to the object based on an imaging range in the captured image and a grounding point of the object.
- the corrected distance is corrected based on correction information that correlates a position and a magnification in the captured image for correcting distortion of the captured image by the optical system, and the corrected distance is corrected to the target object. It is preferable to set the distance.
- the distance calculated using the captured image having distortion aberration is corrected using the correction information, the distance is more easily equivalent to the accuracy when using the captured image corrected for distortion aberration. Can be calculated.
- An imaging apparatus includes an imaging unit that captures an image of a subject including an object and the above-described image processing apparatus.
- an image processing method an image processing device, an imaging device, and an image processing program can be provided.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Electromagnetism (AREA)
- Signal Processing (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Measurement Of Optical Distance (AREA)
- Studio Devices (AREA)
Abstract
本発明にかかる画像処理方法、画像処理装置、撮像装置および画像処理プログラムでは、撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、撮像画像における対象物の長さと、前記対象物の種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離が算出される。
Description
本発明は、撮像画像から距離を測る技術に関する。
近年、車両の安全性を高める取り組みとして、前方の障害物を検出して危険を警告したり、先行車との距離を測って車間距離を一定に保ったりすることが試みられている。
例えば、自車両と先行車両との距離を、前記自車両に装着されたカメラの映像から検出する技術が提案されている(特許文献1参照)。この技術によれば、車線検出のための1つのカメラの画像から、カメラの焦点距離と画像内の測距対象物(目標物)の垂直座標とに基づいて対象物までの距離が算出される。そして、路面の形状が推測され、推測された形状に基づいて距離が補正されて実際の距離が算出される。
しかし、上述のような対象物の垂直座標に基づいて距離を算出する方法(接地点法)では、路面形状の推定に誤差が生じた場合には、対象物までの距離の誤差が大きくなってしまう。特に、遠距離に対象物が在る場合には、誤差は、顕著になる。
そこで、本発明は、上述の事情に鑑みて為された発明であり、その目的は、1つのカメラの画像から、画像内の対象物までの距離を精度よく測定できる方法を提供することである。
本発明にかかる画像処理方法、画像処理装置、撮像装置および画像処理プログラムでは、撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、撮像画像における対象物の長さと、前記対象物の種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離が算出される。したがって、本発明にかかる画像処理方法、画像処理装置、撮像装置および画像処理プログラムは、1つのカメラの画像から、画像内の対象物までの距離を精度よく測定できる。
上記ならびにその他の本発明の目的、特徴および利点は、以下の詳細な記載と添付図面から明らかになるであろう。
以下、本発明にかかる実施の一形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、適宜、その説明を省略する。本明細書において、総称する場合には添え字を省略した参照符号で示し、個別の構成を指す場合には添え字を付した参照符号で示す。
<実施形態1>
図1は、実施形態1の画像処理システムの構成を示す図である。画像処理部1000は、撮像部2000から被写体の撮像画像を取得し、取得した画像内の対象物までの距離を算出し、算出した距離を出力部3000に出力する。
図1は、実施形態1の画像処理システムの構成を示す図である。画像処理部1000は、撮像部2000から被写体の撮像画像を取得し、取得した画像内の対象物までの距離を算出し、算出した距離を出力部3000に出力する。
撮像部2000は、いわゆるカメラであり、光学系2100、撮像素子2200、および、A/D変換部2300を含む。光学系2100は、レンズ等で構成され、光軸上に配置される撮像素子2200の撮像面に被写体の光学像を結像させる。撮像素子2200は、光学系2100により結像された光学像をアナログの撮像信号に変換し、A/D変換部2300に出力する。A/D変換部2300は、撮像素子2200から入力されたアナログの撮像信号をA/D変換して、デジタルの撮像データ(撮像画像)として出力する。なお、撮像データに対して、他の画像処理、例えば、ホワイトバランス調整等の画像処理を施しても良い。
本実施形態では、1台の可視光等のカメラ(単眼)で撮像された撮像画像が用いられるが、複数のカメラで撮像された画像が用いられてもよい。例えば、可視光カメラと遠赤外線カメラとの2眼で撮像された撮像画像や、可視光カメラと近赤外線カメラとの2眼で撮像された撮像画像が用いられてもよい。
出力部3000は、画像処理部1000によって算出された対象物までの距離を出力(提示)する装置であり、例えば、CRT(Cathode Ray TuBe)ディスプレイ、LCD(Liquid Crystal Display)、有機EL(Electro Liminesence)ディスプレイ、および、プラズマディスプレイ等の表示装置である。
図33に、画像処理部1000が搭載される構成例を示す。図33Aには、画像処理部1000を、カメラに搭載した例が示されている。このカメラは、車載カメラ、監視カメラ等である。監視カメラの場合は、室内に設置され、人までの距離などが測定される。また、画像処理部1000は、カメラ付きのヘッドマウントディスプレイに搭載されても良い。カメラには、撮像部2000に相当するカメラ部、画像処理部1000が実現されるデジタル処理回路、出力部3000に相当する画像表示部、フラッシュメモリ等の記録部を装着するカードI/F部、全体を制御するCPU(Centrl Processing Unit)を有する。
また、図33Bに示すように、画像処理部1000は、撮像部2000を含まない情報処理装置、例えば、マウスやキーボード等の入力媒体を備えるパソコン等に搭載されてもよい。この場合は、撮像画像は、ネットを介して、または、過般性の外部記憶装置等を介して取得される。情報処理装置は、CPUおよびメモリ等を有するマイクロコンピュータを備え、CPUが画像処理プログラムを実行することで画像処理部1000が実現される。情報処理装置は、撮像画像内の対象物までの距離を算出し、出力部3000に相当するモニタに出力する。なお、画像処理部1000は、携帯機器、スマートフォン等に搭載されてもよい。
ここで、画像処理部1000の構成を説明する前に、実施形態の測距方法について、説明する。
<測距方法>
実施形態では、2つの異なる測距方法を併用することで、撮像位置から撮像画像内の対象物までの距離を精度良く測定する。以下、実施形態で使用する2つの測距方法のうちの1つの方法が「サイズ法」と呼ばれ、他の方法が「接地点法」と呼ばれるものとする。
実施形態では、2つの異なる測距方法を併用することで、撮像位置から撮像画像内の対象物までの距離を精度良く測定する。以下、実施形態で使用する2つの測距方法のうちの1つの方法が「サイズ法」と呼ばれ、他の方法が「接地点法」と呼ばれるものとする。
<サイズ法>
まず、サイズ法について、図2ないし図6を用いて説明する。サイズ法は、対象物のサイズ(長さを示す画素数)と距離とが反比例することを利用して、距離の推定を行うものである。このサイズ法は、大きく2つの処理に分かれる。これら2つの処理は、実際に測距を行う前のセットアップ処理と、対象物までの距離を算出する測距処理とである。
まず、サイズ法について、図2ないし図6を用いて説明する。サイズ法は、対象物のサイズ(長さを示す画素数)と距離とが反比例することを利用して、距離の推定を行うものである。このサイズ法は、大きく2つの処理に分かれる。これら2つの処理は、実際に測距を行う前のセットアップ処理と、対象物までの距離を算出する測距処理とである。
セットアップ処理では、測距処理において必要となるパラメータが算出される。そして、測距処理では、撮像画像から対象物として、人や車、自動二輪、自転車などが抽出され、その対象物ごとに、セットアップ処理で算出されたパラメータを用いて、距離が推定(算出)される。
図3を用いて、サイズ法の仕組みを説明する。セットアップ処理において、ユーザ(セットアップを行う者)は、チャート10を、光学系2100の主点13からの距離Za、Zbの位置それぞれで撮影する(Za≠Zb)。図4に、チャート10の例が示されている。実施形態では、チャート10は、細長い棒状のものとし、全長Lc(m)とする。
また、図3に示すように、距離Zaの位置のチャート10を撮像した撮像画像のY方向(縦方向)の画素数(両端矢印で示す)における、チャート10の占めるY方向の画素数(画素サイズ)をYaとし、距離ZBの位置のチャート10を撮像した撮像画像における、チャート10の占めるY方向の画素数をYbとすると、パラメータである定数Cが、以下の式(1)で算出される。
Za×Ya÷Lc=(Zb×Yb÷Lc)=C ・・・(1)
なお、式(1)の( )内は、求めなくてもよい。
Za×Ya÷Lc=(Zb×Yb÷Lc)=C ・・・(1)
なお、式(1)の( )内は、求めなくてもよい。
次に、測距処理においては、定数Cを用いて、対象物11までの距離が算出される。対象物11までの距離をZとし、対象物11の画素数をYpとし、対象物11の高さ(実際の高さ)をLpとすると、以下の式(2)により、距離Zが算出される。
Z=C÷(Yp÷Lp) ・・・(2)
つまり、対象物の高さLpが分かれば、距離が算出できることになる。したがって、このサイズ法では、対象物の高さLpが、対象物の種類ごとに「基準サイズ(基準長)」として予め決められ、基準サイズに基づいて、対象物までの距離が算出される。
Z=C÷(Yp÷Lp) ・・・(2)
つまり、対象物の高さLpが分かれば、距離が算出できることになる。したがって、このサイズ法では、対象物の高さLpが、対象物の種類ごとに「基準サイズ(基準長)」として予め決められ、基準サイズに基づいて、対象物までの距離が算出される。
この対象物ごとの基準サイズは、対象物において変動の少ない向き(方向)で仮定される。つまり、対象物ごとのばらつき(実際の人の違いなど)や、時間による変化が生じ難い安定した向きに沿って基準サイズが設定される。対象物が人の場合、人の動き(向き)によって横幅は、安定せず、持ち物の影響などからも横幅は、安定しない。自転車や自動二輪は、撮影時の向き(画像に写った対象物の向き)などの影響で、横幅は、安定しない。一方、車は、車種の違い(普通車とトラックの違いなど)で高さが大きく異なるが、横幅は、おおよそ同じサイズ(長さ)である。
したがって、人や自転車などは、高さを基準として基準サイズが設定され、車などは、幅を基準として基準サイズが設定される。実施形態では、基準サイズを、例えば、車は、幅2m(メートル)と、人は、高さ1.7mと、自動二輪は、高さ1.7mと、自転車は、高さ1.7mとそれぞれ仮定する。
図2に、基準サイズを管理する対象物サイズ情報テーブル1610の構成およびその内容の例が示されている。このテーブルは、後述する画像処理部1000の対象物サイズ情報記憶部1600に記憶されているものであり、画像処理部1000が距離を算出する際に参照される。
対象物サイズ情報テーブル1610は、種類1611、基準サイズ1612、および、方向1613を有する。種類1611は、対象物の種類を示す。基準サイズ1612は、種類1611が示す種類の基準サイズを示し、方向1613は、その向きを示す。
ここで、図4のチャート10について説明する。実施形態のチャート10の全長Lcは、例えば2mであり、0.2mの白部と黒部とが交互に全部で10個配置されている。また、各白部には、それぞれ異なるマーク20が付されている。マーク20は、チャート10の一部のみが撮影された場合に、後述する接地点法のパラメータを求める際に使用される。
図5は、チャート10が撮像された撮像画像を示す。図5Aは、チャート10の一部が撮像された撮像画像を示し、図5Bは、チャート10の全体が撮像された撮像画像を示す。例えば、図5Aは、図3の距離Za、例えば2mの位置のチャート10の撮像画像であり、図5Bは、距離Zb、例えば3mの位置のチャート10の撮像画像である。
図5Aに示すように、撮像画像にチャート10の一部分しか写っていなかったとしても、白部と黒部とが交互に配置されていることから、チャート10の全長Lcを求めることが可能となる。つまり、撮像画像に写っている部分の、チャート10の全長Lcに対する割合が分かるので、その割合から、チャート10の全長Lcの画素数が算出される。例えば、白部および黒部が7つ写っているので、それらの画素数は、Lcの画素数の7割(Y1)であることが分かり、それらの画素数に7分の10を乗算することでLcの画素数(Ya)が算出されることになる。
図6には、測距処理により各対象物までの距離を求める例が示されている。図6に示すように、各対象物の画素数が検出され、上記式(2)が用いられることで、それぞれの対象物までの距離が算出される。例えば、対象物が「人」の場合は、縦の画素数Yp1、Yp2が検出され、対象物が「車」の場合は、横の画素数Yp3、Yp4が検出される。そして、例えば、撮像画像の左側のように、画素数Yp1の対象物「人」と、の画素数Yp2の対象物「人」が検出された場合、画素数Yp1の方が画素数Yp2よりも大きい場合は、画素数Yp1の対象物「人」まで距離は、画素数Yp2の対象物「人」までの距離よりも短く算出されることになる。
なお、撮像画像から対象物を抽出する方法は、パターンマッチング等の従来技術により抽出するものとする。また、ニューラルネットを利用した抽出方法が用いられても良い。本実施形態では、対象物が人や自転車等である場合では、その高さ(縦向きの画素数)が、分かればよく、車等の場合では、横幅(横向きの画素数)が分かればよい。なお、車の横幅は、車の対称性、例えば、テールランプやタイヤ等から、容易に検出できる。
<接地点法>
次に、接地点法について、図7ないし図9を用いて説明する。接地点法は、人の足や車のタイヤ部など路面に設置する部分は、距離が遠くになるほど画像上部に位置することを利用して、距離を推定する方法である。
次に、接地点法について、図7ないし図9を用いて説明する。接地点法は、人の足や車のタイヤ部など路面に設置する部分は、距離が遠くになるほど画像上部に位置することを利用して、距離を推定する方法である。
接地点法も、サイズ法と同様に、大きく2つの処理に分かれる。これら2つの処理は、実際に測距を行う前のセットアップ処理と、対象物までの距離を算出する測距処理とである。接地点法のセットアップ処理でも、サイズ法と同様に、測距処理において必要となるパラメータの算出が行われる。そして、測距処理では、撮像画像から対象物として、人や車、自動二輪、自転車などが抽出され、その対象物ごとに、セットアップ処理で算出したパラメータを用いて、距離が推定される。
図7を用いて、接地点法の仕組みを説明する。セットアップ処理において、ユーザは、チャート10を、光学系2100の主点13からの距離Za、Zbの位置それぞれで撮影する。チャート10は、サイズ法と同じく、図4に示す全長Lcのチャート10である。
図7に示すように、まず、撮像画像内のチャート10の位置から、撮像画像の上下端それぞれの路面からの実際の高さが算出される。
図7における撮像画像20、撮像画像21は、それぞれ、距離Za、距離Zbに設置されたチャート10の撮像画像である。チャート10の下辺に接する破線は、地面(Y=0)を示し、その上の破線は、無限遠での地面(Y=Ys)を示す。
まず、チャート10の全長Lcに基づいて、撮像画像20の上端位置Yat、および、下端位置Yabが算出され、撮像画像21の上端位置Ybt、および、下端位置Ybbが算出される。
図8に、チャート10が撮像された撮像画像が示されている。図8Aは、図7の撮像画像20を示し、図8Bは、撮像画像21を示す。
図8Aに示すように、撮像画像にチャート10の上部しか写っていなかった場合には、白部と黒部との数から、写っている部分の全長Lcに対する割合が求められる。その割合から、撮像画像20の上端位置Yat、および、下端位置Yabが算出される。撮像画像に写っていない長さが、下端位置Yabとなる。撮像画像にチャート10の中央部分しか写っていなかった場合には、白部に設けられているマーク20から、その白部が下から何番目の白部であるかが分かるので、下端位置Yabが算出される。
図8Bに示すように、チャート10の全長Lcが写っている場合には、チャート10の撮像画像の高さに対する割合と位置から、撮像画像21の上端位置Ybt、および、下端位置Ybbが算出される。
そして、撮像画像20の上端と撮像画像21の上端とを結ぶ上端の式(Y=At×Z+Ys)に、(Za、Yat)および(Zb、Ybt)を代入することで、傾きAtと切片Ysが求められる(以下の式(3-1)、式(3-2)参照)。
At=(Ybt-Yat)÷(Zb-Za) ・・・(3-1)
Ys=Yat-Za×(Ybt-Yat)÷(Zb-Za) ・・・(3-2)
At=(Ybt-Yat)÷(Zb-Za) ・・・(3-1)
Ys=Yat-Za×(Ybt-Yat)÷(Zb-Za) ・・・(3-2)
同様に、撮像画像20の下端と撮像画像21の下端とを結ぶ下端の式(Y=Ab×Z+Ys’)に、(Za、Yab)および(Zb、Ybb)を代入することで、傾きAbと切片Ys’が求められる(以下の式(4-1)、式(4-2)参照)。
Ab=(Ybb-Yab)÷(Zb-Za) ・・・(4-1)
Ys’=Yat-Za×(Ybb-Yab)÷(Zb-Za) ・・・(4-1)
Ab=(Ybb-Yab)÷(Zb-Za) ・・・(4-1)
Ys’=Yat-Za×(Ybb-Yab)÷(Zb-Za) ・・・(4-1)
セットアップ処理では、上端の傾きAt、切片Ys、下端の傾きAb、切片Ys’がパラメータとして求められる。なお、主点13(0、Ys)、撮像画像20の上端(Za、Yat)、撮像画像21の上端(Zb、Ybt)の3点を最小自乗近似して、上端の式が求められてもよい。下端の式も同様である。
次に、測距処理において、撮像画像22に写った対象物11までの距離が算出される。対象物11までの距離をZとし、撮像画像22の高さをh(画素)とし、対象物11の接地点のY座標をp(画素)とすると、以下の式(5)が導き出せ、式(6)により、距離Zが算出される。
(At×Z+Ys)÷(At×Z+Ys-Ab×Z-Ys’)=p÷h ・・・(5)
Z=(Ys×h-(Ys-Ys’)÷p)÷((At-Ab)p-At×h) ・・・(6)
(At×Z+Ys)÷(At×Z+Ys-Ab×Z-Ys’)=p÷h ・・・(5)
Z=(Ys×h-(Ys-Ys’)÷p)÷((At-Ab)p-At×h) ・・・(6)
次に、図9に、測距処理により各対象物までの距離を求める例が示されている。図9に示すように、対象物の毎に接地点のY座標P1~P4が見つけられ、上記式(6)が用いられることで、それぞれの対象物までの距離が算出される。
<サイズ法と接地点法の併用>
次に、サイズ法と接地点法との効果的な併用方法について、図10ないし図20を用いて説明する。図10は、接地点法の誤差を説明するための図である。接地点法による距離の誤差は、接地点の算出誤差によって生じる。したがって、接地点の算出誤差が、上下に10画素の誤差が生じた場合を想定する。
次に、サイズ法と接地点法との効果的な併用方法について、図10ないし図20を用いて説明する。図10は、接地点法の誤差を説明するための図である。接地点法による距離の誤差は、接地点の算出誤差によって生じる。したがって、接地点の算出誤差が、上下に10画素の誤差が生じた場合を想定する。
図10のグラフは、横軸は、対象物までの実際の距離を示し、縦軸は、接地点法で求めた(推定した)距離を示す。横軸、縦軸ともに、単位は、メートル(m)である。実線のグラフは、理想的な推定結果を示すグラフである、1点鎖線のグラフは、検出した接地点が上に10画素ずれていた場合の推定結果を示すグラフであり、破線のグラフは、検出した接地点が下に10画素ずれていた場合の推定結果を示すグラフである。これら推定結果は、撮像画像のサイズが640×480画素、カメラの高さが1.5mで、対象物の高さが2mで、水平画角が36.9度で、カメラの傾きが4.57度下向き(空が、撮像画像の上部3分の1)である条件で求めた場合の推定結果である。
図10に示すように、撮像画像サイズが縦480画素で横640画素である場合、例えば、車の振動などの影響で、画像が±10画素上下しただけで、対象物が自車から離れているほど大幅に推定精度が落ちることが分かる。この例の場合、距離推定の誤差25%以下を保証できる算出距離は、距離28mまでである。
この点、サイズ法の場合は、対象物のサイズ(長さを示す画素数)を用いて距離を算出するので、車の振動などで画像が上下してもサイズ自体に変化は、生じないことから、車の振動などは、距離の算出精度に影響を与えないことになる。したがって、サイズ法は、遠距離の場合でも安定して距離を推定できることになる。
次に、図11は、サイズ法の誤差を説明するための図である。サイズ法による距離の誤差は、対象物の実際のサイズと基準サイズとの誤差によって生じる。
つまり、サイズ法は、仮定した基準サイズと、撮像画像内の対象物の実際のサイズが一致していれば精度よく距離を推定できる。しかし、例えば、子供のように基準サイズからの乖離が大きくなると精度が悪くなる。身長1.2mの子供を1.7mと仮定した場合、誤差は、1.7/1.2倍だけ遠くにいると間違えて、距離を算出することになる。なお、対象物の実際のサイズが基準サイズに対しばらつきがある場合、やや小さめに仮定して基準サイズが決定されても良い。例えば、人の伸長にはばらつきがあることから、人の基準サイズは、やや低めの1.5mと仮定される。実際のサイズが1.7mの人を検出して距離を推定した場合、1.5/1.7倍近くにいると間違えるため、人への衝突検知の場合には早めに警告できることとなり、誤差を利点とすることができるからである。
ここで、対象物が人(子供)であり、実際のサイズが1.2mである場合に、基準サイズ1.7mで距離を算出した推定結果が図11に示されている。図11のグラフは、図10のグラフに、サイズ法による推定結果を追加したものである。細かい破線のグラフが、サイズ法による推定結果を示すグラフである。
このグラフから、実際の距離が40mまでの場合では、サイズ法よりも接地点法の方が推定の精度が良いことが分かり、距離が40m以上の場合では、接地点法よりもサイズ法の方が推定の精度が良いことが分かる。
すなわち、サイズ法は、遠距離では精度良く推定できるが、対象物の実際のサイズが仮定した基準サイズからずれている場合には、誤差が大きくなるため、近距離では接地点法を併用することで距離推定精度を向上できる。
例えば、図12に示すように、サイズ法により、対象物までの距離(暫定距離)が40m(閾値Dth1)より近いという算出結果が出た場合には、サイズ法と接地点法とのそれぞれの推定距離に重み付けした結果が、推定距離として出力される。サイズ法により距離が40m以上と算出された場合には、その算出距離が推定距離とされる。ここで、閾値Dth1として用いた40mは、図10のグラフでの接地点法による推定誤差とサイズ法による推定誤差とが逆転する距離である。なお、閾値Dth1を40mに限定するものではない。また、閾値Dth1は、サイズ法で距離を算出する際の対象物の画素数で判定してもよい。さらに、図12では、重み付けの比率は、サイズ法により算出された距離に比例しているが、破線25で示すように、接地点法により推定された距離に対する重み付けが、より重くされても良い。近距離ほど、接地点法の方が推定の精度が高いからである。
また、図13に示すように、最初にサイズ法により距離を推定する代わりに、接地点法により距離が推定され、その推定結果から、重み量が算出されるようにしても良い。この場合、閾値は、距離を算出する際の接地点のY座標(画素)で判定してもよい。
また、例えば、図14に示すように、距離が0mの位置で0.5の重みになるような重み付けが為されても良い。さらに、図15に示すように、例えば、距離(Dth2)が5m以下のような近距離の対象物を測距する場合、サイズ法のみに重み付けが為され、サイズ法のみにより距離が推定されても良い。この5mとは、接地点位置が撮像画像の下端より下にあるような距離である。この場合、サイズ法からの距離が閾値Dth2で判定されても良いが、接地点位置が画像下端である(例えば、車のタイヤが下端をはみ出している)ことが条件とされても良い。
上述の図11ないし図15では、対象物が人(子供)であり、実際のサイズが1.2mである場合に、基準サイズ1.7mで距離を算出した推定結果が示されている。
一方、図16ないし図20には、対象物が車であり、実際のサイズが2.0mである場合に、基準サイズ2.5mで距離を算出した推定結果が示されている。
図16のグラフは、図10のグラフに、対象物が車の場合の、サイズ法による推定結果を追加したものである。細かい破線のグラフが、サイズ法による推定結果を示すグラフである。
このグラフでは、実際の距離が0から35mまでの範囲である場合では、サイズ法よりも接地点法の方が推定の精度が良いことが分かり、実際の距離が35m以上である場合では、接地点法よりもサイズ法の方が推定の精度が良いことが分かる。
したがって、例えば、図17に示すように、対象物が車である場合には、サイズ法により対象物までの距離が35m(閾値Dth3)より近い、という算出結果が出た場合に、サイズ法と接地点法とのそれぞれの推定距離に重み付けした結果が、推定距離として出力されるようにしてもよい。なお、算出結果が35m(閾値Dth3)以上である場合には、サイズ法のみに重み付けが為され、サイズ法のみにより距離が推定される。また、上述の図17での最初にサイズ法により距離が推定される代わりに、図18に示すように、接地点法により距離が推定され、その推定結果から、重み量が算出されようにしても良い。また、上述の図17では距離が0mの位置で重みが0であるが、例えば、図19に示すように、距離が0mの位置で0.5の重みになるような重み付けが為されても良い。さらに、図20に示すように、例えば、距離(Dth4)が5m以下のような近距離の対象物を測距する場合は、サイズ法のみに重み付けが為され、サイズ法のみにより距離が推定されても良い。この5mとは、接地点位置が撮像画像の下端より下にあるような距離である。この場合、サイズ法からの距離を閾値Dth4で判定されても良いが、接地点位置が画像下端である(例えば、車のタイヤが下端をはみ出している)ことが条件とされても良い。
なお、実施形態では、「サイズ法」と「接地点法」とが併用されているが、何れか一方のみで測距処理が実行されてもよい。上述したように、それぞれの方法で、精度よく測距できる距離が異なるので、測距する対象物に応じて、何れかの方法が採用されてもよい。例えば、遠方の対象物のみを測距する場合、サイズ法のみが採用される等である。
<構成>
以下、画像処理部1000の機能的な構成について、図1を用いて説明する。画像処理部1000は、パラメータ算出部1100、距離推定部1200、対象物検出部1300、第1距離算出部1400、第2距離算出部1500、および、対象物サイズ情報記憶部1600を備える。
以下、画像処理部1000の機能的な構成について、図1を用いて説明する。画像処理部1000は、パラメータ算出部1100、距離推定部1200、対象物検出部1300、第1距離算出部1400、第2距離算出部1500、および、対象物サイズ情報記憶部1600を備える。
画像処理部1000は、セットアップ処理を行うセットアップモードと、測距処理を行う測距モードとを有し、ユーザがモードを設定するものとする。
パラメータ算出部1100は、上述の、サイズ法における定数Cを、式(1)を用いて算出し、接地点法における撮像画像の上端の傾きAt、および、切片Ys、下端の傾きAb、および、切片Ys’を、式(3)、(4)を用いて求める。パラメータ算出部1100は、セットアップモードが設定された場合に、実行される。
距離推定部1200は、撮像部2000から取得した撮像画像内の対象物までの距離を算出する機能を有する。距離推定部1200は、対象物検出部1300等の他の機能部を制御し、最終的な推定距離を算出する。距離推定部1200は、測距モードが設定された場合に、実行される。
対象物検出部1300は、距離推定部1200からの依頼により、撮像画像内の対象物を抽出し、対象物の種類と、種類の向き(方向)に応じた画素サイズ(対象物の長さを示す画素数)、対象物の位置座標等を距離推定部1200に渡す機能を有する。
第1距離算出部1400は、距離推定部1200からの依頼により、上述したサイズ法により対象物までの距離を算出し、距離推定部1200に渡す機能を有する。
第2距離算出部1500は、距離推定部1200からの依頼により、上述した接地点法により対象物までの距離を算出し、距離推定部1200に渡す機能を有する。
対象物サイズ情報記憶部1600は、対象物ごとの基準サイズと向きとを記憶しておく機能を有する。具体的には、上述した、対象物サイズ情報テーブル1610(図2参照)を記憶している。
<動作>
以下、画像処理部1000のセットアップ処理について、図21を用いて説明し、測距処理について、図22を用いて説明する。図21は、画像処理部1000のセットアップ処理のフローチャートである。
以下、画像処理部1000のセットアップ処理について、図21を用いて説明し、測距処理について、図22を用いて説明する。図21は、画像処理部1000のセットアップ処理のフローチャートである。
セットアップ処理を行うユーザ(初期設定者)は、まず、画像処理部1000にセットアップモードを指示し、チャート10を撮像部2000から距離Za、例えば2mの位置に設置し、撮像部2000の撮像ボタン(不図示)を押下して、撮像を指示する(ステップS50)。
撮像部2000の撮像素子2200は、光学系2100により結像された光学像をアナログの撮像信号に変換し、A/D変換部2300に出力する。A/D変換部2300は、撮像素子2200から入力したアナログの撮像信号をA/D変換して、デジタルの撮像データ(撮像画像)として画像処理部1000に出力する。
次に、ユーザは、チャート10を撮像部2000から距離Zb、例えば3mの位置に設置し、撮像部2000の撮像ボタン(不図示)を押下して、撮像を指示する(ステップS51)。撮像部2000は、撮像画像を画像処理部1000に出力する。
撮像部2000から、チャート10を距離Zaと距離Zbとに設置して撮像した2枚の撮像画像を取得したパラメータ算出部1100は、上述したように、サイズ法における定数Cを、式(1)を用いて算出し、接地点法における撮像画像の上端の傾きAt、および、切片Ys、下端の傾きAb、および、切片Ys’を、式(3)、(4)を用いて算出する(ステップS52)。パラメータ算出部1100は、算出したこれらのパラメータを、画像処理部1000の内部の記憶領域に記憶する。この記憶領域は、画像処理部1000の各機能部から参照可能とする。
各パラメータを記憶領域に記憶させたパラメータ算出部1100は、セットアップが完了した旨を出力部3000に出力する。
次に、測距処理について説明する。図22は、画像処理部1000の測距処理のフローチャートである。
ユーザは、まず、画像処理部1000に測距モードを指示する。撮像部2000は、所定の周期で、撮像画像を画像処理部1000に出力し、画像処理部1000の距離推定部1200は、撮像画像を取得する(ステップS10)。
撮像画像を取得した距離推定部1200は、対象物検出部1300に対象物の検出を依頼する。依頼を受けた対象物検出部1300は、撮像画像内の対象物、すなわち、人、車、自転車、自動2輪等を抽出し、抽出した対象物の数、対象物それぞれの種類、種類の向き(方向)に応じた画素サイズ、位置座標等の情報を、距離推定部1200に渡す(ステップS11)。対象物検出部1300は、対象物サイズ情報記憶部1600の対象物サイズ情報テーブル1610(図2参照)を参照して、対象物の種類に応じた向きの画素数を求める。例えば、種類が「人」である場合は、種類1611として「人」が設定されているレコードから、方向1613として設定されている「高さ」を読み出し、抽出した対象物の高さの画素数を求める。
次に、距離推定部1200は、対象物検出部1300から渡された対象物それぞれについて、ステップS12からステップS18までの処理を行って、距離を推定(決定)する。
距離推定部1200は、1つの対象物が「人」(自転車、自動2輪を含むものとする)であるのか「車」であるのかを判断し、閾値と基準サイズを設定する。具体的には、対象物が「人」である場合では(ステップS12:「人」)、距離推定部1200は、閾値を40mとし、対象物サイズ情報テーブル1610を参照して基準サイズを「1.7m」とする(ステップS14)。また、対象物が「車」である場合では(ステップS12:「車」)、距離推定部1200は、閾値を35mとし、対象物サイズ情報テーブル1610を参照して基準サイズを「2.0m」とする(ステップS13)。
次に、距離推定部1200は、第1距離算出部1400に対象物までの距離の算出を依頼する。依頼を受けた第1距離算出部1400は、上述のサイズ法で説明したように、対象物までの距離を算出し、暫定距離として距離推定部1200に渡す(ステップS15)。
距離推定部1200は、第1距離算出部1400から受け取った暫定距離が、閾値以上である場合では(ステップS16:Yes)、暫定距離を対象物までの距離と決定する(ステップS18)。
一方、第1距離算出部1400から受け取った暫定距離が、閾値より小さい場合では(ステップS16:No)、距離推定部1200は、第2距離算出部1500に対象物までの距離の算出を依頼する。依頼を受けた第2距離算出部1500は、上述の接地点法で説明したように、対象物までの距離を算出し、暫定距離として距離推定部1200に渡す(ステップS17)。
第2距離算出部1500から暫定距離を受け取った距離推定部1200は、第1距離算出部1400から受け取った暫定距離(第1距離)と、第2距離算出部1500から受け取った暫定距離(第2距離)とに、例えば、図12に示す重み付けを行って、対象物までの距離を決定する(ステップS18)。
ステップS18で、対象物までの距離を決定した距離推定部1200は、対象物検出部1300から渡された他の対象物がある場合には(ステップS19:No)、ステップS12から処理を行い、すべての対象物について距離を決定したら(ステップS19:Yes)、対象物ごとの距離を出力部3000に出力する(ステップS20)。
ユーザにより測距処理の終了指示が無い場合は(ステップS21:No)、ステップS10からの処理が繰り返えされ、終了指示があった場合は(ステップS21:Yes)、処理が終了される。
なお、実施形態では、サイズ法で求めた距離と閾値とを比較することとしたが、ステップS15において接地点法で距離が求められても良い。
<実施形態2>
実施形態1では、撮像画像内の対象物それぞれについて距離が算出されたが、実施形態2では、対象物のグループ化が行われ、グループ毎に距離が算出される。接地点位置が略同一である対象物が、1つのグループとされる。
実施形態1では、撮像画像内の対象物それぞれについて距離が算出されたが、実施形態2では、対象物のグループ化が行われ、グループ毎に距離が算出される。接地点位置が略同一である対象物が、1つのグループとされる。
図23には、同一種類の対象物をグループ化した例が示されている。例えば、種類が「人」である対象物30と、種類が「人」である対象物31とが、検出され、対象物30と対象物31の接地点がほぼ同じ、例えば、±3画素以内である場合に、この2つの対象物が1つのグループとされる。ほぼ同じ接地点位置のこのような2人は、並行して歩いているほぼ同じ距離にいる人であり、その画素サイズ差は、身長差である。そこで、接地点が±3画素以内と略同一とみなせる対象物は、グループ化され、その平均サイズで、サイズ法により対象物までの距離が推定される。ここでは、人を例として示したが、他の対象物(自転車どうし、車どうし等)でも良い。
また、図24には、異なる種類の対象物を同一グループとする例が示されている。例えば、種類が「人」である対象物32と、種類が「車」である対象物33とが、検出され、対象物30と対象物31との各接地点が略同じ、例えば、±3画素以内である場合に、この2つの対象物が1つのグループとされる。
このように人と車との接地点位置が略同じである場合には、画素サイズを基準サイズで正規化した上で平均化することで、グループ化して距離が算出できる。例えば、車の横幅2m(基準サイズ)が30画素、人の高さ1.7m(基準サイズ)が28画素であるとすると、車は、1mあたり15画素、人は、1mあたり16.47画素と計算できる。これを平均化すると1mあたり15.74画素となる。したがって、車の横幅は、31.47画素と修正でき、人の高さは、26.75画素と修正でき、対象物32と対象物33とは、同一の距離として推定される。
このようなグループ化処理は、例えば、実施形態1の対象物検出部1300が行うこととする。
実施形態1では、図22に示すフローチャートのステップS11において、対象物検出部1300は、撮像画像内の対象物、すなわち、人、車、自転車、自動2輪等を抽出し、抽出した対象物の数と、対象物それぞれの種類と、種類の向き(方向)に応じた画素サイズとを検出して、距離推定部1200に渡していた。実施形態2では、対象物検出部1300は、対象物を抽出すると、対象物をグループ化して、グループ毎に画素サイズを補正する。
図23は、グループ化処理のフローチャートを示す。この処理は、実施形態1の図22のフローチャートにおけるステップS11の処理として行われる。
対象物検出部1300は、撮像画像から対象物を抽出し(ステップS30)、各対象物の接地点を求める(ステップS31)。そして、対象物検出部1300は、接地点が所定範囲、例えば3画素内にある対象物をグループ化する(ステップS32)。
次に、対象物検出部1300は、グループを構成する対象物の種類が同じである場合には(ステップS33:「人/車」(同一種類))、各対象物の画素サイズの平均を算出し、対象物の画素サイズとする(ステップS34)。
一方、グループを構成する対象物の種類が異なる場合には(ステップS33:「人&車」)、対象物検出部1300は、各対象物の1m当たりの画素数を算出し(ステップS35)、画素数の平均を求める(ステップS36)。そして、対象物検出部1300は、各対象物の画素サイズを算出する(ステップS37)。
対象物検出部1300は、各グループに対して、ステップS33からの処理を行い(ステップS38:No)、すべてのグループを構成する対象物の画素サイズを求める(ステップS38:Yes)。
<実施形態3>
実施形態3では、撮像画像から抽出された対象物のうち、距離を算出することが不可能な対象物、言いかえれば、距離を算出しない対象物を選別する方法を説明する。
実施形態3では、撮像画像から抽出された対象物のうち、距離を算出することが不可能な対象物、言いかえれば、距離を算出しない対象物を選別する方法を説明する。
図26に示すように、接地点位置(画素)とサイズの画素数との関係が、対象物の画素サイズとして現実的でない組み合わせのものが、距離算出不能と判定される。この判定は、図26に示すように2つある。
1つ目は、遠くにある巨大な対象物50を距離算出不能な対象物であるとする判定であり、2つ目は、近くにある極めて小さい対象物51を距離算出不能な対象物であるとする判定である。具体的には、それぞれ閾値を設けて、接地点位置が閾値Pth1以下であり、対象物の画素サイズが閾値Sth1以上である場合に、距離算出不能が判定される。例えば、このような距離算出不能な対象物は、図26に示す対象物50である。また、接地点位置が閾値Pth2以上であり、対象物の画素サイズが閾値Sth2以下である場合に、距離算出不能が判定される。例えば、このような距離算出不能な対象物は、図26に示す対象物51である。
接地点法によって或る距離における撮像画像内の位置を求めることができ、その距離に対象物が在る場合の画素サイズを対象物の基準サイズから求めることができる。これらから、閾値が設定される。例えば、所定の距離における撮像画像内の位置が閾値Pth1とされ、所定距離にいる人(基準サイズ1.7m)の画素サイズがSth1とされるなどである。
この判定は、例えば、実施形態1では対象物検出部1300が行う。
<実施形態4>
実施形態4では、図28の撮像画像60に現れている歪曲収差を補正する方法を説明する。図27には、実施形態4の画像処理システム構成が示されている。実施形態1の図1と異なる点は、撮像部2000に歪曲収差補正部2400が追加され、また、画像処理部1000に歪曲収差補正情報記憶部1700が追加されている点である。ただし、歪曲収差補正部2400と歪曲収差補正情報記憶部1700とは、以下に説明する2つの方法それぞれにおいて、いずれか一方が設けられるものとする。
実施形態4では、図28の撮像画像60に現れている歪曲収差を補正する方法を説明する。図27には、実施形態4の画像処理システム構成が示されている。実施形態1の図1と異なる点は、撮像部2000に歪曲収差補正部2400が追加され、また、画像処理部1000に歪曲収差補正情報記憶部1700が追加されている点である。ただし、歪曲収差補正部2400と歪曲収差補正情報記憶部1700とは、以下に説明する2つの方法それぞれにおいて、いずれか一方が設けられるものとする。
1つの方法は、図27に示すように、撮像部2000に歪曲収差補正部2400を設け、撮像部2000から画像処理部1000に歪曲収差補正を行った撮像画像61(図28参照)を出力する方法である。つまり、セットアップの際には、歪曲収差補正を行った撮像画像を基にパラメータ算出が実行され、測距の際にも、歪曲収差補正を行った撮像画像を基に、距離推定が実行される。歪曲収差補正部2400は、例えば、レンズ設計データから算出される歪み量を元に、歪曲収差を補正する。
2つ目の方法は、画像処理部1000において、測距の際に、歪曲収差補正を行う代わりに、歪曲収差による画像への影響を記載したLUT(ルックアップテーブル)を予め用意しておき、対象物の座標値(検出サイズや接地点画素位置)を補正して、距離推定を行う方法である。この場合、セットアップ処理においてパラメータを求める際には、撮像部2000の歪曲収差補正部2400によって歪曲収差補正を行った撮像画像が用いられ、測距処理において、歪曲収差補正を行わない撮像画像が用いられる。
歪曲収差補正情報記憶部1700は、上述のLUTを記憶しておくものであり、図29に、LTUの例を示す。
図29Aは、撮像画像の座標系を示す図であり、左上が(0、0)である。また、撮像画像の画素サイズは、X方向が640画素、Y方向が480画素である。図29Bは、第1補正テーブル(サイズ法)1710の構成および内容の例を示し、図29Cは、第2補正テーブル(接地点法)1720の構成および内容の例を示す。
第1補正テーブル(サイズ法)1710は、サイズ法を行う場合の補正テーブルであり、撮像画像の座標位置に対する画素サイズの拡大率(倍率)が設定されている。第1補正テーブル(サイズ法)1710は、X座標1711、Y座標1712、X方向拡大率1713、および、Y方向拡大率1714を備える。歪曲収差は、縦横で伸び縮み量(拡大率)が異なるため、縦横(X軸方向、Y軸方向)それぞれを個別に、テーブルに設定しておく。X座標1711、および、Y座標1712は、それぞれ撮像画像の座標位置のX座標、Y座標を示す。X方向拡大率1713、および、Y方向拡大率1714は、それぞれ、X座標1711、および、Y座標1712で示される座標位置に対する、X軸方向の拡大率、Y軸方向の拡大率を示す。X方向拡大率1713は、対象物の種類が「車」である場合に用いられ、Y方向拡大率1714は、対象物の種類が「人」、「自転車」等である場合に用いられる。
第1補正テーブル(サイズ法)1710のレコード70は、撮像画像の左上の座標(0、0)の拡大率を示すレコードであり、レコード71は、撮像画像の中心の座標(320、240)の拡大率を示すレコードである。例えば、「人」の対象物の画素サイズが100画素であり、その中央の画素(50画素目)が撮像画像の座標位置(320、240)にあるとする。その場合、その対象物の画素サイズは、100×1.21=121画素として、距離が算出される。
第2補正テーブル(接地点法)1720は、接地点法を行う場合の補正テーブルであり、撮像画像の座標位置に対する接地点座標位置(補正後のY座標)が設定されている。第2補正テーブル(接地点法)1720は、X座標1721、Y座標1722、および、補正後Y座標1723を備える。X座標1721、および、Y座標1722は、それぞれ撮像画像の座標位置のX座標、Y座標を示す。補正後Y座標1723は、X座標1721、および、Y座標1722で示される座標位置に対する、補正後のY座標を示す。
第2補正テーブル(接地点法)1720のレコード72は、撮像画像の左上の座標(0、0)の拡大率を示すレコードであり、レコード73は、撮像画像の中心の座標(320、240)の拡大率を示すレコードである。例えば、「人」の対象物の接地点の座標が(0、0)である場合、Y座標が-30.5として、距離が算出される。
図29Bおよび図29Cに示す第1補正テーブル(サイズ法)1710および第2補正テーブル(接地点法)1720を用いる場合の、測距処理のフローチャートが図30に示されている。図30のフローチャートは、実施形態1の図22のフローチャートに、上述した補正処理を追加したものである。距離推定部1200は、ステップS40において、第1補正テーブル(サイズ法)1710を用いた対象物の画素サイズの補正を行い、ステップS41において、第2補正テーブル(接地点法)1720を用いた対象物の接地点位置の補正を行う。
上述の図29では、画像座標位置に対するサイズ拡大率や接地点座標位置を示すLUTを用いる例が示されたが、図31のように、補正テーブルとして、距離算出後の距離データ自体が補正されてもよい。この場合は、セットアップ処理、および、測距処理において、歪曲収差補正を行わない撮像画像が用いられる。
図31Aは、撮像画像の座標系を示す図であり、左上が(0、0)である。また、撮像画像の画素サイズは、X方向が640画素、Y方向が480画素である。図31Bは、第1補正テーブル(サイズ法)1730の構成および内容の例を示し、図31Cは、第2補正テーブル(接地点法)1740の構成および内容の例を示す。
第1補正テーブル(サイズ法)1730は、サイズ法を行う場合の補正テーブルであり、算出した距離の補正係数が設定されている。第1補正テーブル(サイズ法)1730は、X座標1731、Y座標1732、X方向距離補正係数1733、および、Y方向距離補正係数1734を備える。X座標1731、および、Y座標1732は、それぞれ撮像画像の座標位置のX座標、Y座標を示す。X方向距離補正係数1733は、X方向の距離、すなわち、対象物の種類が「車」である場合に用いられる係数を示す。Y方向距離補正係数1734は、X方向の距離、すなわち、対象物の種類が対象物の種類が「人」、「自転車」等である場合に用いられる係数を示す。
第1補正テーブル(サイズ法)1730のレコード80は、X方向距離補正係数1733、および、Y方向距離補正係数1734として「‐」が設定されている。これは、撮像画像の上方は、空の画像であることから、距離は、算出不能であることを示す。レコード81は、撮像画像の中心の座標(320、240)の補正係数を示すレコードである。例えば、距離が10mと算出された「人」の対象物が撮像画像の座標位置(320、240)にあるとする。その場合、その対象物までの距離は、10×1.21=12.1mとする。
第2補正テーブル(接地点法)1740は、接地点法を行う場合の補正テーブルであり、撮像画像の座標位置に対する補正係数が設定されている。第2補正テーブル(接地点法)1740は、X座標1741、Y座標1742、および、距離補正係数1743を備える。X座標1741、および、Y座標1742は、それぞれ撮像画像の座標位置のX座標、Y座標を示す。距離補正係数1743は、X座標1721、および、Y座標1722で示される座標位置に対する、距離の補正係数を示す。
第2補正テーブル(接地点法)1740のレコード82は、距離補正係数1743として「‐」が設定されている。これは、撮像画像の上方は、空の画像であることから、距離は算出不能であることを示す。レコード83は、撮像画像の中心の座標(320、240)の補正係数を示すレコードである。例えば、距離が10mと算出された「人」の対象物の接地点の座標が(320、320)であるとする。その場合、その対象物までの距離は、10×1.12=11.2mとする。
図31B、Cの第1補正テーブル(サイズ法)1730および第2補正テーブル(接地点法)1740を用いる場合の、測距処理のフローチャートが図32に示されている。図32のフローチャートは、実施形態1の図22のフローチャートに、上述した補正処理を追加したものである。距離推定部1200は、ステップS15において第1距離算出部1400が求めた距離を、ステップS42において、第1補正テーブル(サイズ法)1730を用いて補正する。距離推定部1200は、ステップS17において第2距離算出部1500が求めた距離を、ステップS43において、第2補正テーブル(接地点法)1740を用いて補正する。
図29ないし図32で説明したように、撮像画像自体に対して歪曲収差補正を行わずに、距離を算出する際に必要最小限の値だけを補正することで、回路規模削減や、ソフトウェアでの処理の高速化が可能となる。また、性能の比較的低いCPUを用いることが可能となり、低価格化を実現することが可能となる。
本明細書は、上記のように様々な態様の技術を開示しているが、そのうち主な技術を以下に纏める。
一態様にかかる画像処理方法は、撮像された撮像画像内の対象物までの、撮像位置からの距離を計測する画像処理方法であって、前記撮像画像における前記対象物の種類を検出する対象物検出ステップと、前記撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、前記撮像画像における前記対象物の長さと、前記対象物検出ステップで検出された種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離を算出する第1距離算出ステップとを備える。
他の一態様にかかる画像処理装置は、撮像された撮像画像内の対象物までの、撮像位置からの距離を計測する画像処理装置であって、前記対象物の種類ごとに、基準長を記憶している記憶部と、前記撮像画像における前記対象物の種類を検出する対象物検出部と、前記撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、前記撮像画像における前記対象物の長さと、前記記憶部に記憶されている当該対象物の基準長とに基づいて、前記対象物までの距離を算出する距離算出部とを備える。
他の一態様にかかる画像処理プログラムは、撮像された撮像画像内の対象物までの、撮像位置からの距離を計測する画像処理装置で用いられる画像処理プログラムであって、前記対象物の種類ごとに、基準長を記憶している記憶手段と、前記撮像画像における前記対象物の種類を検出する対象物検出手段と、前記撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、前記撮像画像における前記対象物の長さと、前記記憶手段に記憶されている当該対象物の基準長とに基づいて、前記対象物までの距離を算出する距離算出手段と、してコンピュータを機能させる。
このような画像処理方法、画像処理装置および画像処理プログラムによれば、対象物の種類ごとに予め基準長(現実の長さ)を定めておいて、撮像画像における対象物の長さ(画素数)を用いて撮像画像内の対象物までの距離を算出するので、撮像された撮像画像内の対象物までの距離を精度よく算出することが可能となる。つまり、例えば撮像画像を撮像する際にカメラ等の撮像装置が上下にぶれて、撮像画像内の対象物の位置が上下にずれた場合であっても、対象物の撮像画像内での画素数は、変わらないので、算出した距離は、変わらないからである。なお、対象物の長さは、画素数で表されても、撮像画像の画素数に占める割合で表されてもよく、それに基づいて距離を算出できるものであればよい。
他の一態様では、上述の画像処理方法において、前記対象物の長さは、前記対象物の種類に応じた方向における前記撮像画像における長さであり、前記基準長は、前記対象物の種類に応じた方向の長さであることが好ましい。
これによれば、対象物の種類ごとに、測距に用いる長さの方向が異なるので、対象物の動き等による変化の少ない方向の長さを用いることで、より精度よく距離を算出することが可能となる。
他の一態様では、上述の画像処理方法において、前記対象物の種類が、人、自転車、および、自動二輪のうちのいずれかである場合は、前記対象物の種類に応じた方向は、縦方向(それらが立っている場合の上下方向)であることが好ましい。
これによれば、対象物が人、自転車、自動二輪の場合は、変化が少ない縦方向の長さを用いるので、より精度よく距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記対象物の種類が、車である場合は、前記対象物の種類に応じた方向は、横方向(幅方向、前後方向に対し直交する方向)であるあることが好ましい。
これによれば、対象物が車の場合は、変化が少ない横方向の長さ、すなわち、車幅を用いるので、より精度よく距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記撮像画像における撮像範囲と前記対象物の接地点とに基づいて、前記対象物までの距離を算出する第2距離算出ステップと、前記第1距離算出ステップおよび前記第2距離算出ステップのいずれか一方で算出した前記対象物までの暫定距離が閾値(距離閾値)を下回る場合、前記第1距離算出ステップによって算出した第1距離と前記第2距離算出ステップによって算出した第2距離とを用いて、前記対象物までの距離を算出し、前記暫定距離が前記閾値以上の場合、前記第1距離算出ステップによって算出した第1距離を前記対象物までの距離とする距離推定ステップとを、さらに備えることが好ましい。
これによれば、対象物までの距離が閾値を下回る、つまり、対象物が近い場合は、対象物の長さ(画素数)を用いて算出した距離と共に、対象物の接地点を用いて算出した距離も併用して対象物までの距離を算出するので、より精度よく距離を算出することが可能となる。対象物が近距離に在る場合は、撮像画像内の対象物の位置の上下のずれが少ない為、対象物の接地点を用いて算出した場合の距離は、精度が高いことが多いからである。
他の一態様では、上述の画像処理方法において、前記距離推定ステップは、前記第1距離と前記第2距離とを用いて、前記対象物までの距離を算出する場合に、前記暫定距離が短い程、前記第1距離よりも前記第2距離により重い重み付けを行い、前記対象物までの距離を算出することが好ましい。
これによれば、対象物までの距離が短い程、対象物の接地点を用いて算出した距離の重み付けを重くするので、より精度よく距離を算出することが可能となる。対象物が近距離に在る程、撮像画像内の対象物の位置の上下のずれが少なく、算出する距離の精度が高いからである。
他の一態様では、これら上述の画像処理方法において、前記閾値は、前記対象物の種類に応じて異なることが好ましい。
これによれば、対象物に応じた距離(閾値)で、対象物の接地点を用いて算出した距離を併用するか否かを判断するので、より精度よく距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記対象物は、複数であり、前記第1距離算出ステップは、前記撮像画像における縦方向の所定範囲に接地点が在る対象物が同一種類である場合には、各対象物の前記撮像画像における長さを平均した長さと、前記対象物の種類に応じて予め定められている基準長とに基づいて、前記対象物までの距離を算出することが好ましい。
これによれば、同一種類の対象物が、ほぼ同じ位置に在る場合は、それらの対象物の長さ(画素数)の平均値を用いて距離を算出するので、それら対象物について、誤差が小さい距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記第1距離算出ステップは、前記撮像画像における縦方向の所定範囲に接地点が在る対象物が異なる種類である場合には、各対象物の前記撮像画像における長さを前記種類に応じて予め定められている対象物の基準長で正規化して平均した値を用いて、各対象物の前記長さを修正し、修正した後の長さと、前記種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離を算出することが好ましい。
これによれば、異なる種類の対象物が、ほぼ同じ位置に在る場合は、それらの対象物の長さ(画素数)を正規化した上で平均した値を用いて距離を算出するので、それら対象物について、誤差が小さい距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記対象物の接地点が、前記撮像画像の上下方向の第1位置より上にあり、且つ、前記撮像画像における前記対象物の長さが、第1閾値(第1長さ閾値)より大きい場合、または、前記対象物の接地点が、前記第1位置より下にある第2位置より下にあり、且つ、前記対象物の長さが、第1閾値より小さい第2閾値(第2長さ閾値)より小さい場合は、前記対象物までの距離を計測しないことが好ましい。
これによれば、撮像画像内の対象物のうち、現実に存在し得ない対象物を判断できるので、測距の対象から外すことが可能となる。
他の一態様では、これら上述の画像処理方法において、前記撮像画像は、光学系を有する撮像部により撮像され、前記光学系による歪曲収差が補正された撮像画像であることが好ましい。
これによれば、歪曲収差補正後の撮像画像内の対象物までの距離を算出するので、より精度よく距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記撮像画像は、光学系を有する撮像部により撮像された撮像画像であり、前記第1距離算出ステップは、前記撮像画像における前記対象物の長さを、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と補正座標とを対応付けた補正情報に基づいて補正し、補正後の長さと前記基準長とに基づいて、前記対象物までの距離を算出することが好ましい。
これによれば、歪曲収差のある撮像画像内の対象物の長さ(画素数)を、補正情報を用いて補正し、補正後の長さ(画素数)を用いて距離を算出するので、より簡便に、歪曲収差を補正した撮像画像を用いた場合と同等の精度で、距離を算出することが可能となる。
他の一態様では、上述の画像処理方法において、前記第2距離算出ステップは、前記撮像画像における前記対象物の接地点を、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と補正座標とを対応付けた補正情報に基づいて補正し、前記撮像画像における撮像範囲と補正後の接地点とに基づいて、前記対象物までの距離を算出することが好ましい。
これによれば、歪曲収差のある撮像画像内の接地点(座標値)を、補正情報を用いて補正し、補正後の座標値を用いて距離を算出するので、より簡便に、歪曲収差を補正した撮像画像を用いた場合と同等の精度で、距離を算出することが可能となる。
他の一態様では、これら上述の画像処理方法において、前記撮像画像は、光学系を有する撮像部により撮像された撮像画像であり、前記第1距離算出ステップは、前記撮像画像における前記対象物の長さと、前記対象物検出ステップで検出された種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離を算出し、算出した距離を、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と補正座標とを対応付けた補正情報に基づいて補正し、補正後の距離を前記対象物までの距離とすることが好ましい。
他の一態様では、上述の画像処理方法において、前記第2距離算出ステップは、前記撮像画像における撮像範囲と前記対象物の接地点とに基づいて、前記対象物までの距離を算出し、算出した距離を、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と倍率とを対応付けた補正情報に基づいて補正し、補正後の距離を前記対象物までの距離とすることが好ましい。
これによれば、歪曲収差のある撮像画像を用いて算出した距離を、補正情報を用いて補正するので、より簡便に、歪曲収差を補正した撮像画像を用いた場合と同等の精度で、距離を算出することが可能となる。
他の一態様にかかる撮像装置は、対象物を含む被写体を撮像する撮像部と、上述の画像処理装置とを備える。
これによれば、撮像部で撮像した撮像画像内の対象物までの距離を、より精度よく算出することが可能となる。
この出願は、2013年4月16日に出願された日本国特許出願特願2013-85905を基礎とするものであり、その内容は、本願に含まれるものである。
本発明を表現するために、上述において図面を参照しながら実施形態を通して本発明を適切且つ十分に説明したが、当業者であれば上述の実施形態を変更および/または改良することは容易に為し得ることであると認識すべきである。したがって、当業者が実施する変更形態または改良形態が、請求の範囲に記載された請求項の権利範囲を離脱するレベルのものでない限り、当該変更形態または当該改良形態は、当該請求項の権利範囲に包括されると解釈される。
本発明によれば、画像処理方法、画像処理装置、撮像装置および画像処理プログラムを提供できる。
Claims (18)
- 撮像された撮像画像内の対象物までの、撮像位置からの距離を計測する画像処理方法であって、
前記撮像画像における前記対象物の種類を検出する対象物検出ステップと、
前記撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、前記撮像画像における前記対象物の長さと、前記対象物検出ステップで検出された種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離を算出する第1距離算出ステップとを備えること
を特徴とする画像処理方法。 - 前記対象物の長さは、前記対象物の種類に応じた方向における前記撮像画像における長さであり、
前記基準長は、前記対象物の種類に応じた方向の長さであること
を特徴とする請求項1に記載の画像処理方法。 - 前記対象物の種類が、人、自転車、および、自動二輪のうちのいずれかである場合は、前記対象物の種類に応じた方向は縦方向であること
を特徴とする請求項2に記載の画像処理方法。 - 前記対象物の種類が車である場合、前記対象物の種類に応じた方向は,横方向であること
を特徴とする請求項2または請求項3に記載の画像処理方法。 - 前記撮像画像における撮像範囲と前記対象物の接地点とに基づいて、前記対象物までの距離を算出する第2距離算出ステップと、
前記第1距離算出ステップおよび前記第2距離算出ステップのいずれか一方で算出した前記対象物までの暫定距離が閾値を下回る場合、前記第1距離算出ステップによって算出した第1距離と前記第2距離算出ステップによって算出した第2距離とを用いて、前記対象物までの距離を算出し、前記暫定距離が前記閾値以上の場合、前記第1距離算出ステップによって算出した第1距離を前記対象物までの距離とする距離推定ステップとを、さらに備える
ことを特徴とする請求項1ないし請求項4のいずれか1項に記載の画像処理方法。 - 前記距離推定ステップは、前記第1距離と前記第2距離とを用いて、前記対象物までの距離を算出する場合に、前記暫定距離が短い程、前記第1距離よりも前記第2距離により重い重み付けを行い、前記対象物までの距離を算出すること
を特徴とする請求項5に記載の画像処理方法。 - 前記閾値は、前記対象物の種類に応じて異なること
を特徴とする請求項5または請求項6に記載の画像処理方法。 - 前記対象物は、複数であり、
前記第1距離算出ステップは、前記撮像画像における縦方向の所定範囲に接地点が在る対象物が、同一種類である場合には、各対象物の前記撮像画像における長さを平均した長さと、前記対象物の種類に応じて予め定められている基準長とに基づいて、前記対象物までの距離を算出すること
を特徴とする請求項1ないし請求項7のいずれか1項に記載の画像処理方法。 - 前記第1距離算出ステップは、前記撮像画像における縦方向の所定範囲に接地点が在る対象物が異なる種類である場合には、各対象物の前記撮像画像における長さを前記種類に応じて予め定められている対象物の基準長で正規化して平均した値を用いて、各対象物の前記長さを修正し、修正した後の長さと、前記種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離を算出すること
を特徴とする請求項1ないし請求項8のいずれか1項に記載の画像処理方法。 - 前記対象物の接地点が、前記撮像画像の上下方向の第1位置より上にあり、且つ、前記撮像画像における前記対象物の長さが、第1閾値より大きい場合、または、前記対象物の接地点が、前記第1位置より下にある第2位置より下にあり、且つ、前記対象物の長さが、第1閾値より小さい第2閾値より小さい場合は、前記対象物までの距離を計測しないこと
を特徴とする請求項1ないし請求項9のいずれか1項に記載の画像処理方法。 - 前記撮像画像は、光学系を有する撮像部により撮像され、前記光学系による歪曲収差が補正された撮像画像であること
を特徴とする請求項1ないし請求項10のいずれか1項に記載の画像処理方法。 - 前記撮像画像は、光学系を有する撮像部により撮像された撮像画像であり、
前記第1距離算出ステップは、前記撮像画像における前記対象物の長さを、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と倍率とを対応付けた補正情報に基づいて補正し、補正後の長さと前記基準長とに基づいて、前記対象物までの距離を算出すること
を特徴とする請求項1ないし請求項10のいずれか1項に記載の画像処理方法。 - 前記第2距離算出ステップは、前記撮像画像における前記対象物の接地点を、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と補正座標とを対応付けた補正情報に基づいて補正し、前記撮像画像における撮像範囲と補正後の接地点とに基づいて、前記対象物までの距離を算出すること
を特徴とする請求項12に記載の画像処理方法。 - 前記撮像画像は、光学系を有する撮像部により撮像された撮像画像であり、
前記第1距離算出ステップは、前記撮像画像における前記対象物の長さと、前記対象物検出ステップで検出された種類に応じて予め定められている対象物の基準長とに基づいて、前記対象物までの距離を算出し、算出した距離を、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と補正座標とを対応付けた補正情報に基づいて補正し、補正後の距離を前記対象物までの距離とすること
を特徴とする請求項1ないし請求項10のいずれか1項に記載の画像処理方法。 - 前記第2距離算出ステップは、前記撮像画像における撮像範囲と前記対象物の接地点とに基づいて、前記対象物までの距離を算出し、算出した距離を、前記撮像画像の前記光学系による歪曲収差を補正するための、前記撮像画像内の位置と補正座標とを対応付けた補正情報に基づいて補正し、補正後の距離を前記対象物までの距離とすること
を特徴とする請求項14に記載の画像処理方法。 - 撮像された撮像画像内の対象物までの、撮像位置からの距離を計測する画像処理装置であって、
前記対象物の種類ごとに、基準長を記憶している記憶部と、
前記撮像画像における前記対象物の種類を検出する対象物検出部と、
前記撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、前記撮像画像における前記対象物の長さと、前記記憶部に記憶されている当該対象物の基準長とに基づいて、前記対象物までの距離を算出する距離算出部とを備えること
を特徴とする画像処理装置。 - 対象物を含む被写体を撮像する撮像部と、
請求項16に記載の画像処理装置と
を備えることを特徴とする撮像装置。 - 撮像された撮像画像内の対象物までの、撮像位置からの距離を計測する画像処理装置で用いられる画像処理プログラムであって、
前記対象物の種類ごとに、基準長を記憶している記憶手段と、
前記撮像画像における前記対象物の種類を検出する対象物検出手段と、
前記撮像位置から所定の距離離れた位置に配置した予め既定された長さのチャートを撮影して求められた所定の定数と、前記撮像画像における前記対象物の長さと、前記記憶手段に記憶されている当該対象物の基準長とに基づいて、前記対象物までの距離を算出する距離算出手段と、してコンピュータを機能させる画像処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015512287A JPWO2014171052A1 (ja) | 2013-04-16 | 2014-03-03 | 画像処理方法、画像処理装置、撮像装置および画像処理プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013085905 | 2013-04-16 | ||
JP2013-085905 | 2013-04-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014171052A1 true WO2014171052A1 (ja) | 2014-10-23 |
Family
ID=51731019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/001158 WO2014171052A1 (ja) | 2013-04-16 | 2014-03-03 | 画像処理方法、画像処理装置、撮像装置および画像処理プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2014171052A1 (ja) |
WO (1) | WO2014171052A1 (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017199352A1 (ja) * | 2016-05-17 | 2017-11-23 | 株式会社オプティム | 全天球カメラ撮像画像表示システム、全天球カメラ撮像画像表示方法及びプログラム |
JP2019501743A (ja) * | 2016-01-15 | 2019-01-24 | ジャンド インコーポレイテッド | 対象物からの距離を決定するシステム及び方法 |
WO2019043876A1 (ja) * | 2017-08-31 | 2019-03-07 | 株式会社オプティム | 画像解析距離情報提供システム、方法及びプログラム |
WO2019043878A1 (ja) * | 2017-08-31 | 2019-03-07 | 株式会社オプティム | 画像解析距離情報提供システム、方法及びプログラム |
CN109801340A (zh) * | 2019-01-16 | 2019-05-24 | 山西班姆德机械设备有限公司 | 一种基于图像处理的砂轮磨削方法 |
JP2020201746A (ja) * | 2019-06-11 | 2020-12-17 | トヨタ自動車株式会社 | 距離推定装置、距離推定方法及び距離推定用コンピュータプログラム |
WO2022255152A1 (ja) * | 2021-06-03 | 2022-12-08 | ソニーグループ株式会社 | 測定装置、測定方法、プログラム |
WO2023095489A1 (ja) * | 2021-11-26 | 2023-06-01 | 日立Astemo株式会社 | 外界認識装置 |
JP7394240B2 (ja) | 2020-06-03 | 2023-12-07 | グーグル エルエルシー | 被写体下端位置に基づいた深度推定 |
EP3481059B1 (en) * | 2016-06-29 | 2024-07-03 | KYOCERA Corporation | Object detection and display apparatus, moving body, and object detection and display method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007178543A (ja) * | 2005-12-27 | 2007-07-12 | Samsung Techwin Co Ltd | 撮像装置 |
JP2008209306A (ja) * | 2007-02-27 | 2008-09-11 | Nikon Corp | カメラ |
JP2013002884A (ja) * | 2011-06-14 | 2013-01-07 | Honda Motor Co Ltd | 測距装置 |
-
2014
- 2014-03-03 WO PCT/JP2014/001158 patent/WO2014171052A1/ja active Application Filing
- 2014-03-03 JP JP2015512287A patent/JPWO2014171052A1/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007178543A (ja) * | 2005-12-27 | 2007-07-12 | Samsung Techwin Co Ltd | 撮像装置 |
JP2008209306A (ja) * | 2007-02-27 | 2008-09-11 | Nikon Corp | カメラ |
JP2013002884A (ja) * | 2011-06-14 | 2013-01-07 | Honda Motor Co Ltd | 測距装置 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019501743A (ja) * | 2016-01-15 | 2019-01-24 | ジャンド インコーポレイテッド | 対象物からの距離を決定するシステム及び方法 |
JP6404525B2 (ja) * | 2016-05-17 | 2018-10-10 | 株式会社オプティム | 全天球カメラ撮像画像表示システム、全天球カメラ撮像画像表示方法及びプログラム |
JPWO2017199352A1 (ja) * | 2016-05-17 | 2018-10-18 | 株式会社オプティム | 全天球カメラ撮像画像表示システム、全天球カメラ撮像画像表示方法及びプログラム |
WO2017199352A1 (ja) * | 2016-05-17 | 2017-11-23 | 株式会社オプティム | 全天球カメラ撮像画像表示システム、全天球カメラ撮像画像表示方法及びプログラム |
EP3481059B1 (en) * | 2016-06-29 | 2024-07-03 | KYOCERA Corporation | Object detection and display apparatus, moving body, and object detection and display method |
WO2019043876A1 (ja) * | 2017-08-31 | 2019-03-07 | 株式会社オプティム | 画像解析距離情報提供システム、方法及びプログラム |
WO2019043878A1 (ja) * | 2017-08-31 | 2019-03-07 | 株式会社オプティム | 画像解析距離情報提供システム、方法及びプログラム |
JPWO2019043878A1 (ja) * | 2017-08-31 | 2020-05-28 | 株式会社オプティム | 画像解析距離情報提供システム、方法及びプログラム |
US11250582B2 (en) | 2017-08-31 | 2022-02-15 | Optim Corporation | Image analysis distance information provision system, method, and program |
CN109801340B (zh) * | 2019-01-16 | 2022-09-27 | 山西班姆德机械设备有限公司 | 一种基于图像处理的砂轮磨削方法 |
CN109801340A (zh) * | 2019-01-16 | 2019-05-24 | 山西班姆德机械设备有限公司 | 一种基于图像处理的砂轮磨削方法 |
JP2020201746A (ja) * | 2019-06-11 | 2020-12-17 | トヨタ自動車株式会社 | 距離推定装置、距離推定方法及び距離推定用コンピュータプログラム |
JP7003972B2 (ja) | 2019-06-11 | 2022-01-21 | トヨタ自動車株式会社 | 距離推定装置、距離推定方法及び距離推定用コンピュータプログラム |
JP7394240B2 (ja) | 2020-06-03 | 2023-12-07 | グーグル エルエルシー | 被写体下端位置に基づいた深度推定 |
WO2022255152A1 (ja) * | 2021-06-03 | 2022-12-08 | ソニーグループ株式会社 | 測定装置、測定方法、プログラム |
WO2023095489A1 (ja) * | 2021-11-26 | 2023-06-01 | 日立Astemo株式会社 | 外界認識装置 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2014171052A1 (ja) | 2017-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2014171052A1 (ja) | 画像処理方法、画像処理装置、撮像装置および画像処理プログラム | |
US8970853B2 (en) | Three-dimensional measurement apparatus, three-dimensional measurement method, and storage medium | |
US9759548B2 (en) | Image processing apparatus, projector and projector system including image processing apparatus, image processing method | |
CN103782232B (zh) | 投影仪及其控制方法 | |
JP5745178B2 (ja) | 3次元測定方法、装置及びシステム、並びに画像処理装置 | |
US9088715B2 (en) | Image processing apparatus and image processing method for image correction | |
WO2014181725A1 (ja) | 画像計測装置 | |
TWI498580B (zh) | 長度量測方法與長度量測裝置 | |
JP5715735B2 (ja) | 3次元測定方法、装置、及びシステム、並びに画像処理装置 | |
US20160300356A1 (en) | Measurement device that measures shape of object to be measured, measurement method, system, and article production method | |
US8810801B2 (en) | Three-dimensional measurement apparatus, method for controlling a three-dimensional measurement apparatus, and storage medium | |
KR102060113B1 (ko) | 캘리브레이션 시스템 및 방법 | |
JP2013113600A (ja) | ステレオ3次元計測装置 | |
US20150288878A1 (en) | Camera modeling system | |
JP2015059768A (ja) | 段差計測装置、段差計測方法及びプログラム | |
JP3842988B2 (ja) | 両眼立体視によって物体の3次元情報を計測する画像処理装置およびその方法又は計測のプログラムを記録した記録媒体 | |
JP2013257244A (ja) | 距離測定装置、距離測定方法、及び距離測定プログラム | |
JP3666348B2 (ja) | 距離認識装置 | |
JP6477348B2 (ja) | 自己位置推定装置及び自己位置推定方法 | |
JP5883688B2 (ja) | 設置状態検出システム、設置状態検出装置、及び設置状態検出方法 | |
JP4101478B2 (ja) | 人体端点検出方法及び装置 | |
US20020031261A1 (en) | Matching device | |
JP5339070B2 (ja) | 変位量測定装置及び同測定方法 | |
TWI420229B (zh) | 測量鏡頭之調製傳遞函數值之方法 | |
JP2023118479A (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: 14785104 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2015512287 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14785104 Country of ref document: EP Kind code of ref document: A1 |