CN112116521A - 一种图像采集编码方法及装置 - Google Patents

一种图像采集编码方法及装置 Download PDF

Info

Publication number
CN112116521A
CN112116521A CN202010869226.0A CN202010869226A CN112116521A CN 112116521 A CN112116521 A CN 112116521A CN 202010869226 A CN202010869226 A CN 202010869226A CN 112116521 A CN112116521 A CN 112116521A
Authority
CN
China
Prior art keywords
image data
direct3d
opencl
image
interface
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.)
Pending
Application number
CN202010869226.0A
Other languages
English (en)
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.)
Xian Wanxiang Electronics Technology Co Ltd
Original Assignee
Xian Wanxiang Electronics Technology 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 Xian Wanxiang Electronics Technology Co Ltd filed Critical Xian Wanxiang Electronics Technology Co Ltd
Priority to CN202010869226.0A priority Critical patent/CN112116521A/zh
Publication of CN112116521A publication Critical patent/CN112116521A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本公开提供一种图像采集编码方法及装置,涉及图像处理技术领域,解决现有技术中图像采集编码对源端设备系统资源占用率高,图像采集编码效率低的问题。具体技术方案为:首先图形处理器GPU采集源端设备的图像数据,并将图像数据保存在缓存区中;然后GPU对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端。本公开用于图像采集编码。

Description

