5.1. Cơ sở dữ liệu
5.1.1. Chi tiết số lượng anh
Bộ cơ sở dữ liệu gồm 523 hình ảnh chụp trực diện khuôn mặt người được nhóm tác giả thu thập và sử dụng trong suốt quá trình thực hiện đề tài được thể hiện qua Bảng
5.1-1 dưới đây:
126 97
Ảnh tự chụp 223
200 100
Ảnh tải trên mạng 300
106 94 39 61
Số lượng 196 130 114 83 523
Bảng 5.1-1 Cơ sở dữ liệu anh
5.1.2. Cac thông số của ảnh
" Kích thước: khoảng 34.2 KB ~ 82.5KB
=" Độ phân giải: khoảng [251x376;1024x1024]
=" Góc chụp: chụp trực diện khuôn mặt người
5.1.3. Nguồn ảnh thu thập trên mạng
Trong đó tập dữ liệu “Ảnh thu thập trên mạng” được nhóm thu thập trên các diễn đàn và trang web online. Cụ thể là tập ảnh “Có kính” được nhóm tác giả thu thập tại Pinterest từ các cửa hàng chuyên về sản phẩm mắt kính cho người lớn, trẻ em và
người cao tuôi cũng như một sô trang tạp chí như:
48
= EyeButDirect
= Zenni Optical
= Maunual do Homem Moderno
= Macho Moda
= Jonas Paul Eyewear
= MilK magazine
Đối với tập ảnh “Không có kính” được nhóm thu thập dữ liệu từ trang thispersondoesnotexist được phát triển bởi GAN — Generative Adversarial Network,
StyleGAN2 (Dec 2019) — Karras et al. and Nvidia.
5.2. Kết quả thu được
5.2.1. Phương thức đánh giá
Dựa trên phần Giới hạn đề tài được trình bày tại mục 1.5, chúng ta có phương thức đánh giá kết quả thu được như sau:
- Mục tiêu: Nhận diện được 500 hình ảnh trực diện khuôn mặt có đeo
kính (loại kính cận có viền cỡ vừa màu đen) và khuôn mặt không đeo
kính.
Chương trình demo tiến hành thực hiện chạy thử trên hơn 500 anh dataset. Tại mỗi
ảnh chạy thực nghiệm, chương trình thông báo ảnh khuôn mặt người có hoặc không
deo mắt kính. Hình ảnh minh hoạ được thê hiện qua Hinh 5.2-1 và Hình 5.2-2 dưới
đây:
49
8 ˆ MainWindow = n x
Choose an image
Execute
UU
No face detected! Input Output
Hình 5.2-1 Anh đầu vào trường hợp có kính mà không có khuôn mặt người
8ˆ MainWindow = n x
Eyeglasses detection and removal for face recognition
Choose an image
Execute
No glasses detected! Input Output
max...
Hình 5.2-2 Anh đầu vào trường hợp có khuôn mặt người nhưng không có kính
- _ Mục tiêu: Tỉ lệ số lượng hình ảnh loại bó được viền mắt kính khỏi khuôn
mặt người >70% trong số 326 ảnh có mắt kính.
50
Trên tổng số 326 ảnh có mắt kính trong dataset được tiến hành chạy thử, sỐ lượng ảnh thực hiện loại bỏ được viền mắt kính khỏi khuôn mặt người phải lớn hơn 228 ảnh (~70%). Ví dụ ảnh loại bỏ viền mắt kính trên khuôn mặt người như Hinh 3.2-
13.
Hình 3.2-13 Kết quả thực nghiệm loại bỏ và khôi phục ảnh khuôn mặt người không đeo mắt kính.
- Muc tiêu: Tỉ lệ phục hồi ảnh khuôn mặt người sau khi loại bỏ mắt kính
>80% so với ảnh khuôn mặt người không đeo kính (đối với tập dữ liệu
ảnh tự chụp).
Đối với tập dữ liệu ảnh tự chụp, so sánh độ sai khác của pixel màu tương ứng giữa ảnh chụp thực tế có đeo kính và ảnh không đeo kính. Xác định độ sai khác này bằng cách lấy một điểm pixel tương đồng của 2 hình ảnh có và không có kính, rồi thực hiện tính độ khác biệt giữa điểm vừa tìm được của 2 ảnh với một điểm pixel cách một khoảng cách nhất định với chính nó. Kết quả thu được độ sai khác của 2 loại
ảnh này không vượt quá 80%.
51
Hình 5.2-3 Anh minh hoạ tỉ lệ phục hôi hình ảnh khi loại bỏ mắt kính 5.2.2. Kết quả thực nghiệm
Dựa trên kết quả đạt được, chương trình demo cơ bản có thé đáp ứng được các yêu
câu đặt ra:
Nhận diện có khuôn mặt người trên ảnh đầu vào Nhận diện có hoặc không có mắt kính trên ảnh đầu vào Thực hiện loại bỏ và phục hồi hình ảnh không có mắt kính
Xây dựng chương trình demo với giao diện đơn giản
Tuy nhiên, chương trình còn có giao diện khá đơn giản và còn tồn tại những hạn chế như tốc độ xử lý, kết quả đầu ra,.. cần được cải thiện cũng như phát triển thêm. Kết quả số lần chạy thực nghiệm được mô tả qua Bảng 5.2-1 dưới đây:
1 | Ảnh tự chụp khuôn mặt người trực điện có đeo kính 126
2 | Ảnh tự chụp khuôn mặt người trực diện không đeo kính 97
3 | Ảnh tải trên mạng trực diện khuôn mặt người có đeo kính 200
52
4 Anh tai trén mạng trực diện khuôn mặt người không deo 100
kinh
5 | Ảnh khác 20
Bảng 5.2-1 Bảng kết quả số lượng chạy thực nghiệm từng loại hình anh
Kết quả số lần chạy thử của từng loại ảnh được dựa trên tổng số lần chạy thực té
của từng loại anh được nhóm tác giả thực hiện va ghi nhận trong suốt quá trình thực hiện đề tài.
Sau khi tiến hành chạy thực nghiệm, kết quả tỉ lệ phần trăm của từng tập dit liệu ảnh trên số 500 ảnh cơ sở dữ liệu được thé hiện thông qua Bảng 5.2-2 như sau:
2 | Nhận diện có mat kính hay không 223 68.4
3 | Loại bỏ mắt kính và phục hồi ảnh 162 49.7
Bảng 5.2-2 Kết quả thực nghiệm Trong đó, số lượng phan trăm (%) được tính dựa trên Công thức 5.2-1 dưới đây:
Số ảnh chạy thành công thực tế
Tỉ lệ (%) = x 100 (Công thức 5.2-1)
Số lượng loại ảnh
Số liệu số lượng ảnh chạy thành công thể hiện trên Bảng 5.2-2 được ghi nhận dựa trên các phương thức đánh giá kết quả thu được được trình bày tại mục 5.2.1. Các con số này chưa thực sự chính xác tuyệt đối nhưng cho chúng ta có một cái nhìn tong quan dé đánh giá kết quả thực nghiệm của đề tài.
53
5.3. Đánh giá
Từ kết quả thực nghiệm cho thấy:
“_ Đối với tập ảnh download, kết quả nhận diện và loại bỏ mắt kính đạt hiệu
quả tốt hơn so với tập ảnh tự chụp.
= Chương trình thực nghiệm cho ra kết quả tốt hơn đối với ảnh dữ liệu là nam
giới.
“_ Đối với ảnh có độ phân giải và kích thước nhỏ, chương trình cho ra kết qua
sai như: không thể xác định được khuôn mặt người; xác định được nhiều
khuôn mặt người trên anh,...
“ Góc chụp khuôn mặt người và độ sáng của ảnh ảnh hưởng lớn đến kết quả.
= Chương trình chưa thực sự phục hồi được ảnh khuôn mặt người sau khi loại
bỏ mắt kính đối với tập dữ liệu ảnh tự chụp do chất lượng ảnh chụp còn kém.
Ưu điểm:
= Ngôn ngữ lập trình C++ dễ tiếp cận và dé dàng cho người lập trình mới bắt
đầu.
= Sử dụng thư viện xử lý ảnh OpenCV với các API và cộng đồng hỗ trợ cho
việc tiếp cận hướng giải quyết và đưa ra các giải thuật một cách dễ dàng và
chính xác hơn.
" Chương trình có thể nhận dạng và bắt được mắt kính trên ảnh trực diện
khuôn mặt người và cho kết quả khả quan.
“_ Đối với tập ảnh download trên mạng, chương trình cho kết quả loại bỏ và
phục hồi ảnh sau khi loại bỏ mắt kính khá khả quan.
=" Giao diện chương trình đơn giản, thân thiện với người dùng.
= Tuy còn đơn giản và chưa thực sự đem lại kết quả tốt, nhưng kết quả của đề
tài cho thấy việc đưa xử lý ảnh vào trong các van đề cuộc sống nói chung và nhận dạng khuôn mặt nói riêng là hoàn toàn khả thi và có thể thực hiện được
trong tương lai.
Nhược điểm:
54
Việc sử dụng OpenCV tương đối dễ dàng cho người phát triển nhưng lại
khiến người sử dụng khác khó khăn trong việc sử dung vì các bước cai đặt hệ
thống tương đối phức tạp và dài dòng.
Bộ cơ sở dữ liệu anh còn ít (522 ảnh)
Chất lượng tập dữ liệu ảnh chụp còn kém (kích thước, độ phân giải, độ sáng,
góc chụp, độ loá,...) nên kết quả nhận diện và loại bỏ chưa đáp ứng được mục tiêu đề ra
Giao diện chương trình còn đơn giản
Tốc độ xử lý của chương trình còn khá chậm
Các giải pháp loại bỏ mắt kính và phục hồi hình ảnh chưa đáp ứng được yêu cầu đề ra, cần được cải thiện và phát triển thêm.
Giải thuật mang tính tương đối, chưa thích ứng được với nhiều bài toán khác
nhau
55