一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于单相机的红绿灯状态检测方法及系统与流程

2022-09-03 17:03:14 来源:中国专利 TAG:


1.本发明涉及自动驾驶的技术领域,具体地,涉及基于单相机的红绿灯状态检测方法及系统。


背景技术:

2.在自动驾驶技术中,为保障自动驾驶车辆能够安全通过路口,需要自动驾驶车辆能够实时检测路口红绿灯状态,并识别红灯、绿灯和黄灯,得到这些灯的状态后,输出给后台的自动驾驶车辆的控制系统,由控制系统根据灯的状态发出通过或者停止的命令。
3.现有技术中自动驾驶车辆在检测红绿灯时基于单个或多个相机进行采集和检测工作,原有的单相机采集和检测红绿灯存在无法兼具视场角和有效距离两个方面问题视场角越大对同一个目标成像越小,使图像检测难度增大;若视场角越小对同一个目标成像越大,图像检测难度变低,但是带来的问题是相机视野小,红绿灯很容易偏出视野,造成无人车无法检测到前方红绿灯的状态;但是多个相机进行检测不仅成本高,而且检测逻辑也更加复杂,耗费更多的计算资源;使用自动曝光在晚上会导致图像产生大光晕以及拖影,成像速度更慢,并且红绿灯的成像与白天相差太大,不利于进行有效的检测。
4.中国专利cn110542931b公开了一种《红绿灯检测方法、装置、电子设备及计算机可读介质》,其技术方案:包括实时对车辆的当前位置信息进行检测;如果根据当前位置信息确定车辆到达预设路口,则启动红绿灯检测模块并基于深度学习检测预设路口的红绿灯;如果红绿灯检测模块的检测结果为未检测到红绿灯,则基于深度学习的步长对红绿灯检测模块的角度信息进行调整,直到红绿灯检测模块检测到红绿灯。该方法根据不同红绿灯路口的情况,在未检测到红绿灯时及时对红绿灯检测模块的角度信息进行调整,直到红绿灯检测模块检测到红绿灯,解决自动驾驶设备在某些路口无法检测红绿灯状态的问题,但是上述技术方案需要车辆先到达预设路口,然后再进行检测,当第一时间检测不到红绿灯时,还需要调节检测模块,直到检测到红绿灯为止,存在检测时间过长,导致车辆需要在路口长时间等待的问题,且存在一定的安全隐患。
5.中国专利cn113947769a公开了一种《基于长短焦双摄像头的红绿灯检测方法、设备和存储介质》,其技术方案:在车辆的行驶过程中对长焦摄像头采集的第一图像顺次进行红绿灯检测,得到第一包围框;将第一包围框变换到短焦摄像头的像素坐标系中得到第二包围框,并在短焦摄像头的像素坐标系中预测第二包围框在下一时刻的位置;当在第一图像中首次未检测到红绿灯时,对短焦摄像头采集的第二图像进行红绿灯检测,得到红绿灯在第二图像中的第三包围框;如果第三包围框与预测的第二包围框在当前时刻的位置匹配,则确定第三包围框检测到红绿灯,其存在,成本高,而且检测逻辑复杂,耗费更多的计算资源。
6.通过使用多个相机(长短焦)对目标进行检测,长焦能看清则用长焦检测,长焦看不清则用短焦(广角)相机进行检测,通常为200万或500万像素的相机进行检测,并且使用自动曝光模式。
7.使用两个或者多个相机进行检测不仅成本高,而且会耗费更多的计算资源,检测逻辑也更加复杂;使用自动曝光在晚上会导致图像产生大光晕以及拖影,成像速度更慢,并且红绿灯的成像与白天相差太大,不利于检测模块进行有效的检出。
8.现有方案使用多个相机产生成本高,计算资源使用率高,多个相机导致算法逻辑比较复杂。自动曝光导致的拖影、光晕问题,导致的夜间红绿灯成像质量差,使得检测难度增加。
9.因此,需要提出一种技术方案以改善上述技术问题。


技术实现要素:

