matlab imread_图像加密:matlab求解像素改变率NPCR详细程序

在图像加密中,对扩散性测试的一个重要指标就是像素改变率,对于同一张灰度图,仅改变其一个灰度值,然后得到两幅不同的加密图,然后对比这两幅加密图的相同位置的灰度值,统计其不相等的个数占总像素点的百分比,得到的值就是像素改变率NPCR,当NPCR大于等于95%的时候,就可以判定扩散性较好,其具体计算公式如下图所示:

02f8d29dee8a7e7c2d4ea64bf18d15bf.png
d3fa7a3a68018cd15d9a27fd94771581.png

像素改变率

上式中,M,N分别为加密图的宽度和高度,C1(i,j),C2(i,j)分别为两幅加密图第i行第j列的灰度值

68494aceedb116087a5fff66cd146a68.png

运用matlab求解像素改变率的具体程序如下:

%%%%----计算像素改变率-基于加密图和改变了原图的加密图----%%%%clc;clear;cd F:Dissertation代码图片%读取更改原图一个像素点后的加密图image1=imread('encryption_change.tif');%读取没有更改原图的加密图image2=imread('encrypted.tif');%显示图片subplot(1,2,1),imshow(image2),title('原图像')subplot(1,2,2),imshow(image1),title('改变后图像')%计算相同位置灰度值相等的个数[M,N]=size(image1);m=0;for i=1:M for j=1:N if image1(i,j)==image2(i,j) m=m+1; end endend%计算NPCRNPCR=(M*N-m)/(M*N);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值