一种图像采集编码方法及装置
技术领域
本公开涉及图像处理技术领域,尤其涉及一种图像采集编码方法及装置。
背景技术
在图传系统中,由采集端对图像源设备的桌面图像进行采集,并将采集到的图像经编码后发送给接收端,由接收端解码后显示在连接的显示器上。图像源设备可以为源端计算机。因为采集和编码的工作量较大,且通常由图像源设备完成,所以采集和编码的处理会占用较多的中央处理器CPU资源和内存资源,对图像源设备的性能影响较大。
在win2000,XP等操作系统的源端计算机中,图像处理流程如下:首先,CPU采集源端计算机的桌面图像,并将采集到的图像数据保存在主机内存中(实质为从GPU内存拷贝到主机内存,为系统自身的处理规则),然后,CPU将图像数据拷贝到图形处理器GPU内存中,由GPU对图像数据进行编码;接下来,GPU将编码数据拷贝到CPU的主机内存中;最后,CPU将编码数据通过网络发送到接收端。
可见,在上述对图像的采集编码的处理方法中,图像数据在主机内存和GPU内存之间存在多次拷贝,不仅导致采集编码流程占用的CPU资源较多,影响源端计算机的处理性能,而且延长采集编码的处理时长,降低接收端显示图像的实时性。
发明内容
本公开实施例提供一种图像采集编码方法、装置、设备及存储介质,能够解决现有技术中图像采集编码对源端设备系统资源占用率高,图像采集编码效率低的问题。所述技术方案如下:
根据本公开实施例的第一方面,提供一种图像采集编码方法,该方法包括:
图形处理器GPU采集源端设备的图像数据,并将所述图像数据保存在缓存区中;
GPU对所述图像数据进行编码生成编码数据,并将所述编码数据复制到主机内存中,以便中央处理器CPU将所述编码数据发送到接收端。
本公开实施例提供的图像采集编码方法,首先图形处理器GPU采集源端设备的图像数据,并将图像数据保存在缓存区中;然后GPU对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端。本公开的采集和编码处理流程,大部分均在GPU中运行,避免了图像数据采集后在主机内存和GPU内存之间的两次拷贝,降低了对源端设备系统资源的占用,不仅能够提高源端设备的处理性能,而且可以缩短采集编码的处理耗时,提高处理效率,实现了更高的采集帧率。
在一个实施例中,图形处理器GPU采集源端设备的图像数据包括:
所述GPU采集所述源端设备基于三维规范接口Direct3D的图像数据,所述图像数据为桌面图像数据。
本公开实施例通过上述方法,可以实现windows操作系统中基于Direct3D图像数据的采集。
在一个实施例中,GPU采集所述源端设备基于Direct3D的图像数据包括:
创建三维规范接口装置Direct3D Device显卡接口,根据所述Direct3D Device显卡接口获取第一输出IDXGIOutput接口,根据所述IDXGIOutput接口获得第二输出IDXGIOutput1接口;
根据IDXGIOutput1接口获取复制输出IDXGIOutputDuplication接口;
使用IDXGIOutputDuplication接口,采集所述源端设备基于Direct3D的图像数据。
本公开实施例通过以上方法,提供了一种具体的实现windows操作系统中基于Direct3D图像数据的采集的方法。
在一个实施例中,在将所述图像数据保存在缓存区中之前,所述方法还包括:
将所述基于Direct3D的图像数据转换为基于OpenCL的图像数据。
本公开实施例通过以上方法,将基于Direct3D的图像数据转换为基于OpenCL的图像数据,将编码工作从对基于Direct3D的图像数据进行编码转换为对基于OpenCL的图像数据进行编码,大幅度减小了编码的复杂程度。
在一个实施例中,将所述基于Direct3D的图像数据转换为基于OpenCL的图像数据包括:
启用OpenCL的OpenCL与Direct3D的互操作功能;
调用功能函数创建基于OpenCL的图像数据。
相应的,所述对所述图像数据进行编码生成编码数据包括:
基于OpenCL算法,对所述OpenCL的图像数据进行编码生成所述编码数据。
本公开实施例通过以上方法,提供了一种具体的将基于Direct3D的图像数据转换为基于OpenCL的图像数据的方法。
根据本公开实施例的第二方面,提供一种图像采集编码装置,包括:采集模块和编码模块;
所述采集模块,用于采集源端设备的图像数据,并将所述图像数据保存在缓存区中;
所述编码模块,用于对所述图像数据进行编码生成编码数据,并将所述编码数据复制到主机内存中,以便中央处理器CPU将所述编码数据发送到接收端。
本公开实施例提供的图像采集编码装置,包括采集模块和编码模块;采集模块采集源端设备的图像数据,并将图像数据保存在缓存区中;编码模块对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端。本公开的采集和编码处理流程,大部分均在GPU中运行,避免了图像数据采集后在主机内存和GPU内存之间的两次拷贝,降低了对源端设备系统资源的占用,不仅能够提高源端设备的处理性能,而且可以缩短采集编码的处理耗时,提高处理效率,实现了更高的采集帧率。
在一个实施例中,采集模块具体用于采集所述源端设备基于Direct3D的图像数据,所述图像数据为桌面图像数据。
本公开实施例通过以上设置,可以实现windows操作系统中基于Direct3D图像数据的采集。
在一个实施例中,采集模块包括第一创建子模块、获取子模块、采集子模块;
所述第一创建子模块,用于创建Direct3D Device显卡接口;
所述获取子模块,用于根据所述Direct3D Device显卡接口获取IDXGIOutput接口,根据所述IDXGIOutput接口获得IDXGIOutput1接口,根据IDXGIOutput1接口获取IDXGIOutputDuplication接口;
所述采集子模块,用于使用IDXGIOutputDuplication接口,采集所述源端设备基于Direct3D的图像数据。
本公开实施例通过以上设置,提供了一种具体的实现windows操作系统中基于Direct3D图像数据的采集的方法。
在一个实施例中,上述装置还包括转换模块,用于将所述基于Direct3D的图像数据转换为基于OpenCL的图像数据。
本公开实施例通过以上设置,将基于Direct3D的图像数据转换为基于OpenCL的图像数据,将编码工作从对基于Direct3D的图像数据进行编码转换为对基于OpenCL的图像数据进行编码,大幅度减小了编码的复杂程度。
在一个实施例中,转换模块包括启动子模块和第二创建子模块;
所述启动子模块,用于启用OpenCL的OpenCL与Direct3D的互操作功能;
所述第二创建子模块,用于调用功能函数创建基于OpenCL的图像数据;
相应的,所述编码模块用于基于OpenCL算法,对所述OpenCL的图像数据进行编码生成所述编码数据。
本公开实施例通过以上设置,提供了一种具体的将基于Direct3D的图像数据转换为基于OpenCL的图像数据的方法。
根据本公开实施例的第三方面,提供一种图像采集编码设备,所述图像采集编码设备包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现上述任一项所述的图像采集编码方法中所执行的步骤。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现上述任一项所述的图像采集编码方法中所执行的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种图像采集编码方法的流程图;
图2是本公开实施例提供的一种图像采集编码方法的流程图;
图3是本公开实施例提供的一种图像采集编码装置的结构图;
图4是本公开实施例提供的一种图像采集编码装置的结构图;
图5是本公开实施例提供的一种图像采集编码装置的结构图;
图6是本公开实施例提供的一种图像采集编码装置的结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的系统和方法的例子。
本公开实施例提供一种图像采集编码方法,如图1所示,该图像采集编码方法包括以下步骤:
步骤101、图形处理器GPU采集源端设备的图像数据,并将图像数据保存在缓存区中;
具体的,源端设备通常指源端计算机。
在一个实施例中,图形处理器GPU采集源端设备的图像数据包括:
GPU采集源端设备基于三维规范接口Direct3D的图像数据,图像数据为桌面图像数据。
具体的,处理主程序根据Direct3D提供的桌面复制多媒体编程接口的基础架构DXGI Desktop Duplication方式,控制GPU采集源端计算机的桌面图像,将采集到的基于Direct3D的图像数据保存在GPU的Direct3D缓冲区中。其中,处理主程序指采集线程。
本公开实施例通过上述方法,可以实现windows操作系统中基于Direct3D图像数据的采集。
在一个实施例中,可以使用DXGI Desktop Duplication方式采集桌面图像,GPU采集源端设备基于Direct3D的图像数据包括:
创建三维规范接口装置Direct3D Device显卡接口,根据Direct3D Device显卡接口获取第一输出IDXGIOutput接口,根据IDXGIOutput接口获得第二输出IDXGIOutput1接口;
根据IDXGIOutput1接口获取复制输出IDXGIOutputDuplication接口;
使用IDXGIOutputDuplication接口,采集源端设备基于Direct3D的图像数据。
具体的,桌面图像的图像数据保存在GPU的Direct3D缓冲区(IDXGI Resource),本公开实施例通过以上方法,提供了一种具体的实现windows操作系统中基于Direct3D图像数据的采集的方法。
在一个实施例中,在将图像数据保存在缓存区中之前,上述方法还包括:
将基于Direct3D的图像数据转换为基于开放运算语言OpenCL的图像数据。
在本实施例中,处理主程序将GPU的Direct3D缓冲区中的基于Direct3D的图像数据,转换为基于OpenCL的图像数据,并将基于OpenCL的图像数据保存在GPU内存中。
本公开实施例通过以上方法,将基于Direct3D的图像数据转换为基于OpenCL的图像数据,将编码工作从对基于Direct3D的图像数据进行编码转换为对基于OpenCL的图像数据进行编码,大幅度减小了编码的复杂程度。
在一个实施例中,将基于Direct3D的图像数据转换为基于OpenCL的图像数据包括:
启用OpenCL的OpenCL与Direct3D的互操作功能;
调用功能函数创建基于OpenCL的图像数据。
相应的,GPU对图像数据进行编码生成编码数据包括:
GPU基于OpenCL算法,对OpenCL的图像数据进行编码生成编码数据。
实际应用中,启用OpenCL与Direct3D 11的互操作功能(interoperability),该互操作功能为cl_khr_d3d11_sharing扩展功能。
调用功能函数clCreateFromD3D11Texture2DKHR,由该功能函数实现基于Direct3D的图像数据,创建基于OpenCL的图像数据,并将创建的基于OpenCL的图像数据保存在GPU内存中,其中基于OpenCL的图像数据包括二维2D纹理。
这样,OpenCL可以直接访问GPU内存中的图像数据,而无需将图像数据从GPU内存拷贝到主机内存中,提高处理效率。
本公开实施例通过以上方法,提供了一种具体的将基于Direct3D的图像数据转换为基于OpenCL的图像数据的方法。
步骤102、GPU对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端;
在本实施例中,GPU基于OpenCL算法对GPU内存中的图像数据进行编码,生成编码数据,并将编码数据从GPU内存拷贝到主机内存中。
本公开实施例提供的图像采集编码方法,首先图形处理器GPU采集源端设备的图像数据,并将图像数据保存在缓存区中;然后GPU对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端。本公开的采集和编码处理流程,大部分均在GPU中运行,避免了图像数据采集后在主机内存和GPU内存之间的两次拷贝,降低了对源端设备系统资源的占用,不仅能够提高源端设备的处理性能,而且可以缩短采集编码的处理耗时,提高处理效率,实现了更高的采集帧率。
基于上述图1对应的实施例提供的图像采集编码方法,本公开另一实施例提供一种图像采集编码方法,参照图2所示,本实施例提供的图像采集编码方法包括以下步骤:
步骤201、处理主程序根据Direct3D提供的DXGI Desktop Duplication方式,控制GPU采集源端计算机的桌面图像;将采集到的基于Direct3D的图像数据保存在GPU的Direct3D缓冲区中。
具体的,处理主程序为采集线程,在本步骤中,可以使用DXGI DesktopDuplication方式采集桌面图像。具体的,使用DXGI Desktop Duplication方式采集桌面图像的具体步骤包括:
1)创建Direct3D Device的显卡接口,根据该显卡接口获取IDXGI Output接口;根据IDXGIOutput接口获得IDXGIOutput1接口。
2)通过桌面复制输出DuplicateOutput方法,根据IDXGIOutput1接口获取IDXGIOutputDuplication接口。
3)使用IDXGIOutputDuplication接口,采集源端计算机的桌面图像,并将桌面画面的图像数据保存在GPU的Direct3D缓冲区(IDXGIResource)。
步骤202、处理主程序将GPU的Direct3D缓冲区中的基于Direct3D的图像数据,转换为基于OpenCL的图像数据,并将基于OpenCL的图像数据保存在GPU内存中。
具体的,以Direct3D 11为例子进行说明:
(1)启用OpenCL的OpenCL与Direct3D 11的互操作功能(interoperability)
具体的,OpenCL与Direct3D 11的互操作功能(interoperability)为cl_khr_d3d11_sharing扩展功能。
(2)调用功能函数clCreateFromD3D11Texture2DKHR。
由该功能函数实现基于Direct3D的图像数据,创建基于OpenCL的图像数据,并将创建的基于OpenCL的图像数据保存在GPU内存中,其中,基于OpenCL的图像数据包括2D纹理。
这样,OpenCL可以直接访问GPU内存中的图像数据,而无需将图像数据从GPU内存拷贝到主机内存中,提高处理效率。
步骤203、GPU基于OpenCL算法,对GPU内存中的图像数据进行编码,生成编码数据。
步骤204、处理主程序将编码数据从GPU内存拷贝到主机内存中,并将编码数据发送到接收端。
可见,本发明的采集和处理流程,大部分均在GPU中运行,以及在图像采集后避免图像数据在主机内存和GPU内存之间的两次拷贝。这样,可以降低对系统资源占用和降低时延,提高处理效率,此外,能够提高系统性能,实现更高的采集帧率。
本公开基于操作系统(Win8,Win10)提供的OpenCL和Direct3D 11的互操作功能(interoperability),能够减少图像数据在主机内存和GPU内存之间的拷贝次数;首先,将GPU采集到的基于Direct3D的图像数据转换为基于OpenCL的图像数据并保存在GPU内存中,然后GPU基于OpenCL算法对GPU内存中的图像数据进行编码,最后将编码数据拷贝到CPU的主机内存并发送给接收端。这样,降低采集和编码处理对源端设备系统资源的占用,不仅能够提高源端设备的处理性能,而且可以缩短采集编码的处理耗时。
基于上述图1和图2对应的实施例中所描述的图像采集编码方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。
本公开实施例提供一种图像采集编码装置,如图3所示,该图像采集编码装置30包括:采集模块301和编码模块302;
采集模块301,用于采集源端设备的图像数据,并将图像数据保存在缓存区中;
编码模块302,用于对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端。
本公开实施例提供的图像采集编码装置,包括采集模块301和编码模块302;采集模块301采集源端设备的图像数据,并将图像数据保存在缓存区中;编码模块302对图像数据进行编码生成编码数据,并将编码数据复制到主机内存中,以便中央处理器CPU将编码数据发送到接收端。本公开的采集和编码处理流程,大部分均在GPU中运行,避免了图像数据采集后在主机内存和GPU内存之间的两次拷贝,降低了对源端设备系统资源的占用,不仅能够提高源端设备的处理性能,而且可以缩短采集编码的处理耗时,提高处理效率,实现了更高的采集帧率。
在一个实施例中,采集模块301具体用于采集源端设备基于Direct3D的图像数据,图像数据为桌面图像数据。
本公开实施例通过以上设置,可以实现windows操作系统中基于Direct3D图像数据的采集。
在一个实施例中,如图4所示,采集模块301包括第一创建子模块3011、获取子模块3012、采集子模块3013;
第一创建子模块3011,用于创建Direct3D Device显卡接口;
获取子模块3012,用于根据Direct3D Device显卡接口获取IDXGIOutput接口,根据IDXGIOutput接口获得IDXGIOutput1接口,根据IDXGIOutput1接口获取IDXGIOutputDuplication接口;
采集子模块3013,用于使用IDXGIOutputDuplication接口,采集源端设备基于Direct3D的图像数据。
本公开实施例通过以上设置,提供了一种具体的实现windows操作系统中基于Direct3D图像数据的采集的方法。
在一个实施例中,如图5所示,上述装置还包括转换模块303,用于将基于Direct3D的图像数据转换为基于OpenCL的图像数据。
本公开实施例通过以上设置,将基于Direct3D的图像数据转换为基于OpenCL的图像数据,将编码工作从对基于Direct3D的图像数据进行编码转换为对基于OpenCL的图像数据进行编码,大幅度减小了编码的复杂程度。
在一个实施例中,如图6所示,转换模块303包括启动子模块3031和第二创建子模块3032;
启动子模块3041,用于启用OpenCL的OpenCL与Direct3D的互操作功能;
第二创建子模块3042,用于调用功能函数创建基于OpenCL的图像数据;
相应的,编码模块302用于基于OpenCL算法,对OpenCL的图像数据进行编码生成编码数据。
本公开实施例通过以上设置,提供了一种具体的将基于Direct3D的图像数据转换为基于OpenCL的图像数据的方法。
基于上述图1和图2对应的实施例中描述的图像采集编码方法,本公开另一实施例还提供一种图像采集编码设备,该图像采集编码设备包括处理器和存储器,存储器中存储有至少一条计算机指令,该指令由处理器加载并执行以实现上述图1和图2对应的实施例中所描述的图像采集编码方法。
基于上述图1和图2对应的实施例中所描述的图像采集编码方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有至少一条计算机指令,该计算机指令由处理器加载并用于执行上述图1和图2对应的实施例中所描述的图像采集编码方法,此处不再赘述。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (10)

