1.本发明属于自动控制技术领域,尤其涉及一种摄像设备的镜头对焦方法、装置、摄像设备及存储介质。
背景技术:2.随着电子技术的发展,具有拍照功能的智能设备越来越多、越来越普及,为了获得良好的照相质量,这些具有拍照功能的智能设备需要对待拍摄物体进行对焦,手动对焦效率低下,也难以满足用户对智能化的要求,因此,如何在拍照过程中实现自动对焦对于具有拍照功能的智能设备非常重要。
3.现有技术中存在一些自动对焦的搜寻方法,其中,经典的爬山算法以简单易行,对焦效果好,被广泛应用于工程领域,如图1所示,爬山算法的原理是从起点出发沿一定的方向,以一定的较大步长开始爬坡改变焦距,通过计算每次的调焦评价函数值进行比较,当检测到坡度的下降沿时,缩小步长反向爬坡,如此反复折返爬坡,直到步长缩小到预设的终止步长时停止爬坡,最后一次爬坡过程中的峰值位置即为爬山算法搜索到的极大值。爬山算法在多次的重复折返过程中,需要进行多次的步长缩减才能得到好的结果,在计算量方面和实时性还有改善的空间,同时画面在清晰和模糊之间反复,画面变化不流畅。
技术实现要素:4.本发明的目的在于提供一种摄像设备的镜头对焦方法、装置、摄像设备及存储介质,旨在解决由于现有技术无法提供一种有效的镜头对焦方法,导致摄像设备的镜头对焦效率低下的问题。
5.一方面,本发明提供了一种摄像设备的镜头对焦方法,所述方法包括下述步骤:
6.s11、确定镜头的移动方向及所述镜头的当前对焦阶段;
7.s12、获取所述当前对焦阶段的预设步长及镜头当前位置所在可移动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算所述镜头在所述当前位置的待移动步长;
8.s13、根据计算得到的待移动步长和确定的移动方向移动所述镜头,计算移动后所述镜头所在当前位置的调焦评价函数值;
9.s14、判断所述镜头所在当前位置的调焦评价函数值是否大于前一位置的调焦评价函数值,是则跳转至步骤s12,否则跳转至步骤s15;
10.s15、判断所述当前对焦阶段是否未达到预设对焦阶段,是则将所述镜头反向移动并跳转至步骤s11,否则将所述前一位置设置为所述镜头的焦点位置,将所述镜头移动到所述焦点位置,以完成所述镜头的对焦。
11.另一方面,本发明提供了一种摄像设备的镜头对焦装置,所述装置包括:
12.移动参数确定单元,用于确定镜头的移动方向及所述镜头的当前对焦阶段;
13.步长计算单元,用于获取所述当前对焦阶段的预设步长及镜头当前位置所在可移
动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算所述镜头在所述当前位置的待移动步长;
14.函数值计算单元,用于根据计算得到的待移动步长和确定的移动方向移动所述镜头,计算移动后所述镜头所在当前位置的调焦评价函数值;
15.值判断单元,用于判断所述镜头所在当前位置的调焦评价函数值是否大于前一位置的调焦评价函数值,是则触发所述步长计算单元计算待移动步长,以继续移动所述镜头;
16.对焦单元,用于当所述镜头所在当前位置的调焦评价函数值没有大于前一位置的调焦评价函数值时,判断所述当前对焦阶段是否未达到预设对焦阶段,是则将所述镜头反向移动并触发所述移动参数确定单元,以继续移动所述镜头,否则将所述前一位置设置为所述镜头的焦点位置,将所述镜头移动到所述焦点位置,以完成所述镜头的对焦。
17.另一方面,本发明还提供了一种摄像设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
18.另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
19.本发明在对镜头进行对焦时确定镜头的移动方向及镜头的当前对焦阶段,获取当前对焦阶段的预设步长及镜头当前位置所在可移动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算镜头在当前位置的待移动步长,根据计算得到的待移动步长和确定的移动方向移动镜头,计算移动后镜头所在当前位置的调焦评价函数值,判断镜头所在当前位置的调焦评价函数值是否大于前一位置的,是则继续移动镜头,否则判断当前对焦阶段是否未达到预设对焦阶段,是则将镜头反向移动,否则将前一位置设置为镜头的焦点位置,将镜头移动到焦点位置,以完成镜头的对焦,从而提高了镜头的对焦效率。
附图说明
20.图1是现有经典爬山算法实现镜头对焦过程的示意图;
21.图2是本发明实施例一提供的摄像设备的镜头对焦方法的实现流程图;
22.图3是本发明实施例一提供的可移动区域的划分示例图;
23.图4是本发明实施例一提供的三种镜头对焦方法的对焦效果对照图;
24.图5是本发明实施例二提供的摄像设备的镜头对焦装置的结构示意图;
25.图6是本发明实施例三提供的摄像设备的结构示意图。
具体实施方式
26.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
27.以下结合具体实施例对本发明的具体实现进行详细描述:
28.实施例一:
29.图2示出了本发明实施例一提供的摄像设备的镜头对焦方法的实现流程,为了便
于说明,仅示出了与本发明实施例相关的部分,详述如下:
30.在步骤s201中,确定镜头的移动方向及镜头的当前对焦阶段;
31.本发明实施适用于包括有镜头以及对焦马达的摄像设备,以在对镜头进行对焦时,通过驱动对焦马达移动摄像设备的镜头。在本发明实施例中,当摄像设备接收到对镜头进行对焦的指令时,确定镜头的移动方向及镜头的当前对焦阶段,其中,摄像设备接收到的、对镜头进行对焦的指令可以是用户按压摄像设备的拍摄按钮时触发生成,也可以是检测到摄像设备被移动或摄像对象变化时触发生成,从而在用户需要时或摄像对象变化时自动触发对镜头的对焦。
32.镜头所在初始位置可以为原点位置(即镜头可移动距离的0位置处),此时,镜头的移动方向只有一个方向,即移动距离增加的方向。镜头所在初始位置也可以不是原点位置,此时,在确定镜头的移动方向时,在一优选实施方式中,将位于初始位置的镜头向预设方向移动预设距离,该预设距离为一较小距离,之后,获取镜头在初始位置的调焦评价函数值和移动预设距离后所在位置的调焦评价函数值,若移动后所在位置的调焦评价函数值大于镜头在初始位置的调焦评价函数值,则将该预设方向确定为镜头的移动方向,否则将该预设方向的反方向确定为镜头的移动方向,从而快速、准确确定镜头的移动方式,进而提高后续镜头的移动效率和对焦效率。其中,预设方向可以为随机方向,也可以根据镜头所在的初始位置进行设置,以快速进入镜头的移动阶段。调焦评价函数值用于评价摄像设备的镜头在一位置的拍摄效果,例如,可将镜头所在位置的图像清晰度值作为调焦评价函数值,具体可根据镜头类型选择对应的调焦评价函数,以通过调焦评价函数值准确地反应镜头所在位置的对焦效果。
33.在本发明实施例中,从对焦开始到对焦结束镜头的整个对焦过程被划分为多个对焦阶段,通过该多个对焦阶段最终实现镜头的对焦,镜头的对焦阶段包括至少两个。在每个对焦阶段,镜头的移动方向不会发生变化,即只要发生移动方向的改变,镜头就进入下一个对焦阶段。为了提高对焦效率,对焦阶段的数量可根据镜头的光学特征预先设置,优选地,镜头的对焦阶段包括三个,从而提高镜头的对焦效率。为了便于区分各个阶段,在这里,从镜头移动或对焦开始,每个阶段可依次称为第一对焦阶段、第二对焦阶段、第三对焦阶段,依此类推,当然也可以用其它名称,以示区分。具体地,在确定镜头的当前对焦阶段时,若当前对焦阶段为第一次确定镜头移动方向后的对焦阶段,则当前对焦阶段可称为第一对焦阶段。
34.在步骤s202中,获取当前对焦阶段的预设步长及镜头当前位置所在可移动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算镜头在当前位置的待移动步长;
35.在本发明实施例中,镜头的可移动距离为镜头从原点位置(零位置处)开始移动可移动到的最大位置处与原点位置之间的距离,可移动距离被划分为预设数量个可移动区域,可移动区域包括至少两个,划分得到的每个可移动区域的长度可以相同也可以不同,可移动区域的数量可根据各类镜头中参数及参数关系(例如,移动量(lens shift)与对焦距离(也称物距))来确定。因此,在获取镜头当前位置所在可移动区域的步长拟合函数之前,预先将镜头的可移动距离划分为预设数量个可移动区域。优选地,可移动区域的数量为3个,从而在简化镜头对焦过程的同时,提高镜头的对焦效率。作为示例地,如图3所示,镜头
的可移动距离被等距地划分为三个可移动区域,为了便于描述,图中根据镜头位置从左到右将图中的三个可移动区域分别称为第一、第二、第三可移动区域。
36.每个对焦阶段的预设步长及可移动区域的步长拟合函数可根据镜头的光学特性设置,该预设步长和该步长拟合函数用于计算镜头在不同对焦阶段、不同可移动区域每次的移动步长,各对焦阶段的预设步长不完全相同,各可移动区域的步长拟合函数也不完全相同。这样,镜头在不同的可移动区域、不同的对焦阶段每次移动时的步长都不同,实现了镜头每次移动时步长的差异化改变,便于快速定位最佳对焦点(焦点位置)所在的位置区间。每个可移动区域的步长拟合函数可在镜头的可移动距离被划分为预设数量个可移动区域时设置,也可以在其它时间设置。优选地,镜头的第n对焦阶段的预设步长大于第n+1对焦阶段的预设步长,第n对焦阶段和第n对焦阶段表示镜头前、后相邻的两个对焦阶段,从而快速定位最佳对焦点所在的位置区间。
37.在确定镜头的移动方向及镜头的当前对焦阶段后,获取当前对焦阶段的预设步长以及镜头当前位置所在的可移动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算镜头在当前位置的待移动步长,根据计算得到的待移动步长以及步骤s201确定的移动方向移动镜头。在一优选实施方式中,使用公式s=g(x)*s计算镜头在当前位置的待移动步长,其中,s表示计算得到的待移动步长,x表示当前位置距离原点位置(零位置处)的距离,g(x)表示当前位置所在可移动区域的步长拟合函数,s表示当前对焦阶段的预设步长。作为示例地,如图3所示,当镜头的可移动距离被划分为三个可移动区域、镜头的对焦阶段为三个时,三个区域的步长拟合函数可表示为s1_out=g1(x)*s1、s2_out=g2(x)*s2以及s3_out=g3(x)*s3,g1(x)、g2(x)、g3(x)分别表示第一、第二、第三可移动区域的步长拟合函数,s1、s2、s3分别表示第一、第二、第三对焦阶段的预设步长,且s1》s2》s3。
38.在步骤s203中,根据计算得到的待移动步长和确定的移动方向移动镜头,计算移动后镜头所在当前位置的调焦评价函数值;
39.在步骤s204中,判断镜头所在当前位置的调焦评价函数值是否大于前一位置的调焦评价函数值,是则跳转至步骤s12,否则跳转至步骤s15;
40.在本发明实施例中,前一位置的调焦评价函数值同当前位置的调焦评价函数值的计算方式一样,在前一位置时将计算得到的调焦评价函数值保存下来,在得到当前位置的调焦评价函数值后即可将当前位置的调焦评价函数值与前一位置的调焦评价函数值进行比较,判断当前位置的调焦评价函数值是否大于前一位置的调焦评价函数值。若当前位置的调焦评价函数值大于前一位置的调焦评价函数值,则表明镜头当前位置仍未达到最佳对焦点,此时跳转至步骤s202,以继续移动镜头,在继续移动镜头时镜头的移动方向不变,即与前一位置的移动方向相同,与前一位置镜头的移动处于同一对焦阶段。若当前位置的调焦评价函数值不大于前一位置的调焦评价函数值,则表明前一位置可能是镜头的最佳对焦点,但为了更精确地定位最佳对焦点,在这里进一步执行步骤s205,以判断镜头当前对焦阶段是否未达到预设对焦阶段。
41.在步骤s205中,判断当前对焦阶段是否未达到预设对焦阶段,是则跳转至步骤s201,否则跳转至步骤s206。
42.在本发明实施例中,若当前对焦阶段未达到预设对焦阶段,则表明镜头经过的对
焦阶段尚未达到预设数量,前一位置可能不是镜头的最佳对焦点,需要继续对焦,此时跳转至步骤s201,此时步骤s201在确定镜头的移动方向时,将镜头的移动方向设置为前一位置的反方向,此时镜头进入下一对焦阶段。
43.在步骤s206中,将前一位置设置为镜头的焦点位置,将镜头移动到焦点位置,以完成镜头的对焦。
44.在本发明实施例中,若当前对焦阶段已达到预设对焦阶段,则表明镜头经过的对焦阶段达到了预设数量,前一位置被认为是镜头的最佳对焦点,此时,将前一位置设置为镜头的焦点位置,将镜头移动到焦点位置,以完成镜头的对焦。
45.本发明实施例在对镜头进行对焦时确定镜头的移动方向及镜头的当前对焦阶段,获取当前对焦阶段的预设步长及镜头当前位置所在可移动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算镜头在当前位置的待移动步长,根据计算得到的待移动步长和确定的移动方向移动镜头,计算移动后镜头所在当前位置的调焦评价函数值,判断镜头所在当前位置的调焦评价函数值是否大于前一位置的,是则继续移动镜头,否则判断当前对焦阶段是否未达到预设对焦阶段,是则将镜头反向移动,否则将前一位置设置为镜头的焦点位置,将镜头移动到焦点位置,以完成镜头的对焦,从而提高了镜头的对焦效率。
46.在本发明实施例中,镜头确定方向后首次移动的步长最长,后续不断减少,以在最短时间内定位最佳对焦点。如图4所示,图4示出了三种不同对焦方法在同一摄像设备上的对焦效果,其中,mtf1是采用一较大固定步长的爬山搜索算法的效果,mtf2是为本发明实施例的效果,mtf3是采用一较小固定步长的爬山搜索算法的效果。可以看出,本发明实施例的在搜索最佳对焦点的过程中震荡幅度小,稳定时间短。
47.实施例二:
48.图5示出了本发明实施例二提供的摄像设备的镜头对焦装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
49.移动参数确定单元51,用于确定镜头的移动方向及镜头的当前对焦阶段;
50.步长计算单元52,用于获取当前对焦阶段的预设步长及镜头当前位置所在可移动区域的步长拟合函数,根据当前位置信息、获取的预设步长以及步长拟合函数,计算镜头在当前位置的待移动步长;
51.函数值计算单元53,用于根据计算得到的待移动步长和确定的移动方向移动镜头,计算移动后镜头所在当前位置的调焦评价函数值;
52.值判断单元54,用于判断镜头所在当前位置的调焦评价函数值是否大于前一位置的调焦评价函数值,是则触发步长计算单元52计算待移动步长,以继续移动镜头;
53.对焦单元55,用于当镜头所在当前位置的调焦评价函数值没有大于前一位置的调焦评价函数值时,判断当前对焦阶段是否未达到预设对焦阶段,是则将镜头反向移动并触发移动参数确定单元51,以继续移动镜头,否则将前一位置设置为镜头的焦点位置,将镜头移动到焦点位置,以完成镜头的对焦。
54.优选地,移动参数确定单元51包括:
55.函数值获取单元,用于将位于初始位置的镜头向预设方向移动预设距离,获取镜头在初始位置的调焦评价函数值和移动后所在位置的调焦评价函数值,预设方向为随机方
向;
56.方向确定单元,用于若移动后所在位置的调焦评价函数值大于镜头在初始位置的调焦评价函数值,则将预设方向确定为镜头的移动方向,否则将预设方向的反方向确定为镜头的移动方向。
57.在本发明实施例中,镜头对焦装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。各单元的具体实施方式可参考实施一的描述,在此不再赘述。
58.实施例三:
59.图6示出了本发明实施例三提供的摄像设备的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
60.本发明实施例的摄像设备6包括处理器60、存储器61以及存储在存储器61中并可在处理器60上运行的计算机程序62。该处理器60执行计算机程序62时实现上述镜头对焦方法实施例中的步骤,例如图2所示的步骤s201至s206。或者,处理器60执行计算机程序62时实现上述各装置实施例中各单元的功能,例如图5所示单元51至55的功能。
61.本发明实施例的摄像设备可以为相机、手机等具体摄像功能的电子设备。该摄像设备6中处理器60执行计算机程序62时实现镜头对焦方法时实现的步骤可参考前述方法实施例的描述,在此不再赘述。
62.实施例五:
63.在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述镜头对焦方法实施例中的步骤,例如,图2所示的步骤s201至s206。或者,该计算机程序被处理器执行时实现上述各装置实施例中各单元的功能,例如图5所示单元51至55的功能。
64.本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,rom/ram、磁盘、光盘、闪存等存储器。
65.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。