本发明属于人机交互,具体涉及一种互动式视力检测方法、装置、系统、设备及存储介质。
背景技术:
1、随着科技越来越发达,电子产品层出不穷,人们每天都会长时间的面对电脑、手机或平板电脑(例如ipad)等,久而久之,视力难免会受到影响。由于平时也没有时间去检查视力,因此人们希望能有一款可在电脑、手机或平板电脑等上运行的智能视力检测软件,可以方便随时随地的对自己的视力情况进行检测,如果发现视力下降还能及时为人们推送护眼资讯或眼部护理方法。
2、目前,在以鼠标、键盘、语音识别和触摸等为基础的人机交互方式的大背景下,主要的智能视力检测方案有如下两种:(1)手动模式,即先设置手机与人之间的距离(这个距离不能太大,一般为50cm左右,如果距离太大,手就无法触碰到手机上的方向按键),然后由用户根据在手机屏幕上看到的字母“e”的开口方向,点击在所述手机屏幕上的且与该开口方向对应的方向按钮,重复此过程,直到在检测结束后,统计得到视力检测结果;(2)语音识别模式,即在手机与人之间的距离设置较远的场景中,用户根据在手机屏幕上看到的字母“e”的开口方向,大声重复地说出该方向,然后由所述手机拾音并语音识别出来,判断是否与真实情况一致,重复此过程,直到在检测结束后,统计得到视力检测结果。
3、但是,上述的两种智能视力检测方案都有如下自身缺陷:手动模式方案会限制手机与人之间的距离在50cm以内,而50cm的距离又太近,不但用户体验差,而且检测结果无法真实反映出用户视力情况;语音识别模式方案虽然使用无距离限制,但是如果周围环境嘈杂,噪音也会被输入,导致语音识别的准确度降低,进而可能影响最终的视力检测结果。因此如何提供一种既不受使用距离限制又能在嘈杂环境中确保视力检测结果准确性的视力检测新方案,是本领域技术人员亟需研究的课题。
技术实现思路
1、本发明的目的是提供一种互动式视力检测方法、装置、系统、计算机设备及计算机可读存储介质,用以解决现有智能视力检测方案所存在手动模式有使用距离限制、用户体验差以及检测结果无法真实反映出用户视力情况,以及语音识别模式在嘈杂环境中难以确保视力检测结果准确性的问题,以便既可以通过人机交互方式进行智能视力检测,也可以通过两个人面对面方式进行智能视力检测,应用场景多样化。
2、为了实现上述目的,本发明采用以下技术方案:
3、第一方面,提供了一种互动式视力检测方法,由分别通信连接扬声器、显示屏和摄像头的处理设备执行,包括:
4、通过所述扬声器发声提醒待测人员用手或手持物遮住自己的左眼或右眼,其中,所述扬声器位于所述待测人员的前方;
5、通过所述显示屏展示开口方向随机的视力检测用字符,其中,所述显示屏位于所述待测人员的前方;
6、通过所述摄像头获取对所述待测人员实时采集的第一现场视频数据,其中,所述摄像头位于所述待测人员的前方;
7、根据所述第一现场视频数据,采用多目标跟踪算法跟踪所述待测人员的各个手部,得到第一手部跟踪结果;
8、针对所述各个手部,根据所述第一手部跟踪结果判断对应手部是否处于运动状态,若是,则将对应手部作为第一目标手部;
9、根据所述第一手部跟踪结果,从所述第一现场视频数据中截取得到所述第一目标手部的外接矩形框的第一框内图像;
10、将所述第一框内图像输入基于神经网络的且已完成预训练的手部关键点检测模型,输出得到所述第一目标手部的多个关键点分别在所述摄像头的相机坐标系中的位置,其中,所述第一目标手部的多个关键点包括有所述第一目标手部的食指根关键点和食指尖关键点;
11、根据所述第一目标手部的食指根关键点和食指尖关键点分别在所述相机坐标系中的位置,判断所述第一目标手部的食指的指向是否与当前展示字符的开口方向一致,若一致,则将针对当前展示字符的测试结果记录为测试正确,否则记录为测试失败;
12、根据多次记录的测试结果,统计得到所述待测人员的未遮眼睛的视力检测结果。
13、基于上述
技术实现要素:
,提供了一种基于手部追踪及手部关键点识别的智能视力检测新方案,即在遮眼进行单眼视力测试的过程中,先通过人前显示屏展示开口方向随机的视力检测用字符,以及通过人前摄像头获取对待测人员实时采集的现场视频数据,然后据此数据依次通过手部追踪、图像截取和手部关键点检测处理,得到食指的指向,并判断该指向是否与当前展示字符的开口方向一致,若一致,则记录测试正确,否则记录测试失败,最后根据多次记录的测试结果,统计得到未遮眼睛的视力检测结果,如此既可不受使用距离限制,实现远距进行视力测试的目的,还可因直观便捷的交互方式提升用户体验,以及还可规避因嘈杂环境所带来的不利影响,最终确保视力检测结果准确性,便于实际应用和推广。
14、在一个可能的设计中,所述多目标跟踪算法采用deepsort目标跟踪算法,其中,所述deepsort目标跟踪算法中的目标检测器采用基于神经网络的且已完成预训练的手掌检测模型。
15、在一个可能的设计中,当所述视力检测用字符采用“e”字母时,根据所述第一目标手部的食指根关键点和食指尖关键点分别在所述相机坐标系中的位置,判断所述第一目标手部的食指的指向是否与当前展示字符的开口方向一致,包括:
16、根据所述第一目标手部的食指根关键点和食指尖关键点分别在所述相机坐标系中的位置,判断从食指根关键点到食指尖关键点的方向是在朝上方向、朝下方向、朝左方向和朝右方向中的哪一种方向,并将判定结果作为所述第一目标手部的食指的指向;
17、判断所述第一目标手部的食指的指向是否与当前展示字符的开口方向一致。
18、在一个可能的设计中,在通过所述扬声器发声提醒待测人员用手或手持物遮住自己的左眼或右眼之前,所述方法还包括:
19、通过所述摄像头获取对所述待测人员实时采集的第二现场视频数据,其中,所述摄像头位于所述待测人员的前方;
20、根据所述第二现场视频数据,采用多目标跟踪算法跟踪所述待测人员的各个手部,得到第二手部跟踪结果;
21、针对所述各个手部,根据所述第二手部跟踪结果判断对应手部是否处于运动状态,若是,则将对应手部作为第二目标手部;
22、根据所述第二手部跟踪结果,从所述第二现场视频数据中截取得到所述第二目标手部的外接矩形框的第二框内图像;
23、将所述第二框内图像输入基于神经网络的且已完成预训练的手部关键点检测模型,输出得到所述第二目标手部的多个关键点分别在所述摄像头的相机坐标系中的位置,其中,所述第二目标手部的多个关键点包括有所述第二目标手部的拇指尖关键点和食指尖关键点;
24、根据所述第二目标手部的拇指尖关键点和食指尖关键点分别在所述相机坐标系中的位置,确定两指尖关键点的直接距离;
25、根据因所述第二目标手部的手指动作而对所述两指尖关键点的直接距离产生的距离增减情况,同步增减测试距离参数,直到因所述待测人员感知到所述测试距离参数达到真实测试距离而停止所述手指动作,其中,所述真实测试距离是指所述待测人员至所述显示屏的真实距离;
26、根据多次记录的测试结果,统计得到所述待测人员的未遮眼睛的视力检测结果,包括:根据所述测试距离参数和多次记录的测试结果,统计得到所述待测人员的未遮眼睛的视力检测结果。
27、在一个可能的设计中,当所述摄像头和所述显示屏集成在所述处理设备的所属电子产品上且位于所述待测人员的正前方时,在根据因所述第二目标手部的手指动作而对所述两指尖关键点的直接距离产生的距离增减情况,同步增减测试距离参数之前,所述方法还包括:
28、根据所述第二现场视频数据,基于目标检测算法得到所述待测人员的头部外接矩形框;
29、从所述第二现场视频数据中截取得到所述头部外接矩形框的框内图像;
30、将所述头部外接矩形框的框内图像输入基于神经网络的且已完成预训练的年龄识别模型,输出得到所述待测人员的年龄;
31、根据所述待测人员的年龄和人体头部尺寸大小与年龄的已知对应关系,确定所述待测人员的真实人体头部尺寸大小;
32、将所述待测人员的真实人体头部尺寸大小与所述头部外接矩形框的尺寸大小的比值输入基于深度学习算法的且已完成训练的距离分类模型,输出得到距离分类结果;
33、将所述距离分类结果作为所述测试距离参数的初始值。
34、在一个可能的设计中,通过所述显示屏展示开口方向随机的视力检测用字符,包括:
35、通过所述摄像头获取对所述待测人员实时采集的第三现场视频数据,其中,所述摄像头位于所述待测人员的前方;
36、根据所述第三现场视频数据,采用多目标跟踪算法跟踪所述待测人员的各个手部,得到第三手部跟踪结果;
37、针对所述各个手部,根据所述第三手部跟踪结果判断对应手部是否处于运动状态,若是,则将对应手部作为第三目标手部;
38、根据所述第三手部跟踪结果,从所述第三现场视频数据中截取得到所述第三目标手部的外接矩形框的第三框内图像;
39、将所述第三框内图像输入基于神经网络的且已完成预训练的手部关键点检测模型,输出得到所述第三目标手部的多个关键点分别在所述摄像头的相机坐标系中的位置,其中,所述第三目标手部的多个关键点包括有所述第三目标手部的食指尖关键点;
40、根据因所述第三目标手部的左右食指滑动而对所述第三目标手部的食指尖关键点在所述相机坐标系中的位置产生的变化情况,选择视力检测用字符的初始展示大小;
41、根据初始展示大小选定结果,在所述显示屏上展示开口方向随机的所述视力检测用字符,其中,所述显示屏位于所述待测人员的前方。
42、第二方面,提供了一种互动式视力检测装置,适用于布置在分别通信连接扬声器、显示屏和摄像头的处理设备中,包括有依次通信连接的发声提醒模块、字符展示模块、视频采集模块、手部追踪模块、目标确定模块、图像截取模块、关键点检测模块、判断记录模块和结果统计模块;
43、所述发声提醒模块,用于通过所述扬声器发声提醒待测人员用手或手持物遮住自己的左眼或右眼,其中,所述扬声器位于所述待测人员的前方;
44、所述字符展示模块,用于通过所述显示屏展示开口方向随机的视力检测用字符,其中,所述显示屏位于所述待测人员的前方;
45、所述视频采集模块,用于通过所述摄像头获取对所述待测人员实时采集的第一现场视频数据,其中,所述摄像头位于所述待测人员的前方;
46、所述手部追踪模块,用于根据所述第一现场视频数据,采用多目标跟踪算法跟踪所述待测人员的各个手部,得到第一手部跟踪结果;
47、所述目标确定模块,用于针对所述各个手部,根据所述第一手部跟踪结果判断对应手部是否处于运动状态,若是,则将对应手部作为第一目标手部;
48、所述图像截取模块,用于根据所述第一手部跟踪结果,从所述第一现场视频数据中截取得到所述第一目标手部的外接矩形框的第一框内图像;
49、所述关键点检测模块,用于将所述第一框内图像输入基于神经网络的且已完成预训练的手部关键点检测模型,输出得到所述第一目标手部的多个关键点分别在所述摄像头的相机坐标系中的位置,其中,所述第一目标手部的多个关键点包括有所述第一目标手部的食指根关键点和食指尖关键点;
50、所述判断记录模块,用于根据所述第一目标手部的食指根关键点和食指尖关键点分别在所述相机坐标系中的位置,判断所述第一目标手部的食指的指向是否与当前展示字符的开口方向一致,若一致,则将针对当前展示字符的测试结果记录为测试正确,否则记录为测试失败;
51、所述结果统计模块,用于根据多次记录的测试结果,统计得到所述待测人员的未遮眼睛的视力检测结果。
52、第三方面,本发明提供了一种互动式视力检测系统,包括有扬声器、显示屏、摄像头和处理设备;
53、所述处理设备,分别通信连接所述扬声器、所述显示屏和所述摄像头,用于执行如第一方面或第一方面中任意可能设计所述的互动式视力检测方法。
54、第四方面,本发明提供了一种计算机设备,包括有依次通信连接的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如第一方面或第一方面中任意可能设计所述的互动式视力检测方法。
55、第五方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面或第一方面中任意可能设计所述的互动式视力检测方法。
56、第六方面,本发明提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面或第一方面中任意可能设计所述的互动式视力检测方法。
57、上述方案的有益效果:
58、(1)本发明创造性提供了一种基于手部追踪及手部关键点识别的智能视力检测新方案,即在遮眼进行单眼视力测试的过程中,先通过人前显示屏展示开口方向随机的视力检测用字符,以及通过人前摄像头获取对待测人员实时采集的现场视频数据,然后据此数据依次通过手部追踪、图像截取和手部关键点检测处理,得到食指的指向,并判断该指向是否与当前展示字符的开口方向一致,若一致,则记录测试正确,否则记录测试失败,最后根据多次记录的测试结果,统计得到未遮眼睛的视力检测结果,如此既可不受使用距离限制,实现远距进行视力测试的目的,还可因直观便捷的交互方式提升用户体验,以及还可规避因嘈杂环境所带来的不利影响,最终确保视力检测结果准确性,便于实际应用和推广;
59、(2)还可基于手部追踪及手部关键点识别来完成测试距离设置,以及基于现场视频数据自动确定测试距离参数的初始值(特别适用于所述摄像头为单目镜头的情况),以便所述待测人员仅需手势微调动作即可将所述测试距离参数设置为真实测试距离,减少用户操作量,进一步利于提升用户体验;
60、(3)还可基于手部追踪及手部关键点识别来完成设置视力检测用字符的展示大小,以及基于现场视频数据自动确定视力检测用字符的最初始展示大小(特别适用于所述摄像头为单目镜头的情况),以便所述待测人员仅需手势微调动作即可设置合适的初始展示大小,减少用户操作量,进一步利于提升用户体验;
61、(4)不但可以通过人机交互方式进行智能视力检测,还可以通过两个人面对面方式进行智能视力检测,应用场景多样化。