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

一种目标深度检测方法和检测系统与流程

2021-10-23 00:33:00 来源:中国专利 TAG:检测系统 深度 检测方法 距离 检测


1.本发明涉及距离检测技术领域,具体涉及一种目标深度检测方法和检测系统。


背景技术:

2.目前,测距的方式包括激光测距、超声波测距和双目深度相机测距等等,但双目深度相机存在设备体积大、功耗高和成本高等缺点。


技术实现要素:

3.本发明的目的在于克服现有技术中的缺点与不足,提供一种目标深度检测方法和检测系统,可以低功耗低成本地检测出目标的深度值。
4.本发明的一个实施例提供一种目标深度检测方法,包括以下步骤:
5.获取摄像头的焦距;
6.通过摄像头获取包含待检测目标的第一图像;
7.获取待检测目标在所述第一图像中的第一像素位置;
8.沿垂直于所述摄像头的镜头朝向的方向水平移动所述摄像头,获取移动距离;
9.通过移动后的摄像头获取包含待检测目标的第二图像;
10.获取待检测目标在所述第二图像中的第二像素位置;
11.根据所述摄像头所在位置模拟出垂直于所述摄像头的镜头朝向的的虚拟平面作为测距平面;
12.分别提取出第一像素位置和第二像素位置对应的第一像素横坐标值和第二像素横坐标值;
13.根据第一像素横坐标值和第二像素横坐标值计算出像素距离值;
14.计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值。
15.相对于现有技术,本发明的目标深度检测方法只采用一个摄像头获取至少2 个图像,再根据所述待检测目标在2个图像中的成像的像素位置计算出待检测目标与所述测距平面的距离,从而得到所述待检测目标的深度值,其设备体积小,且功耗和成本低,可以高效且准确地检测出待检测目标的深度值。
16.进一步,所述根据第一像素横坐标值和第二像素横坐标值计算出像素距离值,具体包括以下步骤:
17.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
18.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
19.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相同,执行以下步骤,
20.d=|x1

x2|;
21.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。可以在所
述第一方向与第二方向相同时计算出所述像素距离值。
22.进一步地,所述根据第一像素横坐标值和第二像素横坐标值计算出像素距离值,具体包括以下步骤:
23.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
24.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
25.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相反,执行以下步骤,
26.d=|x1| |x2|;
27.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。可以在所述第一方向与第二方向相反时计算出所述像素距离值。
28.进一步地,所述根据第一像素横坐标值和第二像素横坐标值计算出像素距离值,具体包括以下步骤:若所述第一像素横坐标值为0,将所述第二像素横坐标值的绝对值确定为像素距离值。可以在所述第一像素横坐标值为0时计算出所述像素距离值。
29.进一步地,所述根据第一像素横坐标值和第二像素横坐标值计算出像素距离值,具体包括以下步骤:若所述第二像素横坐标值为0,将所述第一像素横坐标值的绝对值确定为像素距离值。可以在所述第二像素横坐标值为0时计算出所述像素距离值
30.进一步地,所述计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值,具体包括以下步骤:
31.z=f
×
b/d;
32.z为待检测目标的深度值,f为摄像头的焦距,b为摄像头的移动距离,d为像素距离值。可以计算出待检测目标的深度值。
33.本发明的一个实施例还提供一种目标深度检测系统,包括:摄像头焦距获取模块、第一图像获取模块、第一像素位置获取模块、摄像头移动距离获取模块、第二图像获取模块、第二像素位置获取模块、测距平面模拟模块、像素横坐标值提取模块、像素距离值计算模块、深度值计算模块和目标深度检测模块;
34.所述摄像头焦距获取模块用于获取摄像头的焦距;
35.所述第一图像获取模块用于通过摄像头获取包含待检测目标的第一图像;
36.所述第一像素位置获取模块用于获取待检测目标在所述第一图像中的第一像素位置;
37.所述摄像头移动距离获取模块用于沿垂直于所述摄像头的镜头朝向的方向水平移动所述摄像头,获取移动距离;
38.所述第二图像获取模块用于通过移动后的摄像头获取包含待检测目标的第二图像;
39.所第二像素位置获取模块述用于获取待检测目标在所述第二图像中的第二像素位置;
40.所述测距平面模拟模块用于根据所述摄像头所在位置模拟出垂直于所述摄像头的镜头朝向的的虚拟平面作为测距平面;
41.所述像素横坐标值提取模块用于分别提取出第一像素位置和第二像素位置对应
的第一像素横坐标值和第二像素横坐标值;
42.所述像素距离值计算模块用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值;
43.所述深度值计算模块用于计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值;
44.所述目标深度检测模块用于将所述待检测目标的深度值与预设的深度阈值对比,若所述待检测目标的深度值大于预设的深度阈值,确定与所述待检测目标的深度值对应的目标为缺货目标。
45.相对于现有技术,本发明的目标深度检测系统只采用一个摄像头获取至少2 个图像,再根据所述待检测目标在2个图像中的成像的像素位置计算出待检测目标与所述测距平面的距离,从而得到所述待检测目标的深度值,其设备体积小,且功耗和成本低,可以高效且准确地检测出待检测目标的深度值。
46.进一步地,所述像素距离值计算模块用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值时,执行以下步骤:
47.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
48.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
49.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相同,执行以下步骤,
50.d=|x1

