opencv
OpenCV Bilateral Filtering
hoon1016
2021. 4. 30. 16:06
Bilateral(양방향) Filtering이란 무엇인가?
- 지금까지 입력 이미지를부드럽게 하는 것이 주요 목표 인 몇 가지 필터를 설명했습니다.그러나 때때로 필터는 노이즈를 제거할 뿐만 아니라 가장자리를 부드럽게 합니다 . 이를 방지하기 위해 (적어도 어느 정도까지는) 양방향 필터를 사용할 수 있습니다.
- 가우시안 필터와 유사한 방식으로 양방향 필터는 각각에 가중치가 할당된 인접 픽셀도 고려합니다. 이러한 가중치에는 두 가지 구성 요소가 있으며, 그중 첫 번째는 가우스 필터에서 사용하는 동일한 가중치입니다. 두 번째 구성 요소는 인접한 픽셀과 평가된 픽셀 간의 강도 차이를 고려합니다.
Bilateral Filtering 설명입니다!
OpenCV 함수 bilateralFilter () 제공 5 개의 인수를 사용합니다.
- src: 소스 이미지
- dst: 대상 이미지
- d: 각 픽셀 이웃 직경.
- σColor: 색 공간의 표준 편차
- σSpace: 좌표 공간의 표준 편차(픽셀 단위)
이제 제가 실습한 코드와 결과를 보여드리겠습니다!
import cv2
import numpy as np
img = cv2.imread('data/images/gaussian-noise.png',1)
result = cv2.bilateralFilter(img,15,80,80)
combined = np.hstack([img, result])
cv2.imshow("combined", combined)
cv2.waitKey()
cv2.destroyAllWindows()
참고한 사이트 입니다! docs.opencv.org/3.4/dc/dd3/tutorial_gausian_median_blur_bilateral_filter.html