测距方法和装置与流程



1.本技术属于终端设备技术领域,具体涉及一种测距方法和装置。


背景技术:



2.随着电子设备的功能越来越多,电子设备在生活中越来越不可获取。结合电子设备的拍摄功能,用户还可以使用电子设备进行测距,具体如目标物体与电子设备之间的距离
3.现有测距方法中,通过两个摄像头进行测距的应用越来越广泛。在具体测量时,通过两个摄像头的视差作为依据,对两个摄像头拍摄得到的图像进行大量的匹配计算,才能得到测量结果。由于在测量过程中,外界光照条件和摄像头的视角均会对计算带来影响,因此,现有的测距方法容易出现较大的测量误差,使测量结果的准确性低。


技术实现要素:



4.本技术实施例的目的是提供一种测距方法和装置,能够减少测量误差,提高测量目标物体与电子设备之间的距离的准确性。
5.第一方面,本技术实施例提供了一种测距方法,该方法由电子设备执行,电子设备包括折叠屏幕和摄像头模组,折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,摄像头模组包括第一摄像头和第二摄像头,第一摄像头跟随第一屏幕转动,第二摄像头跟随第二屏幕转动;该方法包括:
6.获取第一图像和n帧第二图像,其中,第一图像为第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,n帧第二图像为第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的,第一预设拍摄参数包括第一摄像头与轴线的第一预设距离和成像焦距,第二预设拍摄参数包括第二摄像头与轴线的第二预设距离和成像焦距;
7.获取第一图像中目标对象的第一成像点到轴线的第一距离和每帧第二图像中目标对象的第二成像点到轴线的第二距离,其中,第一距离为第一成像点沿第一成像平面的延伸方向到轴线的距离,第二距离为第二成像点沿第二成像平面的延伸方向到轴线的距离;
8.根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的目标距离。
9.第二方面,本技术实施例提供了一种测距装置,该装置应用于电子设备,电子设备包括折叠屏幕和摄像头模组,折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,摄像头模组包括第一摄像头和第二摄像头,第一摄像头跟随第一屏幕转动,第二摄像头跟随第二屏幕转动;该装置包括:
10.获取模块,用于获取第一图像和n帧第二图像,其中,第一图像为第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,n帧第二图像为第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的,第一预设拍摄参数包括第一摄像头与轴线的第一预设距离和
成像焦距,第二预设拍摄参数包括第二摄像头与轴线的第二预设距离和成像焦距;
11.获取模块,还用于获取第一图像中目标对象的第一成像点到轴线的第一距离和每帧第二图像中目标对象的第二成像点到轴线的第二距离,其中,第一距离为第一成像点沿第一成像平面的延伸方向到轴线的距离,第二距离为第二成像点沿第二成像平面的延伸方向到轴线的距离;
12.处理模块,用于根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的目标距离。
13.第三方面,本技术实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
14.第四方面,本技术实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
15.第五方面,本技术实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
16.第六方面,本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。
17.在本技术实施例中,电子设备包括折叠屏幕和摄像头模组,折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,摄像头模组包括第一摄像头和第二摄像头。在测距过程中,获取第一图像和n帧第二图像,其中,第一图像由第一摄像头根据第一预设拍摄参数对目标对象拍摄得到,第二图像为第二摄像头根据第二预设拍摄参数对目标对象拍摄得到。接下来,使用第一图像和n帧第二图像中目标对象的成像点到轴线的距离信息,以及预设拍摄参数中包括的第一摄像头与轴线的第一预设距离、第二摄像头与轴线的第二预设距离和成像焦距,进行计算,确定目标对象到电子设备的目标距离。其中,通过引入多帧第二图像进行距离计算,降低了使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,从而减少测量误差,提高测量目标物体与电子设备之间的距离的准确性。
附图说明
18.图1是本技术实施例提供的一种电子设备的结构示意图;
19.图2是本技术实施例提供的一种测距方法的流程示意图;
20.图3是本技术实施例提供的一种目标对象的成像示意图;
21.图4是本技术实施例提供的一种识别框显示示意图;
22.图5是本技术实施例提供的一种预设滑动窗口的示意图;
23.图6是本技术实施例提供的一种目标滑动窗口的示意;
24.图7是本技术实施例提供的一种预设方向的示意;
25.图8是本技术实施例提供的一种像素点的梯度方向示意图;
26.图9是本技术实施例提供的一种第一目标图像的滑动示意图;
27.图10是本技术实施例提供的一种测距拍摄装置的结构示意图;
28.图11是本技术实施例提供的另一种电子设备的结构示意图;
29.图12是本技术实施例提供的又一种电子设备的硬件结构示意图。
具体实施方式
30.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本技术保护的范围。
31.本技术的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
32.随着电子设备的功能越来越多,电子设备在生活中越来越不可获取。结合电子设备的拍摄功能,用户还可以使用电子设备进行测距,具体如目标物体与电子设备之间的距离。
33.现有测距方法中,通过两个摄像头进行测距的应用越来越广泛。在具体测量时,通过两个摄像头的视差作为依据,对两个摄像头拍摄得到的图像进行大量的匹配计算,才能得到测量结果。由于在测量过程中,外界光照条件和摄像头的视角均会对计算带来影响,因此,现有的测距方法容易出现较大的测量误差,使测量结果的准确性低。
34.针对于此,本技术实施例提供一种测距方法和装置,能够减少测量误差,提高测量目标物体与电子设备之间的距离的准确性。下面结合附图,通过具体的实施例及其应用场景对本技术实施例提供的测距方法进行详细地说明。
35.在本技术实施例中,测距方法可以由包括折叠屏和摄像头模组的电子设备执行。其中,电子设备的折叠屏例如可以是向内折叠,或者向外折叠;电子设备的折叠屏的折叠方式还可以是单次折叠,也可以是多次折叠。示例性的,折叠屏在折叠状态下,可以被划分为至少两个屏幕。以折叠屏包括两个屏幕区域为例,折叠屏可以是通过上下折叠得到两个屏幕区域,也可以通过左右折叠得到两个屏幕区域。在又一示例中,两个屏幕区域还可以被设计为外折显示屏或内折显示屏,或者外折显示屏和内折显示屏的结合,在此不做具体限定。
36.摄像头模组包括至少两个摄像头,两个摄像头可以分别位于电子设备不同的折叠部分,具体地,第一摄像头跟随第一屏幕转动,第二摄像头跟随第二屏幕转动。
37.以左右折叠为例,图1是本技术实施例提供的一种电子设备的结构示意图。结合图1所示,折叠屏幕包括可以沿轴线101转动的第一屏幕102和第二屏幕103。摄像头模组可以包括第一摄像头和第二摄像头。示例性的,第一摄像头和第二摄像头可以为后置像头;第一摄像头和第二摄像头也可以均为前置摄像头,在此并不具体限制。其中,第一摄像头跟随第一屏幕102转动,第二摄像头跟随第二屏幕103转动。
38.图2是本技术实施例提供的一种测距方法的流程示意图,测距方法可以应用于包括至少两个屏幕的电子设备,界面显示方法可以包括以下步骤210至步骤230。
39.步骤210,获取第一图像和n帧第二图像。
40.其中,第一图像为第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,n帧
第二图像为第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的,第一预设拍摄参数包括第一摄像头与轴线的第一预设距离和成像焦距,第二预设拍摄参数包括第二摄像头与轴线的第二预设距离和成像焦距。
41.具体地,在第一屏幕中可以显示第一摄像头基于第一预设拍摄参数对目标对象拍摄的预览图像。用户可以通过控制第一摄像头正对目标对象,并通过输入选中需要进行距离测量的目标物体。又例如,用户通过控制第一摄像头正对目标对象后,并将目标对象对应的预览图像在第一屏幕的中心显示,以确定需要进行距离测量的目标对象。可选地,在第一屏幕可以弹出提示框,以用于用户确认需要进行距离测量的目标对象。若当前第一屏幕中显示预览图像不包括用户想要进行距离测量的目标对象,则用户可以通过输入,重新确定目标对象。例如,用户可以调整第一摄像头,或者对第一屏幕中显示的预览图像进行框选,从而确定目标对象。
42.在一些实施例中,第一屏幕和第二屏幕可以分别沿轴线转动。用户可以转动第二屏幕,此时,第二摄像头跟随第二屏幕一起转动。在第二屏幕转动的过程中,第二摄像头可以基于第二预设拍摄参数,并按照预设帧率进行拍摄,得到不同拍摄角度下的多帧图像。由第二摄像头拍摄的每帧图像对应的角度包括摄像头之间的夹角。
43.可选地,摄像头之间的夹角可以是拍摄图像成像面之间的夹角。图3是本技术实施例提供的一种目标对象的成像示意图,参考图3所示,p点为目标对象,可以使用第一摄像头的光心ot的位置表征第一摄像头的位置,可以使用第二摄像头的光心om的位置表征第二摄像头的位置,o点为轴线所在位置,第二屏幕绕轴线转动,带动第二摄像头的位置发生改变,第一屏幕与第二屏幕之间的夹角θ作为摄像头之间的夹角。
44.在获得由第一摄像头拍摄的第一图像,以及获得由第二摄像头拍摄的n帧第二图像之后,可以执行步骤220。
45.步骤220,获取第一图像中目标对象的第一成像点到轴线的第一距离和每帧第二图像中目标对象的第二成像点到轴线的第二距离。
46.其中,第一距离为第一成像点沿第一成像平面的延伸方向到轴线的距离,第二距离为第二成像点沿第二成像平面的延伸方向到轴线的距离。
47.示例性的,结合图3所示,在第一图像中第一成像点为pot与成像面的交点ct,第二成像点中第一成像点为pom与成像面的交点cm。第一成像点沿第一成像平面的延伸方向到轴线的距离为ctt,即第一成像点到轴线的第一距离,第二成像点沿第二成像平面的延伸方向到轴线的距离为cmt,即第二成像点到轴线的第二距离。
48.步骤230,根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的目标距离。
49.在一些实施例中,第一摄像头和第二摄像头均位于电子设备的预设位置,由此,第一摄像头与轴线的第一预设距离、第二摄像头与轴线的第二预设距离是已知。由于第一摄像头和第二摄像头分别根据第一预设拍摄参数和第二预设拍摄参数进行图像拍摄,因此,第一图像和第二图像的成像焦距为已知。为了简化计算过程,第一摄像头和第二摄像头可以使用相同的成像焦距进行拍摄。在计算目标距离的过程中,可以结合目标对象、电子设备、第一成像点和第二成像点之间内的位置关系。
50.根据本技术实施例,在计算过程中,使用第一图像和n帧第二图像中目标对象的成
像点到轴线的距离信息,以及预设拍摄参数中包括的第一摄像头与轴线的第一预设距离、第二摄像头与轴线的第二预设距离和成像焦距,进行计算,确定目标对象到电子设备的目标距离。其中,通过引入多帧第二图像进行距离计算,降低了使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,从而减少测量误差,提高测量目标物体与电子设备之间的距离的准确性。
51.在一些实施例中,计算目标对象与电子设备之间的目标距离,可以包括:根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的n个初始距离;根据预设残差函数和所述n个初始距离,确定所述目标距离。
52.作为一个具体示例,结合图3所示,第一预设距离为o点到ot点的距离,表示为bt,第二预设距离为o点到om点的距离,表示为bm,第一图像和第二图像的成像焦距为f,其中,目标对象与电子设备的距离为表示为o点到p点的距离,标识为z。在第一图像中,at为第一图像的图像最左侧,根据at的位置信息与第一成像点ct的位置信息,可以得到第一成像点到第一图像最左侧的距离st,进而确定第一成像点ct到轴线的距离。在第二图像中,am为第二图像的图像最左侧,根据am的位置信息与第二成像点cm的位置信息,可以得到第人成像点到第二图像最左侧的距离sm,其中,sm在水平面上的投影距离为s
′m=sm·
cos(θ)。其中,目标对象与电子设备的距离z的求取公式(1),公式(1)可以表示为:
[0053][0054]
第一图像与一帧第二图像,通过公式(1)可以计算得到一个初始距离z。
[0055]
为了减少计算误差,可以根据预设残差函数和n个初始距离,确定所述目标距离。在一些实施例中,计算目标对象与电子设备之间的距离,导致误差的原因可能是,第一成像点和第二成像点的所使用的位置信息可以能与实际成像位置存在误差;第一摄像头与第二摄像头之间的夹角为0时,第二图像能够目标对象的成像点与第二图像最左侧的距离存在误差。上述误差均可以归结到sm。
[0056]
示例性的,结合第二屏幕旋转过程中,当第一摄像头与第二摄像头之间的夹角θ不同时,在第二图像中目标对象的成像点不同,即不同第二图像的第二成像点cm的位置信息不同,由此,第二成像点到第二图像最左侧的距离不同,因此,可以得到多个不同的sm,以及sm在水平面上的投影距离为s
′m。相应的,在有n帧第二图像的情况下,可以根据公式(1)可以求得n个z。
[0057]
为了提高目标距离的准确性,对于n个初始距离z,可以到一组(a1,a2,
…an
),其中,n=n,使得目标距离与初始距离之间的残差最小,即其中,n为第二图像的数量,zi为根据第i张第二图像求得的初始距离,为目标距离。
[0058]
示例性的,目标距离可以表示为可以表示为为目标对象的成像点到第二图像最左侧距离。
[0059]
可选地,n个初始距离z之间是可以符合独立同分布,可以假设误差服从高斯分布
其中ε,σ为高斯分布的参数。因此,最小化残差可以转化为最大化所有测量的联合概率,即根据公式(2)求目标公式(2)可以表示为:
[0060][0061]
示例性的,求解公式(2)可以采用高斯-牛顿法或者梯度下降法求解。作为一个具体地示例,采用高斯-牛顿法求解时,可以函数j表示函数g的一阶导数,作为自变量,h=j
t
j,b=-j
t
g。在求解过程中,随机初始化得到s0,并进行迭代运算,对于第k次迭代,计算j(s)和h(s),得到增量δsk=h-1
b。迭代计算的停止条件,例如,设定预设计算阈值,若δsk小于该阈值,则认为δsk足够小,可以停止计算,否则更新s
k+1
=sk+δsk;迭代计算的停止条件,又例如,设置预设迭代次数,当迭代次数k达到预设迭代次数时,停止计算。将最后计算得到的sk代入中,从而得到目标距离
[0062]
根据本技术实施例,在引入多帧第二图像进行距离计算时,通过使用最小二乘进行距离计算,从而可以降低使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,提高测量目标物体与电子设备之间的距离的准确性。
[0063]
在一些实施例中,为了降低计算量,涉及上述步骤210中n帧第二图像可以为筛选后的第二图像,示例性的,获取第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的n帧第二图像,具体可以包括步骤211至步骤214:
[0064]
步骤211,获取第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的w帧第三图像。
[0065]
其中,w为大于或等于n的正整数。
[0066]
具体地,在第二屏幕转动的过程中,第二摄像头可以按照预设帧率,基于第二预设拍摄参数对目标对象进行拍摄,得到不同拍摄角度下的多帧图像,即,得到w帧第三图像。
[0067]
步骤212,在每帧第三图像中,根据预设滑动窗口和预设滑动规则,依次计算每个位置的预设滑动窗口对应图像与第一目标图像的相关度,得到每个预设滑动窗口对应的相关度。
[0068]
其中,第一目标图像为第一图像中目标对象所在区域对应的图像。
[0069]
示例性的,在确定目标对象后,可以自动对第一图像中目标对象所在区域对应的图像进行框选,并将框选的图像作为第一目标图像。可选地,在框选过程中,可以显示一个识别框,可以方便用户了解目标对象。其中,识别框可以的形状可以方形、圆形、椭圆形,又或者其他预设形状,在此并不具体限制。图4是本技术实施例提供的一种识别框显示示意图,结合图4所示,在第一图像401中显示识别框402,识别框402内部包括目标对象403。
[0070]
作为一个具体的实例,电子设备还可以接收对所述第一图像的第一输入;响应于第一输入,确定所述第一图像中的第一目标图像。具体地,第一输入为选取目标对象的输
入。用户可以通过第一屏幕预览第一图像,在第一图像包括目标对象的情况下,用户还可以直接通过手动输入选取目标对象。例如,在第一屏幕中显示识别框,用户可以调整识别框的大小和位置,实现对目标对象的选取,其中,第一图像中调整后的识别框所框选的图像作为第一目标图像。
[0071]
根据本技术实施例,用户可以根据需求选择目标对象,能够提高电子设备的测距功能的便利性。
[0072]
在一些实施例中,预设滑动窗口的大小可以为预设大小,也可以根据第一目标图像的大小确定。
[0073]
示例性的,以第一目标图像为矩形,第一目标图像的原始长为a0,原始宽b0为例,获取原始长宽的α倍,得到预设窗口的长和宽,其中,预设滑动窗口的长可以表示为a,宽可以表示为b。
[0074]
在一些实施例中,预设滑动规则包括滑动窗口的滑动方向和滑动步长。示例性的,图5是本技术实施例提供的一种预设滑动窗口的示意图。结合图5所示,预设滑动窗口沿第三图像的长度方向的滑动步长为a/2,当滑动到第一图像最左侧后,向下移动的步长为b/2,并继续以a/2步长,沿第三图像的长度方向滑动。
[0075]
对应每帧第三图像,依次计算每个位置的预设滑动窗口对应图像与第一目标图像的相关度,得到每个预设滑动窗口对应的相关度。示例性的,相关度计算公式如式(3)所示。
[0076][0077]
其中,s
x,y
(i,j)为预设滑动窗口对应图像中每个像素点的灰度值,为为预设滑动窗口对应图像的灰度均值,g(i,j)g为第一目标图像中每个像素点的灰度,为第一目标图像灰度均值。ρ(x,y)为第x行,第y列的预设滑动窗口对应的相关度。
[0078]
根据本技术实施例的上述步骤,可以得到每帧第三图像中每个预设滑动窗口对应的相关度。
[0079]
步骤213,统计每帧第三图像中相互重叠的目标滑动窗口的第一数量,其中,目标滑动窗口的相关度大于第一阈值。
[0080]
具体地,第一阈值用于判断预设滑动窗口对应图像与第一目标图像的相关性。当相关度越高,预设滑动窗口对应图像与第一目标图像的相关性越大。示例性的,第一阈值预设为β,将每帧第三图像中ρ》β的滑动窗口作为目标滑动窗口。
[0081]
可选地,在统计相互重叠的目标滑动窗口之前,还可以预先设置第三阈值。示例性的,第三阈值预设为δ,若第三图像中的目标滑动窗口的第一数量大于第三阈值δ,则认为该第三图像中包括目标对象,保留该第三图像。若第三图像中的目标滑动窗口的第一数量小于或等于第三阈值δ,则认为该第三图像中不包括目标对象,可以直接筛除该第三图像,不再对该第三图像进行计算或处理。
[0082]
示例性的,图6是本技术实施例提供的一种目标滑动窗口的示意图,结合图6(a)所示,其中,包括独立的滑动窗口601和多个相互重叠的目标滑动窗口602。统计每帧第三图像中相互重叠的目标滑动窗口的数量,得到第一数量。
[0083]
步骤214,从w帧第三图像中,获取第一数量大于或等于第二阈值的图像,得到n帧第二图像。
[0084]
示例性的,第二阈值预设为thr
region
,当第三图像中相互重叠的目标滑动窗口的第一数量大于或等于第二阈值thr
region
时,保留该第三图像;当第三图像中相互重叠的目标滑动窗口的第一数量小于第二阈值thr
region
时,可以直接筛除该第三图像,不再对该第三图像进行计算或处理。由此,可以快速从w帧第三图像筛选得到n帧第二图像。
[0085]
根据本技术实施例,通过对第二摄像头拍摄的第三图像进行筛选,得到n帧第二图像,从而可以提高获取目标距离的可靠性,减少目标距离与真实距离的计算误差。
[0086]
在一些实施例中,涉及上述步骤220,获取目标对象的第一成像点到轴线的第一距离和每帧第二图像中目标对象的第二成像点到轴线的第二距离,可以参考步骤221至步骤223。
[0087]
步骤221,获取第一目标图像的中心点的位置信息,得到目标对象的第一成像点的第一位置信息;以及,获取第一图像中目标对象的特征中心点的n个第二位置信息和第二图像中目标对象的特征中心点的n个第三位置信息。
[0088]
其中,第一图像中目标对象的特征中心点与第二图像中目标对象的特征中心点一一对应。
[0089]
步骤222,根据第一位置信息与第二位置信息,确定第一图像中目标对象的特征中心点到第一成像点的第一位移。
[0090]
步骤223,根据第一位移和每帧第二图像中目标对象的特征点的第三位置信息,确定每帧第二图像中第二成像点的第二位置信息;
[0091]
步骤224,根据第一位置信息,确定目标对象的第一成像点到轴线的第一距离;以及,根据每帧第二图像中第二成像点的第二位置信息,确定每帧第二图像中第二成像点到轴线的第二距离。
[0092]
涉及上述步骤221,示例性的,第一图像中目标对象所在区域对应的图像为第一目标图像,如图4所示识别框402对应的图像作为第一目标图像。从而可以快速确定中心点的位置信息,并将第一目标图像的中心点的位置信息作为目标对象的第一成像点的第一位置信息ct。
[0093]
在一些实施例中,可以根据预设特征匹配算法,将第一图像与每张第二图像进行特征匹配,每次特征匹配计算可以得到一个匹配信息,在匹配信息中包括多个特征点匹配对,其中,每个特征点匹配对包括位于第一图像中的特征点和位于第二图像中的特征点。示例性的,对于n帧第二图像,第一图像与每张第二图像进行特征匹配,得到n个匹配信息,每个匹配信息包括多个特征点匹配对。
[0094]
根据n个匹配信息分别计算目标对象在第一图像中的特征中心点和目标对象在第二图像中的特征中心点。
[0095]
以n个匹配信息的其中一个匹配信息为例,获取该匹配信息中位于第一图像的每个特征点的位置信息,得到多个位置信息;对多个位置信息求均值,得到第二位置信息并将该第二位置信息对应点作为目标对应在第一图像的特征中心点。基于相同的计算方法,获取该匹配信息中位于第二图像的每个特征点的位置信息,得到多个位置信息;对多个
位置信息求均值,得到第三位置信息并将该第三位置信息对应的点作为目标对应在第二图像的特征中心点。
[0096]
根据上述步骤,基于n个特征点匹配对匹配信息,可以得到第一图像中目标对象的特征中心点的n个第二位置信息和第二图像中目标对象的特征中心点的n个第三位置信息
[0097]
涉及上述步骤222,对应每帧第二图像,根据第一位置信息与第二位置信息,确定第一图像中目标对象的特征中心点到第一成像点的第一位移,例如,可以是表示从特征中心点到成像中心点需要移动的距离c
t