10.针对现有技术中的缺陷,本发明的目的是提供一种基于单相机的红绿灯状态检测方法及系统。
11.根据本发明提供的一种基于单相机的红绿灯状态检测方法,包括:
12.步骤s1:图像采集模块采集道路环境的原始图像,然后根据感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
13.步骤s2:目标检测模块检测所述感兴趣区图像中是否存在红绿灯,若存在,则进入步骤s3,否则跳转至步骤s4;
14.步骤s3:状态检测模块检测所述感兴趣区图像中红绿灯的状态,确定是红灯、黄灯还是绿灯,并输出结果;同时,利用目标检测模块检测红绿灯是否在所述感兴趣区图像的中心,若是,则感兴趣区参数不变,若否,则利用参数精调模块对感兴趣区参数进行精细调节;
15.步骤s4:判断连续未检出红绿灯的感兴趣区图像累计帧数是否超过预设阈值,若否,则感兴趣区参数不变,若是,则利用参数粗调模块对感兴趣区参数进行大幅调节。
16.优选地,所述原始图像和所述感兴趣区均为矩形,所述感兴趣区的尺寸小于原始图像的尺寸,所述感兴趣区图像属于原始图像的一部分;所述感兴趣区参数包括感兴趣区的尺寸和感兴趣区中心的位置,二者均设置了初始值。
17.优选地,所述目标检测模块和所述状态检测模块利用深度学习网络或传统计算机视觉技术对所述感兴趣区图像进行检测;所述目标检测模块和所述状态检测模块可以是同一模块,也可以是两个独立模块。
18.优选地,所述通过参数精调模块对感兴趣区参数进行精细调节,包括:
19.根据红绿灯在感兴趣区图像中的位置,得到红绿灯在原始图像中的位置;
20.将感兴趣区中心的位置调整为红绿灯在原始图像中的位置;
21.若精调后的感兴趣区超出了原始图像的范围,则相应减小感兴趣区的尺寸以使感兴趣区不超出原始图像的边界,或者感兴趣区的尺寸不变而将感兴趣中心的位置调整为使感兴趣区不超出原始图像边界的、最接近红绿灯在原始图像中位置的位置;若精调后的感兴趣区没超出原始图像的范围,如果此时感兴趣区的尺寸小于初始值,则将感兴趣区的尺寸向外扩大至初始值与原始图像边界二者中的下限。
22.优选地,所述通过参数粗调模块对感兴趣区参数进行大幅调节,包括:
23.将原始图像分为n个大小一致、相邻有重叠的小块,将感兴趣区的尺寸设置为小块的尺寸;
24.将感兴趣区中心的位置设置为第1个小块中心的位置;
25.根据上述感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
26.目标检测模块检测感兴趣区图像中是否存在红绿灯,若不存在,则将感兴趣区中心的位置设置为第2个小块中心的位置,以此类推,直至第n个小块;若存在,则将感兴趣区的尺寸调整为初始值,并结束参数粗调。
27.优选地,所述感兴趣区参数通过精调或粗调后,均用于下一帧原始图像的截取和检测。
28.本发明还提供一种基于单相机的红绿灯状态检测系统,包括:
29.图像采集模块:用于采集道路环境的原始图像;
30.感兴趣区设置模块:根据感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
31.目标检测模块:用于检测感兴趣区图像中是否存在红绿灯,以及红绿灯是否在所述感兴趣区图像的中心;
32.状态检测模块:用于检测感兴趣区图像中红绿灯的状态,确定是红灯、黄灯还是绿灯,并输出结果;
33.参数精调模块:用于对感兴趣区参数进行精细调节,以使红绿灯位于感兴趣区的中心,从而增强检测的鲁棒性;
34.参数粗调模块:用于对感兴趣区参数进行大幅调节,在原始图像上大幅滑动感兴趣区,从而增大检测到红绿灯的概率。
35.优选地,所述图像采集模块使用单个大分辨率相机,并采用固定曝光时间。
36.优选地,所述目标检测模块和所述状态检测模块利用深度学习网络或传统计算机视觉技术对所述感兴趣区图像进行检测;所述目标检测模块和所述状态检测模块可以是同一模块,也可以是两个独立模块。
37.与现有技术相比,本发明具有如下的有益效果:
38.1、本发明使用单个大分辨率相机对长短焦相机进行替代,减少了设备成本,也简化了红绿灯检出的算法逻辑;
39.2、本发明采用固定曝光时间代替传统的自动曝光,由于红绿灯是主动发光型的目标,并且发光亮度基本恒定,因此可以通过采用固定曝光时间的方式进行图像采集,保证了白天和晚上成像效果的一致性,避免了由于夜间自动曝光时间过长导致的拖影、光晕等问题,使红绿灯更加容易检出;
40.3、由于使用大分辨率的图像,直接送入深度学习网络进行检测会增加模型的检测时间,无法满足实时性的需求,本发明设计了一套精调和粗调相结合的感兴趣区滑窗方法,在没有增加模型计算量的前提下保证了红绿灯的检出效果。
附图说明
41.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
42.图1为本发明的整体逻辑图;
43.图2为本发明参数精调模块的逻辑图;
44.图3为本发明参数粗调模块的逻辑图。
具体实施方式
45.下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
46.实施例1:
47.如图1所示,本发明提供的一种基于单相机的红绿灯状态检测方法,包括:
48.步骤s1:图像采集模块采集道路环境的原始图像,然后根据感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
49.步骤s2:目标检测模块检测感兴趣区图像中是否存在红绿灯,若存在,则进入步骤s3,否则跳转至步骤s4;
50.步骤s3:状态检测模块检测感兴趣区图像中红绿灯的状态,确定是红灯、黄灯还是绿灯,并输出结果;同时,利用目标检测模块检测红绿灯是否在感兴趣区图像的中心,若是,则感兴趣区参数不变,若否,则利用参数精调模块对感兴趣区参数进行精细调节;
51.步骤s4:判断连续未检出红绿灯的感兴趣区图像累计帧数是否超过预设阈值,若否,则感兴趣区参数不变,若是,则利用参数粗调模块对感兴趣区参数进行大幅调节。
52.进一步的,原始图像和感兴趣区均为矩形,感兴趣区的尺寸小于原始图像的尺寸,感兴趣区图像属于原始图像的一部分;从而降低了单次检测的数据量和所费时间。感兴趣区不宜过大或过小,过大的话,数据量降低不明显;过小的话,检测次数增加,反而降低了效率;感兴趣区参数包括感兴趣区的尺寸和感兴趣区中心的位置,二者均设置了初始值。
53.进一步的,目标检测模块和状态检测模块利用深度学习网络或传统计算机视觉技术对感兴趣区图像进行检测;目标检测模块和状态检测模块可以是同一模块,也可以是两个独立模块。
54.进一步的,如图2所示,通过参数精调模块对感兴趣区参数进行精细调节,包括:
55.根据红绿灯在感兴趣区图像中的位置,得到红绿灯在原始图像中的位置;
56.将感兴趣区中心的位置调整为红绿灯在原始图像中的位置;
57.若精调后的感兴趣区超出了原始图像的范围,则相应减小感兴趣区的尺寸以使感兴趣区不超出原始图像的边界,或者感兴趣区的尺寸不变而将感兴趣中心的位置调整为使感兴趣区不超出原始图像边界的、最接近红绿灯在原始图像中位置的位置;若精调后的感兴趣区没超出原始图像的范围,如果此时感兴趣区的尺寸小于初始值,则将感兴趣区的尺寸向外扩大至初始值与原始图像边界二者中的下限。
58.进一步的,如图3所示,通过参数粗调模块对感兴趣区参数进行大幅调节,包括:
59.将原始图像分为n个大小一致、相邻有重叠的小块,将感兴趣区的尺寸设置为小块的尺寸;
60.将感兴趣区中心的位置设置为第1个小块中心的位置;
61.根据上述感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
62.目标检测模块检测感兴趣区图像中是否存在红绿灯,若不存在,则将感兴趣区中心的位置设置为第2个小块中心的位置,以此类推,直至第n个小块;若存在,则将感兴趣区的尺寸调整为初始值,并结束参数粗调。
63.进一步的,感兴趣区参数通过精调或粗调后,均用于下一帧原始图像的截取和检测。
64.实施例2:
65.相较于实施例1的而言,本实施例以更为具体地对本发明进行说明。
66.本发明还提供一种基于单相机的红绿灯状态检测系统,包括:
67.图像采集模块:用于采集道路环境的原始图像;
68.感兴趣区设置模块:根据感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
69.目标检测模块:用于检测感兴趣区图像中是否存在红绿灯,以及红绿灯是否在感兴趣区图像的中心;
70.状态检测模块:用于检测感兴趣区图像中红绿灯的状态,确定是红灯、黄灯还是绿灯,并输出结果;
71.参数精调模块:用于对感兴趣区参数进行精细调节,以使红绿灯位于感兴趣区的中心,从而增强检测的鲁棒性;
72.参数粗调模块:用于对感兴趣区参数进行大幅调节,在原始图像上大幅滑动感兴趣区,从而增大检测到红绿灯的概率。
73.进一步的,图像采集模块使用单个大分辨率相机,并采用固定曝光时间。
74.进一步的,目标检测模块和状态检测模块利用深度学习网络或传统计算机视觉技术对感兴趣区图像进行检测;目标检测模块和状态检测模块可以是同一模块,也可以是两个独立模块。
75.本发明使用单个大分辨率相机对现有技术中的多个长短焦相机进行替代,减少了设备的投入成本,并且由于相机的减少,也简化了红绿灯检出的算法逻辑,降低了运算成本。
76.实施例3:
77.实施例3为实施例1的优选例,以更为具体地对本发明进行说明。
78.本发明提供一种基于单相机的红绿灯状态检测方法及系统,包括图像采集模块、感兴趣区设置模块、目标检测模块、状态检测模块、参数精调模块和参数粗调模块,其检测方法如图1所示,包括如下步骤:
79.步骤s1:图像采集模块采集道路环境的原始图像,感兴趣区设置模块根据感兴趣区参数在原始图像上设置感兴趣区,截取得到感兴趣区图像;
80.步骤s2:目标检测模块检测所述感兴趣区图像中是否存在红绿灯,若存在则进入步骤s3,否则跳转至步骤s4;
81.步骤s3:状态检测模块检测所述感兴趣区图像中红绿灯的状态,确定是红灯、黄灯还是绿灯,并输出结果;同时,利用目标检测模块检测红绿灯是否在所述感兴趣区图像的中心,若是,则感兴趣区参数不变,若否,则利用参数精调模块对感兴趣区参数进行精细调节;
82.步骤s4:判断连续未检出红绿灯的感兴趣区图像累计帧数是否超过预设阈值,若否,则感兴趣区参数不变,若是,则利用参数粗调模块对感兴趣区参数进行大幅调节。
83.在本实施例中采用如下优选方案;
84.图像采集模块:
85.在本实施例中采用1200万像素,8mm焦距的大分辨率大fov(视场角)相机,其中相机fov大于100度(超广角镜头的焦距为20-13毫米,视角为94-118度),图像分辨率为4024x3036像素,此相机兼具长焦和广角相机的优点。
86.由于红绿灯是主动发光型的目标,并且发光亮度基本恒定,因此可以通过采用固定曝光时间的方式进行图像采集,固定曝光时间保证了白天和晚上成像效果的一致性,避免了由于夜间自动曝光时间过长导致的拖影、光晕等问题,使红绿灯更加容易检出。
87.感兴趣区设置模块:
88.由于原始图像较大,为了保证检测的实时性,通过设置感兴趣区域参数截取感兴趣区域进行检测。
89.本实施例中,感兴趣区参数包括尺寸和中心位置,初始值为原始图像的中心,尺寸为1920
×
1080范围。
90.目标检测模块:
91.其使用深度学习网络(如faster-rcnn、yolov5、centernet等)目标检测网络对输入的感兴趣图像检测否存在红绿灯,以及红绿灯是否在所述感兴趣区图像的中心。
92.状态检测模块:
93.用于检测感兴趣区图像中红绿灯的状态,确定是红灯、黄灯还是绿灯,并输出结果。
94.参数精调模块:
95.用于对感兴趣区参数进行精细调节,以使红绿灯位于感兴趣区的中心,从而增强检测的鲁棒性。
96.参数粗调模块:
97.用于对感兴趣区参数进行大幅调节,在原始图像上大幅滑动感兴趣区,从而增大检测到红绿灯的概率。
98.本事实例中,参数粗调模块将原始图像分为3个大小一致、相邻有重叠的小块,感兴趣区设置模块将感兴趣区的尺寸设置为此小块的尺寸,当目标检测模块长时间未检出红绿灯的感兴趣区图像累计帧数是否超过预设阈值,若否,则启动参数粗调模块(少于阈值则认为可能是漏检原因导致的),依次在3个区域上滑动感兴趣区图像直到可以检出红绿灯,目的是找出目标可能存在目标的图像区域位置,增大检测到红绿灯的概率。
99.由于使用大分辨率的图像,直接送入深度学习网络进行检测会增加模型的检测时间,无法满足实时性的需求,本发明设计了一套精调和粗调相结合的感兴趣区滑窗方法,在没有增加模型计算量的前提下保证了红绿灯的检出效果。
100.本实施例中,图像采集模块中所有的相机参数均可以根据实际情况进行更改,不限于1200万像素、8mm焦距,4024x3036像素分辨率、2ms固定曝光时间以及1920x1080范围的初始感兴趣区参数。
101.参数粗调模块不限于使用3个大小一致、相邻有重叠的小块,可以根据实际情况更改。目标检测模块和状态检测模块不限于使用深度学习网络进行检测,也可以是传统的计算机视觉方案,且二者可以是集成在一起的同一模块,也可以是两个独立模块。
102.本领域技术人员可以将本实施例理解为实施例1、实施例2的更为具体的说明。
103.本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统
及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
104.以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献