컴퓨터 그래픽스/영상처리 6

[OpenCV] 동전 영상에서 서로 다른 동전들의 개수와 위치를 파악하기

프로젝트의 요구 사항 : 동전 영상에서 동전의 위치와 개수 파악하기 요구 사항 분석 : 1. 노이즈가 있는 영상은 해당 노이즈에 맞는 방법으로 영상 개선을 해준다. ( -> 어떤 이미지가 들어오든 노이즈 개선을 할 수 있어야함) 2. 배경과 동전 영역을 구분해준다. 3. 동전 인식을 한다. 4. 동전 종류를 파악하기 위해 동전의 크기를 구해 어떤 동전 종류인지 인식한다. 1. 영상 개선 임의의 영상을 입력받았을 때, 해당 영상을 파악하고 개선한다. - 임의의 영상 입력받음 - 입력받은 임의의 영상을 파악하여 영상 개선함 - 대조비 개선을 위해 히스토그램 평활화함 이미지를 입력으로 받아올 수 있게 함. 순서는 이미지를 받아오고 해당 이미지를 파악한 후 영상 개선을 해주고 대조비 개선을 위해 히스토그램 평활..

[OpenCV] Filters (LPF, HPF, HFEF)

LPF : Low Pass Filter G(u, v) = H(u, v)F(u, v) = 필터 * 주파수 도메인 이미지 H(u, v) / G(u, v) 저주파 성분만 통과시킴 노이즈 제거하는 스무딩(블러링) 필터 HPF : High Pass Filter G(u, v) = H(u, v)F(u, v) = 필터 * 주파수 도메인 이미지 H(u, v) / G(u, v) 샤프닝 필터 HFEF : High Frequency Emphasis Filter G(u, v) = H(u, v)F(u, v) = 필터 * 주파수 도메인 이미지 H(u, v) / G(u, v) - High boost (High Frequency Emphasis) High boost = (A - 1)Original + Highpass

[OpenCV] 2D FFT (Fast Fourier Transform)

FFT 적용 Fourier Transform을 적용 적용을 하면 (0,0), 화면 좌상단이 중심이고 거기에 저주파가 모여있음 분석을 용이하게 하기 위해 (0,0)을 이미지의 중심으로 이동시키고 Log Scaling을 하여 분석이 용이한 결과값으로 변환 푸리에 변환 : 영상을 시간 도메인에서 주파수 도메인으로 변환 영상처리에서는 2차원 푸리에 변환을 사용한다. 임의의 입력 신호를 다양한 주파수를 갖는 주기함수들의 합으로 분해하여 표현하는것 (입력 신호를 sin, cos의 주기성분으로 분해하는 것) 각각의 주기함수 성분들은 고유의 주파수와 강도를 가지고 있으며 이들을 모두 합치면 원래의 신호가 된다. FFT 적용 결과를 log scale 푸리에 스펙트럼은 푸리에 변환을 통해 얻은 각 주파수 성분이 원 신호(..

[OpenCV] spatial-domain filter

low contrast 낮은 대조비 개선을 위해 히스토그램 평활화를 해줌. 구한 히스토그램 / 누적 히스토그램 / 평활화된 히스토그램 여러가지 시도를 해보았다. (감마는 0.7로 줌) 히스토그램 평활화 / 감마보정 히스토그램 평활화 후 감마보정 / 감마보정 후 히스토그램 평활화 가져온 이미지가 조금 어둡고 블러링된 이미지이기 때문에, 이미지를 밝게 해주기 위해서 감마보정을 하고 샤프닝 필터를 적용했다. Gaussian noisy image 가우시안 노이즈가 들어간 이미지에 가우시안 필터를 적용했다. 가우시안 노이즈는 자연적으로 랜덤하게 발생하는 노이즈이다. 추가로 메디안 필터도 적용해보았다. 가우시안 필터는 현재 픽셀값과 주변 이웃 픽셀값들의 가중 평균을 이용해서 현재 픽셀의 값을 대체한다. 둘 다 블러..

[OpenCV] 공간 영역에서의 영상 개선

Negative transformation Image negatives s = T(r) = L-1-r (where 0 ≤ r ≤ L-1) 1) 기존에 존재하는 API를 이용해서 구현한 코드 2) 이미지 색상 반전을 위해서, 255 - 현재 픽셀값을 해주었다. 픽셀 값들에 255를 빼주면 0에 가까웠던 어두운 픽셀값은 밝아지고 255에 가까웠던 밝은 픽셀값은 어두워진다. 기존의 API를 이용한 코드와 같은 결과값이 나왔다. Log, inverse-log transformation c = 1 일 때, c = 2 일 때, Log transform은 어두운 부분을 스트레칭 시켜준다. 그래서 어두운 영역에 뭐가 있는지 보고 싶을 때는 이미지를 log transform을 시켜주면 된다. 반대로 Inverse log..