2021-09-23 网安实验-图像隐写-MATLAB图像加密
随着越来越多的图像在互联网络中传播并且逐渐成为人们获取信息的主要途径之一,对于信息安全的考虑下,就需要对发送的图片进行加密,来保护自身的利益,使信息不是那么容易被别人截获。因而有了各种图像加密技术,本次实验来简单介绍一下以下四种加密算法的MATLAB编程实现,分别是:
1.基于像素点RGB值放大加密;
2.基于行列像素点置乱加密;
3.基于灰度置乱加密;
4.基于混沌序列加密。
基于像素点RGB值放大加密。
图像在每个像素都有相应的颜色值,我们将像素上的颜色值进行放大,并相互重合叠加覆盖,隐藏图像原有的信息从而达到加密的效果。实际上,放大像素值,颜色值自然放大。放大的倍数越大,加密后的图像越不容易分辨出原有的信息。
-
打开MATLAB,点击左上角“新建脚本”将下面的代码输入到MATLAB中(也可以直接用matlab打开源程序jiami1.m运行),程序第一行中imread()函数的参数是图像的路径,注意修改为图片的正确路径,点击保存之后运行程序,观察结果。
a=imread(‘D:\matlab\color.jpg’); %读取要加密的图像,r=rand(size(a))*100; %size(a)是获取矩阵的大小,返回矩阵行数列数,这里用rand()函数随机生成一个和a大小相同的矩阵并且乘以100,可尝试修改加密倍数观察加密效果
rgbd=im2double(a); %将a转为双精度,因为rand()函数身材的r矩阵精度较高,a矩阵与r矩阵相乘就需要提升a矩阵
文章来源: codeboy.blog.csdn.net,作者:愚公搬代码,版权归原作者所有,如需转载,请联系作者。
原文链接:codeboy.blog.csdn.net/article/details/120434894
- 点赞
- 收藏
- 关注作者
评论(0)