CN112383664B - 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质 - Google Patents

一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质 Download PDF

Info

Publication number
CN112383664B
CN112383664B CN202011103205.4A CN202011103205A CN112383664B CN 112383664 B CN112383664 B CN 112383664B CN 202011103205 A CN202011103205 A CN 202011103205A CN 112383664 B CN112383664 B CN 112383664B
Authority
CN
China
Prior art keywords
terminal device
information
event
screen
position information
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
Application number
CN202011103205.4A
Other languages
English (en)
Other versions
CN112383664A (zh
Inventor
胡昶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202011103205.4A priority Critical patent/CN112383664B/zh
Publication of CN112383664A publication Critical patent/CN112383664A/zh
Application granted granted Critical
Publication of CN112383664B publication Critical patent/CN112383664B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43637Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wireless protocol, e.g. Bluetooth, RF or wireless LAN [IEEE 802.11]

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)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

本申请公开了一种设备控制方法、第一终端设备及第二终端设备,其中,该方法包括:确定第二终端设备的位置信息和第二终端设备的姿态信息;确定第一终端设备的位置信息和第一终端设备的姿态信息;基于第一终端设备的位置信息和第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息,该选择点为第一终端设备在第二终端设备的屏幕所在平面选择的点;检测该选择点对应的第一操作事件;向第二终端设备发送第一信息,该第一信息包括选择点的位置信息和选择点对应的第一操作事件。通过实施本申请的方法,有利于提高对第二终端设备的控制效率。

Description

