Obstacle determination method, system, device and storage medium

By performing optical distortion correction and parallax processing on the images, depth maps and point cloud images are generated, solving the problem of slow obstacle judgment speed in unmanned control devices and achieving faster and more accurate obstacle detection.

CN116797506BActive Publication Date: 2026-03-17SHENZHEN WEITESHI TECH
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-15
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

In existing unmanned control devices, when relying on binocular cameras to determine obstacles, the image processing speed is slow and the computational resources are consumed.

Method used

After optical distortion correction of the acquired image, cells are constructed, convolution processing is performed to determine the disparity value, a depth map is generated and converted into a point cloud image, and finally obstacles are identified based on the point cloud image.

Benefits of technology

It improves the speed and accuracy of obstacle detection while reducing the consumption of computing resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116797506B_ABST
    Figure CN116797506B_ABST
Patent Text Reader

Abstract

The application provides an obstacle judgment method, system, device and storage medium. The obstacle judgment method comprises the following steps: image acquisition is performed on a preset direction, and at least two images are obtained; a support grid is determined according to the characteristics of pixel points of the images; a depth map is generated according to the support grid; a point cloud image is generated according to the depth map; and an obstacle is judged according to the point cloud image. The application is beneficial to improving the speed of obstacle judgment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of point clouds, and in particular to an obstacle detection method, system, device and storage medium. Background Technology

[0002] In some unmanned devices, binocular cameras are used to capture images of the road ahead, and the distance of objects in the road is determined based on the parallax between the two images. However, image processing is slow and consumes a lot of computing resources. Summary of the Invention

[0003] This invention proposes an obstacle detection method, system, device, and storage medium, which helps to improve the speed of obstacle detection.

[0004] Firstly, an obstacle detection method is provided, comprising:

[0005] Image acquisition is performed in a preset direction to obtain at least two images;

[0006] Based on the characteristics of the pixels in the image, the support grid is determined;

[0007] Generate a depth map based on the support grid;

[0008] Generate a point cloud image based on the depth map;

[0009] Identify obstacles based on point cloud images.

[0010] In one embodiment of the obstacle determination method, the image acquisition includes:

[0011] Acquire the first image and the second image;

[0012] Optical distortion correction is performed on the first image and the second image respectively to obtain the corrected first image and the corrected second image.

[0013] In one embodiment of the obstacle determination method, the step of determining the support grid based on the features of the pixels in the image includes:

[0014] Multiple cells are constructed on the corrected first image and the corrected second image;

[0015] Convolution processing is performed on the corrected first image and the corrected second image respectively to obtain the features of the first image and the features of the second image;

[0016] Based on the features of the first image and the features of the second image, determine the first cell disparity value of each cell of the first image relative to the second image, and determine the second cell disparity value of each cell of the second image relative to the first image.

[0017] Based on the parallax values ​​of the first and second cells, a support cell that meets the preset standard is selected.

[0018] In one embodiment of the obstacle determination method, the step of generating a depth map based on the support grid includes:

[0019] Interpolation is performed based on the first disparity support grid to obtain the interpolated first disparity map;

[0020] The depth of the corresponding support cell is calculated based on the disparity value of the support cell in the first disparity map after interpolation, and a depth map is obtained.

[0021] In one embodiment of the obstacle determination method, generating a point cloud image based on the depth map includes:

[0022] Based on the depth map, the pixels in the first image are transformed from the image coordinate system to the visible world coordinate system to obtain the initial point cloud;

[0023] Interpolate the initial point cloud to obtain a point cloud image.

[0024] In one embodiment of the obstacle determination method, determining obstacles based on the point cloud image includes:

[0025] Select a portion of the point cloud from the point cloud image;

[0026] Obstacles are identified based on a selected portion of the point cloud.

[0027] In one embodiment of the obstacle determination method, determining obstacles based on selected partial point clouds includes:

[0028] Multiple adjacent point cloud groups are determined from the partial point cloud, and each adjacent point cloud group contains at least 3 point clouds;

[0029] Based on three point clouds in an adjacent point cloud group, determine the normal corresponding to the plane formed by the three point clouds;

[0030] Obtain the vector corresponding to the forward direction of the mobile device;

[0031] Based on the normal and vector, determine whether the plane formed by the three point clouds is an obstacle.

[0032] Secondly, an obstacle detection system is provided, comprising:

[0033] The acquisition module is used to acquire images in a preset direction and obtain at least two images;

[0034] The determining module is used to determine the support grid based on the characteristics of the pixels in the image;

[0035] A depth map generation module is used to generate a depth map based on the support grid.

[0036] A point cloud image generation module is used to generate a point cloud image based on the depth map;

[0037] The judgment module is used to determine obstacles based on the point cloud image.

[0038] Thirdly, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program executable on the processor, wherein when the processor executes the program, the steps of the obstacle detection method as described above are implemented.

[0039] Fourthly, a storage medium is provided on which a computer program is stored, wherein when the computer program is executed by a processor, it implements the steps of the obstacle determination method described above.

[0040] This invention can analyze acquired images to determine support grids, thereby generating depth maps and point cloud images based on the support grids, and then judging obstacles based on the point cloud images, which helps to improve the speed and accuracy of obstacle judgment. Attached Figure Description

[0041] Various other advantages and benefits of the present invention will become apparent to those skilled in the art upon reading the detailed description of the preferred embodiments below. The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. It is obvious that the drawings described below are merely some embodiments of the invention, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.

[0042] The present invention will be further described below with reference to the accompanying drawings and embodiments. In the accompanying drawings:

[0043] Figure 1 This is a flowchart of an obstacle detection method according to an embodiment of the present invention;

[0044] Figure 2 This is a schematic diagram of a support grid according to an embodiment of the present invention;

[0045] Figure 3 This is a schematic diagram of the structure of an obstacle detection system according to an embodiment of the present invention;

[0046] Figure 4 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. Detailed Implementation

[0047] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0048] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains; the terminology used herein in the specification of the application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application; the terms "comprising" and "having," and any variations thereof, in the specification, claims, and foregoing drawings of this application, are intended to cover non-exclusive inclusion. The terms "first," "second," etc., in the specification, claims, or foregoing drawings of this application are used to distinguish different objects, not to describe a particular order.

[0049] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0050] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings.

[0051] Example 1

[0052] Figure 1 This is a flowchart illustrating the obstacle detection method used in this implementation. Please refer to [link / reference]. Figure 1 The present invention provides an obstacle detection method, comprising: steps 10, 20, 30, 40, and 50.

[0053] Step 10: Acquire images in the preset direction to obtain at least two images.

[0054] For example, take photos of the road ahead from at least two angles simultaneously to obtain two images of the same scene.

[0055] Step 20: Determine the support grid based on the characteristics of the pixels in the image.

[0056] Support grids are often characterized by specific features that facilitate more accurate registration of two images, thereby improving the accuracy of obstacle detection.

[0057] Step 30: Generate a depth map based on the support grid.

[0058] A depth map can be used to determine the distance between the object corresponding to a pixel and the camera. In other words, the depth map determines the position of the pixel in the shooting direction.

[0059] Step 40: Generate a point cloud image based on the depth map.

[0060] By transforming the coordinate system, the positional relationship of pixels in the world coordinate system is determined based on the information in the depth map, thereby generating a point cloud image.

[0061] Step 50: Identify obstacles based on the point cloud image.

[0062] Point cloud images determine the spatial relationships of objects; therefore, objects located in the forward direction can be considered obstacles.

[0063] This invention can analyze acquired images to determine support grids, thereby generating depth maps and point cloud images based on the support grids, and then judging obstacles based on the point cloud images, which helps to improve the speed and accuracy of obstacle judgment.

[0064] In some embodiments, the image acquisition includes steps 101 and 102.

[0065] Step 101: Obtain the first image and the second image.

[0066] The first image and the second image are two images obtained by taking pictures of the same scene from two different angles, specifically two images acquired by a stereo camera. Due to the shooting angles, there is a certain parallax between the first image and the second image, and a stereo 3D point cloud can be constructed based on the parallax.

[0067] Step 102: Perform optical distortion correction on the first image and the second image respectively to obtain the corrected first image and the corrected second image.

[0068] The acquired first and second images are corrected according to camera calibration to eliminate optical distortion and reduce interference caused by optical distortion. In addition, other preprocessing methods can be applied to the first and second images, such as image enhancement and binarization.

