本发明涉及台灯及手势识别技术领域,具体而言,涉及一种手势控制台灯的方法及装置。
背景技术:
随着社会的发展,台灯已经越来越多的出现在人们的日常生活中,并且,台灯的功能也越来越多,比如说,现在的台灯可以用来采集图像、播放音频或者视频等,台灯的功能越多,台灯上的控制开关也就越多。
现有技术中,当用户在使用台灯的某种功能或者调整台灯的亮度、声音等参数时,一般需要用户用手去触碰台灯上的按钮开关或者触摸控制开关,但是,有时用户坐的位置可能距离台灯较远,或者用户手上有水或者油渍等,不方便去触碰台灯的开关。
技术实现要素:
有鉴于此,本发明实施例的目的在于提供一种手势控制台灯的方法及装置,以解决现有技术中,采用台灯上的按钮开关或者触摸控制开关,不方便用户控制台灯的问题。
第一方面,本发明实施例提供了一种手势控制台灯的方法,其中,该方法包括:
当台灯处于手势控制模式时,采集用户在所述台灯的图像采集区域做出的至少一个手势的图像;
根据采集的所述图像提取所述用户的手势特征数据;
确定所述用户的手势特征数据对应的台灯控制信号;
根据所述台灯控制信号控制所述台灯执行相应的功能。
结合第一方面,本发明实施例提供了上述第一方面的第一种可能的实现方式,其中,所述确定所述用户的手势特征数据对应的台灯控制信号,包括:
将所述用户的手势特征数据与预先建立的手势特征信息库中的每个手势特征数据进行匹配;
根据匹配结果确定所述用户的手势特征数据对应的台灯控制信号。
结合第一方面的第一种可能的实现方式,本发明实施例提供了上述第一方面的第二种可能的实现方式,其中,所述将所述用户的手势特征数据与预先建立的手势特征信息库中的手势特征数据进行匹配,包括:
计算所述用户的手势特征数据与所述手势特征信息库中的每个手势特征数据之间的欧氏距离;
根据所述欧氏距离确定所述用户的手势特征数据与所述手势特征信息库中的每个手势特征数据的匹配结果。
结合第一方面,本发明实施例提供了上述第一方面的第三种可能的实现方式,其中,所述确定所述用户的手势特征数据对应的台灯控制信号,包括:
将所述用户的手势特征数据与预先建立的手势数据库中的每个手势特征数据进行匹配;
根据匹配结果确定所述用户的手势标识;
根据所述用户的手势标识及预先建立的手势标识数据库,确定所述用户的手势标识对应的台灯控制信号。
结合第一方面,本发明实施例提供了上述第一方面的第四种可能的实现方式,其中,所述根据采集的所述图像提取所述用户的手势特征数据,包括:
获取采集的所述图像的灰度图;
根据所述灰度图上每个像素点的灰度值,对所述灰度图进行至少一次卷积处理,获取所述用户的手势特征数据。
结合第一方面,本发明实施例提供了上述第一方面的第五种可能的实现方式,其中,当所述用户在所述台灯的图像采集区域做出两个手势时,
连续采集所述用户做出的所述手势的图像;
从所述图像中提取所述用户的第一手势特征数据和第二手势特征数据;
确定所述第一手势特征数据和所述第二手势特征数据对应的台灯控制信号。
第二方面,本发明实施例提供了一种手势控制台灯的装置,其中,所述装置包括:
图像采集模块,用于当台灯处于手势控制模式时,采集用户在所述台灯的图像采集区域做出的至少一个手势的图像;
提取模块,用于根据采集的所述图像提取所述用户的手势特征数据;
确定模块,用于确定所述用户的手势特征数据对应的台灯控制信号;
控制模块,用于根据所述台灯控制信号控制所述台灯执行相应的功能。
结合第二方面,本方面实施例提供了上述第二方面的第一种可能的实现方式,其中,所述确定模块包括:
第一匹配单元,用于将所述用户的手势特征数据与预先建立的手势特征信息库中的每个手势特征数据进行匹配;
第一确定单元,用于根据匹配结果确定所述用户的手势特征数据对应的台灯控制信号。
结合第二方面的第一种可能的实现方式,本发明实施例提供了上述第二方面的第二种可能的实现方式,其中,所述第一匹配单元还用于,
计算所述用户的手势特征数据与所述手势特征信息库中的每个手势特征数据之间的欧氏距离;根据所述欧氏距离确定所述用户的手势特征数据与所述手势特征信息库中的每个手势特征数据的匹配结果。
结合第二方面,本发明实施例提供了上述第二方面的第三种可能的实现方式,其中,所述确定模块包括:
第二匹配单元,用于将所述用户的手势特征数据与预先建立的手势数据库中的每个手势特征数据进行匹配;
第二确定单元,用于根据匹配结果确定所述用户的手势标识;
第三确定单元,用于根据所述用户的手势标识及预先建立的手势标识数据库,确定所述用户的手势标识对应的台灯控制信号。
本发明实施例提供了一种手势控制台灯的方法及装置,当台灯处于手势控制模式时,根据对采集的用户的手势进行识别,以控制台灯执行相应的功能,这样,使得用户控制台灯变得很方便。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例1所提供的手势控制台灯的方法的流程图;
图2示出了本发明实施例1所提供的手势控制台灯的方法中确定用户的手势特征数据对应的台灯控制信号的流程图;
图3示出了本发明实施例1所提供的手势控制台灯的方法中第二种确定用户的手势特征数据对应的台灯控制信号的流程图;
图4示出了本发明实施例2所提供的手势控制台灯的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到现有技术中,当用户在使用台灯的某种功能或者调整台灯的亮度、声音等参数时,一般需要用户用手去触碰台灯上的按钮开关或者触摸控制开关,但是,有时用户坐的位置可能距离台灯较远,或者用户手上有水或者油渍等,不方便去触碰台灯的开关。基于此,本发明实施例提供了一种手势控制台灯的方法及装置,下面通过实施例进行描述。
实施例1
本发明实施例提供了一种手势控制台灯的方法,如图1所示,该方法包括步骤S110-S140,具体如下。
S110,当台灯处于手势控制模式时,采集用户在台灯的图像采集区域做出的至少一个手势的图像。
本发明实施例中台灯的控制模式包括手势控制模式和开关控制模式,当用户在使用台灯时,可以根据自己的实际需要,选择台灯的控制模式。
当用户选择台灯的手势控制模式时,台灯上的图像采集设备自动开启,实时或者定期采集用户的手势图像。
上述图像采集设备可以是安装在台灯上的摄像头,该摄像头可以是单目摄像头或者双目摄像头。
当用户需要控制台灯时,比如说,调整台灯的亮度等参数时,用户可以提前做好手势,应将做好的手势置于台灯的图像采集区域,或者将手以预设姿态置于台灯的图像采集区域,并在图像采集区域做出手势,用户做出的手势可以是一个,也可以是多个,台灯上的图像采集设备采集用户的手势,得到用户的手势的图像。
如果用户将做好的手势置于台灯的图像采集区域,并且在图像采集区域不再变换手势,这时,图像采集设备采集到的用户的手势只有一个,如果用户将手以预设姿态置于台灯的图像采集区域,然后在图像采集区域做出一个手势,这时,图像采集设备会采集到用户的初始手势和最终手势,根据用户的初始手势和最终手势确定对应的控制信号,当然,用户还可以在图像采集区域做出多个手势,这时,会根据用户的多个手势确定台灯控制信号,本发明实施例并不对用户在台灯下做出的手势的具体个数进行限定。
S120,根据采集的图像提取用户的手势特征数据。
上述根据采集的图像提取用户的手势特征数据,具体包括:获取采集的图像的灰度图;根据上述灰度图上每个像素点的灰度值,对上述灰度图进行至少一次卷积处理,获取用户的手势特征数据。
图像采集设备采集的手势的图像为彩色图像,因此,首先需要获取采集的彩色图像的灰度图,具体过程包括:获取采集的图像上每个像素点的R、G、B值,根据每个像素点的R、G、B值,采用浮点算法、整数方法、移位方法、平均值法等计算出每个像素点对应的灰度值,将原来图像上每个像素的RGB用灰度值替换,这样,得到原来图像的灰度图。
另外,还可以通过采用电视工业标准转换矩阵将采集的图像转换成灰度图,或者通过HLS(Hue Lightness Saturation,色度、亮度、饱和度)模型转换算法将采集的图像转换成灰度图,本发明实施例并不对获取灰度图的具体方法进行限定。
对上述获取的灰度图可以进行一次卷积运算,也可以进行多次卷积运算,对上述灰度图进行卷积运算的次数越多,得到的手势特征数据越精确。
在对上述灰度图进行卷积处理时,首先需要获取上述灰度图上每个像素点对应的灰度值,得到上述灰度图的灰度矩阵,比如说,上述灰度图的大小为10×10,则获取上述每个像素点对应的灰度值,由该灰度图上每个像素点的灰度值组成的灰度矩阵也是10×10。
对上述灰度图进行卷积运算实质上就是对灰度图的灰度矩阵进行卷积运算,卷积运算的公式如下所示:
其中,在上述公式中,conv表示对灰度矩阵卷积运算后得到的特征数据,σ表示激活函数,imgMat表示灰度矩阵,W表示卷积核,表示卷积操作,b表示偏置值。
上述对灰度矩阵进行卷积运算,实质是在灰度矩阵进行加权平均运算,在上述运算中,卷积核W相当于权值,灰度矩阵imgMat相当于被平均的函数。上述卷积核W也是一个矩阵,矩阵的大小及矩阵中的具体数值可以根据实际应用进行选择,本发明并不对上述卷积核W的具体大小和数值进行限定。
如果选取的卷积核W的大小为3×3,灰度矩阵的大小为10×10,则对灰度矩阵进行一次卷积运算后,卷积后得到的灰度矩阵的大小为(10-3+1)×(10-3+1),即得到8×8的灰度矩阵,将得到的灰度矩阵中的每个元素都加上偏置值b,将得到后的矩阵中的每个元素都输入到激活函数σ中。
上述激活函数σ可以使用如下函数:
在上述公式中,f(x)为对卷积后得到的灰度矩阵中的元素进行激活后的值,x表示卷积后得到的灰度矩阵中的元素。
可以对上述灰度矩阵连续进行多次卷积运算,最终得到灰度图中用户的手势特征数据,上述得到的手势特征数据实质上是一个特征值。
上述对灰度图进行卷积运算的次数与选取的用于卷积运算的卷积核的大小有关系,比如说,上述获取的灰度图的大小为10×10,单位为像素,当选取的用于卷积运算的卷积核的大小为3×3时,对上述灰度图进行一次卷积运算后,得到的灰度图的大小为8×8,再次使用上述卷积核对8×8的灰度图进行卷积处理,得到的灰度图的大小为6×6,连续对上述灰度图进行多次卷积运算,得到上述灰度图中的手势特征数据。
S130,确定用户的手势特征数据对应的台灯控制信号。
其中,确定用户的手势特征数据对应的台灯控制信号具体包括如下两种情况。
第一种情况,直接根据用户的手势特征数据确定出其对应的台灯控制信号,包括步骤S210-S220,具体如下。
S210,将用户的手势特征数据与预先建立的手势特征信息库中的每个手势特征数据进行匹配。
S220,根据匹配结果确定用户的手势特征数据对应的台灯控制信号。
其中,上述手势特征信息库是预先建立的,是在使用本发明实施例提供的方法控制台灯之前就已经建立好的,具体建立的过程包括:采集用户的多种手势图像,提取每种手势图像中的手势特征数据,并定义每种手势特征数据对应的台灯控制信号,比如说,可以定义拳头这一手势对应的手势特征数据对应的是控制音量增大的信号,或者,还可以定义手势由张开状态到握拳这一状态对应控制音量增大信号,具体采用一种手势、还是两种手势、还是多种手势对应一种控制信号,可以根据实际需要进行设置,本发明实施例并不对每种控制信号对应的手势进行限定,上述只是举例进行说明,定义了每种手势特征数据对应的台灯控制信号后,将每种手势特征数据、台灯控制信号,以及手势特征数据和台灯控制信号之间的对应关系存储到手势特征信息库中。
当用户在使用手势控制台灯时,采集用户的手势图像,并提取出手势特征图像对应的手势特征数据后,将用户的手势特征数据与上述手势特征信息库中的每个手势特征数据进行匹配,具体包括:计算用户的手势特征数据与手势特征信息库中的每个手势特征数据之间的欧氏距离;根据上述欧氏距离确定上述用户的手势特征数据与手势特征信息库中的每个手势特征数据的匹配结果。
欧氏距离也称欧几里得度量,是一个常用的距离定义,它表示n维空间中的两个点之间的真实距离,在本发明实施例中,通过计算两个手势特征数据之间的欧氏距离,对用户的手势特征数据进行识别。
欧氏距离的计算如下所示:
假设二维空间中的两个点:A(x1,y1)、B(x2,y2),则二维空间欧氏距离计算公式为:
ρ(A,B)=sqrt[(x1-x2)2+(y1-y2)2]
n维空间是一个点集,点集中每个点P可以表示为(p1,p2…pi),其中,i=1,2,…n,则n维空间中两个点C=(c1,c2,…,ci)和D=(d1,d2,…,di)之间的欧氏距离的计算公式为:
在本发明实施例中,C可以是用户的手势特征数据,D为手势特征信息库中的任意一个手势特征数据,ci用户的手势特征数据中的任意一个特征值,di为手势特征信息数据库中任意一个手势特征数据中的任意特征值。
这样,手势特征信息库中存在多少个手势特征数据就可以计算出多少个欧氏距离,从上述多个欧氏距离中选取最小的欧氏距离,并判断该欧氏距离是否小于或等于预设阈值,如果是,则将该欧氏距离对应的手势特征数据确定为用户的手势特征数据,并且将该手势特征数据对应的台灯控制信号确定为用户的手势特征数据对应的台灯控制信号。
上述预设阈值是预先设定的一个值,当上述计算出的欧氏距离小于或等于该预设阈值时,说明两个手势特征数据匹配。
如果上述最小的欧氏距离大于上述预设阈值,这时,将无法确定用户的手势特征数据对应的台灯控制信号,台灯会发出提示,提示用户该手势无法识别,请再次做出相应的手势。
如果,上述选取的最小的欧氏距离有多个,即出现了几个欧氏距离相等的情况,且是最小的欧氏距离相等,这时,不管最小的欧氏距离是否小于或等于预设阈值,都无法确定出用户的手势特征数据对应的台灯控制信号,台灯会发出提示,提示无法识别当前手势对应的台灯控制信号,请用户再次做出相应的手势。
第二种情况,先根据用户的手势特征数据识别出用户的手势,再根据手势确定其对应的台灯控制信号,包括步骤S310-S330,具体如下。
S310,将用户的手势特征数据与预先建立的手势数据库中的每个手势特征数据进行匹配;
S320,根据匹配结果确定用户的手势标识;
S330,根据用户的手势标识及预先建立的手势标识数据库,确定用户的手势标识对应的台灯控制信号。
上述手势数据库和手势标识数据库都是预先建立好的,在采用本发明实施例提供的方法控制台灯之前,先建立手势数据库和手势标识数据库,其中,在上述手势数据库中,存储有多种手势特征数据、多种手势标识以及手势特征数据和手势标识之间的对应关系。
在上述手势标识数据库中,存储有多种手势标识、台灯控制信号以及手势标识和台灯控制信号之间的对应关系。
其中,手势数据库和手势标识数据库中的手势标识是相同的。
上述手势标识可以是每种手势的名称,也可以是自定义的每种手势特征的编码,当然,还可以是其它的,只要能够区别各种手势并且保证手势标识数据库和手势数据库中的手势标识一致即可。
在本发明实施例中,当提取到用户的手势特征数据后,计算用户的手势特征数据与手势数据库中的每个手势特征数据之间的欧氏距离,根据该欧氏距离确定用户的手势特征数据对应的手势标识。
当确定出用户的手势特征数据对应的标识后,根据该标识从手势标识数据库中查找该手势标识对应的台灯控制信号,将该台灯控制信号确定为用户的手势特征数据对应的台灯控制信号。
用户在台灯的图像采集区域做出的手势可以是一个,比如说,用户将拳头置于台灯的图像采集区域处,做出的手势也可以是两个,比如说,用户做出了一个握拳的动作,这时,可以将用户最初的手掌张开状态以及最终的拳头两个状态确定为用户的手势,即这时用户做出了两个手势,当然,还可以是多个手势,下面将详细介绍用户在台灯的图像采集区域做出两个手势时的工作过程,具体包括:
当用户在台灯的图像采集区域做出两个手势时,连续采集用户做出的手势的图像;从上述图像中提取用户的第一手势特征数据和第二手势特征数据;确定上述第一手势特征数据和第二手势特征数据对应的台灯控制信号。
其中,当用户在台灯下做出两个手势时,这时,采集到的用户的手势的图像包括用户的手势的初态、终态以及用户手势变化过程中的状态,在本发明实施例中,只通过用户的手势的初态和终态就可以确定出用户的手势对应的台灯控制信号,因此,可以从采集的图像中的第一张图像中提取出用户的初态手势特征数据,将用户的初态手势特征数据记为用户的第一手势特征数据,从采集的图像中的最后一帧图像中提取出用户的终态手势特征数据,将用户的终态手势特征数据记为用户的第二手势特征数据,之后由用户的第一手势特征数据和第二手势特征数据共同确定出其对应的台灯控制信号。
S140,根据台灯控制信号控制台灯执行相应的功能。
当找到用户的手势对应的台灯控制信号后,控制台灯执行相应的功能。
除此之外,还可以对用户的手指的滑动轨迹进行识别,在对用户的手指的滑动轨迹进行识别时,连续采集多帧用户的手指滑动轨迹的图像,识别出所述图像中手指之间的位置,由于图像采集设备的采集区域是固定的,不会随着手指的滑动而移动,因此,随着手指的移动,在每帧图像中,手指的位置是不相同的,因此,通过移动图像,使相邻的两帧图像中的手指的指尖重合,找到相邻两帧图像的中心点位置,将相邻两帧图像的中心点之间的连线确定为指尖的滑动轨迹。
因此,在本发明实施例中,也可以通过手指的滑动轨迹控制台灯。
本发明实施例提供的手势控制台灯的方法,当台灯处于手势控制模式时,根据对采集的用户的手势进行识别,以控制台灯执行相应的功能,这样,使得用户控制台灯变得很方便。
实施例2
本发明实施例提供了一种手势控制台灯的装置,该装置可以是控制芯片,比如说,CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)控制芯片,该芯片安装在台灯上,如图4所示,该装置包括图像采集模块410、提取模块420、确定模块430和控制模块440;
上述图像采集模块410,用于当台灯处于手势控制模式时,采集用户在台灯的图像采集区域做出的至少一个手势的图像;
上述提取模块420,用于根据采集的图像提取用户的手势特征数据;
上述确定模块430,用于确定用户的手势特征数据对应的台灯控制信号;
上述控制模块440,用于根据台灯控制信号控制台灯执行相应的功能。
其中,上述确定模块430,确定用户的手势特征数据对应的台灯控制信号可以通过第一匹配单元和第一确定单元实现,具体包括:
上述第一匹配单元,用于将用户的手势特征数据与预先建立的手势特征信息数据库中的每个手势特征数据进行匹配;上述第一确定单元,用于根据匹配结果确定用户的手势特征数据对应的台灯控制信号。
上述第一匹配单元将用户的手势特征数据与预先建立的手势特征信息数据库中的每个手势特征数据进行匹配,具体包括:
上述第一匹配单元还用于,计算上述用户的手势特征数据与手势特征信息库中的每个手势特征数据之间的欧氏距离;根据上述欧氏距离确定上述用户的手势特征数据与手势特征信息库中的每个手势特征数据的匹配结果。
另外,上述确定模块430确定用户的手势特征数据对应的台灯控制信号还可以通过第二匹配单元、第二确定单元和第三确定单元实现,具体包括:
上述第二匹配单元,用于将用户的手势特征数据与预先建立的手势数据库中的每个手势特征数据进行匹配;上述第二确定单元,用于根据匹配结果确定用户的手势标识;上述第三确定单元,用于根据用户的手势标识及预先建立的手势标识数据库,确定用户的手势标识对应的台灯控制信号。
本发明实施例提供的手势控制台灯的方法,当台灯处于手势控制模式时,根据对采集的用户的手势进行识别,以控制台灯执行相应的功能,这样,使得用户控制台灯变得很方便。
本发明实施例所提供的手势控制台灯的装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。