基于视频流的输入方法及装置的制造方法

xiaoxiao2020-10-23  13

基于视频流的输入方法及装置的制造方法
【技术领域】
[0001]本发明涉及输入方法技术领域,具体而言,本发明涉及一种基于视频流的输入方法及装置。
【背景技术】
[0002]随着互联网的快速发展,移动设备的普及,手机、PAD等移动设备成为了多数用户的必需品,而在这些移动设备都需要进行文字的输入操作,进而产生了多种多样的文字输入法及界面,如通过键盘进行拼音输入、手写输入、笔画输入以及语音输入等。而诸如拼音输入、手写输入、笔画输入等方式往往占据了屏幕的相当一部分面积,而语音输入又容易产生错误。虽然现在的移动设备的屏幕越来越大,但其仍然有一定的限制性,而且更大的屏幕尺寸可以给用户带来更高的体验度。如果在进行文字输入的过程中,屏幕被文字输入的界面占据一定面积,甚至遮盖屏幕上显示的一些内容,则会给用户带来极大的不便,大大降低了体验度。

【发明内容】

[0003]本发明的目的旨在解决上述至少一个问题,提供一种基于视频流的输入方法及装置。
[0004]为了实现上述目的,本发明提供一种基于视频流的输入方法,包括以下步骤:
[0005]确定视频流中特定识别区域内的特征部位;
[0006]获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识别,获得与该运动轨迹相匹配的至少一个编码信息;
[0007]显示与所述编码信息相对应的候选字符;
[0008]响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。
[0009]进一步的,该方法还包括前置步骤:启动摄像文字输入模式,控制摄像头驱动程序开启并初始化摄像头,以采集视频流数据。
[0010]优选的,采集视频流数据过程中,基于周边的光线强度确定是否启动闪光灯。
[0011]具体的,所述确定是否启动闪光灯的步骤包括如下具体步骤:
[0012]统计摄像头采集到的帧图像的亮度平均值;
[0013]将上述亮度平均值与预设阈值进行比较;
[0014]若大于预设阈值则判定光线较亮,控制摄像头驱动程序关闭闪光灯;
[0015]若小于预设阈值则判定光线较暗,控制摄像头驱动程序打开闪光灯。
[0016]进一步的,确定所述特征部位的步骤包括如下具体步骤:
[0017]获取含有特征部位的定焦对象的轮廓信息;
[0018]提取纹理特征和/或反光特征以确定特征部位;
[0019]存储提取的纹理特征和/或反光特征以便后续进行对比确定该特征部位。
[0020]优选的,所述定焦对象为手指,且所述特征部位为指甲。
[0021 ] 优选的,仅就在特定识别区域中静置一定时间的定焦对象获取其轮廓信息。
[0022]具体的,所述特定识别区域为摄像头的识别区域。
[0023]进一步的,该方法还包括如下步骤:检测所述特征部位是否处于所述特定识别区域内,当所述特征部位处于所述特定识别区域时,通过用户界面显示第一示警信息;当所述特征部位超出所述特定识别区域时,通过用户界面显示第二示警信息。
[0024]进一步的,获取所述特征部位运动轨迹时,依据定焦对象的成像点的弥散圆大小确定接触点,将该接触点的运动轨迹确定为特征部位的运动轨迹。
[0025]具体的,所述编码信息包括汉字、英文字母、标点符号及控制符号所对应的编码信息。
[0026]具体的,所述获得与该运动轨迹相匹配的至少一个编码信息的过程包括如下步骤:
[0027]提取所述运动轨迹的特征信息;
[0028]从预设的编码信息列表中,查找与所述特征信息相匹配的编码信息;
[0029]其中,所述编码信息列表用于存储编码信息与特征信息之间映射关系数据。
[0030]进一步的,当所述特征部位超出所述特定识别区域时,识别以特征部位超出所述特定识别区域前记录的运动轨迹,获取该运动轨迹对应的编码信息以确定候选字符。
[0031]优选的,显示与所述编码信息相对应的候选字符的步骤中,先行根据运动轨迹与所述候选字符之间的近似度对所述候选字符进行排序。
[0032]进一步的,所述方法还包括如下步骤:接收曲线触控轨迹形成的用户指令,设置所述候选字符的显示区域,以使所述候选字符沿该曲线触控轨迹输出显示。
[0033]具体的,所述基于被选字符更新当前用户界面文本编辑区域的文本内容的步骤中,将所述被选字符添加到该文本编辑区域的光标所在处。
[0034]进一步的,该方法包括如下步骤:通过远程接口更新所述的编码信息列表。
[0035]优选的,该方法执行过程中使所述视频流在用户界面中不可见。
[0036]一种基于视频流的输入装置,包括:
[0037]确定单元:用于确定视频流中特定识别区域内的特征部位;
[0038]识别单元:用于获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识别,获得与该运动轨迹相匹配的至少一个编码信息;
[0039]显示单元:用于显示与所述编码信息相对应的候选字符;
[0040]响应单元:用于响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。
[0041]进一步的,确定单元确定所述特征部位之前,先由采集单元执行以下步骤:
[0042]启动摄像文字输入模式,控制摄像头驱动程序开启并初始化摄像头,以采集视频流数据。
[0043]优选的,采集视频流数据过程中,由所述采集单元基于周边的光线强度确定是否启动闪光灯。
[0044]具体的,所述采集单元执行如下具体步骤以确定是否启动闪光灯:
[0045]统计摄像头采集到的帧图像的亮度平均值;
[0046]将上述亮度平均值与预设阈值进行比较;
[0047]若大于预设阈值则判定光线较亮,控制摄像头驱动程序关闭闪光灯;
[0048]若小于预设阈值则判定光线较暗,控制摄像头驱动程序打开闪光灯。
[0049]具体的,所述确定单元执行如下具体步骤以确定所述特征部位:
[0050]获取含有特征部位的定焦对象的轮廓信息;
[0051]提取纹理特征和/或反光特征以确定特征部位;
[0052]存储提取的纹理特征和/或反光特征以便后续进行对比确定该特征部位。
[0053]优选的,所述定焦对象为手指,且所述特征部位为指甲。
[0054]优选的,仅就在特定识别区域中静置一定时间的定焦对象获取其轮廓信息。
[0055]具体的,所述特定识别区域为摄像头的识别区域。
[0056]进一步的,所述装置还包括检测单元,用于执行以下步骤:
[0057]检测所述特征部位是否处于所述特定识别区域内,当所述特征部位处于所述特定识别区域时,通过用户界面显示第一示警信息;当所述特征部位超出所述特定识别区域时,通过用户界面显示第二示警信息。
[0058]具体的,所述识别单元获取所述特征部位运动轨迹时,依据定焦对象的成像点的弥散圆大小确定接触点,将该接触点的运动轨迹确定为特征部位的运动轨迹。
[0059]具体的,所述编码信息包括汉字、英文字母、标点符号及控制符号所对应的编码信息。
[0060]具体的,所述识别单元通过执行如下步骤获得与该运动轨迹相匹配的至少一个编码?目息:
[0061]提取所述运动轨迹的特征信息;
[0062]从预设的编码信息列表中,查找与所述特征信息相匹配的编码信息;
[0063]其中,所述编码信息列表用于存储编码信息与特征信息之间映射关系数据。
[0064]进一步的,当所述特征部位超出所述特定识别区域时,所述识别单元识别以特征部位超出所述特定识别区域前记录的运动轨迹,获取该运动轨迹对应的编码信息以确定候选字符。
[0065]优选的,所述显示单元先行根据运动轨迹与所述候选字符之间的近似度对所述候选字符进彳T排序。
[0066]进一步的,所述装置还包括设置单元,用于接收曲线触控轨迹形成的用户指令,设置所述候选字符的显示区域,以使所述候选字符沿该曲线触控轨迹输出显示。
[0067]具体的,所述响应单元响应于对所述候选字符的选定指令,将所述被选字符添加到该文本编辑区域的光标所在处,以更新当前用户界面文本编辑区域的文本内容。
[0068]进一步的,所述装置还包括更新单元,用于通过远程接口更新所述的编码信息列表。
[0069]优选的,所述装置使所述视频流在用户界面中不可见。
[0070]相比现有技术,本发明的方案具有以下优点:
[0071]1、基于摄像头采集的视频流数据获取特征部位运动轨迹,通过识别所述运动轨迹确定候选字符,当用户通过在摄像头可识别的特定区域内进行手动书写时,便可实现确定与手动书写的轨迹相匹配的字符,实现用户文本输入,由于摄像头的摄录过程与界面可以无关,用户书写过程也可以脱离屏幕,因而,本发明所述方法相比传统的输入方式,避免出现字符输入键盘占据屏幕空间并遮盖屏幕上大部分显示内容的情况,能够提高用户的体验度。
[0072]2、提供特征 部位或接触点是否超出摄像头识别区域的检测功能,当存在超出摄像头识别区域的情况则在超出区域的相应边界显示第二示警信息,以提醒用户作出调整,避免摄像头获取不到特征部位或接触点的运动轨迹而造成字符的错误识别,从而导致用户重新输入,降低体验度。
[0073]3、检测用户惯常的沿屏幕触控滑动形成的曲线轨迹,将该曲线轨迹设置为候选字符显示区域,将候选字符按照近似度排序沿着所述曲线轨迹显示,便于用户对候选字符进行选择,提高输入效率,增强用户体验度。
[0074]本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
【附图说明】
[0075]本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0076]图1为本发明所述基于视频流的输入方法流程示意图;
[0077]图2为本发明所述基于视频流的输入装置的原理框图;
[0078]图3为本发明实施例所述的移动终端屏幕作为提示界面的示意图。
【具体实施方式】
[0079]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0080]本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0081]本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0082]本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS (Personal Communicat1ns Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA (Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS (Global Posit1ning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
[0083]本技术领域技术人员可以理解,这里所使用的远端网络设备,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。本发明的实施例中,远端网络设备、终端设备与WNS服务器之间可通过任何通信方式实现通信,包括但不限于,基于3GPP、LTE、WIMAX的移动通信、基于TCP/IP、UDP协议的计算机网络通信以及基于蓝牙、红外传输标准的近距无线传输方式。
[0084]参考图1所示,本发明提供一种基于视频流的输入方法,包括以下步骤:
[0085]S101、确定视频流中特定识别区域内的特征部位;
[0086]所述的视频流是通过驱动智能设备的摄像头摄像获得的,因此,在执行本步骤前,先启动摄像头以采集视频流数据,具体通过控制摄像头的驱动程序开启并初始化摄像头,以便采集视频流数据。在初始化摄像头后,移动终端的屏幕上无需有预览界面,由此使采集到的视频流数据不可见。当然,也可以根据情况置于用户界面的某个位置进行显示,其显示的大小可以由用户调整,或者可以由用户选择是否显示所述预览界面。从而避免预览界面占据相当一部分的屏幕空间,但视频流数据依然进行采集。在采集视频流过程中,根据周边的光线强度确定是否启动闪光灯,具体可通过以下的参考方法确定周边的光线强度:
[0087]1.统计摄像头采集到的帧图像的亮度平均值;
[0088]在具体实施例中,获取多帧视频图像中每个像素点的亮度值,即灰度值,计算多帧视频图像的像素点的亮度值的平均值。
[0089]2.将上述亮度平均值与预设阈值进行比较;
[0090]将计算得到的亮度平均值与预设的阈值进行比较,所述预设阈值由摄像头在光线良好的情况下采集的视频图像的亮度平均值确定。
[0091]3.若大于预设阈值则判定光线较亮,控制摄像头驱动程序关闭闪光灯;
[0092]若上述比较的结果为当前多帧视频图像的亮度平均值大于预设阈值,则输入法程序调用摄像头的相关接口,以控制驱动程序关闭闪光灯。
[0093]4.若小于预设阈值则判定光线较暗,控制摄像头驱动程序打开闪光灯。
[0094]若上述比较的结果为当前多帧视频图像的亮度平均值小于预设阈值,则输入法程序调用摄像头的相关接口,以控制驱动程序开启闪光灯。
[0095]本发明实施例中所述确定周围光线强度可以采用其他方法替代,因此上述参考方法不作为对本发明的限定。
[0096]在采集的视频流中捕捉移动目标,对执行书写的对象进行对焦,以确定所述特征部位,所述确定特征部位具体包括以下步骤:
[0097]1.获取含有特征部位的定焦对象的轮廓信息;
[0098]具体可采用混合高斯模型进行背景建模以提取背景图像,将每帧的图像与背景图像做差分,从而获取含有特征部位的定焦对象的轮廓信息。其中,为了更好地判断特征部位,优选地,预先将定焦对象静置一定时间,如3秒,以使摄像头更好地对定焦对象进行聚焦。
[0099]2.提取纹理特征和/或反光特征以确定特征部位;
[0100]由于特征部位的纹理特征和/或反光特征不同于定焦对象的其他部位,故通过提取定焦对象的纹理特征和/或反光特征,将区分度大的部分确定为所述特征部位。由于用户采用手写是最方便的输入操作,且指甲的纹理特征和/或反光特征较佳,故优选的,所述定焦对象为手指,所述特征部位为指甲。
[0101]3.存储提取的纹理特征和/或反光特征以便后续进行对比确定该特征部位。
[0102]将上述提取的纹理特征和/或反光特征进行存储,通过将后续视频图像中提取的特征部位与该存储的标准特征模型匹配,以确认是否为所述特征部位,从而便于后续对特征部位进行跟踪识别。
[0103]可见,所述特征部位在任意物体的表面移动以进行文字书写,在视频流中便会形成相应的运动轨迹。因此,确定特征部位,是实现对所述运动轨迹识别的基础。
[0104]S102、获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识别,获得与该运动轨迹相匹配的至少一个编码信息;
[0105]基于上述确定的特征部位的移动形成的运动轨迹,获取其运动轨迹进行识别以确定用户书写的字符。在对所述特征部位进行跟踪识别的过程中,要确保该特征部位处于摄像头的识别区域,即本发明所述特定识别区域。为此,本发明实时检测所述特征部位是否处于摄像头的识别区域内,当所述特征部位处于摄像头的识别区域内,则通过用户界面显示第一示警信息;当所述特征部位超出摄像头的识别区域时,则通过用户界面显示第二示警信息。
[0106]具体的,参考图3所示,将整个屏幕作为示警信息的用户界面,在屏幕周围的四条边上分别显示ABCD四个点,当连续多帧的视频图像中都能检测到特征部位,则该特征部位处于所述特定识别区域,则屏幕周边的四个点均显示绿色,即第一示警信息,以提示用户进行书写;检测过程中当某一帧视频图像中无法检测到所述特征部位,所述特征部位超出摄像头的识别区域,则确定能够检测到所述特征部位的最后一帧视频图像中所述 特征部位的位置,靠近屏幕的哪个边界,则相应边界的点显示为红色,即第二示警信息,如所述特征部位在可识别的视频图像帧中的位置靠近右边,则屏幕右边的C点显示红色,从而提醒用户超出摄像头右边的识别区域,应停止进行书写操作并调整,以避免错误识别导致用户重新输入,造成体验度不佳。
[0107]在其他实施例中,所述特征部位的运动轨迹也可以由接触点的运动轨迹确定,即将检测视频图像中的接触点,将该接触点的运动轨迹作为所述特征部位的运动轨迹。所述接触点是指定焦对象在输入平面上的接触在焦平面上生成的最清晰的成像点。具体可通过定焦对象的成像点在焦平面上的弥散圆大小确定接触点。其中,所述弥散圆为物点成像时,由于像差使其成像光束不能会聚于一点,在像平面上形成的扩散的圆形投影。弥散圆越大成像越模糊,反之越清晰。由于焦平面锁定后,在焦平面上的点成像最清晰,故可以将每一帧视频图像与其前一帧视频进行对比,确定两帧视频图像的差异部分,并判断该差异部分的清晰度与焦平面的成像清晰度是否一致,通过成像点的弥散圆大小确定各自的清晰度,若相邻两帧视频图像的差异部分的成像点弥散圆与实际焦平面的成像点弥散圆的差异小于10%,则判断该差异部分为接触点。
[0108]在确定接触点之前,先要确保输入平面没有其他物体,且具备良好的平整度。由于先要对输入平面进行预拍摄并锁定焦平面,如果此时输入平面上存在其他物体,则在对输入平面进行预拍摄时,会造成摄像头自动对焦到其他物体上,锁定的焦平面就会有极大误差。故在确定接触点之前需要先确保输入平面平整无杂物,以锁定正确的焦平面。
[0109]在跟踪识别接触点的运动轨迹过程中,也要防止所述接触点超出摄像头识别范围。当接触点超出摄像头的识别范围时,摄像头的成像模糊,就会发送相应的指示信息到智能设备的MCU (微控制单元Microcontroller Unit),MCU会在屏幕的边缘的对应位置显示红点指示用户,所述屏幕边缘的对应位置由能够检测到所述特征部位的最后一帧视频图像中的接触点位置确定。由此,保证摄像头正确获取到接触点的运动轨迹,以避免错误识别导致用户重新输入,造成体验度不佳。
[0110]结合上述本发明提供的约束条件,本领域技术人员即可从视频流中获得本发明所需的运动轨迹。所述获取运动轨迹的方法属于公知技术,在此不再赘述。获取到所述特征部位或接触点的运动轨迹后,基于该运动轨迹进行识别,通过提取所述运动轨迹的相应特征信息进行识别,所述特征信息可以由梯度、角点、Sift特征等进行描述。基于该特征信息与编码信息列表中的编码信息进行匹配,获得与该运动轨迹相匹配的至少一个编码信息。具体过程包括如下步骤:
[0111]1.提取所述运动轨迹的特征信息;
[0112]2.从预设的编码信息列表中,查找与所述特征信息相匹配的编码信息。
[0113]其中,所述编码列表信息用于关联存储编码信息与特征信息之间的映射关系。所述编码信息包括汉字、英文字母、标点符号、控制符合等所对应的编码信息,具体指移动设备可识别的用于表征相应字符的编码信息,如ASCII码值。
[0114]在具体实施例中,预设编码信息列表,首先建立字符与其特征信息之间的关系,具体为汉字与汉字的特征信息之间的对应关系,英文字母与该字母的特征信息之间对应关系,标点符号与其特征信息之间的对应关系,控制符合与其特征信息之间的对应关系。字符与其编码信息之间的对应关系是已知的,进而建立所述字符与其编码信息之间的映射关系。对应于输入法字库的更新,所述编码信息列表由云端服务器通过远程端口自动推送更新,以增加或更新输入法的字符信息。
[0115]在具体实施例中,当用户在输入平面划一个向右的箭头,则查找编码信息列表中记录的该向右划的箭头的特征信息对应的ASCII码值为127,即识别出用户输入的字符为“删除”控制字符,将此时文本编辑区域的光标处的字符删除。同理,当用户在输入平面书写中文逗号,获取到相应的运动轨迹并提取特征信息,查找编码信息列表中记录的该中文逗号的特征信息对应的ASCII码值60,即识别出用户输入的字符为中文逗号的标点字符,将中文逗号显示在当前用户的文本编辑区域的光标处。同理,获取汉字或英文字符的轨迹,并提取相应的特征信息,通过查找编码信息列表确定其编码信息,由移动设备将该编码信息对应的字符显示给用户。
[0116]在对所述特征部位或接触点的运动轨迹进行识别的过程中,实时保存其运动轨迹,并对保存的运动轨迹进行实时识别,一旦存在与编码信息列表中匹配的字符,则显示该字符并将在此之前存储的运动轨迹删除,清空内存中存储的运动轨迹信息,然后重新开始新的轨迹识别过程。当所述特征部位超出摄像头的识别区域或接触点离开焦平面,则保存超出所述识别区域之前记录的运动轨迹信息,并对该存储的运动轨迹进行识别,如果获取的该运动轨迹的编码信息在编码信息列表中存在匹配的字符,则将该字符作为候选字符显示,如果不存在匹配的字符则继续记录新的运动轨迹,并实时识别,直至匹配识别出新的候选字符。由此实现对运动轨迹的识别,获取相应的候选字符,以便后续显示给用户其书写的字符。
[0117]由此可见,本步骤实现了从视频流中获得运动轨迹,对运动轨迹进行字符识别,并获得相应的识别后的编码信息的过程,这个过程在上述本发明的规范之下,可由本领域技术人员轻易实施。
[0118]S103、显示与所述编码信息相对应的候选字符;
[0119]通过编码信息确定所述特征部位形成的运动轨迹对应的字符特征信息,其中所述编码信息与所述字符特征信息之间存在关联性的映射关系。为了最优化显示所述候选字符,根据所述运动轨迹与所述候选字符之间的近似度对候选字符进行排序,相似度高的候选字符排在前面,其中所述相似度由运动轨迹的特征信息与所述候选字符的特征信息之间的匹配度确定。优选排在最前面的相似度最高的候选字符作为基于运动轨迹识别出的正确字符。
[0120]本发明实施中所述显示与编码信息对应的候选字符,以用户的惯常使用习惯进行显示。具体通过检测用户在屏幕上操作时的惯常手势,确定候选字符的显示区域,更进一步地,通常用户握持如智能手机类的掌上设备时,四指一般用于握持机身,大拇指在屏幕上做滑动、触摸、选中等操作,由此为了便于采用大拇指对候选字符进行选择,首先检测用户在屏幕上的曲线触控轨迹,将该曲线轨迹设置为所述候选字符的显示区域,将候选字符沿该曲线的轨迹依次按相似度排序进行显示,便于用户对候选字符进行选择,提高用户体验度。
[0121]通常情况下,匹配度最高的候选字符一般为识别出的正确的用户书写的字符,如果发生错误,则后续匹配度较低的候选字符的正确率也不高,故为了进一步提高用户体验度,可以将匹配度最高的候选字符,即排序第一的候选字符自动更新到当前用户的文本编辑界面,以节省用户选择正确字符的时间,提高输入效率。
[0122]S104、响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。
[0123]所述的选定指令,包括通过选中相关候选字符实现的选定、通过键盘按键或虚拟按键以及通过语音指令实现的选定。
[0124]接收用户对候选字符的选定指令,对该指令进行响应,具体为将被选中的字符更新到当前的用户界面的文本编辑区域。更进一步的,将所述被选定的字符添加到该文本编辑区域的光标所在处,当选中字符为控制符时,如为删除操作符,则将光标所在处之前或之后的单个文本字符删除。
[0125]以Android系统为例,对系统应用程序通过本发明所述输入法进行输入操作的过程做简要说明。具体的,用户在应用程序的文本编辑框中进行输入操作时,首先会选择输入法,应用程序会调用类InputMethodManager的setInputMethod方法,系统调用InputMethod中的bindlnput方法,将用户所选择的输入法与该应用程序绑定,如果存在默认选择的输入法,则无需绑定。此后,系统调用本发明所述输入法中的onCreate方法初始化输入法,调用getCurrentlnputConnect1n方法获取与InputMethod交互的InputConnect1n 对象,调用 InputConnect1n.setComposingText O 将本发明所述输入法识别的由摄像头捕捉获取的运动轨迹对应的字符更新到当前用户界面的文本编辑区域。
[0126]上述以Android系统为例对本发明所述输入法的操作过程做简要示例说明,但这并不能作为对本发明的限制,对应于1S系统、Windows phone等移动终端操作系统也同样适用,本领域技术人员应该知晓基于本发明方法所做出的变通,以应用于不同的操作系统。
[0127]参考图2所示,本发明还提供一种基于视频流的输入装置,包括确定单元11、识别单元12、显示单元13、响应单元14,此外还包括采集单元15、检测单元16、设置单元17,其中,
[0128]确定单元11用于确定视频流中特定识别区域内的特征部位;
[0129]所述的视频流是通过驱动智能设备的摄像头摄像获得的,因此,在执行本步骤前,先启动摄像头以采集视频流数据,具体由本发明装置中的采集单元15控制摄像头的驱动程序开启并初始化摄像头,以便采集视频流数据。在初始化摄像头后,移动终端的屏幕上无需有预览界面,由此使采集到的视频流数据不可见 。当然,也可以根据情况置于用户界面的某个位置进行显示,其显示的大小可以由用户调整,或者可以由用户选择是否显示所述预览界面。从而避免预览界面占据相当一部分的屏幕空间,但视频流数据依然进行采集。在采集视频流过程中,采集单元15根据周边的光线强度确定是否启动闪光灯,通过执行以下步骤确定周边的光线强度:
[0130]1.统计摄像头采集到的帧图像的亮度平均值;
[0131]在具体实施例中,获取多帧视频图像中每个像素点的亮度值,即灰度值,计算多帧视频图像的像素点的亮度值的平均值。
[0132]2.将上述亮度平均值与预设阈值进行比较;
[0133]将计算得到的亮度平均值与预设的阈值进行比较,所述预设阈值由摄像头在光线良好的情况下采集的视频图像的亮度平均值确定。
[0134]3.若大于预设阈值则判定光线较亮,控制摄像头驱动程序关闭闪光灯;
[0135]若上述比较的结果为当前多帧视频图像的亮度平均值大于预设阈值,则输入法程序调用摄像头的相关接口,以控制驱动程序关闭闪光灯。
[0136]4.若小于预设阈值则判定光线较暗,控制摄像头驱动程序打开闪光灯。
[0137]若上述比较的结果为当前多帧视频图像的亮度平均值小于预设阈值,则输入法程序调用摄像头的相关接口,以控制驱动程序开启闪光灯。
[0138]本发明实施例中所述采集单元确定周围光线强度也可以采用其他方法,不作为对本发明的限定。
[0139]确定单元11在采集的视频流中捕捉移动目标,对执行书写的对象进行对焦,以确定所述特征部位,所述确定单元11确定特征部位执行的具体步骤如下:
[0140]1.获取含有特征部位的定焦对象的轮廓信息;
[0141]具体可采用混合高斯模型进行背景建模以提取背景图像,将每帧的图像与背景图像做差分,从而获取含有特征部位的定焦对象的轮廓信息。其中,为了更好地判断特征部位,优选地,预先将定焦对象静置一定时间,如3秒,以使摄像头更好地对定焦对象进行聚焦。
[0142]2.提取纹理特征和/或反光特征以确定特征部位;
[0143]由于特征部位的纹理特征和/或反光特征不同于定焦对象的其他部位,故通过提取定焦对象的纹理特征和/或反光特征,将区分度大的部分确定为所述特征部位。由于用户采用手写是最方便的输入操作,且指甲的纹理特征和/或反光特征较佳,故优选的,所述定焦对象为手指,所述特征部位为指甲。
[0144]3.存储提取的纹理特征和/或反光特征以便后续进行对比确定该特征部位。
[0145]将上述提取的纹理特征和/或反光特征进行存储,通过将后续视频图像中提取的特征部位与该存储的标准特征模型匹配,以确认是否为所述特征部位,从而便于后续对特征部位进行跟踪识别。
[0146]可见,所述特征部位在任意物体的表面移动以进行文字书写,在视频流中便会形成相应的运动轨迹。因此,确定特征部位,是实现对所述运动轨迹识别的基础。
[0147]识别单元12用于获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识别,获得与该运动轨迹相匹配的至少一个编码信息;
[0148]基于上述确定的特征部位的移动形成的运动轨迹,识别单元12获取其运动轨迹进行识别以确定用户书写的字符。在对所述特征部位进行跟踪识别的过程中,要确保该特征部位处于摄像头的识别区域,即本发明所述特定识别区域。此外,本发明还包括检测单元16,由检测单元16实时检测所述特征部位是否处于摄像头的识别区域内,当所述特征部位处于摄像头的识别区域内,则通过用户界面显示第一示警信息;当所述特征部位超出摄像头的识别区域时,则通过用户界面显示第二示警信息。
[0149]具体的,参考图3所示,将整个屏幕作为示警信息的用户界面,在屏幕周围的四条边上分别显示ABCD四个点,当连续多帧的视频图像中都能检测到特征部位,则该特征部位处于所述特定识别区域,则屏幕周边的四个点均显示绿色,即第一示警信息,以提示用户进行书写;在检测单元16检测过程中,当某一帧视频图像中无法检测到所述特征部位,所述特征部位超出摄像头的识别区域,则确定能够检测到所述特征部位的最后一帧视频图像中所述特征部位的位置,靠近屏幕的哪个边界,则相应边界的点显示为红色,即第二示警信息,如所述特征部位在可识别的视频图像帧中的位置靠近右边,则屏幕右边的C点显示红色,从而提醒用户超出摄像头右边的识别区域,应停止进行书写操作并调整,以避免错误识别导致用户重新输入,造成体验度不佳。
[0150]在其他实施例中,所述特征部位的运动轨迹也可以由接触点的运动轨迹确定,即由检测单元16检测的视频图像中的接触点,将该接触点的运动轨迹作为所述特征部位的运动轨迹。所述接触点是指定焦对象在输入平面上的接触在焦平面上生成的最清晰的成像点。具体可通过定焦对象的成像点在焦平面上的弥散圆大小确定接触点。其中,所述弥散圆为物点成像时,由于像差使其成像光束不能会聚于一点,在像平面上形成的扩散的圆形投影。弥散圆越大成像越模糊,反之越清晰。由于焦平面锁定后,在焦平面上的点成像最清晰,故可以将每一帧视频图像与其前一帧视频进行对比,确定两帧视频图像的差异部分,并判断该差异部分的清晰度与焦平面的成像清晰度是否一致,通过成像点的弥散圆大小确定各自的清晰度,若相邻两帧视频图像的差异部分的成像点弥散圆与实际焦平面的成像点弥散圆的差异小于10%,则判断该差异部分为接触点。
[0151]在确定接触点之前,先要确保输入平面没有其他物体,且具备良好的平整度。由于先要对输入平面进行预拍摄并锁定焦平面,如果此时输入平面上存在其他物体,则在对输入平面进行预拍摄时,会造成摄像头自动对焦到其他物体上,锁定的焦平面就会有极大误差。故在确定接触点之前需要先确保输入平面平整无杂物,以锁定正确的焦平面。
[0152]在跟踪识别接触点的运动轨迹过程中,也要防止所述接触点超出摄像头识别范围。当接触点超出摄像头的识别范围时,摄像头的成像模糊,就会发送相应的指示信息到智能设备的MCU (微控制单元Microcontroller Unit),MCU会在屏幕的边缘的对应位置显示红点指示用户,所述屏幕边缘的对应位置由能够检测到所述特征部位的最后一帧视频图像中的接触点位置确定。由此,保证摄像头正确获取到接触点的运动轨迹,以避免错误识别导致用户重新输入,造成体验度不佳。
[0153]结合上述本发明提供的约束条件,本领域技术人员即可从视频流中获得本发明所需的运动轨迹。所述获取运动轨迹的方法属于公知技术,在此不再赘述。所述识别单元12获取到所述特征部位或接触点的运动轨迹后,基于该运动轨迹进行识别,通过提取所述运动轨迹的相应特征信息进行识别,所述特征信息可以由梯度、角点、sift特征等进行描述。基于该特征信息与编码信息列表中的编码信息进行匹配,获得与该运动轨迹相匹配的至少一个编码信息。所述识别单元12具体执行如下步骤:
[0154]1.提取所述运动轨迹的特征信息;
[0155]2.从预设的编码信息列表中,查找与所述特征信息相匹配的编码信息。
[0156]其中,所述编码列表信息用于关联存储编码信息与特征信息之间的映射关系。所述编码信息包括汉字、英文字母、标点符号、控制符合等所对应的编码信息,具体指移动设备可识别的用于表征相应字符的编码信息,如ASCII码值。
[0157]在具体实施例中,预设编码信息列表,首先建立字符与其特征信息之间的关系,具体为汉字与汉字的特征信息之间的对应关系,英文字母与该字母的特征信息之间对应关系,标点符号与其特征信息之间的对应关系,控制符合与其特征信息之间的对应关系。字符与其编码信息之间的对应关系是已知的,进而建立所述字符与其编码信息之间的映射关系。对应于输入法字库的更新,所述编码信息列表由云端服务器通过远程端口自动推送更新,以增加或更新输入法的字符信息。
[0158]在具体实施例中,当用户在输入平面划一个向右的箭头,则查找编码信息列表中记录的该向右划的箭头的特征信息对应的ASCII码值为127,即识别出用户输入的字符为“删除”控制字符,将此时文本编辑区域的光标处的字符删除。同理,当用户在输入平面书写中文逗号,获取到相应的运动轨迹并提取特征信息,查找编码信息列表中记录的该中文逗号的特征信息对应的ASCII码值60,即识别出用户输入的字符为中文逗号的标点字符,将中文逗号显示在当前用户的文本编辑区域的光标处。同理,获取汉字或英文字符的轨迹,并提取相应的特征信息,通过查找编码信息列表确定其编码信息,由移动设备将该编码信息对应的字符显示给用户。
[0159]在对所述特征部位或接触点的运动轨迹进行识别的过程中,识别单元还需要实时保存其运动轨迹,并对保存的运动轨迹进行实时识别,一旦存在与编码信息列表中匹配的字符,则显示该字符并将在此之前存储的运动轨迹删除,清空内存中存储的运动轨迹信息,然后重新开始新的轨迹识别过程。当所述特征部位超出摄像头的识别区域或接触点离开焦平面,则保存超出所述识别区域之前记录的运动轨迹信息,并对该存储的运动轨迹进行识另IJ,如果获取的该运动轨迹的编码信息在编码信息列表中存在匹配的字符,则将该字符作为候选字符显示,如果不存在匹配的字符则继续记录新的运动轨迹,并实时识别,直至匹配识别出新的候选字符。由此实现对运动轨迹的识别,获取 相应的候选字符,以显示给用户其书写的字符。
[0160]由此可见,本发明所述识别单元12实现了从视频流中获得运动轨迹,对运动轨迹进行字符识别,并获得相应的识别后的编码信息的过程,这个过程在上述本发明的规范之下,可由本领域技术人员轻易实施。
[0161]显示单元13用于显示与所述编码信息相对应的候选字符;
[0162]通过编码信息确定所述特征部位形成的运动轨迹对应的字符特征信息,其中所述编码信息与所述字符特征信息之间存在关联性的映射关系。为了最优化显示所述候选字符,根据所述运动轨迹与所述候选字符之间的近似度对候选字符进行排序,相似度高的候选字符排在前面,其中所述相似度由运动轨迹的特征信息与所述候选字符的特征信息之间的匹配度确定。优选排在最前面的相似度最高的候选字符作为基于运动轨迹识别出的正确字符。
[0163]本发明实施中所述显示单元13显示与编码信息对应的候选字符,以用户的惯常使用习惯进行显示。具体通过本发明所述装置的设置单元17预先检测用户在屏幕上操作时的惯常手势,确定用户在屏幕上的惯常触控轨迹,设置该惯常触控轨迹为候选字符的显示区域。更进一步地,通常用户握持如智能手机类的掌上设备时,四指一般用于握持机身,大拇指在屏幕上做滑动、触摸、选中等操作,由此为了便于采用大拇指对候选字符进行选择,首先由设置单元17检测用户在屏幕上的曲线触控轨迹,并将该曲线轨迹设置为所述候选字符的显示区域,然后由显示单元13将候选字符沿该曲线的轨迹依次按相似度排序进行显示,便于用户对候选字符进行选择,提高用户体验度。
[0164]通常情况下,匹配度最高的候选字符一般为识别出的正确的用户书写的字符,如果发生错误,则后续匹配度较低的候选字符的正确率也不高,故为了进一步提高用户体验度,可以将匹配度最高的候选字符,即排序第一的候选字符自动更新到当前用户的文本编辑界面,以节省用户选择正确字符的时间,提高输入效率。
[0165]响应单元14用于响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。
[0166]响应单元14接收用户对候选字符的选定指令,对该指令进行响应,具体为将被选中的字符更新到当前的用户界面的文本编辑区域。更进一步的,将所述被选定的字符添加到该文本编辑区域的光标所在处,当选中字符为控制符时,如为删除操作符,则将光标所在处的单个文本字符删除。
[0167]以Android系统为例,对系统应用程序通过本发明所述输入法进行输入操作的过程做简要说明。具体的,用户在应用程序的文本编辑框中进行输入操作时,首先会选择输入法,应用程序会调用类InputMethodManager的setInputMethod方法,系统调用InputMethod中的bindlnput方法,将用户所选择的输入法与该应用程序绑定,如果存在默认选择的输入法,则无需绑定。此后,系统调用本发明所述输入法中的onCreate方法初始化输入法,调用getCurrentlnputConnect1n方法获取与InputMethod交互的InputConnect1n 对象,调用 InputConnect1n.setComposingText O 将本发明所述输入法识别的由摄像头捕捉获取的运动轨迹对应的字符更新到当前用户界面的文本编辑区域。
[0168]上述以Android系统为例对本发明所述输入法的操作过程做简要示例说明,但这并不能作为对本发明的限制,对应于1S系统、Windowsphone等移动终端操作系统也同样适用,本领域技术人员应该知晓基于本发明方法所作出的变通,以应用于不同的操作系统。
[0169]为了更进一步阐述本发明所述方法,提供如下一个本发明所述方法或装置的实现应用场景。
[0170]在实现了本发明的方法或装置的手机终端中,由当然用户使用的应用程序提供的手机界面,该界面显示一个占据手机终端屏幕大部分面积的文本编辑区域,该应用程序调用本发明所述的方法或装置实现的基于视频流的输入法,启动摄像头以采集用户书写文本的视频流数据。当手机终端屏幕的四个边上均显示绿点时,用户可以开始书写操作。在书写过程中,所述输入法将视频流中的表征用户输入字符的运动轨迹识别为相应的候选字符,并将该候选字符沿着用户手指在屏幕上的惯常触控滑动曲线显示一行,进而接收用户对显示的候选字符的任一字符选定的指令,将该候选字符显示到用户当前的文本编辑区域。且在用户书写的过程中,依照本发明所述实现的输入法对书写的运动轨迹进行实时识别,相应显示的候选字符也在做相应的动态变化。此外,书写过程中若超出了摄像头的识别区域,则在手机终端屏幕的四个边界的一个相应边界显示红点,以提示用户在哪个边界超过了摄像头识别区域。由此,用户就可以基于本发明所述的基于视频流的输入方法或装置完成相应的文本输入操作,且显示的候选字符只占用一行屏幕空间,更大的空间用于显示文本编辑区域,使得用户能更流畅更高效的完成字符输入,提升文字编辑的体验度。
[0171]综上所述,本发明所述基于视频流的输入方法及装置,通过识别摄像头采集的运动轨迹确定用户输入的字符文本,解决了传统键盘输入占据屏幕相当一部分面积造成的体验度不佳的问题,同时提高了输入效率,使用户可以更高效地在移动终端上进行文本编辑操作。
[0172]以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【主权项】
1.一种基于视频流的输入方法,其特征在于,包括以下步骤: 确定视频流中特定识别区域内的特征部位; 获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识别,获得与该运动轨迹相匹配的至少一个编码信息; 显示与所述编码信息相对应的候选字符; 响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。2.根据权利要求1所述的方法,其特征在于,该方法还包括前置步骤:启动摄像文字输入模式,控制摄像头驱动程序开启并初始化摄像头,以采集视频流数据。3.根据权利要求2所述的方法,其特征在于,采集视频流数据过程中,基于周边的光线强度确定是否启动闪光灯。4.根据权利要求3所述的方法,其特征在于,所述确定是否启动闪光灯的步骤包括如下具体步骤: 统计摄像头采集到的帧图像的亮度平均值; 将上述亮度平均值与预设阈值进行比较; 若大于预设阈值则判定光线较亮,控制摄像头驱动程序关闭闪光灯; 若小于预设阈值则判定光线较暗,控制摄像头驱动程序打开闪光灯。5.根据权利要求1所述的方法,其特征在于,确定所述特征部位的步骤包括如下具体步骤: 获取含有特征部位的定焦对象的轮廓信息; 提取纹理特征和/或反光特征以确定特征部位; 存储提取的纹理特征和/或反光特征以便后续进行对比确定该特征部位。6.一种基于视频流的输入装置,其特征在于,包括: 确定单元:用于确定视频流中特定识别区域内的特征部位; 识别单元:用于获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识另O,获得与该运动轨迹相匹配的至少一个编码信息; 显示单元:用于显示与所述编码信息相对应的候选字符; 响应单元:用于响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。7.根据权利要求6所述的装置,其特征在于,确定单元确定所述特征部位之前,先由采集单元执行以下步骤: 启动摄像文字输入模式,控制摄像头驱动程序开启并初始化摄像头,以采集视频流数据。8.根据权利要求6所述的装置,其特征在于,采集视频流数据过程中,由所述采集单元基于周边的光线强度确定是否启动闪光灯。9.根据权利要求8所述的装置,其特征在于,所述采集单元执行如下具体步骤以确定是否启动闪光灯: 统计摄像头采集到的帧图像的亮度平均值; 将上述亮度平均值与预设阈值进行比较; 若大于预设阈值则判定光线较亮,控制摄像头驱动程序关闭闪光灯; 若小于预设阈值则判定光线较暗,控制摄像头驱动程序打开闪光灯。10.根据权利要求6所述的装置,其特征在于,所述确定单元执行如下具体步骤以确定所述特征部位: 获取含有特征部位的定焦对象的轮廓信息; 提取纹理特征和/或反光特征以确定特征部位; 存储提取的纹理特征和/或反光特征以便后续进行对比确定该特征部位。
【专利摘要】本发明提供一种基于视频流的输入方法,具体步骤为:确定视频流中特定识别区域内的特征部位;获取所述特征部位在视频流中的运动轨迹,基于所述运动轨迹进行识别,获得与该运动轨迹相匹配的至少一个编码信息;显示与所述编码信息相对应的候选字符;响应于对所述候选字符的选定指令,基于被选字符更新当前用户界面文本编辑区域的文本内容。同时,本发明还提供一种基于视频流的输入装置,本发明所述方法可以避免字符输入键盘占据屏幕的空间,遮盖屏幕上显示的内容,大大提高用户体验度。
【IPC分类】H04N5/232, G06F3/023, G06F3/0487
【公开号】CN104881149
【申请号】CN201510354200
【发明人】杨贝
【申请人】北京奇虎科技有限公司, 奇智软件(北京)有限公司
【公开日】2015年9月2日
【申请日】2015年6月24日
转载请注明原文地址:https://www.famiwei.com/read-8138918.html

最新回复(0)