顾伯成 吴健珍
摘 要 本文提出了一种应用于远程诊疗医学图像水印算法,将病人的个人信息制成水印,按一定的嵌入规则嵌入到经过DCT变换后的医学图像中,在提取水印时不需要原始图像。仿真实验表明该水印算法的不可见性好,原始图像失真烧,对噪声、JPEG压缩处理等常规图像操作时的鲁棒性较高,有效地保护了病人的个人信息,防止了个人隐私的泄露。
关键词 医学图像 DCT变换 隐私保护
中图分类号:TP309.7 文献标识码:A DOI:10.16400/j.cnki.kjdks.2015.01.071
0 引言
随着网络技术的飞速发展,数字化的医学数据存储使得远程医疗、远程诊断成为可能。基于计算机网络的远程医疗诊断作为一种新型诊疗模式,正引起国内外医学专家的高度重视。在远程医疗诊断系统中,医学图像作为关键的疾病诊断依据,它的准确性直接影响了医生对于疾病的诊治。由于在公共网络中传输医学图像,病人的姓名、性别、身份证、病名等私人信息很容易被泄露,而且数字化的图片也很容易被别有用心的人进行篡改或伪造,一旦病灶区域的数据被修改,很容易引起误诊,引起医疗事故或医患纠纷。因此,如何确保医学图像的安全性和完整性是远程医疗系统实施所面临的一个非常重要且关键的问题。
数字水印技术作为一种新型安全技术,其特点满足远程医疗诊断系统中医学图像安全性的要求。它通过一定的水印嵌入算法将水印信息(如个人标志性信息、版权信息等)嵌入到数字作品(图像、视频等)中,经过信道传输后,利用水印提取或检测算法读出水印信息,能实现医学图像的真实性和完整性认证。
1 基于DCT的医疗图像水印算法
DCT频域水印算法是常用的一种水印算法,其基本思想是利用扩频通信的原理来提高数字水印的鲁棒性,它将水印信息嵌入到载体图像的DCT频域上,然后经反变换输出。在DCT系数中,高频部分代表图像中的噪声部分,这些部分容易通过有损压缩或者滤波等处理被去掉。中低频部分包含了图像的大部分能量,虽然人类视觉系统(HVS)对中低频分量比较敏感,但中低频部分的DCT系数幅值大,水印嵌入到中低频部分不易被擦除,有较强的稳健性,因此考虑到水印的鲁棒性,将水印嵌入到DCT的中低频部分,并通过调整嵌入强度,使水印的鲁棒性和不可见性达到较好的平衡。①本文所提出的算法基于DCT变换域,且在水印检测时不需要原图,是一种盲水印算法。水印系统原理图如图1所示。
圖1 水印嵌入流程图
图2 嵌入水印的位置
1.1 水印嵌入算法
通常在图像传输过程中,亮度和对比度会有较大变化,而像素之间的相对值变化较小,因此,这里以相邻DCT系数的平均值为基准,嵌入适当强度的水印。先将原始图像进行8?大小的分块,每个分块在DCT变化后嵌入水印图像的1bit信息。水印嵌入位置如图2所示,图中有阴影的单元为嵌入水印的单元。图中每3个中低频系数为一组,以每一组3个系数的平均值为基准,根据嵌入的水印图像对应1bit信息的二值性选择不同的嵌入系数(偏移量),调节DCT系数的平均值,然后嵌入到每一组中间单元中,这样,在每个图像块的1个单元中嵌入了水印图像。②
设是状笮〉脑荚靥逋枷瘢谴笮∥獉椎亩邓⊥枷瘢⑶沂?= 8住J迪炙∏度氲木咛宀街枞缦拢?
(1)将分解成为(/8)祝?8)个8?像素大小的方块(),1≤、≤/8。
(2)对在每一个()进行DCT变换:()=DCT(())。
(3)在每一个()块中,按图2位置嵌入水印,3个低频系数为一组,通过改变一组中间单元对本组均值的偏移量来嵌入了水印,这样,在每个8?图像块的1个单元中嵌入了水印图像的信息。设为代表要嵌入的水印图像的第位信息,(1,4)、(1,5)、(1,6)代表嵌入的相邻的3个DCT系数,具体的嵌入算法为:
其中为均值偏移量(嵌入系数)。
(4)对以上修改得到的每一个()进行逆DCT变换:()=IDCT(())。并将各块()合并为一个整图,即为加载了水印的新图像。
1.2 水印提取算法
设图像为已经加载了水印的图像。现要将所加载的水印从中提取出来。其过程为上述加载水印算法的逆运算:
(1)将分为/8)祝?8)个8?大小的方块(),1≤、≤/8。
(2)对每一个()块,进行二维DCT变换:()=DCT(())。
(3)对每一个(),计算嵌入水印的值以及相邻两个单元的平均值,即: = (1,5) = ((1,4) + (1,6))/2
(4)按照下面规则进行水印提取:
(5)将上面得到的所有合并成一个整图。即为原始的水印图像。
2 仿真实验
为了验证该算法的有效性选取了以为肺炎患者的CT图进行仿真实验,图像大小为512?12水印为病人的个人信息(姓名+身份证号)大小为64?4,然后根据嵌入算法将水印嵌入图2所示的位置,其中均值偏移量(嵌入系数) = 15。
原始图像进行8?分块后大小为64?4正好为水印的大小,将水印嵌入到图像中,得到含水印的图像。从图3可以看出添加水印后的医学图像并未失真依旧可以准确地反映出病灶区域的信息。原始图像和含水印图像的峰值信噪比(PSNR)为37.26dB。在未受攻击时提取的水印如图4所示,水印十分清晰。
对含水印图像添加噪声,加有噪声的含水印图像和所提取的水印如图5 所示,水印图像可以清晰辨别。图6为经过JPEG压缩后的含水印图像(其中压缩因子是70),由图可以看出水印图像仍然清晰可辩。
图3 原始医学图像及原始水印
图4 含水印图像及提取的水印
图5 加噪声的含水印图像及提取的水印
图6 JPEG压缩(压缩因子70)时的含水印图像及提取的水印
3 结论
本文提出了一种基于DCT的医疗图像数字水印算法,可以用于数字化远程医疗,算法可以将病人的CT图,X射线图等医疗图像作为载体图像,将病人的个人信息如姓名,身份证等制成水印将水印嵌入到医疗图像中去,经过MATLAB仿真表明,含水印图像经过添加噪声和JPEG压缩后仍能提取出较为完整的水印,有效地保护了病人的个人隐私。
注释
① 孙圣和,卢哲明,牛夏牧等.数学水印技术及应用[M].北京:科学出版社,2004.11.
② 余燕忠,王新伟,刘建华.DCT域水印嵌入新策略和算法[J].计算机应用与软件,2004(1):12-13.