CN112540679B - 一种键盘图案投影方法 - Google Patents
一种键盘图案投影方法 Download PDFInfo
- Publication number
- CN112540679B CN112540679B CN202011437100.2A CN202011437100A CN112540679B CN 112540679 B CN112540679 B CN 112540679B CN 202011437100 A CN202011437100 A CN 202011437100A CN 112540679 B CN112540679 B CN 112540679B
- Authority
- CN
- China
- Prior art keywords
- projection
- keyboard
- keyboard pattern
- initial
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/0202—Constructional details or processes of manufacture of the input device
- G06F3/0216—Arrangements for ergonomically adjusting the disposition of keys of a keyboard
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1662—Details related to the integrated keyboard
- G06F1/1664—Arrangements for ergonomically adjusting the disposition of keys of the integrated keyboard
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1662—Details related to the integrated keyboard
- G06F1/1671—Special purpose buttons or auxiliary keyboards, e.g. retractable mini keypads, keypads or buttons that remain accessible at closed laptop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/0202—Constructional details or processes of manufacture of the input device
- G06F3/021—Arrangements integrating additional peripherals in a keyboard, e.g. card or barcode reader, optical scanner
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/0202—Constructional details or processes of manufacture of the input device
- G06F3/0219—Special purpose keyboards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/13—Sensors therefor
- G06V40/1312—Sensors therefor direct reading, e.g. contactless acquisition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Position Input By Displaying (AREA)
Abstract
本发明涉及键盘技术领域,公开一种键盘图案投影方法,键盘图案投影方法包括:确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置,指定投影按键对应用户的指定手指;获取用户的手掌图像,根据手掌图像,识别指定手指;计算指定手指在坐标系的当前位置以及当前位置相对初始按键位置的当前偏移量;根据当前偏移量,调整键盘图案在承载面上的投影位置。本方法能够自动追踪用户手指的位置变化,并根据手指的位置变化,智能调整键盘图案的投影位置,从而使得用户即使调整位置,也可以在新位置进行键盘操作,从而方便用户以及提高用户的体验感。
Description
技术领域
本发明涉及键盘技术领域,具体涉及一种键盘图案投影方法。
背景技术
现有红外激光键盘装置能够投影键盘图案,用户在键盘图案区域操作相应投影按键,红外激光键盘装置采集到用户所按压的投影按键,于是,向笔记本电脑传输相应的按键值,笔记本电脑便可以完成该投影按键的按键值的输入。
当将红外激光键盘放置后,红外激光键盘只能朝着固定方向将键盘图案投影在固定位置上。但是,用户在操作键盘时,有时需要调整位置,为了适应新位置,用户需要再次重新放置红外激光键盘装置,以便红外激光键盘装置投影的键盘图案能够适应新位置,此种方式比较麻烦,效率不高。
发明内容
本发明实施例的一个目的旨在提供一种键盘图案投影方法,其能够智能调整键盘图案的投影位置。
在第一方面,本发明实施例提供一种键盘图案投影方法,应用于键盘投影装置,所述方法包括:
确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置,所述指定投影按键对应用户的指定手指;
获取所述用户的手掌图像,根据所述手掌图像,识别所述指定手指;
计算所述指定手指在所述坐标系的当前位置以及所述当前位置相对所述初始按键位置的当前偏移量;
根据所述当前偏移量,调整键盘图案在承载面上的投影位置。
可选地,所述根据所述当前偏移量,调整键盘图案在承载面上的投影位置包括:
判断所述当前偏移量在预设时长内是否持续大于预设偏移阈值;
若大于,根据所述手掌图像,判断所述承载面是否有边缘线;
若有边缘线,根据所述当前偏移量及所述边缘线,调整所述键盘图案的投影位置;
若没有边缘线,根据所述当前偏移量,调整键盘图案的投影位置,使得所述指定手指处于所述指定投影按键的正上方。
可选地,所述坐标系的原点在所述手掌图像的最左上角,X轴正方向朝向所述手掌图像的右方,Y轴正方向朝向所述手掌图像的下方,所述根据所述当前偏移量及所述边缘线,调整所述键盘图案的投影位置包括:
计算所述边缘线在所述坐标系中的斜率;
根据所述斜率的正负性及所述指定手指在所述坐标系的当前位置,推导所述键盘图案中目标边缘角的坐标;
计算垂线与所述边缘线的交点坐标,所述垂线为过所述目标边缘角作垂直于所述X轴的直线;
根据所述目标边缘角的坐标及所述交点坐标,结合所述当前偏移量,调整所述键盘图案的投影位置。
可选地,所述根据所述目标边缘角的坐标及所述交点坐标,结合所述当前偏移量,调整所述键盘图案的投影位置包括:
计算所述目标边缘角的坐标与所述交点坐标在Y轴方向上的差值;
若所述差值为负,则根据所述当前偏移量,调整所述键盘图案的投影位置,使得所述指定手指处于所述指定投影按键的正上方;
若所述差值为正,则控制所述键盘图案中任一投影按键的Y轴坐标小于所述交点坐标的Y轴坐标。
可选地,所述根据所述斜率的正负性及所述指定手指在所述坐标系的当前位置,推导所述键盘图案中目标边缘角的坐标包括:
判断所述斜率的极性是正还是负;
若是正,选择所述键盘图案中的最右下方边缘角作为目标边缘角;
若是负,选择所述键盘图案中的最左下方边缘角作为目标边缘角;
根据所述指定手指在所述坐标系的当前位置,推导所述键盘图案中目标边缘角的坐标。
可选地,确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置之前,所述方法还包括:确定所述初始键盘图案。
可选地,所述确定所述初始键盘图案包括:
初始上电时,向所述承载面投影键盘图案;
累计用户预设时长内在所述键盘图案连续输入的按键操作次数;
判断所述按键操作次数是否大于或等于预设阈值;
若是,确定所述键盘图案为所述初始键盘图案。
可选地,所述确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置包括:
获取初始键盘图像,所述初始键盘图像包括投影在承载面上的初始键盘图案,所述初始键盘图像配置有所述坐标系;
根据所述初始键盘图像,识别所述初始键盘图案的指定投影按键;
确定所述指定投影按键在所述坐标系的初始投影位置。
可选地,所述根据所述手掌图像,识别所述指定手指包括:
根据图像分析算法,从所述手掌图像中提取各个手指轮廓;
根据所述指定手指在手掌中的排列次序及所述各个手指轮廓,识别所述指定手指。
可选地,所述手掌图像配置有所述坐标系,所述计算所述当前位置相对所述初始按键位置的当前偏移量包括:
根据所述手掌图像,确定所述指定手指在所述坐标系的当前位置;
计算所述当前位置与所述初始投影位置之差,得到当前偏移量,所述偏移量包括分别在X轴和Y轴方向上的偏移量。
在本发明实施例提供的键盘图案投影方法中,首先,确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置,指定投影按键对应用户的指定手指;其次,获取用户的手掌图像;再次,根据手掌图像,识别指定手指,并计算指定手指在坐标系的当前位置相对初始按键位置的当前偏移量;最后,根据当前偏移量,调整键盘图案在承载面上的投影位置,因此,本方法能够自动追踪用户手指的位置变化,并根据手指的位置变化,智能调整键盘图案的投影位置,从而使得用户即使调整位置,也可以在新位置进行键盘操作,从而方便用户以及提高用户的体验感。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1为本发明实施例提供的一种键盘投影装置的正视图;
图2为本发明实施例提供的一种键盘投影装置的电路结构示意图;
图3为本发明实施例提供的一种键盘图案投影方法的流程示意图;
图4为图3所示的S31的流程示意图;
图5为图3所示的S32的流程示意图;
图6为图3所示的S34的流程示意图;
图7为本发明实施例提供的具有边缘线的承载面在坐标系的一种示意图,其中,目标边缘角的坐标与交点坐标在Y轴方向上的差值为负;
图8为本发明实施例提供的具有边缘线的承载面在坐标系的另一种示意图,其中,目标边缘角的坐标与交点坐标在Y轴方向上的差值为正;
图9为本发明实施例提供的一种电子设备的电路结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本发明所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
本发明实施例提供的一种键盘投影装置,请一并参阅图1与图2,键盘投影装置100包括壳体11、键盘图案投射器12、摄像头13、激光器14、传动轴(图未示)、xy轴直线电机模组15、控制器16及无线通信模块17。
壳体11内部设有收容腔,用于收容上述各个部件,其中,壳体11可以被构造成任意形状,例如,长方体状或圆柱状等。壳体11的侧面沿着竖直方向依次开设第一通孔111、第二通孔112及第三通孔113。
键盘图案投射器12收容于壳体11内并与第一通孔111相对,键盘图案投射器12通过第一通孔111向外部环境透射键盘图案,其中,键盘图案可以为任意颜色图案,例如红色键盘图案或蓝色键盘图案等。
摄像头13固定安装于壳体11内并与第二通孔112相对,摄像头13通过第二通孔112拍摄外部环境的环境图像,其中,第二通孔112的面积足以使得摄像头13能够拍摄180度以上的视野范围。在一些实施例中,摄像头13包括单目摄像头或双目摄像头。
激光器14固定安装于壳体11内并与第三通孔113相对,激光器14通过第三通孔113发射平面状的激光,并且,激光器14发射的平面状激光足以覆盖180度以上的视野范围。
传动轴沿竖直方向安装于壳体11内部,其中,键盘图案透射器12固定安装于传动轴一端,传动轴另一端与xy轴直线电机模组15的输出端连接,xy轴直线电机模组15与控制器16电连接,控制器16控制xy轴直线电机模组15工作,xy轴直线电机模组15控制传动轴作X轴或Y轴方向的直线运动,传动轴便带动键盘图案投射器12在第一通孔111内作X轴或Y轴方向的直线运动,从而改变键盘图案投射器12投射的键盘图案的投影位置。
在一些实施例中,xy轴直线电机模组15包括第一步进电机、第一丝杆、第一滑动支座、轴承、第二步进电机、第二丝杆及第二滑动支座,第一步进电机安装于壳体11底部,轴承安装于壳体11底部的内侧面,第一丝杆水平设置,其中,第一步进电机与第一丝杆一端连接,第一丝杆另一端与轴承连接,第一滑动支座套设于第一丝杆并可在第一丝杆上移动。第二步进电机固定安装于第一滑动支座,第二丝杆沿着竖直方向设置,第二滑动支座套设于第二丝杆并可在第二丝杆上移动,键盘图案投射器12固定安装于第二滑动支座。
工作时,第一步进电机驱动第一丝杆转动,第一丝杆带动第一滑动支座,使得第一滑动支座在第一丝杆上作X轴方向的移动。同时,第一滑动支座携带第二步进电机、第二丝杆、第二滑动支座及键盘图案投射器12作X轴方向的移动。
第二步进电机工作,驱动第二丝杆转动,第二丝杆带动第二滑动支座在第二丝杆上作Y轴方向的移动,于是,第二滑动支座带动键盘图案投射器12作Y轴方向的移动。
控制器16分别与键盘图案投射器12、摄像头13、激光器14及无线通信模块17电连接。在本实施例中,键盘投影装置100工作时,控制器16控制键盘图案投射器12投影键盘图案,键盘图案穿过第一通孔111被投影在承载面上。用户在键盘图案中输入按键操作时,激光器14发射的平面状激光被落在投影按键上的手指所阻挡而形成光斑,摄像头13拍摄键盘图案所在位置的投影图像,其中,投影图像包含落在相应投影按键的手指上的光斑图像,于是,控制器16根据图像分析算法,从投影图像中提取出光斑图像及每个光斑图像对应的投影按键。接着,控制器16根据投影按键,确定其按键值,并将按键值通过无线通信模块17传输给电脑,电脑根据按键值,从而完成相关按键的输入操作。
当用户手指移动时,为了使得键盘图案能够跟随用户手指的移动而移动,控制器16执行以下键盘图案投影方法,向xy轴直线电机模组15发送控制指令,xy轴直线电机模组15根据控制指令,控制传动轴作X轴或Y轴方向的直线运动,传动轴便带动键盘图案投射器12在第一通孔111内作X轴或Y轴方向的直线运动,从而改变键盘图案投射器12投射的键盘图案的投影位置。
作为本发明实施例的另一方面,本发明实施例提供一种键盘图案投影方法,应用于键盘投影装置。请参阅图3,键盘图案投影方法S300包括:
S31、确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置,指定投影按键对应用户的指定手指;
在本实施例中,初始键盘图案为用户已连续进行多次按键操作的正式按键图案,一般的,键盘投影装置上电工作时,向承载面投影早期键盘图案,在早期,用户可能调整键盘投影装置的位置,使得早期键盘图案的位置发生变化,以便更加适合用户找到合适位置操作键盘图案。无论用户是否调整键盘投影装置,当用户在键盘图案中连续输入若干按键操作,则说明该键盘图案所在的位置是满足用户的按键需求的,因此,所述按键图案为初始键盘图案。
在一些实施例中,键盘投影装置确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置之前,可以先确定初始键盘图案,举例而言,初始上电时,键盘投影装置向承载面投影键盘图案,累计用户预设时长内在键盘图案连续输入的按键操作次数,判断按键操作次数是否大于或等于预设阈值,若是,确定键盘图案为初始键盘图案,若否,则所述键盘图案不为初始键盘图案,返回继续累计用户预设时长内在键盘图案连续输入的按键操作次数的步骤,例如,用户在2分钟内,在键盘图案A连续输入10次按键操作,预设阈值为10,则键盘投影装置将键盘图案A作为初始键盘图案。
采用此种方式来确定初始键盘图案,其能够可靠稳定地为后续步骤追踪用户手指投影键盘图案创造了良好的基础。
在本实施例中,键盘图案包括若干投影按键,投影按键的位置皆按照标准键盘来布局,投影按键的功能也与标准键盘中对应按键的功能相同,在此不赘述。
在本实施例中,指定投影按键为设计人员根据设计要求从键盘图案中选择的投影按键,一般的,为了更好地跟踪用户的手指位置变化,并且由于用户操作键盘时各个手指也是和相应按键对应的,因此,在本实施例中,可以将指定投影按键与用户的指定手指进行关联,例如,指定投影按键为F键,其对应左手的食指。指定投影按键为J键,其对应右手的食指。指定投影按键为D键,其对应左手的中指。指定投影按键为K键,其对应右手的中指,以此类推。
坐标系由设计人员根据设计要求自行定义,以便描述初始键盘图案在坐标系中的位置。初始投影位置为指定投影按键在坐标系的坐标。
S32、获取用户的手掌图像,根据手掌图像,识别指定手指;
在本实施例中,手掌图像由摄像头拍摄用户在承载面上的手掌而得到,指定手指由设计人员根据设计要求自定义的,如前所述,指定投影按键为F键,指定手指为左手的食指。指定投影按键为J键,指定手指为右手的食指。指定投影按键为D键,指定手指为左手的中指。指定投影按键为K键,指定手指为右手的中指。
S33、计算指定手指在坐标系的当前位置以及当前位置相对初始按键位置的当前偏移量;
在本实施例中,当前位置为指定手指当前在坐标系的位置,由于初始按键位置与指定投影按键对应,指定投影按键对应指定手指,因此,指定手指与初始按键位置对应,当前偏移量为指定手指的当前位置与初始按键位置的差值,其可以评价指定手指在手掌图像的位置偏离初始投影位置的情况。
在一些实施例中,手掌图像配置有坐标系,计算当前位置相对初始按键位置的当前偏移量时,首先,键盘投影装置根据手掌图像,确定指定手指在坐标系的当前位置。其次,键盘投影装置计算当前位置与初始投影位置之差,得到当前偏移量,偏移量包括分别在X轴和Y轴方向上的偏移量。
S34、根据当前偏移量,调整键盘图案在承载面上的投影位置。
在本实施例中,承载面用于接收键盘图案并呈现键盘图案,其中,承载面包括具有边缘的桌面和无边缘的平面,键盘投影装置更多是应用在办公环境,对于实际工作场景,承载面一般都是有边缘的。
在本实施例中,投影位置为键盘图案在承载面上的实际位置。
在一些实施例中,如前所述,当前偏移量包括在X轴上的偏移量Δx以及在Y轴上的偏移量Δy,键盘投影装置根据当前偏移量调整键盘图案在承载面上的投影位置时,可以在初始投影位置的基础上,沿X轴平移Δx距离,沿Y轴平移Δy距离,例如,控制器控制xy轴直线电机模组按照Δx距离,携带键盘图案投射器沿x轴移动相应距离,再控制xy轴直线电机模组按照Δy距离,携带键盘图案投射器沿y轴移动相应距离,从而实现了键盘图案在承载面上投影位置的调整。
因此,本方法能够自动追踪用户手指的位置变化,并根据手指的位置变化,智能调整键盘图案的投影位置,从而使得用户即使调整位置,也可以在新位置进行键盘操作,从而方便用户以及提高用户的体验感。
在一些实施例中,请参阅图4,S31包括:
S311、获取初始键盘图像,初始键盘图像包括投影在承载面上的初始键盘图案,初始键盘图像配置有坐标系;
S312、根据初始键盘图像,识别初始键盘图案的指定投影按键;
S313、确定指定投影按键在坐标系的初始投影位置。
举例而言,当确定初始键盘图案后,键盘投影装置控制摄像头拍摄初始键盘图案所在的环境,得到初始键盘图像。接着,键盘投影装置按照预设规则,在初始键盘图像中自定义坐标系,例如,所述坐标系的原点在所述初始键盘图像的最左上角,X轴正方向朝向所述初始键盘图像的右方,Y轴正方向朝向所述初始键盘图像的下方。再接着,键盘投影装置根据图像分析算法,从初始键盘图像中提取出指定投影按键,于是,键盘投影装置便可以确定指定投影按键在坐标系的初始投影位置。
在一些实施例中,请参阅图5,S32包括:
S321、根据图像分析算法,从手掌图像中提取各个手指轮廓;
S322、根据指定手指在手掌中的排列次序及各个手指轮廓,识别指定手指。
在本实施例中,键盘投影装置从手掌图像中提取各个手指轮廓后,其可以结合指定手指在手掌中的排列次序,识别出指定手指,例如,指定手指为左手中指,于是,键盘投影装置提取出左手的全部手指,从左往右提取出第4个手指为指定手指,或者从右往左提取出第2个手指为指定手指。
在一些实施例中,请参阅图6,S34包括:
S341、判断当前偏移量在预设时长内是否持续大于预设偏移阈值,若是,执行S342,若否,执行S345;
S342、若大于,根据手掌图像,判断承载面是否有边缘线,若是,执行S343,若否,执行S344;
S343、若有边缘线,根据当前偏移量及边缘线,调整键盘图案的投影位置;
S344、若没有边缘线,根据当前偏移量,调整键盘图案的投影位置,使得指定手指处于指定投影按键的正上方。
S345、若不大于,保持键盘图案在承载面上的当前投影位置。
在本实施例中,考虑到指定手指操作按键时的跨键误差以及复位时的少许误差,键盘投影装置需要判断当前偏移量在预设时长内是否持续大于预设偏移阈值,若是持续大于预设偏移阈值,则可以调整键盘图案的投影位置。若不是持续大于预设偏移阈值,则说明之所以出现偏移量,可能是由于指定手指操作按键时的跨键误差或者复位时的少许误差或者手掌瞬间移动至其它地方所引起的,例如,指定手指为左手中指,左手中指由F键跳跃至R键进行操作后,再复位至F键。
在本实施例中,预设时长由用户自定义,例如一分钟或五分钟等等。
在本实施例中,预设偏移阈值包括在X轴方向上的偏移阈值和在Y轴方向上的偏移阈值,预设偏移阈值由用户根据设计需求自定义,例如,在X或Y轴方向上的偏移阈值为5。
通常承载面往往存在边缘,若将键盘图案投影在边缘之外,则会丧失部分投影按键,导致用户无法完全利用上全部投影按键。因此,在一些实施例中,键盘投影装置根据边缘检测算法,从手掌图像中是否可以提取出承载面的边缘线,比如,检测手掌图像是否存在超过预设长度阈值的直线,若存在,则承载面存在边缘线,并将该直线作为边缘线,若不存在,则承载面不存在边缘线。
若存在,键盘投影装置便可以根据当前偏移量及边缘线,调整键盘图案的投影位置,举例而言,坐标系的原点在手掌图像的最左上角,X轴正方向朝向手掌图像的右方,Y轴正方向朝向手掌图像的下方,首先,键盘投影装置计算边缘线在坐标系中的斜率。其次,键盘投影装置根据斜率的正负性及指定手指在坐标系的当前位置,推导键盘图案中目标边缘角的坐标,例如,键盘投影装置判断斜率的极性是正还是负,若是正,选择键盘图案中的最右下方边缘角作为目标边缘角,若是负,选择键盘图案中的最左下方边缘角作为目标边缘角,最后根据指定手指在所述坐标系的当前位置,推导键盘图案中目标边缘角的坐标。
举例而言,在一些实施例中,请参阅图7,承载面位于坐标X0Y中,其中,承载面具有边缘线71,其中,边缘线71在坐标X0Y中的函数为:y=kx+b,由于边缘线71在坐标系X0Y中的斜率k为正斜率,于是键盘投影装置便选择后续需要投影的键盘图案中的最右下方边缘角作为目标边缘角。由于指定手指(x1,y1)在坐标系X0Y的坐标已知,并且,指定手指对应后续需要投影的键盘图案中的指定投影按键,则指定手指的坐标(x1,y1)即为指定投影按键的坐标。对于键盘图案,指定投影按键与最右下方边缘角之间的距离是固定不变的,假设上述两者的距离差值为(Δx0,Δy0),于是,最右下方边缘角的坐标(x2,y2)便可以推导出x2=x1+Δx0,y2=y1+Δy0,从而得到目标边缘角的坐标。
再次,键盘投影装置计算垂线与边缘线的交点坐标,垂线为过目标边缘角作垂直于X轴的直线。
举例而言,如前所述,目标边缘角的坐标为(x2,y2),垂线的函数为x=x2,键盘投影装置根据边缘线71的函数与垂线的函数,计算交点P的交点坐标为(x3,y3)。
最后,键盘投影装置根据目标边缘角的坐标及交点坐标,结合当前偏移量,调整键盘图案的投影位置,举例而言,首先,键盘投影装置计算目标边缘角的坐标与交点坐标在Y轴方向上的差值,若差值为负,则根据当前偏移量,调整键盘图案的投影位置,使得指定手指处于指定投影按键的正上方。若差值为正,则控制键盘图案中任一投影按键的Y轴坐标小于交点坐标的Y轴坐标。
举例而言,如图7所示,差值Δy2=y2-y3,显然,差值Δy2为负,因此,键盘投影装置根据当前偏移量,调整键盘图案的投影位置使得指定手指处于指定投影按键的正上方。
再举例而言,请参阅图8,差值Δy2=y2-y3,显然,差值Δy2为正,若根据当前偏移量调整键盘图案的投影位置,则部分键盘图案投影在边缘之外,则会丧失部分投影按键。因此,本方法控制键盘图案中任一投影按键的Y轴坐标小于交点坐标的Y轴坐标。
采用本方法,其能够保证全部投影按键都出现在承载面,也要尽量满足追踪用户手指的变化而调整键盘图案的投影位置的需求。
需要说明的是,在上述各个实施方式中,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施方式的描述可以理解,不同实施方式中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。
请参阅图9,图9是本发明实施例提供的一种电子设备的电路结构示意图,其中,电子设备可以为任意合适类型的设备或电子产品。如图9所示,电子设备900包括一个或多个处理器91以及存储器92。其中,图9中以一个处理器91为例。
处理器91和存储器92可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器92作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的键盘图案投影方法对应的程序指令/模块。处理器91通过运行存储在存储器92中的非易失性软件程序、指令以及模块,从而执行键盘图案投影装置的各种功能应用以及数据处理,即实现上述方法实施例提供的键盘图案投影方法以及上述装置实施例的各个模块或单元的功能。
存储器92可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器92可选包括相对于处理器91远程设置的存储器,这些远程存储器可以通过网络连接至处理器91。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令/模块存储在所述存储器92中,当被所述一个或者多个处理器91执行时,执行上述任意方法实施例中的键盘图案投影方法。
本发明实施例还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图9中的一个处理器91,可使得上述一个或多个处理器可执行上述任意方法实施例中的键盘图案投影方法。
本发明实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被电子设备执行时,使所述电子设备执行任一项所述的键盘图案投影方法。
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种键盘图案投影方法,应用于键盘投影装置,其特征在于,所述方法包括:
确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置,所述指定投影按键对应用户的指定手指,其中,所述坐标系的原点在手掌图像的最左上角, X轴正方向朝向所述手掌图像的右方,Y轴正方向朝向所述手掌图像的下方;
获取所述用户的手掌图像,根据所述手掌图像,识别所述指定手指;
计算所述指定手指在所述坐标系的当前位置以及所述当前位置相对初始按键位置的当前偏移量;
判断所述当前偏移量在预设时长内是否持续大于预设偏移阈值;
若大于,根据所述手掌图像,判断承载面是否有边缘线;
若有边缘线,计算所述边缘线在所述坐标系中的斜率,根据所述斜率的正负性及所述指定手指在所述坐标系的当前位置,推导所述键盘图案中目标边缘角的坐标,计算垂线与所述边缘线的交点坐标,所述垂线为过所述目标边缘角作垂直于所述X轴的直线,根据所述目标边缘角的坐标及所述交点坐标,结合所述当前偏移量,调整所述键盘图案的投影位置;
若没有边缘线,根据所述当前偏移量,调整键盘图案的投影位置,使得所述指定手指处于所述指定投影按键的正上方。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标边缘角的坐标及所述交点坐标,结合所述当前偏移量,调整所述键盘图案的投影位置包括:
计算所述目标边缘角的坐标与所述交点坐标在Y轴方向上的差值;
若所述差值为负,则根据所述当前偏移量,调整所述键盘图案的投影位置,使得所述指定手指处于所述指定投影按键的正上方;
若所述差值为正,则控制所述键盘图案中任一投影按键的Y轴坐标小于所述交点坐标的Y轴坐标。
3.根据权利要求1所述的方法,其特征在于,所述根据所述斜率的正负性及所述指定手指在所述坐标系的当前位置,推导所述键盘图案中目标边缘角的坐标包括:
判断所述斜率的极性是正还是负;
若是正,选择所述键盘图案中的最右下方边缘角作为目标边缘角;
若是负,选择所述键盘图案中的最左下方边缘角作为目标边缘角;
根据所述指定手指在所述坐标系的当前位置,推导所述键盘图案中目标边缘角的坐标。
4.根据权利要求1至3任一项所述的方法,其特征在于,确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置之前,所述方法还包括:确定所述初始键盘图案。
5.根据权利要求4所述的方法,其特征在于,所述确定所述初始键盘图案包括:
初始上电时,向所述承载面投影键盘图案;
累计用户预设时长内在所述键盘图案连续输入的按键操作次数;
判断所述按键操作次数是否大于或等于预设阈值;
若是,确定所述键盘图案为所述初始键盘图案。
6.根据权利要求1至3任一项所述的方法,其特征在于,所述确定初始键盘图案中指定投影按键在预设的坐标系的初始投影位置包括:
获取初始键盘图像,所述初始键盘图像包括投影在承载面上的初始键盘图案,所述初始键盘图像配置有所述坐标系;
根据所述初始键盘图像,识别所述初始键盘图案的指定投影按键;
确定所述指定投影按键在所述坐标系的初始投影位置。
7.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述手掌图像,识别所述指定手指包括:
根据图像分析算法,从所述手掌图像中提取各个手指轮廓;
根据所述指定手指在手掌中的排列次序及所述各个手指轮廓,识别所述指定手指。
8.根据权利要求1至3任一项所述的方法,其特征在于,所述手掌图像配置有所述坐标系,所述计算所述当前位置相对所述初始按键位置的当前偏移量包括:
根据所述手掌图像,确定所述指定手指在所述坐标系的当前位置;
计算所述当前位置与所述初始投影位置之差,得到当前偏移量,所述偏移量包括分别在X轴和Y轴方向上的偏移量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011437100.2A CN112540679B (zh) | 2020-12-11 | 2020-12-11 | 一种键盘图案投影方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011437100.2A CN112540679B (zh) | 2020-12-11 | 2020-12-11 | 一种键盘图案投影方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112540679A CN112540679A (zh) | 2021-03-23 |
CN112540679B true CN112540679B (zh) | 2023-02-03 |
Family
ID=75019904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011437100.2A Active CN112540679B (zh) | 2020-12-11 | 2020-12-11 | 一种键盘图案投影方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112540679B (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004341813A (ja) * | 2003-05-15 | 2004-12-02 | Casio Comput Co Ltd | 入力装置表示制御方法及び入力装置 |
JP2007219966A (ja) * | 2006-02-20 | 2007-08-30 | Sharp Corp | 投影入力装置、投影入力装置を備えた情報端末及び充電器 |
JP4846871B1 (ja) * | 2010-10-28 | 2011-12-28 | 善博 和田 | キー入力装置、それを備える携帯端末および携帯端末を入力装置として機能させるためのプログラム |
US20130222247A1 (en) * | 2012-02-29 | 2013-08-29 | Eric Liu | Virtual keyboard adjustment based on user input offset |
JP2015535628A (ja) * | 2012-11-27 | 2015-12-14 | トムソン ライセンシングThomson Licensing | 適応的な仮想キーボード |
CN105988634A (zh) * | 2015-03-06 | 2016-10-05 | 纬创资通(中山)有限公司 | 触控装置及判断虚拟键盘按键的方法 |
US11106314B2 (en) * | 2015-04-21 | 2021-08-31 | Dell Products L.P. | Continuous calibration of an information handling system projected user interface |
CN105183242B (zh) * | 2015-10-09 | 2017-11-24 | 卢庆港 | 基于虚拟网格畸变区域识别的虚拟键盘及其控制方法 |
-
2020
- 2020-12-11 CN CN202011437100.2A patent/CN112540679B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112540679A (zh) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105654512B (zh) | 一种目标跟踪方法和装置 | |
US11285624B2 (en) | Object detection device, control device, and object detection computer program | |
CN112652016B (zh) | 点云预测模型的生成方法、位姿估计方法及其装置 | |
CN108323192A (zh) | 手持云台的控制方法和手持云台 | |
KR20160138062A (ko) | 적응적 호모그래피 매핑에 기초한 눈 시선 추적 | |
US20180262660A1 (en) | Method and system for mimicking human camera operation | |
CN103299259A (zh) | 检测装置、输入装置、投影机以及电子设备 | |
CN109213202B (zh) | 基于光学伺服的货物摆放方法、装置、设备和存储介质 | |
EP2946274B1 (en) | Methods and systems for creating swivel views from a handheld device | |
CN111738072A (zh) | 目标检测模型的训练方法、装置及电子设备 | |
US10055011B2 (en) | Interactive system, handheld device remote controller and operating method thereof | |
CN112580582A (zh) | 动作学习方法、装置、介质及电子设备 | |
CN112540679B (zh) | 一种键盘图案投影方法 | |
CN113601510B (zh) | 基于双目视觉的机器人移动控制方法、装置、系统及设备 | |
Zawadzki et al. | Automatically controlled pan–tilt smart camera with FPGA based image analysis system dedicated to real-time tracking of a moving object | |
CN110030467B (zh) | 一种用于摄像组件的安装的方法、装置及设备 | |
CN111068309B (zh) | 虚拟现实游戏的显示控制方法、装置、设备、系统及介质 | |
CN115847384A (zh) | 机械臂安全平面信息显示方法及相关产品 | |
CN109669602B (zh) | 虚拟现实的数据交互方法、装置及系统 | |
CN107340950B (zh) | 一种自动调整菜单界面位置的方法、vr设备及存储介质 | |
JP2021174089A (ja) | 情報処理装置、情報処理システム、情報処理方法およびプログラム | |
US11163379B2 (en) | Illuminating an environment for localisation | |
Alvissalim et al. | Immersive virtual 3D environment based on 499 fps hand gesture interface | |
CN111373732A (zh) | 信息处理装置、信息处理方法和信息处理系统 | |
CN113055599B (zh) | 摄像头的切换方法、装置、电子设备和可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |