Method and device for stereo images processing
First Claim
1. A method for stereo image processing in which:
- left and right source images are loaded line by line using a DMA controller from external memory into local memory buffers;
the left and right source images are processed line by line using cores of signal processors, while their rectification is being performed, and the rectified left and right images are written to the buffers of the local memory;
a disparity map is computed, using a hardware accelerator using the rectified left and right images, and is written to the local memory buffer, wherein detecting peaks in the disparity map is carried out in parallel for all pixels in a processing window of a predetermined size, and wherein the disparity map is interpolated after detecting the peaks by median filtering on nearest valid pixels of eight directions with a programmable length of the rays according to an anisotropic filtering algorithm or a major isotropic filtering; and
the rectified left and right images are processed, using the cores of the signal processors, using the disparity map to create processed pixel-related information data structures that are written to the local memory and then unloaded with the use of the DMA controller into the external memory.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention is related to the processing of stereo pairs (images obtained simultaneously from two cameras), namely, to methods and devices for processing stereo images. The technical result of the invention is creation of a method and a device for processing high-resolution stereo images with improved efficiency (performance) using a limited amount of memory with the help of a hardware accelerator for calculating the disparity map using a semi-global stereo matching algorithm with three-stage post processing (peak detection, interpolation and median filtering), which requires placing only a few strings (from 4 to 24 at different stages of calculating) in the local memory, which allows to obtain a high-quality disparity map in real time, and also by placing programmable cores of signal processors into the device, which prepare data for calculating the disparity map (rectification of images) and final processing of data using video analytics algorithms, and the hardware accelerator, which minimizes the transfer between external memory and the device, since the left and right images are fully loaded only once, and the results of the processing are data structures of a much smaller volume.
23 Citations
16 Claims
-
1. A method for stereo image processing in which:
-
left and right source images are loaded line by line using a DMA controller from external memory into local memory buffers; the left and right source images are processed line by line using cores of signal processors, while their rectification is being performed, and the rectified left and right images are written to the buffers of the local memory; a disparity map is computed, using a hardware accelerator using the rectified left and right images, and is written to the local memory buffer, wherein detecting peaks in the disparity map is carried out in parallel for all pixels in a processing window of a predetermined size, and wherein the disparity map is interpolated after detecting the peaks by median filtering on nearest valid pixels of eight directions with a programmable length of the rays according to an anisotropic filtering algorithm or a major isotropic filtering; and the rectified left and right images are processed, using the cores of the signal processors, using the disparity map to create processed pixel-related information data structures that are written to the local memory and then unloaded with the use of the DMA controller into the external memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 16)
-
-
10. A stereo image processing device comprising several cores of signal processors and a hardware accelerator connected via an arbiter to local memory, a DMA controller, a program cache and a data cache, while the cores of the signal processors and the hardware accelerator are connected to an external system interface and are configured to exchange data therethrough under the control of an external central processing unit, and the DMA controller, the program cache and the data cache are connected to the external memory and configured to exchange data, while
the arbiter is configured to control the access of the device to the external memory; -
the DMA controller is configured to transfer data between the device and the external memory, while loading the left and right source images from the external memory line by line into the local memory buffers; the cores of the signal processors are configured to process line by line the left and right source images, while rectifying them and writing the rectified left and right images to the buffers of the local memory; the hardware accelerator is configured to calculate the disparity map, using the rectified left and right images, and, write it to the local memory buffer, wherein the hardware accelerator comprises left and right image pipelines containing a matching cost function calculating unit and an accumulating cost calculating unit that are configured to simultaneously calculate left and right disparity maps or are combined into one device for processing the left disparity map, a unit for checking the disparity map of the left image using the disparity map of the right image, a post-processing unit of the disparity map containing a peak detection unit, an interpolation unit, a median filtering unit, as well as a control unit, and wherein the interpolation unit is configured to perform parallel processing of N pixels of N lines, wherein the maximum length of the rays in all directions is N; the cores of the signal processors are designed to process the rectified left and right images the disparity map to create processed pixel-related information data structures and to write the data structures to the local memory; and the DMA controller is configured to unload the data structures from the local memory to the external memory. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification