Digital Image Processing 3. Image Enhancement in the Spatial Domain Computer Engineering, Sejong University Spatial domain processing 영상의화소값에대해서직접연산을수행 g(x,y) = T[(x,y)] (x,y) : 입력영상 g(x,y) : 출력영상 T[.] : 연산함수 : 입력영상에대한연산수행 2/54
Gray Level Transormations 가장단순한형태의 T[.] 연산 1x1 의화소즉단일화소에대해적용 한점에서의출력값은단일입력값에의해좌우됨 s = T(r) r : 입력영상의명암 (gray-level) s : 출력영상의명암 (gray-level) T[.] : 연산함수 : 입력영상에대한연산수행 3/54 Gray Level Transormations 다양한 gray level transormation 함수들 4/54
Gray Level Transormations Image negatives 필름의음화영상 명암도를역전시켜얻음 어두운영역의세부 detail을향상시킴 s = L-1 r (ex: s = 255 r) 5/54 Image negatives 컬러영상예 Gray Level Transormations 6/54
Gray Level Transormations Log Transormations 어두운영역을밝게 밝은부분의 dynamic range는축소 Fourier transorm의변환결과디스플레이시사용 s = c log(1+r) 7/54 Gray Level Transormations Power-Law Transormations 값의변화로다양한밝기변환가능 CRT 의입력신호대밝기신호특성과관련 s = c r 8/54
Gray Level Transormations 감마보정 (Gamma correction) 예 9/54 Gray Level Transormations Power-Law 를이용한화질개선 10/54
Gray Level Transormations Power-Law 를이용한화질개선 11/54 Piecewise-Linear Transormation Contrast stretching 영상의입 / 출력변환을몇개의선형구간으로분리 영상의특정밝기부분의다이내믹영역을증가 계수값을조정하여클리핑 (clipping), 임계화 (thresholding) 등을구현가능 클리핑 : 0 임계화 : a b t u [ a, b] v ( u ) u [0, L ], v [0, L ] v u, ( u a ) v a ( u b) v b 0 a b u u u a b L 12/54
Piecewise-Linear Transormation Contrast stretching 을통한화질개선예 13/54 Piecewise-Linear Transormation Gray-level slicing 14/54
Piecewise-Linear Transormation Bit-plane slicing 영상을구상하는데각비트들의기여한바를표현 각화소를양자화하는데필요한비트수의결정에유용 bit-plane 을재구성함으로써데이터의효과적인표현및압축기법등에적용가능 ( 예 : gray code) 15/54 Piecewise-Linear Transormation Bit-plane slicing example 16/54
Histogram 히스토그램의수학적표현예 가정 : 영상은 64x64 의해상도를가지고 256 명암을가진다. n k = h(r k ), r k : k 번째의명암, 0 < k < 255 이경우 n k 는 0 < n k < 64x64(4096) 사이의값이다. 히스토그램의정규화 (Normalization) 히스토그램을전체화소수로나눔 전체화소수를 n 으로나타내면 n k /n = p(r k ), r k : k 번째의명암, 0 < k < 255 이경우 p(r k ) 를확률분포함수로생각할수있다. 17/54 히스토그램의예 Histogram 18/54
Histogram 누적분포함수 (Cumulative Distribution Function) 변환함수 (Transormation unction) s r 0 T ( r) pr(w) dw, 0 r 1 w : 적분을위한 dummy 변수 r : CDF 의임의변수 (random variable) 누적분포함수 T(r) 의성질 0 r 1 인구간에서단조증가함수 0 T(r) 1 or 0 r 1 T( 1 ) 1 역함수가존재하지않을수있다 19/54 Histogram 누적분포함수 T(r) 을이용한영상보정 누적분포함수 T(r) () 을 gray level transorm 함수로사용 20/54
Histogram 누적분포함수를이용한영상보정 어두운영상 => LUT => 밝은부분증가 1 histogram 1 CDF curve 0 0 0 1 0 1 밝은영상 => LUT => 어두운부분증가 1 histogram 1 CDF curve 0 0 1 0 0 1 21/54 Histogram Equalization 히스토그램평활화 히스토그램의명암분포를재분배하여일정한분포의히스토그램을생성 - 각각의명암 r 값을일정한분포를갖는명암 s로의변환 s T (r) - 막대그래프가전체적으로펼쳐짐 22/54
Histogram Equalization 히스토그램평활화과정 1. 영상의히스토그램을생성 2. 히스토그램을정규화하고누적분포함수를구함 3. 누적분포함수를룩업테이블로사용하여입력영상에대해서변환된출력영상을생성 1 2 3 23/54 Histogram Equalization 24/54
Histogram Equalization 히스토그램평활화의영향 영상의밝기분포를재분배하여최대의콘트라스트를갖게함 명암대비조정을자동으로수행 영상의검출특성을증가시킴 각명암의빈도를바꾸지는않음 자동 : 항상검출특성이좋은영상을출력하지는않음 25/54 Histogram Equalization 26/54
Histogram Speciication 히스토그램명세화 변환된영상이특정모양의히스토그램을갖도록영상을변환 영상의일부영역에대한콘트라스트를개선가능 입력영상과원하는히스토그램이필요함 Histogram matching이라고도함 원하는히스토그램 27/54 Histogram Speciication 히스토그램명세화과정 1. 주어진영상의히스토그램을생성 2. 히스토그램 P(r) 을정규화하고누적분포함수를구함 s r T ( r) pr ( w) dw. 0 3. 원하는히스토그램 P(z) 을정규화하고역함수를갖는누적분포함수를구함 v G ( z) 0 z p z ( w) dw. 4. 입력영상에대해히스토그램균등화를수행하고이에다시원하는히스토그램의누적분포함수의역함수변환수행즉명암 r 로부터새로운명암 z 값생성 1 s z G (s ) z G 1 [ T ( r )] 28/54
Histogram Speciication 29/54 Histogram Speciication 30/54
Histogram Speciication 31/54 Local Enhancement Local enhancement( 국부적개선 ) 전체영역에대한 Histogram equalization 대신에특정 window 크기에작은크기에대한 equalization 화소를옮기면서위의과정을반복 세밀한부분에대한개선효과 필요에따라적용 32/54
Arithmetic/Logic Operations 복수개의영상에대해서 pixel-by-pixel로산술 / 논리연산수행산술연산 : 영상의밝기, 콘트라스트조정등에사용 영상간의뺄셈연산 : 영상의움직임검출 g(x,y) = (x,y) h(x,y) 곱셈, 나눗셈연산 : 영상의콘트라스트조정 g(x,y) = a *( (x,y) 논리연산 : ROI(Region o Interest) 추출등에사용 33/54 Arithmetic/Logic Operations 산술연산사용예 34/54
Arithmetic/Logic Operations 논리연산사용예 35/54 Arithmetic/Logic Operations 적용사례 : Mask mode radiography 영상간의뺄셈연산이용 환자의특정부위영상촬영 : mask image 획득 혈류에대비물질주입후촬영 이후 mask image와의뺄셈연산으로혈류영상획득 36/54
Spatial Filtering 마스크 (mask) w(-1,-1) w(-1,0) w(-1,1) w( 0,-1) w( 0,0) w( 0,1) w( 1,-1) w( 1,0) w( 1,1) (x-1,y-1) (x-1,y) (x-1,y+1) (x,y-1) (x,y) (x,y+1) (x+1,y-1) (x+ 1,y) (x+ 1,y+1) 37/70 Spatial Filtering 마스크 (Mask) 정방형의 2 차원행렬 m x n 크기를가지며 m, n은홀수값을가짐 Filter, mask, kernel, template, window 라고도함 계수 (coeicient) i 마스크내의값은화소라하지않고계수 (coeicient) 라고함 Spatial iltering 마스크의각위치에서해당계수값과대응하는영상값을각각곱한후그결과를모두더함 마스크의중앙에위치가출력화소의해당위치가됨 38/70
Spatial Filtering 2 차원 iltering 의예 : mask 크기가 3x3 1 1 g ( x, y ) w ( s, t ) ( x s, y t ) s 1 t 1 g (1,1) 11) w ( 1, 1) (0,0) 0) w ( 10) 1,0) (01) (0,1) w ( 11) 1,1) (0,2) w( 0, 1) (1,0) w( 0,0) (1,1) w( 0,1) (1,2) w ( 1, 1) (2,0) w ( 10) 1,0) (21) (2,1) w ( 11) 1,1) (2,2) 2) g(3,8) w( 1, 1) (2,7) w( 1,0) (2,8) w( 1,1) (2,9) w( 0, 1) (3,7) w( 0,0) (3,8) w( 0,1) (3,9) w ( 1, 1) (4,7) w ( 10) 1,0) (4,8) w ( 11) 1,1) (4,9) 39/54 Spatial Filtering 2 차원 iltering: mask 크기가 mxn a b g ( x, y) w( s, t) ( x s, y t) s a t b 여기서 a = (m-1)/2, b = (n-1)/2이다. 그리고영상의크기를 MxN이라고하면 x= 0, 1, 2,, M-1, y= 0, 1, 2,, N-1 값을갖는다. 40/54
Smoothing Spatial Filters Smoothing(Average )ilter 마스크내의화소값의평균을출력으로제공 3x3 마스크의경우모든계수가 1/9 5x5 마스크의경우모든계수가 영상내의잡음성분을제거 마스크의크기가클수록영상이흐려짐 (blurring) Weighted Average Filter 41/54 Filter example Smoothing Spatial Filters 42/54
Filter applications Smoothing Spatial Filters 43/54 Sharpening Spatial Filters 미분연산자 (Derivative Operators) 영상의 1차미분 (irst-order derivative) 이나 2차미분 (secondorder derivative) 을이용하여영상내에존재하는에지성분을검출 1차, 2차미분연산을다양한값의디지털값으로근사화 1 차편미분연산자 (irst-order partial derivative) x ( x 1) ( x ) y ( y 1) ( y ) 2차편미분연산자 (second-order partial derivative) 2 ( x1) ( x1) 2 ( x 2 ) x 44/54
Sharpening Spatial Filters Sharpening Spatial Filters 45/54 Derivative Operators 1 차미분연산자 (First-order derivative operators) Derivative Operators (x,y) 위치에서의영상 (x,y) 의기울기 (gradient) 는 G x y G x G 기울기의크기값은 y 2 2 ) ( y G x G or y G x G mag (x,y) 위치에서의영상의기울기를 (x,y) 라고하면 ) ( 1 tan ), ( y G G y x 46/54 x G
Example Derivative Operators 47/54 Application Derivative Operators 48/54
Derivative Operators 라플라시안 (Laplacian) 정의 2 2 2 x 2 y 2 디지털근사화 : x 방향 2차편미분 2 ( x 1, y) ( x 1, y) x 2 디지털근사화 : y 방향 2차편미분 2 ( x, y 1) ( x, y 1) y 2 2 ( x, y) 2 ( x, y) 최종결과 2 [ ( x 1, y ) ( x 1, y ) ( x, y 1) ( x, y 1)] 4 ( x, y ) 49/54 Derivative Operators 라플라시안 (Laplacian) 을이용한화질개선 라플라시안결과를원영상에더하거나뺌 ( x, y) g( x, y) ( x, y ) y) 2 라플라시안마스크의중간 ( x, y) 계수가음수인경우 2 라플라시안마스크의중간 ( x, y) 계수가양수인경우 복합라플라시안마스크 (composite laplacian mask) 0-1 0-1 -1-1 -1 5-1 -1 9-1 0-1 0-1 -1-1 50/54
Application Derivative Operators 51/54 Application Derivative Operators 52/54
Application Derivative Operators 53/54 Application Derivative Operators 54/54