【图像加密】基于混沌编码实现图像加密解密(PSNR和SNR)附matlab代码

您所在的位置:网站首页 信息安全中加密技术的研究内容 【图像加密】基于混沌编码实现图像加密解密(PSNR和SNR)附matlab代码

【图像加密】基于混沌编码实现图像加密解密(PSNR和SNR)附matlab代码

2023-06-03 01:59| 来源: 网络整理| 查看: 265

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信       无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机 

⛄ 内容介绍

随着信息爆炸时代的到来,图像信息的高效与安全传输问题迫切需要解决.从系统的角度出发,利用MATLAB平台,设计并实现了一种新的图像压缩与加密方法.首先分析了logistic混沌系统和DCT运算解码等原理和方法;然后基于MATLAB GUI界面开发方法,把多个相关模块串联到一起,进而设计了融合图像压缩,加密,编码,传输的数字通信系统.该研究对图像高速传输与安全性能的提高具有重要的实际意义,对于同类设计具有一定的指导作用.

⛄ 部分代码

function s=IQA2(origin_file, process_file)

clc

% 读取图像

img = imread(origin_file);

jmg = imread(process_file);

% 计算熵

s.entropy = [get_entropy(img) get_entropy(jmg)];

% 计算PSNR

[psnr_value,snr_value] = psnr(jmg, img);

s.psnr = psnr_value;

s.snr = snr_value;

% 文件大小

info1 = imfinfo(origin_file);

info2 = imfinfo(process_file);

% 输出结果

fprintf('\n原文件大小为%d byte,信息熵为%.3f,处理后文件大小为%d byte,信息熵为%.3f,压缩比为%.2f,处理后PSNR=%.2f,SNR=%.2f。\n', info1.FileSize, s.entropy(1), info2.FileSize, s.entropy(2), info1.FileSize/info2.FileSize, psnr_value, snr_value);

s.rate = info1.FileSize/info2.FileSize;

function res = get_entropy(x)

% 计算熵

n = 2^8;    

x = double(x(:));      

% 计算频次

y = hist(x, n);          

% 计算概率

y = y / sum(y(:));            

% 消除0干扰

y(y==0)=eps;

% 计算熵值

res = -sum(y .* log2(y));       

⛄ 运行结果

⛄ 参考文献

[1] 谷胜献. 基于混沌和DNA编码的图像加密算法设计[D]. 大连理工大学, 2015.

[2] 侯玉涛. 基于混沌和DNA编码的图像加密方案研究[D]. 大连理工大学, 2018.

[3] 邵开丽, 赵攀, 袁夫彩,等. 基于MATLAB的图像压缩加密编码设计及实现[J]. 黄河科技学院学报, 2023, 25(2):6.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3