混合图像与加密远程传输系统、方法及设备与流程
未命名
10-09
阅读:126
评论:0
1.本发明涉及通讯技术,具体而言,涉及一种混合图像与加密远程传输系统、方法及设备。
背景技术:
2.随着计算机技术的发展,数据传输需求越来越大,尤其是图像传输技术近年得到了广泛的应用,例如医学图像诊断、视频会议、远程监控等。当前的图像传输技术主要包括:实时图像传输技术、压缩图像传输技术和立体图像传输技术,但是往往存在图像传输信息量少、安全性低和使用场景单一等问题。
技术实现要素:
3.本发明解决的问题为图像传输信息量少、安全性低和使用场景单一的问题。
4.为解决上述技术问题,本发明提供了一种混合图像与加密远程传输系统。
5.本发明的技术方案是:包括:获取模块、云端渲染装置、混合模块、加密模块、传输模块、解密模块和客户端;所述获取模块,被配置为获取图像数据和所述水印图像;所述云端渲染装置,被配置为对图像数据进行渲染,获得主图像和副图像,并分别将所述主图像和所述副图像设置为左视口图像和右视口图像,以及对第二混合图像进行渲染得到混合图像;所述混合模块,被配置为将云端渲染装置渲染后的所述左视口图像和所述右视口图像进行混合,得到第一混合图像;所述加密模块,被配置为将所述第一混合图像,并通过混沌加密算法对所述第一混合图像进行加密得到第二混合图像;所述传输模块,被配置为将所述混合图像传输至所述客户端;所述解密模块,被配置为对所述混合图像进行解密和分离得到解密图像;所述客户端,被配置为上传所述图像数据和对所述解密图像进行显示。
6.本发明的有益技术效果是:通过混沌加密算法对图像数据进行加密提高传输过程的安全性能,并设置了多种传输场景可以实现对多种数据的传输,在传输过程中可以包含更多的图现数据信息以减少传输对是视频数据造成的损失,且本发明的渲染和加密过程在云端实现,极大的降低了对客户端性能的要求。
7.可选地,所述传输模块包括:三维模型传输单元、场景传输单元和二维图像传输单元;所述三维模型传输单元、用于对三维模型设置图像参数,并将所述图像参数以及三维模型传输至云端渲染装置;所述场景传输单元,用于对场景图像数据设置图像参数,并将所述图像参数以及场景图像数据传输至云端渲染装置;所述二维图像传输单元,用于将平面二维图像传输至云端渲染装置,所述水印图像传输单元,用于将水印图像传输至所述云端渲染装置。
8.由此,通过传输单元将原始的图像数据进行分析并设置图像参数,然后将图像参数以及图像传输到云端渲染装置,可以实现多种数据传输并且可以包含更多的图像数据信息。
9.可选地,所述云端渲染装置包括:图像处理器、左视口单元、右视口单元;所述左视
口单元,用于对主图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到左视口图像,并将左视口图像传输至图像处理器的帧缓冲区;所述右视口单元,用于对副图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到右视口图像,并将右视口图像传输至图像处理器的帧缓冲区;图像处理器,被配置为对图像数据进行渲染获得主图像和副图像,以及将右视口图像和左视口图像传输至所述混合加密模块。
10.由此,通过云端渲染装置对图片进行渲染,可以在很大程度上降低客户端设备的计算压力,并且可以对图像数据进行更全面的传输以提高画面的质量,降低在传输过程中对图像数据的损耗。
11.可选地,所述混合加密模块具体包括:第一立体图像混合分离加密单元、第二立体图像混合分离加密单元和第三立体图像混合分离加密单元;所述第一立体图像混合分离加密单元,用于通过超混沌lorenz系统的立体图像混合方式对三维模型和场景进行混合加密;所述第二立体图像混合分离加密单元,用于将所述左视口图像和所述右视口图像的rgb888图像转换为yuv420图像,再将转化后的yuv420格式的所述左视口图像和所述右视口图像混合成一幅rgb888图像,实现对三维模型和场景进行混合加密;所述第三立体图像混合分离加密单元,将所述左视口图像和所述右视口图像的rgb888图像混合成一副rgb48或argb64的高位存储空间图像,实现对三维模型和场景进行混合加密。
12.由此,通过第一立体图像混合分离加密单元、第二立体图像混合分离加密单元和第三立体图像混合分离加密单元;对图像数据进行加密,可以有效的提高图像数据在传输过程中的安全性能。
13.可选地,混合加密模块还包括:普通加密单元和水印添加单元;所述普通加密单元,用于通过混沌加密算法对主图像进行加密;所述水印添加单元,被配置为将所述水印图像设置为幅图像,并将所述幅图像嵌入所述主图像中,生成所述混沌图像。
14.由此,可以实现对二维图像增加水印设置,以及对一些安全需求较低的图像数据进行加密,可以有效避免图像数据被他人盗用,以及根据安全需求对图像数据进行加密,在一定程度上降低传输成本,以及提高传输效率。
15.可选地,还包括:编码模块和解码模块;所述编码模块,将获取到的图像数据进行压缩处理并通过压缩算法将原始的图像数据转换为比特流数据;所述解码模块,将获取到的比特流数据进行解码,还原为可播放的图像数据。
16.由此,通过编码模块,对图像数据进行压缩处理,以达到减少传输量和提高传输效率等有益效果;最后通过解码模块,我们可以恢复原始的图像数据,在文件传输过程中获得高质量的图像。
17.可选地,所述云端解密单元,被配置为在云端将混合图像进行分离得到解密主图像和解密幅图像,将普通加密单元加密的加密图像数据及进行解密,以及对所述水印添加单元生成所述混沌图像进行去水印处理;所述客户端解密单元,被配置为通过所述客户端将混合图像进行分离得到所述解密主图像和所述解密幅图像,将普通加密单元加密的加密图像数据及进行解密,以及对所述水印添加单元生成所述混沌图像进行去水印处理。
18.由此,通过云端解密单元在云端将混合图像进行分离,从中获得解密主图像和解密幅图像,同时解密被普通加密单元加密的加密图像数据。解密之后,可以将原始的图像数据返回给客户端,保证图像信息的完整性和安全性。通过云端解密单元和客户端解密单元
的协作,可以对加密的混合图像进行分离、解密,还原出原始的图像数据,并且有效的降低了客户端解密单元的计算需求,在保护用户的隐私和数据安全的前提下,提高文件传输的安全性和可靠性,并且降低了传输成本。
19.可选地,还包括:抓取单元,用于抓取云端渲染装置中第一目标图像,并将第一目标图像设置为图像数据。
20.由此,当所需要的目标图像数据为整体画面的一部分时,通过抓取单元实现对目标数据的抓取。
21.可选地,还包括:窗口合成器,被配置为当所述主图像的数量大于一时,则将则将其全部所述主图像进行合成处理,并将合成后的图像设置为所述左视口图像;当所述副图像的数量大于一时,则将则将其全部所述副图像进行合成处理,并将合成后的图像设置为所述右视口图像;当所述混合图像数量大于一时,则将其全部混合图像进行合成处理,合成为一个完整的显示图像。
22.由此,通过窗口合成器可以将至少一个主图像和副图像以及混合图像合成为完整的显示图像。
23.发明的另一目的在于提供一种混合图像与加密远程传输方法,包括:获取图像数据,并对图像数据进行渲染获得主图像和副图像,并将所述主图像和所述副图像设置为左视口图像和右视口图像;对左视口图像和右视口图像进行混合处理获得第一混合图像;通过混沌加密算法对所述第一混合图像进行加密获得第二混合图像,并将所述第二混合图像进行编码压缩处理传输至客户端;通过客户端对第二混合图像进行解码处理获得第一解码图像;对所述第一解码图像进行解密分离处理获得解密图像,并将所述解密图像设置为完整的显示图像,通过客户端进行显示。
24.由此,将获取到的图像数据传输到位于云端的云端渲染装置进行渲染,渲染出主图像和副图像,并将其设置为左视口图像和右视口图像,然后左视口图像和右视口图像进行混合或加密,从而得到一个混合图像设置为第一混合图像,通过混沌加密算法对所述第一混合图像进行加密获得第二混合图像,并将所述第二混合图像进行编码压缩处理传输至客户端;通过客户端对第二混合图像进行解码处理获得第一解码图像;对所述第一解码图像进行解密分离处理获得解密图像,并将所述解密图像设置为完整的显示图像,通过客户端进行显示。
25.通过上述方法对图像数据进行传输可以使所传输的图像包含更多信息,提高图像质量、安全性、传递能力和识别能力。且通过云端对图像进行图像混合和加密可以更加安全、高效、便捷的进行加密,从而保护图像的隐私和完整性,避免数据被非法获取和篡改,且有效的降低了对客户端设备的计算压力。
26.发明的另一目的在于提供一种计算机设备,包括存储有计算机程序的计算机可读存储介质和处理器,所述计算机程序被所述处理器读取并运行时,用于装载并运行如上所述的混合图像与加密远程传输系统。
27.所述计算机设备相对于现有技术与所述混合图像与加密远程传输系统所具有的优势相同,在此不再赘述。
附图说明
28.图1为本发明实施例的第一立体图像混合分离加密单元原理示意图;图2为本发明实施例的第二立体图像混合分离加密单元原理示意图;图3为本发明实施例的第三立体图像混合分离加密单元原理示意图;图4为本发明实施例的普通加密单元原理示意图。
具体实施方式
29.为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述,以下实施例用于说明本发明,但不用来限制本发明的范围。
30.混合图像通常是指由两个或多个图像融合生成的一张图像,其中每个图像都可以看做是一种图片或一种视觉信息的载体。在混合图像处理中,不同的图像会被不同的方式进行组合和叠加,从而形成一张融合的图像。例如,在立体成像中,左右两个图像融合生成的3d立体图像就是一种混合图像。
31.混沌加密算法是一种基于混沌理论的加密方法,它通过利用混沌系统的复杂性和随机性,将明文数据转化为看似随机的密文,从而实现保密传输和数据安全保护的目的。在混沌加密算法中,混沌系统的演化方程式和初始条件被用作密钥,在加密和解密过程中,只有掌握正确的密钥才能恢复出明文,从而保证了数据的机密性和完整性。混沌加密算法具有抗干扰性、抗攻击性和高效性等优点,可以有效的提高图像传输过程的安全性。
32.本发明提出混合图像与加密远程传输系统,包括:获取模块、云端渲染装置、混合模块、加密模块、传输模块、解密模块和客户端;所述获取模块,被配置为获取图像数据和所述水印图像;所述云端渲染装置,被配置为对图像数据进行渲染,获得主图像和副图像,并分别将所述主图像和所述副图像设置为左视口图像和右视口图像,以及对第二混合图像进行渲染得到混合图像;所述混合模块,被配置为将云端渲染装置渲染后的所述左视口图像和所述右视口图像进行混合,得到第一混合图像;所述加密模块,被配置为将所述第一混合图像,并通过混沌加密算法对所述第一混合图像进行加密得到第二混合图像;所述传输模块,被配置为将所述混合图像传输至所述客户端;所述解密模块,被配置为对所述混合图像进行解密和分离得到解密图像;所述客户端,被配置为上传所述图像数据和对所述解密图像进行显示。
33.相对于现有技术,本发明通过获取模块,获取原始视频流数据、图像数据和所述水印图像。再通过设置云端渲染装置对图像信息进行渲染,获得主图像和副图像,并分别再次对主图像和副图像进行渲染得到左视口图像和右视口图像,将传输至混合加密模块对其进行混合加密处理得到第二混合图像,再由云端渲染装置进行渲染得到混合图像;最后通过解密模块进行解密,并通过客户端设备对图像数据进行显示。可以有效地解决现有技术在传输过程中图像传输信息量少,安全性低,传递能力和识别能力差的问题。
34.在一实施例中,所述传输模块包括:三维模型传输单元、场景传输单元和二维图像传输单元;所述三维模型传输单元、用于对三维模型设置图像参数,并将所述图像参数以及三维模型传输至云端渲染装置;所述场景传输单元,用于对场景图像数据设置图像参数,并将所述图像参数以及场景图像数据传输至云端渲染装置;所述二维图像传输单元,用于将
平面二维图像传输至云端渲染装置。
35.三维模型传输单元对三维模型或者场景,并设置图像参数。然后将三维模型或者场景发送给位于云端的图像处理器,位于云端的图像处理器进行三维模型或者场景的渲染,并生成主图像和副图像,并将主图像和副图像设置为左视口图像和右视口图像,将其传输至渲染模块对左视口图像和右视口图像进行渲染。
36.相对于现有技术,本发明可以对图像信息添加副图像进行混合,能够在一幅图像中传递更多的信息量。能够包含更多的元数据信息,比如:图像拍摄时间、图像地点参数、曝光参数等。这些元数据不会对图片的质量造成影响,但是能带有更多的信息。例如,在医学图像中添加更多的注释和标签可以帮助医生更好地理解和分析病人的情况。同时,以副图像的方式,能够在需要精确处理的区域提高图片的显示质量,提高图片的色彩深度和分辨率等。
37.在一实施例中,云端渲染装置包括:图像处理器、左视口单元、右视口单元;左视口单元,用于对主图像图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到左视口图像,并将左视口图像传输至图像处理器的帧缓冲区;右视口单元,用于对副图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到右视口图像,并将右视口图像传输至图像处理器的帧缓冲区;图像处理器,被配置为对图像数据进行渲染获得主图像和副图像,以及将左视口图像和右视口图像传输至所述混合加密模块。
38.本发明通过云端渲染装置的图像处理器对图像数据进行渲染获得主图像和副图像,并通过左视口单元和右视口单元,以及将右视口图像和左视口图像传输至所述混合加密模块左视口单元和右视口单元对主图像和幅图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到左视口图像和右视口图像,并将左视口图像传输至图像处理器的帧缓冲区内。所述云端渲染装置设置在云端,可以充分利用云端的计算能力,提高图像处理的效率和质量。同时也可以降低客户端的硬件要求,使得终端设备可以更轻便、更低成本地完成图像处理任务。
39.其中,图像处理器(gpu)通常包含了图形处理器、显存、显卡引擎、显示引擎、控制器和电源管理等部分构成。图像处理器是整个图像处理芯片的核心部件,它包含了大量的流处理器(cuda cores)和纹理单元(texture units),主要用于高效地处理图形、图像、视频等并行计算任务。图像处理器通过内置显存来存储和处理图像数据。显存通常采用gddr(graphics double data rate)内存,具有高带宽和低延迟的特点。显卡引擎用于视频的编解码、图像的处理和gpu加速的计算任务。显示引擎负责将图形和图像数据渲染到屏幕上。它包含了像素填充器(pixel fillrate)、输出管线(output pipeline)、视频时钟等功能。控制器是图像处理器和中央处理器之间的桥梁,负责数据的传输和协调图像处理器的工作。电源管理模块用于调节图像处理器的功率和温度,确保图像处理器的稳定性和长寿命。
40.在一实施例中,混合加密模块具体包括:第一立体图像混合分离加密单元、第二立体图像混合分离加密单元和第三立体图像混合分离加密单元;所述第一立体图像混合分离加密单元,用于通过超混沌lorenz系统的立体图像混合方式对三维模型和场景进行混合加密;如图1所示具体混合加密方法如下:首先将左视口图像和右视口图像进行普通拼接,将拼接后的图像作为进行加密的图像。通过超混沌lorenz系统生成密钥。所述超混沌
lorenz系统为三维非线性动力学系统,其中,运动方程如下:dx/dt=a(y-x)+fzdy/dt=bx-xz-ydz/dt=xy-cz其中,a、b、c、f是系统的参数,x、y、z是系统的状态变量。在这里,我们可以随机选择一组初始参数值来生成密钥。将要加密的图像分割成若干个像素块,并将每个像素块转换为一维向量。对于每个像素块,通过超混沌lorenz系统生成一组与该像素块等长的伪随机数序列作为密钥。将伪随机数序列和像素块的向量进行异或运算,得到密文。将加密后的像素块重新组合成加密后的图像。解密时,按照相同的步骤生成密钥,并将密文与密钥进行异或运算,得到原始像素块的向量。将原始像素块向量重新组合成原始的图像数据。
41.所述第二立体图像混合分离加密单元,用于将所述左视口图像和所述右视口图像的rgb888图像转换为yuv420图像,再将转化后的yuv420格式的所述左视口图像和所述右视口图像混合成一幅rgb888图像,实现对三维模型和场景进行混合加密;通过渲染装置渲染出格式为rgb888的左视口图像和所述右视口图像图像。首先将这两幅图像转换为yuv420的图片格式,然后将其合成为一幅rgb888的图像。
42.通过一组矩阵变换和偏移实现将rgb888的颜色信息转换为yuv颜色空间中的亮度和色度信息。具体包括,将rgb值转换为浮点数,并通过以下公式计算y、u、v的值:y=0.299r+0.587g+0.114bu=-0.169r-0.331g+0.5b+128v=0.5r-0.419g-0.081b+128其中,其中,r、g、b分别代表红、绿、蓝三原色的值,而y、u、v则分别代表亮度、蓝色色度、红色色度的值,所述r、g、b的取值范围是0-255,所述y、u、v的取值范围为0-255。
43.对yuv图像进行下采样,得到yuv420格式的图像。在yuv420中,亮度分量y被保留为原始分辨率,而色度分量u和v则被下采样为原来的1/4大小,具体来说,将每4x4个像素的u、v值取平均,得到一组新的u、v值,分别代表整个4x4块中的色度信息。这个过程称为4:2:0采样。接着将y、u、v三个分量的数据按顺序排列,生成两幅yuv420格式的图像数据。
44.最后将两个yuv420图像的相同位置像素点,进行适当的合并,以单个像素点为例,将主图像的y亮度分量作为混合图像的r颜色通道,将副图像的y亮度分量作为混合图像的g颜色通道,将主图像的u、v色度分量和副图像的u、v色度分量共同作为混合图像的b颜色通道,最后可以生成一幅与主、副图像相同尺寸的rgb888混合图像,从而实现对三维模型或场景进行混合加密。
45.所述第三立体图像混合分离加密单元,将所述左视口图像和所述右视口图像的rgb888图像混合成一幅rgb48或argb64的高位存储空间图像,实现对三维模型和场景进行混合加密。
46.首先第三立体图像混合分离加密单元采用高色彩深度的原始图形显示格式,例如使用48位或64位存储空间的rgb48/argb64。本实施例采用48位的rgb48图形格式,所述48位的rgb48图形格式中每个像素使用16个位来表示每个颜色通道,恰好是单个rgb888像素点空间的一倍,因此每个像素点恰好可以存储来自主图像和副图像的内容。第三立体图像混合分离加密单元采用将rgb888像素点逐个合并的方式,得到混合图像,这样的混合方式可
以是实现对图像数据进行无损的混合,并且本发明是通过云端完成图像的混合与渲染过程的,因此可以支持对第三立体图像混合分离加密单元运行过程中的大量运算,并且降低了对客户端设备的要求降低了图像传输的成本。
47.本发明通过实施例通过第一立体图像混合分离加密单元、第二立体图像混合分离加密单元和第三立体图像混合分离加密单元,提供了三种对图像数据的加密方式对图像数据进行加密,使图像传输过程更加安全、高效、便捷,实现对图像隐私性和完整性的保护,有效的避免数据被非法获取和篡改。
48.在一实施例中,混合加密模块还包括:普通加密单元和水印添加单元;所述普通加密单元,用于通过混沌加密算法对主图像进行加密;所述水印添加单元,被配置为将所述水印图像设置为幅图像,并将所述幅图像嵌入所述主图像中,生成所述混沌图像。
49.如图4所示,普通加密单元获取渲染装置渲染的二维图像,并将其设置为主图像,同时通过一种可靠的混沌加密算法对所述二维图像进行加密,本实施例采用基于logistic映射的混沌加密算法,首先通过混沌加密算法生成一张与原始图像尺寸相同的密钥图像,并将生成的密钥图像作为加密算法的秘钥,然后将原始图像和密钥图像进行混合,得到加密后的图像。其中,原始图像和密钥图像进行混合的混合方式通过异或操作进行,即将原始图像和密钥图像中的每个像素值进行异或运算,并将得运算后的结果作为加密后的像素值。
50.水印添加单元获取渲染装置渲染的二维图像,并将其设置为主图像,获取渲染装置渲染的水印图像信息将其设置为幅图像,其中,水印图像信息包含了可见的水印以及不可见水印。
51.可见水印是指将水印信息嵌入到原始图像中,其中水印信息是可见的,不需要使用特殊工具就可以看到。图像加水印是在原始图像中嵌入一些文字、图形或者图像作为水印,一般是通过叠加的方式实现。可以通过在原始图像上叠加文字、图形或者图像,并对水印图像进行色彩调整和像素操作,然后将其透明度调整到适当的程度,使其与原始图像融为一体,从而实现水印嵌入。色彩调整是通过调整原始图像的色彩信息来嵌入水印。例如,可以在原始图像的某些区域调整亮度、对比度、色相等参数,从而形成一个可见的水印。像素操作是通过改变原始图像中像素的颜色或者亮度值来嵌入水印。例如,可以通过改变原始图像中某些像素的亮度值,从而形成一个可见的水印。可见水印不需要经过分离模块进行分离,因为水印的作用就是为了保护图像的版权和图像的宣传。
52.不可见水印是指嵌入到图像、视频或音频中的一种隐蔽信息,它通常是由数字信号处理技术实现的,并且对于大多数人来说是不可察觉的。在本系统中,通过将不可见水印信息输入到渲染装置,编码得到与主图像尺寸一样的副图像,此时副图像包含了水印的位置、水印的信息等。然后将副图像的水印部分信息转化为比特流,以便将其嵌入到图像像素中。接着对比特流进行加密,以确保水印信息的安全性。将加密后的比特流嵌入到图像像素中。通常会选择一些像素通道,如rgb通道,将比特流的每个比特分别嵌入到相应的像素通道的最低有效位中。最后输出嵌入后的混合图像,用于后续的传输和使用。
53.本发明通过对图像数据添加可见水印和不可见水印两种水印方式,可以让人们更容易地识别和确认图像的来源和版权信息,以防止盗版和未经授权的使用。本发明所提供的不可见水印与可见水印相比更难被发现和删除,可以在不影响图像质量的情况下保护图
像的版权和来源信息,从而提高图像传输过程中的安全性。
54.在一实施例中,还包括:编码模块和解码模块;所述编码模块,用于将所述原始视频数据进行编码,转换为压缩的所述比特流数据,并将所述所述比特流数据设置为所述图像数据;所述解码模块,用于对接收到的所述比特流数据进行解码,并将所述比特流数据还原为可播放的视频流,从而获得第一解码图像和第二解码图像。
55.其中,编码模块获取的原始视频流数据的图像往往是高分辨率和高帧率的视频流数据图像,将原始视频流通过压缩算法转换为比特流数据,从而降低视频数据的冗余性,达到数据压缩的目的减小数据量。本实施例采用编码器生成的比特流数据包括:h.264、h.265、vp9。将压缩后的比特流数据通过编码器进行编码,生成可传输的数据。编码器将原始视频流分为多个块,每个块再分为多个宏块,对每个宏块进行变换和量化,然后对变换和量化的结果进行熵编码,并将编码后的比特流数据通过网络传输到接收端。常见的数据传输协议有rtsp、rtp、http等。
56.解码模块获取比特流数据后,将接收到的比特流数据通过解码器进行解码,还原为可播放的视频流。通过与编码器的实现相匹配的解码器进行解码,将比特流数据还原为可播放的视频流,从而获得第一解码图像和第二解码图像。其中,第一解码图像为主图像,第二解码图像根据加密单元的不同可以为幅图像和水印信息。
57.本发明通过获取模块获取原始视频流数据、图像数据和所述水印图像,并通过编码模块对原始视频流数据进行编码。通过对视频数据进行编码,可以减小视频数据的体积,从而降低视频数据的传输成本和存储成本,提高视频数据的传输效率同时通过对原始视频流数据进行编码,可以提高图像数据的压缩比率和清晰度,从而提高用户观看视频的体验。通过解码模块对比特流流数据进行解码,可以实现对视频数据的解码和播放,从而实现对视频内容的观看和分析。
58.在一实施例中,云端解密单元,被配置为在云端将混合图像进行分离得到解密主图像和解密幅图像,将普通加密单元加密的加密图像数据及进行解密,以及对所述水印添加单元生成所述混沌图像进行去水印处理;所述客户端解密单元,被配置为通过所述客户端将混合图像进行分离得到所述解密主图像和所述解密幅图像,将普通加密单元加密的加密图像数据及进行解密,以及对所述水印添加单元生成所述混沌图像进行去水印处理。
59.云端解密单和客户端解密单元将混合图像进行分离组合得到原始图像时,将加密的图像分割成若干个像素块,并将每个像素块转换为一维向量。对于每个像素块,通过超混沌lorenz系统生成一组与该像素块等长的伪随机数序列作为密钥。并将密文与密钥进行异或运算,得到原始像素块的向量。将原始像素块向量重新组合成原始图像。当对普通加密单元加密的加密图像数据及进行解密时,首先在模块中预先导入副图像密钥,然后与加密图像按照像素点进行异或操作,从而得到解密后的主图像内容。当对水印添加单元生成所述混沌图像进行去水印处理时,首先确定水印嵌入位置,以便定位水印的位置。接着提取嵌入水印的像素通道,通常会选择与嵌入时相同的像素通道,如rgb通道;然后提取像素通道的最低有效位,得到一个比特流,并对比特流进行解密,从而得到原始的水印信息,最后输出解密后的水印信息。
60.通过混合加密模块对所传输的图像进行加密,由于每个像素块都有一个独特的密钥,且密钥是通过超混沌lorenz系统生成的伪随机数序列,因此这种方案可以提高图像的
安全性,避免了一些传统的加密算法存在的弱点。传输结束后通过解密模块对传输的图像进行解密原始像素块向量重新组合成原始图像,可以还原加密前的图像,从而可以在保护图像隐私的同时恢复原始图像的内容。避免在传输过程中被恶意盗用或串改,从而提高传输过程的安全性。
61.在一实施例中,还包括:抓取单元,用于抓取云端渲染装置中所述第一目标图像,并将所述第一目标图像设置为所述图像数据。
62.抓取单元用于截取或捕获屏幕或窗口中的图像或视频。它可以在不同的应用程序中使用,例如远程桌面、屏幕录制、游戏录制、视频会议等。在本发明中的抓取云端渲染装置中所述第一目标图像。
63.开源操作系统中,常用的抓取窗口图像的技术包括:x11和wayland。其中,x11是linux系统中常用的窗口系统,而wayland则是一种新型的窗口系统,正在逐渐替代x11。在x11中,常用的窗口图像抓取api包括xgetimage和xshmgetimage。其中,xgetimage使用的是共享内存技术,而xshmgetimage则使用的是x11共享内存扩展技术,两种技术均可高效地获取窗口图像。在wayland中,由于其不支持共享内存技术,因此需要使用截屏技术来实现窗口图像抓取。常用的截屏技术包括gbm(generic buffer manager)和eglstream。
64.闭源操作系统中,窗口图像抓取通常使用操作系统提供的api。在windows操作系统中,常用的窗口图像抓取api包括:bitblt、printwindow、dxgi和dwmgetwindowattribute。
65.当使用bitblt函数接口抓取窗口时,首先将一个指定矩形区域的像素从一个设备场景复制到另一个设备场景中。要截取窗口,需要先获取窗口的句柄(hwnd)。然后,使用getdc函数获取该窗口的设备场景句柄(hdc)。设备场景句柄允许我们对窗口进行图形绘制操作。接下来,通过bitblt函数将窗口中的像素复制到一个内存缓冲区中。bitblt函数的参数包括源hdc、目标hdc、矩形区域等等。其中,目标hdc是指我们要将像素复制到的内存缓冲区的hdc,源hdc则是指要截取的窗口的hdc。在复制像素之后,可以使用releasedc函数释放窗口的hdc。从内存缓冲区中获取到窗口的图像。其中,当窗口内容被遮挡时,通过windows提供的其他api或技术来获取被遮挡窗口的内容,例如通过printwindow函数或者使用windows消息api发送指令给窗口,让它将内容绘制到一个位图中。所述printwindow函数是windows操作系统中一个用于截图的api函数,可以将指定窗口的内容输出到设备上下文(dc)中,以便后续处理。同时,printwindow函数还可以将整个窗口及其子窗口的内容全部截取下来,并将其绘制到设备上下文中。
66.当使用dxgi函数接口抓取窗口时,通过directx graphics infrastructure (dxgi)来捕获windows操作系统中的窗口。可以通过使用dxgi的desktop duplication api来实现。desktop duplication api是一个用于捕获桌面内容的api,它可以捕获整个桌面或指定窗口的图像,并将其呈现为纹理。这使得可以将窗口内容直接传输到图形设备中进行处理,比如进行屏幕录制或实时流传输等应用场景。使用desktop duplication api获取窗口图像的步骤如下:(1)使用win32 api中的findwindow函数来查找窗口并获取其句柄。
67.(2)使用win32 api中的getclientrect函数来获取窗口客户区域的矩形。
68.(3)使用createdxgifactory函数创建dxgi工厂对象。
69.(4)idxgioutput接口的getdesc方法获取屏幕的描述符。
70.(5)createdesktopduplication函数创建desktop duplication对象,并将其与屏幕关联。
71.(6)使用acquirenextframe方法捕获下一帧图像,并将其存储在desktop duplication对象的帧缓冲区中。
72.在上述步骤完成后,通过下述两种方式对图像进行下一步处理。
73.方式一:使用mapdesktopsurface方法将帧缓冲区中的图像映射到内存中。然后使用bitblt等函数将图像复制到一个纹理表面中。可以使用纹理表面来渲染图像,可选地,将其保存为文件或在其他地方使用。
74.方式二:使用d3d11devicecontext::copyresource拷贝抓取结果到预先创建的d3d11texture2d中,将d3d11texture2d送往图像混合(加密)模块中,图像混合(加密)模块既可以运行在gpu,也可以运行在cpu,运行在gpu时,可通过opencl或cuda等通用计算框架高效率完成图像混合(加密)。
75.当使用nvfbc函数接口抓取窗口内容时的流程如下:(1)初始化nvfbc。在使用nvfbc之前,需要调用nvfbcinitialize函数进行初始化。在初始化过程中,需要指定要捕获的窗口句柄、图像格式和编码器等参数。
76.(2)创建nvfbc对象。在初始化完成后,需要创建nvfbc对象。可以使用nvfbccreatecapturesession函数创建nvfbc对象。
77.(3)开始捕获。在创建nvfbc对象后,可以使用nvfbcstartcapture函数开始捕获。nvfbc会以指定的帧率捕获窗口内容,并将捕获的图像数据存储在缓冲区中。
78.(4)获取图像数据。捕获窗口内容后,可以使用nvfbccapturehardware函数获取捕获的图像数据。该函数将图像数据复制到用户提供的缓冲区中。
79.(5)结束捕获。在完成捕获后,可以使用nvfbcstopcapture函数停止捕获。并使用nvfbcreleasecapture函数释放nvfbc对象。
80.其中,nvfbc(nvidia frame buffer capture)是一种由nvidia提供的高效的桌面图像捕获技术,它可以在不影响系统性能的情况下捕获桌面图像,常用于屏幕录制、游戏直播等应用场景。nvfbc利用了nvidia显卡的硬件编解码器和帧缓冲区(frame buffer)捕获技术,通过直接访问显卡的帧缓冲区,以非常高的帧率和较低的cpu使用率捕获桌面图像。与传统的软件捕获技术相比,nvfbc的性能更高、延迟更低。nvfbc支持捕获全屏幕或指定的窗口,也可以指定要捕获的图像格式和编码器。nvfbc还支持将捕获的图像数据通过pci express总线传输到另一台计算机上,从而实现远程桌面的应用。
81.本发明通过抓取单元抓取云端渲染装置中屏幕或窗口中的图像或视频中的目标图像,并将其设置为第一目标图像,并将所述第一目标图像设置为所述图像数据。可以提高传输过程中的精确性,同时避免对大量无用数据进行传输,有效地提高图像和视频的质量。满足用户在高质量、低延迟和可靠性方面的需求,提高视觉效果和用户体验。
82.在一个实施例中,还包括:窗口合成器,被配置为当所述主图像的数量大于一时,则将则将其全部所述主图像进行合成处理,并将合成后的图像设置为所述左视口图像;当所述副图像的数量大于一时,则将其全部所述副图像进行合成处理,并将合成后的图像设置为所述右视口图像;
当所述混合图像数量大于一时,则将其全部混合图像进行合成处理,合成为一个完整的显示图像。
83.当所述主图像、副图像和混合图像的数量大于一时,则将其全部所述主图像、副图像和混合图像分别进行合成处理,将多个混合图像通过窗口合成器将其合成为完整的显示图像,其中,窗口合成器的主要作用是管理窗口和图形的可见性和可见性,以及它们的显示顺序和重叠方式。通过窗口合成器对这些元素进行排序和组合,将多个窗口的内容合成为单个完整的显示图像,以创建最终的完整的显示图像。
84.在另一个实施例中,本发明还提供一种混合图像与加密远程传输方法,其特征在于,包括:获取图像数据,并对图像数据进行渲染获得主图像和副图像,并将所述主图像和所述副图像设置为左视口图像和右视口图像;对左视口图像和右视口图像进行混合处理获得第一混合图像;通过混沌加密算法对所述第一混合图像进行加密获得第二混合图像,并将所述第二混合图像进行编码压缩处理传输至客户端;通过客户端对第二混合图像进行解码处理获得第一解码图像;对所述第一解码图像进行解密分离处理获得解密图像,并将所述解密图像设置为完整的显示图像,通过客户端进行显示。
85.首先,获取需要传输的图像数据,并对其进行渲染,获得主图像和副图像。这些图像可以是左右双目图像,或是其他类型的图像。将主图像和副图像分别设置为左视口和右视口图像。将左视口和右视口图像进行混合处理,获得第一混合图像。将第一混合图像通过混沌加密算法进行加密,获得第二混合图像。混沌加密算法是一种基于混沌理论的加密算法,其加密强度高、抗干扰能力强,可以保证传输的安全性。将第二混合图像进行编码压缩处理,使其能够快速传输,并通过网络传输至客户端。在客户端,对接收到的第二混合图像进行解码处理,获得第一解码图像。对所述第一解码图像进行解密分离处理获得解密图像,并将所述解密图像设置为完整的显示图像,最后在客户端进行显示。
86.通过上述方案利用混合图像技术和混沌加密算法,实现了对远程传输图像进行加密,并保证了其安全性。同时,可以使所传输的图像包含更多信息,提高图像质量、安全性、传递能力和识别能力。且通过云端对图像进行图像混合和加密可以更加安全、高效、便捷的进行加密,从而保护图像的隐私和完整性,避免数据被非法获取和篡改,且有效的降低了对客户端设备的计算压力。
87.在另一个实施例中,本发明还提供一种计算机设备,其特征在于,包括存储有计算机程序的计算机可读存储介质和处理器,计算机程序被所述处理器读取并运行时,用于装载并运行时实现如上所述的混合图像与加密远程传输系统。
88.以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。
技术特征:
1.一种混合图像与加密远程传输系统,其特征在于,包括:获取模块、云端渲染装置、混合模块、加密模块、传输模块、解密模块和客户端;所述获取模块,被配置为获取图像数据和水印图像;所述云端渲染装置,被配置为对图像数据进行渲染,获得主图像和副图像,并分别将所述主图像和所述副图像设置为左视口图像和右视口图像,以及对第二混合图像进行渲染得到混合图像;所述混合模块,被配置为将云端渲染装置渲染后的所述左视口图像和所述右视口图像进行混合,得到第一混合图像;所述加密模块,被配置为将所述第一混合图像,并通过混沌加密算法对所述第一混合图像进行加密得到第二混合图像;所述传输模块,被配置为将所述混合图像传输至所述客户端;所述解密模块,被配置为对所述混合图像进行解密和分离得到解密图像;所述客户端,被配置为上传所述图像数据和对所述解密图像进行显示。2.根据权利要求1所述的混合图像与加密远程传输系统,其特征在于,所述传输模块包括:三维模型传输单元、场景传输单元、二维图像传输单元和水印图像传输单元;所述三维模型传输单元,被配置为对三维模型设置图像参数,并将所述图像参数以及所述三维模型传输至云端渲染装置;所述场景传输单元,被配置为对场景图像数据设置图像参数,并将所述图像参数以及所述场景图像数据传输至云端渲染装置;所述二维图像传输单元,被配置为将平面二维图像传输至所述云端渲染装置;所述水印图像传输单元,被配置为将水印图像传输至所述云端渲染装置。3.根据权利要求1所述的混合图像与加密远程传输系统,其特征在于,所述云端渲染装置包括:图像处理器、左视口单元、右视口单元;所述左视口单元,被配置为对所述主图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到所述左视口图像,并将所述左视口图像传输至所述图像处理器的帧缓冲区;所述右视口单元,被配置为对所述副图像进行顶点着色、图元装配与裁剪、光栅化、片元着色得到所述右视口图像,并将所述右视口图像传输至所述图像处理器的帧缓冲区;图像处理器,被配置为对所述图像数据进行渲染获得所述主图像和所述副图像,以及将所述左视口图像和所述右视口图像传输至所述混合模块。4.根据权利要求1或3所述的混合图像与加密远程传输系统,其特征在于,所述加密模块具体包括:第一立体图像混合分离加密单元、第二立体图像混合分离加密单元和第三立体图像混合分离加密单元;所述第一立体图像混合分离加密单元,被配置为通过超混沌lorenz系统的立体图像混合方式对三维模型和场景进行混合加密;所述第二立体图像混合分离加密单元,被配置为将所述左视口图像和所述右视口图像的rgb888图像转换为yuv420图像,再将转化后的yuv420格式的所述左视口图像和所述右视口图像混合成一幅rgb888图像,实现对所述三维模型和所述场景进行混合加密;所述第三立体图像混合分离加密单元,被配置为将所述左视口图像和所述右视口图像的rgb888图像混合成一幅rgb48或argb64格式的高位存储空间图像,实现对所述三维模型
和所述场景进行混合加密。5.根据权利要求4所述的混合图像与加密远程传输系统,其特征在于,混合加密模块还包括:普通加密单元和水印添加单元;所述普通加密单元,被配置为通过混沌加密算法对主图像进行加密;所述水印添加单元,被配置为将水印图像设置为幅图像,并将所述幅图像嵌入所述主图像中,生成混沌图像。6.根据权利要求1所述的混合图像与加密远程传输系统,其特征在于,还包括:编码模块和解码模块;所述编码模块,被配置为将所述图像数据进行编码,转换为压缩的比特流数据,并将所述比特流数据设置为所述图像数据;所述解码模块,被配置为对接收到的所述比特流数据进行解码,并将所述比特流数据还原为可播放的视频流,从而获得第一解码图像。7.根据权利要求5所述的混合图像与加密远程传输系统,其特征在于,所述解密模块包括:云端解密单元,客户端解密单元;所述云端解密单元,被配置为在云端将混合图像进行分离得到解密主图像和解密幅图像,将普通加密单元加密的加密图像数据及进行解密,以及对所述水印添加单元生成所述混沌图像进行去水印处理;所述客户端解密单元,被配置为通过所述客户端将混合图像进行分离得到所述解密主图像和所述解密幅图像,将普通加密单元加密的加密图像数据及进行解密,以及对所述水印添加单元生成所述混沌图像进行去水印处理。8.根据权利要求1所述的混合图像与加密远程传输系统,其特征在于,还包括:抓取单元,被配置为抓取云端渲染装置中第一目标图像,并将所述第一目标图像设置为所述图像数据。9.根据权利要求1所述的混合图像与加密远程传输系统,其特征在于,还包括:窗口合成器,被配置为当所述主图像的数量大于一时,则将则将其全部所述主图像进行合成处理,并将合成后的图像设置为所述左视口图像;当所述副图像的数量大于一时,则将则将其全部所述副图像进行合成处理,并将合成后的图像设置为所述右视口图像;当所述混合图像数量大于一时,则将其全部混合图像进行合成处理,合成为一个完整的显示图像。10.一种混合图像与加密远程传输方法,其特征在于,包括:获取图像数据,并对图像数据进行渲染获得主图像和副图像,并将所述主图像和所述副图像设置为左视口图像和右视口图像;对所述左视口图像和所述右视口图像进行混合处理,获得第一混合图像;通过混沌加密算法对所述第一混合图像进行加密获得第二混合图像,并将所述第二混合图像进行编码压缩处理传输至客户端;通过客户端对第二混合图像进行解码处理获得第一解码图像;对所述第一解码图像进行解密分离处理获得解密图像,并将所述解密图像设置为完整的显示图像,通过客户端进行显示。
11.一种计算机设备,其特征在于,包括存储有计算机程序的计算机可读存储介质和处理器,计算机程序被所述处理器读取并运行时,用于装载并运行权利要求1-9任一项所述的混合图像与加密远程传输系统。
技术总结
本发明公开了一种混合图像与加密远程传输系统、方法及设备,涉及加密通讯技术,其包括:获取模块、云端渲染装置、混合加密模块、传输模块、解密模块和客户端;云端渲染装置用于对图像数据渲染获得主图像和副图像,并分别对主图像和副图像渲染得到左视口图像和右视口图像,对第二混合图像进行渲染得到混合图像;混合加密模块将右视口图像和左视口图像混合,通过混沌加密算法对第一混合图像加密得到第二混合图像;传输模块将上传图像数据传输至云端渲染装置将混合图像传输至客户端;解密模块用于对混合图像解密和分离;客户端上传图像数据和对解密图像进行显示。本发明有效提高了图像传输信息量少以及传输过程的安全性,并提供多种传输场景。多种传输场景。多种传输场景。
技术研发人员:请求不公布姓名
受保护的技术使用者:元内核(北京)科技有限公司
技术研发日:2023.08.31
技术公布日:2023/10/7
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
