CN116233329A - 数据传输系统和数据传输方法 - Google Patents
数据传输系统和数据传输方法 Download PDFInfo
- Publication number
- CN116233329A CN116233329A CN202310228319.9A CN202310228319A CN116233329A CN 116233329 A CN116233329 A CN 116233329A CN 202310228319 A CN202310228319 A CN 202310228319A CN 116233329 A CN116233329 A CN 116233329A
- Authority
- CN
- China
- Prior art keywords
- data
- image
- luminance
- converting
- representing
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims description 45
- 230000011218 segmentation Effects 0.000 claims abstract description 7
- 239000012634 fragment Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 238000004806 packaging method and process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000013524 data verification Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000013496 data integrity verification Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000008713 feedback mechanism Effects 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013502 data validation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/32—Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明涉及数据传输系统,其包括发送端、视频传输链路和接收端,其中:发送端用于将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;视频传输链路用于把图像传输到接收端;接收端用于采集图像并将图像再转换成数据;所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0。本发明可以大大减少二维码等图像携带信息时造成的信息丢失,提高数据传输质量。
Description
技术领域
本发明属于信息传输技术领域,尤其涉及一种数据传输系统和数据传输方法。
背景技术
现有技术中,信息可以被扫描成二维码图像进行传输,但二维码图像容易因清晰度等问题导致信息丢失。
发明内容
针对以上现有技术,本申请提出数据传输系统,其包括发送端、视频传输链路和接收端,其中:
发送端用于将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;
视频传输链路用于把图像传输到接收端;
接收端用于采集图像并将图像再转换成数据;
所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;
采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0。
根据本发明的一些实施例,所述的将数据转换成图像包括采用多个像素的亮度表示数据的一个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括将一个像素的rgb分量亮度通过划分阈值的方式表示数据的多个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括通过使用一个像素的rgb分量亮度分别表示数据的一个二进制位;采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,亮度大于rgb分量亮度阈值的表示1,亮度小于rgb分量亮度阈值的表示0。
根据本发明的一些实施例,所述的将数据转换成图像包括把0-255的范围分成4段,0-63、64-127、128-191、192-255,每个段分别对应00,01,10,11,以表示两个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括采用相邻的多个像素的亮度表示数据的一个二进制位,或用固定长度和宽度的矩形内的所有像素的亮度表示数据的一个二进制位。
本申请还提出数据传输方法,其包括:
发送端将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;
视频传输链路把图像传输到接收端;
接收端采集图像并将图像再转换成数据;
所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;
采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0。
根据本发明的一些实施例,所述的将数据转换成图像包括采用多个像素的亮度表示数据的一个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括将一个像素的rgb分量亮度通过划分阈值的方式表示数据的多个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括采用相邻的多个像素的亮度表示数据的一个二进制位,或用固定长度和宽度的矩形内的所有像素的亮度表示数据的一个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括通过使用一个像素的rgb分量亮度分别表示数据的一个二进制位;采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,亮度大于rgb分量亮度阈值的表示1,亮度小于rgb分量亮度阈值的表示0。
本发明的实施例可以大大减少二维码等图像携带信息时造成的信息丢失,提高数据传输质量。
附图说明
图1示出根据本发明的一些实施例的数据传输系统示意图。
图2示出根据本发明的一些实施例的文件数据打包流程图。
图3示出根据本发明的一些实施例的数据转图像的流程图。
图4示出相应的转换结果图及部分过程示例。
图5示出根据本发明的一些实施例的文件数据传输示意图。
图6示出根据本发明一些实施例的数据包传输方法示意图。
图7示出根据图像中的亮度信息获取数据的过程。
图8示出根据本发明的一些实施例的带有亮度信息的图像及部分数据获取过程。
图9示出根据本发明的一些实施例的文件数据重组及保存文件过程的示意流程图。
图10示出根据本发明一些实施例的数据传输方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1示出根据本发明的一些实施例的数据传输系统示意图。
如图中所示,所述系统包括发送端101、视频传输链路102和接收端103,其中:发送端用于将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;视频传输链路用于把图像传输到接收端;接收端用于采集图像并将图像再转换成数据。所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0(下文还要描述)。
本发明的实施例可以大大减少二维码等图像携带信息时造成的信息丢失,提高数据传输质量。
根据本发明的再一些实施例,发送端还可以用于产生载有文件数据片段(根据下文可知,本发明适用于文件等非即时消息数据,也适用于其他即时消息等数据,为简化起见,本申请中用文件数据涵盖非即时消息文件和即时消息)的视频信息(例如连续的图像帧),视频传输链路用于把视频信息传输到接收端,接收端用于接收载有文件数据片段的视频信息,并从视频信息中获取文件数据片段,然后把文件数据片段重组成文件数据,完成文件的传输。所述发送端包括图像视频输出设备(如,显卡),用于将所述视频信息输出至视频传输链路。所述视频传输链路可以为单向视频传输线路,以实现整体的单向安全传输。
所述的产生载有文件数据片段的视频信息,包括:对文件数据进行打包,以形成多个数据包,以及将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中。
所述的将数据转换成图像包括:在一张图像上放置m个数据包,并在下一张图像中继续放置m个数据包,以及更新其中n个较早的数据包,使其中包括前面已经放置过的m-n个数据包以及n个额外的数据包。
例如在第一张图像中可以包括3个数据包1,第二张图像中继续放置3个包,并更新其中一个数据包1,使其包括前面第一张图像中已经放置过的两个数据包1和一个额外的数据包2。依次类推,在第三张图像中包括数据包1,2,和3,在第四张图像中包括数据包2,3和4,也即,其中数据包1被更新,之后在第五张图像中包括数据包3、4和5,其中数据包2被更新,以下依次类推,数据包按照1,2,3,4,……的顺序被依序更新(根据本发明的一些实施例,也可以一次更新两个数据包)。当接收端接收到第一张图像时,可以获取其中的三个数据包1;当接收端接收到第二张图像时,可以获取其中的两个数据包1和1个数据包2;当接收端接收到第三张图像时,可以获取数据包1,2,3;当接收端接收到第四张图像时,可以获取数据包2,3,4;当接收端接收到第五张图像时,可以获取数据包3,4,和5,依次类推,如图6中所示,从上到下依次显示各个图像。
根据本发明的一些实施例,所述的将数据转换成图像还可以包括:在每张图像上放置m个不同的数据包,以及当所有数据包都传输完毕后,重复所述的在每张图像上放置m个不同的数据包,直至所有数据包再次传输完毕。
所述的接收载有文件数据片段的视频信息,并从视频信息中获取文件数据片段,然后把文件数据片段重组成文件数据,包括:通过视频采集设备进行视频采集,以获取所述图像,将图像再转换成数据,处理数据生成数据包,并从数据包获取文件数据片段,以及把文件数据片段重组成文件数据。
与传统的单向导入技术相比,本发明的数据(单向)传输的速度更快,数据导入的及时性更强,可以导入文件等非及时数据也可以导入即时消息等数据。系统的硬件部分采用市面上常用的组件,成本可以做的比较低,避免资源的不必要浪费,而且虽然是单向传输,缺乏确收等常见的反馈机制,但通过本发明的上述实施例,还是可以避免大数据一次性丢失以及各个数据包中其中一些的丢失等问题。
根据本发明的一些实施例,所述图像视频输出设备例如可以为显卡。对于一个安全级别较高的主机,通常只有显卡输出口是允许对外连接的。因此,本发明可以利用已有的硬件设备以较低成本(相对背景部分提到的光盘摆渡技术而言)实现数据的安全传输。显卡输出口输出的是打印过后的图像数据,而非真正的底层数据,例如word文件包含的数据为底层数据,而我们在显示器上看到的是图像。通过显卡输出口可以将图像输出至外面,而不能将word文件对应的底层数据输出至外面。根据本发明的再一些实施例,发送端可以根据需要包括一个或多个显卡输出口,其中一个显卡输出口用于将图像输出至所述视频传输链路,例如,连接HDMI线,另一显卡输出口用于连接显示器,将图像输出显示。
根据本发明的再一些实施例,所述单向视频传输线路可以包括HDMI线,以及光闸、单向光纤等任何可以避免数据反方向回传的单向隔断设备,以避免任何可能的反向传递。
接收端可以包括视频采集器和视频解码器,视频采集器用于接收通过单向视频传输线路传输的图像,视频解码器对接收到的图像进行解码。根据本发明的一些实施例,如前面所述,发送端的图像可以通过显卡输出至显示器,因此,所述接收端也可以为一个摄像机,用于拍摄显示器上输出的图像,以此方式实现对发送端的图像的获取。
以下将对数据传输系统的各个组成部分及其数据传输方法的实施例作进一步说明。
根据本发明的一些实施例,所述对文件数据进行打包包括:对文件数据进行等长分片(分片所得简称文件数据分片),例如可以将其分成多个固定长度的分片,当最后一个分片长度不足时,可以用0填充,以实现与其他分片等长,由此形成多个数据包。
根据本发明的一些实施例,对文件数据进行打包可以包括对文件数据、文件名称和文件数据长度进行组织,以形成重新组织后的文件数据,以及对重新组织后的文件数据进行等长分片,由此形成多个数据包。接收方知道文件数据长度后,可以据此判断文件数据是否接收完毕的情形(由于是单向传输链路,接收方不能向发送方发送反馈及确认请求)。
根据本发明的一些实施例,当发送的文件数据类型包含多种可能性时,例如命令、文本、文件等时,可以对文件数据、数据类型、文件名称、文件数据长度进行组织,以形成重新组织后的文件数据,以及对重新组织后的文件数据进行等长分片,由此形成多个数据包。当接收方获取重新组织后的文件数据后,可以从中获取到文件名称、数据类型、文件数据长度等信息。
根据本发明的一些实施例,接收端可以为一个服务器,服务器可以根据需要将文件数据进一步发送至多个客户端中的目标客户端。与此相应,可以在发送端对文件数据、数据类型、文件名称、文件数据长度和目标地址进行组织,以形成重新组织后的文件数据,当接收方获取重新组织后的文件数据后,可以从中获取到文件名称、数据类型、文件数据长度和目标地址(最终接收用户)等信息,以便根据目标地址将文件数据进一步发送至多个客户端中的一个目标客户端。或者根据本发明的一些实施例,也可以由服务器自行决定后续将文件数据发送至哪个客户端,也即,在发送端的文件数据中可以不包含目标地址。
根据本发明的一些实施例,为了方便以后的扩展,可以采用以下格式来组织文件数据:1字节的数据类型,8字节的文件数据长度,2字节的接收者长度、接收者数据,1字节的文件名长度,文件名数据,文件数据的格式来组织文件数据。接收者数据是用4个字节表示接收者的ip地址,2字节表示接收者的端口号,每6个字节表示一个接收者。
上文提到的数据类型、文件名称、文件数据长度和目标地址等在下文也称任务头。
根据本发明的一些实施例,形成重新组织后的文件数据还进一步包括引入文件数据验证码。文件数据验证码用于验证文件数据的完整性。
根据本发明的一些实施例,所述打包还可以包括使一个个分片进一步包括包头,由此形成一个个数据包,所述包头包括:传输任务号(一个待传输文件数据对应一个传输任务号,或简称任务号),包序号,包数据长度,即每个数据包都包括传输任务号,包序号,包数据长度。这种格式方便在接收端解析图像数据的过程中及时发现当前数据包是否之前已经接收到,如果接收过,则移动一个包数据长度,移到下一个包对应的数据位置去处理,减少(下文提到的)重复处理图像数据带来的开销。根据本发明的一些实施例,还可以使每个数据包包括包验证码。根据本发明的一些实施例,每个数据包可以包含2字节的传输任务号,4字节的包序号,4字节的包数据长度,文件数据分片和32字节的MD5校验数据(作为包验证码)组成。
根据本发明的一些实施例,接收端可以为一个服务器,服务器可以根据需要将文件数据进一步发送至多个客户端中的目标客户端。与此相应,可以使上述数据包的第一个数据包包含网络包头等。或者根据本发明的一些实施例,也可以由服务器自行决定后续将文件数据发送至哪个客户端,也即,在发送端的数据中可以不包含网络包头。
图2示出根据本发明的一些实施例的文件数据打包流程图。如图中所示,所述流程包括:
S1.读取文件数据。
此处指读取原始文件数据。
S2.在文件数据前增加文件数据任务头。
文件数据任务头包括数据类型、文件名称、文件数据长度和目标地址,或其中一些,如前面在描述重新组织文件数据时所提到的。
S3.生成文件数据验证码并将其连接到S2产生的数据结果的尾部。
此处S2产生的数据结果指增加有文件数据任务头的文件数据。
S4.对S3产生的数据结果进行等长分片处理;
S5.在S4产生的每个分片前增加包头,由此形成每个数据包。
所述包头包含传输任务号,包序号,包数据长度。根据本发明的一些实施例,还可以使S5中的每个分片尾部增加包验证码。
以上为假设由发送端发往接收端的点对点的情形。如接收端为一个服务器,服务器可以根据需要将文件数据进一步发送至多个客户端中的目标客户端。与此相应,可以在上述文件数据任务头中包含目标地址,以及在步骤S5之后增加网络包头。或者根据本发明的一些实施例,也可以由服务器自行决定后续将文件数据发送至哪个客户端,也即,在发送端的数据中可以不包含目标地址或网络包头。
发送端对以上数据包(或称待转换成图像的数据)进行图像转换。根据本发明的一些实施例,所述图像转换包括利用按位与运算得到指定二进制位上的值,如果二进制位的值为1在图像上画一个白点,如果值为0在图像上画一个黑点。根据本发明的一些实施例,如果把图像的背景设置成黑色,在逐二进制位判断,如果值为1在对应的像素上画白点,如果值为0只移动偏移量不做任何操作,可以加快转换速度。由于发送的是二进制数据,可扩展性更强,通过简单的修改可以实现更多种类数据的传输。图3示出根据本发明的一些实施例的数据转图像的流程图。图4示出相应的转换结果图及部分过程示例。
如图3中所示,所述流程包括:
S31.生成一幅固定大小,背景为黑色的图像。
根据本发明的一些实施例,背景也可以为白色,在此情况下,以下步骤做适应性调整即可。
S32.取一个二进制位。
如对于上述待转换的数据,其可能是以一个十六进制数据的形式存在,为此,先获取其中的二进制表示,如图4示出的。
S33.判断是否为1;若是,则进入步骤S34;若否,则进入步骤S35。
S34.在图像上打印一个白点。
S35.像素行坐标偏移量加1。
S36.判断是否超出行尾,若是,则进入步骤S37;若否,则进入步骤S38。
S37.切换到下一行,把行坐标偏移量置为0。
S38.判断转换是否结束,若是,则结束流程,若否,则继续进入步骤S32。
图5示出根据本发明的一些实施例的数据传输的基本示意图。
如图中所示,发送端先进行数据打包(图中的S51,即前文的形成数据包的过程),然后将打包后的数据包转换成图像(S52),再通过图像视频输出设备(如显卡)输出图像(S53)到视频传输链路中,也可以在将图像输出到视频传输链路之前,先通过显卡将图像显示出来,以及通过另一显卡输出口将图像同时输出到视频传输链路上。视频传输链路传输图像(S54),所述视频传输链路包括单向视频传输线路,所述单向视频传输线路可以包括单向光纤等任何可以避免数据反方向回传的单向隔断设备。如前文所述,接收端用于接收载有文件数据片段的视频信息,并从视频信息中获取文件数据片段,然后把文件数据片段重组成文件数据,完成文件的传输。如图5所示,接收端的视频采集设备可以是硬件设备或软件系统,视频采集设备进行视频采集(S55),以获取所述图像,即,接收载有文件数据片段的视频信息。接收端将图像再转换成数据(S56)(例如通过接收端的视频解码器对接收到的图像进行解码),以及处理数据生成数据包(S57),以及从数据包获取文件数据片段,然后把文件数据片段重组成文件数据。步骤S56和S57为前面的步骤S52和S51的反向操作,因此不再赘述。
根据前面描述可知,整个链路是单向的,如果接收端没有收到数据是没办法通知发送端的,为解决可能的丢包问题,将多个数据包转换成图像进一步包括以下步骤:
在一张图像上放置m个不同的数据包,也即将m个不同的数据包转换到一张图像中,并在下一张图像中继续放置m个数据包,并更新其中n个较早的数据包,使其中包括前面已经放置过的m-n个数据包以及n个额外的数据包。
这样就实现了m-n个数据包在不同图像上的多次呈现,当接收端收到图像数据并进行解码时,每次将有m个数据包可获取,其中m-n个是之前也发送过的。所述m可以为2,3,4,……。更进一步地,根据本发明的一些实施例,可以进行设置,使得发送端上的一张图像的显示(或存在)的时间大于接收端的两个采集周期,保证每一张图像都尽可能被采集到,此时,每个数据包的实际发送次数就相当于一张图像上的数据包数量乘上一张图像的显示的采集周期数,从而进一步减少丢包的概率。
如图6所示,其中示出根据本发明一些实施例的数据包传输方法示意图。
假设图6最上方为有待传输的数据包队列,该队列包括数据包1,2,3,n等,假设一张图像可以传输的最大数据包数为3,则在第一张图像中可以包括3个数据包1,第二张图像中包括两个数据包1和一个数据包2,在第三张图像中包括数据包1,2,和3,在第四张图像中包括数据包2,3和4,也即,其中数据包1被更新,之后在第五张图像中包括数据包3、4和5,数据包2被更新,以下依次类推,数据包按照1,2,3……的方式被依序更新。当接收端接收到第一张图像时,可以获取其中的三个数据包1;当接收端接收到第二张图像时,可以获取其中的两个数据包1和1个数据包2;当接收端接收到第三张图像时,可以获取数据包1,2,3;当接收端接收到第四张图像时,可以获取数据包2,3,4;当接收端接收到第五张图像时,可以获取数据包3,4,和5(图中未示出),依次类推,如图中所示,从上到下依次显示各个图像。
由于发送端通过多张图像发送了大量的重复数据包,从图像上,获取每个完整的数据包要消耗一定量的计算资源,因此,本申请进一步提出数据包去重复方法,所述方法包括:接收端从数据包提取包序号和任务号,根据包序号和任务号,结合查询接收缓存,可以判断这个数据包在之前是否完整接收过,如果接收过,则跳过当前数据包的处理(例如移动包数据长度),开始处理下一个数据包,如果没有接收过,正常读取数据包的所有数据以及正常处理数据包。
与传统的单向导入技术相比,本发明的数据(单向)传输的速度更快,数据导入的及时性更强,可以导入文件等非及时数据也可以导入即时消息等数据。系统的硬件部分采用市面上常用的组件,成本可以做的比较低,避免资源的不必要浪费,而且虽然是单向传输,缺乏确收等常见的反馈机制,但通过本发明的上述实施例,还是可以避免大数据一次性丢失以及各个数据包中其中一些的丢失等问题。
根据本发明的一些实施例,除了前述数据包连续传多次的方式,也可以采取将数据包只传一次,等一个任务(完整的文件数据)的所有数据包都传了一遍之后再把整个任务重发一遍的方式来实现重传。也即,前述的所述的将数据转换成图像包括:在每张图像上放置m个不同的数据包,以及当所有数据包都传输完毕后,重复所述的在每张图像上放置m个不同的数据包,直至所有数据包再次传输完毕。
根据本发明的一些实施例,也可以修改判断数据包是否重复的方法,由前述的任务号加包序号改为包的唯一编号,即每个包对应有唯一的编号。接收端从数据包提取包的唯一编号和包数据长度,根据包的唯一编号和包数据长度,结合查询接收缓存,判断该数据包在之前是否完整接收过,如果接收过,则跳过当前数据包的处理,开始处理下一个数据包。
根据本发明的一些实施例,将数据转换成图像还可以包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示一个二进制位,亮度大于128表示1,亮度小于128表示0,每8个像素表示一个字节。接收端获取所述图像,将图像再转换成数据,可以包括,获取图像像素上的亮度信息,根据亮度阈值分段,让一个像素的亮度表示一个二进制位,亮度大于128表示1,亮度小于128表示0,其中可以每8个像素表示一个字节,图7示出根据图像中的亮度信息获取数据的过程,图8示出带有亮度信息的示意图像及部分数据获取过程(图7中的S73,74,75,76)。如图7所示,所述过程包括:
S71.获取图像的亮度信息;
S72.读取一个像素的亮度信息;
S73.判断是否大于阈值(阈值例如为128),若是,进入步骤S74,若否,进入步骤S75;
S74.得到当前二进制值1;
S75.得到当前二进制值0;
S76.把当前二进制值添加到当前字节的当前位;
S77.累加当前位偏移;
S78.判断当前字节是否获取完成?若是,进入步骤S79,若否,进入步骤S80;
S79.当前字节偏移一位,位偏移置0;
S80.当前位偏移一位;
S81.判断获取数据是否完成;若是,则结束整个过程,若否,则进入步骤S72。
图9示出根据本发明的一些实施例的文件数据片段重组及保存文件过程的示意流程图。如图中所示,所述过程包括:
S91.把当前包序号设置为0;
S21.从接收的包队列中查找包序号为当前包序号的包(即数据包);
S93.判断是否存在包,若是,则进入步骤S94,若否,则进入步骤S100;
S94.把数据包连接到文件数据中;
S95.判断数据包是否接收完成,若是,则进入步骤S96,若否,则进入步骤S97,使当前包序号加1,并重新进入步骤S92;
根据本发明的一些实施例,通过比较文件数据长度,以及各个包数据长度,判断数据包是否接收完成。根据本发明的一些实施例,也可以在发送端植入包总数,通过比较包总数和已经获取的包数目来判断包是否接收完成。
S96.验证文件的完整性;
可以采用常用的几种数据完整性验证方法,比如sha、crc等。也可以使用自己定义的数据完整性验证方法,比如对所有数据按字节做异或运算,把得到了一个字节做为验证码添加到数据的末尾,接收方用相同的方法得到验证码,和传输过来的对比,如果相同表示数据正确,否则丢弃数据,这种方法的可靠性差一些,但是计算速度更快并且传输损耗很小。
S98.验证是否通过,若是,则进入步骤S99,若否,则进入步骤S100;
S99,把文件数据保存到文件中;
例如从缓存中保存到内存中。
S 100.清理文件缓存和包队列。
结束流程。
根据本发明的一些实施例,将数据转换成图像还可以包括采用一个像素表示数据的一个二进制位、多个像素或多个像素的亮度表示数据的一个二进制位、通过使用一个像素的rgb分量分别表示一个数据的二进制位(如前所述,当每个分量大于阈值的表示1,分量小于所述阈值的表示0,或者每个分量的阈值可以设置为不同)、一个像素的rgb分量通过划分阈值的方式表示多个二进制位,可以根据视频传输链路的损失情况还决定采用哪种方式。以下给出进一步的示例。
在rgb表示的图像中一个分量的值范围是0-255,视频在传输过程中会有一定的损失,这个值有可能发现偏差,但是为了保持视频的质量这个偏差不会很大,可以把O-255的范围分成4段,0-63、64-127、128-191、192-255,每个段表示一个数值,这样就可以表示0,1,2,3四个值,转成二进制就是00,01,10,11,刚好可以表示两个二进制位,根据传输链路的性能和可靠性,我们可以调整阈值的划分方式,调整传输数据的速度,实现稳定传输的基础上尽可能高的传输速度。
在一些视频链路中视频的损失很大,单个像素有可能出现很大的偏差,影响传输数据的稳定性,为了避免这种影响,可以用相邻的多个点(像素)的亮度(例如其平均值或总亮度)表示数据的一个二进制位,或用固定长度和宽度的矩形内的所有像素的亮度(例如其平均值或总亮度)表示数据的一个二进制位,采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,例如其平均值,然后计算出二进制位的值。
从图像中获取数据的方法是和数据转图像的方法对应的,每一种数据转图像的方法对应着一种从图像中获取数据的方法,例如,所述的将数据转换成图像包括通过使用一个像素的rgb分量亮度分别表示一个数据的二进制位,则采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,并计算出二进制位的值,此处不再赘述。
本申请还涉及一种数据传输方法,图10示出根据本发明一些实施例的数据传输方法流程图。所述方法包括:
S1.发送端将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;
S2.视频传输链路把图像传输到接收端;
S3.接收端采集图像并将图像再转换成数据。
所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;
采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0。
根据本发明的一些实施例,所述的将数据转换成图像包括采用多个像素的亮度表示数据的一个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括将一个像素的rgb分量亮度通过划分阈值的方式表示数据的多个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括采用相邻的多个像素的亮度(平均亮度或总亮度)表示数据的一个二进制位,或用固定长度和宽度的矩形内的所有像素的亮度(平均亮度或总亮度)表示数据的一个二进制位。
根据本发明的一些实施例,所述的将数据转换成图像包括通过使用一个像素的rgb分量亮度分别表示一个数据的二进制位;采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,亮度大于rgb分量亮度阈值的表示1,亮度小于rgb分量亮度阈值的表示0。
此外,本申请的方法还包括前面描述数据传输系统时所提到的数据传输方法及其中的各个细节步骤。为简化起见,此处不再重复。
Claims (11)
1.数据传输系统,包括发送端、视频传输链路和接收端,其中:
发送端用于将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;
视频传输链路用于把图像传输到接收端;
接收端用于采集图像并将图像再转换成数据;
所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;
采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0。
2.根据权利要求1所述的系统,其中,所述的将数据转换成图像包括采用多个像素的亮度表示数据的一个二进制位。
3.根据权利要求1所述的系统,其中,所述的将数据转换成图像包括将一个像素的rgb分量亮度通过划分阈值的方式表示数据的多个二进制位。
4.根据权利要求1所述的系统,其中,所述的将数据转换成图像包括通过使用一个像素的rgb分量亮度分别表示数据的一个二进制位;采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,亮度大于rgb分量亮度阈值的表示1,亮度小于rgb分量亮度阈值的表示0。
5.根据权利要求3所述的系统,其中,所述的将数据转换成图像包括把O-255的范围分成4段,0-63、64-127、128-191、192-255,每个段分别对应00,01,10,11,以表示两个二进制位。
6.根据权利要求1所述的系统,其中,所述的将数据转换成图像包括采用相邻的多个像素的亮度表示数据的一个二进制位,或用固定长度和宽度的矩形内的所有像素的亮度表示数据的一个二进制位。
7.数据传输方法,包括:
发送端将数据转换成图像,再通过图像视频输出设备将图像输出到视频传输链路中;
视频传输链路把图像传输到接收端;
接收端采集图像并将图像再转换成数据;
所述的将数据转换成图像包括将数据转换成含有亮度信息的图像,用一个像素的亮度表示数据包中数据的一个二进制位,亮度大于阈值的表示1,亮度小于所述阈值的表示0;
采集图像并将图像再转换成数据包括:获取图像像素上的亮度信息,根据亮度阈值分段,亮度大于所述阈值表示1,亮度小于所述阈值表示0。
8.根据权利要求7所述的方法,其中,所述的将数据转换成图像包括采用多个像素的亮度表示数据的一个二进制位。
9.根据权利要求7所述的方法,其中,所述的将数据转换成图像包括将一个像素的rgb分量亮度通过划分阈值的方式表示数据的多个二进制位。
10.根据权利要求7所述的方法,其中,所述的将数据转换成图像包括采用相邻的多个像素的亮度表示数据的一个二进制位,或用固定长度和宽度的矩形内的所有像素的亮度表示数据的一个二进制位。
11.根据权利要求7所述的方法,其中,所述的将数据转换成图像包括通过使用一个像素的rgb分量亮度分别表示数据的一个二进制位;采集图像并将图像再转换成数据包括,计算像素rgb分量亮度,亮度大于rgb分量亮度阈值的表示1,亮度小于rgb分量亮度阈值的表示0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310228319.9A CN116233329A (zh) | 2023-03-03 | 2023-03-03 | 数据传输系统和数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310228319.9A CN116233329A (zh) | 2023-03-03 | 2023-03-03 | 数据传输系统和数据传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116233329A true CN116233329A (zh) | 2023-06-06 |
Family
ID=86580389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310228319.9A Pending CN116233329A (zh) | 2023-03-03 | 2023-03-03 | 数据传输系统和数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116233329A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6519362B1 (en) * | 2000-02-15 | 2003-02-11 | The United States Of America As Represented By The National Security Agency | Method of extracting text present in a color image |
FR2848703A1 (fr) * | 2002-12-17 | 2004-06-18 | Canon Kk | Insertion et extraction d'un message dans une image |
US20100135384A1 (en) * | 2006-09-26 | 2010-06-03 | Ambx Uk Limited | Creation and handling of a bitstream comprising video frames and auxiliary data |
CN103248898A (zh) * | 2013-05-22 | 2013-08-14 | 张炯 | 数字水印添加、提取方法及其装置 |
CN105611228A (zh) * | 2014-11-19 | 2016-05-25 | 无锡中感微电子股份有限公司 | 基于复合视频信号的数字数据发送和接收方法以及装置 |
CN109767375A (zh) * | 2018-12-06 | 2019-05-17 | 北京北信源信息安全技术有限公司 | 图像水印嵌入和追溯的方法及系统 |
-
2023
- 2023-03-03 CN CN202310228319.9A patent/CN116233329A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6519362B1 (en) * | 2000-02-15 | 2003-02-11 | The United States Of America As Represented By The National Security Agency | Method of extracting text present in a color image |
FR2848703A1 (fr) * | 2002-12-17 | 2004-06-18 | Canon Kk | Insertion et extraction d'un message dans une image |
US20100135384A1 (en) * | 2006-09-26 | 2010-06-03 | Ambx Uk Limited | Creation and handling of a bitstream comprising video frames and auxiliary data |
CN103248898A (zh) * | 2013-05-22 | 2013-08-14 | 张炯 | 数字水印添加、提取方法及其装置 |
CN105611228A (zh) * | 2014-11-19 | 2016-05-25 | 无锡中感微电子股份有限公司 | 基于复合视频信号的数字数据发送和接收方法以及装置 |
CN109767375A (zh) * | 2018-12-06 | 2019-05-17 | 北京北信源信息安全技术有限公司 | 图像水印嵌入和追溯的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050156873A1 (en) | Custom emoticons | |
KR100667739B1 (ko) | 무선 데이터 송수신 장치 및 그 방법 | |
EP1256062B1 (fr) | Transport d'unites de protocole d'objet electronique portable par protocole pour peripheriques de micro-ordinateur | |
WO2010022653A1 (zh) | 一种传输文件的检测方法及终端 | |
CN101472163A (zh) | 图片文件传输方法和装置及系统 | |
CN110650097B (zh) | 一种数据传播方法、装置以及计算机可读存储介质 | |
US20050011365A1 (en) | System for transmitting additional information via a network | |
CN111371887A (zh) | 物联网日志传输方法、客户端、服务端、设备及存储介质 | |
CN115883264B (zh) | 信息安全传输系统和信息安全传输方法 | |
CN116233329A (zh) | 数据传输系统和数据传输方法 | |
CN111225077B (zh) | 物联网设备配网方法、装置和系统 | |
CN115913473B (zh) | 一种数据选择性重传方法及其系统、存储介质、电子设备 | |
JP5160590B2 (ja) | 動画像の圧縮・伝送方法 | |
JP3291451B2 (ja) | データ処理システム及び処理方法 | |
CN110784620A (zh) | 一种设备数据互通方法 | |
JP4456574B2 (ja) | 圧縮データ送信方法 | |
JP2002176460A (ja) | 送信装置及び通信システム | |
JP3009434B2 (ja) | データ圧縮装置 | |
CN110049037B (zh) | 一种基于数据链路层的网络视频数据获取方法 | |
CN104753815A (zh) | 一种基于流缓存的透明传输加速网络以及方法 | |
CN100474821C (zh) | 一种数据传输方法 | |
Kireev et al. | Transform-Aware Content Adaptive Stegosystem for Social Networks | |
CN115037417A (zh) | 一种用于北斗三号rdss链路优化的数据丢包重传方法 | |
CN116489232A (zh) | 基于json的数据压缩传输方法及装置 | |
EP2265027A1 (en) | Method of encoding and decoding a video stream transmitted over a communication network |
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 |