[0069] In some implementations, determining the support grid includes steps 201 and 202.

[0070] Step 201: Construct multiple cells on the corrected first image and the corrected second image.

[0071] Each cell corresponds to one or more pixels in a corresponding area of ​​the first or second image, and the initial value of each cell is a preset default value. For example, each cell is a square with a side length of S and a preset default value of -1.

[0072] Step 202: Perform convolution processing on the corrected first image and the corrected second image respectively to obtain the features of the first image and the features of the second image.

[0073] Optionally, the corrected first image and the corrected second image are binary images. The Sobel operator is used to convolve the corrected first image and the corrected second image respectively, obtaining the features of the first image and the features of the second image. The stride is S during the Sobel convolution process.

[0074] The features of the image include: gradient array G x and G y Each pixel of the image features is the gradient of a 4-component vector, which is the image feature.

[0075] Step 203: Based on the features of the first image and the second image, determine the first cell disparity value of each cell of the first image relative to the second image, and determine the second cell disparity value of each cell of the second image relative to the first image.

[0076] The first parallax cell corresponds to a cell in the first image. The number of first parallax cells is (w×h) / (s×s), where w is the number of pixels in a row of the first image, h is the number of pixels in a column of the first image, and s is the step size.

[0077] Optionally, based on the features of the first image and the features of the second image, a matching cell is determined in the cell of the second image, which is most similar to the current cell in the first image; the disparity value of the supporting cell is determined based on the corresponding positional relationship of the matching cell in the first image and the second image respectively.

[0078] Specifically, a first sliding window with a sliding step size of s is established in the features of the first image, and a second sliding window with a sliding step size of s is established in the second image. Each time the first window slides once in the features of the first image, the second window traverses the features of the second image once (in addition, the feature values ​​of the second window traversing the second image can be pre-stored, so they do not need to be recalculated when the first window slides; they can be stored in the registers of the FPGA or GPU and read directly). Before each sliding of the first window, the feature value corresponding to the first window is calculated to obtain a first feature value, and multiple feature values ​​corresponding to each traversal of the second window are calculated to obtain multiple second feature values. The difference between the first feature value and the multiple second feature values ​​is calculated to obtain multiple difference values. The cell coordinates corresponding to the smallest difference value among the multiple difference values ​​are obtained, and the matching cell is obtained in the second image. Based on the positional difference between the current cell in the first image and the matching cell, the disparity value of the current cell in the first image is determined. Similarly, the disparity value of the second disparity cell can be obtained. Figure 2 As shown, black cells are cells with the default value, and light-colored cells are cells with non-default parallax values. The intensity of the color indicates the magnitude of the parallax value corresponding to the cell.

[0079] Step 204: Check the parallax values ​​of the first and second cells to select the support cells that meet the preset standards.

[0080] The inspection based on the parallax values ​​of the first and second cells includes: checking the correspondence between the parallax values ​​of the first and second cells to determine if there are any significant anomalies or deviations; checking if there are any cells with similar values ​​in the area surrounding the current cell. If the number of cells with similar values ​​is less than or equal to the number threshold, meaning that the cell does not meet the criteria for being a supporting cell, then the value of the current cell is set to -1.

[0081] In some implementations, generating a depth map based on the support grid includes:

[0082] Step 301: Interpolate based on the first disparity support grid to obtain the interpolated first disparity map.

[0083] Optionally, interpolation is performed on the support cells with default values ​​in the first parallax support cells. Specifically, an interpolation object that meets the requirements is selected according to preset requirements (the interpolation object is a support cell with a default value); the value of the interpolation object is determined based on the values ​​of the support cells surrounding the interpolation object.

[0084] Optionally, the step of interpolating the parallax support grid is a linear interpolation step based on smoothness. Interpolating the parallax support grid can improve its smoothness, and the increased number of parallax support grids also enhances the display effect.

[0085] For example, during the interpolation process for a support grid, the surrounding support grids are searched. Specifically, horizontal and vertical searches are performed to obtain interpolation support grids that meet the requirements. Specifically, the search searches for the nearest left and right support grids to the interpolation support grid, determining if both the left and right support grids are greater than -1 (the default value). If both the left and right support grids are greater than -1, the value of the interpolation support grid is determined based on its actual positional relationship with the left and right support grids. If both the left and right support grids are -1, no interpolation is performed on that support grid, and its value is -1. During the horizontal search, the interpolation support grid is located to the left or right of the current interpolation support grid.