[0098]
接下来,在步骤223中,结合第一位移可以确定第二图像中第二成像点的第二位置信息cm,示例性的,在步骤224中,根据第一位置信息,确定目标对象的第一成像点到轴线的第一距离;以及,根据每帧第二图像中第二成像点的第二位置信息,确定每帧第二图像中第二成像点到轴线的第二距离。
[0099]
根据本技术实施例,可以降低使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,提高测量目标物体与电子设备之间的距离的准确性。
[0100]
在一些实施例中,为了提高确定特征中心点的准确性,并提高获取特征中心点的速度,还可以从提取每帧第二图像中目标对象所在区域的图像,即第二目标图像与第一目标图像特征匹配,确定特征点匹配对。由此,获取第一图像中目标对象的特征中心点的n个第二位置信息和第二图像中目标对象的特征中心点的n个第三位置信息,具体参考步骤301至步骤303:
[0101]
步骤301,获取每帧第二图像中目标对象所在区域对应的图像,得到每帧第二图像对应的第二目标图像。
[0102]
步骤302,对第一目标图像分别与每个第二目标图像进行特征匹配处理,得到n个匹配信息。
[0103]
每个匹配信息包括多个特征点匹配对,每个特征点匹配对包括位于第一目标图像中的第一特征点和位于第二目标图像中的第二特征点,每个特征点匹配对的相似度大于第三阈值。
[0104]
步骤303,对应每个匹配信息,根据第一目标图像中多个第一特征点的位置信息,确定第一图像中目标对象的特征中心点的第二位置信息;以及,根据第二目标图像中多个第二特征点的位置信息,确定每帧第二图像中目标对象的特征中心点的第三位置信息。
[0105]
具体地,涉及上述步骤301,为了确定第二图像中目标对象所在区域对应的图像的准确性,获取每个第二图像中目标对象所在区域对应的图像为第二目标图像,包括:获取每帧第二图像中相互重叠的目标滑动窗口;根据相互重叠的目标滑动窗口中每个目标滑动窗口的位置信息,确定每帧第二图像对应的第二目标图像。
[0106]
在一个示例中,根据相互重叠的目标滑动窗口中每个目标滑动窗口的位置信息,可以直接将如图6所示的相互重叠的目标滑动窗口602的覆盖区域,作为第二目标图像。在又一示例中,通过获取每帧第二图像中相互重叠的目标滑动窗口中每个目标滑动窗口的位
置信息,例如,每个目标检测框的所有角点,得到坐标集合{x},{y},从坐标集和中确定左上、左下、右上、右下坐标分别为:(min{x},min{y}),(min{x},max{y}),(max{x},min{y}),(max{x},max{y}),坐标内的图像作为第二目标图像,如图6所示。
[0107]
根据本技术实施例,通过结合目标滑动窗口确定第二目标图像,整个计算过程简单,有利于提高确定特征中心点的准确性,并提高获取特征中心点的速度。
[0108]
步骤302,对第一目标图像分别与每个第二目标图像进行特征匹配处理,得到n个匹配信息。
[0109]
涉及上述步骤302,特征匹配处理具体可以包括先获取第一目标图像和第二目标图像中的像素点的特征向量表达形式,再基于像素点的特征向量表达形式,确定第一目标图像和第二目标图像的匹配信息。
[0110]
示例性的,获取第一目标图像和每帧第二目标图像中的像素点的特征向量表达形式的计算过程相同,下面以第一目标图像为例,对获取像素点的特征向量表达形式进行介绍。
[0111]
可选地,利用索伯算子(sobel)计算第一目标图像中每个像素点的水平梯度g
x
和垂直梯度gy。对应每个像素点,取水平梯度g
x
和垂直梯度gy中绝对值最大的值对应的梯度作为该像素点的梯度。若该梯度小于预设梯度值thr
gradient
,则该像素点被舍弃。对于保留下来的像素点,根据水平梯度g
x
和垂直梯度gy,计算保留的像素点的梯度方向其中,此时,像素点的梯度方向可能是0
°
到360
°
内的任一一个方向,为了进一步降低计算量,可以将像素点的梯度方向量化到预设数量的预设方向,从而得到像素点的特征向量表达形式,其中,预设数量的预设方向例如,图7所示的8个方向。
[0112]
可选地,在进行量化之前可以对第一目标图像中像素点的梯度方向进行筛选和/或扩展处理。
[0113]
可选地,为了减少噪音干扰,可以对像素点的梯度方向进行筛选。示例性的,每5
×
5的像素点范围内对像素点的梯度方向进行统计,确定5
×
5的像素点范围内最多的方向,作为该5
×
5的像素点范围内像素点的梯度方向。但如果5
×
5的像素点范围内最多的方向出现的次数小于预设次数,则该范围内的像素点,不再对该范围内的像素点进行计算或处理。具体例如,若在一个5
×
5的像素点范围内,包括有15个向上的方向,6个右下方的方向,4个向左的方向,则将5
×
5的像素点范围内的像素点的梯度方向均取向上的方向。
[0114]
可选地,为降低后续匹配计算时拍摄视角不同所带来的匹配误差,还可以对筛选后的梯度方进行扩展处理。示例性的,对应每个像素点,确定其邻域3
×
3范围内的每个像素点的梯度方向,将其邻域3
×
3范围内的每个像素点的梯度方向与该像素点的梯度方向跌跤。结合图8所示的像素点的梯度方向示意图,其中,图8(a)为未扩展的像素点的梯度方向,以图8(a)中区域801内的8个像素点为例进行扩展,得到图8(b)为扩展后的像素点的梯度方向。结合图8所示,区域801内
“→”
扩展到其邻域3
×
3范围内每个像素点,区域801内
“↑”
其邻域3
×
3范围内扩展后,区域801内第二行第二列、第二行第三列、第三行第二列,以及第三行第三列与
“→”
叠加。
[0115]
以图7所示的8个方向为例,以水平向左为第一个,顺时针旋转,计算每个向量与像素点的梯度方向的相似度s。示例性的,第i个像素的相似度计算公式如公式(4)所示。
[0116][0117]
其中i={1,2,3

8},m为8个梯度方向的合集,m的向量形式可以表示为m={(-1,0),(-1,1),(0,1),(1,1),(1,0),(1,-1),(0,-1),(-1,-1)};l为该像素点的梯度方向集合,l为其中一个梯度方向。
[0118]
以像素点梯度方向l包括{



}为例,l的向量形式可以表示为l={(0,-1),(1,0)}。
[0119]
当i=1时,计算l与向量的m1={-1,0}相似度,为:
[0120][0121]
当i=4时,当i=1时,计算l与向量m4={1,1}相似度,为:
[0122][0123]
基于相同的计算过程,可以得到该像素点的特征向量表达形式为:
[0124][0125]
根据上述实施例,可以得到第一目标图像和每帧第二目标图像中像素的特征向量表达形式。
[0126]
接下来,可以基于像素点的特征向量表达形式,确定第一目标图像和第二目标图像的匹配信息。
[0127]
在匹配过程中,结合图9所示的第一目标图像的滑动示意图,第一目标图像901可以根据预设的滑动规则在第二目标图像902内进行滑动,其中,滑动步长可以为min(d,max(4,d/10)),d为第一目标图像的宽,为了提高计算速度和计算精度,可以以中心像素点3
×
3为范围作为计算区域,中心像素如图9所示的像素点903,对应计算区域904。
[0128]
逐像素计算第一目标图像与第二目标图像的特征向量余弦相似度,取均值作为该像素最终的值,示例性的,计算公式如公式(5)所示。
[0129][0130]
其中,n为计算区域中像素点的个数,si为待匹配图像像素的特征向量,ti为目标图像像素的特征向量,||
·
||为二范数。
[0131]
如果ri大于预设阈值thr
feature
,则该点为特征点。并记录该特征点在第一目标图像上的位置p
t
和第一目标图像上的位置pm。
[0132]
由此,第一目标图像与一个第二目标图像进行匹配计算后,可以得到一个匹配信息,在匹配信息中包括在第一目标图像的特征点集pt和在第二目标图像的特征点集pm,其中,pt为特征点在第一目标图像的上的位置集合,pm为特征点在第二目标图像的上的位置集合。可选地,如果扫描完成后,特征点匹配对的数量小于预设阈值thr
points
,则可以不对该第二目标图像继续进行计算。根据上述实施例,可以得到n个匹配信息。
[0133]
涉及上述步骤303,示例性的,对应每个匹配信息,对第一目标图像中多个第一特征点的位置信息的均值,得到第一图像中目标对象的特征中心点的第二位置信息对第二目标图像中多个第二特征点的位置信息的均值,得到第二图像中目标对象的特征中心点的第三位置信息
[0134]
根据本技术是实施例,通过分层特征点快速计算,能够降低使用两个摄像头进行距离测量时计算复杂度和相机标定的需求,提高距离测量的应用场景。
[0135]
本技术实施例提供的测距方法,执行主体可以为测距装置。本技术实施例中以测距装置执行测距的方法为例,说明本技术实施例提供的测距的装置。
[0136]
图10是本技术实施例提供的一种测距装置的结构示意图,该装置应用于电子设备,所述电子设备包括折叠屏幕和摄像头模组,所述折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,所述摄像头模组包括第一摄像头和第二摄像头,所述第一摄像头跟随所述第一屏幕转动,所述第二摄像头跟随所述第二屏幕转动。结合图10所示,测距装置包括获取模块1010和处理模块1020。
[0137]
在本技术实施例中,该程序测距装置可以为电子设备的部件,该部件例如可以是电子设备的集成电路、芯片、控制装置、输入单元或者显示单元等,本技术在此不做具体限定。
[0138]
在本技术实施例中,获取模块1010,用于获取第一图像和n帧第二图像,其中,所述第一图像为所述第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,所述n帧第二图像为所述第二摄像头根据第二预设拍摄参数对所述目标对象拍摄得到的,所述第一预设拍摄参数包括所述第一摄像头与所述轴线的第一预设距离和成像焦距,所述第二预设拍摄参数包括所述第二摄像头与所述轴线的第二预设距离和所述成像焦距;
[0139]
获取模块1010,还用于获取所述第一图像中所述目标对象的第一成像点到所述轴线的第一距离和每帧所述第二图像中所述目标对象的第二成像点到所述轴线的第二距离,其中,所述第一距离为所述第一成像点沿第一成像平面的延伸方向到所述轴线的距离,所述第二距离为所述第二成像点沿第二成像平面的延伸方向到所述轴线的距离;
[0140]
处理模块1020,用于根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的目标距离。
[0141]
根据本技术是实施例,通过使用第一图像和n帧第二图像中目标对象的成像点到轴线的距离信息,以及预设拍摄参数中包括的第一摄像头与轴线的第一预设距离、第二摄像头与轴线的第二预设距离和成像焦距,进行计算,确定目标对象到电子设备的目标距离。其中,通过引入多帧第二图像进行距离计算,降低了使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,从而减少测量误差,提高测量目标物体与电子设备之间的距离的准确性。
[0142]
在一些实施例中,处理模块1020,还用于根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的n个初始距离;
[0143]
处理模块1020,还用于根据预设残差函数和n个初始距离,确定目标距离。
[0144]
根据本技术实施例,在引入多帧第二图像进行距离计算时,通过使用最小二乘进行距离计算,从而可以降低使用两个摄像头进行距离测量时对计算复杂度和相机标定的需
求,提高测量目标物体与电子设备之间的距离的准确性。
[0145]
在一些实施例中,获取模块1010,还用于获取第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的w帧第三图像,其中,w为大于或等于n的正整数;
[0146]
处理模块1020,还用于在每帧第三图像中,根据预设滑动窗口和预设滑动规则,依次计算每个位置的预设滑动窗口对应图像与第一目标图像的相关度,得到每个预设滑动窗口对应的相关度,其中,第一目标图像为第一图像中目标对象所在区域对应的图像;
[0147]
处理模块1020,还用于统计每帧第三图像中相互重叠的目标滑动窗口的第一数量,其中,目标滑动窗口的相关度大于第一阈值;
[0148]
获取模块1010,还用于从w帧第三图像中,获取第一数量大于或等于第二阈值的图像,得到n帧第二图像。
[0149]
根据本技术实施例,通过对第二摄像头拍摄的第三图像进行筛选,得到n帧第二图像,从而可以提高获取目标距离的可靠性,减少目标距离与真实距离的计算误差。
[0150]
在一些实施例中,接收模块,用于接收对第一图像的第一输入;
[0151]
处理模块1020,还用于响应于第一输入,确定第一图像中的第一目标图像。
[0152]
根据本技术实施例,用户可以根据需求选择目标对象,能够提高电子设备的测距功能的便利性。
[0153]
在一些实施例中,获取模块1010,还用于获取第一目标图像的中心点的位置信息,得到目标对象的第一成像点的第一位置信息;
[0154]
获取模块1010,还用于获取第一图像中目标对象的特征中心点的n个第二位置信息和第二图像中目标对象的特征中心点的n个第三位置信息,其中,第一图像中目标对象的特征中心点与第二图像中目标对象的特征中心点一一对应;
[0155]
处理模块1020,还用于根据第一位置信息与第二位置信息,确定第一图像中目标对象的特征中心点到第一成像点的第一位移;
[0156]
处理模块1020,还用于根据第一位移和每帧第二图像中目标对象的特征点的第三位置信息,确定每帧第二图像中第二成像点的第二位置信息;
[0157]
处理模块1020,还用于根据第一位置信息,确定目标对象的第一成像点到轴线的第一距离;
[0158]
处理模块1020,还用于根据每帧第二图像中第二成像点的第二位置信息,确定每帧第二图像中第二成像点到轴线的第二距离。
[0159]
根据本技术实施例,可以降低使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,提高测量目标物体与电子设备之间的距离的准确性。
[0160]
在一些实施例中,获取模块1010,还用于获取每帧第二图像中目标对象所在区域对应的图像,得到每帧第二图像对应的第二目标图像;
[0161]
获取模块1010,还用于对第一目标图像分别与每个第二目标图像进行特征匹配处理,得到n个匹配信息,每个匹配信息包括多个特征点匹配对,每个特征点匹配对包括位于第一目标图像中的第一特征点和位于第二目标图像中的第二特征点,每个特征点匹配对的相似度大于第三阈值;
[0162]
处理模块1020,还用于对应每个匹配信息,根据第一目标图像中多个第一特征点的位置信息,确定第一图像中目标对象的特征中心点的第二位置信息;以及,根据第二目标
图像中多个第二特征点的位置信息,确定每帧第二图像中目标对象的特征中心点的第三位置信息。
[0163]
根据本技术是实施例,通过分层特征点快速计算,能够降低使用两个摄像头进行距离测量时计算复杂度和相机标定的需求,提高距离测量的应用场景。
[0164]
在一些实施例中,获取模块1010,还用于获取每帧第二图像中相互重叠的目标滑动窗口;
[0165]
处理模块1020,还用于根据相互重叠的目标滑动窗口中每个目标滑动窗口的位置信息,确定每帧第二图像对应的第二目标图像。
[0166]
根据本技术实施例,通过结合目标滑动窗口确定第二目标图像,整个计算过程简单,有利于提高确定特征中心点的准确性,并提高获取特征中心点的速度。
[0167]
本技术实施例中的测距装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(mobile internet device,mid)、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,还可以为服务器、网络附属存储器(network attached storage,nas)、个人计算机(personal computer,pc)、电视机(television,tv)、柜员机或者自助机等,本技术实施例不作具体限定。
[0168]
本技术实施例中的测距装置可以为具有操作系统的装置。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本技术实施例不作具体限定。
[0169]
本技术实施例提供的测距装置能够实现本技术测距方法的实施例实现的各个过程,为避免重复,这里不再赘述。
[0170]
可选地,如图11所示,本技术实施例还提供另一种电子设备1100,包括处理器1101和存储器1102,存储器1102上存储有可在所述处理器1101上运行的程序或指令,该程序或指令被处理器1101执行时实现上述测距方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0171]
需要说明的是,本技术实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
[0172]
图12为实现本技术实施例的又一种电子设备的硬件结构示意图。
[0173]
该电子设备1200包括但不限于:射频单元1201、网络模块1202、音频输出单元1203、输入单元1204、传感器1205、显示单元1206、用户输入单元1207、接口单元1208、存储器1209、以及处理器1210等部件。
[0174]
本领域技术人员可以理解,电子设备1200还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器1210逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图12中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
[0175]
处理器1210,用于获取第一图像和n帧第二图像,其中,第一图像为第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,n帧第二图像为第二摄像头根据第二预设拍摄参数对目标对象拍摄得到的,第一预设拍摄参数包括第一摄像头与轴线的第一预设距离和成像焦距,第二预设拍摄参数包括第二摄像头与轴线的第二预设距离和成像焦距;
[0176]
处理器1210,还用于获取第一图像中目标对象的第一成像点到轴线的第一距离和每帧第二图像中目标对象的第二成像点到轴线的第二距离,其中,第一距离为第一成像点沿第一成像平面的延伸方向到轴线的距离,第二距离为第二成像点沿第二成像平面的延伸方向到轴线的距离;
[0177]
处理器1210,用于根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的目标距离。
[0178]
根据本技术是实施例,通过使用第一图像和n帧第二图像中目标对象的成像点到轴线的距离信息,以及预设拍摄参数中包括的第一摄像头与轴线的第一预设距离、第二摄像头与轴线的第二预设距离和成像焦距,进行计算,确定目标对象到电子设备的目标距离。其中,通过引入多帧第二图像进行距离计算,降低了使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,从而减少测量误差,提高测量目标物体与电子设备之间的距离的准确性。
[0179]
在一些实施例中,处理器1210,还用于根据成像焦距、第一预设距离、第二预设距离、第一距离、n个第二距离,确定目标对象到电子设备的n个初始距离;
[0180]
处理器1210,还用于根据预设残差函数和n个初始距离,确定目标距离。
[0181]
根据本技术实施例,在引入多帧第二图像进行距离计算时,通过使用最小二乘进行距离计算,从而可以降低使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,提高测量目标物体与电子设备之间的距离的准确性。
[0182]
在一些实施例中,处理器1210,还用于获取第二摄像头根据预设拍摄参数对目标对象拍摄得到的w帧第三图像,其中,w为大于或等于n的正整数;
[0183]
处理器1210,还用于在每帧第三图像中,根据预设滑动窗口和预设滑动规则,依次计算每个位置的预设滑动窗口对应图像与第一目标图像的相关度,得到每个预设滑动窗口对应的相关度,其中,第一目标图像为第一图像中目标对象所在区域对应的图像;
[0184]
处理器1210,还用于统计每帧第三图像中相互重叠的目标滑动窗口的第一数量,其中,目标滑动窗口的相关度大于第一阈值;
[0185]
处理器1210,还用于从w帧第三图像中,获取第一数量大于或等于第二阈值的图像,得到n帧第二图像。
[0186]
根据本技术实施例,通过对第二摄像头拍摄的第三图像进行筛选,得到n帧第二图像,从而可以提高获取目标距离的可靠性,减少目标距离与真实距离的计算误差。
[0187]
在一些实施例中,输入单元1204,用于接收对第一图像的第一输入;
[0188]
处理器1210,还用于响应于第一输入,确定第一图像中的第一目标图像。
[0189]
根据本技术实施例,用户可以根据需求选择目标对象,能够提高电子设备的测距功能的便利性。
[0190]
在一些实施例中,处理器1210,还用于获取第一目标图像的中心点的位置信息,得到目标对象的第一成像点的第一位置信息;
[0191]
处理器1210,还用于获取第一图像中目标对象的特征中心点的n个第二位置信息和第二图像中目标对象的特征中心点的n个第三位置信息,其中,第一图像中目标对象的特征中心点与第二图像中目标对象的特征中心点一一对应;
[0192]
处理器1210,还用于根据第一位置信息与第二位置信息,确定第一图像中目标对象的特征中心点到第一成像点的第一位移;
[0193]
处理器1210,还用于根据第一位移和每帧第二图像中目标对象的特征点的第三位置信息,确定每帧第二图像中第二成像点的第二位置信息;
[0194]
处理器1210,还用于根据第一位置信息,确定目标对象的第一成像点到轴线的第一距离;
[0195]
处理器1210,还用于根据每帧第二图像中第二成像点的第二位置信息,确定每帧第二图像中第二成像点到轴线的第二距离。
[0196]
根据本技术实施例,可以降低使用两个摄像头进行距离测量时对计算复杂度和相机标定的需求,提高测量目标物体与电子设备之间的距离的准确性。
[0197]
在一些实施例中,处理器1210,还用于获取每帧第二图像中目标对象所在区域对应的图像,得到每帧第二图像对应的第二目标图像;
[0198]
处理器1210,还用于对第一目标图像分别与每个第二目标图像进行特征匹配处理,得到n个匹配信息,每个匹配信息包括多个特征点匹配对,每个特征点匹配对包括位于第一目标图像中的第一特征点和位于第二目标图像中的第二特征点,每个特征点匹配对的相似度大于第三阈值;
[0199]
处理器1210,还用于对应每个匹配信息,根据第一目标图像中多个第一特征点的位置信息,确定第一图像中目标对象的特征中心点的第二位置信息;以及,根据第二目标图像中多个第二特征点的位置信息,确定每帧第二图像中目标对象的特征中心点的第三位置信息。
[0200]
根据本技术是实施例,通过分层特征点快速计算,能够降低使用两个摄像头进行距离测量时计算复杂度和相机标定的需求,提高距离测量的应用场景。
[0201]
在一些实施例中,处理器1210,还用于获取每帧第二图像中相互重叠的目标滑动窗口;
[0202]
处理器1210,还用于根据相互重叠的目标滑动窗口中每个目标滑动窗口的位置信息,确定每帧第二图像对应的第二目标图像。
[0203]
根据本技术实施例,通过结合目标滑动窗口确定第二目标图像,整个计算过程简单,有利于提高确定特征中心点的准确性,并提高获取特征中心点的速度。
[0204]
应理解的是,本技术实施例中,输入单元1204可以包括图形处理器(graphics processing unit,gpu)12041和麦克风12042,图形处理器12041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元1206可包括显示面板12061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板12061。用户输入单元1207包括触控面板12071以及其他输入设备12072中的至少一种。触控面板12071,也称为触摸屏。触控面板12071可包括触摸检测装置和触摸控制器两个部分。其他输入设备12072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
[0205]
存储器1209可用于存储软件程序以及各种数据。存储器1209可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器1209可以包括易失性存储器或非易失性存储器,或者,存储器1209可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,drram)。本技术实施例中的存储器1209包括但不限于这些和任意其它适合类型的存储器。
[0206]
处理器1210可包括一个或多个处理单元;可选的,处理器1210集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器1210中。
[0207]
本技术实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述测距方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0208]
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器rom、随机存取存储器ram、磁碟或者光盘等。
[0209]
本技术实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述测距方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0210]
应理解,本技术实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
[0211]
本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述测距方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0212]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述
的特征可在其他示例中被组合。
[0213]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
[0214]
上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。

