基于图像序列的运动检测方法及装置与流程

文档序号:16149820发布日期:2018-12-05 17:20阅读:120来源:国知局
基于图像序列的运动检测方法及装置与流程

本发明涉及移动通信技术领域,尤其涉及一种基于图像序列的运动检测方法及装置。

背景技术

对于手机拍照来说,拍出清晰的图像是一个基本需求。然而,运动模糊是造成图像模糊的一个主要原因,通常手机抖动或场景中有运动物体均是造成运动模糊的因素。

目前市场上主流的防抖技术分为光学防抖和算法防抖两方面。光学防抖是利用传感器检测摄像头模组在外力的作用下发生了位移,从而驱动马达对镜头位置进行调整,进而抑制手抖带来的影响。因此,光学防抖只能抑制手机抖动带来的运动模糊,而对于场景中的运动物体造成的运动模糊没有帮助。算法防抖是借助传感器信息和图像内容,通过图像配置,运动估计等方法,对图像本身的运动模糊进行抑制,算法防抖的优点是手机抖动和场景中的运动物体带来的运动模糊均能抑制。

但是,对于手机用户来讲,手机抖动或场景中有运动物体是具有一定的随机性,防抖拍照模式需要开启的时机不好把握,若长期开启防抖模式会影响正常情况下手机拍照的图像的质量。



技术实现要素:

有鉴于此,本发明提供一种基于图像序列的运动检测方法,能够较好的适应各种场景,快速检测出当前帧图像是静止状态或运动状态,以为是否启动防抖拍照提供有效策略。

本发明实施例提供了一种基于图像序列的运动检测方法,所述方法包括:依次获取一帧图像,降采样后更新到循环图像队列中;周期性计算图像梯度的期望值,并获取所述循环图像队列中图像的曝光时间,以根据所述期望值及所述曝光时间确定所述循环图像队列中图像序列的运动检测的判定阈值;获取所述循环图像队列中的两帧图像,并计算所述两帧图像的像素点灰度差异均值及统计所述两帧图像的整体灰度变化情况;以及根据所述判定阈值、所述像素点灰度差异均值及所述整体灰度变化情况判断当前帧图像是否运动,并在预设时间内统计连续多帧图像的运动检测的结果,以输出所述当前帧图像的运动状态或静止状态。

具体地,所述根据所述判定阈值、所述像素点灰度差异均值及所述整体灰度变化情况判断当前帧图像是否运动,并在预设时间内统计连续多帧图像的运动检测的结果,以输出所述当前帧图像的运动状态或静止状态的步骤之后还包括:当输出所述当前帧图像的静止状态时,不启动终端的算法防抖拍照模式;当输出所述当前帧图像的运动状态时,开启终端的算法防抖拍照模式。

具体地,所述根据所述期望值及所述曝光时间确定运动检测的判定阈值的步骤包括:所述判定阈值为动态设置运动检测的动态阈值。

具体地,所述动态设置运动检测的动态阈值的步骤具体包括:在固定环境亮度下进行不同场景的测试,并记录会导致人为可见模糊的图像差异响应值;在改变环境亮度下对不同场景进行测试,并记录会导致人为可见模糊的图像差异响应值;其中所述图像差异响应值由所述两帧图像的像素点灰度差异绝对值的平均值得到。

具体地,所述获取所述循环图像队列中的两帧图像,并计算所述两帧图像的像素点灰度差异均值及统计所述两帧图像的整体灰度变化情况的步骤包括:将每帧图像分为m*n区域的矩形框,并将最外一圈设置为无效区域,其中,m,n均为大于0的整数;所述两帧图像为所述循环图像队列中时间间隔最大的两帧图像,并对所述两帧图像的每个区域对应像素点进行求差运算,以统计出所述两帧图像的每个区域差异均值及每个区域内灰度变亮、灰度变暗与灰度几乎不变的三种像素点的个数。