x2|;
51.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。可以在所述第一方向与第二方向相同时计算出所述像素距离值。
52.进一步地,所述像素距离值计算模块用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值时,执行以下步骤:
53.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
54.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
55.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相反,执行以下步骤,
56.d=|x1| |x2|;
57.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。可以在所述第一方向与第二方向相反时计算出所述像素距离值。
58.进一步地,所述深度值计算模块用于计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值时,执行以下步骤:
59.z=f
×
b/d;
60.z为待检测目标的深度值,f为摄像头的焦距,b为摄像头的移动距离,d为像素距离值。可以准确计算出待检测目标的深度值。
61.为了能更清晰的理解本发明,以下将结合附图说明阐述本发明的具体实施方式。
附图说明
62.图1为本发明一个实施例的目标深度检测方法的流程图。
63.图2为本发明一个实施例的目标深度检测方法的应用示例图;
64.图3为本发明一个实施例的目标深度检测系统的模块连接图。
65.1、摄像头焦距获取模块;2、第一图像获取模块;3、第一像素位置获取模块;4、摄像头移动距离获取模块;5、第二图像获取模块;6、第二像素位置获取模块;7、测距平面模拟模块;8、像素横坐标值提取模块;9、像素距离值计算模块;10、深度值计算模块。
具体实施方式
66.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
67.请参阅图1,图1是本发明一个实施例的目标深度检测方法的流程图,该目标深度检测方法包括以下步骤:
68.s1:获取摄像头的焦距;
69.s2:通过摄像头获取包含待检测目标的第一图像;
70.其中,所述步骤s1与所述步骤s2的执行顺序并不限定,即所述步骤s2可以先于所述步骤s1执行。
71.s3:获取待检测目标在所述第一图像中的第一像素位置;
72.在所述步骤s3中,对所述第一图像中的所述待检测目标进行图像识别,若识别失败,判断所述第一图像存在遮挡物,并将其确定为无效图像,在预设的时间后重新执行所述步骤s2,或水平且沿沿垂直于所述摄像头的镜头朝向的方向水平移动所述摄像头,再重新执行所述步骤s2。
73.s4:沿垂直于所述摄像头的镜头朝向的方向水平移动所述摄像头,获取移动距离;
74.可选地,在步骤s4中,设置有垂直于所述摄像头的镜头朝向的移动轨道,所述摄像头可移动地设置在所述移动轨道上,并通过一电机驱动所述摄像头移动,优选地,所述电机为步进电机。而所述移动距离可以是预设的固定移动距离值,也可以是通过检测所述电机转动的实际参数而计算出对应的移动距离值。
75.可选地,在步骤s4中,设置有垂直于所述摄像头的镜头朝向的丝杆,所述丝杆的外表面设有第一螺纹,所述摄像头通过一步进电机可移动地设置在所述丝杆上,所述步进电机设有一转动部,所述转动部套接在所述丝杆上,所述转动部上设有与所述丝杆的第一螺纹对应的第二螺纹,在所述步进电机的转动部转动时,通过所述第二螺纹与第一螺纹的作用,使所述步进电机在所述丝杆上发生位移,从而带动所述摄像头移动。
76.s5:通过移动后的摄像头获取包含待检测目标的第二图像;
77.s6:获取待检测目标在所述第二图像中的第二像素位置;
78.在所述步骤s6中,对所述第二图像中的所述待检测目标进行图像识别,若识别失败,判断所述第二图像存在遮挡物,并将其确定为无效图像,在预设的时间后重新执行所述步骤s5,或沿垂直于所述摄像头的镜头朝向的方向水平移动所述摄像头,再重新执行所述
步骤s5,并重新获取所述摄像头相对于拍摄第一图像时的总的移动距离。
79.s7:根据所述摄像头所在位置模拟出垂直于所述摄像头的镜头朝向的的虚拟平面作为测距平面;
80.其中,所述步骤s7独立于所述步骤s1

