2. Huấn luyện phân vùng và phân vùng màu da dựa trên mơ hình phân phố
2.1.1 Cơ sở để huấn luyện
Như đã đề cập, ảnh được dùng để huấn luyện phân vùng màu da là tập 100 ảnh mẫu kích thước 30 x 40 màu da được trích chọn thủ cơng từ nhiều bức ảnh khác nhau, bao gồm đầy đủ các màu da của các chủng tộc và châu lục được biết đên như châu Âu, châu Á, Châu Mỹ, Châu Phi… Để giảm độ sai lệch của bộ tham số học được sau quá trình huấn luyện, ảnh đầu vào được tiến hành lọc thơng thấp giảm nhiễu.
Khơng gian sử dụng để mơ hình hĩa màu da là khơng gian YCrCb, sở dĩ chúng ta chọn khơng gian màu này là do, cơng thức chuyển đổi từ khơng gian RGB sang YCrCb là khá đơn giản, hơn nữa trong khơng gian nay, sự độc lập giữa độ sáng và các thành phần màu là rất cao.
Cơng thức chuyển đổi từ RGB sang YcrCb
Một lý do để lựa chọn khơng gian màu YCrCb nữa đĩ là, theo khảo sát của các nhà nghiên cứu, sự phân bố của màu da người trong mặt phẳng CrCb là tương đối tập trung và nhỏ lẻ [8]. Cĩ thể thấy điều này trong hình minh họa sau:
Hình 18: Phân bố màu da trong mặt phẳng CrCb của khơng gian YCrCb
Theo những nghiên cứu trước đây, màu da con người cĩ những đặc trưng phân biệt đồng thời, chúng ta khác nhau về màu da chủ yếu là do khác nhau về độ sáng hơn là sự khác nhau về các thành phần màu. Hình phấn bố màu da trong
khơng gian ba thành phần của khơng gian màu YCrCb sau đây sẽ cho chúng ta thấy điều đĩ.
:
Khi chuyển sang phân phối Gaussian để biểu diễn người ta thu được phân bố màu da trong mơ hình Gaussian như hình vẽ dưới đây:
Hình 20: Phân bố màu da trong phân phối Gaussian biểu diễn trong khơng gian màu YCrCb
Từ kết quả của biểu diễn này, người ta nhận thấy, với một pixel màu thì cĩ thể tính được xác suất nĩ là ảnh màu da theo cơng thức sau đây:
Trong đĩ c là vector mẫu màu da được trích chọn, khi biểu diễn trong YCrCb thì c= (CrCb)T, µs là vector trung bình của phân bố, cịn Σs là ma trận hiệp phương sai của phân bố. Chúng được tính theo cơng thức:
[III.3]
Với n là tổng số mẫu mà da được huấn luyện.
Để cĩ thể tìm ra được bộ tham số µs, Σs và xác suất ngưỡng dưới nhỏ nhất. Chúng ta tiến hành huấn luyện theo quá trình như sau.
2.1.2 Huấn luyện phân vùng màu da
Với mỗi ảnh trong tập cơ sở huấn luyện, sau khi chuyển sang khơng gian màu YCrCb, chúng ta biểu diễn x = (CrCb)T là vector các giá rị CrCb trung bình của tất cả các giá trị CrCb tại tất cả các điểm ảnh của ảnh đĩ.
Với n ảnh màu da huấn luyện, chúng ta tìm được vector trung bình của tất cả các ảnh trong cớ sở dữ liệu:
[III.4]
Trong đĩ, j là vector của ảnh j trong cớ sơ dữ liệu, m là vector trung bình và E là tốn tử kì vọng.
Từ đĩ chúng ta tính được ma trận hiệp phương sai cua vector x trong cơ sở dữ liệu theo cơng thức:
[III.5]
Sau khi tính được C và m, chúng ta sủ dụng hàm phân phối Gaussian hai chiều cho vector x tại mỗi điểm ảnh trong mỗi ảnh mẫu màu da trong cơ sở dữ liệu:
P(Cr, Cb) = Exp[-0.5(x-m)TC-1(x-m)] (III.6)
Ta cĩ giá trị P tương ứng với tất cả các điểm ảnh trong tất cả các ảnh thuộc cơ sở dữ liệu ảnh màu da. 0 < P < 1. Tìm giá trị nhỏ nhất của P, chúng ta sẽ thu được một ngưỡng phân vùng ảnh. Ngưỡng xác suất này sẽ được dùng để phân loại một điểm ảnh cĩ là điểm ảnh màu da hay khơng.
Kết quả thực nghiệm trong đồ án, huấn luyện với tập 100 ảnh mẫu, chúng ta thu được bộ tham số phân vùng như sau:
Vector trung bình:
Và giá trị nhỏ nhất của P học được đĩ là: MinPro = 0.00004025