直播水印怎么弄(浅谈视频隐形水印技术)

常见问题 2022-08-01 16:50:21 阅读:356

随着直播、视频会议、在线教育等行业的兴起,视频内容进入“井喷式”发展阶段,视频的产权保护问题逐渐引起人们的关注。目前,各行业在视频产权保护方面的主要方式是在视频画面中添加水印,这种方式对观众的视觉体验有一定的影响,且因显示在画面上的水印容易被定位和抹除,实际保护效果不佳。“隐形视频水印”技术的普及为数字时代复杂的知识产权保护问题提供新的解决思路。本文简要介绍几种隐形水印技术。

1.封装结构中的水印

大部分视频文件的封装结构里都存储有包含附加信息的附属结构,只要把额外的数据保存在附属结构里,就可以在封装结构里附加水印了。下面以flv文件及H.264码流为例简要介绍在视频文件与视频流结构上附加水印的方法。

(1)flv文件

flv文件由一个header和多个tag组成,这些tag分为三类:audio、video和script data。其中,script data的格式标准允许用户自行插入各种自定义数据,可以按照官方文档来修改script data中附带的数据。flv文件格。

(2)H.264码流

在flv、mp4、mkv等视频文件的封装格式内添加数据只适用于离线形式的视频以文件,当需要在直播或视频通话中的视频数据上添加水印时,可以从视频码流层入手。在目前使用最广泛的H.264视频编码标准中,有一段数据叫作补充增强信息(supplemental enhancement information,SEI),它被用来存储辅助解码与显示的信息,支持添加用户的自定义数据,我们可以按照它的格式标准生成自定义的SEI数据,并将其嵌入视频码流中,实现隐形水印的效果。

在封装结构层添加水印不需要逐帧处理视频原始数据,只需在文件的封装格式内直接添加水印数据,因此它是所有隐形水印方案中运算量最小的,但在视频被盗用时极可能被人重新编码存储,导致存储在结构中的水印丢失。

2. 画面中的水印

(1)LSB隐形水印

在画面中添加水印的方式有许多种,最简单的一种是在最低有效位(Least Significant Bit,LSB)中添加水印数据,LSB指的是像素值中对视觉效果影响最小的一个比特,通常来说,肉眼难以分辨修改LSB数据所产生的视觉差异。利用这一原理,我们可以通过把转换成二进制的水印数据直接写到目标图像的最低位上的方式完成水印的嵌入。

LSB隐形水印同样存在一些问题,即最低有效位的数据非常脆弱,极容易被有损压缩算法修改,导致水印无法正常提取,而编码基本都是有损压缩,且视频在被盗取并重新发布时一般都会经历二次编码,LSB的损失会更加严重,所以现在主流的隐形水印算法大多选择对变换后的数据进行处理。

(2)DCT隐形水印

基于离散余弦变换(DCT for Discrete Cosine Transform)的隐形水印运用了目前主流的隐形水印算法,这类在变换域上操作的隐形水印算法能更好地应对各类攻击,其优点如下:

一是具有很好的“隐形”性。人眼对图像中不同频率的信号敏感程度不同,直接在频率域上操作数据有利于控制主观感知到的失真程度,以保证水印的“隐形”。

二是鲁棒性强。不同频率的信号稳定性不同,在频率域加水印有助于控制水印的鲁棒性,保证水印在经历各类损伤后依然能够被还原。

三是运算量少。这类方法理论上可以直接嵌入一些编码器,从而减少运算量。

如图2所示,在基于DCT的水印嵌入流程中,首先将原始图像进行DCT变换,然后将水印数据加到选好的频率系数上,再使用IDCT还原图像,最后输出带有水印的图像。


相关推荐

热门文章

立即加入,领取您的专属解决方案

电话咨询免费试用