s6、s8和s9。
81.s8:分别提取出第一像素位置和第二像素位置对应的第一像素横坐标值和第二像素横坐标值;
82.s9:根据第一像素横坐标值和第二像素横坐标值计算出像素距离值;
83.s10:计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值。
84.在本实施例中,利用所述待检测目标在所述第一图像和第二图像中的参数,结合所述摄像头拍摄所述第一图像和第二图像时的移动距离以及摄像头本身的焦距参数而计算出待检测目标的深度值。相对于现有技术,本发明的目标深度检测方法只采用一个摄像头获取至少2个图像,再根据所述待检测目标在2个图像中的成像的像素位置计算出待检测目标与所述测距平面的距离,从而得到所述待检测目标的深度值,其设备体积小,且功耗和成本低,可以高效且准确地检测出待检测目标的深度值。
85.请参阅图2,其中p点为所述待检测目标的位置,a点为所述待检测目标在所述第一图像中的第一像素位置,b点为所述待检测目标在所述第二图像中的第二像素位置。
86.在一个可行的实施例中,所述步骤s9具体包括以下步骤:
87.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
88.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
89.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相同,执行以下步骤,
90.d=|x1

x2|;
91.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。可以在所述第一方向与第二方向相同时计算出所述像素距离值。
92.在一个可行的实施例中,所述步骤s9具体包括以下步骤:
93.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
94.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
95.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相反,执行以下步骤,
96.d=|x1| |x2|;
97.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。可以在所述第一方向与第二方向相反时计算出所述像素距离值。
98.在一个可行的实施例中,所述步骤s9具体包括以下步骤:若所述第一像素横坐标值为0,将所述第二像素横坐标值的绝对值确定为像素距离值。可以在所述第一像素横坐标
值为0时计算出所述像素距离值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。
99.在一个可行的实施例中,所述步骤s9具体包括以下步骤:若所述第二像素横坐标值为0,将所述第一像素横坐标值的绝对值确定为像素距离值。可以在所述第二像素横坐标值为0时计算出所述像素距离值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。
100.在一个可行的实施例中,所述步骤s10具体包括以下步骤:
101.z=f
×
b/d;
102.z为待检测目标的深度值,f为摄像头的焦距,b为摄像头的移动距离,d为像素距离值。可以计算出待检测目标的深度值。
103.请参阅图3,本发明的一个实施例还提供一种目标深度检测系统,所述目标深度检测系统工作时执行如上所述的目标深度检测方法的步骤,所述目标深度检测系统包括:摄像头焦距获取模块1、第一图像获取模块2、第一像素位置获取模块3、摄像头移动距离获取模块4、第二图像获取模块5、第二像素位置获取模块6、测距平面模拟模块7、像素横坐标值提取模块8、像素距离值计算模块9 和深度值计算模块10;
104.所述摄像头焦距获取模块1用于获取摄像头的焦距;
105.所述第一图像获取模块2用于通过摄像头获取包含待检测目标的第一图像;
106.所述第一像素位置获取模块3用于获取待检测目标在所述第一图像中的第一像素位置;
107.所述摄像头移动距离获取模块4用于沿垂直于所述摄像头的镜头朝向的方向水平移动所述摄像头,获取移动距离;
108.其中,所述摄像头移动距离获取模块4包括水平且平行于所述货架的移动轨道和电机,所述摄像头可移动地设置中所述移动轨道上,并通过电机驱动所述摄像头移动,优选地,所述电机为步进电机。
109.所述第二图像获取模块5用于通过移动后的摄像头获取包含待检测目标的第二图像;
110.所第二像素位置获取模块6述用于获取待检测目标在所述第二图像中的第二像素位置;
111.所述测距平面模拟模块7用于根据所述摄像头所在位置模拟出垂直于所述摄像头的镜头朝向的的虚拟平面作为测距平面;
112.所述像素横坐标值提取模块8用于分别提取出第一像素位置和第二像素位置对应的第一像素横坐标值和第二像素横坐标值;
113.所述像素距离值计算模块9用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值;
114.所述深度值计算模块10用于计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值;
115.在本实施例中,利用所述待检测目标在所述第一图像和第二图像中的参数,结合
所述摄像头拍摄所述第一图像和第二图像时的移动距离以及摄像头本身的焦距参数而计算出待检测目标的深度值。相对于现有技术,本发明的目标深度检测系统只采用一个摄像头获取至少2个图像,再根据所述待检测目标在2个图像中的成像的像素位置计算出待检测目标与所述测距平面的距离,从而得到所述待检测目标的深度值,其设备体积小,且功耗和成本低,可以高效且准确地检测出待检测目标的深度值。
116.在一个可行的实施例中,所述像素距离值计算模块9用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值时,执行以下步骤:
117.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
118.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
119.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相同,执行以下步骤,
120.d=|x1

