具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种位置检测方法,该方法包括步骤S11至步骤S14。
步骤S11,获取当前帧输入图像,所述当前帧输入图像包括目标对象以及与所述目标对象关联的目标跟踪辅助对象。
在本发明实施例中,目标对象与目标跟踪辅助对象一一对应,输入图像中包括至少一个目标对象和目标跟踪辅助对象。
在一些实施例中,目标对象可以为用户的手部、头部或四肢,但不限定于此。目标跟踪辅助对象可以为惯性测量单元(Inertial Measurement Unit,IMU)传感器、腕带或LED环等,但不限于此,其中腕带的颜色以及LED环发出的光的颜色为与周边物体和人体区分度高、计算机容易识别的颜色。
步骤S12,检测所述当前帧输入图像中的所述目标对象和所述目标跟踪辅助对象的位置信息。
在一些实施例中,参阅图2,步骤S12包括步骤S21至步骤S23。
步骤S21,针对所述当前帧输入图像中的所有对象,提取所有对象的特征。
步骤S22,针对每一对象的特征均与预设的对象特征进行匹配,确定匹配成功的对象为所述目标对象。
步骤S23,根据所述目标对象,得到所述目标对象的位置信息。
在发明实施例中,该目标对象被矩形框所包围。相同的目标对象在不同帧的输入图像中赋有相同的ID号。
在一些实施例中,参阅图3,步骤S12包括步骤S31至步骤S34。
步骤S31,根据所述当前帧输入图像,得到HSV图像。
步骤S32,根据所述目标跟踪辅助对象的颜色,确定HSV取值范围。
步骤S33,根据所述HSV取值范围二值化所述HSV图像,得到二值图像。
步骤S34,根据所述二值图像,得到所述目标跟踪辅助对象的位置信息。
在本发明实施例中,当前帧输入图像一般为RGB(Red,Green,Blue)图像。HSV(Hue,Saturation,Value)取值范围可以通过目标跟踪辅助对象像素的颜色进行自适应调整。例如目标跟踪辅助对象为蓝色,HSV的取值范围可以设为:HSVMin=[106,100,30],HSVMax=[120,256,255]。根据该HSV取值范围将HSV图像转成二值图像。在二值图像上,白色像素表示与蓝色接近的像素;黑色像素表示非蓝色像素。
在一些实施例中,参阅图4,步骤S34包括步骤S41至步骤S43。
步骤S41,根据所述二值图像,得到连通单元,所述连通单元为连续的相同颜色像素的集合。
步骤S42,根据预设规则,得到关于所述目标跟踪辅助对象的连通单元。
步骤S43,根据关于所述目标跟踪辅助对象的连通单元,得到所述目标跟踪辅助对象的位置信息。
在本发明实施例中,预设规则至少包括下述任一项:连通单元的面积满足一预设范围;和/或扩大连通单元的矩形框后,该矩形框包含目标对象的颜色对应的像素点的个数大于第二预设值。其中该预设范围由目标对象对应的矩形框的面积进行估算;相同的目标跟踪辅助对象在不同帧的输入图像中赋有相同的ID号,通过当前帧中的目标跟踪辅助对象与前一帧中位置信息最接近的目标跟踪辅助对象为同一目标跟踪辅助对象。
步骤S13,当检测到所述目标对象的位置信息时,输出所述目标对象的位置信息。
步骤S14,当未检测到所述目标对象的位置信息时,通过前一帧中所述目标对象与所述目标跟踪辅助对象的相对位置关系以及当前帧输入图象中的所述目标跟踪辅助对象的位置信息,计算所述目标对象的位置信息并输出。
在本发明实施例中,计算前一帧输入图像中的所述目标对象与所述目标跟踪辅助对象的相对位置信息;根据所述相对位置信息,计算所述目标对象与所述目标跟踪辅助对象的距离;当所述距离小于一阈值时,判定所述目标对象与所述目标跟踪辅助对象相关联。避免存在多个目标对象与目标跟踪辅助对象时,目标对象与不对应的目标跟踪辅助对象相关联,造成目标对象运动轨迹检测出现错误。
在一些实施例中,当未检测到所述目标跟踪辅助对象的位置信息时,通过前一帧中所述目标对象与所述目标跟踪辅助对象的相对位置关系以及当前帧输入对象中的所述目标对象的位置信息,计算所述目标跟踪辅助对象的位置信息并输出。
本发明通过上述位置检测方法,在目标对象跟踪失败的情况下,根据目标跟踪辅助对象跟踪结果来估计目标对象位置;在目标跟踪辅助对象跟踪失败的情况下,根据目标对象跟踪结果来估计目标对象位置。一般情况下,目标跟踪辅助对象跟踪非常稳定,不容易失败,能够有效得弥补目标对象跟踪失败的情况。在存在严重运动模糊时,目标对象检测跟踪可能会失败。但目标跟踪辅助对象检测不受运动模糊影响,仍然能够有非常稳定的输出。在偶尔的情况下(目标跟踪辅助对象被目标对象完全遮挡),目标跟踪辅助对象跟踪也会失败。这时,目标对象跟踪能估计出目标跟踪辅助对象的位置。
如图5所示,本发明实施例提供一种位置检测装置,该装置包括获取模块51、检测模块52、第一输出模块53以及第二输出模块54。
获取模块51用于获取当前帧输入图像,所述当前帧输入图像包括目标对象以及与所述目标对象关联的目标跟踪辅助对象。
在本发明实施例中,目标对象与目标跟踪辅助对象一一对应,输入图像中包括至少一个目标对象和目标跟踪辅助对象。
在一些实施例中,目标对象可以为用户的手部、头部或四肢,但不限定于此。目标跟踪辅助对象可以为惯性测量单元(Inertial Measurement Unit,IMU)传感器、腕带或LED环等,但不限于此,其中腕带的颜色以及LED环发出的光的颜色为与周边物体和人体区分度高、计算机容易识别的颜色。
检测模块52用于检测所述当前帧输入图像中的所述目标对象和所述目标跟踪辅助对象的位置信息。
在一些实施例中,针对所述当前帧输入图像中的所有对象,提取所有对象的特征,针对每一对象的特征均与预设的对象特征进行匹配,确定匹配成功的对象为所述目标对象,根据所述目标对象,得到所述目标对象的位置信息。该目标对象被矩形框所包围。相同的目标对象在不同帧的输入图像中赋有相同的ID号。
在一些实施例中,根据所述当前帧输入图像,得到HSV图像,根据所述目标跟踪辅助对象的颜色,确定HSV取值范围,根据所述HSV取值范围二值化所述HSV图像,得到二值图像,根据所述二值图像,得到所述目标跟踪辅助对象的位置信息。
其中,当前帧输入图像一般为RGB(Red,Green,Blue)图像。HSV(Hue,Saturation,Value)取值范围可以通过目标跟踪辅助对象像素的颜色进行自适应调整。例如目标跟踪辅助对象为蓝色,HSV的取值范围可以设为:HSVMin=[106,100,30],HSVMax=[120,256,255]。根据该HSV取值范围将HSV图像转成二值图像。在二值图像上,白色像素表示与蓝色接近的像素;黑色像素表示非蓝色像素。
在一些实施例中,根据所述二值图像,得到连通单元,所述连通单元为连续的相同颜色像素的集合,根据预设规则,得到关于所述目标跟踪辅助对象的连通单元,根据关于所述目标跟踪辅助对象的连通单元,得到所述目标跟踪辅助对象的位置信息。
其中,预设规则至少包括下述任一项:连通单元的面积满足一预设范围;和/或扩大连通单元的矩形框后,该矩形框包含目标对象的颜色对应的像素点的个数大于第二预设值。其中该预设范围由目标对象对应的矩形框的面积进行估算;相同的目标跟踪辅助对象在不同帧的输入图像中赋有相同的ID号,通过当前帧中的目标跟踪辅助对象与前一帧中位置信息最接近的目标跟踪辅助对象为同一目标跟踪辅助对象。
第一输出模块53用于当检测到所述目标对象的位置信息时,输出所述目标对象的位置信息。
第二输出模块54用于当未检测到所述目标对象的位置信息时,通过前一帧中所述目标对象与所述目标跟踪辅助对象的相对位置关系以及当前帧输入图象中的所述目标跟踪辅助对象的位置信息,计算所述目标对象的位置信息并输出。
在本发明实施例中,计算前一帧输入图像中的所述目标对象与所述目标跟踪辅助对象的相对位置信息;根据所述相对位置信息,计算所述目标对象与所述目标跟踪辅助对象的距离;当所述距离小于一阈值时,判定所述目标对象与所述目标跟踪辅助对象相关联。避免存在多个目标对象与目标跟踪辅助对象时,目标对象与不对应的目标跟踪辅助对象相关联,造成目标对象运动轨迹检测出现错误。
在一些实施例中,当未检测到所述目标跟踪辅助对象的位置信息时,通过前一帧中所述目标对象与所述目标跟踪辅助对象的相对位置关系以及当前帧输入对象中的所述目标对象的位置信息,计算所述目标跟踪辅助对象的位置信息并输出。
参阅图6,本发明实施例还提供一种电子设备600,该电子设备600可以是手机、平板以及电脑等设备。如图6所示,电子设备600包括处理器601、存储器602。其中,处理器601与存储器602电性连接。
处理器601是电子设备600的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或加载存储在存储器602内的应用程序,以及调用存储在存储器602内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
在本实施例中,该电子设备600设有多个存储分区,该多个存储分区包括系统分区和目标分区,电子设备600中的处理器601会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能:
获取当前帧输入图像,所述当前帧输入图像包括目标对象以及与所述目标对象关联的目标跟踪辅助对象;
检测所述当前帧输入图像中的所述目标对象和所述目标跟踪辅助对象的位置信息;
当检测到所述目标对象的位置信息时,输出所述目标对象的位置信息;
当未检测到所述目标对象的位置信息时,通过前一帧中所述目标对象与所述目标跟踪辅助对象的相对位置关系以及当前帧输入图象中的所述目标跟踪辅助对象的位置信息,计算所述目标对象的位置信息并输出。
参阅图7,图7示出了本发明实施例提供的电子设备700的具体结构框图,该电子设备700可以用于实施上述实施例中提供的位置检测方法。该电子设备700可以为手机或平板。电子设备700还包括以下部件。
RF电路710用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。RF电路710可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。RF电路710可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(Global System for Mobile Communication,GSM)、增强型移动通信技术(Enhanced DataGSM Environment,EDGE),宽带码分多址技术(Wideband Code Division MultipleAccess,WCDMA),码分多址技术(Code Division Access,CDMA)、时分多址技术(TimeDivision Multiple Access,TDMA),无线保真技术(Wireless Fidelity,Wi-Fi)(如美国电气和电子工程师协会标准IEEE 802.11a,IEEE 802.11b,IEEE802.11g和/或IEEE802.11n)、网络电话(Voice over Internet Protocol,VoIP)、全球微波互联接入(Worldwide Interoperability for Microwave Access,Wi-Max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。
存储器720可用于存储软件程序以及模块,如上述实施例中位置检测方法对应的程序指令/模块,处理器780通过运行存储在存储器720内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现位置检测方法的功能。存储器720可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器720可进一步包括相对于处理器780远程设置的存储器,这些远程存储器可以通过网络连接至电子设备700。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入单元730可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元730可包括触敏表面731以及其他输入设备732。触敏表面731,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面731上或在触敏表面731附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面731可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器780,并能接收处理器780发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面731。除了触敏表面731,输入单元730还可以包括其他输入设备732。具体地,其他输入设备732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元740可用于显示由用户输入的信息或提供给用户的信息以及电子设备700的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元740可包括显示面板741,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板741。进一步的,触敏表面731可覆盖显示面板741,当触敏表面731检测到在其上或附近的触摸操作后,传送给处理器780以确定触摸事件的类型,随后处理器780根据触摸事件的类型在显示面板741上提供相应的视觉输出。虽然在图7中,触敏表面731与显示面板741是作为两个独立的部件来实现输入和输出功能,但是在某些实施例中,可以将触敏表面731与显示面板741集成而实现输入和输出功能。
电子设备700还可包括至少一种传感器750,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板741的亮度,接近传感器可在电子设备700移动到耳边时,关闭显示面板741和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于电子设备700还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路760、扬声器761,传声器762可提供用户与电子设备700之间的音频接口。音频电路760可将接收到的音频数据转换后的电信号,传输到扬声器761,由扬声器761转换为声音信号输出;另一方面,传声器762将收集的声音信号转换为电信号,由音频电路760接收后转换为音频数据,再将音频数据输出处理器780处理后,经RF电路710以发送给比如另一终端,或者将音频数据输出至存储器720以便进一步处理。音频电路760还可能包括耳塞插孔,以提供外设耳机与电子设备700的通信。
电子设备700通过传输模块770(例如Wi-Fi模块)可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了传输模块770,但是可以理解的是,其并不属于电子设备700的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器780是电子设备700的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器720内的软件程序和/或模块,以及调用存储在存储器720内的数据,执行电子设备700的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器780可包括一个或多个处理核心;在一些实施例中,处理器780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器780中。
电子设备700还包括给各个部件供电的电源790(比如电池),在一些实施例中,电源可以通过电源管理系统与处理器780逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源790还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,电子设备700还可以包括摄像头(如前置摄像头、后置摄像头)、蓝牙模块等,在此不再赘述。具体在本实施例中,电子设备的显示单元是触摸屏显示器,电子设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行一个或者一个以上程序包含用于进行以下操作的指令:
获取当前帧输入图像,所述当前帧输入图像包括目标对象以及与所述目标对象关联的目标跟踪辅助对象;
检测所述当前帧输入图像中的所述目标对象和所述目标跟踪辅助对象的位置信息;
当检测到所述目标对象的位置信息时,输出所述目标对象的位置信息;
当未检测到所述目标对象的位置信息时,通过前一帧中所述目标对象与所述目标跟踪辅助对象的相对位置关系以及当前帧输入图象中的所述目标跟踪辅助对象的位置信息,计算所述目标对象的位置信息并输出。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读的可读存储介质中,并由处理器进行加载和执行。为此,本发明实施例提供一种可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种位置检测方法中的步骤。
其中,该可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该可读存储介质中所存储的指令,可以执行本发明实施例所提供的任一种位置检测方法中的步骤,因此,可以实现本发明实施例所提供的任一种位置检测方法所能实现的有益效果,详见前面的实施例,在此不再赘述。以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
本发明的有益效果在于:本发明通过增加目标跟踪辅助对象来检测目标对象的位置信息,实现在各种应用场景下获取稳定精确的目标对象的运动轨迹,提升用户与电子设备进行交互的体验感。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
以上对本发明实施例所提供的一种位置检测方法、系统、可读存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想;本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例的技术方案的范围。