技术特征:


1.一种测距方法,由电子设备执行,所述电子设备包括折叠屏幕和摄像头模组,所述折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,所述摄像头模组包括第一摄像头和第二摄像头,所述第一摄像头跟随所述第一屏幕转动,所述第二摄像头跟随所述第二屏幕转动;其特征在于,所述方法包括:获取第一图像和n帧第二图像,其中,所述第一图像为所述第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,所述n帧第二图像为所述第二摄像头根据第二预设拍摄参数对所述目标对象拍摄得到的,所述第一预设拍摄参数包括所述第一摄像头与所述轴线的第一预设距离和成像焦距,所述第二预设拍摄参数包括所述第二摄像头与所述轴线的第二预设距离和所述成像焦距,n为正整数;获取所述第一图像中所述目标对象的第一成像点到所述轴线的第一距离和每帧所述第二图像中所述目标对象的第二成像点到所述轴线的第二距离,其中,所述第一距离为所述第一成像点沿第一成像平面的延伸方向到所述轴线的距离,所述第二距离为所述第二成像点沿第二成像平面的延伸方向到所述轴线的距离;根据所述成像焦距、所述第一预设距离、所述第二预设距离、所述第一距离、n个所述第二距离,确定所述目标对象到所述电子设备的目标距离。2.根据权利要求1所述的方法,其特征在于,所述根据所述成像焦距、所述第一预设距离、所述第二预设距离、所述第一距离、n个所述第二距离,确定所述目标对象到所述电子设备的目标距离,包括:根据所述成像焦距、所述第一预设距离、所述第二预设距离、所述第一距离、n个所述第二距离,确定目标对象到所述电子设备的n个初始距离;根据预设残差函数和所述n个初始距离,确定所述目标距离。3.根据权利要求1所述的方法,其特征在于,获取所述n帧第二图像,包括:获取所述第二摄像头根据所述第二预设拍摄参数对目标对象拍摄得到的w帧第三图像,其中,w为大于或等于n的正整数;在每帧所述第三图像中,根据预设滑动窗口和预设滑动规则,依次计算每个位置的预设滑动窗口对应图像与第一目标图像的相关度,得到每个预设滑动窗口对应的相关度,其中,所述第一目标图像为所述第一图像中目标对象所在区域对应的图像;统计每帧第三图像中相互重叠的目标滑动窗口的第一数量,其中,所述目标滑动窗口的相关度大于第一阈值;从所述w帧第三图像中,获取第一数量大于或等于第二阈值的图像,得到所述n帧第二图像。4.根据权利要求3所述的方法,其特征在于,在获取所述n帧第二图像之前,所述方法还包括:接收对所述第一图像的第一输入;响应于第一输入,确定所述第一图像中的第一目标图像。5.根据权利要求3所述的方法,其特征在于,所述获取所述第一图像中所述目标对象的第一成像点到所述轴线的第一距离和每帧所述第二图像中所述目标对象的第二成像点到所述轴线的第二距离,包括:获取所述第一目标图像的中心点的位置信息,得到所述目标对象的第一成像点的第一
位置信息;以及,获取所述第一图像中所述目标对象的特征中心点的n个第二位置信息和第二图像中所述目标对象的特征中心点的n个第三位置信息,其中,所述第一图像中所述目标对象的特征中心点与第二图像中所述目标对象的特征中心点一一对应;根据所述第一位置信息与所述第二位置信息,确定所述第一图像中所述目标对象的特征中心点到所述第一成像点的第一位移;根据所述第一位移和所述每帧第二图像中所述目标对象的特征点的第三位置信息,确定所述每帧第二图像中所述第二成像点的第二位置信息;根据所述第一位置信息,确定所述目标对象的第一成像点到所述轴线的第一距离;以及,根据每帧所述第二图像中所述第二成像点的第二位置信息,确定每帧所述第二图像中所述第二成像点到所述轴线的第二距离。6.根据权利要求5所述的方法,其特征在于,所述获取所述第一图像中所述目标对象的特征中心点的n个第二位置信息和第二图像中所述目标对象的特征中心点的n个第三位置信息,包括:获取每帧所述第二图像中所述目标对象所在区域对应的图像,得到每帧所述第二图像对应的第二目标图像;对所述第一目标图像分别与每个所述第二目标图像进行特征匹配处理,得到n个匹配信息,每个所述匹配信息包括多个特征点匹配对,每个所述特征点匹配对包括位于所述第一目标图像中的第一特征点和位于所述第二目标图像中的第二特征点,每个所述特征点匹配对的相似度大于第三阈值;对应每个所述匹配信息,根据所述第一目标图像中多个第一特征点的位置信息,确定所述第一图像中所述目标对象的特征中心点的第二位置信息;以及,根据所述第二目标图像中多个第二特征点的位置信息,确定每帧所述第二图像中所述目标对象的特征中心点的第三位置信息。7.根据权利要求6所述的方法,其特征在于,所述获取每帧所述第二图像中所述目标对象所在区域对应的图像,得到每帧所述第二图像对应的第二目标图像,包括:获取每帧第二图像中相互重叠的目标滑动窗口;根据所述相互重叠的目标滑动窗口中每个目标滑动窗口的位置信息,确定每帧第二图像对应的所述第二目标图像。8.一种测距装置,所述装置应用于电子设备,所述电子设备包括折叠屏幕和摄像头模组,所述折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,所述摄像头模组包括第一摄像头和第二摄像头,所述第一摄像头跟随所述第一屏幕转动,所述第二摄像头跟随所述第二屏幕转动;其特征在于,所述装置包括:获取模块,用于获取第一图像和n帧第二图像,其中,所述第一图像为所述第一摄像头根据第一预设拍摄参数对目标对象拍摄得到的,所述n帧第二图像为所述第二摄像头根据第二预设拍摄参数对所述目标对象拍摄得到的,所述第一预设拍摄参数包括所述第一摄像头与所述轴线的第一预设距离和成像焦距,所述第二预设拍摄参数包括所述第二摄像头与所述轴线的第二预设距离和所述成像焦距;
所述获取模块,还用于获取所述第一图像中所述目标对象的第一成像点到所述轴线的第一距离和每帧所述第二图像中所述目标对象的第二成像点到所述轴线的第二距离,其中,所述第一距离为所述第一成像点沿第一成像平面的延伸方向到所述轴线的距离,所述第二距离为所述第二成像点沿第二成像平面的延伸方向到所述轴线的距离;处理模块,用于根据所述成像焦距、所述第一预设距离、所述第二预设距离、所述第一距离、n个所述第二距离,确定所述目标对象到所述电子设备的目标距离。9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-7任一项所述的测距方法的步骤。10.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-7任一项所述的测距方法的步骤。

技术总结


本申请公开了一种测距方法和装置,属于终端设备技术领域。测距方法由电子设备执行,电子设备包括折叠屏幕和摄像头模组,折叠屏幕包括沿轴线转动的第一屏幕和第二屏幕,摄像头模组包括第一摄像头和第二摄像头,第一摄像头跟随第一屏幕转动,第二摄像头跟随第二屏幕转动;测距方法包括:获取第一图像和N帧第二图像;获取第一图像中目标对象的第一成像点到轴线的第一距离和每帧第二图像中目标对象的第二成像点到轴线的第二距离;根据成像焦距、第一预设距离、第二预设距离、第一距离、N个第二距离,确定目标对象到电子设备的目标距离。确定目标对象到电子设备的目标距离。确定目标对象到电子设备的目标距离。


技术研发人员:

马昱肖

受保护的技术使用者:

维沃移动通信有限公司

技术研发日:

2022.09.23

技术公布日:

2022/12/30

本文发布于:2024-09-24 18:14:20,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/49956.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:图像   目标   所述   距离
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议