Giải thuật DTW bất đối xứng

Một phần của tài liệu Xử lý âm thanh và hình ảnh (Trang 53 - 55)

Mặc dù giải thuật cơ bản DP cĩ ưu điểm là đối xứng (tất cả các khung của tín hiệu cần so trùng và mẫu tiếng nĩi cần tham khảo được xem xét), tuy nhiên giải thuật vẫn cịn yếu điểm là tại các vị trí cột và hàng lệ thuộc vào các vị trí đường chéo cĩ thể sinh lỗi.

Một cách để tránh việc này là thực hiện việc dùng d(i, j) hai lần trong mỗi bước tại vị trí đường chép, điều này dẫn đến loại bỏ lỗi tại các vị trí cột và hàng, gọi giá trị lỗi cơ lập dh, dv

tương ứng cho các bước di chuyển theo hàng và cột. Phương trình (1) sẽ trở thành

[D i j d i j D i j d i j dh D i j d i j dv]

j i

D( , )=min ( −1, −1)+2 ( , ), ( −1, )+ ( + )+ , ( , −1)+ ( , )+

(2)

Với giá trị dh, dv cĩ được qua thực nghiệm Các ràng buộc trong việc nhảy đến các ơ kế tiếp:

→ (i−1, j−2) đến vị trí (i,j) - gọi là đường chéo mở rộng (độđốc là 2) → (i−1, j−1) đến vị trí (i, j) - gọi là đừong chéo chuẩn (độ dốc là 1) → (i−1, j) đến vị trí (i, j) - gọi là đường ngang (độ dốc là 0)

Giả sử rằng mỗi khung của tín hiệu ngõ vào chỉđược xét đến một lần duy nhất, như vậy ta cĩ thể khơng xét đến việc chuẩn hĩa độ dài của mẫu tiếng nĩi. Do việc tính tốn tại từng ơ khác nhau nên giải thuật được gọi là giải thuật lập trình động bất đối xứng.

Hình 1.47 Ba hướng cĩ giá trị so trùng tốt nhất cĩ thểđi đến từ ơ (i,j) trong giải thuật DTW bất đối xứng. Hình 1.48 Các vị trí ơ tại (i, j), (i,0)và (i,1)cĩ các ơ định hướng khác nhau. Tại ơ ) 0 , (i chỉ cĩ thểđi đến ơ (i−1,0); tại ơ (i,1)cĩ thểđi đến (i−1,1) hoặc (i−1,0); tại ơ (i, j) cĩ thểđi đến các vị trí chuẩn.

Hình 1.49 Vùng tơ màu mơ tả vùng mà các hướng di chuyển khơng bao giờ đi đến. Các hình chữ nhật mơ tả là các trường hợp đặc biệt. Trong giải thuật DTW đối xứng, dịng 0 là trường

hợp đặc biệt, cịn trong giải thuật DTW bất đối xứng, dịng 1 được xử lý khác với các trường hợp cịn lại.

Các trường hợp đặc biệt thường xảy ra tại vị trí j =2i−1, và j =2i, giá trị chi phí tồn cục cho từng trường hợp được tính như sau:

→ 2i−1: chi phí cục bộ + giá trị nhỏ nhất tại vị trí predCol[j −1] và predCol[j−2]

→ 2i: chi phí cục bộ + giá trị nhỏ nhất tại vị trí predCol[j −2] Mã giả của quá trình như sau:

Giá trị chi phí nhỏ nhất là cột cuối cùng lưu trong highestJ

Một phần của tài liệu Xử lý âm thanh và hình ảnh (Trang 53 - 55)

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

(175 trang)