CN117640890A - 一种采用视频接口单向传输数据的方法 - Google Patents

一种采用视频接口单向传输数据的方法 Download PDF

Info

Publication number
CN117640890A
CN117640890A CN202311617018.1A CN202311617018A CN117640890A CN 117640890 A CN117640890 A CN 117640890A CN 202311617018 A CN202311617018 A CN 202311617018A CN 117640890 A CN117640890 A CN 117640890A
Authority
CN
China
Prior art keywords
data
video
frame
acquisition card
transmission
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
CN202311617018.1A
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.)
Changan University
Original Assignee
Changan University
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 Changan University filed Critical Changan University
Priority to CN202311617018.1A priority Critical patent/CN117640890A/zh
Publication of CN117640890A publication Critical patent/CN117640890A/zh
Pending legal-status Critical Current

Links

Abstract

本发明公开了一种采用视频接口单向传输数据的方法,包括以下过程:采用视频采集卡将两个数据终端连接,视频采集卡设置有扩展屏,视频采集卡与发送端的数据终端通过视频接口连接,视频采集卡与接收端的数据终端通过USB接口连接;发送端的数据终端将传输数据编码为视频帧图像,发送至视频采集卡,视频帧图像在视频采集卡的扩展屏上显示,视频帧图像经过视频采集卡传输至接收端的数据终端内,经视频帧解码后,还原得到传输数据。本发明的技术方案在原理上没有技术风险,在硬件成本上只需要通用视频采集卡配合即可,技术成本优势明显,并且具有较高的传输效率。

Description

