logo资料库

matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例.pdf

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
计算灰度图像的一阶矩,二阶矩二阶矩,三阶矩实例 三阶矩实例 matlab 计算灰度图像的一阶矩 主要介绍了matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例,具有很好的参考价值,希望对大家有所帮助。一 起跟随小编过来看看吧 一阶矩,定义了每个颜色分量的平均强度 二阶矩,反映待测区域颜色方差,即不均匀性 三阶矩,定义了颜色分量的偏斜度,即颜色的不对称性 close all;clear all;clc; J = imread('lena.jpg'); K = imadjust(J,[70/255 160/255],[]); figure; subplot(121),imshow(J); subplot(122),imshow(K); [m,n] = size(J); mm = round(m/2); mn = round(n/2); [p,q] = size(K); pp = round(p/2); qq = round(q/2); J = double(J); K = double(K); colorsum = 0.0; Javg = mean2(J) %求原图像一阶矩 Kavg = mean2(K) %求增强对比度后的图像一阶矩 Jstd = std(std(J)) %求原图像的二阶矩,因为一次std函数表示按列求标准差,两次std表示求整个矩阵的标准差 Kstd = std(std(K)) %求增强对比度后的图像二阶矩 for i=1:mm for j=1:mn colorsum = colorsum+(J(i,j)-Javg)^3; end end Jske = (colorsum/(mm*mn))^(1/3) %求原图像的三阶矩 colorsum = 0.0; for i=1:pp for j=1:qq colorsum = colorsum + (J(i,j)-Kavg)^3; end end Kske = (colorsum/(pp*qq))^(1/3) %求增强对比度后的图像三阶矩 部分函数说明: 部分函数说明: mean2(A) : 求矩阵A的均值 std(x,flag,dim): 求x的标准偏差 std(x,0,1) : 0表示求标准差时除n-1,1表示按列划分 std(x,1,2) : 1表示求标准差时除n,2表示按行划分
补充知识:图像的重心和二阶矩 补充知识: 图像的重心和二阶矩 图像的重心 图像的重心 图像实际上就是个矩阵,每个位置的元素就是该处的像素。 这里碰到了求图像重心的问题,特此总结: 计算公式: 其中(xi,yi)是像素点的坐标,pi是该点的像素值。 以下是利用matlab求图像重心 以下是利用 求图像重心 I = imread(‘1.jpg'); I = rgb2gray(I); imshow(I); I = double(I); [rows,cols] = size(I); x = ones(rows,1)*[1:cols]; y = [1:rows]'*ones(1,cols); area = sum(sum(I)); meanx = sum(sum(I.*x))/area; meany = sum(sum(I.*y))/area; hold on; plot(meanx,meany,'r+'); %十字标出重心位置 图像的二阶矩 图像的二阶矩 我们这里只讨论二阶矩的问题。 二阶矩最终是形成了一个二阶矩阵,如下: 计算方法: 其中(r0,c0)是重心坐标。 以上这篇matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希 望大家多多支持我们。
分享到:
收藏