C# OpenCV 강좌 : 제 28강 - 모폴로지 - 연산
모폴로지 연산(MorphologyEx)
영상이나 이미지의 화소값을 대체
하기 위해 사용합니다.
영상이나 이미지에서 MorphologyEx
를 이용해 이미지를 고급 형태학적 작업
을 할 수 있습니다.
팽창(Dilate)
과 침식(Erode)
을 기본으로 하여 연산해 고급 형태학
을 적용할 수 있습니다.
MorphologyEx
사용하지 않고, 팽창(Dilate), 침식(Erode)으로도 구현이 가능합니다.
원본(Source, src)
은 영상이나 이미지를 사용합니다.
클래스 코드
세부 코드
모폴로지
연산이 적용된 이미지를 선언합니다.
모폴로지(Morphology)의 형태학적 작업을 위해 IplConvKernel
을 이용하여 지정된 크기와 구조 요소를 반환합니다.
IplConvKernel 알아보기
: 27강 바로가기
Cv.MorphologyEx()
를 이용하여 모폴로지 연산
을 적용할 수 있습니다.
Cv.MorphologyEx(원본, 결과, 임시, 요소, 연산 방법, 반복횟수)
입니다.
- Tip :
임시(Temp)
이미지는 크기가 동일한 이미지를 입력합니다. (연산 중 이미지를 잠시동안 교체하기 위한 용도)
-
MorphologyOperation.*
MorphologyOperation.Open
: 열기 연산MorphologyOperation.Close
: 닫기 연산MorphologyOperation.Gradient
: 그라디언트 연산MorphologyOperation.TopHat
: 탑햇 연산MorphologyOperation.BlackHat
: 블랙햇 연산
열기 연산
침식(Erode) 후, 팽창(Dilate) 적용합니다. Open = Dilate(Erode(src))
와 동일합니다.
영역의 크기를 유지하며 밝은 영역을 감소
시킵니다.
닫기 연산
팽창(Dilate) 후, 침식(Erode) 적용합니다 Close = Erode(Dilate(src))
와 동일합니다.
영역의 크기를 유지하며 어두운 영역을 감소
시킵니다.
그라디언트 연산
팽창(Dilate)에서 침식(Erode)을 제외합니다. Gradient = Dilate(src) - Erode(src)
와 동일합니다.
탑햇 연산
원본에서 열기 연산을 제외합니다. TopHat = src - Open
와 동일합니다.
블랙햇 연산
닫기 연산에서 원본을 제외합니다. BlackHat = Close - src
와 동일합니다.
댓글 남기기