一种设备控制方法、第一终端设备、第二终端设备及计算机可 读存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种设备控制方法、第一终端设备及第二终端设备。
背景技术
在实际应用中,用户通常需要对终端设备(如电视、电脑、投影设备等)进行控制。例如,以终端设备为电视为例。对电视进行控制的方式通常具有以下两种:
方式一,依旧保持以前的遥控器方式,即按压遥控器的上下左右键来移动光标到指定的按钮上,然后点击遥控器的确定键来表示选中光标所在的按钮。这种操作方式效率低速度慢,一定程度上降低了用户体验。
方式二,将电视的操作界面投影到手机等终端设备上,通过交互命令实现对大屏的控制;但将电视的操作界面投屏到手机界面之后,操作界面中的操作按钮会变的很小,也不利于用户快速地操作。因此,以上两种方式对终端设备进行控制的控制效率较低。
发明内容
本申请提供了一种设备控制方法、第一终端设备及第二终端设备,有利于提高对第二终端设备的控制效率。
第一方面,本申请实施例提供了一种设备控制方法,应用于第一终端设备,该方法包括:确定第二终端设备的位置信息和第二终端设备的姿态信息;确定第一终端设备的位置信息和第一终端设备的姿态信息;基于该第一终端设备的位置信息和第一终端设备的姿态信息、该第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息,该选择点为第一终端设备在第二终端设备的屏幕所在平面选择的点;检测该选择点对应的第一操作事件;向第二终端设备发送第一信息,该第一信息包括该选择点的位置信息和该选择点对应的第一操作事件。
在第一方面所描述的方法中,由于第二终端设备的屏幕所在平面上的选择点的位置信息是基于第一终端设备的位置信息、第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定的。因此,用户可通过手持第一终端设备进行移动,来改变选择点在第二终端设备的屏幕中的位置。可以将第一终端设备看作鼠标,用户通过移动第一终端设备,就能快速地选中第二终端设备的屏幕中的位置。不需要像传统的遥控器一样,通过按压上下左右键来移动第二终端设备的屏幕中选择的位置。因此,基于第一方面所描述的方法,有利于提高对第二终端设备的控制效率。
在一种可能的实现方式中,第一终端设备可以以预设时间为周期来确定第一终端设备的位置信息和第一终端设备的姿态信息,以及以预设时间为周期基于该第一终端设备的位置信息和第一终端设备的姿态信息、该第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息,以及以预设时间为周期检测该选择点对应的第一操作事件,以及以预设时间为周期向第二终端设备发送第一信息。例如,该预设时间为33ms或15ms等。这样用户就可以实时地对第二终端设备的屏幕中的位置进行选择。
在一种可能的实现方式中,第一操作事件为按下事件或抬起事件或无事件,该第一信息还包括该第一操作事件对应的时间戳。按下事件或抬起事件或无事件为基础的操作事件,多个基础的操作事件可以灵活地组成按压操作事件、长按操作事件或滑动操作事件等手势事件。因此,基于该可能的实现方式,有利于提升对第二终端设备进行控制的手势的多样性。
在一种可能的实现方式中,该第一终端设备的位置信息包括在世界坐标系下第一终端设备摄像头的位置信息,该第一终端设备的姿态信息包括在世界坐标系下第一终端设备摄像头所在平面的法线向量。基于这样的第一终端设备的位置信息和第一终端设备的姿态信息来确定选择点的位置信息,有利于提高确定的选择点的位置信息的准确性。
在一种可能的实现方式中,该第二终端设备的位置信息包括在世界坐标系下第二终端设备屏幕的中心位置信息和/或第二终端设备的屏幕的一个或多个顶点的位置信息,该第二终端设备的姿态信息包括在世界坐标系下第二终端设备屏幕的法线向量。基于这样的第二终端设备的位置信息和第二终端设备的姿态信息来确定选择点的位置信息,有利于提高确定的选择点的位置信息的准确性。
在一种可能的实现方式中,该第二终端设备的位置信息包括世界坐标系下的第二终端设备的屏幕的中心位置信息和第二终端设备的屏幕的一个或多个顶点的位置信息,基于第一终端设备的位置信息和第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息的具体实施方式为:第一终端设备基于世界坐标系下的第一终端设备摄像头的位置信息、世界坐标系下的第一终端设备摄像头所在平面的法线向量、世界坐标系下的第二终端设备屏幕的中心位置信息和世界坐标系下的第二终端设备屏幕的法线向量确定选择点在世界坐标系的位置信息;第一终端设备基于世界坐标系下的第二终端设备屏幕的一个或多个顶点的位置信息和选择点在世界坐标系的位置信息确定选择点在平面坐标系的位置信息。其中,该第一信息包括的选择点的位置信息具体为该选择点在平面坐标系的位置信息。基于该可能的实现方式,能够准确地确定选择点的位置信息。
在一种可能的实现方式中,第一终端设备还可启动摄像头,并显示相机预览界面,该相机预览界面包括提示信息,该提示信息用于提示移动该第一终端设备使第二终端设备显示于该相机预览界面中;第一终端设备确定第二终端设备的位置信息和第二终端设备的姿态信息的具体实施方式为:第一终端设备基于摄像头采集的包括第二终端设备的图像确定第二终端设备的位置信息和第二终端设备的姿态信息。基于该可能的实现方式,有利于第一终端设备成功检测到第二终端设备的位置信息和姿态信息。
在一种可能的实现方式中,第一终端设备还可获取该第二终端设备屏幕的目标区域的画面,该目标区域的画面中包括选择点所在的功能按钮;第一终端设备还可显示该目标区域的画面。可选的,该目标区域的画面中包括的功能按钮的尺寸小于预设尺寸。在该可能的实现方式中,通过第一终端设备来显示目标区域的画面,有利于用户更清楚地看见第二终端设备中选择点所选择的功能按钮。
在一种可能的实现方式中,第一终端设备还可接收该第二终端设备发送的文本信息获取请求;第一终端设备还可输出信息输入键盘;第一终端设备还可获取用户通过该信息输入键盘输入的文本信息,并将该文本信息发送至该第二终端设备。在可能的实现方式中,可以通过第一终端设备的键盘在第二终端设备输入文本信息,提高了用户在第二终端设备输入文本信息的便捷性。
在一种可能的实现方式中,当确定选择点位置信息之后,第一终端设备可以判断该选择点是否在第二终端设备的屏幕内。如果该选择点在该第二终端设备的屏幕内,则发送第一信息给第二终端设备,如果该选择点不在该第二终端设备的屏幕内,则提示用户选择点在该第二终端设备的屏幕外。基于该可能的实现方式,保证了向第二终端设备发送的选择点的有效性。
第二方面,本申请实施例提供了一种设备控制方法,应用于第二终端设备,该方法可包括:接收第一终端设备发送的第一信息,该第一信息包括选择点的位置信息和该选择点对应的第一操作事件,该选择点为该第一终端设备在该第二终端设备的屏幕所在平面选择的点;基于该第一信息执行目标操作。基于第二方面所描述的方法,有利于提高对第二终端设备的控制效率。
在一种可能的实现方式中,第一操作事件为按下事件或抬起事件或无事件,该第一信息还包括该第一操作事件对应的时间戳。基于该可能的实现方式,有利于提升对第二终端设备进行控制的手势的多样性。
在一种可能的实现方式中,接收第一终端设备发送的第一信息的具体实现方式为:以预设时间为周期接收第一终端设备发送的第一信息;基于第一信息执行目标操作的具体实现方式为:基于连续多个周期接收的多个第一操作事件和该多个第一操作事件对应的时间戳确定用户在多个选择点输入的第二操作事件;基于该第二操作事件和多个选择点的位置信息执行目标操作。利用多个第一操作事件可以灵活地组合成第二操作事件,因此,基于该可能的实现方式,有利于提升对第二终端设备进行控制的手势的多样性。
在一种可能的实现方式中,该第二操作事件为点击事件或滑动触摸事件或长按事件。
在一种可能的实现方式中,基于第二操作事件和多个第一操作事件对应的多个选择点的位置信息执行目标操作的具体实施方式为:在选中输入框的情况下,若该第二操作事件为滑动触摸事件,则基于多个第一操作事件对应的多个选择点的位置信息确定该滑动触摸事件的轨迹;基于该滑动触摸事件的轨迹确定文本信息,并在所述输入框中输入所述文本信息。基于该可能的实现方式,用户只需按压第一终端设备,并在按压第一终端设备的过程中,手持第一终端设备进行移动,就可在输入框中输入文本信息,这样能够便捷地在第二终端设备的输入框中输入文本信息。
在一种可能的实现方式中,第二终端设备接收第一终端设备发送的第一信息之后,还可基于选择点的位置信息确定该选择点是否处于第二终端设备的屏幕中;若该选择点的位置不在第二终端设备的屏幕内,则提示用户移动该第二终端设备使该选择点的位置在该第二终端设备的屏幕内;若该选择点的位置在该第二终端设备的屏幕内,则执行该基于所述第一信息执行目标操作的步骤。基于该可能的实现方式,选择点的位置不在第二终端设备的屏幕内时,能够及时地提示用户,增加了用户体验。
在一种可能的实现方式中,若选择点的位置在第二终端设备屏幕内,则在该第二终端设备的屏幕中突出显示该选择点所在位置。基于该可能的实现方式,有利于用户观察到选择点所在的位置,以便用户在该选择点上做出控制操作。
在一种可能的实现方式中,若目标操作为选中输入框,则向第一终端设备发送文本信息输入指令;接收该第一终端设备发送的文本信息。基于该可能的实现方式,提高了用户在第二终端设备输入文本信息的便捷性。
在一种可能的实现方式中,基于连续多个周期接收的多个第一操作事件和多个第一操作事件对应的时间戳确定用户在多个选择点输入的第二操作事件的具体实施方式为:若按照时间戳从前到后的顺序,连续三个周期接收的三个第一操作事件依次包括一个无事件/抬起事件、一个按下事件和一个抬起事件,则第二终端设备确定用户在按下事件对应的选择点和抬起事件对应的选择点进行了点击事件。基于该可能的实现方式,能够准确地确定点击事件。
在一种可能的实现方式中,基于连续多个周期接收的多个第一操作事件和多个第一操作事件对应的时间戳确定用户在多个选择点输入的第二操作事件的具体实施方式为:若按照时间戳从前到后的顺序,连续多个周期接收的多个第一操作事件依次包括多个按下事件和一个抬起事件,则第二终端设备确定用户在该多个第一操作事件对应的选择点进行了连续触摸事件。如果该多个第一操作事件对应的选择点的位置信息不相同或该多个第一操作事件对应的任意两个选择点之间的距离大于预设值,则该连续触摸事件为滑动触摸事件;如果该多个第一操作事件对应的选择点的位置信息相同或该多个第一操作事件对应的任意两个选择点之间的距离小于预设值,则该连续触摸事件为长按事件。基于该可能的实现方式,能够准确地确定滑动触摸事件或长按事件。
第三方面,本申请实施例提供了一种第一终端设备,第一终端设备包括存储器和至少一个处理器;存储器与一个或多个处理器耦合,存储用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得第一终端设备执行如第一方面或第一方面下的任意一种可能的实现方式所描述的方法。
第四方面,本申请实施例提供了一种第二终端设备,第二终端设备包括存储器和至少一个处理器;存储器与一个或多个处理器耦合,存储用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得第二终端设备执行如第二方面或第二方面下的任意一种可能的实现方式所描述的方法。
第五方面,本申请实施例提供了一种计算机存储介质,包括计算机指令,当计算机指令在第一终端设备上运行时,使得第一终端设备执行如第一方面或第一方面下的任意一种可能的实现方式所描述的方法。
第六方面,本申请实施例提供了一种计算机存储介质,包括计算机指令,当计算机指令在第二终端设备上运行时,使得第二终端设备执行如第二方面或第二方面下的任意一种可能的实现方式所描述的方法。
第七方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面或第一方面下的任意一种可能的实现方式所描述的方法。
第八方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第二方面或第二方面下的任意一种可能的实现方式所描述的方法。
附图说明
图1是本申请实施例提供的一种***架构的示意图;
图2是本申请实施例提供的第一终端设备100的结构示意图;
图3是本申请实施例提供的第一终端设备100的软件结构框图;
图4是本申请实施例提供的第二终端设备200的结构示意图;
图5是本申请实施例提供的一种设备控制方法的流程示意图;
图6是本申请实施例提供的一种终端设备的位置信息和终端设备的姿态信息的示意图;
图7是本申请实施例提供的一种设置界面的示意图;
图8是本申请实施例提供的一种终端设备的位置信息、终端设备的姿态信息和选择点的示意图;
图9是本申请实施例提供的一种平面坐标系nc的示意图;
图10是本申请实施例提供的一种文本输入界面的示意图;
图11是本申请实施例提供的另一种设备控制方法的流程示意图;
图12是本申请实施例提供的一种相机预览界面的示意图;
图13是本申请实施例提供的一种按压区域和提示区域的示意图;
图14是本申请实施例提供的另一种平面坐标系nc的示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
为了提高对第二终端设备的控制效率,本申请实施例提供了一种设备控制方法、第一终端设备及第二终端设备。为了更好地理解本申请实施例提供的设备控制方法,下面先对该设备控制方法应用的***架构进行介绍。
请参阅图1,图1是本申请实施例提供的一种***架构的示意图。***架构10包括第一终端设备100和第二终端设备200。图1以***架构10包括一个第一终端设备100和一个第二终端设备200为例。当然***架构10还可包括多个第一终端设备100和多个第二终端设备 200,本申请实施例不做限定。
其中,第一终端设备100可以为手机、平板电脑、遥控器或具备无线通讯功能的可穿戴电子设备(如智能手表、AR眼镜)等等。第二终端设备200可以为具有显示屏幕的终端设备,第二终端设备200可以是大屏设备,如电视或投影仪等。或者,第二终端设备200也可以为屏幕较小的设备,如智能手机或平板电脑等。第一终端设备100用于对第二终端设备200进行控制。第一终端设备100可通过蓝牙、WIFI或其他通信方式对第二终端设备200进行控制。
下面对第一终端设备100的结构进行介绍。请参阅图2,图2是本申请实施例提供的第一终端设备100的结构示意图。
第一终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池 142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器 192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM) 卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器 180M等。
可以理解的是,本发明实施例示意的结构并不构成对第一终端设备100的具体限定。在本申请另一些实施例中,第一终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是第一终端设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110 中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S) 接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块 (subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现第一终端设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM接口通信。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等***器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface, DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现第一终端设备 100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现第一终端设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S 接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为第一终端设备100充电,也可以用于第一终端设备100与***设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对第一终端设备100的结构限定。在本申请另一些实施例中,第一终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块 141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
第一终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。第一终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线 1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在第一终端设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在第一终端设备100上的包括无线局域网(wireless local area networks,WLAN)(如Wi-Fi网络),蓝牙(bluetooth,BT),BLE广播,全球导航卫星***(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,第一终端设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得第一终端设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯***(global system for mobilecommunications, GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband codedivision multiple access,WCDMA),时分码分多址(time-division code divisionmultiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位***(global positioning system,GPS),全球导航卫星***(global navigation satellite system,GLONASS),北斗卫星导航***(beidou navigation satellite system,BDS),准天顶卫星***(quasi-zenithsatellite system,QZSS)和/或星基增强***(satellite based augmentation systems,SBAS)。
第一终端设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed, Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,第一终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
第一终端设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体 (complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,第一终端设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当第一终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。第一终端设备100可以支持一种或多种视频编解码器。这样,第一终端设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现第一终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展第一终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行第一终端设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储第一终端设备100使用过程中所创建的数据(比如音频数据,电话本等) 等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
第一终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110 中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。第一终端设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当第一终端设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。第一终端设备100可以设置至少一个麦克风170C。在另一些实施例中,第一终端设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,第一终端设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm 的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。
陀螺仪传感器180B可以用于确定第一终端设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定第一终端设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,第一终端设备100通过气压传感器 180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。第一终端设备100可以利用磁传感器180D检测翻盖皮套的开合。
加速度传感器180E可检测第一终端设备100在各个方向上(一般为三轴)加速度的大小。当第一终端设备100静止时可检测出重力的大小及方向。还可以用于识别终端设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。第一终端设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,第一终端设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。第一终端设备100通过发光二极管向外发射红外光。第一终端设备100使用光电二极管检测来自附近物体的红外反射光,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。第一终端设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测第一终端设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。第一终端设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,第一终端设备100利用温度传感器180J 检测的温度,执行温度处理策略。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于第一终端设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。第一终端设备100可以接收按键输入,产生与第一终端设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过***SIM卡接口195,或从SIM卡接口195拔出,实现和第一终端设备100的接触和分离。第一终端设备100可以支持1个或N 个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡, SIM卡等。同一个SIM卡接口195可以同时***多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。第一终端设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,第一终端设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在第一终端设备 100中,不能和第一终端设备100分离。
第一终端设备100的软件***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android***为例,示例性说明第一终端设备100 的软件结构。图3是本申请实施例的第一终端设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时 (Android runtime)和***库,以及内核层。
应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供第一终端设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
本申请实施例中,第二终端设备200的结构可以与第一终端设备100的结构相同,或者,第二终端设备200的结构只包括第一终端设备100的部分元件。例如,请参阅图4,图4是本申请实施例提供的一种第二终端设备200的结构示意图。如图4所示,第二终端设备200可以包括:处理器201、存储器202、无线通信模块203、显示屏204、电源205。
其中,存储器202可以用于存储应用程序代码,处理器201执行这些应用程序代码以使得第二终端设备200执行本发明实施例中的方法。关于处理器201、存储器202、无线通信模块203、显示屏204和电源205的其他描述可参见上述对第一终端设备100中的处理器、存储器、无线通信模块、显示屏和电源的描述,在此不赘述。
可以理解的是,本申请实施例图4示意的结构并不构成对第二终端设备200的具体限定。第二终端设备200可以具有比图4中所示出的更多的或者更少的部件。
第二终端设备200的软件***可以与第一终端设备100的软件***相同或者不同。例如,第二终端设备200包括应用程序层、应用程序框架层,安卓运行时、***库和内核层中的全部或部分。
下面对本申请实施例提供的设备控制方法、第一终端设备和第二终端设备进一步进行详细描述:
请参见图5,图5是本申请实施例提供的一种设备控制方法的流程示意图。图5所示的方法执行主语可以为第一终端设备和第二终端设备,或主语可以为第一终端设备中的芯片和第二终端设备中的芯片。图5以第一终端设备和第二终端设备为方法的执行主体为例进行说明。本申请实施例的其他附图所示的设备控制方法的执行主语同理,后文不再赘述。图5所示的设备控制方法包括步骤501~步骤506。其中:
501、第一终端设备确定第二终端设备的位置信息和第二终端设备的姿态信息。
其中,第一终端设备可通过同时定位与建图(simultaneous localization andmapping,SLAM) 算法和3D(三维)物体识别算法来确定第二终端设备的位置信息和第二终端设备的姿态信息。 SLAM也称为即时定位与地图构建(concurrent mapping andlocalization,CML),或并发建图与定位。SLAM算法是AR技术的一个重要分支,主要用于确定并跟踪终端设备在当前环境中的相对位置。当SLAM算法启动时,会首先建立一个临时的世界坐标***,该坐标***与真实的尺度是一致的,即该世界坐标系下的1米同真实世界中的1米是一致的。当终端设备移动时,SLAM算法可以持续确定其在临时世界坐标***中的位置和姿态(朝向)。3D物体识别技术可以通过人工智能(artificial intelligence,AI)在视频或者相机预览流中实时识别出指定的3D物体,与SLAM技术相结合,可以实时识别并跟踪3D物体在真实环境中的位置。当然第一终端设备也可通过其他算法来确定第二终端设备的位置信息和第二终端设备的姿态信息,本申请实施例不做限定。例如,第一终端设备可通过碰撞检测算法来确定第二终端设备的位置信息和第二终端设备的姿态信息。
在一种可能的实现中,第二终端设备的位置信息包括世界坐标系下的第二终端设备屏幕的中心位置信息和/或第二终端设备屏幕的一个或多个顶点的位置信息,第二终端设备的姿态信息包括世界坐标系下的第二终端设备屏幕的法线向量。后续基于这样的第二终端设备的位置信息和第二终端设备的姿态信息来确定选择点的位置信息,有利于提高确定的选择点的位置信息的准确性。例如,如图6所示,第一终端设备可以通过SLAM算法自定义一个世界坐标系ωc,第二终端设备的位置信息包括世界坐标系ωc下第二终端设备屏幕的中心位置坐标 pbs、世界坐标系ωc下第二终端设备屏幕的上下左右四个顶点的坐标cbs0、cbs1、cbs2、cbs3。第二终端设备的姿态信息包括世界坐标系ωc下第二终端设备屏幕的法线向量qbs
在另一种可能的实现中,第二终端设备的位置信息也可以是第二终端设备屏幕的任意一个位置在世界坐标系下的坐标,第二终端设备的姿态信息也可以是在该世界坐标系下第二终端设备的任意一个平面的法线向量,本申请实施例不做限定。
502、第一终端设备确定第一终端设备的位置信息和第一终端设备的姿态信息。
本申请实施例中,步骤501和步骤502的执行顺序不做限定。可以先执行步骤501,再执行步骤502,或者,可以先执行步骤502,再执行步骤501,或者,步骤501和步骤502可以同时执行。
本申请实施例中,第一终端设备可以以预设时间为周期来执行步骤502~步骤505。例如,预设时间可以大于或等于1毫秒,且小于或等于50毫秒。第一终端设备可以只在初始阶段确定第二终端设备的位置信息和第二终端设备的姿态信息,无需以预设时间为周期来确定第二终端设备的位置信息和第二终端设备的姿态信息。例如,如果第二终端设备为大屏设备,第二终端设备的位置通常不会移动,那么第一终端设备无需以预设时间为周期来确定第二终端设备的位置信息和第二终端设备的姿态信息。当然如果第二终端设备的位置可能随时移动,那么第一终端设备也可以以预设时间为周期来确定第二终端设备的位置信息和第二终端设备的姿态信息。
本申请实施例中,第一终端设备可通过SLAM算法来确定第一终端设备的位置信息和第一终端设备的姿态信息。当然第一终端设备也可通过其他算法来确定第一终端设备的位置信息和第一终端设备的姿态信息,本申请实施例不做限定。
本申请实施例中,第一终端设备的位置信息、第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息在同一个世界坐标系下。
在一种可能的实现中,第一终端设备的位置信息包括世界坐标系下第一终端设备摄像头的位置信息,第一终端设备的姿态信息包括世界坐标系下第一终端设备摄像头所在平面的法线向量。例如,如图6所示,在时间n,第一终端设备的位置信息为世界坐标系ωc下的第一终端设备摄像头的坐标pn,第一终端设备的姿态信息为世界坐标系ωc下的第一终端设备摄像头所在平面的法线向量qn
在另一种可能的实现中,第一终端设备的位置信息也可以是第一终端设备屏幕的任意一个位置在世界坐标系下的坐标,第二终端设备的姿态信息也可以是在该世界坐标系下第一终端设备的任意一个平面的法线向量,本申请实施例不做限定。
在一种可能的实现中,第一终端设备和第二终端设备可以预先建立连接,并在建立连接之后,执行步骤501和步骤502。
在一种可能的实现中,当第一终端设备检测到用户开启设备控制开关的操作时,第一终端设备执行步骤501和步骤502。当第一终端设备检测到用户关闭设备控制开关的操作时,第一终端设备可以停止执行步骤501和步骤502。例如,图7为第一终端设备的设置界面的示意图,如图7所示,第一终端设备的设置界面中包括设备控制开关701。当第一终端设备检测到用户对设备控制开关701的点击或向右滑动操作时,第一终端设备开始执行步骤501 和步骤502。后续,在第一终端设备又检测到用户对设备控制开关701的点击或向左滑动操作时,第一终端设备停止执行步骤501和步骤502。
在另一种可能的实现中,第一终端设备中安装有用于控制其他终端设备的控制应用。第一终端设备启动该控制应用之后,可以在控制应用中选择需要控制的第二终端设备,然后再执行步骤501和步骤502。当检测到用户关闭该控制应用时停止执行步骤501和步骤502。
503、第一终端设备基于第一终端设备的位置信息、第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息,该选择点为第一终端设备在第二终端设备的屏幕所在平面选择的点。
本申请实施例中,可以认为选择点是以第一终端设备上的某个位置为起始点的一条射线与第二终端设备的屏幕所在平面的交点。该射线可以以第一终端设备的摄像头位置为起始点,且射线方向与第一终端设备摄像头所在平面的法线方向相同。或者,射线方向也可以与第一终端设备摄像头所在平面的法线方向存在一定角度的偏差。例如,如图8所示,图8以射线方向与第一终端设备摄像头所在平面的法线方向相同为例。
在一种可能的实现中,第二终端设备的位置信息包括世界坐标系下的第二终端设备屏幕的中心位置信息和第二终端设备屏幕的一个或多个顶点的位置信息,第二终端设备的姿态信息包括世界坐标系下的第二终端设备屏幕的法线向量。第一终端设备的位置信息包括世界坐标系下第一终端设备摄像头的位置信息,第一终端设备的姿态信息包括世界坐标系下第一终端设备摄像头所在平面的法线向量。第一终端设备基于第一终端设备的位置信息和第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息的具体实现方式可以为:第一终端设备基于世界坐标系下的第一终端设备摄像头的位置信息、世界坐标系下的第一终端设备摄像头所在平面的法线向量、世界坐标系下的第二终端设备屏幕的中心位置信息和世界坐标系下的第二终端设备屏幕的法线向量确定选择点在世界坐标系的位置信息;第一终端设备基于世界坐标系下的第二终端设备屏幕的一个或多个顶点的位置信息和选择点在世界坐标系的位置信息确定选择点在平面坐标系的位置信息;步骤505 中的第一信息包括的选择点的位置信息具体为选择点在平面坐标系的位置信息。
举例来说,如图8所示,假设世界坐标系为ωc。在时间n时,第一终端设备的位置信息为世界坐标系ωc下的第一终端设备摄像头的坐标pn,第一终端设备的姿态信息为世界坐标系ωc下第一终端设备摄像头所在平面的法线向量qn。第二终端设备的位置信息包括世界坐标系ωc下第二终端设备屏幕的中心位置坐标pbs、世界坐标系ωc下第二终端设备屏幕的上下左右四个顶点的坐标cbs0、cbs1、cbs2、cbs3。第二终端设备的姿态信息包括世界坐标系ωc下第二终端设备屏幕的法线向量qbs
在时间n时,选择点是以第一终端设备上的摄像头的坐标pn为起始点的一条射线与第二终端设备的屏幕所在平面的交点。该射线的方向信息与第一终端设备摄像头的法线向量qn相同。假设在时间n时,选择点在世界坐标系ωc下的坐标为in。in的计算需求解如下方程组:
Figure BDA0002726095590000151
其中,公式(1)是射线的参数方程;公式(2)是第二终端设备屏幕所在平面的参数方程,公式(2)中·是点积运算。
Figure BDA0002726095590000152
in=pn+mqn
如图9所示,假设以第二终端设备屏幕左上角顶点cbs0为原点,建立第二终端设备的屏幕所在平面的平面坐标系nc,在世界坐标系ωc第二终端设备屏幕的四个顶点的坐标分别为cbs0、 cbs1、cbs2、cbs3。选择点在nc下的坐标为(xin,yin),其中:
Figure BDA0002726095590000153
第一终端设备确定在时间n时选择点在平面坐标系nc下的坐标(xin,yin)之后,将坐标 (xin,yin)和在时间n检测到的第一操作事件一起发送至第二终端设备。
504、第一终端设备检测选择点对应的第一操作事件。
本申请实施例中,步骤504和步骤503可以同时执行。选择点对应的第一操作事件是指第一终端设备确定选择点时,检测到的用户在第一终端设备输入的第一操作事件。可以将选择点对应的第一操作事件理解为用户在选择点执行的第一操作事件。
在一种可能的实现中,第一操作事件可以为按下事件或抬起事件或无事件。或者,第一操作事件也可以为点击事件或无事件。例如,第一终端设备在时间n确定了选择点的位置信息(xin,yin),并在时间n检测到用户在第一终端设备输入按下事件,则在时间n的选择点对应按下事件。在步骤505中,第一终端设备向第二终端设备发送第一信息,该第一信息包括选择点的位置信息(xin,yin)和按下事件。
505、第一终端设备向第二终端设备发送第一信息,该第一信息包括选择点的位置信息和选择点对应的第一操作事件。
506、第二终端设备基于第一信息执行目标操作。
本申请实施例中,第二终端设备接收第一信息之后,基于第一信息执行目标操作。可选的,第二终端设备可以以预设时间为周期来接收第一信息。其中,该目标操作可以是播放、暂停、快进、快退、播放上一集、播放下一集、播放上一首歌、播放下一首歌、增加音量、减小音量、向下翻页、向上翻页或选择输入框或输入文本信息等。
在一种可能的实现中,如果第一操作事件是点击事件,则第二终端设备可基于当前周期接收的点击事件和选择点的位置信息执行目标操作。例如,如果选择点的位置信息在播放功能按钮上,则第二终端设备播放多媒体文件。
在另一种可能的实现中,如果第一操作事件是按下事件或抬起事件或无事件,则第二终端设备需要基于连续多个周期接收的第一信息来执行目标操作。
在一种可能的实现中,如果第一操作事件为按下事件或抬起事件或无事件,该第一信息还包括第一操作事件对应的时间戳。第一操作事件对应的时间戳为检测到第一操作事件的时间。例如,第一终端设备在时间n确定了选择点的位置信息(xin,yin),并在时间n检测到用户在第一终端设备输入按下事件,则第一信息包括选择点的位置信息(xin,yin)、按下事件和时间 n。
在一种可能的实现中,第一操作事件为按下事件或抬起事件或无事件,该第一信息还包括第一操作事件对应的时间戳。第二终端设备基于第一信息执行目标操作的具体实施方式为:第二终端设备基于连续多个周期接收的多个第一操作事件和该多个第一操作事件对应的时间戳,确定用户在多个选择点输入的第二操作事件;第二终端设备基于第二操作事件和该多个选择点的位置信息执行目标操作。可选的,第二操作事件为点击事件或滑动触摸事件或长按事件。或者,第二操作事件还可以是其他事件,本申请实施例不做限定。利用多个第一操作事件可以灵活地组合成第二操作事件,因此,基于该可能的实现方式,有利于提升对第二终端设备进行控制的手势的多样性。
例如,如下表1所示,若按照时间戳从前到后的顺序,连续三个周期接收的三个第一操作事件依次包括一个无事件/抬起事件、一个按下事件和一个抬起事件,则第二终端设备确定用户在按下事件对应的选择点和抬起事件对应的选择点进行了点击事件。第二终端设备基于点击事件、按下事件对应的选择点的位置信息、抬起事件对应的选择点的位置信息执行目标操作。
再如,如下表1所示,若按照时间戳从前到后的顺序,连续多个周期接收的多个第一操作事件依次包括多个按下事件和一个抬起事件,则第二终端设备确定用户在该多个第一操作事件对应的选择点进行了连续触摸事件。如果该多个第一操作事件对应的选择点的位置信息不相同或该多个第一操作事件对应的任意两个选择点之间的距离大于预设值,则该连续触摸事件为滑动触摸事件;如果该多个第一操作事件对应的选择点的位置信息相同或该多个第一操作事件对应的任意两个选择点之间的距离小于预设值,则该连续触摸事件为长按事件。第二终端设备基于连续触摸事件、该多个第一操作事件对应的选择点的位置信息执行目标操作。可选的,第二终端设备可基于该多个第一操作事件对应的选择点的位置信息记录连续触摸事件的触摸轨迹,这样后续第二终端设备就可基于连续触摸事件、连续触摸事件的触摸轨迹执行目标操作。例如,对于下表1中的第二行,第二终端设备记录连续触摸事件的触摸轨迹为 (xin,yin),(xin+Δt,yin+Δt),…。对于下表1中的第三行,第二终端设备记录连续触摸事件的触摸轨迹为…,(xin-Δt,yin-Δt),(xin,yin)。
表1
Figure BDA0002726095590000161
Figure BDA0002726095590000171
在一种可能的实现中,第二终端设备基于第二操作事件和多个第一操作事件对应的多个选择点的位置信息执行目标操作的具体实现方式为:在选中输入框的情况下,若第二操作事件为滑动触摸事件,则第二终端设备基于多个第一操作事件对应的多个选择点的位置信息确定该滑动触摸事件的轨迹,并基于滑动触摸事件的轨迹确定文本信息,并在所述输入框中输入该文本信息。可选的,文本信息可以为文字或符号或数字或字母等。基于该可能的实现方式,用户只需按压第一终端设备,并在按压第一终端设备的过程中,手持第一终端设备进行移动,就可在第二终端设备中输入滑动触摸事件,该滑动触摸事件的轨迹根据第一终端设备移动的轨迹确定。例如,如果第一终端设备移动的轨迹为“O”形,则该滑动触摸事件的轨迹为“O”形。第二终端设备基于滑动触摸操作的轨迹就可在输入框中输入文本信息。例如,如果滑动触摸事件的轨迹为“O”形,则第二终端设备可在输入框中输入字母“O”。也就是说,基于该可能的实现方式,用户只需按压第一终端设备,并在按压第一终端设备的过程中,手持第一终端设备进行移动,就可在输入框中输入文本信息,这样能够便捷地在第二终端设备的输入框中输入文本信息。
下面以一个实际的示例对图5所描述的方案进一步进行说明:
第一终端设备和第二终端设备之间先建立连接。第一终端设备和第二终端设备建立连接之后,如图7所示,用户可以在第一终端设备开启设备控制开关701。第一终端设备开启设备控制开关701之后,第一终端设备启动摄像头,并通过SLAM算法和3D物体识别算法开始初始化第二终端设备的位置信息和第二终端设备的姿态信息。由于电视机的位置通常不会移动,所以第一终端设备只需要计算一次第二终端设备的位置信息和第二终端设备的姿态信息即可。例如,如图8所示,第一终端设备确定出第二终端设备的位置信息包括世界坐标系ωc下第二终端设备屏幕的中心位置坐标pbs、世界坐标系ωc下第二终端设备屏幕的上下左右四个顶点的坐标cbs0、cbs1、cbs2、cbs3。第二终端设备的姿态信息包括世界坐标系ωc下第二终端设备屏幕的法线向量qbs
第一终端设备还通过SLAM算法以Δt为时间周期计算第一终端设备的位置信息和第二终端设备的姿态信息。例如,在时间n-Δt时,第一终端设备确定第一终端设备的位置信息为世界坐标系ωc下的第一终端设备摄像头的坐标pn-Δt,第一终端设备的姿态信息为世界坐标系ωc下第一终端设备摄像头所在平面的法线向量qn-Δt。第一终端设备基于第二终端设备屏幕的中心位置坐标pbs,第二终端设备屏幕的上下左右四个顶点的坐标cbs0、cbs1、cbs2、cbs3,第二终端设备屏幕的法线向量qbs、第一终端设备摄像头的坐标pn-Δt和第一终端设备摄像头所在平面的法线向量qn-Δt,确定时间n-Δt时的选择点1在第二终端设备的屏幕所在平面的平面坐标(xin-Δt,yin-Δt)。第一终端设备在时间n-Δt检测到第一操作事件1。第一终端设备向第二终端设备发送第一信息1,该第一信息1包括选择点1的平面坐标(xin-Δt,yin-Δt)、第一操作事件1和时间戳n-Δt。
在时间n时,第一终端设备确定第一终端设备的位置信息为世界坐标系ωc下的第一终端设备摄像头的坐标pn,第一终端设备的姿态信息为世界坐标系ωc下第一终端设备摄像头所在平面的法线向量qn。第一终端设备基于第二终端设备屏幕的中心位置坐标pbs,第二终端设备屏幕的上下左右四个顶点的坐标cbs0、cbs1、cbs2、cbs3,第二终端设备屏幕的法线向量qbs、第一终端设备摄像头的坐标pn和第一终端设备摄像头所在平面的法线向量qn,确定时间n时的选择点2的平面坐标(xin,yin)。第一终端设备在时间n检测到第一操作事件2。第一终端设备向第二终端设备发送第一信息2,该第一信息2包括选择点2的平面坐标(xin,yin)、第一操作事件2和时间戳n。
在时间n+Δt时,第一终端设备确定第一终端设备的位置信息为世界坐标系ωc下的第一终端设备摄像头的坐标pn+Δt,第一终端设备的姿态信息为世界坐标系ωc下第一终端设备摄像头所在平面的法线向量qn+Δt。第一终端设备基于第二终端设备屏幕的中心位置坐标pbs,第二终端设备屏幕的上下左右四个顶点的坐标cbs0、cbs1、cbs2、cbs3,第二终端设备屏幕的法线向量qbs、第一终端设备摄像头的坐标pn+Δt和第一终端设备摄像头所在平面的法线向量qn+Δt,确定时间n+Δt时的选择点3的平面坐标(xin+Δt,yin+Δt)。假设第一终端设备在时间n+Δt检测到第一操作事件3,则第一终端设备向第二终端设备发送第一信息3,该第一信息3包括选择点 3的平面坐标(xin+Δt,yin+Δt)、第一操作事件3和时间戳n+Δt。
可见,用户通过手持第一终端设备进行移动,就可使第二终端设备的屏幕所在平面上的选择点位置发生变化。
以下分别对第一终端设备接收第一信息1~第一信息3之后的三种不同的处理情况进行介绍:
①假设选择点1的坐标(xin-Δt,yin-Δt)、选择点2的坐标(xin,yin)和选择点3的坐标(xin+Δt,yin+Δt)不相同,且第一操作事件1、第一操作事件2、第一操作事件3依次为按下事件、按下事件和抬起事件,则第二终端设备确定用户在选择点1~选择点3进行了滑动触摸操作。
在一种可能的实现中,如图10所示,假设第二终端设备确定用户在选择点1~选择点3 进行了滑动触摸操作之前,第二终端设备显示的输入框已处于选中状态,即第二终端设备等待在输入框中输入文本信息。第二终端设备确定用户在选择点1~选择点3进行了滑动触摸操作之后,第二终端设备基于选择点1的坐标(xin-Δt,yin-Δt)、选择点2的坐标(xin,yin)和选择点3 的坐标(xin+Δt,yin+Δt)确定滑动触摸操作的轨迹,并基于滑动触摸操作的轨迹确定用户输入的文本信息。假设滑动触摸操作的轨迹为一横,则第二终端设备可以确定用户输入的文本信息为“一”。第二终端设备将文本信息“一”输入文本输入框中。可见,用户只需按压第一终端设备并在按压第一终端设备的过程中,手持第一终端设备进行移动,就可在输入框中输入文本信息,这样能够便捷地在第二终端设备的输入框中输入文本信息。可选的,如图10所示,第二终端设备还可以在显示界面显示滑动触摸操作的轨迹,这样有利于用户确定对第一终端设备的移动是否准确。
在另一种可能的实现中,第二终端设备也可以不基于滑动触摸操作的轨迹来确定文本信息。例如,若第二终端设备执行的目标操作为选中输入框,则第二终端设备可向第一终端设备发送文本信息输入指令;第一终端设备接收第二终端设备发送的文本信息获取请求之后,输出信息输入键盘;用户可以通过该信息输入键盘输入文本信息。第一终端设备获取用户通过信息输入键盘输入的文本信息之后,将该文本信息发送至第二终端设备。第二终端设备接收第一终端设备发送的文本信息之后,就在输入框中输入文本信息。基于该可能的实现方式,提高了用户在第二终端设备输入文本信息的便捷性。
在另一种可能的实现中,第二终端设备确定用户在选择点1~选择点3进行了滑动触摸操作之后,可基于滑动触摸操作的轨迹识别滑动触摸操作的滑动方向,进而根据不同的滑动方向执行不同的操作。例如,如果是向右滑动,则执行向下翻页的操作,如果是向右滑动,则执行向上翻页的操作。
②假设选择点1的坐标(xin-Δt,yin-Δt)、选择点2的坐标(xin,yin)和选择点3的坐标(xin+Δt,yin+Δt)相同,且第一操作事件1、第一操作事件2、第一操作事件3依次为按下事件、按下事件和抬起事件,则第二终端设备确定用户在选择点1~选择点3进行了长按操作。
例如,假设选择点1~选择点3的位置在第二终端设备的屏幕的右侧,则第二终端设备可以快进播放多媒体文件,如果选择点1~选择点3的位置在第二终端设备的屏幕的左侧,则第二终端设备可以对播放的多媒体文件进行快退。
③假设选择点2的坐标(xin,yin)和选择点3的坐标(xin+Δt,yin+Δt)相同,且第一操作事件1、第一操作事件2、第一操作事件3依次为无事件、按下事件和抬起事件,则第二终端设备确定用户在选择点2和选择点3进行了点击操作。例如,假设选择点2和选择点3的位置在播放按钮上,则第二终端设备可以播放多媒体文件。
在图5所描述的方法中,由于第二终端设备的屏幕所在平面上的选择点的位置信息是基于第一终端设备的位置信息、第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定的。因此,用户可通过手持第一终端设备进行移动,来改变选择点在第二终端设备的屏幕中的位置。可以将第一终端设备看作鼠标,通过移动第一终端设备,就能快速地选中第二终端设备的屏幕中的位置。不需要像传统的遥控器一样,需要通过按压上下左右键来移动第二终端设备的屏幕中选择的位置。可见,通过实施图5所描述的方法,有利于提高对终端设备的控制效率。
请参见图11,图11是本申请实施例提供的另一种设备控制方法的流程示意图。该设备控制方法包括步骤1101~步骤1111。其中:
1101、第一终端设备启动摄像头。
在一种可能的实现中,第一终端设备和第二终端设备可以预先建立连接,并在建立连接之后,第一终端设备执行步骤1101。
在一种可能的实现中,当第一终端设备检测到用户开启设备控制开关的操作时,第一终端设备执行步骤1101。
1102、第一终端设备显示相机预览界面,该相机预览界面包括提示信息,该提示信息用于提示移动第一终端设备使第二终端设备显示于相机预览界面中。
本申请实施例中,第一终端设备在启动摄像头之后显示相机预览界面。如图12所示,该相机预览界面包括提示信息,以提示移动第一终端设备使第二终端设备显示于相机预览界面中。第二终端设备显示于相机预览界面中,第一终端设备才能通过采集到第二终端设备的图像,以便后续第一终端设备能够基于第二终端设备的图像确定第二终端设备的位置信息和第二终端设备的姿态信息。
可选的,第一终端设备还可以在检测到第二终端设备不存在相机预览界面时,才在相机预览界面输出上述提示信息。或者,第一终端设备可以在初次对第二终端设备进行控制时,才在相机预览界面输出上述提示信息。
1103、第一终端设备基于摄像头采集的包括第二终端设备的图像确定第二终端设备的位置信息和第二终端设备的姿态信息。
本申请实施例中,在用户移动第一终端设备使第二终端设备显示于相机预览界面中之后,第一终端设备采集到包括第二终端设备的图像。第一终端设备基于摄像头采集的包括第二终端设备的图像确定第二终端设备的位置信息和第二终端设备的姿态信息。第一终端设备具体可通过SLAM算法和3D物体识别算法,基于摄像头采集的包括第二终端设备的图像确定第二终端设备的位置信息和第二终端设备的姿态信息。
可选的,在第一终端设备确定第二终端设备的位置信息和第二终端设备的姿态信息之后,可以关闭相机预览界面,这样有利于节省电量。
可选的,如图13所示,第一终端设备关闭相机预览界面之后,还可以输出按压区域。在按压区域中,用户可输入第一操作事件。可选的,如图13所示,第一终端设备还可以提示用户通过按压第一终端设备并移动第一终端设备来选中第二终端设备的屏幕中的位置。
通过执行步骤1101~步骤1103,有利于第一终端设备成功检测到第二终端设备的位置信息和姿态信息。
1104、第一终端设备确定第一终端设备的位置信息和第一终端设备的姿态信息。
其中,步骤1104~步骤1107的具体实现方式与上述步骤502~步骤505的具体实现方式相同,在此不赘述。
1105、第一终端设备基于第一终端设备的位置信息和第一终端设备的姿态信息、第二终端设备的位置信息和第二终端设备的姿态信息确定选择点的位置信息,该选择点为第一终端设备在第二终端设备的屏幕所在平面选择的点。
1106、第一终端设备检测选择点对应的第一操作事件。
1107、第一终端设备向第二终端设备发送第一信息,该第一信息包括选择点的位置信息和选择点对应的第一操作事件。
1108、第二终端设备基于选择点的位置信息确定选择点是否处于第二终端设备的屏幕中。
本申请实施例中,第二终端设备接收第一信息之后,基于选择点的位置信息确定选择点是否处于第二终端设备的屏幕中。如果选择点的位置不在第二终端设备屏幕内,则执行步骤 1109。如果选择点的位置在第二终端设备屏幕内,则执行步骤1110和步骤1111。步骤1110 和步骤1111的执行顺序不分先后,可以先执行步骤1110再执行步骤1111,或者,先执行步骤1111再执行步骤1110,或者,可以同时执行步骤1110和步骤1111。
1109、若选择点的位置不在第二终端设备屏幕内,则第二终端设备提示用户移动第一终端设备使选择点的位置在第二终端设备的屏幕内。
通过执行步骤1109,在选择点的位置不在第二终端设备的屏幕内时,第二终端设备能够及时地提示用户,增加了用户体验。
1110、若选择点的位置在第二终端设备屏幕内,则第二终端设备在第二终端设备的屏幕中突出显示选择点所在位置。
本申请实施例中,在第二终端设备的屏幕中突出显示选择点所在位置的具体实现方式可以为:在第二终端设备的屏幕中在选择点所在位置显示半透明光标,或改变选择点所在位置的颜色等等。
通过执行步骤1110,有利于用户观察到选择点所在的位置,以便用户在该选择点上做出控制操作。
1111、若选择点的位置在第二终端设备屏幕内,则第二终端设备基于第一信息执行目标操作。
举例来说,假设平面坐标系nc如图14所示,该平面坐标系nc中第二终端设备屏幕左上角顶点为原点(0,0)。右上角顶点的坐标为(1,0)。左下角顶点的坐标为(0,1)。右下角顶点的坐标为(1,1)。时间n时选择点的坐标为(xin,yin)。
如果xin≤0,且yin≤0,则第二终端设备提示用户,交点不在屏幕内,向右下方向移动第一终端设备;
如果0<xin<1,且yin≤0,则第二终端设备提示用户,交点不在屏幕内,向下移动第一终端设备;
如果xin≥1,且yin≤0,则第二终端设备提示用户,交点不在屏幕内,向左下方向移动第一终端设备;
如果xin≤0,且yin≥1,则第二终端设备提示用户,交点不在屏幕内,向右上方向移动第一终端设备;
如果0<xin<1,且yin≥1,则第二终端设备提示用户,交点不在屏幕内,向上移动第一终端设备;
如果xin≥1,且yin≥1,则第二终端设备提示用户,交点不在屏幕内,向左上移动第一终端设备;
如果xin≤0,且0<yin<1,则第二终端设备提示用户,交点不再屏幕内,向右移动第一终端设备;
如果xin≤0同时0<yin<1,则第二终端设备提示用户,交点不再屏幕内,向左移动第一终端设备;
如果0<xin<1同时0<yin<1,则第二终端设备在屏幕内对应的位置上显示半透明的光标,并基于选择点的坐标为(xin,yin)和第一操作事件执行目标操作。
以其他三个顶点中的任何一个顶点为原点时,确定选择点是否处于第二终端设备的屏幕中的原理类似,在此不赘述。
在一种可能的实现中,第一终端设备还可获取第二终端设备屏幕的目标区域的画面,该目标区域包括选择点所在的功能按钮。第一终端设备显示目标区域的画面。
可选的,该目标区域可以是以选择点的位置为中心的区域。可选的,该目标区域的画面可以是第二终端设备发送给第一终端设备的。或者,该目标区域也可以是第一终端设备拍摄的。第一终端设备可以在与第二终端设备之间的距离大于预设距离时,获取第二终端设备屏幕的目标区域的画面,并显示目标区域的画面。或者,也可以是用户手动触发第一终端设备获取第二终端设备屏幕的目标区域的画面。例如,用户可以点击第一终端设备屏幕中的某个功能按钮。第一终端设备检测到用户对该功能按钮的点击操作时候,去获取第二终端设备屏幕的目标区域的画面。或者,也可以是第二终端设备检测到选择点所在的功能按钮尺寸小于预设尺寸时,主动发送给第一终端设备的。第一终端设备获取目标区域的画面之后,显示目标区域。通过第一终端设备来显示目标区域的画面,有利于用户更清楚地看见第二终端设备中选择点所选择的功能按钮。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。
本申请实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体 RAM、磁碟或者光盘等各种可存储程序代码的介质。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (22)

1.一种设备控制方法,其特征在于,应用于第一终端设备,所述方法包括:
确定第二终端设备的位置信息和所述第二终端设备的姿态信息;
确定所述第一终端设备的位置信息和所述第一终端设备的姿态信息;
基于所述第一终端设备的位置信息和所述第一终端设备的姿态信息、所述第二终端设备的位置信息和所述第二终端设备的姿态信息确定选择点的位置信息,所述选择点为所述第一终端设备在所述第二终端设备的屏幕所在平面选择的点;
检测所述选择点对应的第一操作事件;
向所述第二终端设备发送第一信息,所述第一信息包括所述选择点的位置信息和所述选择点对应的第一操作事件;
其中,所述第一终端设备的位置信息包括在世界坐标系下所述第一终端设备摄像头的位置信息,所述第一终端设备的姿态信息包括在所述世界坐标系下所述第一终端设备摄像头所在平面的法线向量;所述第二终端设备的位置信息包括在世界坐标系下所述第二终端设备的屏幕的中心位置信息和/或所述第二终端设备的屏幕的一个或多个顶点的位置信息,所述第二终端设备的姿态信息包括在所述世界坐标系下所述第二终端设备屏幕的法线向量。
2.根据权利要求1所述的方法,其特征在于,所述第一操作事件为按下事件或抬起事件或无事件,所述第一信息还包括所述第一操作事件对应的时间戳。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
启动摄像头;
显示相机预览界面,所述相机预览界面包括提示信息,所述提示信息用于提示移动所述第一终端设备使所述第二终端设备显示于所述相机预览界面中;
所述确定第二终端设备的位置信息和所述第二终端设备的姿态信息,包括:
基于所述摄像头采集的包括所述第二终端设备的图像确定所述第二终端设备的位置信息和所述第二终端设备的姿态信息。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取所述第二终端设备的屏幕的目标区域的画面,所述目标区域的画面中包括所述选择点所在的功能按钮;
显示所述目标区域的画面。
5.一种设备控制方法,其特征在于,应用于第二终端设备,所述方法包括:
接收第一终端设备发送的第一信息,所述第一信息包括选择点的位置信息和所述选择点对应的第一操作事件,所述选择点为所述第一终端设备在所述第二终端设备的屏幕所在平面选择的点;
基于所述选择点的位置信息确定所述选择点是否处于所述第二终端设备的屏幕中;
若所述选择点的位置不在所述第二终端设备的屏幕内,则提示用户移动所述第一终端设备使所述选择点的位置在所述第二终端设备的屏幕内;
若所述选择点的位置在所述第二终端设备的屏幕内,则基于所述第一信息执行目标操作。
6.根据权利要求5所述的方法,其特征在于,所述第一操作事件为按下事件或抬起事件或无事件,所述第一信息还包括所述第一操作事件对应的时间戳。
7.根据权利要求6所述的方法,其特征在于,所述接收第一终端设备发送的第一信息,包括:
以预设时间为周期接收第一终端设备发送的第一信息;
所述基于所述第一信息执行目标操作,包括:
基于连续多个周期接收的多个第一操作事件和所述多个第一操作事件对应的时间戳确定用户在多个选择点输入的第二操作事件;
基于所述第二操作事件和所述多个选择点的位置信息执行目标操作。
8.根据权利要求7所述的方法,其特征在于,所述第二操作事件为点击事件或滑动触摸事件或长按事件。
9.根据权利要求7或8所述的方法,其特征在于,所述基于所述第二操作事件和所述多个所述选择点的位置信息执行目标操作,包括:
在选中输入框的情况下,若所述第二操作事件为滑动触摸事件,则基于所述多个选择点的位置信息确定所述滑动触摸事件的轨迹;
基于所述滑动触摸事件的轨迹确定文本信息,并在所述输入框中输入所述文本信息。
10.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述选择点的位置在所述第二终端设备的屏幕内,则在所述第二终端设备的屏幕中突出显示所述选择点所在位置。
11.一种第一终端设备,其特征在于,所述第一终端设备包括存储器和至少一个处理器;所述存储器与所述一个或多个处理器耦合,所述存储用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述第一终端设备执行以下操作:
确定第二终端设备的位置信息和所述第二终端设备的姿态信息;
确定所述第一终端设备的位置信息和所述第一终端设备的姿态信息;
基于所述第一终端设备的位置信息和所述第一终端设备的姿态信息、所述第二终端设备的位置信息和所述第二终端设备的姿态信息确定选择点的位置信息,所述选择点为所述第一终端设备在所述第二终端设备的屏幕所在平面选择的点;
检测所述选择点对应的第一操作事件;
向所述第二终端设备发送第一信息,所述第一信息包括所述选择点的位置信息和所述选择点对应的第一操作事件;
其中,所述第一终端设备的位置信息包括在世界坐标系下所述第一终端设备摄像头的位置信息,所述第一终端设备的姿态信息包括在所述世界坐标系下所述第一终端设备摄像头所在平面的法线向量;所述第二终端设备的位置信息包括在世界坐标系下所述第二终端设备的屏幕的中心位置信息和/或所述第二终端设备的屏幕的一个或多个顶点的位置信息,所述第二终端设备的姿态信息包括在所述世界坐标系下所述第二终端设备屏幕的法线向量。
12.根据权利要求11所述的第一终端设备,其特征在于,所述第一操作事件为按下事件或抬起事件或无事件,所述第一信息还包括所述第一操作事件对应的时间戳。
13.根据权利要求11或12所述的第一终端设备,其特征在于,所述第一终端设备还包括摄像头和显示屏,当所述一个或多个处理器执行所述计算机指令时,使得所述第一终端设备还执行以下操作:
启动所述摄像头;
通过所述显示屏显示相机预览界面,所述相机预览界面包括提示信息,所述提示信息用于提示移动所述第一终端设备使所述第二终端设备显示于所述相机预览界面中;
所述第一终端设备确定第二终端设备的位置信息和所述第二终端设备的姿态信息,包括:
基于所述摄像头采集的包括所述第二终端设备的图像确定所述第二终端设备的位置信息和所述第二终端设备的姿态信息。
14.根据权利要求11或12所述的第一终端设备,其特征在于,所述第一终端设备还包括显示屏,当所述一个或多个处理器执行所述计算机指令时,使得所述第一终端设备还执行以下操作:
获取所述第二终端设备的屏幕的目标区域的画面,所述目标区域的画面中包括所述选择点所在的功能按钮;
通过所述显示屏显示所述目标区域的画面。
15.一种第二终端设备,其特征在于,所述第二终端设备包括显示屏、存储器和至少一个处理器;所述存储器与所述一个或多个处理器耦合,所述存储用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述第二终端设备执行以下操作:
接收第一终端设备发送的第一信息,所述第一信息包括选择点的位置信息和所述选择点对应的第一操作事件,所述选择点为所述第一终端设备在所述第二终端设备的屏幕所在平面选择的点;
基于所述选择点的位置信息确定所述选择点是否处于所述第二终端设备的屏幕中;
若所述选择点的位置不在所述第二终端设备的屏幕内,则提示用户移动所述第一终端设备使所述选择点的位置在所述第二终端设备的屏幕内;
若所述选择点的位置在所述第二终端设备的屏幕内,则基于所述第一信息执行目标操作。
16.根据权利要求15所述的第二终端设备,其特征在于,所述第一操作事件为按下事件或抬起事件或无事件,所述第一信息还包括所述第一操作事件对应的时间戳。
17.根据权利要求16所述的第二终端设备,其特征在于,所述第二终端设备接收第一终端设备发送的第一信息,包括:
以预设时间为周期接收第一终端设备发送的第一信息;
所述第二终端设备基于所述第一信息执行目标操作,包括:
基于连续多个周期接收的多个第一操作事件和所述多个第一操作事件对应的时间戳确定用户在多个选择点输入的第二操作事件;
基于所述第二操作事件和所述多个选择点的位置信息执行目标操作。
18.根据权利要求17所述的第二终端设备,其特征在于,所述第二操作事件为点击事件或滑动触摸事件或长按事件。
19.根据权利要求17或18所述的第二终端设备,其特征在于,所述第二终端设备基于所述第二操作事件和所述多个所述选择点的位置信息执行目标操作,包括:
在选中输入框的情况下,若所述第二操作事件为滑动触摸事件,则基于所述多个选择点的位置信息确定所述滑动触摸事件的轨迹;
基于所述滑动触摸事件的轨迹确定文本信息,并在所述输入框中输入所述文本信息。
20.根据权利要求15所述的第二终端设备,其特征在于,当所述一个或多个处理器执行所述计算机指令时,使得所述第二终端设备还执行以下操作:
若所述选择点的位置在所述第二终端设备的屏幕内,则在所述第二终端设备的屏幕中突出显示所述选择点所在位置。
21.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在第一终端设备上运行时,使得所述第一终端设备执行如权利要求1-4中任一项所述的方法。
22.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在第二终端设备上运行时,使得所述第二终端设备执行如权利要求5-10中任一项所述的方法。
CN202011103205.4A 2020-10-15 2020-10-15 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质 Active CN112383664B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011103205.4A CN112383664B (zh) 2020-10-15 2020-10-15 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011103205.4A CN112383664B (zh) 2020-10-15 2020-10-15 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112383664A CN112383664A (zh) 2021-02-19
CN112383664B true CN112383664B (zh) 2021-11-19

Family

ID=74581555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011103205.4A Active CN112383664B (zh) 2020-10-15 2020-10-15 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112383664B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112965773B (zh) * 2021-03-03 2024-05-28 闪耀现实(无锡)科技有限公司 用于信息显示的方法、装置、设备和存储介质
CN114115691B (zh) * 2021-10-27 2023-07-07 荣耀终端有限公司 电子设备及其交互方法、介质
CN115016666B (zh) * 2021-11-18 2023-08-25 荣耀终端有限公司 触控处理方法、终端设备以及存储介质
CN117435087A (zh) * 2022-07-21 2024-01-23 荣耀终端有限公司 二维码识别方法、电子设备以及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101379455A (zh) * 2006-02-03 2009-03-04 松下电器产业株式会社 输入装置及其方法
CN106375811A (zh) * 2016-08-31 2017-02-01 天脉聚源(北京)传媒科技有限公司 一种节目的播放控制方法和装置
US10567567B2 (en) * 2017-08-10 2020-02-18 Lg Electronics Inc. Electronic device and method for controlling of the same

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160098095A1 (en) * 2004-01-30 2016-04-07 Electronic Scripting Products, Inc. Deriving Input from Six Degrees of Freedom Interfaces
CN103365572B (zh) * 2012-03-26 2018-07-03 联想(北京)有限公司 一种电子设备的远程操控方法及电子设备
CN103517111A (zh) * 2012-06-29 2014-01-15 上海广电电子科技有限公司 基于触摸遥控装置的电视遥控方法和电视***
CN103870149B (zh) * 2012-12-18 2017-08-29 联想(北京)有限公司 数据处理方法及电子设备
CN104035562B (zh) * 2014-06-18 2017-03-22 广州市久邦数码科技有限公司 一种三维立体桌面触摸事件的映射方法及***
CN106331809A (zh) * 2016-08-31 2017-01-11 北京酷云互动科技有限公司 电视控制方法和电视控制***
CN106341606A (zh) * 2016-09-29 2017-01-18 努比亚技术有限公司 一种设备控制方法及移动终端
CN106775059A (zh) * 2016-11-22 2017-05-31 努比亚技术有限公司 双屏电子设备可视化操作实时显示方法及设备
CN108958569B (zh) * 2017-05-19 2023-04-07 腾讯科技(深圳)有限公司 智能电视的控制方法、装置、***、终端及智能电视
GB201807749D0 (en) * 2018-05-13 2018-06-27 Sinden Andrew James A control device for detection
CN110633018B (zh) * 2019-07-30 2021-04-09 华为技术有限公司 控制大屏设备显示的方法、移动终端及第一***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101379455A (zh) * 2006-02-03 2009-03-04 松下电器产业株式会社 输入装置及其方法
CN106375811A (zh) * 2016-08-31 2017-02-01 天脉聚源(北京)传媒科技有限公司 一种节目的播放控制方法和装置
US10567567B2 (en) * 2017-08-10 2020-02-18 Lg Electronics Inc. Electronic device and method for controlling of the same

Also Published As

Publication number Publication date
CN112383664A (zh) 2021-02-19

Similar Documents

Publication Publication Date Title
CN113794800B (zh) 一种语音控制方法及电子设备
CN112130742B (zh) 一种移动终端的全屏显示方法及设备
CN112231025B (zh) Ui组件显示的方法及电子设备
CN113645351B (zh) 应用界面交互方法、电子设备和计算机可读存储介质
CN111669459B (zh) 键盘显示方法、电子设备和计算机可读存储介质
CN112383664B (zh) 一种设备控制方法、第一终端设备、第二终端设备及计算机可读存储介质
JP7173670B2 (ja) 音声制御コマンド生成方法および端末
CN110559645B (zh) 一种应用的运行方法及电子设备
EP4195707A1 (en) Function switching entry determining method and electronic device
CN113746961A (zh) 显示控制方法、电子设备和计算机可读存储介质
WO2022007707A1 (zh) 家居设备控制方法、终端设备及计算机可读存储介质
CN112068907A (zh) 一种界面显示方法和电子设备
CN114185503A (zh) 多屏交互的***、方法、装置和介质
WO2021238740A1 (zh) 一种截屏方法及电子设备
CN115016697A (zh) 投屏方法、计算机设备、可读存储介质和程序产品
CN111249728B (zh) 一种图像处理方法、装置及存储介质
CN114911400A (zh) 分享图片的方法和电子设备
CN114173184A (zh) 投屏方法和电子设备
CN114064160A (zh) 应用图标布局方法及相关装置
CN115914461A (zh) 位置关系识别方法和电子设备
CN114090140A (zh) 基于指向操作的设备之间的交互方法及电子设备
CN115032640B (zh) 手势识别方法和终端设备
CN113448658A (zh) 截屏处理的方法、图形用户接口及终端
CN113438366A (zh) 信息通知的交互方法、电子设备和存储介质
CN113805825B (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