1.一种图像采集编码方法,其特征在于,所述方法包括:
图形处理器GPU采集源端设备的图像数据,并将所述图像数据保存在缓存区中;
GPU对所述图像数据进行编码生成编码数据,并将所述编码数据复制到主机内存中,以便中央处理器CPU将所述编码数据发送到接收端。
2.根据权利要求1所述的图像采集编码方法,其特征在于,所述图形处理器GPU采集源端设备的图像数据包括:
所述GPU采集所述源端设备基于三维规范接口Direct3D的图像数据,所述图像数据为桌面图像数据。
3.根据权利要求2所述的图像采集编码方法,其特征在于,所述GPU采集所述源端设备基于Direct3D的图像数据包括:
创建三维规范接口装置Direct3D Device显卡接口,根据所述Direct3D Device显卡接口获取第一输出IDXGIOutput接口,根据所述IDXGIOutput接口获得第二输出IDXGIOutput1接口;
根据IDXGIOutput1接口获取复制输出IDXGIOutputDuplication接口;
使用IDXGIOutputDuplication接口,采集所述源端设备基于Direct3D的图像数据。
4.根据权利要求2所述的图像采集编码方法,其特征在于,所述将所述图像数据保存在缓存区中之前,所述方法还包括:
将所述基于Direct3D的图像数据转换为基于开放运算语言OpenCL的图像数据。
5.根据权利要求4所述的图像采集编码方法,其特征在于,所述将所述基于Direct3D的图像数据转换为基于OpenCL的图像数据包括:
启用OpenCL的OpenCL与Direct3D的互操作功能;
调用功能函数创建基于OpenCL的图像数据。
相应的,所述GPU对所述图像数据进行编码生成编码数据包括:
所述GPU基于OpenCL算法,对所述OpenCL的图像数据进行编码生成所述编码数据。
6.一种图像采集编码装置,其特征在于,包括采集模块和编码模块;
所述采集模块,用于采集源端设备的图像数据,并将所述图像数据保存在缓存区中;
所述编码模块,用于对所述图像数据进行编码生成编码数据,并将所述编码数据复制到主机内存中,以便中央处理器CPU将所述编码数据发送到接收端。
7.根据权利要求6所述的图像采集编码装置,其特征在于,所述采集模块具体用于采集所述源端设备基于Direct3D的图像数据,所述图像数据为桌面图像数据。
8.根据权利要求7所述的图像采集编码装置,其特征在于,所述采集模块包括第一创建子模块、获取子模块、采集子模块;
所述第一创建子模块,用于创建Direct3D Device显卡接口;
所述获取子模块,用于根据所述Direct3D Device显卡接口获取IDXGIOutput接口,根据所述IDXGIOutput接口获得IDXGIOutput1接口,根据IDXGIOutput1接口获取IDXGIOutputDuplication接口;
所述采集子模块,用于使用IDXGIOutputDuplication接口,采集所述源端设备基于Direct3D的图像数据。
9.根据权利要求7所述的图像采集编码装置,其特征在于,还包括转换模块,用于将所述基于Direct3D的图像数据转换为基于OpenCL的图像数据。
10.根据权利要求9所述的图像采集编码装置,其特征在于,所述转换模块包括启动子模块和第二创建子模块;
所述启动子模块,用于启用OpenCL的OpenCL与Direct3D的互操作功能;
所述第二创建子模块,用于调用功能函数创建基于OpenCL的图像数据;
相应的,所述编码模块用于基于OpenCL算法,对所述OpenCL的图像数据进行编码生成所述编码数据。
CN202010869226.0A 2020-08-26 2020-08-26 一种图像采集编码方法及装置 Pending CN112116521A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010869226.0A CN112116521A (zh) 2020-08-26 2020-08-26 一种图像采集编码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010869226.0A CN112116521A (zh) 2020-08-26 2020-08-26 一种图像采集编码方法及装置

