Graylevel Transformations
ð 그레이 스케일 입력 영상을 그레이 스케일 출력 영상으로 변환.
ð I’(x,y) = f( I ( x , y ) ) [다음과 같이 수식 하나로 기술 가능하다]
여기서, f를 통해 기존의 값을 바꿔서 동일한 위치에 화소 값을 덮어 쓸 수도 있다.
이러한 함수는 LUT화 하여 처리 가능.
Arithmetic Operations (c = gain, b = bias)
- Inversion : I’(x,y) = 255 – I(x,y)
n 최대 그레이 레벨에서 감산하여 각 화소의 값을 반전시킴.
- Addition(Subtraction) : I’(x,y) = I(x,y) + b
n 여기서 b는 밝기를 조절하는 상수값으로,
u b>0 = 밝아짐
u b<0 = 어두워짐
n I’(x,y)의 값이 255보다 큰 값이 저장 될 수 있기에(overflow) 이를 방지하고자 Clamping(Clipping)이 필요하다.
u I’(x,y) = max(min(I(x,y)+b,255),0)
u 해당 함수를 사용하면 0~255 범위의 값이 나타난다.
- Multiplication(Division) : I’(x,y) = c * I(x,y) (c>0 인 경우만 생각)
n c>1 : higher contrast (밝아짐) <이때의 contrast가 addition보다 더 좋다>
n 0<c<1 : lower contrast (어두워짐)
n 마찬가지로 overflow 발생이 가능하기에 Clipping이 필요하다
u I’(x,y) = min(c*I(x,y),255) 이때, c>1이어야 한다.
u 0이하로 값이 떨어지지 않기에 max는 필요하지 않음
Linear Contrast Stretching (선형 대비 늘이기)
(해당 사진의 모든 값은 g’max ~ g’min 범위 내에 존재한다. 이외의 값은 clipping 처리)
출력 대비를 극대화하기 위해 일반적으로 g’min = 0 , g’max = 255를 설정하여 전체 출력범위를 활용
따라서 다음을 통해 식을 단순화하면, g’max - g’min 대신 255를 대입하면 된다.
è 위의 두 방식의 단점으로는 누군가 변화의 매개 변수를 수동으로 지정해야 한다는 점이 있다.
Analytic Transformations (분석적 변화)
ð 산술 연산 외에도 그레이 레벨 변화는 로그함수, 지수함수, 멱함수 와 같은 분석함수를 통해 명시 가능하다.
아래의 사진을 보면 모든 변화들이 단조적으로 감소하지 않는 것이 확인된다.
왼쪽 사진 = 출력단에서 어두운 부분이 더 넓어지고, 밝은 구간은 좁아지는 결과를 보여줌.
오른쪽 사진 = 출력단에서 밝은 부분이 더 넓어지고, 어두운 구간이 더 좁아지는 결과를 보여줌
Thresholding (임계치 적용)
ð 특정 임계치보다 높으면 1로 설정하고, 그렇지 않으면 0으로 설정
여기서, 타우는 임계치(문턱값)를 의미하며, 최종적으로 임계치 적용이 된 영상은 이진화라고도 한다.
화소당 1 byte를 사용하고, 0이 아닌 출력 값을 1 대신 255로 설정하여 출력을 그레이 스케일 영상으로 저장하는 것이 더 편리. (2진수 0&1 이 아니고, 0&255로 저장)
Lookup Tables (매우 중요)
ð 이는 동일한 변환을 미리 계산하는 계산상의 효율을 높이는 방법이다.
ð 이때 lut의 함수를 픽셀수 만큼 지정하는 것은 비효율적이기 때문에 화소 값인 0~255로 지정한다.
ð I’(x,y) = lut [I(x,y)]
다음 사진의 빨간 부분으로 표시된 수를 보면 입력 위치에서 2가 LUT를 지나며 출력 위치에서는 1로 나타남을 확인 가능하다.
이 같은 LUT를 통해 반복 계산하는 과정을 제거할 수 있다.
'공부 > 영상처리' 카테고리의 다른 글
[영상처리]Gaussian Kernel 2D (0) | 2022.11.04 |
---|---|
[영상처리]Warping (0) | 2022.11.03 |
[영상처리]Interpolation(보간법) (0) | 2022.11.02 |
[영상처리]Graylevel Histograms (0) | 2022.11.01 |
[영상처리]Geometric transformation(process) (0) | 2022.10.30 |