[0086] The same principle applies to horizontal interpolation; the same interpolation steps can be performed on vertical interpolation.

[0087] Optionally, a two-dimensional scan is performed on the region centered on the interpolation object to calculate the feature value of the interpolation object; it is then determined whether the feature value of the interpolation object meets the interpolation requirements, and if the interpolation requirements are met, interpolation is performed based on the smoothness.

[0088] Calculating the feature value of the interpolation object can be achieved by summing the disparity values ​​of each support cell within the area centered on the interpolation object. The interpolation requirement can be that the feature value of the interpolation object is greater than a feature value threshold.

[0089] Optionally, the formula for calculating smoothness is:

[0090] S = m / n

[0091] Where S represents smoothness, m represents the eigenvalue, and n represents the number of support grids within the region centered on the interpolation object. This formula is merely an example; in practical applications, more suitable calculation formulas can be constructed to improve the results.

[0092] Step 302: Calculate the depth of the corresponding support cell based on the disparity value of the support cell in the first disparity map after interpolation, and obtain the depth map.

[0093] The depth of each support grid is calculated based on the parallax value of the support grid, the focal length of the camera, and the baseline length of the two cameras, thus obtaining a depth map.

[0094] In some of these implementations, generating a point cloud image based on the depth map includes steps 401 and 402.

[0095] Step 401: Based on the depth map, convert the pixels in the first image from the image coordinate system to the visible world coordinate system to obtain the initial point cloud.

[0096] The depth of each pixel is determined by establishing the correspondence between the support grid in the depth map and the pixels in the first image. Then, the pixels in the first image are converted into a 3D point cloud according to the conversion formula from the image coordinate system to the visible world coordinate system.

[0097] For the pixels corresponding to the support grid with a depth of -1, coordinate system transformation is no longer required.

[0098] Step 402: Interpolate the initial point cloud to obtain a point cloud image.

[0099] Optionally, the formula for calculating the value of the interpolated point cloud is:

[0100] D p =D l +[(D r -D l ) / (X r -X l )]×(X p -X l )

[0101] Where the x-axis is in the left-right direction, D p For interpolation; D l D represents the coordinates of the point cloud closest to the interpolated point cloud on the left (coordinates of the left point cloud); r X represents the coordinates of the point cloud closest to the interpolated point cloud on the right side (right-side point cloud coordinates); r X is the x-coordinate of the point cloud coordinates on the right; l X is the x-coordinate of the point cloud coordinates on the left; p The x-coordinate of the interpolated point cloud. The interpolated point cloud can be a newly added location, or it can be the location of the pixel corresponding to the default support grid.

[0102] In some other implementations, the value of the interpolated point cloud can be determined by the three adjacent point clouds of the interpolated point cloud.

[0103] Adjacent point clouds can be determined by projecting the point cloud in a preset direction.

[0104] In some implementations, determining obstacles based on point cloud images includes steps 501 and 502.

[0105] Step 501: Select a portion of the point cloud from the point cloud image.

[0106] For example, based on the direction of travel of the mobile device, a point cloud covering the area in front of the mobile device is selected to obtain a partial point cloud.

[0107] Step 502: Determine obstacles based on the selected partial point cloud.

[0108] The selected point cloud is evaluated to determine whether the preceding point cloud is an obstacle. Optionally, multiple adjacent point cloud groups are determined from the partial point cloud, each adjacent point cloud group containing at least 3 point clouds; based on the 3 point clouds in the adjacent point cloud groups, the normal corresponding to the plane formed by the 3 point clouds is determined; the vector corresponding to the forward direction of the moving device is obtained; based on the normal and the vector, it is determined whether the plane formed by the 3 point clouds is an obstacle.

[0109] For example, you can estimate whether each point in the cloud is an obstacle by calculating the angle between the normal and the vector. Specifically, if the normal vector of the ground plane is perpendicular to the movement direction vector, the ground does not constitute an obstacle; if the normal vector of the wall in front is parallel to the movement direction vector, the wall in front is an obstacle.

[0110] Example 2

