CN109298806B - 一种基于对象识别的远程快速界面交互方法及装置 - Google Patents
一种基于对象识别的远程快速界面交互方法及装置 Download PDFInfo
- Publication number
- CN109298806B CN109298806B CN201811108342.XA CN201811108342A CN109298806B CN 109298806 B CN109298806 B CN 109298806B CN 201811108342 A CN201811108342 A CN 201811108342A CN 109298806 B CN109298806 B CN 109298806B
- Authority
- CN
- China
- Prior art keywords
- interface
- image
- primitive
- remote host
- local
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及一种基于对象识别的远程操作界面交互方案,包括:S100、建立本地设备与远程主机之间的关联;S200、通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息;S300、跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的变换参数;S400、根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行图元变换;S500、微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步。本技术方案使得在远程控制期间,极大地减少本地设备和远程主机之间传输的界面图像数据量,从而提高界面交互操作流畅度、提升用户操作体验。
Description
技术领域
本发明涉及计算机通信领域,尤其涉及一种基于对象识别的远程快速界面交互方法及装置。
背景技术
远程控制是计算机技术领域中常用的技术。例如在软件的开发和测试过程中,软件开发商通常需要在测试服务器或移动终端等远程主机上安装多台虚拟机。每台虚拟机上可以运行不同环境参数的操作系统实例,以验证软件在多种配置环境下的运行状况。此时,测试人员和开发人员可以通过远程登陆到上述远程主机以执行具体的测试任务。基于上述技术方案,由于相关人员与物理设备无需处于相同的工作场所,且远程登陆的方式可以方便相关人员验证、复现和回归软件开发过程中的各类问题,为软件的开发和测试工作带来了便利。
然而,目前各类远程控制的技术方案都依赖于本地设备与远程主机的网络连接状况。当客户端通过互联网访问虚拟机图形化控制台之后,将虚拟机刷新后的页面返回至客户端。由于刷新后的页面需要整体发送回客户端,所以当网络连接状况较差或多台本地设备并发连接到远程主机时,在本地设备上将出现明显的网络延时。这使得本地设备对远程主机的操作不流畅,用户不能从本地设备上实时获得其向远程主机上发出的指令,从而影响了远程控制的实际使用效果。
发明内容
本发明的目的是解决现有技术的不足,提供一种用于远程操作的快速界面交互方法及装置,能够获得提高本地设备远程操作远程主机流畅度的效果。
本发明的技术方案的第一方面为一种基于对象识别的远程操作界面交互方法,包括以下步骤:
S100、建立本地设备与远程主机之间的界面图像关联的接口和通道;
S200、通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息,然后获取该分块对象及其自身的图元在图像库/缓冲区中的对应元素的ID;
S300、跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的位置及缩放的变换参数;
S400、根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行动态区域的图元的变换,并刷新界面图像;
S500、本地设备接收远程主机发送的图像、图元位置或图像库的ID数据,微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步。
进一步,所述步骤S200包括:根据所选的界面交互场景和/或当前运行的应用程序种类,以预设的划分方式划分所述分块对象,该预设的划分方式包含横分动态区域、列分动态区域、文字分离或矢量图分离、播放影像分离的方式。
进一步,在所述步骤S200中:首先识别整体的分块对象在图像库或缓冲区中的对应元素的ID,如果找不到对应的元素ID然后再识别分块对象内部的每个图元在图像库/缓冲区中的对应元素的ID;所述对比算法包括哈希对比算法或神经网络对比识别算法。
进一步,所述步骤S300包括:获取输入指令的事件和动作参数,判断与该指令的事件关联的分块对象或图元;将动作参数转换为对应的分块对象或图元的位置和缩放的变换参数,并且配置所述动作的执行时间与分块对象或图元的变换时间一致。
进一步,在所述步骤S300中,输入指令的事件包括输入设备的按键点击、缩放、拖动、滚页或应用程序的焦点切换。
进一步,所述步骤S400包括:在执行指令事件的时间段内,根据分块对象或图元的变换参数,在从本地的缓冲区获取与当前图像界面的动态区域关联的额外图元,并且加入该额外图元进行动态区域的界面变换。
进一步,所述步骤S400包括:如果没有获取得到分块对象或者相应的图元来执行界面变换,则在等待缓冲区接收远程界面的图像数据的时候,保持当前界面的动态区域不变动。
进一步,所述步骤S500包括:传送指令到远程主机,在远程执行指令事件,刷新界面,确定相应图元的实际位置;判断本地设备和远程主机的分块对象或图元的位置及缩放的差异值是否超过预设的阈值;如果超过该阈值,则在本地修正图元位置,并且缓冲图元到本地设备的缓冲区,以替换本地设备的界面图像中的缺失的图元。
本发明的技术方案的第二方面为一种基于对象识别的远程操作界面交互装置,包括:第一模块,用于建立本地设备与远程主机之间的界面图像关联的接口和通道;第二模块,用于通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息,然后获取该分块对象及其自身的图元在图像库/缓冲区中的对应元素的ID;第三模块,用于跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的位置及缩放的变换参数;第四模块,用于根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行动态区域的图元的变换,并刷新界面图像;第五模块,用于本地设备接收远程主机发送的图像、图元位置或图像库的ID数据,微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步。
本发明的技术方案的第三方面为一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上所述的方法的步骤。
本发明的有益效果为:在实施远程操作元计算机时,能够根据特定的应用场景以对远程主机的界面图像进行分块,提高图像获取效率;可以基于本地输入设备的指令直接在本地优先生成界面图像,减少远程传输数据量,从而提高界面交互的操作流畅度和传播的实时性。
附图说明
图1所示为根据本发明的方法的总体流程图;
图2所示为根据本发明的方法的细节流程图;
图3所示为根据本发明的方法的本地设备与远程主机之间的协作流程图;
图4所示为根据本发明的方法的本地设备与远程主机之间的结构框图;
图5所示为根据本发明的一个实施例中的交互场景选择和优化的示意图;
图6至图9所示为根据本发明的多个操作实施例的示意图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
参照图1,根据本发明的基于对象识别的远程操作界面交互方法包括以下步骤:S100、建立本地设备与远程主机之间的界面图像关联的接口和通道;S200、通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息,然后获取该分块对象及其自身的图元在图像库/缓冲区中的对应元素的ID;S300、跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的位置及缩放的变换参数;S400、根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行动态区域的图元的变换,并刷新界面图像;S500、本地设备接收远程主机发送的图像、图元位置或图像库的ID数据,微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步。
远程主机是处于互联网或局域网中的远程受控主机,例如是个人计算机、分布式服务器、云计算机、网络受控终端等。远程主机还可以是虚拟化的主机,其同时被多个用户登陆控制。本地设备是由用户操作的主控本地机,例如是个人计算机、移动通信终端、web主控端等。
固定区域是指远程操作界面中在给定时间内基本不变的图像部分,比如在操作界面中示出应用程序的工具栏图像、任务栏图像等。例如参考图6至9,应用程序界面中的上任务栏和左侧任务栏的图像、图标所构成的界面部分为固定区域。
动态区域是指远程操作界面中经常变化的、或者受用户操作而变化的图像部分,例如是用户浏览区域、编辑区域、网页动态图等。例如参考图6至9,应用程序界面中,由用户经常操作翻译、点击浏览、画图操作的区域一般定义为动态区域。
在一些实施例中,固定区域也可以变成动态区域,比如用户拖动任务栏的时候,原本属于固定区域的任务栏可以转变成动态区域;动态区域也可以转换成固定区域,比如在图5的文字浏览的动态区域中,如果用户长时间滚动阅读文字,而文字的背景图片在给定时间内都不改变或者无需刷新,则原动态区域的背景可以转换成固定区域。
分块对象是指按照给定的划分方式将界面图像分割出的局部图像,而这种局部图像可以包含一个或多个图元。给定的划分方式根据实际的用户所选的场景,可以是对界面图像的横切、列切、文字分离、矢量图分离等方式。图元是指组成界面图像的基础图像或图标,例如是应用程序图标、文件图标、网页中的插入图等。此外,图像元素(简称元素)是指储存在图像库和缓冲区中的图元。图像库和缓冲区中的元素都配置有ID。
参照图2,在根据本发明的方法进一步包括以下步骤:
S101、获取远程主机的界面图像;
S102、根据用户选取的远程交互场景(例如,办公场景、文字阅读场景、网页浏览场景、画图场景、视频或动画播放等),定义分块对象的划分方式(例如,横切、列切、文字分离、矢量图分离、图标划分、影像分离等);
S103、使分块对象与图像库和缓冲区中的已有元素(通过哈希算法)进行对比和关联,如果没有在图像库和缓冲区中发现该元素,则将其作为新的元素存来储存于图像库中或者临时储存于缓冲区中;
S104、获取输入指令的事件及其动作参数,判断与该指令关联的图元;
S105、将动作参数转换为对应图元的位置/缩放变换参数,例如图元在后续动作帧中的像素位置坐标、缩放偏移矩阵;
S106、在指令事件的时段内,以变换参数,在本地执行图元的变位和/或从缓冲区增加图元;
S107、传送指令到远程主机,在远程执行指令事件,刷新界面,确定相应图元的实际位置;
S108、判断本地和远程图元是否有明显差异(例如,是否位置偏移量超过阈值,图元不一致、图元缺失等),是则执行下一步骤,否则执行步骤S110;
S109、缓寸缺失的图元,在本地修正图元的位置或增加图元;
S110、判断当前远程控制的网络传输是否空闲,如果是则执行下一步骤,否则结束本次流程;
S111、同步远程主机和本地设备的图像库和/或缓冲区,然后结束本次流程。
具体地,在步骤S101中,可以通过截图的方式获取界面图像。优选地,可以通过应用程序和浏览器的内部数据来调取界面图像。比如,通过调取界面上当前显示的应用程序中的UI(图形界面)数据来获取图元;还可以通过调取浏览器网页缓存中的图像和文字数据来获得图元。具体地,可以对截图的界面图像通过网格或者图元轮廓线划分出一个或多个区域,然后判断这些区域在给定时间内的变化频繁度,将基本不改变的区域识别为固定区域,将用户操作的区域或者经常有图像变化的区域识别为动态区域。优选地,也可以直接根据界面当前显示的应用程序中的UI数据来识别工具栏、背景图等区域作为固定区域,而用户操作的界面部分作为动态区域。
具体地,在步骤S102中,用户选取不同的交互场景的时候,界面(尤其是动态区域)的划分方式可以有所不同。例如,选取办公场景时,界面动态区域定义为办公编辑窗口,对应选取横切或者文字背景分离的划分方式;选取阅读场景时,可以采用纯文字的划分方式;浏览网页的场景时,如果是上下滚动页面,可以选取横切的划分方式,如果是左右滚动页面时,可以选取列分的划分方式;选取画图场景时,可以选取矢量图和背景分离的划分方式;选取视频或动画播放场景时,可以将播放窗口作为整个分块对象来区别于其它对象或图元。优选地,在横分或者列分的方式是,行与行或者列与列之间的间距可以与图元(例如文字行段、网页的网格段落高度)的尺寸匹配。根据不同场景来划分分块对象的技术方案,比传统的全页面小网格划分的技术方案效率更高速度更快。此外,还可以根据用户当前运行的应用程序的类型来自动切换场景。例如,运行办公软件的时候,自动切换到办公场景,运行浏览器程序的时候换到网页浏览场景。
具体地,步骤S103中,流程还可以包括:检索图像库中基于图像使用频率组建的常用图像子图像库;如果在常用图像子图像库中检索不到图像,检索图像库中其他图像。在本实施例中,优选地,图像库定期清空使用频率低于预设阈值的图像。在优选的实施例中,还可以基于散列函数的校验方式,检索/对比图像库和缓冲区中是否有元素对应界面中的图元。
具体地,在步骤S104中,输入设备的事件包括输入设备(例如,鼠标、键盘、触摸屏等)的按键点击、缩放、拖动、滚页等,或输入设备的操作间接产生的应用程序的焦点切换、窗口开启/关闭、等。对应上述事件的动作参数例如是,点击位置的坐标、缩放比例参数、拖动点的坐标偏移、滚页行数、焦点应用程序号、应用程序状态参数等。此外,可以通过一下方式判断某图元是否与某指令关联:1、指令直接作用于图元;2、图元位于动态区域中,并且指令导致该动态区域的变化;3、指令直接或者间接影响图元的激活或者取消激活。
具体地,在步骤S106中,可以脱离远程主机而优先在本地执行图元的变位和/或从缓冲区增加图元。而且执行图元的变位要跟指令事件的时间同步,保持较高的响应性。
图3所示为根据本发明的方法的本地设备与远程主机之间的协作流程图。
在一个实施例中,在本地设备运行的基于用户输入的界面交互流程如下:
S301、建立本地设备对远程主机的控制;
S302、接收本地设备的输入设备的动作,转换为指令数据,然后匹配当前所选的交互场景(例如,办公场景、文字阅读场景、网页浏览场景、画图场景等);
S303、将指令数据实时发送到远程主机,然后首先利用与指令关联的相应图元的变换参数和本地的图像库和缓冲区,合成本地界面;
S304、接收远程主机的实际数据,更新修正本地分块对象或其图元的位置,或在界面补充图元,更新本地设备的应用程序数据、系统操作数据等;
S3041、跟远程主机进行分块对象或其图元的缓存数据同步;
S305、如果没有结束远程控制,则返回步骤S302,否则执行以下一步骤;
S306、清理本地设备的缓存数据,并同步本地设备和远程主机的图像库。
相应地,远程主机的基于用户输入的界面交互流程如下:
S211、激活远程主机的系统操作控制;
S212、监视终端输入设备的远程操作端口,并且取认所选的交互场景;
S213、根据接收到的用户指令和终端参数,运行和更新相应的应用程序和功能,生成对应的界面;
S214、同步更新本地设备和远程主机的应用程序数据,以及包含固定区域和动态区域的界面图像,用于对本地设备的界面进行微调或修正;
S2141、跟本地主机进行分块对象或其图元的缓存数据同步;
S215、如果没有结束远程控制,则返回步骤S212,否则执行以下一步骤;
S216、清理本地设备的缓存数据,并同步本地设备和远程主机的图像库。
在本实施例中,通过本地设备和远程主机之间传送输入设备(例如鼠标、键盘、触摸屏等)的指令来进行界面的更新和交互。例如,用户在本地设备移动鼠标点击某图标时,首先通过驱动程序将鼠标硬件传输的HID数据转换为操作系统识别的指令数据,同时将该数据发送到本地设备和远程主机的操作系统层;然后,直接反映在本地设备的界面上有鼠标光标移动和点击反馈动画;同样在远程主机中的操作系统层可以根据该指令数据,在远程主机中更新界面和鼠标轨迹,确定鼠标点击坐标所对应的图标,以及该图标对应的应用程序功能。因为本地设备和远程主机之间仅需要传输字节级别的少量数据,而且分别在本地设备和远程主机中利用本机资源更新界面,因此在本实施例中的界面交互方法可以减少远程控制中的图像传输数据,同时提供快速、实时用户操作交互。
根据本发明的方法可以通过程序或进程来实施。该程序或进程可以运行于本地设备的操作系统中或者远程主机的操作系统中,还可以运行在第三方管理设备中,用于监视和控制本地设备和远程主机的各个界面交互单元工作。
在图4所示的实施例中,界面合成单元可以被配置为执行动态区域中的图元合成;指令处理单元被配置为执行图3所示的流程中的指令传输和处理;界面分解单元可以被配置为执行图2所示的流程中的图元识别。场景优化单元可以被配置为根据所选的交互场景,配置分块对象的划分方式,同时对本地设备和远程主机之间的网络传输进行优化调整,比如运行在文字阅读场景的时候,可以适当减少传输带宽,而运行视频播放场景时,则提高流媒体传输实时性。图元定位对比单元可以被配置为确定分块对象或者其图元是否在图像库或者缓冲区中有关联元素,如果没有关联元素的,可以新加入到图像库或缓冲区中作为新的元素。位置确定单元被配置为计算分块对象或其图元的位置和尺寸数据。位置跟踪单元被配置为根据输入指令,根据动作参数跟踪对应图元的位置/缩放后的位置和尺寸,用于为界面合成单元提供位置/缩放变换参数。继续如图4所示,本领域技术人员应理解到,远程主机可以内部生产虚拟的界面,而不在实际的显示器中显示界面。例如,利用虚拟化技术,可以使远程主机虚拟出多个操作系统的虚拟界面。
图5所示为根据本发明的一个实施例中的交互场景选择和优化的示意图。如图所示,在本地设备的界面可以提供交互场景选择栏,供用户点选各种场景。还可以根据用户当前运行应用程序的类型来自动选取最优的场景。对于选取的不同场景,可以触发不同的分块对象划分方式、缓存优化方式、或传输优化方式等。在图5所示的实施例中,用户选取办公交互场景,此时在用户打开桌面图标的文件夹A-E之前,远程主机可以预先将文件夹A-E中的每一个文件夹目录中的图标和布局和位置预先缓存到缓冲区中,由于文件夹路径内的图标都是图像库中的常用元素,因此远程主机和本地主机之间的缓冲数据只需要相应的图标(或图元)的元素ID、各个文件夹图标相对于文件夹窗口的位置数据。此时,例如用户打开文件夹图标E时,本地设备可以快速将已缓冲的文件夹E的内部目录的缓存子界面在本地快速生成,而无需通过远程主机传输界面截图。这样可以实现快速实时而且准确的用户操作。
图6-图9所示为根据本发明的多个实施例的应用场景示意图。左边的界面是本地界面,右边的界面是远程主机的虚拟界面。
参照图6,用户选择浏览交互场景时,在远程主机中,可以将动态区域中包含文字的图元转换为文字数据,用于直接传输至本地设备,对于浏览非文字的网页图片时,采用横向的对象分切方式。例如,当用户操作本地设备浏览网页进行鼠标翻页操作,本地设备直接读取缓冲区中已缓存的文字数据,或者横段的分切图像,然后直接在本地设备的界面的动态区域中更新文字图元。而远程主机接收到鼠标的翻页操作指令,在远程主机内的浏览应用程序中处理翻页操作,这样就可以同步本地设备和远程主机界面,但是不用传输整个浏览界面的图片。此外,如图7所示还可以采用列向的对象分切方式,适配横移浏览操作时,使界面变换更加柔和且减少卡顿。
参照图8,用户在本地设备操作浏览资源管理器的时候,通过鼠标拖动文件夹。在本实施例中,可以对界面的截图建立坐标系,坐标系以图像左下角作为原点或选择图像中心作为原点,计算识别到的鼠标对象的坐标(x,y)。因此,可以在每个动作帧中,跟踪用户操作的鼠标的坐标,比如上一帧的界面图像中相应鼠标对象的坐标为(x2,y2),在本次截取的界面图像中相应鼠标对象的坐标为(x1,y1),则相应坐标的偏移量D(dx,dy)=(x1-x2,y1-y2)。因此根据偏移量D来引导平移文件夹的图元,由此可以在本地优先生成鼠标拖动文件夹的动态效果。此外,用户在浏览资源管理器的时候,新建了文件夹。如果新建的文件夹采用了自定义的图标,并且该图标没有储存在图像库和缓冲区,则将该图标单独在本地设备和远程主机中传输和同步,然后储存在缓冲区中。还可以将该图标转换成元素保持在图像库中。这样就可以在用户下一次浏览该文件夹路径的时候,只需采用贴图的方式,在本地设备的图像库或缓冲区导出对应的图元叠加到已有的界面中。
参照图9,用户操作鼠标可以在多个应用程序的窗口之间切换成当前操作的窗口。例如,可以根据鼠标指针的点击位置,确定鼠标的指针热点是否点击到特定窗口,从而将该窗口切换到界面的最上层来显示。由于多个应用程序的窗口已经被缓存,因此在本地即可快速切换各个已经打开的或者隐藏在后台的应用程序的窗口。优选地,还可以根据切换的应用程序来自动切换交互场景,比如从画图的应用程序窗口切换到文字应用程序窗口时,可以从画图场景切换到文字场景(如图9所示)。
在一实施例中,根据本发明的基于对象识别的快速界面交互装置,包括:第一模块,用于建立本地设备与远程主机之间的界面图像关联的接口和通道;第二模块,用于通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息,然后获取该分块对象及其自身的图元在图像库/缓冲区中的对应元素的ID;第三模块,用于跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的位置及缩放的变换参数;第四模块,用于根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行动态区域的图元的变换,并刷新界面图像;第五模块,用于本地设备接收远程主机发送的图像、图元位置或图像库的ID数据,微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步。
应当认识到,上述装置可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
进一步,该方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
上述实施例仅仅是为清楚理解本发明的原则而提出的实现方式的示例性说明。在不偏离本发明的范围的情况下,许多变化、组合、修改或等同变换可以替代本发明的元件。因此,本发明旨在不限制于所公开的用于实施本发明的最佳模式的具体实施方案,但是本发明将包括落入所附权利要求范围内的所有实施例。
Claims (12)
1.一种基于对象识别的远程操作界面交互方法,其特征在于,包括以下步骤:
S100、建立本地设备与远程主机之间的界面图像关联的接口和通道;
S200、通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息,然后获取该分块对象及其自身的图元在图像库/缓冲区中的对应元素的ID;
S300、跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的位置及缩放的变换参数;
S400、根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行动态区域的图元的变换,并刷新界面图像;
S500、本地设备接收远程主机发送的图像、图元位置或图像库的ID数据,微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步;
所述步骤S500包括:
传送指令到远程主机,在远程执行指令事件,刷新界面,确定相应图元的实际位置;
判断本地设备和远程主机的分块对象或图元的位置及缩放的差异值是否超过预设的阈值;
如果超过该阈值,则在本地修正图元,包括:修正图元偏移量并且缓冲图元到本地设备的缓冲区,以替换本地设备的界面图像中的缺失的图元和与远程主机不一致的图元。
2.根据权利要求1所述的方法,其特征在于,所述步骤S200包括:
根据所选的界面交互场景和/或当前运行的应用程序种类,以预设的划分方式划分所述分块对象,该预设的划分方式包含横分动态区域、列分动态区域、文字分离、矢量图分离、或播放影像分离的方式。
3.根据权利要求1所述的方法,其特征在于,所述步骤S200中:分块对象是指按照给定的划分方式将界面图像分割出的局部图像,而这种局部图像包含一个或多个图元。
4.根据权利要求1或2或3所述的方法,其特征在于,在所述步骤S200中:
首先识别整体的分块对象在图像库或缓冲区中的对应元素的ID,如果找不到对应的元素ID然后再识别分块对象内部的每个图元在图像库/缓冲区中的对应元素的ID;
所述对比算法包括哈希对比算法或神经网络对比识别算法。
5.根据权利要求1所述的方法,其特征在于,所述步骤S300包括:
获取输入指令的事件和动作参数,判断与该指令的事件关联的分块对象或图元;
将动作参数转换为对应的分块对象或图元的位置和缩放的变换参数,并且配置所述动作的执行时间与分块对象或图元的变换时间一致。
6.根据权利要求5所述的方法,其特征在于,在所述步骤S300中,输入指令的事件包括输入设备的按键点击、缩放、拖动、滚页或应用程序的焦点切换。
7.根据权利要求1所述的方法,其特征在于,所述步骤S400包括:
在执行指令事件的时间段内,根据分块对象或图元的变换参数,在从本地的缓冲区获取与当前图像界面的动态区域关联的额外图元,并且加入该额外图元进行动态区域的界面变换。
8.根据权利要求1所述的方法,其特征在于,所述步骤S400包括:如果没有获取得到分块对象或者相应的图元来执行界面变换,则在等待缓冲区接收远程界面的图像数据的时候,保持当前界面的动态区域不变动。
9.根据权利要求1所述的方法,其特征在于,所述缓冲区中:缓冲数据包括各个文件夹图标相对于文件夹窗口的位置数据。
10.一种基于对象识别的远程操作界面交互系统,其特征在于,包括:
场景优化单元,该单元被配置为根据所选的交互场景,配置分块对象的划分方式,同时对本地设备和远程主机之间的网络传输进行优化调整;
图元定位对比单元,该单元被配置为确定分块对象或者其图元是否在图像库或者缓冲区中有关联元素,如果没有关联元素的,新加入到图像库或缓冲区中作为新的元素;
位置跟踪单元,该单元被配置为根据输入指令,根据动作参数跟踪对应图元的位置/缩放后的位置和尺寸,用于为界面合成单元提供位置/缩放变换参数。
11.一种基于对象识别的远程操作界面交互装置,其特征在于,包括:
第一模块,用于建立本地设备与远程主机之间的界面图像关联的接口和通道;
第二模块,用于通过对比算法,在远程主机识别动态区域中的分块对象,提取并记录分块对象及其自身的图元的位置信息,然后获取该分块对象及其自身的图元在图像库/缓冲区中的对应元素的ID;
第三模块,用于跟随本地设备的输入指令,计算界面图像中受该输入指令影响的分块对象或图元的位置及缩放的变换参数;
第四模块,用于根据本地设备的图像库和缓冲区,基于当前的界面图像以及受输入指令影响的图元的变换参数,在本地进行动态区域的图元的变换,并刷新界面图像;
第五模块,用于本地设备接收远程主机发送的图像、图元位置或图像库的ID数据,微调固定区域和动态区域的界面图像,使本地设备和远程主机的界面图像同步。
12.一种计算机可读存储介质,其上存储有计算机指令,其特征在于该指令被处理器执行时实现如权利要求1至9中任一项权利要求所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811108342.XA CN109298806B (zh) | 2018-09-21 | 2018-09-21 | 一种基于对象识别的远程快速界面交互方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811108342.XA CN109298806B (zh) | 2018-09-21 | 2018-09-21 | 一种基于对象识别的远程快速界面交互方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109298806A CN109298806A (zh) | 2019-02-01 |
CN109298806B true CN109298806B (zh) | 2022-01-11 |
Family
ID=65163727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811108342.XA Active CN109298806B (zh) | 2018-09-21 | 2018-09-21 | 一种基于对象识别的远程快速界面交互方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109298806B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109782811B (zh) * | 2019-02-02 | 2021-10-08 | 绥化学院 | 一种无人模型车的自动跟随控制系统及方法 |
CN110807164B (zh) * | 2019-10-08 | 2022-07-22 | 北京字节跳动网络技术有限公司 | 图像区域的自动调节方法、装置、电子设备及计算机可读存储介质 |
CN115914198A (zh) * | 2022-03-08 | 2023-04-04 | 杨立群 | 用于远程操控的图像动态传输方法及装置 |
CN114911720A (zh) * | 2022-05-16 | 2022-08-16 | 阿里巴巴(中国)有限公司 | 外围设备的连接控制方法、装置、电子设备和存储介质 |
CN117130697B (zh) * | 2023-03-28 | 2024-06-21 | 荣耀终端有限公司 | 在任务栏固定应用的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447998A (zh) * | 2008-12-25 | 2009-06-03 | 广东威创视讯科技股份有限公司 | 桌面共享方法及系统 |
CN103069453A (zh) * | 2010-07-05 | 2013-04-24 | 苹果公司 | 操作设备以捕捉高动态范围图像 |
CN106105201A (zh) * | 2014-03-14 | 2016-11-09 | 高通股份有限公司 | 使用像素距离的解块滤波 |
CN108304239A (zh) * | 2018-01-26 | 2018-07-20 | 杨立群 | 用于远程操作的快速界面交互方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10185775B2 (en) * | 2014-12-19 | 2019-01-22 | Qualcomm Technologies, Inc. | Scalable 3D mapping system |
-
2018
- 2018-09-21 CN CN201811108342.XA patent/CN109298806B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447998A (zh) * | 2008-12-25 | 2009-06-03 | 广东威创视讯科技股份有限公司 | 桌面共享方法及系统 |
CN103069453A (zh) * | 2010-07-05 | 2013-04-24 | 苹果公司 | 操作设备以捕捉高动态范围图像 |
CN106105201A (zh) * | 2014-03-14 | 2016-11-09 | 高通股份有限公司 | 使用像素距离的解块滤波 |
CN108304239A (zh) * | 2018-01-26 | 2018-07-20 | 杨立群 | 用于远程操作的快速界面交互方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109298806A (zh) | 2019-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109298806B (zh) | 一种基于对象识别的远程快速界面交互方法及装置 | |
US11301200B2 (en) | Method of providing annotation track on the content displayed on an interactive whiteboard, computing device and non-transitory readable storage medium | |
US10782844B2 (en) | Smart whiteboard interactions | |
US10453240B2 (en) | Method for displaying and animating sectioned content that retains fidelity across desktop and mobile devices | |
US9912724B2 (en) | Moving objects of a remote desktop in unstable network environments | |
CN110378063B (zh) | 基于智慧建筑空间的设备部署方法、装置、以及电子设备 | |
CN101192131B (zh) | 处理桌面背景的方法、装置及操作系统桌面的界面系统 | |
CN108304239B (zh) | 用于远程操作的快速界面交互方法及装置 | |
US10147400B2 (en) | Display control device, display control method, and display control program | |
KR20160003683A (ko) | 시각화된 데이터를 상호작용에 기초하여 자동으로 조작하는 기법 | |
AU2015298291B2 (en) | Optimized rendering of shared documents on client devices with document raster representations | |
WO2019105191A1 (zh) | 多元素交互方法、装置、设备和存储介质 | |
US20220284377A1 (en) | Method and apparatus for task group positioning | |
CN110286971B (zh) | 处理方法及系统、介质和计算设备 | |
CN109388457B (zh) | 一种多场景的远程快速界面交互方法及装置 | |
CN105446676B (zh) | 进行大屏显示的方法及装置 | |
US8856827B1 (en) | System for conveying and reproducing images for interactive applications | |
US11650832B1 (en) | System and method for drawing optimization with pointer input in a remote session | |
US11157130B2 (en) | Cursor-based resizing for copied image portions | |
KR101399473B1 (ko) | 다중 프로세싱을 이용한 렌더링 처리 장치 및 방법 | |
KR20200033640A (ko) | 단말기, 이의 제어 방법 및 상기 방법을 구현하기 위한 프로그램을 기록한 기록 매체 | |
US11907646B1 (en) | HTML element based rendering supporting interactive objects | |
WO2022178777A1 (zh) | 数据共享方法、计算机设备和存储介质 | |
EP3635527B1 (en) | Magnified input panels | |
WO2008064613A1 (fr) | Procédé et appareil pour traiter des fonds de bureau et système d'interface pour un bureau de système d'exploitation |
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 |