Khái niệm lifting

Một phần của tài liệu Nghiên cứu phân tích xử lý ảnh bằng phương pháp wavelet định hướng (Trang 48 - 54)

Biến đổi lifting được thực hiện qua 2 khâu: Predict và Update. Giả sử, có tín hiệu 1 chiều a0. Biến đổi lifting được thực hiện qua các bước sau:

1. Chia a0 vào mẫu Even-1 và mẫu Odd-1

2. Tính d-1 = Odd-1 Predict(Even– -1)

3. Tính a-1 = Even-1 + Update(d-1)

Các bước này được thực hiện lặp đi lặp lại để xây dựng biến đổi đa mức. Biến đổi ngược đơn giản. Chúng ta chỉ đảo ngược hệ thống và thay đổi dấu kết hợp. Các

chuỗi chẵn và lẻ sau đó sẽ kết hợp với nhau để khơi phục lại tín hiệu gốc. Hình , 3.2

biểu diễn Biến đổi thuận. Các hệ số a biểu diễn các giá trị trung bình, trong khi các hệ số d biểu diễn sự khác biệt trong tín hiệu. Do đó, hai tâm tương ứng với các tần số băng thấp và băng cao của tín hiệu.

Đối với biến đổi wavelet Haar, chúng ta cần thực hiện các bước sau:

- Predict(x) = x - Update(y) = y / 2

Biến đổi Haar rất dễ hực hiện. Ngồi ra, ệ thống có thể thực hiện với một tín t h

hiệu đầu vào hoặc 1 ảnh đạt hiệu quả trong cả miền thời gian và miền tần số, . Tuy

nhiên, biến đổi Haar mang lại kết quả kém do bước dự đoán khá đơn giản. Do mọi biến đổi wavelet là biến đổi có thể được trình bày rút ra từ các bước lifting nên một

47

số biến đổi hiệu quả hơn như Daubechies hay song trực giao đối xứng đã được áp dụng.

Hình 3-2 Mơ hình biến đổi lifting thu n ậ

Q trình nén u cầu 2 bước chính: giải tương quan (decorrelation) và mã hố.

Q trình tạo khơng gian giải tương quan dữ liệu ảnh, nhưng khơng có tác dụng

nén. Do đó, bước nén phải được thực hiện sau mỗi bước nâng để giảm lượng dữ liệu. Bộ mã hoá entropy như mã hoá Huffman hay mã hố số học được dùng trong bước này.

Hình 3-3 Bước dự đoán và Update trong Lifting

thuyết và thuật toán

48

Thuật toán thuận

for j = -1 to n –

*/ cho j có giá trị từ 1 đến - -n for each position k in aj+1

*/ với mỗi vị trí k trong aj+1, tính:

(aj,k , dj,k} = split(aj+1,k) dj,k -= predict( aj,k) aj,k += update(dj,k)

Thuật toán nâng ngược

for j = -n to -1

for each position k in a j+1 a j,k -= update( d j,k ) d j,k += predict( a j,k ) a j+1,k = merge(a j,k , d j,k } trong đó các hàm predict() và update() được xác định như trên.

Bước lifting

Số các mẫu có thể giảm bằng lấy mẫu con đơn giản từ tín hiệu đầu vào:   , với  là mẫu chẵn (2k) tại mức (0) của biến đổi và  là mẫu ở mức tiếp theo (1). Thông thường, các mẫu khác được phân chia như sau: (adsbygoogle = window.adsbygoogle || []).push({});

 Trong đó  là sự khác biệt hay là hệ số wavelet.

Bước dự đoán

Như đã đề cập ở phần trước, chúng ta tìm kiếm một cách biểu diễn gọn hơn cho

a0,k.

Nếu    i v i t t c các giá tr cđố ớ ấ ả ị ủa k, nghĩa là  khơng chứa thơng tin. Ta có thể loại bỏ các giá trị này và chỉ giữ lại a-1,k. Khi đó, ta có được một cách biểu diễn gọn hơn mà vẫn có khả năng khơi phục lại a0,k. Tuy nhiên, tín hiệu thực lại

49

Trường hợp thực hiện bước dự đốn để tìm các mẫu lẻ từ các mẫu chẵn. Bước này được xây dựng dựa trên sự tương quan của tín hiệu tại mức 0. Áp dụng hàm dự đoán P:

 󰇛󰇜

Từ đó chúng ta có thể thay thế dữ liệu gốc bằng một tập 󰇜. Do đó, các mẫu bị lỗi có thể được dự đốn để tạo lại 󰇜. Tuy nhiên, nó vẫn khơng thể tái tạo một cách chính xác hoặc dự đốn  t ừ. Chúng ta có th thay th ể ế  b ng giá ằ

trị chênh l ch gi a nó và giá tr d ệ ữ ị ự đoán P(d -1,k ). Khi 󰇛 󰇜 và  có giá tr ị tương đương nhau, sự khác bi t ệ sẽ nhỏ hơn giá trị  g c. ố Do đó, chúng ta tính được:

    󰇛󰇜