具体地,所述根据所述判定阈值、所述像素点灰度差异均值及所述整体灰度变化情况判断当前帧图像是否运动的步骤还包括:对于所述两帧图像的任意区域,当灰度变亮或灰度变暗的像素点个数大于所述灰度变亮或灰度变暗的像素点所在的区域的总像素点的1/2时,则判定所述灰度变亮或灰度变暗的像素点所在的区域为光照变化区域;当所述两帧图像中的光照变化区域的个数大于所述两帧图像的有效统计总区域个数的1/2,则判定当前帧图像为静止状态;当所述两帧图像中光照不变区域的区域个数超过所述两帧图像的有效统计总区域个数的1/2时,,并且当所述两帧图像中存在至少一个区域的像素点灰度差异均值大于所述判定阈值,则判定当前帧图像属于运动状态;当所述两帧图像中任意区域的像素点灰度差异均值均小于所述判定阈值,则判定当前帧图像属于静止状态。

具体地,所述依次获取一帧图像,降采样后更新到循环图像队列中的步骤具体包括:所述循环图像队列中始终保存多帧连续的图像序列,当新加入一帧图像时,所述循环图像队列中的一帧图像将会被替换。

具体地,所述预设时间内可为0.3s~1s;所述在预设时间内统计连续多帧图像的运动检测的结果,以输出所述当前帧图像的运动状态或静止状态的步骤包括:在所述预设时间内统计连续帧图像序列中为运动帧的次数,当运动帧的次数大于预设比例时,则判定当前预设时间段为运动状态,并将运动状态持续到下一个预设时间内。

本发明实施例还提供一种基于图像序列的运动检测装置,所述装置包括:获取模块,用于依次获取一帧图像,降采样后更新到循环图像队列中;阈值计算模块,用于周期性计算图像梯度的期望值,并获取所述循环图像队列中图像的曝光时间,以根据所述期望值及所述曝光时间确定所述循环图像队列中图像序列的运动检测的判定阈值;像素点灰度差异与整体灰度变化模块,用于获取所述循环图像队列中的两帧图像,并计算所述两帧图像的像素点灰度差异均值及统计所述两帧图像的整体灰度变化情况;以及判断模块,用于根据所述判定阈值、所述像素点灰度差异均值及所述整体灰度变化情况判断当前帧图像是否运动,并在预设时间内统计连续多帧图像的运动检测的结果,以输出所述当前帧图像的运动状态或静止状态。

具体地,所述像素点灰度差异与整体灰度变化模块包括:区域划分单元,用于将每帧图像分为m*n区域的矩形框,并将最外一圈设置为无效区域,其中,m与n均为大于0的整数;计算与统计单元,用于所述两帧图像为所述循环图像队列中时间间隔最大的两帧图像,并对所述两帧图像的每个区域对应像素点进行求差运算,以统计出所述两帧图像的每个区域差异均值及每个区域内灰度变亮、灰度变暗与灰度几乎不变的三种像素点的个数;所述判断模块包括:第一判断单元,用于对于所述两帧图像的任意区域,当灰度变亮或灰度变暗的像素点个数大于所述灰度变亮或灰度变暗的像素点所在的区域的总像素点的1/2时,则判定所述灰度变亮或灰度变暗的像素点所在的区域为光照变化区域;第二判断单元,用于当所述两帧图像中的光照变化区域的个数大于所述两帧图像的有效统计总区域个数的1/2,则判定当前帧图像为静止状态;第三判断单元,用于当所述两帧图像中光照不变区域的区域个数超过所述两帧图像的有效统计总区域个数的1/2时,并且当所述两帧图像中存在至少一个区域的像素点灰度差异均值大于所述判定阈值,则判定当前帧图像属于运动状态,当所述两帧图像中任意区域的像素点灰度差异均值均小于所述判定阈值,则判定当前帧图像属于静止状态。

本发明实施例提供的基于图像序列的运动检测方法及装置,通过读入一帧图像,跟循环图像队列中的一帧图像进行比较分析,并图像梯度和曝光时间动态调整判定阈值,从而判断当前帧图像是否发生运动,同时通过在预设时间内统计连续多帧图像的状态结果,以输出预设时间段的运动状态,不需要陀螺仪或加速度计等传感器信息,通过分析图像信息,并以普通拍照是否模糊作为判断标准,做出运动判断,从而为是否自动触发算法防抖拍照提供依据,简单高效,并可以进行单指令多数据流(singleinstructionmultipledata,simd)优化。

