CN117011739A - 图像中杆状物识别方法、装置、计算机设备和存储介质 - Google Patents
图像中杆状物识别方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117011739A CN117011739A CN202211163449.0A CN202211163449A CN117011739A CN 117011739 A CN117011739 A CN 117011739A CN 202211163449 A CN202211163449 A CN 202211163449A CN 117011739 A CN117011739 A CN 117011739A
- Authority
- CN
- China
- Prior art keywords
- image
- shaft
- reference image
- rod
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000001514 detection method Methods 0.000 claims abstract description 138
- 238000012545 processing Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims abstract description 26
- 239000011159 matrix material Substances 0.000 claims description 57
- 230000001133 acceleration Effects 0.000 claims description 25
- 230000006870 function Effects 0.000 claims description 17
- 238000006073 displacement reaction Methods 0.000 claims description 14
- 238000005259 measurement Methods 0.000 claims description 13
- 238000005457 optimization Methods 0.000 claims description 12
- 230000010354 integration Effects 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种图像中杆状物识别方法、装置、计算机设备、存储介质和计算机程序产品。可应用于地图领域,方法包括:基于对多帧连续图像的杆状物初始识别结果,确定多帧连续图像中存在杆状物的至少两帧连续图像,基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物,得到基准图像与前一帧图像的匹配结果,再通过极线搜索将同一杆状物在前一帧图像中检测点投影至基准图像,得到极线,再基于极线以及拟合直线的匹配点,对基准图像中杆状物进行定位处理,得到基准图像中杆状物的识别结果。本申请可提高杆状物识别定位的准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种图像中杆状物识别方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机技术与人工智能技术的发展,出现了计算机视觉技术(ComputerVision,CV),计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟随和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。而目标的检测以及定位是计算机视觉技术的一种应用,例如目前可以通过对道路旁杆状物以及车道线等目标的进行检测来辅助构建高精度地图。
目前,对于道路上的杆状物品,一般可以通过计算描述子来做线段的匹配,从而实现杆状物品的匹配,然而这种方式容易受到光照等因素的影响,只能适用于室内和结构化的物体,而室外的杆状物体结构类似,且光照明暗变化较大,因此使用计算描述子来进行杆状物匹配的话准确性较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效提高杆状物识别匹配准确性的图像中杆状物识别方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种图像中杆状物识别方法。所述方法包括:
基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
第二方面,本申请还提供了一种图像中杆状物识别装置。所述装置包括:
目标识别模块,用于基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
杆状物匹配模块,用于基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
极线搜索模块,用于通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
杆状物识别模块,用于基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
上述图像中杆状物识别方法、装置、计算机设备、存储介质和计算机程序产品,通过基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定多帧连续图像中存在杆状物的至少两帧连续图像;从而确定需要处理的两帧图像。再将基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物,得到基准图像与前一帧图像的匹配结果,再通过极线搜索将同一杆状物在前一帧图像中最接近基准面的检测点投影至基准图像,得到极线;从而通过极线来减少投影的误差,再基于极线以及拟合直线的匹配点,对基准图像中杆状物进行定位处理,确定基准图像中各个杆状物的精确位置,得到基准图像中杆状物的识别结果。
附图说明
图1为一个实施例中图像中杆状物识别方法的应用环境图;
图2为一个实施例中图像中杆状物识别方法的流程示意图;
图3为一个实施例中杆状物初始识别结果的示意图;
图4为一个实施例中道路旁杆状物的示意图;
图5为一个实施例中高精地图矢量化结果的示意图;
图6为另一个实施例中高精地图矢量化结果的示意图;
图7为一个实施例中单应矩阵的投影过程的示意图;
图8为一个实施例中直行过程和转弯过程的检测点投影结果的示意图;
图9为一个实施例中杆状物投影结果的示意图;
图10为一个实施例中极线搜索结果的示意图;
图11为一个实施例中高精建图结果的示意图;
图12为一个实施例中滑动窗口的示意图;
图13为一个实施例中图像中杆状物识别装置的结构框图;
图14为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本文中,需要理解的是,所涉及的术语:
视觉惯性里程计(Visual Inertial Odometry,VIO):也叫视觉惯性系统(Visual-Inertial System,VINS),是融合相机和惯性测量单元(Inertial Measurement Unit,IMU)数据实现即时定位与地图构建(Simultaneous Localization and Mapping,SLAM)的算法。
预积分(PreIntegration):在已知上一时刻的IMU状态量(姿态和速度、位移)情况下,利用IMU测量得到的线加速度和角速度,做积分运算得到当前时刻的状态量。
滑动窗口算法(Sliding-Window algorithm):在一个特定大小的字符串或数组上进行操作,而不在整个字符串和数组上操作,这样就降低了问题的复杂度,从而也达到降低了循环的嵌套深度。本申请中是指通过移动时序上连续的图像帧,进行杆状物体的跟随,而不是在相邻帧做跟随,这样有效的避免了单张图像漏检对矢量化的影响,从而保证杆匹配更加可靠。
本质矩阵(Essential矩阵):又叫E矩阵,反映空间一点P的像点在不同视角摄像机下摄像机坐标系中的表示之间的关系。
基础矩阵(Fundamental矩阵):又叫F矩阵,图像坐标系上的点通过F矩阵实现帧间的匹配,和E矩阵类似,一般用F矩阵做极线搜索。
单应矩阵(Homography矩阵):又叫H矩阵,是表述真实世界中一个平面与对应它图像的透视变换;通过透视变换实现图像从一种视图变换到另外一种视图,具体介绍可以参考以下博客。
归一化平面:归一化平面是把相机坐标系的三维点同时除以Z(深度方向)。
三角化(Triangulation):三角化,又叫三角测量,指通过不同位置观测一个三维空间中特征点的夹角,从而测得点的深度值。
光束平差法(Bundle adjustment):简称为BA,通过将相机的姿态和测量点的三维坐标作为未知参数,将影像上探测到的用于前方交会的特征点坐标作为观测数据从而进行平差得到最优的相机参数和世界点坐标。
本申请实施例提供的图像中杆状物识别方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。当终端102方采集到了多帧连续图像后,为了对图像中存在的杆状物定位,可以将这些多帧连续图像以及对应的位姿数据(采集图像的图像采集设备的位姿)以及位置数据等发送至服务器104,由服务器104来实现对图像中杆状物的精准定位。服务器104在获取多帧连续图像后,先基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定多帧连续图像中存在杆状物的至少两帧连续图像,至少两帧连续图像包括基准图像以及基准图像的前一帧图像;基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物;通过极线搜索将同一杆状物在前一帧图像中最接近基准面的检测点投影至基准图像,得到极线;基于极线以及拟合直线的匹配点,对基准图像中杆状物进行定位处理,得到基准图像中杆状物的识别结果。其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种图像中杆状物识别方法,该方法可以用于终端或者服务器,下面以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤201,基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定多帧连续图像中存在杆状物的至少两帧连续图像,至少两帧连续图像包括基准图像以及基准图像的前一帧图像。
其中,多帧连续图像是指通过相同图像采集设备所连续采集的一系列图像,这些图片按照拍摄时间进行排序,也是本申请的检测目标,这些多帧连续图像中,前后图像中可能存在相同的杆状物,因此本申请借助前后图像中存在的相同杆状物来实现精准定位。杆状物检测是指通过图像识别技术,识别出图像中存在杆形状的物体。杆状物初始识别结果则是指通过图像识别技术识别出的杆状物检测结果,杆状物初始识别结果如图3所示,由各图像中包含的多组检测点组成,每组检测点都包含有多个检测点,同一组的检测点在一条直线上,代表一个杆状物。至少两帧连续图像并不是说多帧连续图像中只有两张连续图像存在杆状物,而是多帧连续图像中存在两张或者两张以上存在杆状物的图像,但是本申请的方案只需要两张图像即可实现杆状物定位。基准图像是指作为杆状物定位标准所采用的图像,杆状物定位即是指对基准图像中存在的杆状物进行定位。
具体地,本申请的方案主要通过对图像中的杆状物进行识别定位,得到图像中杆状物的具体位置。当终端102的用户需要进行定位处理时,可以向服务器104提供采集的一连串连续图像、位姿以及位置等数据,由服务器104实现对图像中杆状物的定位处理。而服务器104在获得这些数据后,首先会对多帧连续图像分别进行杆状物检测,确定这些图像中每一帧图像的杆状物初始识别结果。从而初步地确定每张图像中杆状物在图像的具体位置。在其中一个实施例中,本申请的方案可以应用于高精度地图的绘制,如图4所示,道路中的杆状物体是高精度地图最重要的语义特征之一,可以用来做车道级导航的语义定位,高级别自动辅助驾驶。然而通过测绘级采集车采集的数据是没办法满足高精地图的更新的,尤其在城市道路,数据的变化都是按照周甚至天来计量的,及时发现道路中的杆状物体的变化(缺失,新增)对高精地图的鲜度来说至关重要。因此,可以通过本申请的方案对通过车载摄像头拍摄的多帧连续图像进行杆状物识别处理,从而基于杆状物的识别结果来随时更新高精度地图。如图5和图6所示的高精地图矢量化结果,道路两侧分布着不同种类的杆状物体,这些杆状物体可以帮助车辆做高级别的辅助驾驶,高精地图的打底一般是通过高精度的采集车进行的,一般需要专业的设备及采集人员才能操作,车辆少,成本贵,故更新慢。通过本申请的方案可以实现高精地图中杆状物的众包更新,一般的车机或手机即可完成数据差分,从而保证高精数据的鲜度。因此,在车载终端提交多帧连续图像后,服务器104可以对多帧连续图像进行杆状物检测,得到杆状物初始识别结果。再基于杆状物初始识别结果来进行进一步地高精度杆状物定位识别。由于需要对图像中的杆状物进行定位,因此需要图像中存在杆状物才可以进行定位。在对多帧连续图像进行杆状物检测,得到杆状物初始识别结果,需要先从中挑选出包含杆状物的若干张图片,而后再借助这些图片来实现杆状物定位。可以依照图片对应的顺序,在其中挑选一张作为基准图片(不能选最前的一帧图片),同时获取该基准图片的前一帧图片来辅助实现杆状物识别。在其中一个实施例中,本申请的方案可以应用于高精度地图的绘制,此时,多帧连续图像可以是通过车载摄像头拍摄的一连串图像,假设20米内只有一个杆状物,车速一般是10-30m/s,车载摄像头的帧率一般是5-10Hz,因此可以选取5到10张图片作为一组多帧连续图像,如果拍摄正常的话这些图像中都包含有相同的杆状物。因此,可以讲这些都作为至少两帧连续图像来进行杆状物识别,例如选取拍摄时点最近的一张图片作为基准图片,选取拍摄时点第二近的一张图片作为基准图像的前一帧图像。
步骤203,基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物。
其中,基准面是指作为两张图片中对照面的一个平面,一般可以选取地面作为基准面,因为地面在前后两张图片中相对于杆状物并未发生变化,因此可以作为对照。投影是一种指图形的影子投到一个面或一条线上。本申请中是指将前一帧图像中存在的至少一个杆状物对应的检测点投影到基准图像中,得到该检测点在基准图像中的位置。拟合直线是指基于杆状物初始识别结果确定的多组直线,由于杆状物初始识别结果中包含有多组检测点,而每组检测点又在同一条直线上。因此,针对每组检测点都可以进行直线拟合,得到一条直线。指的注意的是,在这个过程中,如果杆状物初始识别结果中某组检测点数小于3,则可以直接省去,从而避免无检测和外点的影响。同一杆状物指的是基准图像以及前一帧图像中所存在的同一个杆状物,但是由于拍摄时机的不同,分别同时存在于前后两张图像中。
具体地,由于连续两帧图像中存在相同的杆状物,为了对这些相同杆状物进行匹配,可以先通过投影技术将前一帧图像的杆状物识别结果中最接近基准面的检测点投影至基准图像。在一个具体的实施例中,由于在图像拍摄过程中拍摄设备可能发生了移动,所以投影具体可以基于基准图像以及前一帧图像所对应的位姿数据来进行。在具体投影时,可以基于基准图像以及基准图像的前一帧图像来构造单应矩阵,而后通过单应矩阵来实现投影。将前一帧图像的杆状物识别结果中最接近基准面的检测点投影至基准图像后,可以通过检测点的投影以及杆状物初始识别结果的拟合直线。来确定前一帧图像中检测点对应的杆状物与拟合直线对应的杆状物之间的大致距离,从而判定这两个杆状物是否是同一杆状物。在具体地实施例中,由于多帧连续图像中前后图像的拍摄时机间隔较短,因此,可能存在同一个杆状物,而本申请的方案即通过识别出同一个杆状物来进行定位识别,因此在投影完成后,先确定检测点的投影与杆状物初始识别结果的拟合直线之间的直线距离,再判断离检测点的投影与杆状物初始识别结果两者对应的杆状物是否是同一个杆状物,如果是的话,则可进行后续的杆状物识别。
步骤205,通过极线搜索将同一杆状物在前一帧图像中最接近基准面的检测点投影至基准图像,得到极线。
其中,极线搜索是指确定基准图像中的极线。极线即对极线,是对极几何(Epipolar Geometry)中的概念,指的是对极平面与图像的交线。对极几何描述的是两幅视图之间的内在射影关系,与外部场景无关,只依赖于图像采集设备内参数和这两幅视图之间的相对姿态。
具体地,本申请的方案在确定基准图像与前一帧图像两张图像后,将两张图像作为对极几何的两张视图,从而进行极线搜索确定基准图像中的极线。此处的投影区别于步骤203中的投影过程,步骤203中仅仅是一次近似投影,此处是通过极线搜索的方式来进行投影,可以基于确定的同一杆状物精确地搜索到基准图像中的极线。在已知两帧图像之间的相对位姿为R、t时。极限搜索的公式具体为:
l=K-TtxRK-1x
其中,K、tx以及R分别代表相机的内参,平移向量的反对称矩阵,旋转矩阵。
步骤207,基于极线以及拟合直线的匹配点,对基准图像中杆状物进行定位处理,得到基准图像中杆状物的识别结果。
其中,匹配点是指在二维的基准图像中极线和拟合杆的交点。定位处理具体是指确定匹配点所对应杆状物体在世界坐标系中的具体位置的过程。而这个确定的具体位置即为基准图像中杆状物的识别结果。
具体地,通过将二维匹配点转化进行三角化,通过定位就可以得到基准图像中匹配点所对应的杆状物体在相机坐标系中的位置。再通过坐标系转换,可以将相机坐标系中的位置转化为世界坐标系,即可确定杆状物在世界坐标系的精确位置,完成定位,得到基准图像中杆状物的识别结果。在其中一个实施例中,本申请的方案可以应用于高精度地图的绘制,此时可以通过确定的杆状物位置实现高精地图中的杆状物位置更新同时还可以利用杆状物体作为道路的锚点做车道线的绝对精度的定位。在另一个实施例中,本申请的方案适用于车道级导航的视觉匹配,此时将确定的杆状物位置和高精母库数据做匹配从而确定车辆在世界坐标系的绝对位置。此外本申请的方案还可应用于高级别辅助驾驶中,同样可以通过视觉的匹配确定车辆在世界坐标系的绝对位置。
上述图像中杆状物识别方法,基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定多帧连续图像中存在杆状物的至少两帧连续图像;从而确定需要处理的两帧图像。再将基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物,得到基准图像与前一帧图像的匹配结果,再通过极线搜索将同一杆状物在前一帧图像中最接近基准面的检测点投影至基准图像,得到极线;从而通过极线来减少投影的误差,再基于极线以及拟合直线的匹配点,对基准图像中杆状物进行定位处理,确定基准图像中各个杆状物的精确位置,得到基准图像中杆状物的识别结果。
在一个实施例中,步骤201之前,还包括:通过对象检测网络对多帧连续图像进行杆状物识别处理,得到多组检测点,将多组检测点作为多帧连续图像中的杆状物初始识别结果。
其中,对象检测网络具体是指类似于lanenet的网络机构,lanenet目前一般用来进行车道线的检测,它可以通过拍摄的道路图像,提取出道路图像中车道线的位置。本申请则是通过对象检测网络来实现杆状物的检测,可以检测出图像中存在的较为竖直的杆状物。检测点是指检测到的杆状物上的点,每组检测点对应一个检测出来的杆状物。
具体地,本申请中的初步杆状物检测可以通过lanenet类似的对象检测网络来实现,可以将杆状物作为检测的目标对初始的对象检测网络进行训练,而后通过将多帧连续图像中各帧图像分别输入到训练完成的对象检测网络,通过对象检测网络实现图像中杆状物的检测与标注,其中标注是指通过检测点来对图像中存在的杆状物进行标注,每一个杆状物对应有一组连成一线的检测点,最终根据检测结果得到杆状物初始识别结果。在其中一个实施例中,可以在得到杆状物初始识别结果之后再对杆状物初始识别结果一次筛选,去除检测点小于3个点的杆状物体,从而避免无检测和外点对杆状物识别的影响。在其中一个实施例中,本申请的方案可以应用于高精度地图的绘制,此时需要识别的杆状物具体包括道路旁边的标牌、路灯以及交通信号灯等,可以通过将包含标牌、路灯以及交通信号灯等内容的标注图片作为训练数据训练对象检测网络,从而实现道路中杆状物的识别处理。本实施例中,通过对象检测网络来实现杆状物的初始识别,可以有效保证杆状物识别的准确率,从而保证杆状物识别的准确率。
在其中一个实施例中,步骤203之前,还包括:基于至少两帧连续图像的位姿数据构造单应矩阵;通过单应矩阵,将前一帧图像的杆状物识别结果中最接近基准面的检测点投影至基准图像。
其中,位姿数据是指即位置和姿态,描述姿态,则是通过将附加一个坐标系到物体上,然后给出相对于参考系统的这个坐标系的描述,即通过旋转矩阵来描述方向。至少两帧连续图像的位姿数据则具体是指图像采集设备在采集这两个图像时的位置以及姿态。单应矩阵即Homography矩阵,又叫H矩阵,是表述真实世界中一个平面与对应它图像的透视变换,通过透视变换实现图像从一种视图变换到另外一种视图。本申请的方案中具体是指将检测点从前一帧图像视图变换到基准图像的视图中。基准面是指在至少两帧连续图像同时存在的客观面,可以作为参照面存在。在具体实施例中,一般可以选取地面来作为基准面。
具体地,本申请的方案可以通过单应矩阵来将前一帧图像中的杆状物参照点投影到基准图像上,因此在需要投影前,可以先通过这两帧图像对应图像采集设备的位姿数据来构造单应矩阵。在其中一个实施例中,投影过程具体通过单应矩阵来将前一帧图像的杆状物识别结果中最接近基准面的检测点投影至图像归一化平面,而后结合图像采集设备的内参,将图像归一化平面上的坐标转化为基准图像上的坐标。图像归一化平面为图像采集设备坐标系的三维点同时除以Z(深度方向的数值)得到的一个平面。本实施例中,通过位姿数据来构造单应矩阵,可以准确地将代表前一帧图像的杆状物识别结果的检测点投影到基准图像,从而保证杆状物识别的准确性。
在其中一个实施例中,基于至少两帧连续图像的位姿数据构造单应矩阵之前,还包括:获取图像采集设备在采集多帧连续图像时的速度数据以及多帧连续图像对应图像采集设备的初始位姿数据;对速度数据进行预积分处理,得到至少两帧连续图像中各帧图像对应的位姿数据。
其中,速度数据具体包括了至少两帧连续图像对应的图像采集设备的加速度的测量值、角速度的测量值、加速度的偏置以及角速度的偏置等数据,还可以包括速度的测量值及速度的偏置这类数据等。对于速度数据的采集过程,对于无轮速的设备,如智能手机等图像采集设备,速度通过加速度积分得到,对于车载摄像头这种有轮速的设备,速度可以直接测量得到。预积分在已知上一时刻的惯性测量单元状态量(姿态和速度、位移)情况下,利用惯性测量单元测量得到的线加速度和角速度,做积分运算得到当前时刻的状态量。
具体地,由于构造单应矩阵需要结合至少两帧连续图像的位姿数据来实现,因此在本申请的方案中首先需要估计出这两帧图像各自对应的位姿数据。因此,可以先获取图像采集设备在采集多帧连续图像时的速度数据以及初始位姿数据,再基于初始位姿数据以及多帧连续图像中各帧图像对应的速度数据进行预积分计算,在初始位姿数据确定第一帧图像所对应的位姿数据,再在第一帧图像位姿数据的基础上确定第二帧图像位姿数据。依此计算,直到确定各帧图像的位姿数据,再从中确定至少两帧连续图像中各帧图像对应的位姿数据。本实施例中,通过图像采集设备的初始位姿数据以及各帧图像对应的速度数据来进行预积分的计算,可以有效地确定至少两帧连续图像中各帧图像对应的位姿数据,从而准确地建立单应矩阵,保证杆状物识别准确性。
在其中一个实施例中,速度数据包括加速度的测量值、角速度的测量值、加速度的偏置以及角速度的偏置,位姿数据包括的位置数据、速度数据以及角度数据。对速度数据进行预积分处理,得到至少两帧连续图像中各帧图像对应的位姿数据包括:对速度数据进行预积分处理,得到至少两帧连续图像中各帧图像对应的位姿数据包括:基于加速度的测量值以及加速度的偏置,确定至少两帧连续图像中各帧图像对应的位置数据以及速度数据;基于角速度的测量值以及角速度的偏置,确定至少两帧连续图像中各帧图像对应的角度数据。
具体地,位姿数据包括了位置数据、速度数据以及角度数据这三个方向的数据,因此在计算时,需要分别计算出这三个数据,在综合三者得到最终的位姿数据。对于位置数据和速度数据,这两者可以通过加速度的测量值以及加速度的偏置两者来确定。而对于角度数据,则是基于角速度的测量值以及角速度的偏置来确定。其中对于位置数据,其具体计算公式为:
对于速度数据,其具体计算公式为:
v←v+(R(am-ab)+g)Δt
其中,箭头前的p和v分别代表前一帧图像位姿中的位置数据和速度数据,而箭头后的p和v代表当前帧图像的位置数据和速度数据。am和ab分别代表加速度的测量值数据和加速度的偏置。R代表相邻帧图像之间的旋转矩阵,g为重力加速度。Δt代表两帧之间的运动时间。
对于角度数据,其具体计算公式为:
其中,箭头前的q代表前一帧图像位姿中的角度数据,而箭头后的q代表当前帧图像的角度数据。wm和wb则别代表角速度的测量值数据和角速度的偏置。本实施例中,通过确定加速度的相关数据,可以有效地计算出多帧连续图像中各帧图像对应的位置数据和速度数据,同时通过角速度相关数据,可以有效地计算出多帧连续图像中各帧图像对应的角度数据,从而得到各帧图像对应的位姿数据。
在其中一个实施例中,基于至少两帧连续图像的位姿数据构造单应矩阵包括:基于至少两帧连续图像的位姿数据,确定基准图像以及前一帧图像相对于基准平面的旋转数据以及位移数据;基于旋转数据以及位移数据构造单应矩阵。
其中,旋转数据和位移数据是用于构造单应矩阵所用的数据,这两个数据可以通过对比前后两帧之间的位姿变化来确定。其中旋转数据代表前后两帧之间图像采集设备相对基准面的旋转角度变化,而位移数据则代表前后两帧之间图像采集设备相对基准面的位置变化。
具体地,在得到基准图像以及前一帧图像分别对应的位姿数据后,可以通过两者之间的位姿变化来构造单应矩阵。具体地,可以先基于至少两帧连续图像的位姿数据,确定基准图像以及前一帧图像相对于基准平面的旋转数据以及位移数据。而后再基于旋转数据以及位移数据来构造单应矩阵。在其中一个具体实施例中,本申请的方案可以应用于高精度地图的绘制,此时连续图像具体可以为通过车载相机所采集的图像。对于单应矩阵的投影过程具体可以参照图7所示,其中图中右侧下方的平面代表地面,穿过其上方平面的线段代表杆状物,地面上方四边形代表平行于地面且通过杆检测最下面点的第二平面,箭头代表地面的法向量。左侧是车身和相机,车身前进的方向和相机的成像平面是基本重合的(相机的车身有一个安装角),对于地面平面来说,已知两帧之间的旋转和平移,可以构造单应矩阵,公式如下:
其中,R代表两帧之间的旋转矩阵,t代表两帧之间的平移,n代表平面的法向量,在图像坐标系近似为n=[0,1,0]T,d代表相机光心到平面的距离。因此,对于相邻帧归一化平面上的点满足以下关系:
对于穿过第二平面的点,也可以构造以下单应矩阵:
其中,λ为比例系数,取值范围满足:0<λ<1,对于地面的点满足:λ=1,则相邻帧间归一化平面的点满足以下关系:
其中,s是一个比例系数,因此上述的公式还可以写为:
而用矩阵的前两行同时除以第三行可得:
其中,u2和v2是用地面构成的单应矩阵投影到图像归一化平面坐标的理论值,而u′2和v′2是杆的交点投影到当前帧的图像归一化平面坐标的理论值。对于汽车来说,除了变道和上坡外,直行的方向都远远大于上下和左右方向的移动,故满足:tz>>tx且tz>>ty。因此在直行时可得u′2=u2,v′2=v2。而当汽车变道和爬坡时,直行的方向较上下或左右方向的移动一般也较大,u′2≈u2,v′2≈v2。从而可以将前一帧图像上的检测点投影到图像归一化平面坐标。而在得到图像归一化平面坐标后,再结合相机的内参,就可以将检测点对应的位置投影到基准图像中。图8中,上图左边代表基准图像,上图右边代表前一帧图像,车辆基本处于直行状态,左边的检测点是右边的检测点用单应矩阵投影出来的结果。下图左边代表基准图像,下图右图代表前一帧图像,车辆基本处于转弯状态,左边的检测点是右边的检测点用单应矩阵投影出来的结果。本实施例中,通过位姿数据的变化来构造单应矩阵,可以有效保证单应矩阵构造的准确性,从而保证杆状物识别定位的准确性。
在其中一个实施例中,基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物之前,还包括:通过一阶函数对基准图像中杆状物初始识别结果进行直线拟合,得到各个杆状物初始识别结果对应的拟合直线。
具体地,直线拟合具体可以通过一阶函数x=ky+b来实现,通过将杆状物初始识别结果中的各个检测点坐标代入上述的一阶函数,即可确定杆状物所对应的一阶函数,即可实现直线拟合的处理过程。通过直线拟合,可以有效地确定杆状物初始识别结果对应的直线方程,从而确定检测点的投影的坐标与杆状物初始识别结果对应直线方程的距离,保证杆状物匹配的准确性。
在其中一个实施例中,步骤205包括:确定基准图像的杆状物初始识别结果的拟合直线,与前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影之间的距离数据;通过预设距离阈值对距离数据进行筛选,得到距离小于预设距离阈值的拟合直线与检测点的投影组成的匹配组,确定匹配组中拟合直线对应的杆状物初始识别结果、与检测点对应的杆状物初始识别结果为基准图像与前一帧图像中的同一杆状物。
其中,确定检测点的投影与拟合直线之间的距离数据具体是指对于每一个检测点,都计算其与基准图像中所有杆状物对应拟合直线的距离。预设距离阈值则是用于筛选匹配杆状物的筛选标准,具体可以根据图像采集设备的速度以及前一帧图像与基准图像之间的拍摄间隔进行设置。而对于匹配组,每个匹配组包括一个检测点和一条拟合直线,如果一个检测点存在多个小于预设距离阈值的拟合直线,则可以选择距离最小的一根拟合直线来构建匹配组。
具体地,通过点到直线的距离小于预设距离阈值可以确定检测点和基准图片上杆状物的匹配关系,即确定前一帧图片中杆状物与基准图片中杆状物的匹配关系。因此,先计算出检测点的投影与拟合直线之间的距离数据,在检测点投影到基准图像之后,就可以确定检测点在基准图像中所对应的一个坐标,再通过解析几何就可以计算出坐标与各个拟合直线之间的距离,再结合预设距离阈值对距离数据进行筛选,就可以得到距离小于预设距离阈值的拟合直线与检测点的投影组成的匹配组。组成匹配组的数据包括一个检测点的投影以及一个拟合直线,但实质两者分别代表了前一帧图像上的杆状物以及基准图像上的杆状物。因此,可以基于匹配组确定匹配组中拟合直线对应的杆状物初始识别结果、与检测点对应的杆状物初始识别结果为基准图像与前一帧图像中的同一杆状物,得到杆状物匹配的最终结果。如图9所示,左边代表基准图像,右图代表前一帧图像,左边的点代表用单应矩阵把右边图像中杆状物体投影过去得到的结果。本实施例中,通过投影与拟合直线的距离来进行两张图像中同一杆状物的筛选,从而可以有效地保证两帧图像间杆状物识别的准确性。
在其中一个实施例中,基于极线以及拟合直线的匹配点,步骤207包括:确定极线以及拟合直线相交的匹配点;对匹配点进行三角化处理,得到匹配点的图像采集设备坐标系位置;将匹配点的图像采集设备坐标系位置转移至世界坐标系,得到基准图像中杆状物的识别结果。
其中,匹配点具体是指极线以及拟合直线两者相交的点。三角化又叫三角测量,指通过不同位置观测一个三维空间中特征点的夹角,从而测得点的深度值。其中,图像采集设备坐标系是以图像采集设备的聚焦中心为原点,以光轴为Z轴建立的三维直角坐标系。世界坐标系是指在环境中还选择一个参考坐标系来描述图像采集设备和物体的位置,该坐标系称为世界坐标系。图像采集设备坐标系和世界坐标系之间的关系可用旋转矩阵R与平移向量t来描述。
具体地,本申请中的特征点指的是识别出的匹配点,通过将匹配点三角化,可以确定该匹配点所对应的深度值,再将该点的深度值与其在基准图像上的坐标结合,得到的匹配点的图像采集设备坐标系位置。而在得到图像采集设备坐标系位置之后,即可将其转换到世界坐标系中。通过世界坐标系的坐标来对基准图像中杆状物的位置进行精准的描述。在其中一个实施例中,本申请的方案可以应用于高精度地图的绘制,此时图像采集设备具体为车身上的相机设备,此时可以先确定匹配点在相机坐标系的位置,根据坐标转换依次转到车身坐标系和世界坐标系,即得到杆状物体在世界坐标系的位置。在得到杆状物的世界坐标系位置后,可以将该位置和母库数据的比较即可判断是否有新增的杆状物体,如果有则完成差分,如果没有则说明母库的数据并不及时,需要进行更新,从而实现高精度地图的绘制与更新操作。如图10所示,左边代表基准图像,右图代表基准图像的前一帧图像,左边图中的线是用右边图中的线通过极线搜索得到的,和拟合线的交点即为左右两帧图像的匹配点。如图11当应用于高精建图任务时,高精建图的展示效果,道路外的小细线是杆矢量化的结果,通过和高精地图做匹配可以用来做数据差分或高级别辅助驾驶,点代表车的轨迹点,道路中两侧的线代表矢量化的车道线。本实施例中,通过三角化处理可以有效地实现匹配点的坐标系转换,从而有效地识别出杆状物在世界坐标系的准确位置,保证杆状物识别定位的准确性。
在其中一个实施例中,基于极线以及拟合直线的匹配点,得到基准图像中杆状物的识别结果之后,还包括:基于至少两帧连续图像构建滑动窗口;确定滑动窗口中除最前一帧图像外各帧图像对应的杆状物识别结果;基于杆状物识别结果构造损失函数;通过损失函数对滑动窗口中各帧图像对应的位姿数据进行优化,得到位姿优化数据;基于位姿优化数据对各帧图像对应的杆状物识别结果进行优化。
其中,滑动窗口指的是滑动窗口算法,其原本是在一个特定大小的字符串或数组上进行操作,而不在整个字符串和数组上操作,这样就降低了问题的复杂度,从而也达到降低了循环的嵌套深度。本申请中则是指通过移动时序上连续的图像帧,进行杆状物体的跟随,而不是在相邻帧做跟随,这样有效的避免了单张图像漏检对矢量化的影响,从而保证杆匹配更加可靠。而位姿优化的过程具体为光束平差法的计算过程,通过将相机的姿态和测量点的三维坐标作为未知参数,将影像上探测到的用于前方交会的特征点坐标作为观测数据从而进行平差得到最优的相机参数和世界点坐标,实现位置优化。
具体地,本申请的方案可以基于基准图像与前一帧图像来对基准图像中的杆状物进行定位,如此,即可将其推广到至少两帧连续图像的其他图像中,通过构建滑动窗口,可以基于上述识别方法依次确定滑动窗口中除最前一帧图像外各帧图像对应的杆状物识别结果。而后可以对滑动窗口内的杆状物做一个光束平差法约束处理,即根据滑动窗口内的杆状物体在三维空间的位置及朝向一致性构造损失函数,来约束车辆的位姿,从而得到更准确的局部定位。优化函数具体如下所示:
其中,和/>分别代表预积分和视觉的约束,通过最小化视觉和预积分的误差即可得到最优的位姿。本实施例中的滑窗具体可以参照图12所示,其中的图像帧1-5为历史帧,图像帧6代表当前帧,随着时间的推移,会舍弃掉第一帧并同时加入第6帧组成新的滑动窗口。本实施例中,通过三角化处理可以有效地实现匹配点的坐标系转换,从而有效地识别出杆状物在世界坐标系的准确位置,保证杆状物识别定位的准确性。
本申请还提供一种应用场景,该应用场景应用上述的图像中杆状物识别方法。具体地,该图像中杆状物识别方法在该应用场景的应用如下:
当用户需要绘制一张高精度的地图,以通过地图来实现自动驾驶时,可以通过本申请的图像中杆状物识别来辅助进行高精度地图中杆状物的绘制与更新。首先,用户可以查找地图对应地段中通过车载相机所采集到的一些连续图像。而后基于地图来实现杆状物的绘制,而在后续则可以根据新的图像来实现对应地段中杆状物的更新。具体地,首先在服务器端,通过对象检测网络对多帧连续图像进行杆状物识别处理,得到多组检测点,将多组检测点作为多帧连续图像中的杆状物初始识别结果,而后基于杆状物初始识别结果确定多帧连续图像中存在杆状物的至少两帧连续图像,至少两帧连续图像包括基准图像以及基准图像的前一帧图像。同时,可以确定每帧图像对应的位姿数据,首先获取图像采集设备在采集多帧连续图像时的速度数据以及多帧连续图像对应图像采集设备的初始位姿数据;对速度数据进行预积分处理,得到至少两帧连续图像中各帧图像对应的位姿数据。具体地,可以基于加速度的测量值以及加速度的偏置,确定至少两帧连续图像中各帧图像对应的位置数据以及速度数据;基于角速度的测量值以及角速度的偏置,确定至少两帧连续图像中各帧图像对应的角度数据。再基于至少两帧连续图像的位姿数据构造单应矩阵;通过单应矩阵,将前一帧图像的杆状物识别结果中最接近基准面的检测点投影至基准图像。对于构造单应矩阵的过程,可以先基于至少两帧连续图像的位姿数据,确定基准图像以及前一帧图像相对于基准平面的旋转数据以及位移数据;基于旋转数据以及位移数据构造单应矩阵。而后,通过一阶函数对基准图像中杆状物初始识别结果进行直线拟合,得到各个杆状物初始识别结果对应的拟合直线。再确定检测点的投影与拟合直线之间的距离数据;通过预设距离阈值对距离数据进行筛选,得到距离小于预设距离阈值的拟合直线与检测点的投影组成的匹配组,确定匹配组中拟合直线对应的杆状物初始识别结果、与检测点对应的杆状物初始识别结果为基准图像与前一帧图像中的同一杆状物。在得到同一杆状物后,可以通过极线搜索将同一杆状物在前一帧图像中最接近基准面的检测点投影至基准图像,得到极线;之后即可确定极线以及拟合直线相交的匹配点;对匹配点进行三角化处理,得到匹配点的图像采集设备坐标系位置;将匹配点的图像采集设备坐标系位置转移至世界坐标系,得到基准图像中杆状物的识别结果。同时,为了进一步地优化处理,可以基于至少两帧连续图像构建滑动窗口;确定滑动窗口中除最前一帧图像外各帧图像对应的杆状物识别结果;基于杆状物识别结果构造损失函数;通过损失函数对滑动窗口中各帧图像对应的位姿数据进行优化,得到位姿优化数据;基于位姿优化数据对各帧图像对应的杆状物识别结果进行优化。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的图像中杆状物识别方法的图像中杆状物识别装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图像中杆状物识别装置实施例中的具体限定可以参见上文中对于图像中杆状物识别方法的限定,在此不再赘述。
在一个实施例中,如图13所示,提供了一种图像中杆状物识别装置,包括:
目标识别模块1302,用于基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定多帧连续图像中存在杆状物的至少两帧连续图像,至少两帧连续图像包括基准图像以及基准图像的前一帧图像;
杆状物匹配模块1304,用于基于基准图像的杆状物初始识别结果的拟合直线、以及前一帧图像的杆状物识别结果中最接近基准面的检测点在基准图像的投影,识别出基准图像与前一帧图像中的同一杆状物;
极线搜索模块1306,用于通过极线搜索将同一杆状物在前一帧图像中最接近基准面的检测点投影至基准图像,得到极线;
杆状物识别模块1308,用于基于极线以及拟合直线的匹配点,对基准图像中杆状物进行定位处理,得到基准图像中杆状物的识别结果。
在一个实施例中,还包括初始检测模块,用于:通过对象检测网络对多帧连续图像进行杆状物识别处理,得到多组检测点,将多组检测点作为多帧连续图像中的杆状物初始识别结果。
在一个实施例中,还包括检测点投影模块,用于:基于至少两帧连续图像的位姿数据构造单应矩阵;通过单应矩阵,将前一帧图像的杆状物识别结果中最接近基准面的检测点投影至基准图像。
在一个实施例中,还包括位姿计算模块,用于:获取图像采集设备在采集多帧连续图像时的速度数据以及多帧连续图像对应图像采集设备的初始位姿数据;对速度数据进行预积分处理,得到至少两帧连续图像中各帧图像对应的位姿数据。
在一个实施例中,速度数据包括加速度的测量值、角速度的测量值、加速度的偏置以及角速度的偏置,位姿数据包括的位置数据、速度数据以及角度数据;位姿计算模块具体用于:基于加速度的测量值以及加速度的偏置,确定至少两帧连续图像中各帧图像对应的位置数据以及速度数据;基于角速度的测量值以及角速度的偏置,确定至少两帧连续图像中各帧图像对应的角度数据。
在一个实施例中,位姿计算模块还用于:基于至少两帧连续图像的位姿数据,确定基准图像以及前一帧图像相对于基准平面的旋转数据以及位移数据;基于旋转数据以及位移数据构造单应矩阵。
在一个实施例中,还包括直线拟合模块,用于:通过一阶函数对基准图像中杆状物初始识别结果进行直线拟合,得到各个杆状物初始识别结果对应的拟合直线。
在一个实施例中,杆状物匹配模块1304具体用于:确定检测点的投影与拟合直线之间的距离数据;通过预设距离阈值对距离数据进行筛选,得到距离小于预设距离阈值的拟合直线与检测点的投影组成的匹配组,确定匹配组中拟合直线对应的杆状物初始识别结果、与检测点对应的杆状物初始识别结果为基准图像与前一帧图像中的同一杆状物。
在一个实施例中,杆状物识别模块1308具体用于:确定极线以及拟合直线相交的匹配点;对匹配点进行三角化处理,得到匹配点的图像采集设备坐标系位置;将匹配点的图像采集设备坐标系位置转移至世界坐标系,得到基准图像中杆状物的识别结果。
在一个实施例中,还包括位置优化模块,用于:基于至少两帧连续图像构建滑动窗口;确定滑动窗口中除最前一帧图像外各帧图像对应的杆状物识别结果;基于杆状物识别结果构造损失函数;通过损失函数对滑动窗口中各帧图像对应的位姿数据进行优化,得到位姿优化数据;基于位姿优化数据对各帧图像对应的杆状物识别结果进行优化。
上述图像中杆状物识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储杆状物识别相关数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像中杆状物识别方法。
本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (14)
1.一种图像中杆状物识别方法,其特征在于,所述方法包括:
基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
2.根据权利要求1所述的方法,其特征在于,所述基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像之前,还包括:
通过对象检测网络对所述多帧连续图像进行杆状物识别处理,得到多组检测点,将所述多组检测点作为所述多帧连续图像中的杆状物初始识别结果。
3.根据权利要求1所述的方法,其特征在于,所述基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物之前,还包括:
基于所述至少两帧连续图像的位姿数据构造单应矩阵;
通过所述单应矩阵,将所述前一帧图像的杆状物识别结果中最接近基准面的检测点投影至所述基准图像。
4.根据权利要求3所述的方法,其特征在于,所述基于所述至少两帧连续图像的位姿数据构造单应矩阵之前,还包括:
获取图像采集设备在采集所述多帧连续图像时的速度数据以及所述多帧连续图像对应图像采集设备的初始位姿数据;
对所述速度数据进行预积分处理,得到所述至少两帧连续图像中各帧图像对应的位姿数据。
5.根据权利要求4所述的方法,其特征在于,所述速度数据包括加速度的测量值、角速度的测量值、加速度的偏置以及角速度的偏置,所述位姿数据包括的位置数据、速度数据以及角度数据;
所述对所述速度数据进行预积分处理,得到所述至少两帧连续图像中各帧图像对应的位姿数据包括:
基于所述加速度的测量值以及所述加速度的偏置,确定所述至少两帧连续图像中各帧图像对应的位置数据以及速度数据;
基于所述角速度的测量值以及所述角速度的偏置,确定所述至少两帧连续图像中各帧图像对应的角度数据。
6.根据权利要求3所述的方法,其特征在于,所述基于所述至少两帧连续图像的位姿数据构造单应矩阵包括:
基于所述至少两帧连续图像的位姿数据,确定所述基准图像以及所述前一帧图像相对于基准平面的旋转数据以及位移数据;
基于所述旋转数据以及所述位移数据构造单应矩阵。
7.根据权利要求1所述的方法,其特征在于,所述基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物之前,还包括:
通过一阶函数对所述基准图像中杆状物初始识别结果进行直线拟合,得到各个杆状物初始识别结果对应的拟合直线。
8.根据权利要求1所述的方法,其特征在于,所述基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物包括:
确定所述基准图像的杆状物初始识别结果的拟合直线,与所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影之间的距离数据;
通过预设距离阈值对所述距离数据进行筛选,得到距离小于所述预设距离阈值的拟合直线与检测点的投影组成的匹配组,确定所述匹配组中所述拟合直线对应的杆状物初始识别结果、与检测点对应的杆状物初始识别结果为所述基准图像与所述前一帧图像中的同一杆状物。
9.根据权利要求1所述的方法,其特征在于,所述基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到图像中杆状物的识别结果包括:
确定所述极线以及所述拟合直线相交的匹配点;
对所述匹配点进行三角化处理,得到匹配点的图像采集设备坐标系位置;
将所述匹配点的图像采集设备坐标系位置转移至世界坐标系,得到所述基准图像中杆状物的识别结果。
10.根据权利要求1至9中任意一项所述的方法,其特征在于,所述基于所述极线以及所述拟合直线的匹配点,得到所述基准图像中杆状物的识别结果之后,还包括:
基于所述至少两帧连续图像构建滑动窗口;
确定所述滑动窗口中除最前一帧图像外各帧图像对应的杆状物识别结果;
基于所述杆状物识别结果构造损失函数;
通过所述损失函数对所述滑动窗口中各帧图像对应的位姿数据进行优化,得到位姿优化数据;
基于所述位姿优化数据对所述各帧图像对应的杆状物识别结果进行优化。
11.一种图像中杆状物识别装置,其特征在于,所述装置包括:
目标识别模块,用于基于对多帧连续图像进行杆状物检测得到的杆状物初始识别结果,确定所述多帧连续图像中存在杆状物的至少两帧连续图像,所述至少两帧连续图像包括基准图像以及所述基准图像的前一帧图像;
杆状物匹配模块,用于基于所述基准图像的杆状物初始识别结果的拟合直线、以及所述前一帧图像的杆状物识别结果中最接近基准面的检测点在所述基准图像的投影,识别出所述基准图像与所述前一帧图像中的同一杆状物;
极线搜索模块,用于通过极线搜索将所述同一杆状物在所述前一帧图像中最接近所述基准面的检测点投影至所述基准图像,得到极线;
杆状物识别模块,用于基于所述极线以及所述拟合直线的匹配点,对所述基准图像中杆状物进行定位处理,得到所述基准图像中杆状物的识别结果。
12.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
14.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211163449.0A CN117011739A (zh) | 2022-09-23 | 2022-09-23 | 图像中杆状物识别方法、装置、计算机设备和存储介质 |
PCT/CN2023/113024 WO2024060882A1 (zh) | 2022-09-23 | 2023-08-15 | 图像中杆状物识别方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211163449.0A CN117011739A (zh) | 2022-09-23 | 2022-09-23 | 图像中杆状物识别方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117011739A true CN117011739A (zh) | 2023-11-07 |
Family
ID=88562479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211163449.0A Pending CN117011739A (zh) | 2022-09-23 | 2022-09-23 | 图像中杆状物识别方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117011739A (zh) |
WO (1) | WO2024060882A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108764012B (zh) * | 2018-03-27 | 2023-02-14 | 国网辽宁省电力有限公司电力科学研究院 | 基于多帧联合的车载激光雷达数据的城市道路杆状物识别算法 |
CN109614857B (zh) * | 2018-10-31 | 2020-09-29 | 百度在线网络技术(北京)有限公司 | 基于点云的杆状物识别方法、装置、设备及存储介质 |
CN113450387A (zh) * | 2020-03-26 | 2021-09-28 | 京东方科技集团股份有限公司 | 目标跟踪方法、装置、电子设备及计算机可读存储介质 |
CN111598823B (zh) * | 2020-05-19 | 2023-07-25 | 北京数字绿土科技股份有限公司 | 多源移动测量点云数据空地一体化融合方法、存储介质 |
-
2022
- 2022-09-23 CN CN202211163449.0A patent/CN117011739A/zh active Pending
-
2023
- 2023-08-15 WO PCT/CN2023/113024 patent/WO2024060882A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2024060882A1 (zh) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110070615B (zh) | 一种基于多相机协同的全景视觉slam方法 | |
KR102145109B1 (ko) | 지도 생성 및 운동 객체 위치 결정 방법 및 장치 | |
CN106679648B (zh) | 一种基于遗传算法的视觉惯性组合的slam方法 | |
CN109631855B (zh) | 基于orb-slam的高精度车辆定位方法 | |
CN111830953B (zh) | 车辆自定位方法、装置及系统 | |
Wenzel et al. | 4Seasons: A cross-season dataset for multi-weather SLAM in autonomous driving | |
CN112667837A (zh) | 图像数据自动标注方法及装置 | |
CN110617821B (zh) | 定位方法、装置及存储介质 | |
CN110386142A (zh) | 用于自动驾驶车辆的俯仰角校准方法 | |
CN107909614B (zh) | 一种gps失效环境下巡检机器人定位方法 | |
CN107167826B (zh) | 一种自动驾驶中基于可变网格的图像特征检测的车辆纵向定位系统及方法 | |
KR102200299B1 (ko) | 3d-vr 멀티센서 시스템 기반의 도로 시설물 관리 솔루션을 구현하는 시스템 및 그 방법 | |
KR20210089602A (ko) | 차량의 제어 방법, 장치 및 차량 | |
WO2022062480A1 (zh) | 移动设备的定位方法和定位装置 | |
CN111351502A (zh) | 用于从透视图生成环境的俯视图的方法,装置和计算机程序产品 | |
CN115690338A (zh) | 地图构建方法、装置、设备及存储介质 | |
CN111623773A (zh) | 一种基于鱼眼视觉和惯性测量的目标定位方法及装置 | |
Laflamme et al. | Driving datasets literature review | |
CN115344655A (zh) | 地物要素的变化发现方法、装置及存储介质 | |
CN111238490B (zh) | 视觉定位方法、装置以及电子设备 | |
CN111982133A (zh) | 基于高精地图对车辆进行定位的方法、装置及电子设备 | |
KR102249381B1 (ko) | 3차원 영상 정보를 이용한 모바일 디바이스의 공간 정보 생성 시스템 및 방법 | |
CN108416044B (zh) | 场景缩略图的生成方法、装置、电子设备及存储介质 | |
WO2023283929A1 (zh) | 双目相机外参标定的方法及装置 | |
CN117011739A (zh) | 图像中杆状物识别方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |