컴퓨터 비전:: Image Filtering

2023. 3. 15. 18:22·Computer Science/컴퓨터비전
반응형

Image Filtering

이미지 개념

이미지 : grid(matrix) of intensity values

픽셀(pixel) : grid의 하나의 cell

보통 0~255의 값을 가지고 검은색 = 0 / 흰색 = 255의 값을 가짐


이미지를 함수로 표현

이미지는 discrete numbers of pixels를 가지고 있음

Pixel Value

  • grayscale / intensity : [0, 255]
  • Color
    • RGB[R, G, B] : 각 채널당 [0, 255]의 값을 가짐
    • HSV[H, S, V] : Hue(색상), Saturation(채도), Value(명도)

이미지와 함수 연결하기

$R^{2}$ -> R(grayscale), $R^{M}$, $R^{3}$(Color)

  • Grayscale : (x, y) position 값을 통해 intensity 값을 출력함
    ex) f: [a, b] x [c, d] -> [0, 255]
  • Color : f(x,) = [r(x, y), g(x, y), b(x, y)]

Image Transformations


Image Denoising

Noise는 왜 발생하는가

이미지 처리 과정

  1. Imaging (Camera) - Signal Processing
  2. 이미지를 얻은 후 위 두 단계로 나눌 수 있다. 각 단계에 따라 노이즈가 발생할 수 있는데
  3. Sensor noise / Dead pixels / Old photographs 등 여러가지 원인에 의해 노이즈가 발생할 수 있다.

Noise Reduction

노이즈를 없애보자

 

Mean Filtering

주변 픽셀의 평균을 통해 픽셀 값을 바꾸는 방식

Filters

  • Filtering : Form a new image whose pixels are a combination of the original pixels
    (이미지의 픽셀이 원본 픽셀의 combination으로 구성된 새로운 이미지의 형식)
  • Filter를 사용하는 이유
    • 이미지로부터 유용한 정보를 얻는 것
    • 이미지를 개선하기 위해 (blur, sharpen)
    • Convolutional Neural Networks의 핵심
      • Convolution(합성곱) : 하나의 함수와 또 다른 함수를 반전 이동한 값을 곱한 다음, 구간에 대해 적분하여 새로운 함수를 구하는 수학 연산자

Linear filtering


각각의 픽셀을 linear combination으로 바꾸는 과정
(linear combination : a weighted sum - 가중치 곱의 합)

  • Cross-correlation, convolution을 비교할 수 있음
  • kenel (mask, filter) : The prescription for the linear combination

Mean Filtering

  • 노이즈를 제거하는 필터
  • outlier의 영향을 많이 받음 > Median Filter를 사용할 수도 있음
Mean Filtering 일반화

Gaussian Filter

  • Mean filter 같이 모두 동일한 weight를 적용하는 것은 적절하지 않을 때 정규분포를 활용해보자
  • Low-pass filter 중 대표적인 Filter
    • High Frequency 요소를 제거하기 위해 사용하는 filter
    • Low-pass filter / High-pass filter : 신호의 주기 그림을 생각하면 떠올리기 쉬움
  • 시그마 값이 커질 수록 더 흐려짐
  • x, y에 따라 시그마 값을 다르게 적용할 수 있음

 

 
Filter 예시

Filtering 연산

Convolution과 Cross-correlation 비교

수식과 예제 이미지를 통해 연산 방법에 차이가 있음을 볼 수 있다.

이를 바탕으로 Convolution을 구현하기 위해 이미지를 상하 뒤집기 > 좌우 뒤집기

즉, 180도 회전 후 Cross-correlation을 적용하여 구할 수 있다.

 

Convolution이 중요한 이유

Shift Invariance : Convolution은 쉬프트 하더라도 결과에 영향이 없다. (LSI : Linear shift-invariant)


Sharpening

원리

원본 이미지 - Blurring 이미지 = Edge가 강조된 이미지 (high-pass filter)

>> 원본 + a * Edge가 강조된 이미지 = Sharpening 이미지

 

수식


Non-linear filters

Thresholding : Binary Image

Median filter

  • Mean filtering은 speckle noise에 효과가 없음.
  • 중앙값으로 변경하여 speckle noise 처리
반응형

'Computer Science > 컴퓨터비전' 카테고리의 다른 글

컴퓨터비전:: Transformation & Warping  (0) 2023.04.13
컴퓨터비전:: Image Descriptors & Match  (0) 2023.04.12
컴퓨터비전:: Harris corner detection  (0) 2023.04.12
컴퓨터비전:: Resample  (0) 2023.04.11
컴퓨터비전:: Edge & Edge Detection  (0) 2023.03.15
'Computer Science/컴퓨터비전' 카테고리의 다른 글
  • 컴퓨터비전:: Image Descriptors & Match
  • 컴퓨터비전:: Harris corner detection
  • 컴퓨터비전:: Resample
  • 컴퓨터비전:: Edge & Edge Detection
나귀당
나귀당
게임 클라이언트 개발자의 개인 블로그 (기술, 개발일지, 성찰)
  • 나귀당
    나귀라 카더라
    나귀당
    • 분류 전체보기 (169)
      • 개발 (26)
        • 게임 (9)
        • 서브 (9)
        • 기타 (8)
      • Computer Science (20)
        • 머신러닝 (5)
        • 정보보안 (6)
        • 컴퓨터비전 (8)
        • 컴퓨터그래픽스 (1)
      • Problem Solving (52)
        • 이론 (17)
        • 문제풀이 (32)
        • 기타 (3)
      • 개인 (56)
        • Careers (1)
        • 회고+계획 (34)
        • 후기 (14)
        • 좌충우돌 (2)
        • 독서 (5)
      • 학교 (업뎃X) (15)
        • 과제 (2)
        • 수업관련 (9)
  • 반응형
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
나귀당
컴퓨터 비전:: Image Filtering
상단으로

티스토리툴바