WO2019188392A1 - 情報処理装置、情報処理方法、プログラム、及び、移動体 - Google Patents
情報処理装置、情報処理方法、プログラム、及び、移動体 Download PDFInfo
- Publication number
- WO2019188392A1 WO2019188392A1 PCT/JP2019/010761 JP2019010761W WO2019188392A1 WO 2019188392 A1 WO2019188392 A1 WO 2019188392A1 JP 2019010761 W JP2019010761 W JP 2019010761W WO 2019188392 A1 WO2019188392 A1 WO 2019188392A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- area
- region
- estimation
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
Definitions
- the present technology relates to an information processing device, an information processing method, a program, and a moving object, and in particular, an information processing device, an information processing method, and a program suitable for use when a detection result of an area for each object in an image is used. And a moving body.
- Non-Patent Document 1 a technique for improving the accuracy of self-position estimation of a vehicle by detecting moving objects around the vehicle and removing the influence of the detected moving objects.
- SLAM Simultaneous Localization and Mapping
- semantic segmentation is used to detect a moving object region in an image around a moving object.
- semantic segmentation increases processing load and processing time. Therefore, in processing that requires real-time performance such as automatic driving, the processing of semantic segmentation is delayed, which may adversely affect other processing.
- the present technology has been made in view of such a situation, and makes it possible to quickly recognize the position of a region for each object in an image.
- An information processing apparatus includes an area detection unit that detects an object area that is an area for each object in a plurality of images, a motion estimation unit that performs motion estimation between images, and a first image The object in the second image based on the detection result of the object area in the image and the result of motion estimation between the first image and the second image after the first image An area estimation unit for estimating the position of the area.
- the information processing apparatus detects an object region that is a region for each object in a plurality of images, performs motion estimation between images, and performs the motion estimation in the first image. Based on the detection result of the object region and the result of motion estimation between the first image and the second image after the first image, the position of the object region in the second image Is estimated.
- the program according to the first aspect of the present technology detects an object region that is a region for each object in a plurality of images, performs motion estimation between images, and detects the object region in the first image, and , Based on the result of motion estimation between the first image and the second image after the first image, a process for estimating the position of the object region in the second image Let it run.
- the moving body includes an imaging unit that captures the surroundings, and an area detection unit that detects an object area that is an area for each object in a plurality of images among images captured by the imaging unit. Between the motion estimation unit that performs motion estimation between images, the detection result of the object region in the first image, and the second image after the first image and the first image. An area estimation unit that estimates a position of the object area in the second image based on a result of motion estimation; and an execution unit that executes a predetermined process based on the estimation result of the position of the object area. Prepare.
- an object region which is a region for each object in a plurality of images, is detected, motion estimation between images is performed, a detection result of the object region in the first image, and The position of the object region in the second image is estimated based on the result of motion estimation between the first image and the second image after the first image.
- the surroundings are photographed, an object region that is a region for each object in the plurality of images is detected, motion estimation between the images is performed, and the first Based on the detection result of the object region in the image and the result of motion estimation between the first image and the second image after the first image, the The position of the object area is estimated, and predetermined processing is executed based on the estimation result of the position of the object area.
- the position of the area for each object in the image can be quickly recognized.
- processing using the area for each object in the recognized image can be performed quickly and appropriately.
- FIG. 1 is a block diagram showing an embodiment of a vehicle to which the present technology is applied. It is a flowchart for demonstrating the self-position estimation process performed by a vehicle. It is a timing chart for explaining self-position estimation processing performed by vehicles. It is a schematic diagram which shows the example of a surrounding image. It is a schematic diagram which shows the example of an area division
- FIG. 1 shows a configuration example of a vehicle 10 according to an embodiment of the present technology.
- the vehicle 10 includes a data acquisition unit 11, an information processing unit 12, and an operation control unit 13.
- the data acquisition unit 11 acquires various data used for control of the vehicle 10.
- the data acquisition unit 11 includes a photographing unit 21 and a sensor unit 22.
- the photographing unit 21 includes a camera that photographs the surroundings of the vehicle 10.
- the type of camera is not particularly limited, and any type of camera may be used depending on the application.
- the photographing unit 21 includes one or more of a ToF (Time Of Flight) camera, a stereo camera, a monocular camera, an infrared camera, and the like.
- the imaging unit 21 supplies an image of the surroundings of the vehicle 10 (hereinafter referred to as a surrounding image) to the information processing unit 12.
- the sensor unit 22 includes a sensor that acquires various data used for controlling the vehicle 10 other than the image.
- the sensor unit 22 includes a depth sensor, an inertial measurement device (IMU), an ultrasonic sensor, a radar, a LiDAR (Light Detection and Ranging, Laser Imaging Detection and Ranging), a sonar, a GNSS (Global Navigation Satellite System) receiver, and the like.
- the sensor unit 22 supplies the sensor data acquired by each sensor to the information processing unit 12.
- the information processing unit 12 performs self-position estimation processing of the vehicle 10, recognition processing of objects around the vehicle 10, and the like.
- the information processing unit 12 includes a self-position estimation unit 31, a depth estimation unit 32, a region detection unit 33, a storage unit 34, a motion estimation unit 35, a region estimation unit 36, a storage unit 37, a mask information generation unit 38, and an object recognition
- the unit 39 is provided.
- the storage unit 34 and the storage unit 37 can be combined into one.
- the self-position estimation unit 31 performs a self-position estimation process of the vehicle 10 based on the surrounding image and the mask information generated by the mask information generation unit 38 and, if necessary, the sensor data.
- the self position estimation unit 31 supplies information indicating the estimation result of the self position of the vehicle 10 to the motion estimation unit 35 and the motion control unit 13.
- the depth estimation unit 32 performs a depth estimation process indicating a distance to an object around the vehicle 10 based on at least one of the surrounding image and the sensor data.
- the depth estimation unit 32 supplies information indicating the depth estimation result to the motion estimation unit 35.
- the region detection unit 33 detects a region for each object (hereinafter referred to as an object region) in the surrounding image, and generates an image indicating each object region (hereinafter referred to as a region divided image). In addition, the area detection unit 33 generates an area management table indicating information regarding each object area in the area divided image. The area detection unit 33 stores the area division image and the area management table in the storage unit 34.
- the object includes all kinds of objects.
- the object includes not only objects that can exist around the vehicle 10 such as other vehicles, pedestrians, obstacles, and road surfaces, but also objects that can be included in surrounding images such as the sky.
- the motion estimation unit 35 performs motion estimation between surrounding images of different frames based on surrounding images, self-position estimation results, depth estimation results, an area management table, and an estimated area management table described later. More specifically, the motion estimation unit 35 performs a pixel flow estimation process indicating pixel motion between surrounding images of different frames. The motion estimation unit 35 supplies information indicating the result of motion estimation (pixel flow estimation result) to the region estimation unit 36.
- the region estimation unit 36 estimates an object region in the surrounding image based on the region management table or the estimated region management table and the estimated pixel flow, and an image indicating each estimated object region (hereinafter, estimated region division). Image).
- the area estimation unit 36 generates an estimated area management table indicating information on each object area in the estimated area divided image.
- the region estimation unit 36 causes the storage unit 37 to store the estimated region divided image and the estimated region management table.
- the mask information generation unit 38 is an execution unit that generates mask information indicating a region used and a region not used in the subsequent processing in the surrounding image based on the estimated region management table.
- the mask information generation unit 38 generates mask information in the data acquisition unit 11, the self-position estimation unit 31, and the object recognition unit 39.
- the object recognition unit 39 performs recognition processing of objects around the vehicle 10 based on the surrounding image, the mask information, and, if necessary, sensor data.
- the object recognition unit 39 supplies information indicating the recognition result of objects around the vehicle 10 to the operation control unit 13.
- the operation control unit 13 controls the operation of the vehicle 10 based on the estimation result of the self-position of the vehicle 10, the recognition result of objects around the vehicle 10, and the like. For example, the operation control unit 13 controls acceleration, deceleration, stopping, steering, automatic driving, and the like of the vehicle 10.
- time t0 to time t11 indicate timings when surrounding images are taken.
- Periods T0 to T11 indicate periods between shooting timings of surrounding images of adjacent frames.
- the period T0 is a period between time t0 and time t1
- the period T1 is a period between time t1 and time t2.
- surrounding images P (t0) to surrounding images P (t11) are referred to as surrounding images P (t0) to surrounding images P (t11).
- This process is started, for example, when an operation for starting the vehicle 10 and starting driving is performed, for example, when an ignition switch, a power switch, a start switch, or the like of the vehicle 10 is turned on. Moreover, this process is complete
- step S1 the photographing unit 21 acquires a surrounding image. That is, the photographing unit 21 photographs the surroundings of the vehicle 10 and supplies the surrounding image obtained as a result to the information processing unit 12.
- step S2 the depth estimation unit 32 performs a depth estimation process. That is, the depth estimation unit 32 performs a process of estimating a depth that is a distance to an object around the vehicle 10 based on at least one of the surrounding image and the sensor data.
- An arbitrary method can be used for the depth estimation process.
- the depth estimation unit 32 performs depth estimation processing by stereo matching.
- the sensor unit 22 includes a depth sensor such as LiDAR, the depth estimation unit 32 performs a depth estimation process based on sensor data from the depth sensor.
- the depth estimation unit 32 generates, for example, 3D information (for example, 3D point cloud) indicating the depth estimation result, and supplies the generated 3D information to the motion estimation unit 35.
- 3D information for example, 3D point cloud
- step S3 the self-position estimation unit 31 performs self-position estimation processing. That is, the self-position estimating unit 31 estimates the position and orientation of the vehicle 10.
- the self-position estimation unit 31 performs self-position estimation by performing SLAM based on the surrounding image and sensor data of a depth sensor such as LiDAR.
- the self-position estimation unit 31 may use, for example, a GNSS signal received by the GNSS receiver, sensor data detected by the IMU, sensor data detected by the radar, and the like.
- the self-position estimation unit 31 estimates the absolute position and the absolute posture of the vehicle 10 in the world coordinate system by the first self-position estimation process. Thereafter, the self-position estimation unit 31 estimates the amount of change from the position and posture of the vehicle 10 estimated by the previous self-position estimation process, for example, by the second and subsequent self-position estimation processes. Then, the self-position estimation unit 31 estimates the absolute position and absolute posture of the vehicle 10 based on the estimated change amount of the position and posture of the vehicle 10.
- the self-position estimation unit 31 supplies information indicating the estimation result of the self-position of the vehicle 10 to the motion estimation unit 35.
- step S4 the region detection unit 33 determines whether it is time to perform region detection processing. If it is determined that it is time to perform the area detection process, the process proceeds to step S5.
- the region detection processing has a larger processing load and a longer required time than the depth estimation processing, self-position estimation processing, and pixel flow estimation processing described later. For this reason, the execution frequency of the region detection process is set lower than the execution frequencies of the depth estimation process, the self-position estimation process, and the pixel flow estimation process.
- the depth estimation process, the self-position estimation process, and the pixel flow estimation process are executed for each frame of the surrounding image in synchronization with the shooting of the surrounding image.
- the area detection process is executed every five frames of the surrounding image, for example, as shown in FIG. Specifically, region detection processing is performed on surrounding images taken at time t0, time t5, and time t10. Therefore, it is determined that it is time to perform the area detection processing in the period T0, the period T5, and the period T10 after the surrounding images captured at the time t0, the time t5, and the time t10 are acquired.
- step S5 the region detection unit 33 performs region detection processing.
- the region detection unit 33 performs semantic segmentation on surrounding images using a region-divided image generator obtained by learning processing using CNN (Convolutional-Neural-Network) or the like in advance.
- CNN Convolutional-Neural-Network
- each pixel in the surrounding image is labeled to indicate the type of object to which each pixel belongs.
- an object area corresponding to each object in the surrounding image is detected, and the surrounding image is divided into one or more object areas.
- the region detection unit 33 generates an image (hereinafter referred to as a region divided image) indicating the label of each pixel of the surrounding image.
- the label of each pixel indicates the position of each object region in the region divided image.
- the region divided image becomes an image divided by each object region.
- FIG. 4 schematically shows a specific example of the surrounding image.
- the surrounding image P in FIG. 4 includes a vehicle 111, a road surface 112, trees 113-1 to 113-8, and the sky 114.
- the region detection unit 33 performs the semantic segmentation on the surrounding image P, thereby generating a region divided image PS schematically shown in FIG.
- the area-divided image PS includes object areas 211, object areas 212, object areas 213-1 to object areas corresponding to the vehicle 111, road surface 112, trees 113-1 to 113-8, and sky 114 of the surrounding image P, respectively. 213-8 and an object area 214.
- the coordinate system of the region-divided image PS is a coordinate system in which the pixel in the upper left corner is the origin, the horizontal direction is the u axis, and the vertical direction is the v axis.
- the region detection unit 33 detects the contour of each object region in the region divided image.
- the region detection unit 33 detects a contour image composed of pixels (hereinafter referred to as contour pixels) constituting the contour of the object region 213-7 in the frame A1.
- contour pixels a contour image composed of pixels (hereinafter referred to as contour pixels) constituting the contour of the object region 213-7 in the frame A1.
- the area detection unit 33 performs this process on all object areas in the area divided image PS.
- the contour image 211A and the contour image 212A respectively corresponding to the object region 211, the object region 212, the object region 213-1 to the object region 213-8, and the object region 214.
- the contour images 213A-1 to 213A-8 and the contour image 214A are detected.
- the area detection unit 33 generates an area management table indicating information on each object area.
- FIG. 7 shows an example of a region management table generated based on the region divided image PS of FIG.
- the area management table includes items of ID, label, moving object flag, and contour pixel.
- ID indicates an identification number uniquely assigned to each object area.
- the label indicates the type of object corresponding to each object area.
- the moving object flag indicates whether or not the object corresponding to each object area is a moving object.
- the moving object flag is set to 1 when the object is a moving object, and is set to 0 when the object is a stationary object.
- the contour pixel indicates the coordinates of the contour pixel constituting the contour image of each object area.
- the area detection unit 33 stores the area division image and the area management table in the storage unit 34.
- the area detection process is executed over a plurality of frame periods of the surrounding image. For example, the region detection process for the surrounding image P (t0) photographed at time t0 is performed over the period T0 to the period T4, and the detection result is acquired within the period T5.
- step S4 determines that it is not time to perform the region detection process. If it is determined in step S4 that it is not time to perform the region detection process, the process of step S5 is skipped, and the process proceeds to step S6.
- step S6 the motion estimation unit 35 performs a process of estimating a pixel flow between frames.
- the motion estimation unit 35 estimates the pixel flow of all the pixels of the surrounding image one frame before. For example, in the period T1 to the period T4 in FIG. 3, the region detection processing has not yet been performed, and the contour pixels of the surrounding image one frame before are not detected and estimated. The pixel flow of this pixel is estimated.
- the motion estimation unit 35 estimates the pixel flow (for example, optical flow) of each pixel by image matching between the surrounding image one frame before and the current surrounding image.
- any method such as SIFT (Scale-Invariant Feature Transform), template image matching, Lukas-kanade tracker, etc. can be used.
- SIFT Scale-Invariant Feature Transform
- template image matching Lukas-kanade tracker, etc.
- the motion estimation unit 35 supplies information indicating the estimation result of the pixel flow to the region estimation unit 36.
- the motion estimation unit 35 estimates the pixel flow of each contour pixel. For example, after the period T5 in FIG. 3, since the contour pixels of the surrounding image one frame before are detected or estimated, the pixel flow of each contour pixel is estimated.
- the motion estimation unit 35 includes the vehicle 10 between the 3D information generated by the depth estimation unit 32 and the surrounding image of the previous frame estimated by the self-position estimation unit 31 and the surrounding image of the current frame.
- the pixel flow of the contour pixel of the object area of the stationary object is estimated based on the change amount of the position and orientation of the object.
- FIG. 8A shows a contour image of an object area of a stationary object among the object areas of the area divided image PS of FIG. That is, A in FIG. 8 shows the contour image 212A, the contour image 213A-1 through the contour image 213A- corresponding to the object region 212 of the stationary object, the object region 213-1 through the object region 213-8, and the object region 214, respectively. 8 and an outline image 214A.
- the amount of calculation is smaller than when using image matching. As a result, the estimation accuracy is improved.
- the motion estimation unit 35 estimates the pixel flow of the contour pixels of the object area of the moving object using image matching.
- a in FIG. 9 shows a contour image of an object region of a moving object among the object regions in the region divided image PS in FIG. That is, A of FIG. 9 shows a contour image 211A corresponding to the object area 211 of the moving object.
- the motion estimation unit 35 integrates the estimation results of the pixel flow of the contour pixel of the object area of the stationary object and the pixel flow of the contour pixel of the object area of the moving object.
- the motion estimation unit 35 supplies information indicating the estimation result of the pixel flow after integration to the region estimation unit 36.
- step S7 the motion estimation unit 35 determines whether or not a region detection result is obtained. If it is determined that the region detection result is not obtained, the process returns to step S1.
- step S1 to step S7 is repeatedly executed until it is determined in step S7 that the region detection result is obtained.
- step S7 determines whether an area detection result has been obtained. If it is determined in step S7 that an area detection result has been obtained, the process proceeds to step S8.
- step S8 the motion estimation unit 35 determines whether or not a new region detection result has been obtained. If it is determined that a new region detection result has been obtained, the process proceeds to step S9.
- the area detection processing is completed before time t5 and before time t10, and the area detection result is obtained. Accordingly, it is determined that a new region detection result is obtained in the subsequent period T5 and period T10.
- step S9 the motion estimation unit 35 performs a pixel flow estimation process during the area detection process.
- the motion estimation unit 35 performs pixel flow estimation processing between the surrounding image used in the region detection processing and the latest surrounding image among the surrounding images obtained during the region detection processing.
- the surrounding image P (t0) is used for the region detection processing, and the surrounding image P (t1) to the surrounding image P (t4) are obtained during the region detection processing.
- a pixel flow estimation process between the surrounding image P (t0) and the surrounding image P (t4) is performed.
- the pixel flow of each pixel between the surrounding image P (t0) and the surrounding image P (t4) is estimated by adding the pixel flow estimation results obtained in the periods T1 to T4 for each pixel.
- the surrounding image P (t5) is used for the area detection process, and the surrounding image P (t6) to the surrounding image P (t9) are obtained during the area detection process.
- a pixel flow estimation process between the surrounding image P (t5) and the surrounding image P (t9) is performed. For example, by adding the pixel flow estimation results obtained in the periods T6 to T9 for each contour pixel, the pixel flow of each contour pixel between the surrounding image P (t5) and the surrounding image P (t9) Presumed.
- the motion estimation unit 35 supplies information indicating the estimation result of the pixel flow during the region detection process to the region estimation unit 36.
- step S10 the region estimation unit 36 performs region estimation processing based on the region detection result and the estimation result of the pixel flow during the region detection processing.
- the region estimation unit 36 moves the contour pixel of each object region detected in the surrounding image using the pixel flow estimated in the process of step S9.
- the contour pixel of each object area detected in the surrounding image P (t0) is moved using the pixel flow between the surrounding image P (t0) and the surrounding image P (t4). Thereby, the position of the contour pixel of each object area in the surrounding image P (t4) is estimated.
- the contour pixel of each object region detected in the surrounding image P (t5) is moved using the pixel flow between the surrounding image P (t5) and the surrounding image P (t9). . Thereby, the position of the contour pixel of each object area in the surrounding image P (t9) is estimated.
- the region estimation unit 36 estimates a contour image of each object region after movement by performing polygon approximation based on the contour pixels of each object region after movement.
- the region estimation unit 36 determines the label of each pixel in the contour image by performing polygonal inside / outside determination for each estimated contour image.
- each contour pixel of the contour image 211A is moved to a position indicated by a circle in the frame A2 using the pixel flow.
- the contour image 211A moves in a direction approaching the vehicle 10
- a gap is generated between the contour pixels after movement.
- the contour image 251A in FIG. 12 is estimated by performing polygon approximation on the contour pixels in the frame A2.
- the inside / outside determination of the polygon is performed on the estimated contour image 251A, and the label of each pixel in the contour image 251A is determined. Thereby, as schematically shown in FIG. 13, the object area 261 to which the object area 211 is moved is estimated.
- the filling process of the object area 211 before the movement is performed.
- the label of each pixel in the object area 211 before movement is determined by a voting process using the labels of pixels around the object area 211.
- the position of each object area in the surrounding image P (t0) in the surrounding image P (t4) is estimated, and the filling process of each object area before the movement is performed.
- an estimated area divided image obtained by dividing the surrounding image P (t4) by each object area is generated.
- the position of each object area in the surrounding image P (t5) in the surrounding image P (t9) is estimated, and the filling process of each object area before the movement is performed.
- an estimated area divided image obtained by dividing the surrounding image P (t9) by each object area is generated.
- the area estimation unit 36 generates an estimated area management table indicating information on each object area of the generated estimated divided area image.
- the estimated area management table has the same configuration as the area management table of FIG.
- the region estimation unit 36 stores the estimated region divided image and the estimated region management table in the storage unit 37.
- step S8 if it is determined in step S8 that a new region detection result has not been obtained, the process proceeds to step S11. For example, in the period T6 to the period T9 and the period T11 in FIG. 3, since the area detection process has not been completed in the previous period, it is determined that a new area detection result has not been obtained.
- step S11 the region estimation unit 36 performs region estimation processing based on the previous region estimation result and the estimation result of the pixel flow between frames.
- the area estimation unit 36 reads the estimated area divided image generated by the area estimation process of the immediately preceding period T5 and the estimated area management table from the storage unit 37. Then, the region estimation unit 36 uses the pixel flow between the surrounding image P (t5) and the surrounding image P (t6) for each object region in the read estimated region divided image by the same process as in step S10. Move.
- the position in the surrounding image P (t6) of each object region in the surrounding image P (t5) is estimated. Further, the filling process of each object area before the movement is performed. As a result, an estimated area divided image obtained by dividing the surrounding image P (t6) by each object area is generated.
- the area estimation unit 36 reads the estimated area divided image and the estimated area management table generated by the area estimation process of the immediately preceding period T6 from the storage unit 37 in the period T7. Then, the region estimation unit 36 uses the pixel flow between the surrounding image P (t6) and the surrounding image P (t7) for each object region in the read estimated region divided image by the same process as in step S10. Move.
- the position of each object region in the surrounding image P (t6) in the surrounding image P (t7) is estimated. Further, the area filling process corresponding to each object area before the movement is performed. As a result, an estimated area divided image is generated by dividing the surrounding image P (t7) by each object area whose position is estimated.
- the area estimation unit 36 generates an estimated area management table indicating information on each object area of the generated estimated divided area image.
- the region estimation unit 36 stores the estimated region divided image and the estimated region management table in the storage unit 37.
- an estimated area divided image having higher real-time characteristics than the area divided image obtained by the area detection process is obtained.
- an estimated region divided image in which the position of each object region is closer to the current position than the region divided image is obtained.
- the position of each object area can be recognized more quickly and in detail than when only the area division process is performed.
- the region divided image PS (t0) corresponding to the surrounding image P (t0) is obtained in the period T4
- the region corresponding to the surrounding image P (t5) in the period T9.
- the estimated area divided image PSe (t4) to the estimated area divided image PSe (t8) corresponding to the surrounding image P (t4) to the surrounding image P (t8) are obtained. .
- the positions of the object areas of the surrounding images P (t4) to P (t8) photographed from the time t4 to the time t8 are estimated in the periods T5 to T9 ( Interpolated). That is, the position of each object area in each surrounding image is recognized quickly and in detail.
- the mask information generation unit 38 in step S12, the mask information generation unit 38 generates mask information based on the region estimation result. Specifically, the mask information generation unit 38 reads the latest estimated area management table from the storage unit 37. Then, the mask information generation unit 38 generates mask information that masks an object region (hereinafter referred to as a moving object region) for which the moving object flag is set to 1 in the estimated region management table. In this mask information, the pixel value of each pixel in the contour image composed of the contour pixels of the moving object region is set to 0, and the pixel values of the other pixels are set to 1. The mask information generation unit 38 supplies the generated mask information to the self-position estimation unit 31.
- a moving object region an object region for which the moving object flag is set to 1 in the estimated region management table.
- the pixel value of each pixel in the contour image composed of the contour pixels of the moving object region is set to 0, and the pixel values of the other pixels are set to 1.
- the mask information generation unit 38 supplies the generated mask information to the self-position estimation unit
- the self-position estimation unit 31 performs self-position estimation processing by masking the surrounding image using the mask information in the next self-position estimation processing in step S3. That is, the self-position estimation unit 31 performs self-position estimation processing without using an image in the moving object region indicated by the mask information among the surrounding images.
- the self-position estimation process is performed without using the image of the vehicle 301 in the frame A11 of the surrounding image P11.
- step S1 the process returns to step S1, and the processes after step S1 are executed.
- This process is started, for example, when an operation for starting the vehicle 10 and starting driving is performed, for example, when an ignition switch, a power switch, a start switch, or the like of the vehicle 10 is turned on. Moreover, this process is complete
- steps S101 to S111 processing similar to that in steps S1 to S11 in FIG. 2 is performed.
- the mask information generation unit 38 generates mask information based on the region estimation result. Specifically, the mask information generation unit 38 reads the latest estimated area management table from the storage unit 37. Then, the mask information generation unit 38 generates mask information that masks an area other than an object area (hereinafter referred to as a calculation target area) in which a label of an object to be calculated is set in the estimation area management table. In this mask information, the pixel value of each pixel in the contour image composed of the contour pixels of the calculation target region is set to 1, and the pixel values of the other pixels are set to 0. The mask information generation unit 38 supplies the generated mask information to the data acquisition unit 11 or the object recognition unit 39.
- the type of object to be calculated may be set in advance or may be set by the user, for example.
- step S113 the vehicle 10 performs AE or object recognition processing based on the mask information.
- the object recognizing unit 39 performs object recognition processing on only the image in the calculation target area indicated by the mask information among the surrounding images. For example, as schematically shown in FIG. 17, the object recognition process is performed only on the image of the sign 321 in the frame A12 of the surrounding image P12. Thereby, a desired object can be recognized more quickly and accurately.
- the photographing unit 21 performs AE using only the image in the calculation target area indicated by the mask information among the surrounding images. For example, as schematically shown in FIG. 18, AE is performed except for a whiteout region in the frame A13 of the surrounding image P13. As a result, AE can be performed quickly and appropriately. For example, it is possible to prevent a whiteout portion of a building estimated to have many feature points from being overexposed.
- step S101 Thereafter, the process returns to step S101, and the processes after step S101 are executed.
- estimation result of the depth and the estimation result of the self-position of the vehicle 10 may not be used for the pixel flow estimation process.
- the motion estimator 35 may estimate the motion in units of blocks, objects, etc. instead of in units of pixels.
- the region detection unit 33 may detect an object region in the surrounding image by using a method other than semantic segmentation.
- the type of vehicle to which the present technology can be applied is not particularly limited as long as the vehicle uses the detection result of the object area in the image.
- the present technology can also be applied to various types of moving objects that use the detection result of each object region in the image.
- the present technology can be applied to mobile bodies such as personal mobility, airplanes, ships, construction machines, and agricultural machines (tractors).
- mobile bodies to which the present technology can be applied include, for example, mobile bodies that are operated (operated) remotely without a user such as a drone or a robot.
- FIG. 19 is a block diagram showing an example of a hardware configuration of a computer that executes the above-described series of processing by a program.
- a CPU Central Processing Unit
- ROM Read Only Memory
- RAM Random Access Memory
- An input / output interface 505 is further connected to the bus 504.
- An input unit 506, an output unit 507, a storage unit 508, a communication unit 509, and a drive 510 are connected to the input / output interface 505.
- the input unit 506 includes an input switch, a button, a microphone, an image sensor, and the like.
- the output unit 507 includes a display, a speaker, and the like.
- the storage unit 508 includes a hard disk, a nonvolatile memory, and the like.
- the communication unit 509 includes a network interface or the like.
- the drive 510 drives a removable recording medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
- the CPU 501 loads the program recorded in the storage unit 508 to the RAM 503 via the input / output interface 505 and the bus 504 and executes the program, as described above. A series of processing is performed.
- the program executed by the computer 500 can be provided by being recorded in a removable recording medium 511 as a package medium or the like, for example.
- the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the storage unit 508 via the input / output interface 505 by mounting the removable recording medium 511 in the drive 510. Further, the program can be received by the communication unit 509 via a wired or wireless transmission medium and installed in the storage unit 508. In addition, the program can be installed in the ROM 502 or the storage unit 508 in advance.
- the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
- the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Accordingly, a plurality of devices housed in separate housings and connected via a network and a single device housing a plurality of modules in one housing are all systems. .
- the present technology can take a cloud computing configuration in which one function is shared by a plurality of devices via a network and is jointly processed.
- each step described in the above flowchart can be executed by one device or can be shared by a plurality of devices.
- the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.
- An area detection unit for detecting an object area that is an area for each object in a plurality of images; A motion estimation unit that performs motion estimation between images; Based on the detection result of the object region in the first image and the result of motion estimation between the first image and the second image after the first image, the second image
- An information processing apparatus comprising: an area estimation unit that estimates a position of the object area in the area.
- the region estimation unit is configured to estimate the position of the object region in the second image and the result of motion estimation between the second image and a third image after the second image.
- the information processing apparatus according to (1), wherein a position of the object region in the third image is estimated based on the information.
- the information processing apparatus is an image preceding the fourth image in which the region detection unit detects the object region next to the first image. .
- the information processing apparatus is an image immediately before the fourth image.
- the motion estimation unit estimates a motion of a contour pixel which is a pixel constituting a contour of the object region;
- the information processing apparatus according to any one of (1) to (4), wherein the region estimation unit estimates a position of the object region based on a motion pixel estimation result.
- the information processing apparatus according to any one of (1) to (5), further including an execution unit that executes predetermined processing based on an estimation result of the position of the object region.
- the first image and the second image are images taken around a moving body,
- the execution unit generates mask information indicating an area used for self-position estimation of the moving body and an area not used based on the estimation result of the position of the object area in the second image.
- the information processing apparatus described.
- the first image and the second image are images taken around a moving body,
- the execution unit generates mask information indicating a region used for object recognition around the moving body and a region not used based on the estimation result of the position of the object region in the second image (6)
- the information processing apparatus described in 1. (9) The information processing apparatus according to (6), wherein the execution unit generates mask information indicating an area used for exposure control and an area not used for exposure control of the imaging unit that captured the first image and the second image.
- a shooting section for shooting the surroundings An area detection unit for detecting an object area, which is an area for each object in a plurality of images, of images captured by the imaging unit; A motion estimation unit that performs motion estimation between images; Based on the detection result of the object region in the first image and the result of motion estimation between the first image and the second image after the first image, the second image
- An area estimation unit for estimating the position of the object area in A moving body comprising: an execution unit that executes predetermined processing based on an estimation result of the position of the object region.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
本技術は、画像内のオブジェクト毎の領域の位置を迅速に認識することができるようにする情報処理装置、情報処理方法、プログラム、及び、移動体に関する。 情報処理装置は、複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、画像間の動き推定を行う動き推定部と、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部とを備える。本技術は、例えば、車両に適用することができる。
Description
本技術は、情報処理装置、情報処理方法、プログラム、及び、移動体に関し、特に、画像内のオブジェクト毎の領域の検出結果を使用する場合に用いて好適な情報処理装置、情報処理方法、プログラム、及び、移動体に関する。
従来、車両の周囲の動物体を検出し、検出した動物体の影響を除去することにより、車両の自己位置推定の精度を向上させる技術が提案されている。例えば、動物体を追跡することにより、SLAM(Simultaneous Localization and Mapping)の精度を向上させる技術が提案されている(例えば、非特許文献1参照)。
Wangsiripitak、外1名、Avoiding moving outliers in visual SLAM by tracking moving objects、Robotics and Automation, 2009. ICRA '09. IEEE International Conference、IEEE、2009年12月
ところで、移動体の周囲の画像内の動物体領域を検出するために、例えばセマンティックセグメンテーションが用いられる。
しかしながら、セマンティックセグメンテーションは、処理負荷が大きく、処理時間が長くなる。そのため、自動運転のようなリアルタイム性が要求される処理においては、セマンティックセグメンテーションの処理が遅延し、他の処理に悪影響を及ぼす可能性がある。
本技術は、このような状況に鑑みてなされたものであり、画像内のオブジェクト毎の領域の位置を迅速に認識できるようにするものである。
本技術の第1の側面の情報処理装置は、複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、画像間の動き推定を行う動き推定部と、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部とを備える。
本技術の第1の側面の情報処理方法は、情報処理装置が、複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、画像間の動き推定を行い、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する。
本技術の第1の側面のプログラムは、複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、画像間の動き推定を行い、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する処理をコンピュータに実行させる。
本技術の第2の側面の移動体は、周囲を撮影する撮影部と、前記撮影部により撮影された画像のうち複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、画像間の動き推定を行う動き推定部と、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と、前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部とを備える。
本技術の第1の側面においては、複数の画像内のオブジェクト毎の領域であるオブジェクト領域が検出され、画像間の動き推定が行われ、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置が推定される。
本技術の第2の側面においては、周囲が撮影され、撮影された画像のうち複数の画像内のオブジェクト毎の領域であるオブジェクト領域が検出され、画像間の動き推定が行われ、第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置が推定され、前記オブジェクト領域の位置の推定結果に基づいて、所定の処理が実行される。
本技術の第1の側面又は第2の側面によれば、画像内のオブジェクト毎の領域の位置を迅速に認識することができる。その結果、例えば、認識した画像内のオブジェクト毎の領域を用いる処理を迅速かつ適切に行うことができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.実施の形態
2.変形例
3.その他
1.実施の形態
2.変形例
3.その他
<<1.実施の形態>>
<車両10の構成例>
図1は、本技術の実施の形態に係る車両10の構成例を示している。
<車両10の構成例>
図1は、本技術の実施の形態に係る車両10の構成例を示している。
車両10は、データ取得部11、情報処理部12、及び、動作制御部13を備える。
データ取得部11は、車両10の制御に用いる各種のデータを取得する。データ取得部11は、撮影部21及びセンサ部22を備える。
撮影部21は、車両10の周囲を撮影するカメラを備える。カメラの種類は特に限定されるものではなく、用途等に応じて任意の種類のカメラが用いられる。例えば、撮影部21は、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ等のうちの1つ以上を備える。撮影部21は、車両10の周囲を撮影した画像(以下、周囲画像と称する)を情報処理部12に供給する。
センサ部22は、画像以外の車両10の制御に用いる各種のデータを取得するセンサを備える。例えば、センサ部22は、デプスセンサ、慣性計測装置(IMU)、超音波センサ、レーダ、LiDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)、ソナー、GNSS(Global Navigation Satellite System)受信機等を備える。センサ部22は、各センサが取得したセンサデータを情報処理部12に供給する。
情報処理部12は、車両10の自己位置推定処理、及び、車両10の周囲の物体の認識処理等を行う。情報処理部12は、自己位置推定部31、デプス推定部32、領域検出部33、記憶部34、動き推定部35、領域推定部36、記憶部37、マスク情報生成部38、及び、物体認識部39を備える。
なお、記憶部34と記憶部37は、1つにまとめることも可能である。
自己位置推定部31は、周囲画像及びマスク情報生成部38により生成されたマスク情報、並びに、必要に応じてセンサデータに基づいて、車両10の自己位置推定処理を行う。自己位置推定部31は、車両10の自己位置の推定結果を示す情報を、動き推定部35及び動作制御部13に供給する。
デプス推定部32は、周囲画像及びセンサデータのうち少なくとも一方に基づいて、車両10の周囲の物体までの距離を示すデプスの推定処理を行う。デプス推定部32は、デプスの推定結果を示す情報を動き推定部35に供給する。
領域検出部33は、周囲画像内のオブジェクト毎の領域(以下、オブジェクト領域と称する)を検出し、各オブジェクト領域を示す画像(以下、領域分割画像と称する)を生成する。また、領域検出部33は、領域分割画像内の各オブジェクト領域に関する情報を示す領域管理テーブルを生成する。領域検出部33は、領域分割画像及び領域管理テーブルを記憶部34に記憶させる。
なお、本明細書において、オブジェクトには、あらゆる種類の物体が含まれる。例えば、オブジェクトは、他の車両、歩行者、障害物、路面等の車両10の周囲に存在し得る物体だけでなく、空等の周囲画像に含まれ得る物体を含む。
動き推定部35は、周囲画像、自己位置の推定結果、デプスの推定結果、領域管理テーブル、及び、後述する推定領域管理テーブルに基づいて、異なるフレームの周囲画像間の動き推定を行う。より具体的は、動き推定部35は、異なるフレームの周囲画像間の画素の動きを示す画素フローの推定処理を行う。動き推定部35は、動き推定の結果(画素フローの推定結果)を示す情報を領域推定部36に供給する。
領域推定部36は、領域管理テーブル又は推定領域管理テーブル、及び、推定された画素フローに基づいて、周囲画像内のオブジェクト領域を推定し、推定した各オブジェクト領域を示す画像(以下、推定領域分割画像と称する)を生成する。また、領域推定部36は、推定領域分割画像内の各オブジェクト領域に関する情報を示す推定領域管理テーブルを生成する。領域推定部36は、推定領域分割画像及び推定領域管理テーブルを記憶部37に記憶させる。
マスク情報生成部38は、推定領域管理テーブルに基づいて、周囲画像のうち後段の処理で使用する領域及び使用しない領域を示すマスク情報を生成する実行部である。マスク情報生成部38は、データ取得部11、自己位置推定部31、及び、物体認識部39にマスク情報を生成する。
物体認識部39は、周囲画像及びマスク情報、並びに、必要に応じてセンサデータに基づいて、車両10の周囲の物体の認識処理を行う。物体認識部39は、車両10の周囲の物体の認識結果を示す情報を動作制御部13に供給する。
動作制御部13は、車両10の自己位置の推定結果、及び、車両10の周囲の物体の認識結果等に基づいて、車両10の動作を制御する。例えば、動作制御部13は、車両10の加速、減速、停車、操舵、自動運転等の制御を行う。
<車両10の処理>
次に、図2乃至図18を参照して、車両10の処理について説明する。
次に、図2乃至図18を参照して、車両10の処理について説明する。
<自己位置推定処理>
まず、図2のフローチャート及び図3のタイミングチャートを参照して、車両10により実行される自己位置推定処理について説明する。
まず、図2のフローチャート及び図3のタイミングチャートを参照して、車両10により実行される自己位置推定処理について説明する。
なお、図3のタイミングチャートにおいて、時刻t0乃至時刻t11は、周囲画像が撮影されるタイミングを示している。また、期間T0乃至期間T11は、隣接するフレームの周囲画像の撮影タイミングの間の期間を示している。例えば、期間T0は時刻t0と時刻t1の間の期間であり、期間T1は時刻t1と時刻t2の間の期間である。なお、以下、時刻t0乃至時刻t11に撮影された周囲画像を区別する必要がある場合、周囲画像P(t0)乃至周囲画像P(t11)と称する。
この処理は、例えば、車両10を起動し、運転を開始するための操作が行われたとき、例えば、車両10のイグニッションスイッチ、パワースイッチ、又は、スタートスイッチ等がオンされたとき開始される。また、この処理は、例えば、運転を終了するための操作が行われたとき、例えば、車両10のイグニッションスイッチ、パワースイッチ、又は、スタートスイッチ等がオフされたとき終了する。
ステップS1において、撮影部21は、周囲画像を取得する。すなわち、撮影部21は、車両10の周囲を撮影し、その結果得られた周囲画像を情報処理部12に供給する。
ステップS2において、デプス推定部32は、デプス推定処理を行う。すなわち、デプス推定部32は、周囲画像及びセンサデータのうち少なくとも1つに基づいて、車両10の周囲の物体までの距離であるデプスの推定処理を行う。
なお、デプス推定処理には、任意の方法を用いることができる。例えば、撮影部21がステレオカメラを備える場合、デプス推定部32は、ステレオマッチングによりデプス推定処理を行う。或いは、例えば、センサ部22がLiDAR等のデプスセンサを備える場合、デプス推定部32は、デプスセンサからのセンサデータに基づいてデプス推定処理を行う。
デプス推定部32は、例えば、デプスの推定結果を示す3D情報(例えば、3Dポイントクラウド等)を生成し、生成した3D情報を動き推定部35に供給する。
ステップS3において、自己位置推定部31は、自己位置推定処理を行う。すなわち、自己位置推定部31は、車両10の位置及び姿勢を推定する。
なお、自己位置推定処理には、任意の方法を用いることができる。例えば、自己位置推定部31は、周囲画像、及び、LiDAR等のデプスセンサのセンサデータに基づいて、SLAMを行うことにより、自己位置推定を行う。この場合、自己位置推定部31は、例えば、GNSS受信機により受信されたGNSS信号、IMUにより検出されたセンサデータ、レーダにより検出されたセンサデータ等を用いてもよい。
なお、例えば、自己位置推定部31は、最初の自己位置推定処理により、ワールド座標系における車両10の絶対位置及び絶対姿勢を推定する。その後、自己位置推定部31は、2回目以降の自己位置推定処理により、例えば、1つ前の自己位置推定処理により推定された車両10の位置及び姿勢からの変化量を推定する。そして、自己位置推定部31は、推定した車両10の位置及び姿勢の変化量に基づいて、車両10の絶対位置及び絶対姿勢を推定する。
自己位置推定部31は、車両10の自己位置の推定結果を示す情報を動き推定部35に供給する。
ステップS4において、領域検出部33は、領域検出処理を行うタイミングであるか否かを判定する。領域検出処理を行うタイミングであると判定された場合、処理はステップS5に進む。
なお、領域検出処理は、デプス推定処理、自己位置推定処理、及び、後述する画素フロー推定処理より処理負荷が大きく、所要時間が長い。そのため、領域検出処理の実行頻度は、デプス推定処理、自己位置推定処理、及び、画素フロー推定処理の実行頻度より低く設定される。
例えば、デプス推定処理、自己位置推定処理、及び、画素フロー推定処理は、周囲画像の撮影に同期して、周囲画像のフレーム毎に実行される。
一方、領域検出処理は、例えば図3に示されるように、周囲画像の5フレーム毎に実行される。具体的には、時刻t0、時刻t5、及び、時刻t10に撮影された周囲画像に対して領域検出処理が行われる。従って、時刻t0、時刻t5、及び、時刻t10に撮影された周囲画像が取得された後の期間T0、期間T5、及び、期間T10において、領域検出処理を行うタイミングであると判定される。
ステップS5において、領域検出部33は、領域検出処理を行う。
例えば、領域検出部33は、事前にCNN(Convolutional Neural Network)等を用いた学習処理により得られた領域分割画像生成器を用いて、周囲画像に対してセマンティックセグメンテーションを行う。これにより、周囲画像内の各画素に対して、各画素が属するオブジェクトの種類を示すラベル付けが行われる。その結果、周囲画像内の各オブジェクトに対応するオブジェクト領域が検出され、周囲画像が1以上のオブジェクト領域に分割される。
そして、領域検出部33は、周囲画像の各画素のラベルを示す画像(以下、領域分割画像と称する)を生成する。この各画素のラベルにより、領域分割画像内の各オブジェクト領域の位置が示され、その結果、領域分割画像は、各オブジェクト領域により分割された画像となる。
図4は、周囲画像の具体例を模式的に示している。図4の周囲画像Pには、車両111、路面112、木113-1乃至木113-8、及び、空114が写っている。
そして、領域検出部33は、周囲画像Pに対してセマンティックセグメンテーションを行うことにより、図5に模式的に示される領域分割画像PSを生成する。領域分割画像PSは、周囲画像Pの車両111、路面112、木113-1乃至木113-8、及び、空114にそれぞれ対応するオブジェクト領域211、オブジェクト領域212、オブジェクト領域213-1乃至オブジェクト領域213-8、及び、オブジェクト領域214に分割されている。
なお、領域分割画像PSの座標系は、左上隅の画素を原点とし、水平方向をu軸とし、垂直方向をv軸とする座標系である。
次に、領域検出部33は、領域分割画像内の各オブジェクト領域の輪郭を検出する。
例えば、領域検出部33は、図5に示されるように、枠A1内のオブジェクト領域213-7の輪郭を構成する画素(以下、輪郭画素と称する)からなる輪郭画像を検出する。領域検出部33は、領域分割画像PS内の全てのオブジェクト領域に対して、この処理を行う。
これにより、例えば、図6に示されるように、オブジェクト領域211、オブジェクト領域212、オブジェクト領域213-1乃至オブジェクト領域213-8、及び、オブジェクト領域214にそれぞれ対応する、輪郭画像211A、輪郭画像212A、輪郭画像213A-1乃至輪郭画像213A-8、及び、輪郭画像214Aが検出される。
次に、領域検出部33は、各オブジェクト領域に関する情報を示す領域管理テーブルを生成する。
図7は、図5の領域分割画像PSに基づいて生成される領域管理テーブルの例を示している。領域管理テーブルは、ID、ラベル、動物体フラグ、及び、輪郭画素の各項目を含む。
IDは、各オブジェクト領域に一意に割り当てられる識別番号を示す。
ラベルは、各オブジェクト領域に対応するオブジェクトの種類を示す。
動物体フラグは、各オブジェクト領域に対応するオブジェクトが動物体か否かを示す。動物体フラグは、オブジェクトが動物体である場合に1に設定され、オブジェクトが静止物体である場合に0に設定される。
輪郭画素は、各オブジェクト領域の輪郭画像を構成する輪郭画素の座標を示す。
そして、領域検出部33は、領域分割画像及び領域管理テーブルを記憶部34に記憶させる。
その後、処理はステップS6に進む。
なお、領域検出処理は、周囲画像の複数のフレーム期間に渡って実行される。例えば、時刻t0に撮影された周囲画像P(t0)に対する領域検出処理は、期間T0乃至期間T4に渡って行われ、期間T5内に検出結果が取得される。
図2に戻り、一方、ステップS4において、領域検出処理を行うタイミングでないと判定された場合、ステップS5の処理はスキップされ、処理はステップS6に進む。
ステップS6において、動き推定部35は、フレーム間の画素フローの推定処理を行う。
例えば、動き推定部35は、1フレーム前の周囲画像の輪郭画素が検出及び推定されていない場合、1フレーム前の周囲画像の全ての画素の画素フローを推定する。例えば、図3の期間T1乃至期間T4においては、まだ領域検出処理が行われておらず、1フレーム前の周囲画像の輪郭画素が検出及び推定されていないため、1フレーム前の周囲画像の全ての画素の画素フローが推定される。
具体的には、例えば、動き推定部35は、1フレーム前の周囲画像と現在の周囲画像との間の画像マッチングにより、各画素の画素フロー(例えば、オプティカルフロー)を推定する。
なお、画像マッチングには、例えば、SIFT(Scale-Invariant Feature Transform)、テンプレート画像マッチング、Lukas-kanadeトラッカー等の任意の方法を用いることができる。
動き推定部35は、画素フローの推定結果を示す情報を領域推定部36に供給する。
一方、例えば、動き推定部35は、1フレーム前の周囲画像の輪郭画素が検出又は推定されている場合、各輪郭画素の画素フローを推定する。例えば、図3の期間T5以降においては、1フレーム前の周囲画像の輪郭画素が検出又は推定されているため、各輪郭画素の画素フローが推定される。
例えば、動き推定部35は、デプス推定部32により生成された3D情報、並びに、自己位置推定部31により推定された、1フレーム前の周囲画像と現在のフレームの周囲画像との間の車両10の位置及び姿勢の変化量に基づいて、静止物体のオブジェクト領域の輪郭画素の画素フローを推定する。
例えば、図8のAは、図5の領域分割画像PSの各オブジェクト領域のうちの静止物体のオブジェクト領域の輪郭画像を示している。すなわち、図8のAは、静止物体のオブジェクト領域212、オブジェクト領域213-1乃至オブジェクト領域213-8、及び、オブジェクト領域214にそれぞれ対応する輪郭画像212A、輪郭画像213A-1乃至輪郭画像213A-8、及び、輪郭画像214Aを示している。
そして、図8のBに模式的に示されるように、輪郭画像212A、輪郭画像213A-1乃至輪郭画像213A-8、及び、輪郭画像214Aを構成する各輪郭画素の画素フローが推定される。
なお、3D情報、並びに、車両10の位置及び姿勢の変化量に基づいて、静止物体のオブジェクト領域の輪郭画素の画素フローを推定することにより、画像マッチングを用いる場合と比較して、計算量が削減されるとともに、推定精度が向上する。
また、動き推定部35は、画像マッチングを用いて、動物体のオブジェクト領域の輪郭画素の画素フローを推定する。
例えば、図9のAは、図5の領域分割画像PSの各オブジェクト領域のうちの動物体のオブジェクト領域の輪郭画像を示している。すなわち、図9のAは、動物体のオブジェクト領域211に対応する輪郭画像211Aを示している。
そして、図9のBに模式的に示されるように、輪郭画像211Aを構成する各輪郭画素の画素フローが推定される。
次に、動き推定部35は、静止物体のオブジェクト領域の輪郭画素の画素フローと動物体のオブジェクト領域の輪郭画素の画素フローの推定結果を統合する。
例えば、図10に模式的に示されるように、図8のBの各静止物体のオブジェクト領域の輪郭画素の画素フロー、及び、図9のBの動物体のオブジェクト領域の輪郭画素の画素フローが統合される。
動き推定部35は、統合後の画素フローの推定結果を示す情報を領域推定部36に供給する。
図2に戻り、ステップS7において、動き推定部35は、領域検出結果が得られているか否かを判定する。領域検出結果が得られていないと判定された場合、処理はステップS1に戻る。
これは、例えば、図3の例において、時刻t5より前の期間T0乃至期間T4において、最初の領域検出処理が終了する前の場合である。
その後、ステップS7において、領域検出結果が得られていると判定されるまで、ステップS1乃至ステップS7の処理が繰り返し実行される。
一方、ステップS7において、領域検出結果が得られていると判定された場合、処理はステップS8に進む。
ステップS8において、動き推定部35は、新たな領域検出結果が得られたか否かを判定する。新たな領域検出結果が得られたと判定された場合、処理はステップS9に進む。
例えば、図3の例では、時刻t5の前及び時刻t10の前に領域検出処理が終了し、領域検出結果が得られている。従って、その後の期間T5及び期間T10において、新たな領域検出結果が得られたと判定される。
ステップS9において、動き推定部35は、領域検出処理中の画素フローの推定処理を行う。例えば、動き推定部35は、領域検出処理に用いられた周囲画像と、その領域検出処理中に得られた周囲画像のうち最も新しい周囲画像との間の画素フローの推定処理を行う。
例えば、図3の例の場合、周囲画像P(t0)が領域検出処理に用いられ、その領域検出処理中に周囲画像P(t1)乃至周囲画像P(t4)が得られている。この場合、周囲画像P(t0)と周囲画像P(t4)との間の画素フローの推定処理が行われる。例えば、期間T1乃至期間T4に得られた画素フローの推定結果を画素毎に加算することにより、周囲画像P(t0)と周囲画像P(t4)との間の各画素の画素フローが推定される。
また、周囲画像P(t5)が領域検出処理に用いられ、その領域検出処理中に周囲画像P(t6)乃至周囲画像P(t9)が得られている。この場合、周囲画像P(t5)と周囲画像P(t9)との間の画素フローの推定処理が行われる。例えば、期間T6乃至期間T9に得られた画素フローの推定結果を輪郭画素毎に加算することにより、周囲画像P(t5)と周囲画像P(t9)との間の各輪郭画素の画素フローが推定される。
動き推定部35は、領域検出処理中の画素フローの推定結果を示す情報を領域推定部36に供給する。
ステップS10において、領域推定部36は、領域検出結果、及び、領域検出処理中の画素フローの推定結果に基づいて、領域推定処理を行う。
例えば、領域推定部36は、周囲画像において検出された各オブジェクト領域の輪郭画素を、ステップS9の処理で推定された画素フローを用いて移動させる。
例えば、期間T5において、周囲画像P(t0)において検出された各オブジェクト領域の輪郭画素が、周囲画像P(t0)と周囲画像P(t4)の間の画素フローを用いて移動される。これにより、周囲画像P(t4)における各オブジェクト領域の輪郭画素の位置が推定される。
また、例えば、期間T10において、周囲画像P(t5)において検出された各オブジェクト領域の輪郭画素が、周囲画像P(t5)と周囲画像P(t9)の間の画素フローを用いて移動される。これにより、周囲画像P(t9)における各オブジェクト領域の輪郭画素の位置が推定される。
次に、領域推定部36は、移動後の各オブジェクト領域の輪郭画素に基づいて多角形近似を行うことにより、移動後の各オブジェクト領域の輪郭画像を推定する。
次に、領域推定部36は、推定した輪郭画像毎に多角形の内外判定を行うことにより、輪郭画像内の各画素のラベルを決定する。
例えば、図11に模式的に示されるように、輪郭画像211Aの各輪郭画素が、画素フローを用いて枠A2内の丸で示される位置に移動される。
この場合、輪郭画像211Aは、車両10に接近する方向に移動しているため、移動後の輪郭画素間に隙間が生じる。そこで、枠A2内の輪郭画素に対して多角形近似を行うことにより、図12の輪郭画像251Aが推定される。
そして、推定した輪郭画像251Aに対して多角形の内外判定が行われ、輪郭画像251A内の各画素のラベルが決定する。これにより、図13に模式的に示されるように、オブジェクト領域211の移動先のオブジェクト領域261が推定される。
また、移動前のオブジェクト領域211の穴埋め処理が行われる。例えば、移動前のオブジェクト領域211内の各画素のラベルが、オブジェクト領域211の周囲の画素のラベルを用いた投票処理により決定される。
このようにして、例えば、周囲画像P(t0)内の各オブジェクト領域の周囲画像P(t4)内における位置が推定されるとともに、移動前の各オブジェクト領域の穴埋め処理が行われる。その結果、周囲画像P(t4)を各オブジェクト領域により分割した推定領域分割画像が生成される。
また、例えば、周囲画像P(t5)内の各オブジェクト領域の周囲画像P(t9)内における位置が推定されるとともに、移動前の各オブジェクト領域の穴埋め処理が行われる。その結果、周囲画像P(t9)を各オブジェクト領域により分割した推定領域分割画像が生成される。
次に、領域推定部36は、生成した推定分割領域画像の各オブジェクト領域に関する情報を示す推定領域管理テーブルを生成する。なお、推定領域管理テーブルは、図7の領域管理テーブルと同様の構成とされる。
そして、領域推定部36は、推定領域分割画像及び推定領域管理テーブルを記憶部37に記憶させる。
その後、処理はステップS12に進む。
一方、ステップS8において、新たな領域検出結果が得られていないと判定された場合、処理はステップS11に進む。例えば、図3の期間T6乃至期間T9及び期間T11においては、その前の期間において領域検出処理が終了していないため、新たな領域検出結果が得られていないと判定される。
ステップS11において、領域推定部36は、1つ前の領域推定結果、及び、フレーム間の画素フローの推定結果に基づいて、領域推定処理を行う。
例えば、領域推定部36は、期間T6において、1つ前の期間T5の領域推定処理により生成された推定領域分割画像、及び、推定領域管理テーブルを記憶部37から読み出す。そして、領域推定部36は、ステップS10と同様の処理により、読み出した推定領域分割画像内の各オブジェクト領域を、周囲画像P(t5)と周囲画像P(t6)の間の画素フローを用いて移動させる。
これにより、例えば、周囲画像P(t5)内の各オブジェクト領域の周囲画像P(t6)内における位置が推定される。さらに、移動前の各オブジェクト領域の穴埋め処理が行われる。その結果、周囲画像P(t6)を各オブジェクト領域により分割した推定領域分割画像が生成される。
また、例えば、領域推定部36は、期間T7において、1つ前の期間T6の領域推定処理により生成された推定領域分割画像、及び、推定領域管理テーブルを記憶部37から読み出す。そして、領域推定部36は、ステップS10と同様の処理により、読み出した推定領域分割画像内の各オブジェクト領域を、周囲画像P(t6)と周囲画像P(t7)の間の画素フローを用いて移動させる。
これにより、例えば、周囲画像P(t6)内の各オブジェクト領域の周囲画像P(t7)内における位置が推定される。さらに、移動前の各オブジェクト領域に対応する領域の穴埋め処理が行われる。その結果、位置が推定された各オブジェクト領域により周囲画像P(t7)を分割した推定領域分割画像が生成される。
また、領域推定部36は、生成した推定分割領域画像の各オブジェクト領域に関する情報を示す推定領域管理テーブルを生成する。
領域推定部36は、推定領域分割画像及び推定領域管理テーブルを記憶部37に記憶させる。
その後、処理はステップS12に進む。
以上のステップS8乃至ステップS11の処理により、領域検出処理により得られる領域分割画像よりリアルタイム性の高い推定領域分割画像が得られる。換言すれば、各オブジェクト領域の位置が領域分割画像より現在の位置に近い推定領域分割画像が得られる。その結果、領域分割処理のみを行う場合と比較して、各オブジェクト領域の位置をより迅速かつ詳細に認識することができる。
例えば、図14に示されるように、期間T4において、周囲画像P(t0)に対応する領域分割画像PS(t0)が得られてから、期間T9において、周囲画像P(t5)に対応する領域分割画像PS(t5)が得られるまでの間に、周囲画像P(t4)乃至周囲画像P(t8)に対応する推定領域分割画像PSe(t4)乃至推定領域分割画像PSe(t8)が得られる。
すなわち、領域分割処理のみを行う場合、期間T4において、時刻t0に撮影された周囲画像P(t0)の各オブジェクト領域の位置が検出され、期間T9において、時刻t5に撮影された周囲画像P(t5)における各オブジェクト領域の位置が検出される。
一方、領域推定処理を行うことにより、期間T5乃至期間T9において、時刻t4乃至時刻t8に撮影された周囲画像P(t4)乃至周囲画像P(t8)の各オブジェクト領域の位置が推定される(補間される)。すなわち、各周囲画像の各オブジェクト領域の位置が、迅速かつ詳細に認識される。
なお、図14では、図を分かりやすくするために、車両111に対応するオブジェクト領域の位置のみを移動させている。
図2に戻り、ステップS12において、マスク情報生成部38は、領域推定結果に基づいて、マスク情報を生成する。具体的には、マスク情報生成部38は、最新の推定領域管理テーブルを記憶部37から読み出す。そして、マスク情報生成部38は、推定領域管理テーブルにおいて動物体フラグが1に設定されているオブジェクト領域(以下、動物体領域と称する)をマスクしたマスク情報を生成する。このマスク情報においては、動物体領域の輪郭画素からなる輪郭画像内の各画素の画素値が0に設定され、それ以外の画素の画素値が1に設定される。マスク情報生成部38は、生成したマスク情報を自己位置推定部31に供給する。
自己位置推定部31は、次のステップS3の自己位置推定処理において、マスク情報を用いて周囲画像をマスクして、自己位置推定処理を行う。すなわち、自己位置推定部31は、周囲画像のうち、マスク情報に示される動物体領域内の画像を用いずに、自己位置推定処理を行う。
例えば、図15に模式的に示されるように、周囲画像P11の枠A11内の車両301の画像を用いずに、自己位置推定処理が行われる。
これにより、周囲画像内の動物体を用いずに、静止物体のみを用いて車両10の位置及び姿勢が推定されるため、推定精度が向上する。
その後、処理はステップS1に戻り、ステップS1以降の処理が実行される。
以上のようにして、領域分割処理のみを行う場合と比較して、各オブジェクト領域の位置の認識の遅れを抑制し、迅速かつ詳細に各オブジェクト領域の位置を認識することができる。その結果、より適切にマスク情報を生成することができ、車両10の自己位置の推定精度が向上する。
<AE制御及び物体認識処理>
次に、図16のフローチャートを参照して、車両10により実行されるAE(自動露出)制御及び物体認識処理について説明する。
次に、図16のフローチャートを参照して、車両10により実行されるAE(自動露出)制御及び物体認識処理について説明する。
この処理は、例えば、車両10を起動し、運転を開始するための操作が行われたとき、例えば、車両10のイグニッションスイッチ、パワースイッチ、又は、スタートスイッチ等がオンされたとき開始される。また、この処理は、例えば、運転を終了するための操作が行われたとき、例えば、車両10のイグニッションスイッチ、パワースイッチ、又は、スタートスイッチ等がオフされたとき終了する。
ステップS101乃至ステップS111において、図2のステップS1乃至ステップS11と同様の処理が行われる。
ステップS112において、マスク情報生成部38は、領域推定結果に基づいて、マスク情報を生成する。具体的には、マスク情報生成部38は、最新の推定領域管理テーブルを記憶部37から読み出す。そして、マスク情報生成部38は、推定領域管理テーブルにおいて演算対象となるオブジェクトのラベルが設定されているオブジェクト領域(以下、演算対象領域と称する)以外の領域をマスクしたマスク情報を生成する。このマスク情報においては、演算対象領域の輪郭画素からなる輪郭画像内の各画素の画素値が1に設定され、それ以外の画素の画素値が0に設定される。マスク情報生成部38は、生成したマスク情報をデータ取得部11又は物体認識部39に供給する。
なお、演算対象とするオブジェクトの種類は、例えば、事前に設定されていてもよいし、ユーザにより設定されてもよい。
ステップS113において、車両10は、マスク情報に基づいて、AE又は物体認識処理を行う。
例えば、物体認識部39は、周囲画像のうち、マスク情報に示される演算対象領域内の画像のみを対象に物体認識処理を行う。例えば、図17に模式的に示されるように、周囲画像P12の枠A12内の標識321の画像のみを対象に物体認識処理が行われる。これにより、所望の物体をより迅速かつ正確に認識することができる。
また、例えば、撮影部21は、周囲画像のうち、マスク情報に示される演算対象領域内の画像のみを用いてAEを行う。例えば、図18に模式的に示されるように、周囲画像P13の枠A13内の白飛びした領域を除いてAEが行われる。その結果、AEを迅速かつ適切に行うことができる。例えば、特徴点が多いと推定される建物の白飛びしている部分を白飛びしないようにすることができる。
その後、処理はステップS101に戻り、ステップS101以降の処理が実行される。
以上のようにして、領域分割処理のみを行う場合と比較して、各オブジェクト領域の位置の認識の遅れを抑制し、迅速かつ詳細に各オブジェクト領域の位置を認識することができる。その結果、より適切にマスク情報を生成することができ、より迅速かつ正確に物体を認識したり、より迅速かつ適切にAEを実行したりすることができる。
<<2.変形例>>
以下、上述した本技術の実施の形態の変形例について説明する。
以下、上述した本技術の実施の形態の変形例について説明する。
以上の説明では、周囲画像のフレーム毎にデプス推定処理、自己値推定処理、及び、画素フロー推定処理を実行する例を示したが、これらの処理を複数のフレーム毎に実行するようにしてもよい。
また、画素フローの推定処理に、デプスの推定結果及び車両10の自己位置の推定結果を用いないようにしてもよい。
さらに、例えば、動き推定部35が、画素単位でなく、例えば、ブロック単位、オブジェクト単位等の動きを推定するようにしてもよい。
また、例えば、領域検出部33が、セマンティックセグメンテーション以外の手法を用いて、周囲画像内のオブジェクト領域の検出を行うようにしてもよい。
さらに、以上の説明では、オブジェクト領域の検出結果及び推定結果をマスク情報の生成処理に用いる例を示したが、その他の処理に用いるようにしてもよい。その場合、例えば、該当する処理を実行する実行部が情報処理部12に設けられる。
また、本技術を適用可能な車両の種類は、画像内のオブジェクト領域の検出結果を用いる車両であれば特に限定されない。また、本技術は、画像内の各オブジェクト領域の検出結果を用いる各種の移動体にも適用することができる。例えば、パーソナルモビリティ、飛行機、船舶、建設機械、農業機械(トラクター)等の移動体にも本技術を適用することができる。なお、本技術が適用可能な移動体には、例えば、ドローン、ロボット等のユーザが搭乗せずにリモートで運転(操作)する移動体も含まれる。
<<3.その他>>
<コンピュータの構成例>
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
<コンピュータの構成例>
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図19は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータ500において、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
バス504には、さらに、入出力インタフェース505が接続されている。入出力インタフェース505には、入力部506、出力部507、記憶部508、通信部509、及びドライブ510が接続されている。
入力部506は、入力スイッチ、ボタン、マイクロフォン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記憶部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインタフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
以上のように構成されるコンピュータ500では、CPU501が、例えば、記憶部508に記録されているプログラムを、入出力インタフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ500(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インタネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータ500では、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インタフェース505を介して、記憶部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記憶部508にインストールすることができる。その他、プログラムは、ROM502や記憶部508に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
<構成の組み合わせ例>
本技術は、以下のような構成をとることもできる。
本技術は、以下のような構成をとることもできる。
(1)
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、
画像間の動き推定を行う動き推定部と、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と
を備える情報処理装置。
(2)
前記領域推定部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果、及び、前記第2の画像と前記第2の画像より後の第3の画像との間の動き推定の結果に基づいて、前記第3の画像内の前記オブジェクト領域の位置を推定する
前記(1)に記載の情報処理装置。
(3)
前記第2の画像は、前記領域検出部が前記第1の画像の次に前記オブジェクト領域を検出する第4の画像より前の画像である
前記(1)又は(2)に記載の情報処理装置。
(4)
前記第2の画像は、前記第4の画像の1つ前の画像である
前記(3)に記載の情報処理装置。
(5)
前記動き推定部は、前記オブジェクト領域の輪郭を構成する画素である輪郭画素の動きを推定し、
前記領域推定部は、前記輪郭画素の動きの推定結果に基づいて、前記オブジェクト領域の位置を推定する
前記(1)乃至(4)のいずれかに記載の情報処理装置。
(6)
前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部を
さらに備える前記(1)乃至(5)のいずれかに記載の情報処理装置。
(7)
前記第1の画像及び前記第2の画像は、移動体の周囲を撮影した画像であり、
前記実行部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果に基づいて、前記移動体の自己位置推定に用いる領域と用いない領域を示すマスク情報を生成する
前記(6)に記載の情報処理装置。
(8)
前記第1の画像及び前記第2の画像は、移動体の周囲を撮影した画像であり、
前記実行部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果に基づいて、前記移動体の周囲の物体認識に用いる領域と用いない領域を示すマスク情報を生成する
前記(6)に記載の情報処理装置。
(9)
前記実行部は、前記第1の画像及び前記第2の画像を撮影した撮影部の露出制御に用いる領域と用いない領域を示すマスク情報を生成する
前記(6)に記載の情報処理装置。
(10)
前記領域検出部は、検出した前記オブジェクト領域の位置を示す画像である領域分割画像を生成する
前記(1)乃至(9)のいずれかに記載の情報処理装置。
(11)
前記領域推定部は、推定した各前記オブジェクト領域の位置を示す画像である推定領域分割画像を生成する
前記(10)に記載の情報処理装置。
(12)
前記領域検出部は、セマンティックセグメンテーションにより前記領域分割画像を生成する
前記(10)又は(11)に記載の情報処理装置。
(13)
情報処理装置が、
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、
画像間の動き推定を行い、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する
情報処理方法。
(14)
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、
画像間の動き推定を行い、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する
処理をコンピュータに実行させるためのプログラム。
(15)
周囲を撮影する撮影部と、
前記撮影部により撮影された画像のうち複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、
画像間の動き推定を行う動き推定部と、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と、
前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部と
を備える移動体。
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、
画像間の動き推定を行う動き推定部と、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と
を備える情報処理装置。
(2)
前記領域推定部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果、及び、前記第2の画像と前記第2の画像より後の第3の画像との間の動き推定の結果に基づいて、前記第3の画像内の前記オブジェクト領域の位置を推定する
前記(1)に記載の情報処理装置。
(3)
前記第2の画像は、前記領域検出部が前記第1の画像の次に前記オブジェクト領域を検出する第4の画像より前の画像である
前記(1)又は(2)に記載の情報処理装置。
(4)
前記第2の画像は、前記第4の画像の1つ前の画像である
前記(3)に記載の情報処理装置。
(5)
前記動き推定部は、前記オブジェクト領域の輪郭を構成する画素である輪郭画素の動きを推定し、
前記領域推定部は、前記輪郭画素の動きの推定結果に基づいて、前記オブジェクト領域の位置を推定する
前記(1)乃至(4)のいずれかに記載の情報処理装置。
(6)
前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部を
さらに備える前記(1)乃至(5)のいずれかに記載の情報処理装置。
(7)
前記第1の画像及び前記第2の画像は、移動体の周囲を撮影した画像であり、
前記実行部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果に基づいて、前記移動体の自己位置推定に用いる領域と用いない領域を示すマスク情報を生成する
前記(6)に記載の情報処理装置。
(8)
前記第1の画像及び前記第2の画像は、移動体の周囲を撮影した画像であり、
前記実行部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果に基づいて、前記移動体の周囲の物体認識に用いる領域と用いない領域を示すマスク情報を生成する
前記(6)に記載の情報処理装置。
(9)
前記実行部は、前記第1の画像及び前記第2の画像を撮影した撮影部の露出制御に用いる領域と用いない領域を示すマスク情報を生成する
前記(6)に記載の情報処理装置。
(10)
前記領域検出部は、検出した前記オブジェクト領域の位置を示す画像である領域分割画像を生成する
前記(1)乃至(9)のいずれかに記載の情報処理装置。
(11)
前記領域推定部は、推定した各前記オブジェクト領域の位置を示す画像である推定領域分割画像を生成する
前記(10)に記載の情報処理装置。
(12)
前記領域検出部は、セマンティックセグメンテーションにより前記領域分割画像を生成する
前記(10)又は(11)に記載の情報処理装置。
(13)
情報処理装置が、
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、
画像間の動き推定を行い、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する
情報処理方法。
(14)
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、
画像間の動き推定を行い、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する
処理をコンピュータに実行させるためのプログラム。
(15)
周囲を撮影する撮影部と、
前記撮影部により撮影された画像のうち複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、
画像間の動き推定を行う動き推定部と、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と、
前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部と
を備える移動体。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
10 車両, 11 データ取得部, 12 情報処理部, 13 動作制御部, 21 撮影部, 22 センサ部, 31 自己位置推定部, 32 デプス推定部, 33 領域検出部, 35 動き推定部, 36 領域推定部, 38 マスク情報生成部, 39 物体認識部
Claims (15)
- 複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、
画像間の動き推定を行う動き推定部と、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と
を備える情報処理装置。 - 前記領域推定部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果、及び、前記第2の画像と前記第2の画像より後の第3の画像との間の動き推定の結果に基づいて、前記第3の画像内の前記オブジェクト領域の位置を推定する
請求項1に記載の情報処理装置。 - 前記第2の画像は、前記領域検出部が前記第1の画像の次に前記オブジェクト領域を検出する第4の画像より前の画像である
請求項1に記載の情報処理装置。 - 前記第2の画像は、前記第4の画像の1つ前の画像である
請求項3に記載の情報処理装置。 - 前記動き推定部は、前記オブジェクト領域の輪郭を構成する画素である輪郭画素の動きを推定し、
前記領域推定部は、前記輪郭画素の動きの推定結果に基づいて、前記オブジェクト領域の位置を推定する
請求項1に記載の情報処理装置。 - 前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部を
さらに備える請求項1に記載の情報処理装置。 - 前記第1の画像及び前記第2の画像は、移動体の周囲を撮影した画像であり、
前記実行部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果に基づいて、前記移動体の自己位置推定に用いる領域と用いない領域を示すマスク情報を生成する
請求項6に記載の情報処理装置。 - 前記第1の画像及び前記第2の画像は、移動体の周囲を撮影した画像であり、
前記実行部は、前記第2の画像内の前記オブジェクト領域の位置の推定結果に基づいて、前記移動体の周囲の物体認識に用いる領域と用いない領域を示すマスク情報を生成する
請求項6に記載の情報処理装置。 - 前記実行部は、前記第1の画像及び前記第2の画像を撮影した撮影部の露出制御に用いる領域と用いない領域を示すマスク情報を生成する
請求項6に記載の情報処理装置。 - 前記領域検出部は、検出した前記オブジェクト領域の位置を示す画像である領域分割画像を生成する
請求項1に記載の情報処理装置。 - 前記領域推定部は、推定した各前記オブジェクト領域の位置を示す画像である推定領域分割画像を生成する
請求項10に記載の情報処理装置。 - 前記領域検出部は、セマンティックセグメンテーションにより前記領域分割画像を生成する
請求項10に記載の情報処理装置。 - 情報処理装置が、
複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、
画像間の動き推定を行い、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する
情報処理方法。 - 複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出し、
画像間の動き推定を行い、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する
処理をコンピュータに実行させるためのプログラム。 - 周囲を撮影する撮影部と、
前記撮影部により撮影された画像のうち複数の画像内のオブジェクト毎の領域であるオブジェクト領域を検出する領域検出部と、
画像間の動き推定を行う動き推定部と、
第1の画像内の前記オブジェクト領域の検出結果、及び、前記第1の画像と前記第1の画像より後の第2の画像との間の動き推定の結果に基づいて、前記第2の画像内の前記オブジェクト領域の位置を推定する領域推定部と、
前記オブジェクト領域の位置の推定結果に基づいて、所定の処理を実行する実行部と
を備える移動体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018063527 | 2018-03-29 | ||
JP2018-063527 | 2018-03-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019188392A1 true WO2019188392A1 (ja) | 2019-10-03 |
Family
ID=68059995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/010761 WO2019188392A1 (ja) | 2018-03-29 | 2019-03-15 | 情報処理装置、情報処理方法、プログラム、及び、移動体 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2019188392A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022137290A1 (ja) * | 2020-12-21 | 2022-06-30 | 日本電信電話株式会社 | 移動判定装置、移動判定方法、及び移動判定プログラム |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010113466A (ja) * | 2008-11-05 | 2010-05-20 | Toshiba Corp | 対象追跡装置、対象追跡プログラム及び方法 |
JP2010244462A (ja) * | 2009-04-09 | 2010-10-28 | Fujifilm Corp | 人物追跡装置、人物追跡方法及びプログラム |
JP2012073971A (ja) * | 2010-09-30 | 2012-04-12 | Fujifilm Corp | 動画オブジェクト検出装置、方法、及びプログラム |
JP2016213781A (ja) * | 2015-05-13 | 2016-12-15 | キヤノン株式会社 | 撮像装置、その制御方法、および制御プログラム |
JP2018009918A (ja) * | 2016-07-15 | 2018-01-18 | 株式会社リコー | 自己位置検出装置、移動体装置及び自己位置検出方法 |
WO2018051459A1 (ja) * | 2016-09-15 | 2018-03-22 | 三菱電機株式会社 | 物体検出装置および物体検出方法 |
-
2019
- 2019-03-15 WO PCT/JP2019/010761 patent/WO2019188392A1/ja active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010113466A (ja) * | 2008-11-05 | 2010-05-20 | Toshiba Corp | 対象追跡装置、対象追跡プログラム及び方法 |
JP2010244462A (ja) * | 2009-04-09 | 2010-10-28 | Fujifilm Corp | 人物追跡装置、人物追跡方法及びプログラム |
JP2012073971A (ja) * | 2010-09-30 | 2012-04-12 | Fujifilm Corp | 動画オブジェクト検出装置、方法、及びプログラム |
JP2016213781A (ja) * | 2015-05-13 | 2016-12-15 | キヤノン株式会社 | 撮像装置、その制御方法、および制御プログラム |
JP2018009918A (ja) * | 2016-07-15 | 2018-01-18 | 株式会社リコー | 自己位置検出装置、移動体装置及び自己位置検出方法 |
WO2018051459A1 (ja) * | 2016-09-15 | 2018-03-22 | 三菱電機株式会社 | 物体検出装置および物体検出方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022137290A1 (ja) * | 2020-12-21 | 2022-06-30 | 日本電信電話株式会社 | 移動判定装置、移動判定方法、及び移動判定プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11915502B2 (en) | Systems and methods for depth map sampling | |
US10803600B2 (en) | Information processing device, information processing method, and program | |
JP5782088B2 (ja) | 歪みのあるカメラ画像を補正するシステム及び方法 | |
CN110796692A (zh) | 用于同时定位与建图的端到端深度生成模型 | |
US20230110116A1 (en) | Advanced driver assist system, method of calibrating the same, and method of detecting object in the same | |
US11042999B2 (en) | Advanced driver assist systems and methods of detecting objects in the same | |
US10929986B2 (en) | Techniques for using a simple neural network model and standard camera for image detection in autonomous driving | |
US11741720B2 (en) | System and method for tracking objects using using expanded bounding box factors | |
JP2023530762A (ja) | 3dバウンディングボックスからの単眼深度管理 | |
CN113240813B (zh) | 三维点云信息确定方法及装置 | |
WO2019163576A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
WO2022099510A1 (zh) | 对象识别方法、装置、计算机设备和存储介质 | |
Srigrarom et al. | Hybrid motion-based object detection for detecting and tracking of small and fast moving drones | |
US20200258240A1 (en) | Method of detecting moving objects via a moving camera, and related processing system, device and computer-program product | |
WO2019188392A1 (ja) | 情報処理装置、情報処理方法、プログラム、及び、移動体 | |
WO2020026798A1 (ja) | 制御装置、制御方法、およびプログラム | |
US20220277480A1 (en) | Position estimation device, vehicle, position estimation method and position estimation program | |
US20230135230A1 (en) | Electronic device and method for spatial synchronization of videos | |
US10832444B2 (en) | System and method for estimating device pose in a space | |
Cimarelli et al. | A case study on the impact of masking moving objects on the camera pose regression with CNNs | |
JP2022175900A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN113661513A (zh) | 一种图像处理方法、设备、图像处理***及存储介质 | |
CN111179312A (zh) | 基于3d点云和2d彩色图像相结合的高精度目标跟踪方法 |
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: 19776726 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19776726 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |