For Image Quality Parameters I need to find NPCR for 2 images after encryption whose original image have 1 pixel difference. The code is:
% For Grayscale Jpeg Images
C=Cipher Image
C2c=Cipher Image after 1 Pixel difference in Original Image.
siz=M*M;
NPCR=0;
SSS=0;
for i=1:M
for j=1:M
if (C2(i,j)==C2c(i,j))
SSS=SSS;
else
SSS=SSS+1;
end
end
end
SSS=SSS/siz;
NPCR=SSS*100;
I get NPCR value=0.0015. Is my code not OK or the method for Cipher image. I should get a value around 99.67%
Suggest any solutions or error

4 commentaires

Renjith V Ravi
Renjith V Ravi le 29 Déc 2016
I think the NPCR equation is wrong in your code
majed samir
majed samir le 1 Jan 2017
Modifié(e) : Walter Roberson le 1 Jan 2017
SSS=SSS/siz;
error
true is
SSS=siz/(siz+1)
LOKESH
LOKESH le 6 Juin 2018
This will always give 99.99% result..SSS=siz/(siz+1) will never need the loop..please check
Parveiz Lone
Parveiz Lone le 12 Mai 2020
%% 3. NCPR score and p_value
npcr_score = sum( double( img_a(:) ~= img_b(:) ) ) / num_of_pix;
npcr_mu = ( largest_allowed_val ) / ( largest_allowed_val+ 1 );
npcr_var = ( ( largest_allowed_val) / ( largest_allowed_val+ 1 )^2 ) / num_of_pix;
npcr_pVal = normcdf(npcr_score, npcr_mu, sqrt( npcr_var ) );
npcr_dist = [ npcr_mu, npcr_var ];

Connectez-vous pour commenter.

 Réponse acceptée

Walter Roberson
Walter Roberson le 25 Avr 2012

0 votes

The best encryption schemes would show no correlation between the encrypted versions of two original images that were nearly the same but not identical.

Plus de réponses (0)

Catégories

En savoir plus sur Encryption / Cryptography dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by