Image Sharpness Calculation ?

30 visualizzazioni (ultimi 30 giorni)
shawin
shawin il 11 Feb 2020
Modificato: shawin il 27 Feb 2020
I have an issue with Image sharpness calculation, iam trying to code the formula below , but iam getting error :
The formula is :
where
.
and
: represents the horizontal/vertical gradient at pixel (x,y) obtained via the Sobel filter.
then S is :
.
and there is an issue with image gradient, if the image has no same hieght width the equation will not work ??
I have the code below for L(x,y) :
clear all;
my_image = im2double(imread('lena512.tif'));
my_image1 = my_image(:,:,1);
A=my_image1;
% use the help of a bigger matrix
B=nan(size(A)+2);
B(2:end-1,2:end-1)=A;
% pre-define memory for result
sharpness = 0*A;
% calculate!
for i=2:size(A,1)+1,
for j=2:size(A,2)+1,
tmp(2,2)=nan;
sharpness(i,j)= (temp (i-1,j)) + (temp(i+1,y) -temp(i,j-1)-temp(i,y+1);
end
end
  2 Commenti
KALYAN ACHARJYA
KALYAN ACHARJYA il 11 Feb 2020
What is I^2(x)?
shawin
shawin il 11 Feb 2020
I updated the formula , sorry for that

Accedi per commentare.

Risposte (1)

KALYAN ACHARJYA
KALYAN ACHARJYA il 11 Feb 2020
my_image1 = my_image(:,:,1);
sharpness=0;
[r,c]=size(my_image1);
for i=2:r-1
for j=2:j-1
L=(my_image1(i-1,j)+my_image1(i+1,j)-my_image1(i,j-1)-my_image1(i,j+1))^2;
sharpness(i,j)=L*(I^2(x)+I^2(y))
%..................^ ^ Change the I^2(x) and I^2(y)..I didnot undestand thease two I(x) and I(y)
end
end
sharpness
  6 Commenti
shawin
shawin il 16 Feb 2020
Thank you :)
shawin
shawin il 21 Feb 2020
Modificato: shawin il 27 Feb 2020
Thank you

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by