一种采用视频接口单向传输数据的方法
技术领域
本发明属于信息与通信领域,涉及一种采用视频接口单向传输数据的方法。
背景技术
数据单向传输普遍应用于不同密级网络间的数据交换。现有的技术方案主要有光盘刻录和单向网闸两种形式。光盘刻录利用的是存储介质写操作的单向性将数据从一台计算机单向传输到另一台计算机。实际实施过程中,光盘刻录速度慢、刻录失败率高、刻录成本高、不同操作系统版本间数据格式兼容性差等问题广泛存在。此外,在管理上也存在不少困难,例如很难避免同一光盘被多次刻录从而造成事实上的双向传输,随着刻录光盘数量的增加光盘的安全可靠管理难度也逐步增加。网闸一般是利用现有的网络传输接口,采用硬件、软件或者硬件+软件的方式实现数据的单向传输。由于网络接口具有天然的双向传输特性,因此这种方案从技术原理上存在一定的安全风险。在管理上还要重点防范用户跳过网闸直接传输数据的问题。此外网闸设备一般成本比较高,适合中心节点间的单向传输,使用场景受限。
发明内容
本发明的目的在于克服上述现有技术的缺点,提供一种采用视频接口单向传输数据的方法,实现了一种安全可靠的数据单向传输方式,成本低,效率高。
为达到上述目的,本发明采用以下技术方案予以实现:
一种采用视频接口单向传输数据的方法,包括以下过程:
采用视频采集卡将两个数据终端连接,视频采集卡设置有扩展屏,视频采集卡与发送端的数据终端通过视频接口连接,视频采集卡与接收端的数据终端通过USB接口连接;
发送端的数据终端将传输数据编码为视频帧图像,发送至视频采集卡,视频帧图像在视频采集卡的扩展屏上显示,视频帧图像经过视频采集卡传输至接收端的数据终端内,经视频帧解码后,还原得到传输数据。
优选的,发送端的数据终端将传输数据发送至视频采集卡的具体过程为:
首先读取传输数据的数据信息,并计算数据的MD5值用于数据传输校验,定时读取一帧数据并编码为视频帧图像,将该视频帧图像在视频采集卡的扩展屏上显示,完成将该帧数据发送到视频采集卡,循环读取、编码和发送步骤,直到整个传输数据发送完毕。
进一步,视频帧图像的帧头结构包括按顺序依次设置的数据帧识别码、伪随机码编号、帧宽度、帧高度、MD5值、总帧数、帧序号、数据长度、数据名长度和数据名。
再进一步,接收端的数据终端接收和还原传输数据的具体过程为:
接收端的数据终端从视频采集卡逐帧获取图像数据,经视频帧解码后,还原得到传输过来的数据;
利用帧头中的数据帧识别码、伪随机码编号和帧序号,判断视频帧图像是否为有效数据帧,如果不是有效数据帧,则进行错误处理,如果是有效数据帧,判断是否为新文件第一帧,若判断结果为是,创建新文件,若判断结果为否,写入文件数据,重复上述过程,直到整个数据文件接收完毕;
整个数据接收存储完毕后,利用图像帧帧头中传输过来的MD5值与接收数据的MD5值进行比较完成传输校验,若校验结果为错误,进行错误处理,若校验结果为正确,结束数据接收流程。
优选的,分辨率为W×H的视频帧图像最大能传输的数据长度Sf为:
其中floor()为向下取整运算,Np为传输1字节数据所需要的像素个数,对于一个长度为S的数据,全部传输完毕需要的总帧数Nf为:
其中ceil()为向上取整运算。
优选的,视频帧图像采用8位256阶灰度图模式。
进一步,视频帧图像的解码前先进行视频帧图像的灰度还原,当颜色空间为RGB时,若颜色采样格式为RGB32,则灰度还原过程为:g=(R+G+B)/3;若颜色采样格式为JPEG,则灰度还原过程为:先解压得到RGB32图像,再经过g=(R+G+B)/3;当颜色空间为YUV时,若颜色采样格式为YUYV或NV12,则灰度还原过程均为:g=fy*(Y-Y0);其中,g为灰度值,R为红色分量,G为绿色分量,B为蓝色分量,Y为亮度分量,Y0为亮度偏移量,取值为16,fy为亮度转换因子,取值为1.16438。
优选的,编码模式为四种,当采用X1编码模式时,编码过程为:P[0]=(F&0x01)*255;P[1]=(F&0x02)*255;P[2]=(F&0x04)*255P[3]=(F&0x08)*255;P[4]=(F&0x10)*255;P[5]=(F&0x20)*255;P[6]=(F&0x40)*255;P[7]=(F&0x80)*255;
当采用X2编码模式时,编码过程为:P[0]=((F&0x03)<<6)+32;P[1]=((F&0x0c)<<4)+32;P[2]=((F&0x30)<<2)+32;P[3]=(F&0xc0)+32;
当采用X3编码模式时,编码过程为:P[0]=((F&0x0f)<<4)+8;P[1]=(F&0xf0)+8;
当采用X4编码模式时,编码过程为:P[0]=F;
其中,P为图像灰度值,F为数据字节数据,&为按位与操作,<<为向左移位操作。
进一步,当采用X1编码模式时,解码过程为:F0=floor(g[0]/128);F1=floor(g[1]/128);F2=floor(g[2]/128);F3=floor(g[3]/128);F4=floor(g[4]/128)F5=floor(g[5]/128);F6=floor(g[6]/128);F7=floor(g[7]/128);
当采用X2编码模式时,解码过程为:F0-1=floor(g[0]/64);F2-3=floor(g[1]/64);F4-5=floor(g[2]/64);F6-7=floor(g[3]/64);
当采用X3编码模式时,解码过程为:F0-3=floor(g[0]/32);F4-7=floor(g[1]/32)
当采用X4编码模式时,解码过程为:F0-7=g[0];
其中,Fn为数据字节数据的第n位,Fn-m为数据字节数据的第n到第m位;g[n]为第n个像素的还原灰度值。
优选的,视频帧图像尺寸与视频采集卡的扩展屏分辨率相同。
与现有技术相比,本发明具有以下有益效果:
本发明利用视频接口,实现了数据终端之间的数据单向传输。视频接口是计算机的一种常见接口,其作用主要是将显卡的输出发送到显示设备上用于图形显示。它具有天然的单向数据传输特性,虽然有少部分控制信号需要双向传输,但这部分简单的电平信号并不会形成数据的双向传输。因此本发明在单向传输的安全性上不存在任何技术原理性的风险。本发明利用视频接口天然的单向传输特性,设计实现了一种安全可靠的数据单向传输方法。本发明的技术方案在原理上没有技术风险,在硬件成本上只需要通用视频采集卡配合即可,技术成本优势明显,并且具有较高的传输效率。在工程应用中,本发明的成果既适合便携式的跨网数据安全传输场景,也能作为网闸类大型设备的关键技术方案之一,解决了现有计算机单向数据传输技术方案中存在的成本高、效率低、技术风险高、安全管理难度大等问题,具有良好的应用前景。
附图说明
图1为本发明的总体技术方案原理图;
图2为本发明的数据发送流程图;
图3为本发明的视频图像帧结构图;
图4为本发明的数据接收流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
本发明的总体技术方案如图1所示。本发明通过采用视频采集卡将两个数据终端连接,视频采集卡与发送端通过视频接口连接,视频采集卡与接收端通过USB接口连接,使得视频采集卡在发送端被识别为显示器,在接收端被识别为图像采集设备,从而实现视频数据从发送端至接收端的单向传输。
本申请中,数据终端可以为各种能够存储设备、进行数据处理和传输的装置。
本实施例的数据终端以计算机为例,发送端计算机A在发送软件的作用下,将待发送的数据经过视频编码后,以视频数据流的形式经视频接口发送到视频采集卡。视频采集卡将视频数据采集后通过USB接口逐帧发送到接收端计算机B。计算机B运行的接收软件对视频帧数据解码后进行数据存储,从而实现数据从计算机A到计算机B的单向传输。
【1、视频采集卡】
本发明中的视频采集卡为市面上通用产品,只需与发送端传输使用的视频接口匹配即可,如采用HDMI接口传输则需使用HDMI视频采集卡,如采用VGA接口传输则需使用VGA视频采集卡,采集卡的输出口为USB接口。保真度越高的采集卡能获得更高的数据传输速度。视频采集卡在发送端计算机被识别为显示器,需要将视频采集卡设置为扩展显示方式,在接收端被识别为图像采集设备。
【2、发送软件设计】
发送软件的主要流程如图2所示。软件首先获数据的元信息、数据大小等信息,并计算数据的MD5值用于数据传输校验,定时读取一帧数据并编码为视频帧图像,将该图像在视频采集卡形成的扩展屏上显示即可将该帧数据发送到视频采集卡。循环读取、编码和发送步骤,直到整个数据发送完毕。
视频帧编码是发送软件的关键步骤。如图3所示,视频帧图像宽度为W像素,高度为H像素,该尺寸与视频采集卡形成的扩展屏分辨率相同。帧图像的第1行为帧头行,后续H-1行为数据行。
为了可靠地传输数据,设计如表1所示的帧头结构,整个帧头占111字节。
表1帧头结构
视频采集卡工作时,不可避免会存在各种传输失真,这种失真对于人眼观看视频是可以接受的,但用于数据传输时却会造成传输错误。为了应对视频采集卡的传输失真,设计如表2所示的4种视频帧图像编码模式以实现数据的可靠传输,其中视频帧图像采用8位256阶灰度图模式。每个像素传输的数据位数(Nb)越少,应对采集卡失真能力越强,但传输速度越慢。考虑到X1模式下,传输帧头需要888字节,要求视频采集卡最小支持的分辨率不低于1024×768。
表2视频帧图像编码模式
在不同编码模式下,分辨率为W×H的视频帧图像最大能传输的数据长度Sf为:
其中floor()为向下取整运算,Np为传输1字节数据所需要的像素个数。对于一个长度为S的数据,全部传输完毕需要的总帧数Nf为:
其中ceil()为向上取整运算。
在4种编码模式中,选定其中一种编码模式,按照表2所示的编码方法,对表1所示的帧头数据和传输数据逐字节进行编码,就能得到一帧包含文传输数据的视频图像。
【3、接收软件设计】
接收软件的主要流程如图4所示。软件利用OpenCV、Qt等工具库从视频采集卡逐帧获取图像数据,经视频帧解码后,即可还原得到传输过来的数据。利用帧头中的数据帧识别码、伪随机码编号、帧序号即可判断视频帧图像是否为有效数据帧,如果不是有效数据帧,则进行错误处理,如果是有效数据帧,判断是否为新文件第一帧,若判断结果为是,创建新文件,若判断结果为否,写入文件数据,重复上述过程,直到整个数据文件接收完毕。整个数据接收存储完毕后,利用图像帧帧头中传输过来的MD5值与接收数据的MD5值进行比较完成传输校验,若校验结果为错误,进行错误处理,若校验结果为正确,结束数据接收流程。
视频帧图像的解码过程比编码过程复杂,需根据视频采集卡输出视频的颜色空间来决定。解码前需先进行视频帧图像的灰度还原,其过程如表3所示。
表3视频帧图像灰度还原过程
还原灰度值g后,解码过程如表4所示。
表4视频帧图像解码
本发明利用视频接口天然的单向传输特性,设计实现了一种安全可靠的数据单向传输方法。本发明的技术方案在原理上没有技术风险,在硬件成本上只需要通用视频采集卡配合即可,技术成本优势明显。在传输速度上,以1920×1080@60Hz分辨率为例,如采用X1编码模式,传输速度约为124Mbps,如采用X3模式则能达到约500Mbps,当采用支持更大分辨率的视频采集卡时,传输速度还能进一步提升,因此本发明技术方案具有较高的传输效率。在工程应用中,本发明的成果既适合便携式的跨网数据安全传输场景,也能作为网闸类大型设备的关键技术方案之一,解决了现有计算机单向数据传输技术方案中存在的成本高、效率低、技术风险高、安全管理难度大等问题,具有良好的应用前景。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
应该理解,以上描述是为了进行图示说明而不是为了进行限制。通过阅读上述描述,在所提供的示例之外的许多实施例和许多应用对本领域技术人员来说都将是显而易见的。因此,本教导的范围不应该参照上述描述来确定,而是应该参照前述权利要求以及这些权利要求所拥有的等价物的全部范围来确定。出于全面之目的,所有文章和参考包括专利申请和公告的公开都通过参考结合在本文中。在前述权利要求中省略这里公开的主题的任何方面并不是为了放弃该主题内容,也不应该认为申请人没有将该主题考虑为所公开的发明主题的一部分。

