Cân bằng hoành đồ thích nghi có độ tương phản hạn chế

Một phần của tài liệu Thực hành xử lý số tín hiệu với matlab (Trang 244 - 250)

11.3. THỰC HIỆN CÁC HÀM TRUYỀN IIR

12.3.2. Cân bằng hoành đồ thích nghi có độ tương phản hạn chế

Đ ể cân bằng hoành đồ của ảnh, ngư ời ta cò n sử dụ ng phương pháp cân bằng thích nghi với hàm M A ll.A B adapthii:*eci. N ếu hàm histeq làm v iệc với các ảnh nguyên, thì hàm adapthisteq hoạt đ ộn g trên những m iền nhỏ ở trong ảnh , gọi là các ô cờ. Đ ộ sáng của m ỗ i ô c ờ được cải thiện sao cho hoành đồ của vùng ảnh sau khi xử lý gần đúng nhất với hoành đồ qui định. Sau khi tạo ra sự cân bằng hoành đồ, hàm adapthisteq tổ hợp các ô cờ lân cận nhau nhờ phưong pháp nội suy tuyến tính. Đ ể tránh kh uếch đại các tạp nhiễu c ó trong ảnh, ta phải sử dụng các tham s ố tố i ưu ch o hàm adapthisteq đ ể hạn c h ế đ ộ tương phản, nhất là trong các vùng đ ồn g nhất.

V í dụ sau đây m inh họa sử dụng hàm adapthisteq đ ể điều chỉnh độ tương phản trong m ột ảnh cường độ. ở đ ây, ảnh g ố c c ó đ ộ tương phản kém với hầu hết các giá trị nằm giữa vùng cưèmg đ ộ. H àm adapthỉsteq sẽ tạo ra m ột ảnh m ới c ó các giá trị đ ồn g đều trong toàn dải.

246

f = im read('rice.png');

g = adapthisteq(f);

s u b p lo t(2 ,2 ,l), su b im a g e(f);

title('ảnh gốc')

su b p lo t(2 ,2 ,2 ), im h ist(f);

titleC hoành đồ của ảnh gốc') su b p lo t(2 ,2 ,3 ), su b im a g e(g );

title('ảnh g ố c đã được tăng độ sáng') su b p lo t(2 ,2 ,4 ), im h ist(g )

titleC hoành đồ của ảnh đã được tăng độ sáng') ta sẽ thu được kết quả như trên hình 12.6.

A n h goc

1000

h is to g ra m c u a an h goc

50 10Ữ 150 200 250

A n h ta n g do s a n g voi a d a p th is te q h is to g ra m cu a anh ta n g do s a n g voi a d a p th is te q

800

50 100 150 200 250

Hình 12.6. Ả n h g ố c và ảnh đã được tãng độ tương phản dùng hàm adapthisteq.

H àm adapthisteq cò n m ột phiên bản nữa với cú pháp sau:

g = adapthisteq (f,p a ra m l,v a ll,p a ra m 2 ,v a l2 ...)

qui định các cặp tham sôVgiá trị nào đấy. Chẳng hạn chương trình sau :

f = im readC tire.tif); % Đ ọ c ảnh từ file

