[안드로이드로 배우는 OpenCV] 언샤프 마스크 필터

언샤프 마스크 필터 언샤프 마스크 필터는 영상을 선명하게 만드는 방법 중 하나다. 하지만 이름만 보면 선명하지 않게 만드는 느낌이 든다. 언샤프라는 명칭이 붙은 이유는 영상을 선명하게 만들 때 블러효과가 적용된 부드러운 영상을 사용하기 때문이다.  위의 그래프들을 살펴보자. 첫번째 그래프는 일반적인 영상에서 특정 픽셀에 따른 값의 분포를 보여주고 있다. 원본 영상에 더보기…

[안드로이드로 배우는 OpenCV] 블러링(4) – 양방향 필터

양방향 필터 (Bilateral Filter) 평균값 필터 또는 가우시안 필터는 이미지의 엣지(윤곽선) 부근에서도 픽셀 값을 평탄하게 만드는 단점이 있다. 양방향 필터는 대상 픽셀과 주변 픽셀과의 거리 그리고 픽셀 값의 차이를 함께 고려하여, 엣지를 보전하는 블러 기법 중 하나다. 가우시안 필터보다 처리 시간이 더 오래 걸리지만, 더 나은 품질의 이미지를 만들어 낼 더보기…

[안드로이드로 배우는 OpenCV] 블러링(3) – 미디언 필터

미디언 필터 미디언 필터는 대상 픽셀 주변의 이웃한 픽셀들 중 중앙값(median) 으로 대상 픽셀 값을 대체하는 방법을 말한다. 지금은 모두 디지털 TV를 시청하지만 옛날에 아날로그 TV를 쓰던 시절에는 신호가 약하면 지지직 하는 노이즈를 심심치 않게 볼 수 있었다. 이런 노이즈를 소금 & 후추(Salt & Pepper) 노이즈라고도 한다. 미디언 필터는 이런 더보기…

[안드로이드로 배우는 OpenCV] 블러링(2) – 가우시안 필터

가우시안 필터 평균값 필터의 단점은 필터링 대상 픽셀과 인접 픽셀들이 모두 같은 가중치를 사용하여 평균치를 계산한다는 점이다. 이는 대상 픽셀보다 멀리 있는 픽셀들의 영향을 많이 받을 수 있다는 것을 의미한다. 아무래도 이미지에서 픽셀의 분포 특성상, 대상 픽셀에 가까이 인접해 있을수록 비슷하고 멀리 있을 수록 많이 달라지게 된다. 가우시안 필터는 가까운 더보기…

[안드로이드로 배우는 OpenCV] 블러링(1) – 평균값 필터

Blur 블러링(Blurring) 또는 스무딩(Smoothing)이라고 하는 작업은 자주 사용되는 이미지 프로세싱으로 화면을 부드럽게 하거나, 노이즈를 제거하고, 이미지의 해상도를 줄이려는 경우에도 사용된다.(이미지 피라미드) OpenCV에서는 블러링에 관련된 다양한 함수를 제공한다. 평균값 필터(Mean Filter) 평균값 필터란 입력 이미지의 각 픽셀에 대해 마스크를 적용하고 마스크 범위내의 픽셀들의 단순 평균을 구해서 출력 이미지의 각 픽셀값으로 저장하는 더보기…

[안드로이드로 배우는 OpenCV] 이미지 필터링 (공간적 필터링)

이미지 필터링 필터(Filter)는 일상생활에서 많이 쓰는 말이다. 필터란 무언가를 걸러주는 역할을 하는 것을 말하는데, 카메라의 렌즈 필터, 공기청정기의 필터 그리고 셀로판지를 통해 들어오는 빛이 특정색상으로 걸러지는것도 필터라고 말할 수 있다. 영상처리 분야에서의 필터링은 영상에서 필요한 정보만 통과시키고 원하지 않는 정보는 걸러내는 작업이다. 필터링은 공간적 필터링(Spatial domain filter)과 주파수 공간에서의 필터링(Frequency 더보기…

[안드로이드로 배우는 OpenCV] 크로마 키 합성

크로마 키(Chroma Key) 크로마 키는 두개의 영상을 합성하는 기술을 말한다. 보통 녹색 또는 파란색 배경에서 촬영한 영상에 다른 배경영상을 합성한다. 한국에서는 파란색배경을 주로 사용하고, 서양에서는 초록색을 자주사용 한다고 한다. 그 이유는 서양 사람들의 눈이 파란색인 경우도 있기 때문에 블루 스크린을 사용하면 파란색의 눈이 배경영상으로 바뀌는 결과를 낳을 수 있기 때문이다. 더보기…

[안드로이드로 배우는 OpenCV] 히스토그램 역투영

히스토그램 역투영(Histogram backprojection) 히스토그램 역투영이란 영상의 각 픽셀이 주어진 히스토그램에 얼마나 일치하는지 검사하는 방법으로, 객체의 모양은 무시하고 단순히 컬러 분포만으로 임의의 색상 영역을 검출할 때 효과적이다. 다음의 이미지에서 살색을 검출해보도록 하자. 우선 입력 영상에서 미리 살색영역에 대한 히스토그램을 구해야한다. 빨강색으로 지정한 영역을 살색이라 가정하고, 해당 영역의 히스토그램을 구했다. 원한다면 다른 더보기…