본문 바로가기

728x90

ComputerScience/ImageProcessing

(25)
영상처리 - 9. Template Matching 기본적인 아이디어는 위와 같다. 찾고자 하는 template이미지를 Input image에 대해서 픽셀들을 이동하며 일치하는 부분을 찾는 것이다.
영상처리 - 8. Labeling 연결된 동일한 region의 그림에 label을 붙이는 것을 말한다. 색으로 서로 다른 region의 drawing임을 표현할 수 있다. 픽셀값이 초록인 곳으로 dfs, bfs등의 알고리즘으로 탐색을 수행하면 된다. 위 예는 stack을 기반으로 dfs 탐색으로 초록 구역을 찾아낸 것이고 그 탐색 경로가 label[0]라는 리스트에 저장되어 있다.
영상처리 - 7. Egde Detection edge detection은 intensity가 급격하게 변하는 지점을 탐색하는 것이다. convolution으로 찾는다. ex) sobel mask edge detection을 수행하기 전에 보통 blurring등으로 noise를 제거한다. 인접 픽셀의 밝기 차이(값)가 크면 edge일 확률이 높다. edge를 판단하기 쉽게 하기 위해 gray scale이미지로 변환한다. 그 다음 선택한 마스크로 convolution을 수행한다. gray scale 이미지는 오로지 한 픽셀당 하나의 값이 밝기를 나타내기 때문에 픽셀 값이 특정 값 이상이면 edge로 파악하거나 인접 픽셀간의 차이가 크면 edge로 간주하여 색을 입히면 된다.
영상처리 - 6. Composition, Subtract 단순하게 두 이미지의 rgb 픽셀값을 더해주면 된다 buffer overflow, underflow를 조심하자
영상처리 - 5. Blur and Sharpen(with Convolution) blur, sharpen을 수행하기 위해 convolution을 먼저 알고 가자. mask를 정의하고 중앙의 pixel의 값을 업데이트 하는 방법을 말한다. window를 이동해가며 모든 pixel에 대해 convolution을 수행해서 원본 이미지를 blur처리하거나 더 날카롭게 대비를 줄 수 있다. 연속적으로 convolution을 적용하는 과정에서 주의할 점이 하나 있다. 위 그림처럼 이전 연산의 결과가 이후 연산에 반영되어서는 안되기 때문에 buffer를 이용해서 결과값을 따로 저장하도록 해야 한다. 물론 연산의 결과가 pixel이 표현할 수 있는 값의 범위를 넘지 않도록 해주어야 할 것이다. 변경할 (중앙) 필셀의 주위 픽셀값을 조정해서 원하는 효과를 내도록 할 수 있다. 크기는 얼마든지 5 b..
영상처리 - 4. Mosaic 픽셀값들의 평균으로 각 픽셀들을 채워서 모자이크를 구현할 수 있다. 컬러 이미지의 경우는 R,G,B 각각의 value에 대한 average를 적용할 수 있다. 모자이크의 단위 길이를 사용했을 때 edge들은 handling이 필요하다
영상처리 - 3. Brightness 이미지를 밝게, 혹은 어둡게 하는 방법을 알아보자. 이미지가 흑백이건 컬러이건 밝기는 빛의 양으로 나타나고 빛의 양은 255에 가까울 수록 많아진다. for (DWORD y = 0; y GetPixelColor(x, y); if(nPlusMinus == 0) { newcolor.rgbRed = clamp(static_cast(color.rgbRed) + byModifyValue); newcolor.rgbGreen = clamp(static_cast(color.rgbGreen) + byModifyValue); newcolor.rgbBlue = clamp(static_cast(col..
영상처리 - 2. Histogram Histogram은 이미지의 밝기의 분포를 그래프로 표현한 방식이다. x축이 색의 intensity(빛의 세기, 밝기, 0~255) y축이 픽셀 수 이다. 히스토그램을 보면 중간정도 밝기의 픽셀이 거의 없고 완전 어둡거나 완전 밝은 픽셀들이 많은 것으로 보인다. 즉 대비가 큰 이미지 임을 유추할 수 있다. 즉 어두운 이미지 일수록 히스토그램이 왼쪽으로 쏠리게 된다. 아래쪽 사진이 오른쪽 사진보다 constrast가 커져서 사진이 선명해진 것을 볼 수 있다. 이렇게 histogram equalization을 거치면 명암대비를 키울 수 있다. 컬러 이미지의 경우는 R, G, B 세가지의 채널을 가지고 있기 때문에 위처럼 픽셀의 intensity를 표현할 수 있다. for (DWORD y = 0; y < he..

728x90