AI study

Contour features

풍요 평화 만땅 연구원 2022. 8. 13. 18:28

이미지 모멘트(Image Moments)

이미지 모멘트는 객체의 무게중심 , 객체의 면적 등과 같은 특성을 계산할 때 유용하다

Contour에 대한 특징값을 뜻하며, openCV 에서는 cv2.moments 함수를 통해 이미지 모멘트를 계산하고 이를 딕셔너리 형태로 담아 리턴한다

반환하는 모멘트는 총 24개로 10개의 위치 모멘트, 7개의 중심모멘트, 7개의 정규화된 중심 모멘트로 이루어져 있다

 

- 공간 모멘트(Spatial Moments) : m00,m10, m20, m11, m02, m30, m21, m12, m03

- 중심 모멘트(Central Moments) : mu20, mu11, mu02, mu30, mu21, mu12, mu03

- 평준화된 중심 모멘트(Central Normalized Moments): nu20, nu11, nu02, nu30, nu21, nu12, nu03

 

cv2.moments(array[,binaryImage]) -> retval

다각형이나 레스터화된 모양의 이미지의 공간 모멘트, 중심모멘트, 평준화된 중심 모멘트를 3차까지 계산한다

이때 인자로 받는 배열, array는 2차원 포인터로 이루어진 배열이어야 한다.

(이때, findContours 함수로 반환받은 Contours의 데이터 형태는 4차원 배열로, 그 안의 각각의 요소는 같은 hierarchy로 묶인 2차원 포인터들의 배열로 이루어져 있다. 따라서 주로 findContours함수로 반환받은 Contours의 요소를 array의 인자로 전달한다)

그러면 moments함수는 앞서 소개한 모든 모멘트를 계산해 Dictionary 형태로 묶어 반환한다

이렇게 얻어진 모멘트 기반으로 이미지 혹은 도형의 다양한 특성들을 구할 수 있음

 

https://dsbook.tistory.com/226