[0111] Figure 3 This is a schematic diagram of the obstacle detection system 70 in this embodiment. Figure 3 As shown, the obstacle judgment system 70 includes: a data acquisition module 701, a determination module 702, a depth map generation module 703, a point cloud image generation module 704, and a judgment module 705.

[0112] The acquisition module 701 is used to acquire images in a preset direction and obtain at least two images;

[0113] The determining module 702 is used to determine the support grid based on the characteristics of the pixels in the image;

[0114] The depth map generation module 703 is used to generate a depth map based on the support grid.

[0115] The point cloud image generation module 704 is used to generate a point cloud image based on the depth map;

[0116] The judgment module 705 is used to determine obstacles based on the point cloud image.

[0117] The obstacle detection system 70 of the present invention can analyze the acquired image, determine the support grid, and generate a depth map and a point cloud image based on the support grid. Then, it can detect obstacles based on the point cloud image, which helps to improve the speed and accuracy of obstacle detection.

[0118] In some embodiments, the acquisition module 701 is further configured to acquire a first image and a second image; and to perform optical distortion correction on the first image and the second image respectively to obtain a corrected first image and a corrected second image.

[0119] In one embodiment, the determining module 702 is further configured to construct a plurality of support grids on the corrected first image and the corrected second image; perform convolution processing on the corrected first image and the corrected second image respectively to obtain features of the first image and features of the second image; determine the value of each support grid of the first image relative to the second image and determine the value of each support grid of the second image relative to the first image based on the features of the first image and the features of the second image; and check based on the first disparity support grid and the second disparity support grid to determine support grids that meet preset standards.

[0120] In one implementation, the depth map generation module 703 is further configured to interpolate based on the first disparity support grid to obtain an interpolated first disparity map; and to calculate the depth of the corresponding support grid based on the disparity value of the support grid in the interpolated first disparity map to obtain a depth map.

[0121] In one embodiment, the point cloud image generation module 704 is further configured to convert the pixels in the first image from the image coordinate system to the visible world coordinate system based on the depth map to obtain an initial point cloud; and to interpolate the initial point cloud to obtain a point cloud image.

[0122] In one implementation, the judgment module 705 is further configured to select a portion of the point cloud in the point cloud image; and determine the obstacle based on the selected portion of the point cloud.

[0123] In one embodiment, the judgment module 705 is further configured to determine multiple adjacent point cloud groups from the partial point cloud, each adjacent point cloud group containing at least 3 point clouds; determine the normal corresponding to the plane formed by the 3 point clouds based on the 3 point clouds in the adjacent point cloud group; obtain the vector corresponding to the forward direction of the mobile device; and determine whether the plane formed by the 3 point clouds is an obstacle based on the normal and the vector.

[0124] The operating principle of the obstacle detection system 70 in this embodiment can be referred to the obstacle detection system method described above, so it will not be repeated here.

[0125] Example 3

[0126] Figure 4 This is a schematic diagram of the structure of an electronic device according to the present invention. The electronic device includes a memory 801 and a processor 802. The memory 801 stores a computer program that can run on the processor 802, wherein when the processor 802 executes the program, it implements the steps of the obstacle judgment method described above.

[0127] The electronic device includes a memory 801 and a processor 802 that are interconnected via a system bus 803. It should be noted that only an electronic device with components 801-803 is shown in the figure; however, it should be understood that it is not required to implement all the shown components, and more or fewer components may be implemented instead. Those skilled in the art will understand that the electronic device described herein is one capable of automatically performing numerical calculations and / or information processing according to pre-set or stored instructions. Its hardware includes, but is not limited to, microprocessors, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), embedded devices, etc.

[0128] Electronic devices can be computing devices such as desktop computers, laptops, PDAs, and cloud servers. These devices can interact with users through keyboards, mice, remote controls, touchpads, or voice-activated devices.

[0129] The memory 801 includes at least one type of readable storage medium, including flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 801 may be an internal storage module of the device, such as the hard disk or memory of the device. In other embodiments, the memory 801 may also be an external storage device of the device, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., provided on the device. Of course, the memory 801 may also include both the internal storage module and its external storage device. In this embodiment, the memory 801 is typically used to store the operating system and various application software installed on the device. In addition, the memory 801 may also be used to temporarily store various types of data that have been output or will be output.