Publications (1)

Publication Number Publication Date
CN112116521A true CN112116521A (zh) 2020-12-22

Family

ID=73805449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010869226.0A Pending CN112116521A (zh) 2020-08-26 2020-08-26 一种图像采集编码方法及装置

Country Status (1)

Country Link
CN (1) CN112116521A (zh)

Similar Documents

Publication Publication Date Title
JP7191240B2 (ja) ビデオストリーム復号方法、装置、端末機器およびプログラム
US9576340B2 (en) Render-assisted compression for remote graphics
CN111354063B (zh) 一种三维元素渲染方法、桌面云服务端及桌面云系统
CN111026493B (zh) 界面渲染的处理方法和装置
CN113727142A (zh) 云渲染方法及装置、计算机可存储介质
WO2022206960A1 (zh) 视频转码方法、系统及电子设备
CN108495174B (zh) 一种h5页面效果生成视频文件的方法及系统
CN110807111A (zh) 三维图形的处理方法及装置、存储介质、电子设备
KR102242767B1 (ko) 이미지 생성 방법 및 디바이스
CN113496465A (zh) 图像缩放
JPWO2011077550A1 (ja) 画面中継装置
KR102282233B1 (ko) 비디오 인코딩의 연기된 포스트-프로세스들을 위한 시스템들 및 방법들
CN110798497A (zh) 混合现实交互系统和方法
JP6186429B2 (ja) 情報処理装置、制御方法、プログラム、及び記録媒体
CN112116521A (zh) 一种图像采集编码方法及装置
CN108668170B (zh) 图像信息处理方法及装置、存储介质
CN114359020A (zh) 图像处理方法、装置、存储介质及电子设备
US10656956B2 (en) Virtual desktop server for supporting high-quality graphics processing and method for processing high-quality graphics using the same
CN112445624A (zh) 一种面向任务的gpu资源优化配置方法及装置
WO2015149587A1 (zh) 一种图计算预处理的装置、方法及系统
EP4362469A1 (en) Data processing method, system and electronic apparatus
EP4057138A1 (en) Improved streaming of graphic rendering elements
CN110022480B (zh) 一种基于amd显卡的h265硬件编码方法及直播平台
CN102332151A (zh) 大批量图片的处理方法及系统
CN117896534A (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