A = adap thisteq(I,'clip L im it',0.02,’D istribution','rayleigh');

RG B = im read('D :\D ocum ents and Settin gs\T T \M y Docum entsXAnh Gia d in h \h oah on g.b m p ')r

N ếu ảnh chưa phải là ảnh "đúng mầu", thì phải ch u y ển về ảnh mầu nhờ lệnh:

R G B = ind 2rgb (X ,M A P );

Lệnh này ch u yển đ ổi ảnh đánh dấu chỉ s ố thành ảnh đúng m ầu định dạng (RGB); còn lệnh;

cform21ab = makecform ('srgb21ab');

ch uyển đổi ảnh tới kh ôn g gian m ầu L *a*b * ; L A B = applycform (R G B , cform21ab);

L = L A B (:,:,1)/100;

chuyển giá trị chia thang tới vùng từ 0 đến 1;

L A B (:,:,1) = adap thisteq(L ,'N um T iles',[8 8 ],'C lip L im it',0 .0 0 5 )* 1 0 0 ; tạo C LA H E

cform 2srgb = m ak ecform (’lab2srgb');

ch u yển ảnh trở v ề khôn g gian m ầu R G B ; g = app lycform (L A B , cform 2srgb);

Đ ể hiển thị các ảnh, ta dùng các lệnh:

su b p lo t(2 ,2 ,l), subim age(f);

title('A nh goc')

su b p lot(2,2,2), su b im age(A );

titleC hoành đồ cua anh g o c ')% su b im a g e (fl) su b p lot(2,2,3), su bim age(R G B );

title('A nh tang do sang voi ađapthisteq') su b p lot(2,2,4), su b im age(g);

titleC hoành đồ cua anh tang do sang v o i adapthisteq')

H ình 12.7 hiển thị các ảnh g ố c và các ảnh thu được sau khi xử lý dùng CLA H E.

248

A n h d e n tra n g goc T ang do tuong p han voi a d a p th is te q

5Ũ 1Q0 15D 2Ũ0 A n h R G B goc

50 1Ũ0 150 20Ũ

Anh RGB tang do tuong phan voi adapthisteq

50 100 150 2Ũ0

Hình 12.7. Ả n h g ố c và ảnh đã được tăng độ tương phản dùng hàm adapthisteq (f,p a ra m l,v a ll,p a ra m 2 ,v a l2 ...).

12.4. PH É P B IẾ N Đ Ổ I K A R H Ư N E N -L O E V R E

K ỹ thuật biến đ ổi các tín hiệu rời rạc thành một dãy các hệ số rời rạc không tương quan được g ọ i là phép biến đổi Karhunen - Loèvre (K LF) hay còn g ọ i là phép biến đổi các véctơ riêng. Giả sử mảng dữ liệu ảnh f(j,k) là m ảng m a trận \oiông; khi đó, dạng tổng quát của phép biến đổi này là như sau:

F ( u ,v ) = ^ ^ f O , k ) A ( j , k ; u , v )

j=0 k=0 (1 2 .5 0 )

trình :

Trong đ ó A (j,k ;u ,v ) là nhân của biến đổi KLT; nó thoả mãn phương

Ầ(u,v)AO’,k;u,v) = ^ ^ C ( . ( j , k ' ; j , k ) A G , k ;u ,v ) j'=0k'=0

(12.51)

Trong đó C|(j,k;j',k') là hàm hiệp biến của ma trận ảnh f và X(u,v) là hằng số đối với cặp (u,v) c ố định. Tập hợp các hàm được xác định bởi nhân của phép biến đ ổ i K L T là các hàm riêng của m a trận h iệp biến C|(j,k;j',k') còn x,(u,v) là các trị riêng của m a trận hiếp biến đó. N ếu hàm hiệp biến phân tách được, tức là:

C f O ,k ; j ',k ') = C , ( j j ' ) C R ( k , k ) (1 2 .5 2 ) thì nhân K LT cũng phân tách được; nghĩa là;

A (j, k; u, v ) = A c (u, J )Ar (v, k) (1 2 .5 3 ) Các hàng và cột của nhân K LT thoả mãn phương trình:

N-1

M u )A R (v ,k )= X C R ( k , k ’) A R ( v , k ' ) k'=0

N-1

Xc(v)Ac(u,j) = X C c ( j j ’) A c ( v ,j ’) k’=0

(1 2 .5 4 )

(1 2 .5 5 )

N ếu biểu diễn ảnh dưới dạng véctơ, thì các c ô n g thức trên được viết dưới dạng rất đofn giản. K hi đó, cặp biến đổi K LT sẽ c ó dạng:

F = A f f = A ^ F

(1 2 .5 6 ) (1 2 .5 7 ) Ma trận biến đ ối K L T thoả mãn hệ thức:

A C r = XA (1 2 .3 8 )

ở đây C | là m a trận hiệp biến của f và A là m a trận c ó các h àn g là các véctơ riêng của m a trận hiệp biến C| còn m a trận X là m a trận trị riêng có dạng như sau:

0 . . 0

0 1(2) 0 .

0

. . 0 . 0 Ầ (N ')

(12.59)

250

Nếu C| phân tách được, thì:

A — Aq(0Ar ở đây A c và Ar thoả m ãn bẹ thức:

(12.60)

(1 2 .6 1 ) (1 2 .6 2 )

^(w) = Ầr(v)X.c(u) với u , v = 1, 2 , . . . , N . (1 2 .6 3 ) 12.5. X Á C Đ ỊN H P H ổ C Ủ A Q Ú A TRÌNH N G Ẫ U n h i ê n

M ục đích của xác định phổ là m ô tả sự phân b ố trên phưcíng diện tần số c ô n g suất chứa trong m ột tín hiệu dựa trên một m ảng dữ liệu hữu hạn.

X ác định phổ cô n g suất được ứng dụng rất nhiều trong thực tế, để tách tín hiệu tích cực kh ỏi bị ô nh iễm bởi tạp nhiễu. Phổ côn g suất của m ột quá trình ngẫu nh iên dừng x[n ] liên hệ mật thiết với dãv tưofng quan nhờ biến đổi Pourier rời rạc:

00

S J c o ) = X R x x ( m ) e ' - ' “ ‘^ (1 2 .6 4 )

m = - 0 0

ở đây, tần s ố g ó c tí) = 27if/F, với F là tần số lấv mẫu tính bằng Hz.

D ãy tưcfng quan Rxx(m) được xác định từ biến đ ổi Pourier rời rạc ngh ịch đảo của phổ c ô n g suất của tín hiệu:

n F / 2

R x x ( m ) = fS x x (ío )e j“ "'dco= fS xx(co)ej^ " f'^ /^ d f (1 2 .6 5 )

- 7 t - F / 2

C ốn g suất trung bình của dãy x[n] trong toàn bộ khoảng N yquist được định nghĩa bằng:

R x .( 0 ) =

-n 2n dco =

F/2

-F /2

d f (12.66)

Đ ại lượng:

Pxx(^>) = , hoãc p XX ( 0 = — - (1 2 .6 7 )

2ti F

được g ọ i là mật độ p h ổ công suất (PSD) của tín hiệu ngẫu n h iên dừng x [n '.

N ếu x[n] là tín hiệu thực, thì PSD đối xứng đối với tần số co = 0, nên chỉ cần xác định p „ (® ) trong vùng 0 < co < 71. K hi đó, ta c ó khái n iệm PSD phía phải được định n gh ĩa bởi hệ thức sau:

0 - 7 Ĩ < CD < 0

Pj(co) = J (1 2 .6 8 )

* [ 2 P x x ( c o ) 0 < c o < 7 r

K hi đó cô n g suất trung bình của tín hiệu trong vùng tần s ố từ cOi đến

ằ 2 được tớnh th eo cụ n g thức:

- "r

P = J p ,(c o c o )d (1 2 .6 9 ) J|

Một phần của tài liệu Thực hành xử lý số tín hiệu với matlab (Trang 244 - 250)

Tải bản đầy đủ (PDF)

(419 trang)