Mô hình thống kê của sự biễu diễn đối tượng 2.1 Phương pháp đặc trưng chính Principle component analysis - PCA 2.2 Mô hình thống kê của hình dạng đối tượng 2.3 Mô hình thống kê của kết c
Trang 1Phần nội dung
1 Giới thiệu về mô hình biểu diễn động (Active appearance model - AAM)
2 Mô hình thống kê của sự biễu diễn đối tượng
2.1 Phương pháp đặc trưng chính (Principle component analysis - PCA) 2.2 Mô hình thống kê của hình dạng đối tượng
2.3 Mô hình thống kê của kết cấu đối tượng
2.4 Sự tổng hợp mô hình hình dạng và kết cấu thành mô hình biểu diễn động
2.5 Tổng quan quá trình tìm kiếm dựa vào AAM
3 Ràng buộc tìm kiếm trong AAM
3.1 Mô hình so khớp
3.2 Tìm kiếm vị trí định trước của mô hình
4 Ứng dụng mô hình biểu diễn động vào nhận dạng khuôn mặt
4.1 Giới thiệu bài toán nhận dạng khuôn mặt và vai trò của AAM
4.2 Dử liệu huấn luyện
4.3 Tiên doán góc độ
5 Hướng phát triển
6 Cài đặt ứng dụng tiền xử lý nhận dạng mặt người
Tài liệu tham khảo
Trang 2Việc giải thích ảnh (image interpretation) là một trong những hướng nghiên cứuthu hút được nhiều sự quan tâm trong vài năm trở lại đây Trong đó phương pháp giảithích ảnh bằng phương pháp tổng hợp (interpretation through systhesis) là một hướng
đi đang mang lại những kết quả thành công nhất định Hướng chính của phương phápnày là cung cấp những mô hình, hình ảnh, cấu trúc tương tự tới mức có thể của nhữngđối tượng cần được nhận dạng và giải thích trong dữ liệu ảnh
Trong bài tiểu luận này em xin trình bày hướng tiếp cận mang tính tối ưu theohướng như trên mang tên mô hình biểu diễn động(Active appearance model - AAM).Phương dùng để so khớp đồng thời hình dạng(shape) và kết cấu(texture) đối tượng mộtcách nhanh chóng và chính xác Điểm mạnh của phương pháp này thể hiện ở hai phần.Thứ nhất là cho ra kết quả so khớp hội tụ nhanh bằng cách huấn luyện dữ liệu offline
và chỉ ra hướng đi của mô hình khi tiến hành so khớp và tìm ra cấu trúc trên dữ liệuảnh Thứ hai là tận dụng được hai đặc trưng lớn nhất của một cấu trúc là hình dạng vàkết cấu Chính những lợi thế trên AAM được ứng dụng rộng rãi trong nhiều nghiên cứu
có cấu trúc khó như ảnh y khoa hay nhận dạng khuôn mặt
Với việc trình bày kỹ phần lý thuyết cũng như xây dựng một demo nhỏ Em mongmuốn đóng góp vào cơ sở tri thức chung của môn học “Công nghệ tri thức” Hơn thếnữa chỉ ra định hướng phát triển những dự án thực tế từ nền tảng tri thức này Em cũngxin trân trọng gửi lời cảm ơn tới thầy Hoàng Kiếm, người đã mang lại cho em nhiềukiến thức bổ ích từ môn học này
1 Giới thiệu về mô hình biểu diễn động
Trang 3Một trong những thách thức khó khăn của thị giác máy (machine vision) là cầnphải xây dựng những hệ thống tự động, có khả năng “hiểu” được ảnh – bao gồm việctái cấu trúc ảnh và nêu lên ý nghĩa của nó Hiện nay, có rất nhiều ứng dụng thực tế cầntới lĩnh vực này Bởi với những ứng dụng có độ khó cao đòi hỏi hệ thống phải thao tácliên quan đến những đối tượng có cấu trúc phức tạp và biến đổi liên tục Ví dụ nhưnhận dạng khuôn mặt hay ảnh y khoa, đây thường là những loại ảnh có khả năng chứanhiễu cao và không có đầy đủ luận cứ để có thể nhận dạng chính xác đối tượng nếukhông có một tri thức cho trước
Phương pháp dựa vào mô hình (Model - based) được xem như là một giải pháp tốtgiải quyết các khó khăn nêu trên Phương pháp này xây dựng những mô hình môphỏng hình dáng thật của các cấu trúc phức tạp mà hệ thống sẽ thao tác Những môhình được xem là những cơ sở tri thức cho trước giải quyết sự nhầm lẫn có thể xảy ratrong quá trình nhận dạng được gây nên bởi sự phức tạp của cấu trúc, nhiễu hay thiếuxót dữ liệu Sự giải thích ảnh trong phương pháp này được quy về quá trình so khớp dữliệu Đầu tiên ta sẽ chọn ra những mẫu dữ liệu huấn luyện và tham số hóa nó Sau đó,với một dữ liệu ảnh bất kỳ, ta định vị và đánh dấu cấu trúc cần tìm trên dữ liệu ảnhbằng việc hiệu chỉnh những tham số dùng để định nghĩa mẫu dữ liệu huấn luyện Lợi thế của phương pháp này là:
Phương pháp này được ứng dụng rộng rãi Cùng một thuật toán có thể được ápdụng với những vấn đề khác nhau bằng việc chuẩn bị những tập dữ liệu huấn luyệnkhác nhau
Thông qua việc huấn luyện dữ liệu, chúng ta thu được một hệ tri thức chuẩn vàchuyên biệt, đáng tin cậy, tăng tính nhanh và chính xác của thuật toán
Phương pháp cho kết quả đầu ra là một đối tượng có biểu diễn đóng (compactrepresentation) trong một mức độ biến đổi cho phép Sự biến đổi và biến dạng của đốitượng phải đối chiếu theo dữ liệu huấn luyện và không vượt ngưỡng cho phép Chínhđiều này mang lại cho đối tượng đầu ra một hình dáng và cấu tạo gần giống với dữ liệuhuấn luyện
Phương pháp mô hình biễu diễn động – AAM cũng là một trong những phươngpháp theo hướng tiếp cận dựa vào mô hình Phương pháp này được phát triển trước tiênbởi nhóm nghiên cứu tại khoa Khoa học ảnh và Sinh Y học đại học Manchester.Phương pháp tìm ra những mô hình tham số sinh ra những mô hình tổng hợp (synthetic
Trang 4model) trong dữ liệu ảnh khớp tới mức có thể với mô hình mụch tiêu (target model).
Cụ thể là phương pháp này tận dụng các ràng buộc về hình dáng và cả những thông tinkết cấu của đối tượng và tham số hóa chúng thành những biểu diễn đặc trưng của cấutrúc cần xét sau đó tiến hành so khớp những đặc trưng này với dữ liệu ảnh và tìm ra kếtquả Trong một số trường hợp tham số sau khi so khớp còn có thể dùng cho những xử
lý khác như xác định độ đo hay phân loại mô hình AAM cho thấy tính hiệu quả là linhđộng và tối ưu của nó so với những phương pháp cùng hướng tiếp cận được xem làphương pháp cải tiến cả về tốc độ và độ chính xác của phương pháp mô hình hình dạngđộng (Active Shape Model - ASM) Hiện có rất nhiều nghiên cứu ứng dụng từ AAMhoặc tối ưu AAM đang được tiến hành
2 Mô hình thống kê của sự biểu diễn đối tượng
Để tổng hợp một bức ảnh hoàn chỉnh của đối tượng ta phải mô hình cả hìnhdáng(tập điểm đánh dấu) và kết cấu(cường độ của màu sắc đặc trưng của mô hình) của
nó Phương pháp AAM chọn cách mô hình 2 đặc trưng trên bằng mô hình thống kê bởi
vì mô hình thống kê là cách mô hình đơn giản và cũng nói lên sự biến thiên của chúngtrong các trường hợp khác nhau
Từ đây, mô hình thống kê của sự biểu diễn đối tượng được sinh ra bằng việc kếthợp hai mô hình thống kê nêu trên và chuẩn hóa chúng theo một quy luật nhất định.Phương pháp phân tích đặc trưng cũng được áp dụng trong quá trình mô hình hóa đểgiảm thiểu số tham số và độ phức tạp tính toán
Trong tập dữ liệu huấn luyện, khi chúng ta tiến hành mô hình hóa hình dáng của
mô hình chúng ta sẽ thu được giá trí hình dáng trung bình (mean shape) Với giá trị đó,kết hợp cùng tập điểm đánh dấu ta xác định được vùng cần quan tâm(patch) Với vùngnày, chúng ta sẽ tiến hành mô hình hóa thống kê kết cấu Đây cũng chính là phươngpháp huấn luyện dữ liệu cho phương pháp AAM, dùng mô hình thông kê
Trang 5Hình ảnh mô tả quá trình huấn luyện dữ liệu bằng việc mô hình hóa thông kê hình dáng
và kết cấu của đối tượng
2.1 Phương pháp phân tích đặc trưng chính (Principle component analysis - PCA)
Trong phần này em sẽ không đi sâu vào phân tích kỹ PCA mà chỉ nêu lên ý tưởngchính của nó, vì AAM áp dụng nó để giảm số chiều tính toán của các vecto đặc trưng.Điều này ảnh hưởng rất lớn đến độ chính xác và tốc độ của AAM
Như chúng ta đã biết với một tập n vecto d chiều thì chúng ta có nd phần tử cầnthao tác tính toán Khi số chiều hoặc số vecto tăng dần việc tíntoán sẽ càng trở nênphức tạp và đòi hỏi chi phí tính toán lớn Phương pháp PCA là giải pháp hữu hiệu chovấn đề trên Phương pháp cung cấp một trục chính (principle axis) p Với tập dữ liệucho trước ta hoàn toàn có thể tính được giá trị trung bình của chúng cũng như biểu diễntất cả chúng lên trục tọa độ Mỗi phần tử được biểu diễn bằng một tỷ lệ tuyến tính nhấtđịnh với phần tử trung bình Những phần tử nằm xung quanh trục ở một ngưỡng nào đó
có thể được đại diện bằng những phần tử nằm trên trục chính Có thể biểu diển bằngcông thức như sau
x ≈ x’ = x + bp
Và được biểu diễn bằng hình ảnh trực quan như sau
Phương pháp này được áp dụng cho cả hai mô hình thông kê hình dạng và kết cấu
và cả mô hình biểu diễn động để kiểm soát được sự biến thiên của 2 đặc trưng trên và tăng tốc độ tính toán của thuật toán
2.2 Mô hình thông kê của hình dạng đối tượng
Trang 6Giả sử chúng ta có một tập n điểm xi được biểu diễn trong một hệ trục tọa độ Nếuchúng ta có thể mô hình tập dữ liệu điểm trên thì chúng ta có thể sinh ra một mô hình
có cấu trúc tương tự tập dữ liệu đã cho
Cụ thể ta tìm kiếm mô hình tham số có dạng x = M(b) Trong đó b là vector củatham số của mô hình Với một dữ liệu ảnh nhất định, mô hình này có thể dùng để sinh
ra những vecto mới, x Nếu chúng ta biết sự phân bố của các tham số cũng như sự phân
bố của x thì chúng ta có thể tạo ra một cấu trúc tương tự với cấu trúc dữ liệu huấnluyện
Đơn giản, chúng ta có thể tính từng bước như sau
Tính ma trân biến đổi dữ liệu:
tương ứng với t vecto có giá trị đặc trưng lớn nhất Từ đây, ta có thể xấp xỉ dữ liệu huấn luyện x như sau, và đây cũng chính là mô hình thống kê hình dạng đối tượng
đổi b chúng ta có thể biến đổi hình dạng của mô hình Số t được chọn dựa theo kết quả thực nghiệm nhưng thông thường t được chọn sao cho mô hình biểu diễn được lớn hơn hoặc bằng 98% tổng biến đổi của dữ liệu
Một số ví dụ về mô hình hình dạng biến đổi khi thay đổi tham số
Trang 7Ví dụ về hình dạng bàn tay khi thay đổi các tham số
Ví dụ về hình dạng khuôn mặt khi thay đổi các tham số
2.3 Mô hình thống kê của kết cấu đối tượng
Như đã trình bày ở trên để xây dựng mô hình thống kê cho kết cấu của đối tượng
ta phải xác định được vùng quan tâm Vùng quan tâm được xác định khi ta khớp điểmđiều khiển(control point) của dữ liệu huấn luyện với hình dáng trung bình của dữ liệuảnh bằng thuật toán tam giác hóa[1] Sau khi đã áp dụng PCA để giảm độ phức tạp, ta
Trang 8Để cực tiểu hóa sự biến thiên của ánh sáng tổng quát, ta chuẩn hóa dữ liệu vectobằng hệ số α và β
g = (gim – β)/ αGiá trị α và β được chọn dựa trên kết quả tính toán sao cho khớp nhất giữa tập cácvecto với giá trị trung bình Giá trị trung bình đươc ký hiệu là g
α = gim g, β = (gim)/n
n là số phần tử trong vecto
Ở đây ta thấy rằng, nếu tiến hành lấy từng mẫu thì việc tính giá trị trung bình là đệ quy, trong khi α, β thì lại phụ thuộc vào giá trị trung bình Do đó trong thực nghiệm để xác định α và β người ta dùng một dữ liệu huấn luyện có sẵn, khi ấy thì giá trị trung bình là cố định Họ sẽ tiến hành tính ra α và β là những giá trị cố định
Áp dụng công thức PCA ta có mô hình tuyến tính:
g = g + Pgbg
bg là tập tham số độ xám
Khi ấy kết cấu trên dữ liệu ảnh có mô hình thống kê như sau:
gim = Tu(g + Pgbg) = (1 + u1)(g + Pgbg) + u21Một số ví dụ về mô hình kết cấu
Hai mô hình với độ biến đổi độ xám +- 3 sd
2.4 Sự tổng hợp mô hình hình dạng và kết cấu thành mô hình biểu diễn
Trang 9Hình dạng và kết cấu của bất kỳ dữ liệu ảnh nào cũng có thể được tổng quát hóa trong
pháp AAM, tồn tại công thức cho vecto liên kết như sau:
nó là cho phép sự sai khác trong đơn vị giữa mô hình hình dạng và kết cấu
Cách tính W s
tiếp Để giải quyết được vấn đề này chúng ta phải ước lượng được sự tác động của sự biến đổi bs trên tập g Công thức tinh được áp dụng đơn giản là Ws = rI, trong đó r2 là
tỷ số của tổng biến đổi cường độ so với tổng biến đổi hình dạng(sau khi cả 2 đặc trưng trên đã được chuẩn hóa)
Ta có công thức thu gọn từ công thức trên như sau:
b = Pcc
kết cấu của mô hình Khi hình dạng và kết cấu có giá trị trung bình là 0 (zero mean) thì
c cũng nhận giá trị tương tự
Từ đây ta đầy đủ cơ sở định nghĩa cho mô hình biểu diễn động là sự kết hợp của 2
mô hình thống kê của hình dạng và kết cấu như sau
Trong đó
Công thức biểu diễn đơn giản hơn:
Trang 10Trong đó:
thể được tổng quát hóa bằng việc dùng tham số c để sinh ra hình dạng và kết cấu
2.5 Tổng quan quá trình tìm kiếm dựa vào AAM
Với một dữ liệu huấn luyện cho trước, được xem như là một dữ liệu chuẩn, chúng
ta mong muốn tìm kiếm mô hình trong dữ liệu ảnh sao cho sai số giữa nó với dữ liệuchuẩn là nhỏ nhất điều này đồng nghĩa với việc mô hình trên dữ liệu ảnh và dữ liệuhuấn luyện là khớp nhất Sự sai khác đó được ký hiệu là:
δI = II = Ii - Im
huấn luyện
Thay vì cực tiểu hóa tham số trên, ta tiến hành cực tiểu giá trị độ lớn của nó Δ = |
δI = II|2 bằng việc biến đổi tham số c Từ đây ta có thể hiểu rằng dù mô hình biểu diễn động
có nhiều tham số, với những dữ liệu rất nhiều chiều Nhưng việc khớp mô hình và dữliệu ảnh có thể được quy về việc tối ưu thông số trên Chính vì vậy việc xây dựng một
cơ sở tri thức cho trước để hiệu chỉnh tham số trong quá trình tìm kiếm đối tượng, sẽmang lại một thuật toán hiệu quả Cụ thể hơn, để giải quyết vấn đề này chúng ta cần 2bước:
1 Tìm ra mối quan hệ giữa δI = II và lỗi trong mô hình tham số
2 Sử dụng kiến thức ở điều thứ nhất cho vòng lặp của thuật toán tối ưu hóa Δ = |
δI = II|2
Mô hình biểu diễn động có tham số c, và được biểu diễn theo công thức
Trang 11Hình dạng trong dữ liệu ảnh, X, có thể được sinh ra bằng việc áp dụng phép biến
sy), trong đó sx = (scosθ – 1), sy = ssinθ Ta tiến hành xấp xỉ St+δI = It(x) ≈ St(SδI = It(x))
Tu(g) = (u1 + 1)gim + u21, trong đó u là vecto của tham số biến đổi, định nghĩa khi u = 0 thì ta có thể xấp xỉ Tu + δI = Iu(g) ≈ Tu(TδI = Iu(g))
Tham số biểu diễn c và tham số của hàm biến đổi t định ra vị trí của mô hình trên
dữ liệu ảnh X và đây cũng là vùng quan tâm để trích xuất đặc trưng Trong suốt quá trình so khớp chúng ta sẽ tiến hành lấy mẫu trên vùng quan tâm này với những vecto
gim và tiến hành chiếu chúng trên mô hình kết cấu, gs = T-1(gim) Mô hình kết cấu của dữ
ảnh và dữ liệu huấn luyện là
r(p) = gs - gm
p là tham số của mô hình, pT = (cT|tT|uT)
Khai triển Taylor của công thức trên ta có:
Theo công thức trên khi ta cực tiểu hóa |r(p + δI = Ip)|2 chúng ta có thể chọn giá trị δI = Ip theo công thức như sau:
Theo phương pháp tối ưu hóa chuẩn thì chúng ta phải tiến hành tính giá trị δI = Ip theo từng bước lấy mẫu, nhưng trong thực nghiệm thì chúng ta có thể lấy một giá trị xấp xỉ
cố định Giá trị này được tính từ tập huấn luyện và kết hợp với lõi Gauss (Gauss
kernel) để làm mịn tập dữ liệu:
Trong đó w(x) là hàm trọng số của chuẩn hóa Gauss
Trang 12Từ đây ta có thể tính toán được R và sử dụng nó suốt quá trình tìm kiếm Với kết quả tính toán này ta có thể áp dụng cho dữ liệu ảnh trong việc tìm ra phần nền
(background) hoặc xác định vùng mà mô hình đã đè lên phần nền và loại bỏ chúng khỏi mô hình Trong một số ứng dụng mà phần nền đã đoán trước được thì không cần
áp dụng điều này
Giá trị thích hợp của δI = Ic, δI = It, δI = Iu được xác định dựa trên thực nghiệm Tùy vào đặc thù của mô hình được thao tác trong ứng dụng chúng ta có thể tìm các giá trị tương ứngthích hợp để mang lại hiệu suất cao nhất
3 Ràng buộc tìm kiếm trong AAM
Trong một số ứng dụng nếu ta chỉ áp dụng duy nhất phương pháp AAM thì không
đủ Trong phương pháp so khớp độ chính xác phụ thuộc rất nhiều và xuất phát điểmcủa quá trình tìm kiếm trong khi phương pháp AAM bản thân nó không có một sự ràngbuộc chặt chẽ như vậy Hướng tiếp cận cơ bản nhất để xác định các điểm khởi đầu vàràng buộc cho AAM là cung cấp một ước lượng tương đối cho một tập điểm bằng tayhoặc bằng một hệ định vị đặc trưng tự động
Trong phần này em xin trình bày sự hiệu chỉnh công thức so khớp của phươngpháp AAM đã trình bày ở phần trên bằng phương pháp thống kê Với phương phápthống kê này ta có thể tính toán được tiền xác suất của mô hình tham số và tiền ràngbuộc của vị trí điểm Và từ những điểm ràng buộc này những điểm tiếp theo có thể tháctriển liên tiếp theo như hiệu ứng domino với một sự biến thiên nhất định Phương phápnày có thể xem như là một cách tích hợp AAM với một công cụ định vị đặc trưng,trong đó AAM vẫn đóng vai trò chủ đạo, còn công cụ đóng vai trò ước lượng lỗi củakết quả đầu ra
đem so sánh trực tiếp với gm = g + Qgc
Nhưng thay vì tối thiểu hóa hiệu trên, chúng ta sẽ tiếp cận bằng cách tối ưu hóacông thức tiền cực đại (maximum a–posteriori - MAP)