Claims (10)

1.一种采用视频接口单向传输数据的方法,其特征在于,包括以下过程:
采用视频采集卡将两个数据终端连接,视频采集卡设置有扩展屏,视频采集卡与发送端的数据终端通过视频接口连接,视频采集卡与接收端的数据终端通过USB接口连接;
发送端的数据终端将传输数据编码为视频帧图像,发送至视频采集卡,视频帧图像在视频采集卡的扩展屏上显示,视频帧图像经过视频采集卡传输至接收端的数据终端内,经视频帧解码后,还原得到传输数据。
2.根据权利要求1所述的采用视频接口单向传输数据的方法,其特征在于,发送端的数据终端将传输数据发送至视频采集卡的具体过程为:
首先读取传输数据的数据信息,并计算数据的MD5值用于数据传输校验,定时读取一帧数据并编码为视频帧图像,将该视频帧图像在视频采集卡的扩展屏上显示,完成将该帧数据发送到视频采集卡,循环读取、编码和发送步骤,直到整个传输数据发送完毕。
3.根据权利要求2所述的采用视频接口单向传输数据的方法,其特征在于,视频帧图像的帧头结构包括按顺序依次设置的数据帧识别码、伪随机码编号、帧宽度、帧高度、MD5值、总帧数、帧序号、数据长度、数据名长度和数据名。
4.根据权利要求3所述的采用视频接口单向传输数据的方法,其特征在于,接收端的数据终端接收和还原传输数据的具体过程为:
接收端的数据终端从视频采集卡逐帧获取图像数据,经视频帧解码后,还原得到传输过来的数据;
利用帧头中的数据帧识别码、伪随机码编号和帧序号,判断视频帧图像是否为有效数据帧,如果不是有效数据帧,则进行错误处理,如果是有效数据帧,判断是否为新文件第一帧,若判断结果为是,创建新文件,若判断结果为否,写入文件数据,重复上述过程,直到整个数据文件接收完毕;
整个数据接收存储完毕后,利用图像帧帧头中传输过来的MD5值与接收数据的MD5值进行比较完成传输校验,若校验结果为错误,进行错误处理,若校验结果为正确,结束数据接收流程。
5.根据权利要求1所述的采用视频接口单向传输数据的方法,其特征在于,分辨率为W×H的视频帧图像最大能传输的数据长度Sf为:
其中floor()为向下取整运算,Np为传输1字节数据所需要的像素个数,对于一个长度为S的数据,全部传输完毕需要的总帧数Nf为:
其中ceil()为向上取整运算。
6.根据权利要求1所述的采用视频接口单向传输数据的方法,其特征在于,视频帧图像采用8位256阶灰度图模式。
7.根据权利要求6所述的采用视频接口单向传输数据的方法,其特征在于,视频帧图像的解码前先进行视频帧图像的灰度还原,当颜色空间为RGB时,若颜色采样格式为RGB32,则灰度还原过程为:g=(R+G+B)/3;若颜色采样格式为JPEG,则灰度还原过程为:先解压得到RGB32图像,再经过g=(R+G+B)/3;当颜色空间为YUV时,若颜色采样格式为YUYV或NV12,则灰度还原过程均为:g=fy*(Y-Y0);其中,g为灰度值,R为红色分量,G为绿色分量,B为蓝色分量,Y为亮度分量,Y0为亮度偏移量,取值为16,fy为亮度转换因子,取值为1.16438。
8.根据权利要求1所述的采用视频接口单向传输数据的方法,其特征在于,编码模式为四种,当采用X1编码模式时,编码过程为:P[0]=(F&0x01)*255;P[1]=(F&0x02)*255;P[2]=(F&0x04)*255P[3]=(F&0x08)*255;P[4]=(F&0x10)*255;P[5]=(F&0x20)*255;P[6]=(F&0x40)*255;P[7]=(F&0x80)*255;
当采用X2编码模式时,编码过程为:P[0]=((F&0x03)<<6)+32;P[1]=((F&0x0c)<<4)+32;P[2]=((F&0x30)<<2)+32;P[3]=(F&0xc0)+32;
当采用X3编码模式时,编码过程为:P[0]=((F&0x0f)<<4)+8;P[1]=(F&0xf0)+8;
当采用X4编码模式时,编码过程为:P[0]=F;
其中,P为图像灰度值,F为数据字节数据,&为按位与操作,<<为向左移位操作。
9.根据权利要求8所述的采用视频接口单向传输数据的方法,其特征在于,当采用X1编码模式时,解码过程为:F0=floor(g[0]/128);F1=floor(g[1]/128);F2=floor(g[2]/128);F3=floor(g[3]/128);F4=floor(g[4]/128)F5=floor(g[5]/128);F6=floor(g[6]/128);F7=floor(g[7]/128);
当采用X2编码模式时,解码过程为:F0-1=floor(g[0]/64);F2-3=floor(g[1]/64);F4-5=floor(g[2]/64);F6-7=floor(g[3]/64);
当采用X3编码模式时,解码过程为:F0-3=floor(g[0]/32);F4-7=floor(g[1]/32)
当采用X4编码模式时,解码过程为:F0-7=g[0];
其中,Fn为数据字节数据的第n位,Fn-m为数据字节数据的第n到第m位;g[n]为第n个像素的还原灰度值。
10.根据权利要求1所述的采用视频接口单向传输数据的方法,其特征在于,视频帧图像尺寸与视频采集卡的扩展屏分辨率相同。
CN202311617018.1A 2023-11-29 2023-11-29 一种采用视频接口单向传输数据的方法 Pending CN117640890A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311617018.1A CN117640890A (zh) 2023-11-29 2023-11-29 一种采用视频接口单向传输数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311617018.1A CN117640890A (zh) 2023-11-29 2023-11-29 一种采用视频接口单向传输数据的方法

