Image Sharpness Calculation ?
조회 수: 30 (최근 30일)
이전 댓글 표시
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
답변 (1개)
KALYAN ACHARJYA
2020년 2월 11일
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
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!