CN109522070B - 显示处理方法和系统 - Google Patents

显示处理方法和系统 Download PDF

Info

Publication number
CN109522070B
CN109522070B CN201811274582.7A CN201811274582A CN109522070B CN 109522070 B CN109522070 B CN 109522070B CN 201811274582 A CN201811274582 A CN 201811274582A CN 109522070 B CN109522070 B CN 109522070B
Authority
CN
China
Prior art keywords
display
virtual
virtual display
module
image data
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
CN201811274582.7A
Other languages
English (en)
Other versions
CN109522070A (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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201811274582.7A priority Critical patent/CN109522070B/zh
Publication of CN109522070A publication Critical patent/CN109522070A/zh
Application granted granted Critical
Publication of CN109522070B publication Critical patent/CN109522070B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本公开提供了一种显示处理方法,包括:利用虚拟驱动创建至少一个虚拟显卡和至少一个虚拟显示器,其中,所述虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;通过所述至少一个虚拟显卡获取操作系统发送的显示指令,并基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据。本公开还提供了一种显示处理系统和显示处理装置。

Description

显示处理方法和系统
技术领域
本公开涉及一种显示处理方法和系统。
背景技术
随着科学技术的发展,虚拟显示设备逐渐走入人们的生活,例如AR或VR设备,目前为止,这些技术主要应用于娱乐和游戏,同时,AR和VR设备也可应用于办公和网络等场景中,例如,可以在AR和VR设备中访问虚拟桌面来进行办公和上网,使许多在传统2D显示器的桌面界面中可用的技术工具可以在3D AR/VR设备中提供给用户使用,但是现有技术中若想实现该功能,需要与AR/VR设备连接的计算机同时连接有真实的物理显示器或者小型的硬件模拟器,且需要计算机提供足够的视频端口,造成用户在AR/VR设备中访问虚拟桌面的成本较高。
发明内容
有鉴于此,本公开提供了一种显示处理方法,所述方法包括:利用虚拟驱动创建至少一个虚拟显卡和至少一个虚拟显示器,其中,所述虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;通过所述至少一个虚拟显卡获取操作系统发送的显示指令,并基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据。
根据本公开的实施例,显示处理方法还包括:将所述至少一个虚拟显示器的图像数据存储至对应的存储空间中;从所述存储空间中获取至少一个虚拟显示器的图像数据,并将所述图像数据传输至虚拟显示设备。
根据本公开的实施例,所述每个虚拟显示器具有相应的标识信息;所述显示处理方法还包括:获取待创建的虚拟显示器的显示特征,根据所述显示特征创建虚拟显示器,并在创建成功后生成所述虚拟显示器的标识信息;和/或获取待删除的虚拟显示器的标识信息,并删除对应的虚拟显示器;和/或获取待更新的虚拟显示器的标识信息以及更新的显示特征,利用所述更新的显示特征对所述虚拟显示器进行更新;和/或获取满足预设条件的全部虚拟显示器的标识信息和显示特征,生成统计信息;其中,所述虚拟显示器的显示特征包括分辨率、显示位置、缩放比例中的至少一种,所述满足预设条件的全部虚拟显示器包括统计时刻存在的全部虚拟显示器。
根据本公开的实施例,所述虚拟显卡具有和物理显卡相对应的功能,所述基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据包括:将所述显示指令发送至相应的实体硬件,并利用硬件资源进行图像处理得到对应于所述至少一个虚拟显示器的图像数据;所述硬件资源包括计算机中央处理器或者物理显卡。
根据本公开的实施例,所述显示处理方法应用于计算机设备,所述计算机设备将所述至少一个虚拟显示器的图像数据发送至虚拟显示设备,以在虚拟显示设备的屏幕上显示相应的内容;所述虚拟显示设备包括增强现实显示设备。
本公开还提供了一种显示处理系统,所述系统包括虚拟驱动模块和处理模块,其中:所述虚拟驱动模块用于创建至少一个虚拟显卡和至少一个虚拟显示器,其中,所述虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;所述处理模块用于获取操作系统发送的显示指令,并基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据。
根据本公开的实施例,所述显示处理系统还包括获取模块,其中,所述处理模块还用于将所述至少一个虚拟显示器的图像数据存储至对应的存储空间中;所述获取模块用于从所述存储空间中获取至少一个虚拟显示器的图像数据,并将所述图像数据传输至虚拟显示设备。
根据本公开的实施例,所述每个虚拟显示器具有对应的标识信息;所述显示处理系统还包括管理模块,所述管理模块包括:增加模块,用于获取待创建的虚拟显示器的显示特征,将其传输至虚拟模块进行虚拟显示器的创建,并在创建成功后生成所述虚拟显示器的标识信息;和/或删除模块,用于获取待删除的虚拟显示器的标识信息,并将其传输至虚拟模块进行虚拟显示器的删除;和/或更新模块,用于获取待更新的虚拟显示器的标识信息以及更新的显示特征,并将其传输至虚拟模块进行虚拟显示器的更新;和/或统计模块,用于获取满足预设条件的全部虚拟显示器的标识信息和显示特征,生成统计信息;其中,所述虚拟显示器的显示特征包括分辨率、显示位置、缩放比例中的至少一种,所述满足预设条件的全部虚拟显示器包括统计时刻存在的全部虚拟显示器。
根据本公开的实施例,所述虚拟显卡利用硬件资源基于所述显示指令处理得到对应的图像数据;所述硬件资源包括计算机中央处理器或者物理显卡。
本公开还提供了一种显示处理装置,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述任一项所述的方法。
根据本公开的实施例,可以至少部分地解决现有技术中需要物理显示器或者实体硬件模拟器才能实现虚拟显示设备的虚拟桌面的问题,并因此可以实现无需将物理显示器连接到计算机就可以实现在虚拟显示设备中使用虚拟显示器的技术效果。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的显示处理方法的应用场景;
图2示意性示出了根据本公开实施例的虚拟桌面的示意图;
图3示意性示出了根据本公开实施例的显示处理方法的流程图;
图4示意性示出了根据本公开另一实施例的显示处理方法的流程图;
图5示意性示出了根据本公开实施例的计算机设备与虚拟显示设备交互示意图;
图6示意性示出了根据本公开实施例的显示处理系统的框图;
图7示意性示出了根据本公开另一实施例的显示处理系统的框图;
图8示意性示出了根据本公开实施例的适于实现本公开实施例描述的方法的计算机系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的装置”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的装置等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的装置”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的装置等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。
本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。
本公开的实施例提供了一种显示处理方法,包括:利用虚拟驱动创建至少一个虚拟显卡和至少一个虚拟显示器,其中,所述虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;通过所述至少一个虚拟显卡获取操作系统发送的显示指令,并基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据。
本公开的实施例提供的显示处理方法,可以利用驱动程序虚拟化显卡和显示器,将虚拟显卡和虚拟显示器的相关硬件信息提供给操作系统,使得操作系统将其识别为实体的显示适配器和显示器接入,并与之进行通信,这样,虚拟显卡可以利用计算机CPU等实体硬件进行相应的图形处理工作,并将处理后的数据提供给虚拟显示器,以最终将显示内容提供给虚拟显示设备进行显示。这样,在没有实体的物理显示器或模拟显示器连接到计算机的情况下,也可以实现在虚拟显示设备中使用虚拟显示器的技术效果。
图1示意性示出了根据本公开实施例的显示处理方法的应用场景。需要注意的是,图1所示仅为可以应用本公开实施例的显示处理方法的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他装置、环境或场景。
如图1所示,该应用场景包括虚拟显示设备101、网络102、以及电子设备103,其中,虚拟显示设备101可以是增强现实设备,例如可以是AR眼镜,电子设备103例如可以是电脑主机,电子设备103可以包括或不包括实体显示器104,网络102用以在虚拟显示设备101和电子设备103之间提供通信链路的介质,网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
图2示意性示出了根据本公开实施例的虚拟桌面的示意图。
如图2所示,用户佩戴AR设备坐在电脑前方时,透过AR设备可以看到实体显示器104,同时AR设备中可以显示有桌面A或B,用户可以在AR设备中访问虚拟桌面A或B来进行办公和上网,使许多在传统2D显示器的桌面界面中可用的技术工具可以在3D AR设备中通过虚拟桌面的形式提供给用户使用。
现有技术中若想实现该功能,需要电脑主机连接有真实的物理显示器104,安装在计算机上的AR应用程序可以使用显示捕捉技术来捕获实体显示器的显示内容图像,并使其在AR设备中显示,但是这样对于用户来说,访问AR设备中的虚拟桌面与观看实体显示器相比,并不能起到更好的效果。为解决上述问题,本公开实施例提供的显示处理方法可以在计算机未连接实体显示器的情况下,使用户在虚拟显示设备中访问虚拟桌面。
本公开实施例提供的显示处理方法可以虚拟化显卡和显示器,使主机认为连接了真实的显示器,从而将显示内容通过虚拟显卡处理后提供给虚拟显示器,AR应用程序可以获取虚拟显示器的显示内容,进而发送至AR设备进行显示,虚拟显示器的个数可以是多个,这样,可以在AR设备中可以显示多个虚拟桌面,如图2所示,每个虚拟桌面显示的内容可以不同,虚拟桌面的个数、位置、大小等参数也可以依据用户设置进行调整。
应该理解,图1和图2中的虚拟显示设备、网络、计算机和虚拟桌面的数目仅仅是示意性的。根据实现需要,可以具有任意数目的虚拟显示设备、网络、计算机和虚拟桌面。
图3示意性示出了根据本公开实施例的显示处理方法的流程图。
如图3所示,该显示处理方法可以包括操作S110~操作S120:
在操作S110,利用虚拟驱动创建至少一个虚拟显卡和至少一个虚拟显示器,其中,虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;
在操作S120,通过至少一个虚拟显卡获取操作系统发送的显示指令,并基于显示指令进行图像处理得到对应于至少一个虚拟显示器的图像数据。
根据本公开的实施例,虚拟显卡具有和物理显卡相对应的功能;
操作S120中的基于显示指令进行图像处理得到对应于至少一个虚拟显示器的图像数据包括操作S121。
在操作S121,将显示指令发送至相应的实体硬件,并利用硬件资源进行图像处理得到对应于至少一个虚拟显示器的图像数据;其中,硬件资源包括计算机中央处理器或者物理显卡。
具体地,利用虚拟驱动创建至少一个虚拟显卡(也可称为虚拟显示适配器)和至少一个虚拟显示器,其中,可以为每个虚拟显卡和虚拟显示器分别虚拟一份硬件信息,与真实的硬件设备信息类似,然后利用驱动程序将虚拟硬件信息提供给操作系统,以将虚拟设备安装在系统底层上,使操作系统认为其连接了真实的显卡和显示器,并与之进行通信。
操作系统接收到显示任务时,通过程序接口将显示指令发送给虚拟显卡,虚拟显卡基于显示指令进行图形处理得到显示内容,虚拟显卡能够起到与物理显卡相同的功能,虚拟显卡可将图像处理任务委托给真实的物理硬件进行处理,例如将图像渲染任务委托给CPU或GPU进行处理。处理完成后,虚拟显卡将显示内容提供给虚拟显示器,由于虚拟显示器并不是真实的显示器,不能将内容进行显示,所以可以将显示内容保存至该虚拟显示器对应的存储空间中。由于虚拟显卡和虚拟显示器不是真实的硬件设备,只是驱动程序中的一个程序模块,所以在实际运行过程中,操作系统其实是与驱动程序在进行通信,由驱动程序将图形处理任务委托给真实的物理硬件进行处理,将处理后的数据保存在主存等存储空间中,以供虚拟显示设备从相应的存储空间中获取显示内容,最终在虚拟显示设备的屏幕上显示。
根据本公开的实施例,可以利用驱动程序虚拟化显卡和显示器,使得操作系统将其识别为实体的显示适配器和显示器接入,并与之进行通信,这样,虚拟显卡可以利用计算机CPU等实体硬件进行相应的图形处理工作,并将处理后的数据进行存储,以最终将显示内容提供给虚拟显示设备进行显示。这样,在没有实体的物理显示器或模拟显示器连接到计算机的情况下,也可以得到显示内容,实现在虚拟显示设备中使用虚拟显示器的技术效果。
图4示意性示出了根据本公开另一实施例的显示处理方法的流程图。
如图4所示,根据本公开的实施例,显示处理方法还可以包括操作S130~操作S140:
在操作S130,将至少一个虚拟显示器的图像数据存储至对应的存储空间中;
在操作S140,从存储空间中获取至少一个虚拟显示器的图像数据,并将图像数据传输至虚拟显示设备。
图5示意性示出了根据本公开实施例的计算机设备与虚拟显示设备交互示意图。
如图5所示,根据本公开的实施例,显示处理方法可以应用于计算机设备103,计算机设备103将至少一个虚拟显示器的图像数据发送至虚拟显示设备101,以在虚拟显示设备101的屏幕上显示相应的内容;其中,虚拟显示设备101包括增强现实显示设备。
具体地,虚拟显卡数量可以是多个,虚拟显示器的数量也可以是多个,一个虚拟显卡可以对应多个虚拟显示器。
在创建虚拟显示器时,可以为每个虚拟显示器分配一个对应的存储空间,例如虚拟显示器a对应于存储空间a,虚拟显示器b对应于存储空间b,存储空间a和b具体可以是计算机主存储器上的存储空间,或者是显存上的存储空间。每个虚拟显示器又可以对应于一个虚拟显示设备101上的虚拟桌面,例如虚拟显示器a对应于虚拟桌面A,存储空间a存储的图像数据即为虚拟桌面A需要显示的图像。
虚拟显示设备101与计算机设备103连接,并在计算机设备103上安装有虚拟显示设备应用程序,通过虚拟显示设备应用程序实现虚拟显示设备101与操作系统和虚拟显示器的通信。虚拟显示设备101可以通过手势识别等输入方式获取用户关于某个虚拟桌面的显示任务,并传输至计算机设备103的操作系统,或者计算机设备103通过鼠标输入等方式直接获取用户关于某个虚拟桌面的显示任务,计算机设备103根据显示任务进行图像处理,并将处理得到的图像数据保存至对应于该虚拟桌面的存储空间中。例如,用户双击了虚拟桌面A中的某个文件夹,请求显示该文件夹界面,虚拟显示设备将显示任务发送至计算机设备103,操作系统获取显示任务,生成显示指令发送至虚拟显卡,虚拟显卡可以将指令委托给真实的显卡或CPU进行图像渲染等操作得到图像数据,然后将图像数据保存至存储空间a中,之后可以利用显示捕捉技术获取存储空间a中的图像数据,传输至虚拟显示设备101中,作为虚拟桌面A的显示内容。
在本公开另一实施例中,上述的驱动程序也可以集成于虚拟显示设备应用程序中,作为虚拟显示设备应用程序的一个模块,实现的功能与上述驱动程序描述的功能相同,包括创建虚拟显卡和虚拟显示器、委托实体硬件处理图形任务、保存图像数据等,用户或开发人员还可以通过虚拟显示设备应用程序的显示界面管理虚拟显卡和虚拟显示器。
根据本公开的实施例,虚拟显示方法可以应用在与虚拟显示设备连接的计算机设备中,在计算机设备中创建多个虚拟显示器,利用虚拟显卡分别处理得到每个虚拟显示器的显示内容,可以在虚拟显示设备中显示多个虚拟桌面,以供用户在不同的虚拟桌面上分别进行不同的工作。
根据本公开的实施例,每个虚拟显示器具有相应的标识信息;
本公开实施例的显示处理方法还可以包括操作S150~操作S180:
在操作S150,获取待创建的虚拟显示器的显示特征,根据显示特征创建虚拟显示器,并在创建成功后生成虚拟显示器的标识信息,其中,虚拟显示器的显示特征包括分辨率、显示位置、缩放比例中的至少一种,满足预设条件的全部虚拟显示器包括统计时刻存在的全部虚拟显示器;和/或
在操作S160,获取待删除的虚拟显示器的标识信息,并删除对应的虚拟显示器;和/或
在操作S170,获取待更新的虚拟显示器的标识信息以及更新的显示特征,利用更新的显示特征对虚拟显示器进行更新;和/或
在操作S180,获取满足预设条件的全部虚拟显示器的标识信息和显示特征,生成统计信息。
具体地,为了区分开不同的虚拟显示器,为每个虚拟显示器设置唯一标识信息(虚拟显示器ID),如图5所示的虚拟显示器a、虚拟显示器b等。
用户或开发人员可以通过显示界面来管理虚拟显卡和虚拟显示器,获取用户或开发人员关于虚拟显示器的管理指令,并根据管理指令来增加、删除或更新虚拟显示器的设置。
若要创建一个新的虚拟桌面,可以输入其对虚拟桌面的显示要求,作为要创建的对应虚拟显示器的显示特征,驱动程序根据显示特征创建新的虚拟显示器,并生成其标识信息,例如,若想要增加虚拟桌面C,获取用户关于虚拟桌面C的显示位置、分辨率、缩放比例等要求,作为虚拟桌面C对应的虚拟显示器c的显示特征,进而创建虚拟显示器c,其中显示位置可以是指虚拟桌面左上角所处的坐标值,主虚拟桌面所对应的虚拟显示器的显示位置例如可以是(0,0)。
若要删除某个虚拟显示器,则根据用户输入的标识信息删除相应的虚拟显示器,例如,接收到关于虚拟显示器a的删除指令,则利用驱动程序从操作系统中删除虚拟显示器a的虚拟硬件信息,将虚拟显示器a卸载,对应地,虚拟显示设备中也不再显示虚拟桌面A。
若要更改某个虚拟显示器的显示特征,则可以根据接收到的标识信息找到对应的虚拟显示器,并利用接收到的新的显示特征对该虚拟显示器进行更新。例如,可以根据用户需求,将虚拟显示器A的分辨率由640×480更改为1600×1200。
若要统计虚拟显示器,则可以获取用户输入的统计要求,依据统计要求生成列表等统计数据。例如,用户想要统计从时间X到时间Y创建的所有虚拟显示器的信息,则其输入的预设条件即为时间X到时间Y,查找在这一时间段内创建的所有虚拟显示器,并列出每个虚拟显示器的显示特征,生成列表展示给用户。
根据本公开的实施例,提供给用户或开发人员管理虚拟显示器的接口,可以在特定设置下创建虚拟显示器,或者删除、更新虚拟显示器等操作。
本公开还提供了一种显示处理系统。
图6示意性示出了根据本公开实施例的显示处理系统的框图。
如图6所示,显示处理系统200包括:
虚拟驱动模块210,用于创建至少一个虚拟显卡和至少一个虚拟显示器,其中,虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;
处理模块220,用于获取操作系统发送的显示指令,并基于显示指令进行图像处理得到对应于至少一个虚拟显示器的图像数据。
具体地,虚拟驱动模块210例如可以执行上文描述的操作S110,处理模块220例如可以执行上文描述的操作S120,在此不再赘述。
图7示意性示出了根据本公开另一实施例的显示处理系统的框图。
如图7所示,根据本公开的实施例,显示处理系统还包括获取模块230,其中:
处理模块220还用于将至少一个虚拟显示器的图像数据存储至对应的存储空间中;
所述获取模块230用于从存储空间中获取至少一个虚拟显示器的图像数据,并将图像数据传输至虚拟显示设备。
具体地,处理模块220例如还可以执行上文描述的操作S130,获取模块230例如可以执行上文描述的操作S140,在此不再赘述。
根据本公开的实施例,每个虚拟显示器具有对应的标识信息;
显示处理系统还可以包括管理模块240,所述管理模块240包括:
增加模块241,用于获取待创建的虚拟显示器的显示特征,将其传输至虚拟模块进行虚拟显示器的创建,并在创建成功后生成虚拟显示器的标识信息;和/或
删除模块242,用于获取待删除的虚拟显示器的标识信息,并将其传输至虚拟模块进行虚拟显示器的删除;和/或
更新模块243,用于获取待更新的虚拟显示器的标识信息以及更新的显示特征,并将其传输至虚拟模块进行虚拟显示器的更新;和/或
统计模块244,用于获取满足预设条件的全部虚拟显示器的标识信息和显示特征,生成统计信息;
其中,虚拟显示器的显示特征包括分辨率、显示位置、缩放比例中的至少一种,满足预设条件的全部虚拟显示器包括统计时刻存在的全部虚拟显示器。
具体地,增加模块241例如可以执行上文描述的操作S150,删除模块242例如可以执行上文描述的操作S160,更新模块243例如可以执行上文描述的操作S170,统计模块244例如可以执行上文描述的操作S180,在此不再赘述。
根据本公开的实施例,虚拟显卡利用硬件资源基于显示指令处理得到对应的图像数据;硬件资源包括计算机中央处理器或者物理显卡。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,虚拟驱动模块210、处理模块220、获取模块230、管理模块240、增加模块241、删除模块242、更新模块243、以及统计模块244中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,虚拟驱动模块210、处理模块220、获取模块230、管理模块240、增加模块241、删除模块242、更新模块243、以及统计模块244中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,虚拟驱动模块210、处理模块220、获取模块230、管理模块240、增加模块241、删除模块242、更新模块243、以及统计模块244中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
本公开还提供了一种显示处理装置,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行上述任一项所述的方法。
图8示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的方框图。图8示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统500包括处理器510、计算机可读存储介质520、信号发送器530、以及信号接收器540。该机器人500可以执行根据本公开实施例的方法。
具体地,处理器510例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器510还可以包括用于缓存用途的板载存储器。处理器510可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质520,例如可以是非易失性的计算机可读存储介质,具体示例包括但不限于:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;等等。
计算机可读存储介质520可以包括计算机程序521,该计算机程序521可以包括代码/计算机可执行指令,其在由处理器510执行时使得处理器510执行根据本公开实施例的方法或其任何变形。
计算机程序521可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序521中的代码可以包括一个或多个程序模块,例如包括521A、模块521B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器510执行时,使得处理器510可以执行根据本公开实施例的方法或其任何变形。
根据本公开的实施例,处理器510可以与信号发送器530和信号接收器540进行交互,来执行根据本公开实施例的方法或其任何变形。
根据本发明的实施例,虚拟驱动模块210、处理模块220、获取模块230、管理模块240、增加模块241、删除模块242、更新模块243、以及统计模块244中的至少一个可以实现为参考图8描述的计算机程序模块,其在被处理器510执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

Claims (9)

1.一种显示处理方法,包括:
利用虚拟驱动创建至少一个虚拟显卡和至少一个虚拟显示器,其中,所述虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;
通过所述至少一个虚拟显卡获取操作系统发送的显示指令,并基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据;其中:
所述显示处理方法应用于计算机设备,所述计算机设备将所述至少一个虚拟显示器的图像数据发送至虚拟显示设备,以在虚拟显示设备的屏幕上显示相应的内容;
所述虚拟显示设备包括增强现实显示设备。
2.根据权利要求1所述的显示处理方法,还包括:
将所述至少一个虚拟显示器的图像数据存储至对应的存储空间中;
从所述存储空间中获取至少一个虚拟显示器的图像数据,并将所述图像数据传输至虚拟显示设备。
3.根据权利要求1所述的显示处理方法,其中:
每个虚拟显示器具有相应的标识信息;
所述显示处理方法还包括:
获取待创建的虚拟显示器的显示特征,根据所述显示特征创建虚拟显示器,并在创建成功后生成所述虚拟显示器的标识信息;和/或
获取待删除的虚拟显示器的标识信息,并删除对应的虚拟显示器;和/或
获取待更新的虚拟显示器的标识信息以及更新的显示特征,利用所述更新的显示特征对所述虚拟显示器进行更新;和/或
获取满足预设条件的全部虚拟显示器的标识信息和显示特征,生成统计信息;
其中,所述虚拟显示器的显示特征包括分辨率、显示位置、缩放比例中的至少一种,所述满足预设条件的全部虚拟显示器包括统计时刻存在的全部虚拟显示器。
4.根据权利要求1所述的显示处理方法,其中,所述虚拟显卡具有和物理显卡相对应的功能,所述基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据包括:
将所述显示指令发送至相应的实体硬件,并利用硬件资源进行图像处理得到对应于所述至少一个虚拟显示器的图像数据;
所述硬件资源包括计算机中央处理器或者物理显卡。
5.一种显示处理系统,包括虚拟驱动模块和处理模块,其中:
所述虚拟驱动模块用于创建至少一个虚拟显卡和至少一个虚拟显示器,其中,所述虚拟驱动将虚拟显卡和虚拟显示器的虚拟硬件信息提供至操作系统,使操作系统将虚拟显卡和虚拟显示器识别为实体设备并建立通信;
所述处理模块用于获取操作系统发送的显示指令,并基于所述显示指令进行图像处理得到对应于所述至少一个虚拟显示器的图像数据;其中:
所述显示处理系统应用于计算机设备,所述计算机设备将所述至少一个虚拟显示器的图像数据发送至虚拟显示设备,以在虚拟显示设备的屏幕上显示相应的内容;
所述虚拟显示设备包括增强现实显示设备。
6.根据权利要求5所述的显示处理系统,还包括获取模块,其中,
所述处理模块还用于将所述至少一个虚拟显示器的图像数据存储至对应的存储空间中;
所述获取模块用于从所述存储空间中获取至少一个虚拟显示器的图像数据,并将所述图像数据传输至虚拟显示设备。
7.根据权利要求5所述的显示处理系统,其中:
每个虚拟显示器具有对应的标识信息;
所述显示处理系统还包括管理模块,所述管理模块包括:
增加模块,用于获取待创建的虚拟显示器的显示特征,将其传输至虚拟模块进行虚拟显示器的创建,并在创建成功后生成所述虚拟显示器的标识信息;和/或
删除模块,用于获取待删除的虚拟显示器的标识信息,并将其传输至虚拟模块进行虚拟显示器的删除;和/或
更新模块,用于获取待更新的虚拟显示器的标识信息以及更新的显示特征,并将其传输至虚拟模块进行虚拟显示器的更新;和/或
统计模块,用于获取满足预设条件的全部虚拟显示器的标识信息和显示特征,生成统计信息;
其中,所述虚拟显示器的显示特征包括分辨率、显示位置、缩放比例中的至少一种,所述满足预设条件的全部虚拟显示器包括统计时刻存在的全部虚拟显示器。
8.根据权利要求5所述的显示处理系统,其中:
所述虚拟显卡利用硬件资源基于所述显示指令处理得到对应的图像数据;
所述硬件资源包括计算机中央处理器或者物理显卡。
9.一种显示处理装置,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~4中任一项所述的方法。
CN201811274582.7A 2018-10-29 2018-10-29 显示处理方法和系统 Active CN109522070B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811274582.7A CN109522070B (zh) 2018-10-29 2018-10-29 显示处理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811274582.7A CN109522070B (zh) 2018-10-29 2018-10-29 显示处理方法和系统

Publications (2)

Publication Number Publication Date
CN109522070A CN109522070A (zh) 2019-03-26
CN109522070B true CN109522070B (zh) 2021-07-16

Family

ID=65773771

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811274582.7A Active CN109522070B (zh) 2018-10-29 2018-10-29 显示处理方法和系统

Country Status (1)

Country Link
CN (1) CN109522070B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110187864A (zh) * 2019-06-05 2019-08-30 异起(上海)智能科技有限公司 一种智能眼镜的智能辅助装置和方法
CN110377349B (zh) * 2019-07-17 2022-08-05 深信服科技股份有限公司 接入显示方法、装置、终端、服务器及存储介质
CN110673738B (zh) * 2019-09-29 2022-02-18 联想(北京)有限公司 交互方法和电子设备
CN111611017B (zh) * 2020-05-26 2021-06-15 腾讯科技(深圳)有限公司 一种显卡选择方法和相关装置
CN111736942A (zh) * 2020-08-20 2020-10-02 北京爱奇艺智能科技有限公司 Vr系统中多应用场景显示方法、装置及vr设备
CN112422877A (zh) * 2020-10-27 2021-02-26 西安万像电子科技有限公司 图像显示方法和系统、及源设备
CN113535266B (zh) * 2021-07-15 2023-03-14 上海高仙自动化科技发展有限公司 硬件设备适配方法、装置、芯片及电子设备
CN114489421A (zh) * 2021-12-08 2022-05-13 统信软件技术有限公司 一种虚拟屏幕生成方法、计算设备及存储介质
CN115576457A (zh) * 2022-09-29 2023-01-06 歌尔科技有限公司 显示控制方法和装置、增强现实头戴设备及介质
CN116401017B (zh) * 2023-04-13 2023-11-21 摩尔线程智能科技(北京)有限责任公司 虚拟显卡的实现方法、装置、设备和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101059762A (zh) * 2006-04-20 2007-10-24 联想(北京)有限公司 虚拟机系统及其显卡访问方法
CN101154166A (zh) * 2006-09-25 2008-04-02 联想(北京)有限公司 一种虚拟机系统及其显卡访问方法
CN101159947A (zh) * 2007-11-21 2008-04-09 陈拙夫 一种具有虚屏显示功能的手机、其显示及操作方法
CN101980143A (zh) * 2010-10-26 2011-02-23 南开大学 单台物理投影仪上同时显示多个计算机桌面的方法
CN105103123A (zh) * 2013-02-28 2015-11-25 苹果公司 用于虚拟显示器的系统和方法
CN106970467A (zh) * 2017-03-28 2017-07-21 联想(北京)有限公司 信息显示方法及头戴式显示设备
CN107741863A (zh) * 2017-10-08 2018-02-27 深圳市星策网络科技有限公司 一种显卡的驱动方法和装置
CN108521604A (zh) * 2018-03-30 2018-09-11 新华三云计算技术有限公司 重定向视频的多屏显示方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984540B2 (en) * 2012-09-14 2015-03-17 Taifatech Inc. Multi-user computer system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101059762A (zh) * 2006-04-20 2007-10-24 联想(北京)有限公司 虚拟机系统及其显卡访问方法
CN101154166A (zh) * 2006-09-25 2008-04-02 联想(北京)有限公司 一种虚拟机系统及其显卡访问方法
CN101159947A (zh) * 2007-11-21 2008-04-09 陈拙夫 一种具有虚屏显示功能的手机、其显示及操作方法
CN101980143A (zh) * 2010-10-26 2011-02-23 南开大学 单台物理投影仪上同时显示多个计算机桌面的方法
CN105103123A (zh) * 2013-02-28 2015-11-25 苹果公司 用于虚拟显示器的系统和方法
CN106970467A (zh) * 2017-03-28 2017-07-21 联想(北京)有限公司 信息显示方法及头戴式显示设备
CN107741863A (zh) * 2017-10-08 2018-02-27 深圳市星策网络科技有限公司 一种显卡的驱动方法和装置
CN108521604A (zh) * 2018-03-30 2018-09-11 新华三云计算技术有限公司 重定向视频的多屏显示方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
windows7/windows10 虚拟显示器部署(Virtual monitor);Jaylon88;《https://blog.csdn.net/dailongjian2008/article/details/80958163》;20180709;第1-6页 *

Also Published As

Publication number Publication date
CN109522070A (zh) 2019-03-26

Similar Documents

Publication Publication Date Title
CN109522070B (zh) 显示处理方法和系统
JP5027899B2 (ja) 遠隔の表示部へ伝送するためにフレームバッファをコピーする方法及びシステム
US8718400B2 (en) Methods and systems for prioritizing dirty regions within an image
US9710217B2 (en) Identifying the positioning in a multiple display grid
JP5279754B2 (ja) 遠隔の表示部へ選択的に伝送するために描画プリミティブを特定する方法及びシステム
US9654603B1 (en) Client-side rendering for virtual mobile infrastructure
US9300720B1 (en) Systems and methods for providing user inputs to remote mobile operating systems
EP2899687B1 (en) Method and device for processing graphics data
CN109976523B (zh) 信息处理方法和电子设备
US9444912B1 (en) Virtual mobile infrastructure for mobile devices
KR20120099776A (ko) 디스플레이 표면을 복수의 가상의 디스플레이 영역들로 분할하기 위한 장치 및 방법
CN103870674A (zh) 在台式计算机上实现远程游戏服务器
EP2882168A1 (en) Method, system and client device for mapping multiple virtual machines
CN104765636B (zh) 一种远程桌面图像的合成方法和装置
CN115482325B (zh) 画面渲染方法、装置、系统、设备及介质
KR20140027741A (ko) 응용 서비스 제공 시스템 및 방법, 응용 서비스를 위한 서버 장치 및 클라이언트 장치
CN108595284B (zh) 一种纹理共享方法、计算机设备和存储介质
CN112799801A (zh) 一种模拟鼠标指针绘制方法、装置、设备和介质
KR20210154828A (ko) 의미론적-증강 인공-현실 경험
US9459910B1 (en) Controlling a layered driver
US10719286B2 (en) Mechanism to present in an atomic manner a single buffer that covers multiple displays
KR20210086860A (ko) 스페셜 매핑 기능을 활용한 실시간 공간 스캔 및 3d공간 모델링을 통한 3차원 보건안전환경(hse) 점검관리 지원 시스템 및 그 방법
CN111145358A (zh) 图像处理方法、装置、硬件装置
US11181975B2 (en) Field of view movement variation-based security profile assignment to physical assets at a location
US20220164023A1 (en) Dynamically switching user input devices

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