Publications (1)

Publication Number Publication Date
CN117640890A true CN117640890A (zh) 2024-03-01

Family

ID=90033378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311617018.1A Pending CN117640890A (zh) 2023-11-29 2023-11-29 一种采用视频接口单向传输数据的方法

Country Status (1)

Country Link
CN (1) CN117640890A (zh)

Similar Documents

Publication Publication Date Title
CN100407788C (zh) 数据传送方法及接收方法、视频数据发送装置及视频信号发送接收方法
CN107147942B (zh) 视频信号传输方法、设备、装置以及存储介质
JP5736389B2 (ja) 軽減チャンネルフォーマットでの多チャンネル信号の送信及び検出
US8605797B2 (en) Method and system for partitioning and encoding of uncompressed video for transmission over wireless medium
JP3768124B2 (ja) グラフィック信号の光伝送装置及び方法
US20070189383A1 (en) Method and system for appending redundancy to uncompressed video for transmission over wireless communication channels
CN101990095A (zh) 压缩文件生成方法和设备、相关的相机模块和终端
CN103124350A (zh) 基于rle的图像压缩方法及装置
KR100556844B1 (ko) 동영상 전송 시스템의 에러 검출 방법
US20100103183A1 (en) Remote multiple image processing apparatus
CN108521535B (zh) 一种基于图像混合处理的信息隐藏传输方法
US7561746B2 (en) Image transmitter for transmitting a frame of a fixed number of packets where each packet has a fixed number of image data
CN117640890A (zh) 一种采用视频接口单向传输数据的方法
US9872035B2 (en) System and method for transcoding data
US20050027893A1 (en) Method of controlling high-speed DVI using compression technique and DVI transmitter and receiver using the same
JP4483457B2 (ja) 伝送システム
WO2008032930A1 (en) Method and apparatus for transmitting/receiving data
CN110784620A (zh) 一种设备数据互通方法
CN106803903B (zh) 一种fpd-link视频传输中视频控制信号的解码电路
US7233366B2 (en) Method and apparatus for sending and receiving and for encoding and decoding a telop image
CN114363548B (zh) 电子设备屏幕视频录制方法及系统
JPS5840989A (ja) 画像情報の符号化処理方法および伝送制御方法
KR101605181B1 (ko) 에이치디엠아이/엠에이치엘 리시버에서 제어신호 전송오류 복구 방법
JP2023098530A (ja) データ送受信方法およびデータ送受信装置
CN115460413A (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