[0130] In some embodiments, the processor may be a central processing unit (CPU), a controller, a microcontroller, a microprocessor, or other data processing chip. The processor is typically used to control the overall operation of the device. In this embodiment, the processor is used to execute computer-readable instructions stored in memory or to process data.

[0131] Example 5

[0132] The present invention provides a storage medium storing a computer program thereon, which, when executed by a processor, performs the obstacle judgment steps described above.

[0133] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods of the various embodiments of this application.

[0134] Obviously, the embodiments described above are only some embodiments of this application, not all embodiments. The accompanying drawings show preferred embodiments of this application, but do not limit the patent scope of this application. This application can be implemented in many different forms; rather, the purpose of providing these embodiments is to provide a more thorough and comprehensive understanding of the disclosure of this application. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing specific embodiments, or make equivalent substitutions for some of the technical features. Any equivalent structures made using the content of this application's specification and drawings, directly or indirectly applied to other related technical fields, are similarly within the scope of patent protection of this application.

Claims

1. An obstacle determination method characterized by comprising: The method comprises the following steps: image acquisition in a preset direction to obtain at least two images; determining a support grid according to the characteristics of the pixel points of the images; generating a depth map according to the support grid; generating a point cloud image according to the depth map; judging an obstacle according to the point cloud image. The image acquisition comprises the following steps: obtaining a first image and a second image; optically correcting the first image and the second image respectively to obtain a corrected first image and a corrected second image; The step of determining a support grid according to the characteristics of the pixel points of the images comprises the following steps: constructing a plurality of unit cells on the corrected first image and the corrected second image; respectively performing convolution processing on the corrected first image and the corrected second image to obtain the characteristics of the first image and the characteristics of the second image; determining a first unit cell disparity value of each unit cell of the first image relative to the second image and a second unit cell disparity value of each unit cell of the second image relative to the first image according to the characteristics of the first image and the characteristics of the second image; selecting a support grid that meets a preset standard according to the first unit cell disparity value and the second unit cell disparity value.

2. The obstacle determination method according to claim 1, characterized by, The step of generating a depth map according to the support grid comprises the following steps: interpolating according to the first disparity support grid to obtain an interpolated first disparity map; calculating the depth of the corresponding support grid according to the disparity value of the support grid in the interpolated first disparity map to obtain a depth map.

3. The obstacle determination method according to claim 2, characterized by, The step of generating a point cloud image according to the depth map comprises the following steps: converting the pixel points in the first image from an image coordinate system to a visible world coordinate system according to the depth map to obtain an initial point cloud; interpolating the initial point cloud to obtain a point cloud image.

4. The obstacle determination method according to claim 3, characterized by, The step of determining an obstacle according to the point cloud image comprises the following steps: selecting part of the point cloud in the point cloud image; determining an obstacle according to the selected part of the point cloud.

5. The obstacle determination method according to claim 4, characterized by, The step of determining an obstacle according to the selected part of the point cloud comprises the following steps: determining a plurality of adjacent point cloud groups from the part of the point cloud, each adjacent point cloud group containing at least three point clouds; determining the normal of the plane formed by the three point clouds according to the three point clouds in the adjacent point cloud group; obtaining a vector corresponding to the forward direction of the mobile device; judging whether the plane formed by the three point clouds is an obstacle according to the normal and the vector.

6. An obstacle determination system for implementing the obstacle determination method according to any one of claims 1 to 5, characterized in that The method comprises the following steps: an acquisition module for image acquisition in a preset direction to obtain at least two images; a determination module for determining a support grid according to the characteristics of the pixel points of the images; a depth map generation module for generating a depth map according to the support grid; a point cloud image generation module for generating a point cloud image according to the depth map; a judgment module for judging an obstacle according to the point cloud image.

7. An electronic device comprising a memory and a processor, said memory storing a computer program operable on the processor, characterized in that, When the processor executes the program, the steps of the obstacle judgment method according to any one of claims 1 to 5 are implemented.

8. A storage medium having stored thereon a computer program, characterized in that When the computer program is executed by the processor, the steps of the obstacle judgment method according to any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Obstacle detection method and device, self-walking robot and storage medium

    CN111990929A

  • Blind person intelligent navigation method and system using multi-view stereoscopic vision

    CN114995450A