Nếu tín hiệu tương quan và phù hợp với mơ hình thì hầu hết các hệ số wavelet đều nhỏ.

Do đó, để lợi dụng sự dư thừa dữ liệu một cách hiệu quả, chúng ta cần một tập hợp a-1,k và d-1,k để đạt được mức tương quan có thể có. Đó là lý do chúng ta chia thành các mẫu chẵn và lẻ ở bước chia (split) thay vì chia tín hiệu vào hai nửa trái phải để tận dụng lợi thế khơng gian thời gian.

Có thể dự đốn mẫu lẻ bằng giá trị trung bình của các mẫu chẵn quanh nó ở mức trước  và . Do đó, chúng ta có hàm dự đốn

   󰇛 󰇜

Cơ chế dự đốn này giả thiết tín hiệu được lấy mẫu qua các khoảng có độ dài 2 từ một hàm tuyến tính li n tụcê (Hình 3.4). Khi tín hiệu phù hợp với mơ hình, các hệ số wavelet sẽ nhỏ hơn so với những tín hiệu khơng khớp.

Sau khi áp dụng q trình này, chúng ta có hai tập hợp  và  . Chúng

50

chúng ta chuyển lên mức tiếp theo bằng cách chia tín hiệu vào các giá trị 

và  từ .

Cuối cùng, chúng ta thay tín hiệu gốc bằng tập hợp {      } sau

 bước/mức. Do đó, tín hiệu gốc sẽ được thay thế bởi một hệ số băng thấp và một vài hệ số băng cao. Một lần nữa, nếu tín hiệu phù hợp với mơ hình, chúng ta hy vọng các thành phần của tập hợp này có biên độ nhỏ hơn.

Hình 3-4 Tính tốn các h s wavelet trong Lifting ệ ố

Bước Update

Bước này sẽ giữ lại một số đặc điểm chung của tín hiệu gốc trong q trình lọc bỏ dư thừa. Ví dụ, nến tín hiệu là một ảnh 2 chiều, ta có thể lấy giá trị trung bình các pixel cho tất cả các mức tỷ lệ, dẫn đến the hệ số cuối cùng tại tỷ lệ cuối cùng là

giá trị pixel trung bình tồn bộ ảnh gốc Như vậy, hệ thống cần đảm bảo giữ cố định .

một số moments c a hàm ủ wavelet  tại mỗi mức. Cho Ñ là số các moment bị triệt tiêu, được tính như sau:

51

Tại mỗi tỷ lệ, cần giữ được    c a h s ủ ệ ốtại tất cả các mức và sử dụng thông tin này để xác định ố ệ ố s h s c ần thiết để update các h s . ệ ố  Các hệ số được sử dụng trong bước này gọi là hệ số lifting.

Để tìm các giá trị, ta áp dụng thuật toán sau: (adsbygoogle = window.adsbygoogle || []).push({});

- Khởi tạo các moment:

Moment 1 0 1 2 3 4 5 ... 

Moment 2 0 1 4 9 16 25 ... 

Moment 3 0 1 16 27 64 125 ... 

... ... ... ... ... ... ... ... ... Moment  0 1     ... 

Với mỗi , xác định hệ số để dự đoán.

- Update các moment cho tất cả các giá trị  ở mức đang xét theo phương

trình sau:       với  là chỉ số của hệ số,  là h s lệ ố ọc

tương ứng (    󰇜 , là moment được update (      󰇜 và là 

chỉ ố ủ s c a hệ ố s 

- Các moment phải bằng 0 ở tất cả các mức. Do đó, chúng ta có thể xây dựng một hệ thống tuyến tính để tìm các hệ số nâng cho các giá tr ị . Các bước  thực hiện như sau:

o V i m i h s , ớ ỗ ệ ố đặt giá trị của nó bằng 1 và tất cả các giá trị d khác bằng 0.

o Áp dụng biến đổi ngược để xác định chia các hệ số d này vào các hệ số avà tạo hệ thống tuyến tính của ĐxĐ biến:

52             

Trong đó  là hệ số lifting,  là moment thứ ithvới  là chỉ số liên quan đến hệ số tại mức đang xét và  là c t c a ma tr n moment có ộ ủ ậ   . Chú ý r ng ằ

kho ng giá tr cả ị ủa  thay đổ ừ 1 đến đội t dài c a tín hi u. H ng s t o m t tủ ệ ệ thố ẽ ạ ộ ập các hệ ố lifting đố ớ ừ s i v i t ng h s . ệ ố

Với ở mỗi mức, thực hiện quá trình như trên để tại các hệ số lifting Ñ.

Sau khi xây dựng được các hệ số lifting thực hiện bước , update. Cho    và  là h s ệ ố wavelet mở ức   và điểm .Sau đó, ta có 2 hệ số lifting liên quan

đến  , gọi là  và .

Để update các h s trung bình, ta th c hi n các phép toán sau cho t ng giá tr ệ ố ự ệ ừ ị

của :

      và       

Một phần của tài liệu Nghiên cứu phân tích xử lý ảnh bằng phương pháp wavelet định hướng (Trang 48 - 54)