화질 개선에 대한 2가지 점 처리와 영역 처리가 있다.

점 처리 (Point Processing)

pixel을 산술적 or 논리적 방법에 의해 1:1 변환하는 것이다.
쉽게 말해서 Input pixel 1개를 처리해서 output pixel로 만드는 것​

영역 처리

pixel을 1:1 이 아니라 여러 개를 처리하는 것으로 n:1, 1:n, n:n 등 있다.

점 처리와 영역 처리의 차이점

점 처리는 70을 변화시키기 위해 자신만의 데이터를 사용한다.
영역 처리는 70 주위에 여러 점 (예를 들어 회색 칠한 부분)을 사용하여 처리한다

산술 연산에 대한 영상 결과

원본 영상에 대해 단순히 산술 연산하는 것이다.

원본 영상
덧셈 영상

덧셈 연산

white(255)는 그대로 white로 되고, 나머지 부분은 더해져서 밝아진 영상을 얻는다.

덧셈 영상

곱셈 연산

black(0)은 그대로 black이 되고, white(1)인 부분은 그대로 통과된다.

곱셈 영상

뺄셈 연산

두 영상의 차이점을 비교할 수 있다.

간단해 보이지만 실제로는 위 영상처럼 간단하게 되진 않는다.
이유는 2개 영상이 영상처럼 딱 맞기가 힘들기 때문이다
capture할 때, 먼저 영상의 위치가 정확히 맞게 capture를 해야되고, 같은 곳이라도 조명 등 환경이 계속 변하기 때문에 pixel값이 달라진다.

영상값 클램핑 (Clamping)

Pixel 값은 일반적으로 8bit로 0~255 범위를 가진다.
연산 실수로 범위를 벗어나는 실수는 주의해야 된다.
Pixel 값이 8bit을 하는 일반적인 이유는 사람의 눈이 그 정도로 인식 하기 때문이다.

if (value < 0) value = -value; // 곱셈이나 나눗셈할 때 음의 값 
if (value < 0) value = 0; // 뺄셈할 때 사용 
if (value > 255) value = 255; // 덧셈할 때 사용

음 영상 (Negative Image)

영상을 반전 시키는 것.
그래프에서 보면, y = 255 – x 이다

반전 그래프
음의 영상 결과

바이너리 대비 개선 (Binary Contrast Enhancement)

Threshold 이하는 0 (검은색)으로, 그 이상의 값은 255 (흰색) 으로 변환하여 이진 영상을 만드는 것. 차이를 심하게 보려고 할 때 주로 사용한다.
예를 들어 물체와 배경 구별할 때 쓰인다.
어떤 threshold를 기준으로 하느냐에 따라 다르기 때문에 그 기준을 정하는 것이 어렵다. 한가지 방법으로 히스토그램을 이용하는 방법이 있다.

이진 그래프
바이너리 대비 개선 결과

그레이 레벨 분할 (Gray-Level slicing)

영상의 특정 Gray-Level 영역만 하이라이트 하는 방법

그레이 레벨 결과 영상