1. 프로젝트명 filter2D_Imag
2. 결과 화면
원본 2. ksize(3,3) 3. ksize(100,100)
3. 프로그램 구현에 사용된 OpenCV 클래스 및 라이브러리 함수 사용법 설명
filter2D(srcImage, avgImage, -1, avgKernel); //입력한 이미지가 컨볼루션 커널을 지나면서 흐려진다.
srcImage //입력 이미지
avgImage //같은 크기의 출력 이미지
-1 //목표 이미지의 원하는 깊이
avgKernel //컨볼루션 커널
4. 고찰(느낀점)
저역 통과 필터는 이미지의 잡음을 없애거나 흐릿하게 만들기 위해 저주파 성분은 통과시키고 고주파 성분은 차단한다. 솔트&페퍼 이미지에 LPF를 적용시키면 경계가 흐려진다.
1. 프로젝트명 Box_bilateral
2. 결과 화면
3. 프로그램 구현에 사용된 OpenCV 클래스 및 라이브러리 함수 사용법 설명
boxFilter(srcImage, dstImage1, -1, ksize); //이미지 흐리게 만듦.
srcImage //원본 이미지
dstImage1 //원본 이미지와 같은 크기의 출력 이미지
-1 //출력 이미지의 깊이
ksize //커널 크기 흐리게 하기
bilateralFilter(srcImage, dstImage2, d, sigmaColor, sigmaSpace); //선형이 아닌, 모서리를 보존하며 잡음을 감소 시키는 smoothing filter.
srcImage //원본 이미지
dstImage2 //원본 이미지와 같은 크기의 출력 이미지
d //필터링하는 동안 사용되는 각 픽셀 인접 영역의 지름. 양수가 아닌 경우 sigmaSpace에 의해 계산됨.
sigmaColor //색 공간에서 시그마 필터링을 함. 매개 변수의 값이 클수록 픽셀 인접 영역 내의 더 먼 색상이 혼합되어 더 큰 반등치 색상 영역이 생성됨.
sigmaSpace //좌표 공간에서 시그마 필터링. 매개 변수 값이 클수록 색상이 가까울수록 더 먼 픽셀이 서로 영향을 미침. d>0이면 관여 안하고 d<0이면 d는 sigmaSpace에 비례.
4. 고찰(느낀점)
1번 이미지는 박스 필터를 사용해서 평균 필터와 같은 결과를 나타냈다. 주변의 값과 비슷해지도록 평균을 냈기 때문이다.
2번 이미지의 깊이 값은 7로 양수이다. 그러므로 흐려지는 정도는 3번 이미지보다 덜하다. 3번 이미지의 깊이는 –1이므로 sigmaSpace와 비례한다. sigmaSpace의 값은 10이므로 흐려지는 정도는 2번보다 심하다. 2번 이미지는 주름이 사라지고 피부가 좋아진 느낌이 난다.
1. 프로젝트명 medianBlur_blur_GaussianBlur
2. 결과 화면
3. 프로그램 구현에 사용된 OpenCV 클래스 및 라이브러리 함수 사용법 설명
medianBlur(src, dst, ksize) //미디안 필터로 이미지 흐리게 하는 함수
src //1,3,4 채널의 입력 이미지
dst //원본 이미지와 같은 크기의 출력 이미지
ksize //필터의 선형 크기, 1보다 큰 홀수여야 함.
getGaussianKernel(ksize, sigma, ktype) //가우시안 필터 계수를 반환함.
ksize //박스 사이즈
sigma //가우시안 표준 편차. 양수가 아니라면 ksize는
ktype //필터 계수의 형(CV_32F or CV_64F).
GaussianBlur(src, dst, ksize, sigmaX, sigmaY) //가우시안 필터로 이미지 흐리게 하는 함수
ksize //가우시안 커널 크기. ksize의 너비와 높이는 다를 수 있지만 양수이면서 홀수여야만 한다. 0일 경우 sigma에 의해 계산된다.
sigmaX //X방향의 가우시안 커널 표준 편차
sigmaY //Y가 0이라면 sigmaX와 값이 같아야 함.
4. 고찰(느낀점)
1번 이미지는 미디언 필터를 사용했다. ksize개의 원소를 정렬해서 가운데 값을 사용한다. 수채화 같은 이미지가 나타난다. 2번 이미지는 화질이 안 좋아졌다. 3, 4번 이미지를 비교해보면 ksize가 증가한 4번 이미지가 더 흐리게 보인다. 5번은 가우시안 커널을 만들어서 필터링을 했다. 육안상으로도 가우시안블러 함수를 사용한 4번과 가우시안 커널을 생성해서 필터링을 한 5번 이미지는 똑같다.
'과목 > 영상처리' 카테고리의 다른 글
Gaussian Filter 단순 계산을 파이썬으로 (0) | 2018.04.19 |
---|---|
Mean Filter 단순 계산을 파이썬으로 (0) | 2018.04.18 |
Median Filter 단순 계산을 파이썬으로 (0) | 2018.04.18 |