为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。

附图说明

图1示出了一种终端的结构框图;

图2为本发明第一实施例提供的基于图像序列的运动检测方法流程图;

图3为图2中的步骤s12的周期性计算图像梯度的期望值的子步骤流程图;

图4为图2中的步骤s14的子步骤流程图;

图5为本发明第二实施例提供的基于图像序列的运动检测装置的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示出了一种终端的结构框图。本发明提供的基于图像序列的运动检测方法及装置可以应用于如图1所示的终端,如图1所示,终端10包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、定位模块112、摄像模块114、音频模块116、屏幕118以及按键模块120。这些组件通过一条或多条通讯总线/信号线122相互通讯。

可以理解,图1所示的结构仅为示意,终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

存储器102可用于存储软件程序以及模块,如本发明实施例中的基于图像序列的运动检测方法及装置对应的程序指令/模块,处理器106通过运行存储在存储控制器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的基于图像序列的运动检测方法及装置。

存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器102可进一步包括相对于处理器106远程设置的存储器,这些远程存储器可以通过网络连接至终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。

外设接口108将各种输入/输入装置耦合至cpu以及存储器102。处理器106运行存储器102内的各种软件、指令以执行终端10的各种功能以及进行数据处理。

在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。射频模块110可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(sim)卡、存储器等等。射频模块110可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(globalsystemformobilecommunication,gsm)、增强型移动通信技术(enhanceddatagsmenvironment,edge),宽带码分多址技术(widebandcodedivisionmultipleaccess,w-cdma),码分多址技术(codedivisionaccess,cdma)、时分多址技术(timedivisionmultipleaccess,tdma),蓝牙,无线保真技术(wireless,fidelity,wifi)(如美国电气和电子工程师协会标准ieee802.11a,ieee802.11b,ieee802.11g和/或ieee802.11n)、网络电话(voiceoverinternetprotocal,voip)、全球微波互联接入(worldwideinteroperabilityformicrowaveaccess,wi-max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。

定位模块112用于获取终端10的当前位置。定位模块112的实例包括但不限于全球卫星定位系统(gps)、基于无线局域网或者移动通信网的定位技术。

摄像模块114用于拍摄照片或者视频。拍摄的照片或者视频可以存储至存储器102内,并可通过射频模块110发送。

音频模块116向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。音频电路从外设接口108处接收声音数据,将声音数据转换为电信息,将电信息传输至扬声器。扬声器将电信息转换为人耳能听到的声波。音频电路还从麦克风处接收电信息,将电信号转换为声音数据,并将声音数据传输至外设接口108中以进行进一步的处理。音频数据可以从存储器102处或者通过射频模块110获取。此外,音频数据也可以存储至存储器102中或者通过射频模块110进行发送。在一些实例中,音频模块116还可包括一个耳机播孔,用于向耳机或者其他设备提供音频接口。

屏幕118在终端10与用户之间提供一个输出界面。具体地,屏幕118向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频、及其任意组合。一些输出结果是对应于一些用户界面对象。可以理解的,屏幕118还可以包括触控屏幕。触控屏幕在终端10与用户之间同时提供一个输出及输入界面。除了向用户显示视频输出,触控屏幕还接收用户的输入,例如用户的点击、滑动等手势操作,以便用户界面对象对这些用户的输入做出响应。检测用户输入的技术可以是基于电阻式、电容式或者其他任意可能的触控检测技术。触控屏幕显示单元的具体实例包括但并不限于液晶显示器或发光聚合物显示器。

按键模块120同样提供用户向终端10进行输入的接口,用户可以通过按下不同的按键以使终端10执行不同的功能。

第一实施例

图2为本发明第一实施例提供的基于图像序列的运动检测方法的流程图。本实施例为基于图像序列的运动检测装置执行的基于图像序列的运动检测方法。具体地,本实施例提供的基于图像序列的运动检测方法可应用于终端上,以控制终端在满足开启算法防抖条件是自动开启算法防抖模式。如图2所示,本实施例的基于图像序列的运动检测方法可包括以下步骤:

步骤s11,依次获取一帧图像,降采样后更新到循环图像队列中。

具体地,基于图像序列的运动检测方法可运行在终端预览端,在本实施例,终端可以但不限于高通820处理器的智能手机。终端获取的图像只需要灰度信息,预览图像格式为yuv420,预览分辨率是1080p/720p,但并不限于此。可以先对图像的y通道进行降采样,降采样的倍数可参考图像的长宽均可以但不限于缩小为原来的1/4倍,例如还可以缩小为原来的1/8倍等等。进一步地,循环图像队列中始终保存在多帧连续的图像序列,当新加入一帧图像时,最早加入到循环图像队列中的一帧图像将会被替换。具体地,在本实施例中,循环图像队列的长度不固定,例如可以设置为4~6帧图像,具体地,可以设置循环图像队列的长度为4帧,并设最新进入到循环图像队列中的一帧图像与最早进入到循环图像队列中的一帧图像的时间差异是3个采用周期,约100ms,但并不限于此。

步骤s12,周期性计算图像梯度的期望值,并获取循环图像队列中图像的曝光时间,以根据期望值及曝光时间确定循环图像队列中图像序列的运动检测的判定阈值。

具体地,图像的复杂度和曝光时间对运动检测的判定阈值有影响。对于相同持续的抖动幅度,图像场景越复杂,图像差异响应值越大,则一定程度反映运动越剧烈(当然也不排除光照变化影响)。对于相同持续的抖动幅度,曝光时间越短,越不易造成模糊。其中,场景复杂度以图像梯度的均值来度量,图像差异响应值由两帧图像的像素点灰度差异绝对值的平均值得到。在本实施例中,可以但不限于将判定阈值设置为动态设置运动检测的动态阈值,以根据实际情况来调整判定阈值。

请一并参考图3,图3为图2中的步骤s12的周期性计算图像梯度的期望值的子步骤流程图。如图3所示,步骤s12中的周期性计算图像梯度的期望值包括以下子步骤:

子步骤s121,输入待检测帧图像。

子步骤s122,判断是否达到计算图像梯度的次数,若是则执行子步骤s123,若否则执行子步骤s124。

子步骤s123,计算图像梯度,并更新图像梯度均值。

具体地,通过单一变量的思路对用户常用的拍摄场景进行调试,采用先分梯度,后分曝光的分段方式,在本实施例中通过图像梯度均值范围逐渐增加,曝光时间逐渐缩短,以构建如表1所示的动态梯度表。具体地,当输入图像携带的梯度信息和曝光信息时,就可以通过查表来获取图像梯度均值。在表1中同一行,从左到右,判定阈值t[i,j]逐渐增加。同一列,从上到下,判定阈值t[i,j]逐渐增加。然后需要选取一些常用的拍摄场景来匹配表1中的梯度和曝光的对应关系。具体地,在逐个场景下,当普通拍照时会发生人为可感知的模糊,通过多次实验找到会发生人为可感知的模糊的临界状态,并记录下两帧待比较图像产生的差异值,以此作为该场景下的判定阈值。需要指出的是,两帧图像的差异比较是分区域进行的,在本实施例中记录的差异值是各个区域差异值的最大值。

表1为图像梯度均值、曝光时间与判定阈值的对应关系表:

具体地,在本实施例中,对于每帧输入图像,当自动曝光(automaticexposure:ae)稳定后,曝光时间可以从终端系统端获取,从而曝光时间与伴随输入的每帧图像一一对应。图像梯度均值则需要通过计算得到,具体地,本实施例是基于场景不会突变的假设,规定图像梯度均值可以但不限于每间隔0.5s进行计算一次,且当前帧图像不再进行运动检测,可令当前帧图像与上一帧图像的状态相同。例如,在本实施例中,在同一采用周期内输入的所有帧图像均可以看作与第一帧图像具有相同的图像梯度的期望值,即具有相同的图像梯度均值。

进一步地,在本实施例中,关于图像梯度均值的计算,在本实施例中只进行水平梯度的统计,图像梯度均值等于水平梯度模的均值,水平梯度模的均值定义如下:

式中,i为行号,width是图像宽度,j为列号,且j的范围是[0,width),i(i,j)表示图像中任意像素点。

子步骤s124,根据图像梯度均值和曝光时间选择判定阈值。

具体地,在固定环境亮度下进行不同场景的测试,并记录会导致人为可见模糊的图像差异响应值;

在改变环境亮度下对不同场景进行测试,并记录会导致人为可见模糊的图像差异响应值;其中

所述图像差异响应值由所述两帧图像的像素点灰度差异绝对值的平均值得到。

动态设置运动检测的动态阈值的设置原则:使用终端拍照造成人为可感知的模糊作为判断标准,模糊条件成立,则判定为运动。在本实施例中,图像差异响应值会随曝光时间和场景复杂度发生变化。在设定动态阈值时,可分两步进行,首先,在固定环境亮度下进行不同场景的测试,场景可以选用固定环境亮度下常规的拍摄场景,并记录会导致人为可见模糊的图像差异响应值。然后,在改变环境亮度下对不同场景进行测试,比如逐渐增加环境亮度,并记录会导致人为可见模糊的图像差异响应值。在本实施例中,场景复杂度可用图像梯度的均值来进行度量,环境亮度则通过ae稳定后的曝光时间来度量,曝光时间可以从终端的系统端获取,图像差异响应值由两帧图像的像素点灰度差异绝对值的平均值得到。基于实际应用中,场景不会突变的假设,图像梯度计算可以0.5s~1s进行一次,例如在本实施例中每间隔0.5s进行图像梯度的计算,且当前帧图像的运动状态可延用上一帧图像的判断。

步骤s13,获取循环图像队列中的两帧图像,并计算两帧图像的像素点灰度差异均值及统计两帧图像的整体灰度变化情况。

具体地,将每帧图像分为m*n区域的矩形框,并选择性将最外一圈设置为无效区域,其中,m与n均为大于0的整数。然后,从循环图像队列中取出两帧图像,在本实施例中,该两帧图像为循环图像队列中时间间隔最大的两帧图像,并对两帧图像的每个区域对应像素点进行求差运算,以统计出两帧图像的每个区域差异均值及每个区域内灰度变亮、灰度变暗与灰度几乎不变的三种像素点的个数。其中,每个区域差异均值记为s[i],每个区域内灰度变亮、灰度变暗与灰度几乎不变的三种像素点的个数分别记为h[i],l[i],e[i],i是指每个区域的编号。

例如在本实施例中,对于两帧图像的差异统计信息,需要统计各有效区域图像差异响应值和整体灰度变化情况。本实施例以将每帧图像分为6*5区域的矩形框为例进行说明,但并不限于此。从循环图像队列中取出两帧图像且时间间隔约100ms,针对两帧图像的逐个区域对应像素点进行求差运算,计算像素点灰度差异绝对值的均值s[i]的公式如下:

式中,i(i,j)为两帧图像中一帧图像的任意一区域,it(i,j)为两帧图像中另一帧图像与i(i,j)相对应的一区域,i为行号,j为列号,m为有效统计区域,在本实施例中,有效统计区域为将每帧图像的无效区域去除后的所有区域。同时需要统计每个区域内整体灰度亮暗的变化情况,从而可排除光照变化对运动的判断造成的影响,即光线变化造成的整体灰度变化不算运动。

步骤s14,根据判定阈值、像素点灰度差异均值及整体灰度变化情况判断当前帧图像是否运动,并在预设时间内统计连续多帧图像的运动检测的结果,以输出当前帧图像的运动状态或静止状态。

具体地,针对单帧图像的状态结果,需要累积连续多帧图像的状态的统计结果,从而根据统计结果输出当前帧图像的运动状态或静止状态。需要说明的是,当运动场景处于判定条件的边界时,运动与静止会有混淆时,会使得到的运动判断结果出现跳跃。进一步地,本实施例通过累积多帧图像的状态结果进行判断,避免运动判断结果出现跳跃。并且在本实施例中预设时间段也不宜过长,否则快速而短暂的运动将感知不到,且运动判断出现较慢。具体地,在本实施例中选用10帧图像作为一个预设时间段,约1/3s的时间周期。

进一步地,在本实施例中,预设时间可以选择0.3s~1s中的任一时间来作为统计周期,以在预设时间内统计连续多帧图像序列中为运动帧的次数。具体地,当运动帧的次数大于预设比例时,则判定当前预设时间段时段为运动状态,并将运动状态持续到下一个预设时间内,直到下一个判断结果出现,则进行结果替换,从而保证每预设时间内出现一次统计结果。其中,预设比例可为但不限于2/3,例如在其他实施例中,预设比例还可为1/2等等。

请一并参考图4,图4为图2中的步骤s14的子步骤流程图。如图4所示,步骤s14包括以下子步骤:

子步骤s141,对于两帧图像的任意区域,当灰度变亮或灰度变暗的像素点个数大于灰度变亮或灰度变暗的像素点所在的区域的总像素点的1/2时,则判定灰度变亮或灰度变暗的像素点所在的区域为光照变化区域。

具体地,对于两帧图像中的任意区域进行统计,当h[i]或l[i]的像素点个数超过h[i]或l[i]所在的区域的总像素点的1/2时,则认为h[i]或l[i]所在的区域属于光照变化,从而判定为光照变化区域。在本实施例中,对于两帧图像的任意区域,当灰度几乎不变的像素点个数大于灰度几乎不变的像素点所在的区域的总像素点的1/2时,则判定灰度几乎不变的像素点所在的区域为光照不变区域。进一步地,光照变化区域包括灰度变亮区域或灰度变暗区域,光照不变区域可以是不存在灰度变亮区域且不存在灰度变暗区域,但并不限于此。

子步骤s142,当两帧图像中的光照变化区域的个数大于两帧图像的有效统计总区域个数的1/2时,则判定当前帧图像为静止状态。

具体地,当对两帧图像进行统计时,如果有超过1/2以上的区域为灰度变亮区域或灰度变暗区域,则判定当前帧图像属于光照变化,从而判定当前帧图像为静止状态。

子步骤s143:当两帧图像中光照不变区域的个数超过两帧图像的有效统计总区域的1/2时,并且当两帧图像中存在至少一个区域的像素点灰度差异均值大于判定阈值,则判定当前帧图像属于运动状态;当两帧图像中任意区域的像素点灰度差异均值均小于判定阈值,则判定当前帧图像属于静止状态。

具体地,当两帧图像中不存在灰度变亮区域且不存在灰度变暗区域的区域个数大于所述两帧图像的有效统计总区域个数的1/2时,并且当两帧图像中存在至少一个区域的像素点灰度差异均值s[i]>treal,其中treal是指动态阈值,则判定当前帧图像属于运动状态。相反的,当两帧图像中任何一个区域的像素点灰度差异均值均满足s[i]<treal,则判定当前帧属于静止状态。

进一步地,基于图像序列的运动检测方法在步骤s14之后还包括:当输出当前帧图像的静止状态时,不启动终端的算法防抖拍照模式,当输出当前帧图像的运动状态时,开启终端的算法防抖拍照模式,从而能够在满足条件的情况下自动开启防抖拍照模式,提高终端拍照的图像清晰度。

本发明实施例提供的基于图像序列的运动检测方法,通过读入一帧图像,跟循环图像队列中的一帧图像进行比较分析,并图像梯度和曝光时间动态调整判定阈值,从而判断当前帧图像是否发生运动,同时通过在预设时间内统计连续多帧图像的状态结果,以输出预设时间段的运动状态,不需要陀螺仪或加速度计等传感器信息,通过分析图像信息,并以普通拍照是否模糊作为判断标准,做出运动判断,从而为是否自动触发算法防抖拍照提供依据,简单高效,并可以进行单指令多数据流(singleinstructionmultipledata,simd)优化。

第二实施例

图5为本发明第二实施例提供的基于图像序列的运动检测装置的结构框图。本实施例提供的基于图像序列的运动检测装置20可用于实现第一实施例提供的基于图像序列的运动检测方法。如图5所示,基于图像序列的运动检测装置20包括获取模块21、阈值计算模块23、像素点灰度差异与整体灰度变化模块25及判断模块27。

其中,获取模块42,依次获取一帧图像,降采样后更新到循环图像队列中。阈值计算模块23,周期性计算图像梯度的期望值,并获取循环图像队列中图像的曝光时间,以根据期望值及曝光时间确定循环图像队列中图像序列的运动检测的判定阈值。像素点灰度差异与整体灰度变化模块25,用于获取循环图像队列中的两帧图像,并计算两帧图像的像素点灰度差异均值及统计两帧图像的整体灰度变化情况。判断模块27,用于根据判定阈值、像素点灰度差异均值及整体灰度变化情况判断当前帧图像是否运动,并在预设时间内统计连续多帧图像的运动检测的结果,以输出当前帧图像的运动状态或静止状态。

进一步地,像素点灰度差异与整体灰度变化模块包括:区域划分单元,用于将每帧图像分为m*n区域的矩形框,并将最外一圈设置为无效区域,其中,m与n均为大于0的整数。计算与统计单元,用于两帧图像为循环图像队列中时间间隔最大的两帧图像,并对两帧图像的每个区域对应像素点进行求差运算,以统计出两帧图像的每个区域差异均值及每个区域内灰度变亮、灰度变暗与灰度几乎不变的三种像素点的个数。

进一步地,判断模块包括:第一判断单元,用于对于两帧图像的任意区域,当灰度变亮或灰度变暗的像素点个数大于灰度变亮或灰度变暗的像素点所在的区域的总像素点的1/2时,则判定灰度变亮或灰度变暗的像素点所在的区域为光照变化区域。第二判断单元,用于当两帧图像中的光照变化区域的个数大于两帧图像的有效统计总区域个数的1/2,则判定当前帧图像为静止状态。第三判断单元,用于当两帧图像中光照不变区域的个数超过两帧图像的有效统计总区域个数的1/2时,并且当两帧图像中存在至少一个区域的像素点灰度差异均值大于判定阈值,则判定当前帧图像属于运动状态,当两帧图像中任意区域的像素点灰度差异均值均小于判定阈值,则判定当前帧图像属于静止状态。

其中,基于图像序列的运动检测装置20还包括算法防抖启动模块,当输出当前帧图像的静止状态时,算法防抖启动模块不启动终端的算法防抖拍照模式。当输出当前帧图像的运动状态时,算法防抖启动模块开启终端的算法防抖拍照模式。

其中,预设时间可为0.3s~1s。在预设时间内统计连续帧图像序列中为运动帧的次数,当运动帧的次数大于预设比例时,则判定当前预设时间段为运动状态,并将运动状态持续到下一个预设时间内。并且循环图像队列中始终保存多帧连续的图像序列,当新加入一帧图像时,循环图像队列中的一帧图像将会被替换。

以上各模块可以由软件代码实现,此时,上述的各模块可存储于存储器内。上述各模块同样可以由硬件例如集成电路芯片实现。

本实施例对基于图像序列的运动检测装置20的各功能单元实现各自功能的具体过程,请参见上述图1至图4所示实施例中描述的具体内容,在此不再赘述。

本发明实施例提供的基于图像序列的运动检测装置20,通过读入一帧图像,跟循环图像队列中的一帧图像进行比较分析,并图像梯度和曝光时间动态调整判定阈值,从而判断当前帧图像是否发生运动,同时通过在预设时间内统计连续多帧图像的状态结果,以输出预设时间段的运动状态,不需要陀螺仪或加速度计等传感器信息,通过分析图像信息,并以普通拍照是否模糊作为判断标准,做出运动判断,从而为是否自动触发算法防抖拍照提供依据,简单高效,并可以进行单指令多数据流(singleinstructionmultipledata,simd)优化。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者装置中还存在另外的相同要素。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1