x2|;
121.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。可以在所述第一方向与第二方向相同时计算出所述像素距离值。
122.在一个可行的实施例中,所述像素距离值计算模块9用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值时,执行以下步骤:
123.获取所述第一像素位置相对于所述第一图像的中线的方向并确定为第一方向;
124.获取所述第二像素位置相对于所述第二图像的中线的方向并确定为第二方向;
125.判断所述第一方向与第二方向是否相同,若所述第一方向与第二方向相反,执行以下步骤,
126.d=|x1| |x2|;
127.其中,d为像素距离值,x1为第一像素横坐标值,x2为第二像素横坐标值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。可以在所述第一方向与第二方向相反时计算出所述像素距离值。
128.在一个可行的实施例中,所述像素距离值计算模块9用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值时,执行以下步骤:若所述第一像素横坐标值为0,将所述第二像素横坐标值的绝对值确定为像素距离值。可以在所述第一像素横坐标值为0时计算出所述像素距离值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。
129.在一个可行的实施例中,所述像素距离值计算模块9用于根据第一像素横坐标值和第二像素横坐标值计算出像素距离值时,执行以下步骤:若所述第二像素横坐标值为0,将所述第一像素横坐标值的绝对值确定为像素距离值。可以在所述第二像素横坐标值为0时计算出所述像素距离值。所述第一像素横坐标值是所述待检测目标在所述第一图像中相对于所述第一图像的中点的横坐标距离,所述第二像素横坐标值是所述待检测目标在所述第二图像中相对于所述第二图像的中点的横坐标距离。
130.在一个可行的实施例中,所述深度值计算模块10用于计算像素距离值和移动距离的比值,利用所述比值和焦距计算出所述待检测目标到所述测距平面的最短距离并确定为待检测目标的深度值时,执行以下步骤:
131.z=f
×
b/d;
132.z为待检测目标的深度值,f为摄像头的焦距,b为摄像头的移动距离,d为像素距离值。可以准确计算出待检测目标的深度值。
133.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