filtering

    [OpenCV with Python] Filtering : Noise 제거 - 양방향 필터 Bilateral Filter

    [OpenCV with Python] Filtering : Noise 제거 - 양방향 필터 Bilateral Filter

    가우시안 잡음 제거에는 가우시안 필터가 효과적이다 이처럼 잡음이 있는 지글지글한 부분을 가우시안 필터로 완만하게 수정할 수 있다. 하지만 가우시안 블러를 심하게 적용하면 영상에 있는 엣지 부분에 훼손이 생긴다. 이 단점을 보완한 것이 양방향 필터(Bilateral Filter)이다. 양방향 필터 Bilateral filter 가우시안 필터를 양쪽 방향으로 두번 한다고해서 양방향이라는이름이 붙여졌다. 평균 값 필터 또는 가우시안 필터는 엣지 부근에서도 픽셀 값을 평탄하게 만드는 단점이 있다. 양방향 필터는 기준 픽셀과 이웃 픽셀과의 거리, 그리고 픽셀 값의 차이를 함께 고려하여 블러링 정도를 조절한다. 수식을 보면 가우시안 필터 함수(G)가 2개 있는 것을 볼 수 있다. 양방향 필터의 작동 원리 양방향 필..

    [OpenCV with Python] Filtering : 영상에 샤프닝 적용 - Unsharp Mask

    [OpenCV with Python] Filtering : 영상에 샤프닝 적용 - Unsharp Mask

    영상에 샤프닝을 적용하기 위해 언샤프 마스크가 필요하다. 언샤프 마스크 필터링(Unsharp Mask Filtering)은 날카롭지 않은(unsharp) 영상, 즉 부드러워진 영상을 이용하여 날카로운 영상을 생성한다. 언샤프 마스크 필터 Unsharp Mask Filtering 언샤프 마스크 필터는 기존 영상의 픽셀 + (기존 영상의 픽셀 - 가우시안 필터링으로 블러가 적용된 영상의 픽셀) 로 만들 수 있다. - 기존 영상의 픽셀에서 픽셀 값이 변화하는 구간 - 가우시안 필터가 적용된 픽셀 값 - 기존 영상의 픽셀 - 가우시안 필터가 적용된 픽셀 값 ➡️ 위 사진을 기존 영상의 픽셀에 더해주면 언샤프 마스크 필터가 된다. ✔︎ 언샤프 마스크 필터 구현 - np.clip np.clip 함수로 언샤프 마스크..

    [OpenCV with Python] Filtering : 블러링(blurring) - 평균값 필터

    [OpenCV with Python] Filtering : 블러링(blurring) - 평균값 필터

    평균 값 필터(Mean Filter) 평균 값 필터(Mean filter)는 영상의 특정 좌표 값을 주변 픽셀 값들의 산술 평균으로 설정하는 방법이다. 픽셀들 간의 그레이스케일 값 변화가 줄어들어 날카로운 에지가 무뎌지고, 영상에 있는 잡음의 영향이 사라지는 효과가 있다. 📍 실제 이미지에 평균 값 필터를 적용한 결과 마스크 크기가 커질수록 평균 값 필터 결과가 더욱 부드러워 지지만 더 많은 연산량이 필요하게 된다. ✔︎ 영상에 평균값 필터링 적용하기 - cv2.blur import cv2 dst = cv2.blur(src, ksize, dst=None, anchor=None, borderType=None) src : 입력 영상 ksize : 평균값 필터 크기. (width, height) 형태의 튜플...