OpenCV에서 제공하는 2D 이미지에 적용 가능한 선형, 비선형 필터링 함수들에 대해 알아보자.
https://docs.opencv.org/4.x/d4/d86/group__imgproc__filter.html
OpenCV: Image Filtering
Functions and classes described in this section are used to perform various linear or non-linear filtering operations on 2D images (represented as Mat's). It means that for each pixel location \((x,y)\) in the source image (normally, rectangular), its neig
docs.opencv.org
🟥 OpenCV Filterring
Filtering은 Convolution과는 다른 개념으로 사용되는 이미지 처리 방법 중 하나이다. 그리고 특정 목적에 따라 필터를 달리하여 사용할 수 있고 서로 다른 방법을 결합하여 이미지 처리 작업을 더 효과적으로 수행할 수도 있다.
• Blurring Filters
주로 노이즈를 줄이거나 부드러운 효과를 주기 위해 사용되는 필터
- Average Blurring
> 커널의 평균을 사용하여 이미지를 부드럽게 만드는 필터
>이미지를 흐리게 하고 작은 노이즈를 제거
- Gaussian Blurring
> 가우시안 분포를 사용하여 블러링을 수행
> 노이즈 제거에 효과적이며, 엣지의 변화가 적음
- Median Blurring
> 주변 픽셀 값들의 중간값을 사용하여 블러링을 수행
> 특히 Salt-Pepper 노이즈 제거에 효과적
- Bilateral Filtering
> 엣지 보존 블러링으로, 엣지를 유지하면서 노이즈를 제거
> 엣지 주변의 블러링을 최소화하여 디테일을 보존
• Sharpening Filters
이미지의 에지와 디테일을 강조하여 더 선명한 효과를 주기 위해 사용
- Unsharp Masking
> 이미지의 고주파 성분을 강조하여 샤프닝 효과 창출(부드러운 이미지를 날카롭게)
- Laplacian Filter
> 라플라시안 연산을 사용하여 샤프닝을 수행
> 에지의 변화를 강조하여 선명한 이미지를 생성
• Edge Detection Filters
이미지에서 에지를 검출하여 개체의 형태와 경계를 식별하기 위해 사용
- Sobel Operator
> 이미지의 수평 및 수직 방향으로 에지를 검출
> 미분 연산을 통해 에지를 강조
- Scharr Operator
> Sobel 연산자의 개선된 버전으로, 더 정확한 에지 검출이 가능
> 에지 검출의 민감도를 높임
- Canny Edge Detector
> 멀티스테이지 에지 검출 알고리즘으로, 가장 널리 사용되는 에지 검출 방법 중 하나
> 노이즈 제거, 그라디언트 계산, 비최대 억제, 이력 임계값 등의 단계를 거쳐 정교한 에지를 검출
• Morphological Filters
이미지의 형태를 변형하거나, 구조적인 특징을 추출하기 위해 사용
- Erosion(침식)
> 전경 픽셀을 축소시켜 작은 개체나 노이즈를 제거
- Dilation(팽창)
> 전경 픽셀을 확장시켜 객체를 강조하고 구멍을 메움
- Opening(열기)
> 침식 후 팽창을 수행하여 작은 개체를 제거
- Closing(닫기)
> 팽창 후 침식을 수행하여 작은 구멍을 메움
- Gradient
> 팽창과 침식의 차이를 구하여 에지를 강조
etc)
- 미분 기반 필터링에는 Sobel, Scharr, Laplacian이 해당한다.
- Laplacian Filter를 이용한 엣지 검출도 가능하다.
- 엣지 검출은 grayscale이 용이하다.
참고하기 좋은 글
'인공지능 > 딥러닝' 카테고리의 다른 글
[딥러닝]Positional Encoding (with Positional Embedding) (0) | 2024.07.25 |
---|---|
[딥러닝] 이미지 분류를 이해하기 위해 읽어야 하는 논문 Top10 (0) | 2022.03.21 |
[딥러닝] 이미지 인식, 분류, 분할 - 컴퓨터 비전 (1) | 2022.03.15 |