DEEP-LEARNING-BASED DRIVING ASSISTANCE SYSTEM AND METHOD THEREOF
20210350705 · 2021-11-11
Inventors
Cpc classification
G06V10/457
PHYSICS
G06V10/762
PHYSICS
G06F18/217
PHYSICS
G08G1/167
PHYSICS
G06V10/26
PHYSICS
G06F18/213
PHYSICS
G06V20/588
PHYSICS
International classification
Abstract
The invention relates to a deep-learning-based driving assistance system and method thereof. The system adopts a one-stage object detection neural network, and is applied to an embedded device for quickly calculating and determining a driving object information. The system comprises an image capture module, a feature extraction module, a semantic segmentation module, and a lane processing module, wherein the lane processing module further comprises a lane line binary sub-module, a lane line clustering sub-module, and a lane line fitting sub-module.
Claims
1. A deep-learning-based driving assistance system using a one-stage object-detecting neural network and applied to an embedded device for quickly calculating and determining a driving object information comprising: an image capture module to capture a plurality of road images by using a fixed frequency; a feature extraction module configured to construct a plurality of feature data of a plurality of road objects based on the road images; a semantic segmentation module configured to extract a plurality of classified probability maps of the road objects based on the feature data; and a lane processing module configured to construct a plurality of lane line fitting maps comprising: a lane line binarization sub-module for binarizing the classified probability maps based on a confidence level of the classified probability maps and constructing a plurality of binary response maps of a lane line, wherein the binary response maps are a plurality of lane points; a lane line grouping sub-module configured to group the binary response maps into a plurality of lane line categories; and a lane line fitting sub-module for fitting the lane line categories by a cubic curve and connecting the lane line categories after fitted to obtain the lane line fitting maps.
2. The deep-learning-based driving assistance system of claim 1, wherein the feature extraction module further comprises an attention sub-module for improving accuracy of the feature data by an amplification constant.
3. The deep-learning-based driving assistance system of claim 1, wherein the lane processing module further comprises: a lane post-processing sub-module for constructing a drivable lane section based on the lane line fitting maps; and a lane departure determining sub-module configured to determine whether a driving direction deviates according to the drivable lane section.
4. The deep-learning-based driving assistance system of claim 1, further comprising an object detection module obtaining positions of the road objects based on the feature data, wherein the object detection module comprises a collision avoidance determining sub-module estimating a plurality of relative distances and executing a plurality of collision avoidance determination based on the drivable lane section and the positions of the road objects.
5. A method of deep-learning-based driving assistance using a one-stage object-detecting neural network and applied to an embedded device for quickly calculating and determining a driving object information comprising: capturing a plurality of road images by using a fixed frequency; extracting a plurality of feature data based on the road images to construct the feature data of a plurality of road objects; extracting a plurality of classified probability maps of each the road objects based on the feature data; binarizing the classified probability maps based on a confidence level of the classified probability maps to construct a plurality of binary response maps of a lane line, wherein the binary response maps are a plurality of lane points; grouping the binary response maps into a plurality of lane line categories; and fitting the lane line categories by a cubic curve and connecting the lane line categories after fitted to obtain the lane line fitting maps.
6. The method of deep-learning-based driving assistance of claim 5, further comprising improving accuracy of the feature data by providing an amplification constant of the feature data.
7. The method of deep-learning-based driving assistance of claim 5, further comprising constructing a drivable lane section based on the lane line fitting maps to determine whether a driving direction deviates according to the drivable lane section.
8. The method of deep-learning-based driving assistance of claim 5, further comprising obtaining positions of the road objects based on the feature data to estimate a plurality of relative distances and execute a plurality of collision avoidance determination based on the drivable lane section and the positions of the road objects.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
DETAILED DESCRIPTION
[0023] In order to understand the technical features, contents and advantages of some embodiments of the invention and effects thereof, the embodiments of the invention are accompanied by drawings and described in detail as follows. The used drawings are only for illustrative purposes to support the description, and may not be the real scale and precise configuration of the embodiments of the invention. Therefore, relationship between the scale and configuration of the drawings should not be interpreted as the scope of rights or limited the scope of rights to the actual implementation of the embodiments of the invention, which shall be described first here.
[0024] Accordingly, a deep-learning-based driving assistance system and method thereof are provided, which can process object detection in an image with semantic segmentation by using deep-learning-based neural network to achieve the purpose of identifying lane lines to avoid colliding with the front objects. According to an embodiment of the invention, an input image is extracted to obtain a plurality of feature data, and various information of lane lines are determined by semantic segmentation. Then, the lane lines are categorized and identified to fit the lane lines. Then, the fitted lane lines are referenced to determine a drivable lane cooperated with the object detection to achieve the purpose of driving assistance.
[0025] In order to more clearly describe the embodiments and technical features of the invention, please first refer to
[0026] Moreover, the lane processing module 150 comprises a lane line binarization sub-module 151, a lane line grouping sub-module 152, and a lane line fitting sub-module 153.
[0027] The deep-learning-based driving assistance system 100 is further described as below. The image capture module 110 is used to capture a plurality of road images by using a fixed frequency after the road images are obtained by an external imaging device 105. The feature extraction module 120 is used to construct a plurality of feature data of a plurality of road objects based on the road images. The semantic segmentation module 130 is used to extract a plurality of classified probability maps of the road objects based on the feature data. The lane processing module 150 is used to construct a plurality of lane line fitting maps. The lane line binarization sub-module 151 is used for binarizing the classified probability maps based on a confidence level of the classified probability maps and constructing a plurality of binary response maps of a lane line, wherein the binary response maps are a plurality of lane points. The lane line grouping sub-module 152 is used to group the binary response maps into a plurality of lane line categories. The lane line fitting sub-module 153 is used for fitting the lane line categories by a cubic curve and connecting the lane line categories after fitted to obtain the lane line fitting maps.
[0028] According to another embodiment of the invention, the feature extraction module 120 further comprises an attention sub-module 125 providing an amplification constant to the feature data for improving accuracy of the feature data.
[0029] According to still another embodiment of the invention, the lane processing module 150 further comprises a lane post-processing sub-module 154 and a lane departure determining sub-module 155. The lane post-processing sub-module 154 is used for constructing a drivable lane section based on the lane line fitting maps. The lane departure determining sub-module 155 is used to determine whether a driving direction deviates or not according to the drivable lane section.
[0030] According to still another embodiment of the invention, the deep-learning-based driving assistance system 100 further comprises an object detection module 140. The object detection module 140 is used for obtaining positions of the road objects based on the feature data, wherein the object detection module 140 comprises a collision avoidance determining sub-module 145 estimating a plurality of relative distances and executing a plurality of collision avoidance determination based on the drivable lane section and the positions of the road objects.
[0031]
[0032] First, in step 220, a plurality of road images are captured (for example, through the image capture module 110) by using a fixed frequency (such as every second, every minute, etc.), and the images are continuous images.
[0033] Subsequently, in step 230, a plurality of feature data of a plurality of road objects are extracted based on the road images (for example, through the feature extraction module 120), for then amplifying the feature data (for example, through the attention sub-module 125) and extracting a plurality of classified probability maps of the road objects based on the amplified feature data (for example, through the semantic segmentation module 130).
[0034] Subsequently, in step 240, the classified probability maps are based to further construct a plurality of binary response maps (for example, through the lane line binarization sub-module 151).
[0035] Subsequently, in step 250, the binary response maps are further grouped into a plurality of lane line categories (for example, through the lane line grouping sub-module 152).
[0036] Subsequently, in step 260, the lane line categories are fitted by a cubic curve to construct and obtain the lane line fitting maps (for example, through the lane line fitting sub-module 153).
[0037] Subsequently, in step 270, a drivable lane section are constructed based on the lane line fitting maps (for example, through the lane post-processing sub-module 154), and the drivable lane section is further used to determine whether a driving direction deviates (for example, through the lane departure determining sub-module 155).
[0038] Subsequently, in step 280, positions of the road objects are obtained based on the feature data to estimate a plurality of relative distances and execute a plurality of collision avoidance determination based on the drivable lane section and the positions of the road objects (for example, through the object detection module 140).
[0039] Subsequently, all the data are exported and the method 200 is finished in step 290.
[0040] A specific example is provided as below to further illustrate that the embodiments of invention have advantages of fast calculating speed with high accuracy.
[0041] Please refer to
[0042] Steps 310 and 410 are the same, that is, both are specifically executed results after trained by, for example, the feature extraction module 120 and the semantic segmentation module 130. The feature extraction module 120 uses, for example, a lightly modified ResNet-10 network, and pre-trains its weights on an ImageNet dataset. The function of the ResNet-10 network is to extract image features, and describe the scene by using features like the shape, color, and material of objects that can be observed just as human eyes. Next, the semantic segmentation module 130 combines feature data from the feature extraction module 120 with a lane of BDD100K and its lane line data to perform semantic segmentation training. A lane and its lane line are referenced to mark the image during the training process, and the marked image is then used as a targeted image. The goal of the semantic segmentation network is to output the same image. The difference between the image and the marked image is used to calculate a differential value for updating a network parameter, so that the image exported from the semantic segmentation network next time can be much closer to the marked image.
[0043] Next, for the results of step 320, please refer to the steps 420-440 in
[0044] Step 420 is performed based on the result of semantic segmentation in step 410. The lane line category indicates whether it is a lane, a lane line or background. A pixel point has a decimal value ranging from 0 to 1. The lane line category indicates whether it is a lane, a lane line or background, which represents a confidence level of the prediction model for the pixel point, and the lane line category with the highest confidence level is taken as a final category. Subsequently, the pixel point grouped into the “non-lane line” category is set to 0, and the pixel point grouped into the “lane line” category is set to 1, so that the binarized response map shown in step 420 may be obtained. As shown in the figure of step 430, a center pixel point, that is, in the middle of a from-left-to-right horizontal line, among a group consisting of the pixel points of the lane lines is taken as a representative. Subsequently, as shown in step 440, a lane point map is obtained, which is a complete lane line response.
[0045] Next, in step 330, after performed as in step 440 and the complete lane line response is obtained, a grouping algorithm is then performed. The grouping algorithm calculates and determines which lane-point lists the point should be grouped into. If no target is found, a lane-point list will be added. After finishing the image in this way, an image containing clean lane points as shown in step 330 is obtained. In addition, the grouping algorithm is further listed in detail as below.
TABLE-US-00001 Algorithm 1. Clustering Method 1: All_clusters = [ ] 2: y = height −1 3: loop(y > y_limit); 4: loop point in local_maximum_points: 5: if (All_clusters is empty): 6: create_new_cluster(All_clusters, point) 7: end if 8: cluster_index, min_distance, angle = get_min_distance_and_angle(All_clusters, point) 9: if (min_distance < min_distance_threshold and angle < angle_threshold): 10: add_to_cluster(clusters , point, cluster_index) 11: else: 12: create_new_cluster(All_clusters, point) 13: end if 14: y −= update_interval 15: end loop 16: end loop 17: loop cluster in All_clusters: 18: All_clusters = Majority_Vote(All_clusters)
[0046] As shown in the above algorithm, the grouping algorithm mainly calculates the absolute distance between a point coordinate and a last point coordinate of the lane point list. If the distance is less than a threshold we set, they are grouped into the same category. There are also restrictions on the angle. For example, when the angle changes too much, it is grouped into another category to filter out the lane lines with abnormal curving.
[0047] Next, in step 340, the lane point list obtained from the grouping algorithm may be subsequently calculated by an existing polynomial fitting algorithm to further obtain the lane line fitting map.
[0048] Regarding the step 340, please further refer to
[0049]
[0050] In addition, in the embodiment of the invention, the semantic segmentation module 130 and the object detection module 140 will alternately train until a final output and the targeted are close enough and no longer significantly decrease.
[0051] Some embodiments of the invention are disclosed herein. However, any person skilled in the art should understand that the embodiments are only used to describe the invention and are not intended to limit the scope of the patent rights claimed by the invention. Any changes or substitutions equivalent to the embodiments of the invention should be interpreted as being covered within the spirit or scope of the invention. Therefore, the protection scope of the invention shall be subject to the scope defined by the claims as follows.