图像对比度:
%% 计算图像对比度——4近邻
% @matrix -- 输入的图像为灰度图
% 处理方式:构造一个一维差数[1,max+1],组沿着矩阵row轴,当前像素值与右一个像素做差取绝对值
% 将其累加1在一维差数组对应位置上,到row-1。沿col轴同理。
% 对一维数组除以总共差个数,得到灰度差分布概率数组,再用公式求解:∑(m^2*temp[m])
%该方法是对一张图像对比度的求解
function C=m_contrast4(matrix)
[row,col] = size(matrix);
num = max(max(matrix));%矩阵中最大值
temp = zeros(1,double(num)+1); %一维像素间的灰度差数组
for i = 1:row %沿col
for j = 1:col-1
num_y = abs(matrix(i,j)-matrix(i,j+1));
temp(1,num_y+1) = temp(1,num_y+1)+1;
end
end
for i = 1:row-1 %沿row
for j = 1:col
num_x = abs(matrix(i,j)-matrix(i+1,j));
temp(1,num_x+1) = temp(1,num_x+1)+1;
end
end
temp_cop = temp/sum(temp); %灰度差分布概率数组
C=0;
for m = 1:num
C = C + (m^2)*temp_cop(1,m+1);
end
%% 计算图像对比度——8近邻
% @matrix -- 输入的图像为灰度图
%处理方式:中心像素灰度值与周围8近邻像素灰度值之差的平方之和,除以以上之差的个数。
%{
%介绍函数 padarray
功能:填充图像或填充数组。
用法:B = padarray(A,padsize,padval,direction) A为输入图像&#