首页 > 范文大全 > 正文

基于智能相机混沌图像加密

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于智能相机混沌图像加密范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

【摘要】本文基于德国VC4066智能相机,在DSP专用软件CCS3.3、相机与PC机相连的配套软件Teraterm、以及VCRT525_VCLLB303_Setup三大软件环境下,结合离散化和数字化处理技术对三维Lorenz混沌系统作离散处理,将智能相机所采集的数字图像进行实时加密处理,提高了智能相机的安全可靠性能。

【关键词】智能相机;Lorenz系统;混沌加密

Abstract:According to the discretization and digital processing technology used in the 3D Lorenz chaotic system,this paper has studied the real-time encryption of the digital images collected from smart camera(German VC4066)under the circumstances of three main software including the special software in DSP CCS3.3,bundled software Teraterm whose cameras are connected to the PC,and VCRT525_VCLLB303_Setup.The image encryption provides an effective way to enhance the safe reliability of the smart camera.

Key words:Smart camera;Lorenz system;Chaotic encryption

1.引言

智能相机是一种高度集成化的微小型机器视觉检测系统,主要由图像采集装置、图像处理算法、图像处理软件和通信控制装置组成,它将图像的采集处理与通信功能集成一体,与传统相机相比主要区别是强大的数据运算和工业控制能力,因此可以在脱离PC的情况,独立完成各种面向的图像的工业应用,被广泛应用于工况监视、成品检验和质量控制等工业领域[1]。其应用的领域所涉及的信息安全问题也引起了广泛的关注。

近年来基于混沌理论的加密方法得到了大量的研究。混沌加密采用迭代的方式生成密钥序,生成速度较快,可以很好地满足图像加密的适时性要求。本文提出了基于智能相机混沌图像加密系统设计,在CCS的开发环境下用C语言实现数字图像加密与解密。

2.Lorenz系统混沌基本原理

Lorenz系统是由美国气象学家洛伦兹于1963年在大气科学杂志上提出[2],该混沌系统作为经典三维混沌系统,其无量纲状态方程式(1)为:

(1)

其中x,y,z,σ,β,γ∈R,当系统参数σ,β,γ的典型值分别为σ=10,β=3,γ=8/3,且在σ和β保持不变,γ>24.74时,系统进入混沌状态[3]。系统的3个初始值和3个参数都可以作为生成加密混沌序列的种子密钥,产生的密钥空间大于一维和二维的混沌系统。与一维和二维等低维混沌系统相比,具有更为复杂的混沌动力学行为[4],产生的混沌序列更不可预测。如果对系统输出的混沌序列进行处理,还可以采用单变量或多变量组合的加密混沌序列,使得序列密码的设计和应用更加灵活方便[5-6]。

由于DSP只能处理离散信号或数字信号,而Lorenz系统是三维连续混沌系统,所以要先对连续的Lorenz混沌系统作离散化处理[7]。对混沌系统离散化通常有3种方法:Euler算法、改进Euler算法和Runge-Kutta算法,本系统采用的是Euler算法进行离散处理,将方程化为差分方程:定义x、y、z为双精度型,选取初值x0=0.4、y0=0.6、z0=0.6。方程参数值选取u=10,r=28,b=8/3,并定义步长h=0.001,在给定初值的情况下,运用下面三个方程式(3)产生混沌信号:

(2)

3.系统硬件实现

VC4066智能相机,集成了图像Senor,数字信号处理器、VGA视频输出和I/O控制等,硬件结构如图1所示。VC4066使用了美国TI(德州仪器)公司出品的TMSC6211芯片,具有高解析度的CCD Sensor,有效像素达782*582;同时处理器能力达到1200MIPS,拥有16M SDRAM和2M FlashROM;数字I/O可以用做工业控制;通过Ethernet可以与其它设备交互[8]。

图1 硬件结构框图

目前用于混沌加密通常采用的是一维或二维混沌系统,其方程简单易实现但是密钥空间小,抵御穷举攻击能力差,因此本文提出三维Lorenz混沌系统和DSP技术实现混沌数字图像加密以及硬件实现的新方法。硬件主要包括图像的采集、图像加密、图像显示三个部分。

用Euler算法将Lorenz混沌信号进行离散处理,产生混沌迭代序列,在混沌加密与解密算法的基础上,利用德国VC4066作为开发平台,TMSC6211为DSP的芯片处理器,进行灰度图像异或加密与解密的硬件实验研究,并做出实验结果,其系统框图如图2所示。

