matlab 計(jì)算灰度圖像的一階矩,二階矩,三階矩實(shí)例
一階矩,定義了每個(gè)顏色分量的平均強(qiáng)度
二階矩,反映待測區(qū)域顏色方差,即不均勻性
三階矩,定義了顏色分量的偏斜度,即顏色的不對稱性
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) %求增強(qiáng)對比度后的圖像一階矩 Jstd = std(std(J)) %求原圖像的二階矩,因?yàn)橐淮蝧td函數(shù)表示按列求標(biāo)準(zhǔn)差,兩次std表示求整個(gè)矩陣的標(biāo)準(zhǔn)差 Kstd = std(std(K)) %求增強(qiáng)對比度后的圖像二階矩 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) %求增強(qiáng)對比度后的圖像三階矩
部分函數(shù)說明:
mean2(A) : 求矩陣A的均值
std(x,flag,dim): 求x的標(biāo)準(zhǔn)偏差
std(x,0,1) : 0表示求標(biāo)準(zhǔn)差時(shí)除n-1,1表示按列劃分
std(x,1,2) : 1表示求標(biāo)準(zhǔn)差時(shí)除n,2表示按行劃分
補(bǔ)充知識(shí):圖像的重心和二階矩
圖像的重心
圖像實(shí)際上就是個(gè)矩陣,每個(gè)位置的元素就是該處的像素。 這里碰到了求圖像重心的問題,特此總結(jié):
計(jì)算公式:
其中(xi,yi)是像素點(diǎn)的坐標(biāo),pi是該點(diǎn)的像素值。
以下是利用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+'); %十字標(biāo)出重心位置
圖像的二階矩
我們這里只討論二階矩的問題。
二階矩最終是形成了一個(gè)二階矩陣,如下:
計(jì)算方法:
其中(r0,c0)是重心坐標(biāo)。
以上這篇matlab 計(jì)算灰度圖像的一階矩,二階矩,三階矩實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
如何利用python多線程爬取天氣網(wǎng)站圖片并保存
最近做個(gè)天 氣方面的APP需要用到一些天氣數(shù)據(jù),所以下面這篇文章主要給大家介紹了關(guān)于如何利用python多線程爬取天氣網(wǎng)站圖片并保存的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-11-11python BlockingScheduler定時(shí)任務(wù)及其他方式的實(shí)現(xiàn)
這篇文章主要介紹了python BlockingScheduler定時(shí)任務(wù)及其他方式的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09Python 網(wǎng)絡(luò)編程之TCP客戶端/服務(wù)端功能示例【基于socket套接字】
這篇文章主要介紹了Python 網(wǎng)絡(luò)編程之TCP客戶端/服務(wù)端功能,結(jié)合實(shí)例形式分析了Python使用socket套接字實(shí)現(xiàn)TCP協(xié)議下的客戶端與服務(wù)器端數(shù)據(jù)傳輸操作技巧,需要的朋友可以參考下2019-10-10python接口自動(dòng)化測試數(shù)據(jù)和代碼分離解析
代碼的可維護(hù)性除了代碼冗余之外還有就是數(shù)據(jù)盡量不要和代碼摻雜在一起,因?yàn)殚喿x起來會(huì)非常的凌亂;數(shù)據(jù)分離能更好的增加代碼可讀性和可維護(hù)性,也能更好的二次修改使用2021-09-09win8.1安裝Python 2.7版環(huán)境圖文詳解
在本篇內(nèi)容里小編給大家分享了關(guān)于win8.1安裝Python 2.7版環(huán)境的詳細(xì)步驟和方法,有興趣的朋友們跟著學(xué)習(xí)下。2019-07-07Python 多維List創(chuàng)建的問題小結(jié)
這篇文章主要介紹了Python 多維List創(chuàng)建的問題小結(jié),詳細(xì)的介紹了遇到的一個(gè)小問題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01