[影象] 二值影象的位置、朝向與投影
阿新 • • 發佈:2019-01-08
二值影象就是由0,1組成的影象。我們可以通過一些簡單的計算獲取影象的一系列資訊。
面積:
所有1的總和
位置:
影象的位置一般由質心來表達,我們可以直接根據質心的定義來計算x軸方向和y軸方向的質心,然後得到中心(xm,ym)
朝向:
《機器視覺》一書給出的朝向的定義:
在這裡,我們需要求的事最小二階矩所對應的軸。
我們用一個點和直線與x軸的夾角來定義朝向所在的軸位置,首先我們經過推導可以得到:最小二階矩對應的軸經過質心。
接下來,我們只需求出夾角。
其中:
投影:
簡單而言,投影就是某個方向上,1的總和。
在具體實現中,我們可以使用增量的思想來加速運算。我們知道在顯示載入影象的時候,我們是用掃描線一行一行地載入影象的,所以我們可以在這個過程中計算一階矩和二階矩,進而計算二值影象的一些特徵的值。
matlab程式碼:
function twoValueImg(f) [m,n] = size(f); s = 0; %面積 x1 = 0; % 一階矩 x方向 y1 = 0; % 一階矩 y方向 a = 0; % 二階矩 b = 0; % 二階矩 c = 0; % 二階矩 for i = 1:m for j = 1:n if(f(i,j)==1) % 增量思想 s = s + 1; x1 = x1 + i; y1 = y1 + j; a = a + i*i; b = b + i*j; c = c + j*j; end end end