图2 系统设计框图

4.系统软件设计

(1)智能相机中的软件资源:VC/RT操作系统及其函数库

VC/RT是vision components公司提供的实时多任务的嵌入式操作系统,可多任务并行处理;提供了控制摄像机资源所有的基本函数,如图像获取,曝光控制,内存管理,I/O控制、串口/网口通信等;为每位用户提供shell环境来访问摄像机所有资源;为用户提供了调试和测试程序的环境。

VCLIB图像处理库提供处理灰度图像的基本函数、灰度相关函数、JPEG压缩和解压缩函数以及行程编码处理二值图像的函数。

(2)智能相机的软件开发平台

基于CCS3.3(Code Composer Studio 3.3)的编译环境,用C语言编写混沌加密算法,客户终端程序是Teraterm。

(3)混沌加密系统密钥算法的DSP实现过程为:通过CCD所采集到原始图像进行JPEG压缩编码,再根据Euler算法将Lorenz方程离散化后所产生混沌序列进行异或加密,再通过网络传输送到终端显示,而解密的过程与此相似。将接收到的加密数据与所产生的混沌序列进行异或解密,如图3所示。

图3 混沌加密系统密钥算法框图

5.实验结果与分析

连接好硬件电路,通过PC机上运行客户终端程序Teraterm,设置好Teraterm和PC机的IP,其中PC机的IP设置为192.168.0.XX子网掩码设为255.255.255.0;客户终端程序Teraterm的IP设置为192.168.0.65,建立PC与摄像机的连接,然后将混沌加密算法用C语言实现,在CCS3.3的编译环境中生成.msf文件,再下载到VC4066智能相机里,下载完成后程序在相机中运行,可以得到加密后的图像,如图5所示。在接收端中加入解密程序,当解密端程序的密钥与加密端的密钥完全匹配时,得到解密后的图像,如图6所示。

在接收端中加入解密程序,当解密端程序的密钥与加密端的密钥不匹配时或者稍微改动一下Lorenz系统初始值,例如将u=10改为u=10.0001,其余参数不变,其得到解密后的图像,如图7所示,无法得到原始图像。

图8 原始图像灰度值的统计直方图

从图像直方图统计特性进行分析,原始图像灰度值的统计直方图如图8所示,原始图像的频谱主要分布在低频区域内。加密后图像灰度值的统计直方图如图9所示,与图8的统计直方图相比,经过混沌异或加密后图像的灰度值分布比较均匀,这也说明了加密后的具有良好地抵御统计攻击。

图9 加密后图像灰度值的统计直方图

从图像相邻像素的相关性分析,从图10可以看出,未加密的原始图像相邻像素点有高度相关性,而经过加密后的图像,由图11可以看出相邻像素点的相关性接近0,可以有效抵御攻击。

图10 点(i,j)处的像素值原始图像

图11 点(i,j)处的像素值加密后图像

6.结论

本文基于德国VC4066智能相机开发平台,在CCS3.3开发环境下,用C语言实现三维Lorenz混沌系统对数字图像进行混沌异或加密。实验结果证明基于智能相机混沌图像加密系统具有很好的加密效果。

参考文献

[1]叶峰,骆安林.基于DSP的嵌入式智能相机的研究[J].现代电子技术,2013(2).

[2]姚翔辉,禹思敏.基于Lorenz混沌系统的数字视频加密[J].微型机与应用,2011(4).

[3]卢辉斌,郑恒娜,韩秀锋.基于Lorenz三维混沌序列的彩色图像加密算法[J].电子测量技术,2008,31(11).

[4]KohdaT.Information Sources Using Chaotic Dynamics[J].Proceedings of the IEEE,2002,90(5):641-661.

[5]李文化,王智顺,何振亚.用于跳频多址通信的混沌跳频码[J].通信学报,1996,17(6):17-21.

[6]凌聪,孙松庚.用于跳频码分多址通信的混沌调频序列[J].电子学报,1999,27(1):67-69.

[7]吴敏,丘水生.一种混沌图像加密方法的研究[J].通信学报,2003,24(8):31-36.

[8]智能相机开发指南以及应用手册[S].

作者简介:江美霞(1986―),女,硕士研究生,研究方向:嵌入式系统。