GIỚI THIỆU TỔNG QUAN VỀ HỆ THỐNG XÁC ĐỊNH HƯỚNG NHÌN CỦA MẮT
Các khái niệm về việc xác định hướng nhìn của mắt
1.1.1 Cấu tạo và hoạt động của mắt
Mắt người là cơ quan chính giúp chúng ta nhìn và quan sát thế giới xung quanh, thu nhận hình ảnh và màu sắc của các sự vật Các bộ phận cấu tạo của mắt sẽ được trình bày trong các hình ảnh dưới đây, giúp hiểu rõ hơn về chức năng và cấu trúc của mắt.
Hình 1.1 Cấu tạo bên ngoài của mắt
( Nguồn: http://www.matsaigon.com/wp-content/uploads/2017/11/cau-tao-mat.jpg )
Hình 1.2 Cấu tạo bên trong của mắt
( Nguồn: http://www.matsaigon.com/wp-content/uploads/2017/11/cau-tao-mat-4.jpg )
Mắt bao gồm nhiều bộ phận, nhưng để đảm bảo chức năng nhìn, giác mạc, thủy tinh thể và võng mạc là những bộ phận cơ bản cần được chú ý.
Giác mạc là một màng trong suốt, dai và không có mạch máu, chiếm khoảng 1/5 phía trước của vỏ nhãn cầu Độ dày của giác mạc ở trung tâm mỏng hơn so với vùng rìa.
- Mống mắt hay tròng đen (Iris): là vòng sắc tố bao quanh đồng tử, quyết định màu mắt (đen, nâu, xanh…)
Đồng tử, một lỗ nhỏ màu đen ở trung tâm mống mắt, có khả năng co giãn nhờ các cơ trong mống mắt, giúp điều chỉnh lượng ánh sáng vào mắt.
Thủy tinh thể, nằm sau mống mắt, là một cấu trúc trong suốt có chức năng như một thấu kính hội tụ Nó giúp tập trung ánh sáng vào võng mạc, tạo ra hình ảnh rõ nét và cho phép con người nhìn xa gần một cách hiệu quả.
Hình 1.3 Cấu trúc võng mạc
( Nguồn: https://wit-ecogreen.com.vn/img/tbvm.jpg )
Võng mạc là lớp màng bên trong đáy mắt, có chức năng tiếp nhận ánh sáng từ thủy tinh thể và chuyển đổi thành tín hiệu thị lực qua các dây thần kinh thị giác Trung tâm võng mạc, hay hoàng điểm, là nơi sắc nét nhất của hình ảnh Võng mạc bao gồm nhiều lớp tế bào, trong đó tế bào que và tế bào nón đóng vai trò quan trọng trong việc nhận biết hình ảnh và màu sắc Lớp tế bào biểu mô sắc tố võng mạc giúp nuôi dưỡng và bảo vệ tế bào que, tế bào nón khỏi tác hại của tia cực tím, ánh sáng xanh và các chất chuyển hóa độc hại.
- Mạch máu võng mạc gồm động mạch và tĩnh mạch trung tâm võng mạc cung cấp chất dinh dưỡng giúp nuôi dưỡng mắt
1.1.1.2 Hoạt động của mắt người
Để nhìn thấy một vật, mắt cần điều tiết để hình ảnh của vật rơi đúng vào điểm vàng Quá trình điều tiết này bao gồm hai yếu tố chính.
- Điều chỉnh lượng ánh sáng đi vào mắt bằng cách co giãn đồng tử Trong tối đồng tử giãn ra và ngoài sáng đồng tử sẽ co lại
Cơ mi và thể mi điều chỉnh sự co giãn của thể thủy tinh để hội tụ hình ảnh lên võng mạc Khi cơ mi nghỉ ngơi, chúng kéo dãn và làm phẳng thể thủy tinh, giúp mắt nhìn thấy vật ở xa Để nhìn rõ vật gần, cơ mi co lại, làm cho thể thủy tinh dày lên Tuy nhiên, cơ mi chỉ có thể điều tiết trong giới hạn khoảng 12 đi-ốp; vượt quá giới hạn này sẽ khiến hình ảnh bị mờ.
Hình 1.4 Biểu đồ tia sáng tới và hình ảnh của bốn chùm tia Purkinje
( Nguồn: https://en.wikipedia.org/wiki/File:Diagram_of_four_Purkinje_images.svg )
Một đặc tính quan trọng của mắt là sự khúc xạ ánh sáng Khi ánh sáng di chuyển từ môi trường này sang môi trường khác với chiết suất khác nhau, nó sẽ bị lệch, trừ khi ánh sáng chiếu vuông góc với bề mặt tiếp giáp Hiện tượng này gọi là khúc xạ, và ánh sáng khi vào mắt sẽ bị khúc xạ tại bốn bề mặt tiếp giáp.
- (P1) giữa không khí và mặt trước giác mạc
- (P2) giữa mặt sau giác mạc và thủy dịch
- (P3) giữa thủy dịch và mặt trước thể thủy tinh
- (P4) giữa mặt sau thể thủy tinh và dịch kính
Khi ánh sáng chiếu vào đường cong giác mạc, một phần tia sáng sẽ phản xạ và một phần sẽ khúc xạ Hình ảnh từ bốn chùm tia phản xạ P1, P2, P3, P4 được gọi là chùm ảnh Purkinje Tia khúc xạ đầu tiên P1, hay còn gọi là ảnh Purkinje đầu tiên, được xem như một tia phản chiếu (glint).
Hình 1.5 Chùm ảnh Purkinje trên mắt
( Nguồn: https://en.wikipedia.org/wiki/File:030608_Pupil.jpg )
1.1.2 Khái niệm về việc xác định hướng nhìn của mắt
Xác định hướng nhìn của mắt là quá trình ước lượng và xác định điểm nhìn trong không gian 3D, cũng như trục ảo của mắt Hướng nhìn này được thiết lập khi con người chú ý và tập trung vào một đối tượng cụ thể.
Hình 1.6 Xác định hướng nhìn của mắt
( Nguồn: http://www.informatik.uni-ulm.de/ni/staff/HNeumann_bisNov08/researchInterestsFacilities/iconHCI.png )
Trục ảo của mắt được xác định là đường thẳng nối giữa điểm vàng và điểm nút của mắt Điểm nút của mắt có những đặc điểm vật lý đặc trưng, như được mô tả trong Hình 1.7.
Hình 1.7 N, N' The front and rear nodal points of a thick lens
( Nguồn: https://en.wikipedia.org/wiki/File:Cardinal-points-2.svg )
Tia sáng chiếu tới thấu kính tại điểm N và tạo góc θ với trục quang của thấu kính sẽ thoát khỏi thấu kính với cùng góc θ so với trục quang của mắt Hình 1.8 dưới đây giúp minh họa rõ hơn về trục ảo của mắt.
Hình 1.8 Sơ đồ trục ảo của mắt
To simplify calculations, a schematic representation of the eye's virtual axes is commonly utilized This diagram serves as a reference for understanding the angles and orientations within the human eye.
Hình 1.9 Sơ đồ đơn giản vể trục ảo của mắt
( Nguồn: http://cleareyesight-batesmethod.info/The%20Visual%20Axis%20and%20Central%20Ray,%20Fovea.jpg )
Tổng quan về hệ thống xác định hướng nhìn của mắt và ứng dụng
1.2.1 Tổng quan về hệ thống xác định hướng nhìn của mắt
Cho đến thời điểm hiện tại, người ta thường sử dụng một trong ba hệ thống dưới đây để giám sát và xác định hướng nhìn của mắt:
Hệ thống giám sát mắt sẽ được thiết kế dưới dạng mũ chụp hoặc kính mắt, trang bị các camera nhỏ, gương phản xạ, đèn hồng ngoại, cảm biến gyro và cảm biến gia tốc để đo đạc chuyển động và hoạt động của mắt.
Hình 1.10 Kính giám sát mắt của công ty Tobii
( Nguồn: https://imotions.com/wp-content/uploads/2016/02/eye-tracking-glasses-759x600.jpg https://www.bacharach.org/wp-content/uploads/2018/07/How-DoesEyetrackingWork_GlassesPro2.jpg )
Thiết kế nhóm 2 sử dụng phương pháp điện sinh lý học mắt (Electrooculography - EOG) để giám sát và đo đạc hoạt động của mắt bằng cách đặt các điện cực xung quanh vùng mắt.
Hình 1.11 Sử dụng phương pháp EOG để giám sát hoạt động của mắt
( Nguồn: https://metrovision.fr/images/480x300/ES_03.jpg )
- Thiết kế nhóm 3: Chỉ sử dụng các camera độc lập hoặc các camera kết hợp với các nguồn sáng để giám sát các hoạt động của mắt
Hình 1.12 Screen-Based Eye Tracking
( Nguồn: https://imotions.com/wp-content/uploads/2015/07/Image-RemoteEyeTrackinginaLab-300x269.jpg )
Nhóm phương pháp thiết kế thứ 3 trong các hệ thống xác định hướng nhìn của mắt là phương pháp mới nhất và hiện đang được sử dụng phổ biến nhất.
Hệ thống này hoạt động độc lập và không tiếp xúc trực tiếp với người được giám sát
1.2.2 Hệ thống xác định hướng nhìn của mắt và ứng dụng
Mắt nhìn là một trong những giác quan quan trọng nhất của con người, và việc giám sát giác quan này giúp chúng ta thu thập nhiều thông tin về người đang được quan sát Dưới đây là những ứng dụng phổ biến của hệ thống xác định hướng nhìn của mắt.
Công nghệ theo dõi hướng nhìn của mắt người đang mở ra những phương thức tương tác mới giữa con người và thiết bị máy móc Với khả năng điều khiển TV, điện thoại và máy tính chỉ bằng ánh mắt, công nghệ này không chỉ mang lại sự tiện lợi mà còn giúp kiểm tra tính hợp lý và tối ưu của các thiết kế web cũng như giao diện người dùng (GUI).
Hình 1.13 Điều khiển TV bằng mắt
( Nguồn: https://i2.wp.com/www.techdigest.tv/haier-eye-control-2.jpg )
Hình 1.14 Tương tác với điện thoại bằng mắt nhìn
( Nguồn: https://imotions.com/wp-content/uploads/2015/07/alex_4263_Tobii_Glasses_670x600-300x269.jpg
Việc theo dõi hướng nhìn của mắt trong nghiên cứu thị trường giúp dễ dàng nắm bắt thị hiếu của khách hàng Dữ liệu thu thập được cho phép các nhà nghiên cứu nhận diện mong muốn và cách lựa chọn sản phẩm của khách hàng Điều này cung cấp cơ sở vững chắc để điều chỉnh sản phẩm và chiến lược marketing một cách hiệu quả.
Hình 1.15 Quan sát hành vi lựa chọn sản phẩm của khách hàng thông qua hướng nhìn của mắt
( Nguồn: https://static1.squarespace.com/static/533368a4e4b0429a548a9e4d/t/55e85d56e4b0ae9da244361c/1441291611371/heatmap- eyetracking1?format00w )
- Ứng dụng trong tâm lý học và nghiên cứu hành vi của con người:
Các nhà tâm lý học có thể dự đoán cách suy nghĩ và phản ứng của con người thông qua ánh mắt, phản ánh sự tương tác với các yếu tố kích thích từ môi trường bên ngoài.
+ Thông qua việc giám sát mắt nhìn, các bác sĩ có thể kiểm soát và dự đoán được tình trạng sức khỏe và tinh thần của bệnh nhân
Theo hướng nhìn của mắt, có thể đánh giá kết quả luyện tập của vận động viên Việc bổ sung nguồn dữ liệu này giúp huấn luyện viên và bác sĩ ghi nhận, phân tích chính xác hơn mọi hoạt động của các vận động viên.
Tình hình nghiên cứu trong nước và thế giới
Kể từ đầu những năm 2000, cùng với sự phát triển mạnh mẽ của khoa học và công nghệ, nghiên cứu về computer vision đã đạt được nhiều thành tựu quan trọng Đặc biệt, việc nhận dạng con người và giám sát hành vi con người đã thu hút nhiều sự chú ý Bài viết này sẽ điểm qua một số thành tựu nổi bật liên quan đến việc xác định hướng nhìn của mắt.
Nhiều thuật toán xử lý ảnh đã được phát triển để nhận diện khuôn mặt người, với những ứng dụng đầu tiên xuất hiện từ khoảng năm 2000, cho phép xác định vị trí khuôn mặt trong hình ảnh từ các loại máy ảnh và điện thoại.
Hình 1.16 Xác định vị trí khuôn mặt khi chụp ảnh bằng điện thoại hoặc máy ảnh
(Nguồn: http://s2.media.ricoh-imaging.co.uk/en/digital-compact/optio-e90.html https://kosbr.github.io/2015/08/18/find-fragment.html )
Nghiên cứu gần đây cho thấy công nghệ computer vision có khả năng nhận diện chính xác thông tin con người trong hình ảnh Kết quả này đang được áp dụng rộng rãi trong nhiều hệ thống camera giám sát an ninh.
Hình 1.17 Hệ thống camera giám sát có khả năng nhận diện và truy vấn thông tin của người bị giám sát
( Nguồn: www.thestadiumbusiness.com/2017/06/30/nec-face-recognition-leads-way-stadium-security-trial/ )
Công nghệ giám sát hướng nhìn của mắt, như được trình bày trong các hình 1.13, 1.14 và 1.15, đã được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau Điều này đã dẫn đến sự ra đời của nhiều công ty công nghệ chuyên về giám sát hoạt động và hướng nhìn của mắt, bao gồm các tên tuổi nổi bật như Tobii, Fujitsu, SMI, EyeTech, Smart Eye và EyeLink.
Hình 1.18 Công ty Fujitsu thực hiện demo một sản phẩm giám sát hướng nhìn của mắt
( Nguồn: https://youtu.be/ZItrzSuRso4 )
Hình 1.19 Giám sát hướng nhìn của mắt khi lái xe
( Nguồn: https://en.wikipedia.org/wiki/Eye_tracking )
Ngành công nghệ kỹ thuật cao tại Việt Nam vẫn chưa phát triển mạnh mẽ, dẫn đến các nghiên cứu về computer vision chỉ đạt kết quả hạn chế Hiện nay, các nghiên cứu chủ yếu tập trung vào nhận diện dấu vân tay và xử lý ảnh để đọc biển số xe Một trong những nghiên cứu đáng chú ý gần đây là việc điều khiển xe lăn bằng cử động mắt, do kỹ sư Nguyễn Hữu Cường thực hiện dưới sự hướng dẫn của PGS.TS Huỳnh Thái Hoàng tại Trường ĐH Bách khoa - ĐHQG TP.HCM.
Mục tiêu và nhiệm vụ khi thực hiện luận văn
Mục tiêu của nghiên cứu là phát triển một hệ thống có khả năng xác định hướng nhìn của mắt, dựa trên sự chú ý và tập trung của con người khi quan sát một đối tượng cụ thể.
1.4.2 Phạm vi và nhiệm vụ của đề tài
Với đề tài nghiên cứu đã đặt ra, nội dung chính của luận văn sẽ trình bày các vấn đề sau:
- Tìm hiểu, phân tích các phương pháp xác định vị trí khuôn mặt người và mắt người đã và đang được nghiên cứu trên thế giới
- Tìm hiểu, nghiên cứu mô hình toán để đo đạc hướng nhìn của mắt
- Áp dụng các mô hình toán và các phương pháp xử lý ảnh để xây dựng một hệ thống nhúng giám sát hướng nhìn của mắt
- Phân tích, đánh giá các kết quả đạt được của nghiên cứu từ đó đưa ra hướng cải tiến, phát triển cho đề tài.
Giới thiệu tổng quát các chương
Chương 1: Giới thiệu tổng quan về các khái niệm định nghĩa có liên quan đến hệ thống xác định hướng nhìn của mắt
Chương 2: Giới thiệu về các mô hình xác định hướng nhìn của mắt đã được công bố trong và ngoài nước Phân tích ưu và nhược điểm của các mô hình khác nhau để từ đó đưa ra lựa chọn và định hướng nghiên cứu cho luận văn
Chưởng 3: Đưa ra mô hình toán và cách thức xác định hướng nhìn của mắt thông qua các dữ liệu đầu vào có được của bài toán
Chương 4: Trình bày các lý thuyết, kiến thức nền tảng về xử lý ảnh sẽ áp dụng cho đề tài
Chương 5: Trình bày cấu tạo, cách lắp đặt và cách thức hoạt động của mô hình xác định hướng nhìn của mắt
Chương 6: Tiến hành thực nghiệm và đưa ra kết quả thực nghiệm để từ đó có thể đánh giá, nhận xét và đề xuất phương hướng phát triển cho đề tài.
CÁC PHƯƠNG ÁN LỰA CHỌN CHO HỆ THỐNG XÁC ĐỊNH HƯỚNG NHÌN CỦA MẮT
Phân tích tổng quan các hệ thống xác định hướng nhìn của mắt
Như ở Chương 1, phần Tổng quan về hệ thống xác định hướng nhìn của mắt đã có nêu qua một số hệ thống xác định hướng nhìn của mắt
2.1.1 Hệ thống xác định hướng nhìn với các thiết bị camera gắn liền với người dùng
Hệ thống camera giám sát gắn liền với người dùng, thường được thiết kế dưới dạng nón chụp hoặc kính đeo, cung cấp thông số đo đạc và giám sát mắt nhanh chóng và chính xác hơn so với các phương pháp truyền thống Ngoài ra, hệ thống này còn cho phép dễ dàng lắp đặt thêm các thiết bị hoặc cảm biến để theo dõi chuyển động đầu của người dùng.
Hình 2.1 Hệ thống camera gắn liền với người dùng
( Nguồn: https://eyegaze.com/wp-content/uploads/2015/05/Eye-Tracking1.jpg https://www.kent.ac.uk/psychology/research/facilities/EL2_1.JPG )
Hệ thống này có thiết kế phức tạp và chi phí cao, yêu cầu sử dụng các thuật toán phức tạp để xử lý dữ liệu đầu vào Người dùng cũng cần đeo các sản phẩm này trong suốt quá trình sử dụng.
2.1.2 Hệ thống xác định hướng nhìn với các thiết bị điện cực đo đạc sự dịch chuyển của mắt
Hệ thống sử dụng điện cực để đo đạc và giám sát hoạt động của mắt giúp đơn giản hóa thiết kế, đồng thời giảm giá thành sản phẩm.
Hình 2.2 Xác định hướng nhìn của mắt bằng các điện cực
( Nguồn: https://neupsykey.com/wp-content/uploads/2016/07/B9781455712670000035_f03-03-9781455712670.jpg https://www.sciencedaily.com/images/2008/04/080428083418_1_540x360.jpg )
Mặc dù thiết kế này có nhiều ưu điểm, nhưng hệ thống gặp phải một số hạn chế lớn, bao gồm sự phức tạp và tốn thời gian trong quá trình lắp đặt và hiệu chỉnh Ngoài ra, việc xử lý nhiễu từ tín hiệu thu được và yêu cầu sản phẩm phải gắn chặt với da của người dùng cũng là những yếu tố cần lưu ý.
2.1.3 Hệ thống xác định hướng nhìn với các thiết bị camera tách biệt và đặt cách xa người dùng
Hệ thống camera giám sát được thiết kế với khả năng đo đạc thông tin từ xa, mang lại sự thoải mái cho người dùng vì không cần phải đeo hay mang theo thiết bị nào Thuật toán áp dụng cho hệ thống này đơn giản, giúp dễ dàng trong việc sử dụng Độ chính xác của hệ thống có thể được cải thiện bằng cách lựa chọn camera có độ phân giải cao hơn hoặc tăng cường số lượng camera giám sát.
Hệ thống này có nhược điểm là chỉ hoạt động trong một không gian giới hạn đã được xác định trước Khi con người ra khỏi vùng giám sát của camera, hệ thống sẽ không còn khả năng hoạt động hiệu quả.
2.1.4 Yêu cầu chung cho hệ thống và đưa ra kết quả lựa chọn thiết kế tổng quan
Yêu cầu chung của luận văn là:
- Thiết kế một hệ thống giám sát hướng nhìn của mắt không bắt buộc người dùng phải đem theo hoặc đeo bất kỳ thiết bị nào
- Chi phí thiết kế, lắp đặt cho hệ thống rẻ nhất có thể
- Hạn chế việc calib lại hệ thống
- Thiết kế hệ thống phải dễ dàng lắp đặt và vận hành
Phương án thứ 3, xây dựng hệ thống xác định hướng nhìn với các thiết bị camera tách biệt và đặt cách xa người dùng, là lựa chọn phù hợp nhất với các tiêu chí đã nêu.
Các phương án thiết kế với hệ thống xác định hướng nhìn của mắt sử dụng
Thiết kế tổng quan được chọn cho hệ thống giám sát hướng nhìn của mắt là phương án phổ biến nhất hiện nay Để có thiết kế chi tiết hơn, người ta thường theo một trong hai hướng chủ đạo như thể hiện trong Hình 2.4.
Hình 2.4 So sánh tổng quan giữa thiết kế không dùng và có dùng đèn hồng ngoại
( Nguồn: http://journal.jp.fujitsu.com/en/2014/09/09/01/img/index_img_1.jpg )
Các phân tích và so sánh chi tiết hơn cho từng phương án sẽ được trình bày cụ thể hơn qua các mục ngay dưới đây
2.2.1 Hệ thống chỉ sử dụng một camera
Trong lịch sử nghiên cứu xác định hướng nhìn, một số nghiên cứu đã sử dụng duy nhất một camera, điển hình là các công trình của Chen J và Ji Q, nơi họ áp dụng mô hình 3D của khuôn mặt và mắt để phân tích hướng nhìn Bên cạnh đó, các nghiên cứu của kỹ sư Nguyễn Hữu Cường và PGS.TS Huỳnh Thái Hoàng cũng đã thực hiện ước lượng hướng nhìn dựa vào các đặc trưng hình học của mắt.
Nếu chỉ sử dụng một camera, hệ thống thiết kế sẽ có được các ưu điểm sau:
Thiết kế hệ thống đơn giản giúp tối ưu hóa kích thước và giảm giá thành sản phẩm, mang lại mức giá thấp nhất so với các thiết kế khác.
- Sản phẩm sẽ dễ dàng lắp đặt và dễ sử dụng
Tuy nhiên thiết kế này cũng có các nhược điểm:
- Độ chính xác của hệ thống bị ảnh hưởng nhiều nếu ánh sáng của môi trường bị thay đổi
Kết quả ước lượng hướng nhìn của mắt dựa trên các đặc trưng hình học như vị trí của con ngươi, góc mắt và vị trí của đỉnh mũi sẽ không còn chính xác khi người dùng di chuyển đầu, chẳng hạn như xoay đầu hoặc không nhìn trực diện vào khu vực quan sát Điều này cũng xảy ra trong trường hợp khuôn mặt bị che chắn hoặc biến dạng.
- Có thể phải thực hiện calib lại tất cả các thông số của hệ thống nếu hệ thống có thêm người dùng mới
2.2.2 Hệ thống sử dụng một camera và một nguồn sáng
Công ty Fujitsu đã nghiên cứu và phát triển sản phẩm hỗ trợ người dùng cuộn hoặc phóng to màn hình bằng cách điều khiển bằng mắt Việc thêm một ràng buộc về nguồn sáng sẽ giúp cải thiện độ chính xác trong việc ước lượng hướng nhìn của mắt.
Hình 2.5 How the Corneal Reflection Method Works
( Nguồn: http://www.fujitsu.com/global/Images/20121002-02b_tcm100-839130.jpg )
Như vậy nếu lắp thêm một nguồn sáng hồng ngoại, hệ thống sẽ có được các ưu điểm:
- Tăng cường độ chính xác cho việc ước lượng hướng nhìn của mắt
- Giảm bớt ảnh hưởng của các nguồn sáng môi trường xung quanh đối với việc ước lượng hướng nhìn của mắt
- Kết quả ước lượng hướng nhìn của mắt sẽ được cải thiện kể cả với các trường hợp người dùng không nhìn trực diện vào vật thể
Tuy nhiên, lựa chọn này cũng có các khuyết điểm:
- Giá thành sản phẩm sẽ tăng
- Thiết kế và lắp đặt hệ thống sẽ phức tạp hơn
- Việc calib cho hệ thống trở nên phức tạp hơn
2.2.3 Hệ thống sử dụng một camera và hai nguồn sáng
Với thiết kế này có một số nghiên cứu đã được công bố như:
- Nghiên cứu của White K và các đồng nghiệp [3] đã cải tiến độ chính xác cho máy tính cá nhân được điều khiền bằng mắt
Nghiên cứu của Guestrin E và Eizenman M đã phát triển các lý thuyết tổng quan nhằm ước lượng hướng nhìn của mắt, bao gồm thuật toán xác định hướng nhìn thông qua việc sử dụng camera và nguồn sáng.
- Morimoto C và các đồng nghiệp với nghiên cứu chi tiết cho mô hình một camera và hai nguồn sáng ở tài liệu [5]
Thiết kế này có các ưu điểm:
- Kết quả xác định hướng nhìn của mắt được cải thiện một cách rõ rệt so với khi sử dụng 1 nguồn sáng
- Ảnh hưởng của việc dịch chuyển đầu hay không nhìn vật thể một cách trực diện được giảm thiểu
- Do dùng nguồn sáng hồng ngoại nên hệ thống ít bị ảnh hưởng bởi sự thay đổi của ánh sáng môi trường xung quanh
- Có thể thực hiện calib hệ thống một cách độc lập với người dùng
Nhược điểm của hệ thống cũng tương tự với trường hợp sử dụng một nguồn sáng:
- Tốn thêm chi phí khi lắp thêm nguồn sáng thứ hai
- Thiết kế và lắp đặt hệ thống sẽ phức tạp hơn
- Việc calib cho hệ thống trở nên phức tạp hơn
- Các sai số về mối liên hệ vị trí giữa các thiết bị sẽ dẫn đến sai số rất lớn cho việc ước lượng hướng nhìn của mắt
2.2.4 Hệ thống sử dụng một camera và nhiều nguồn sáng
Trong trường hợp này, người ta thường kết hợp các thuật toán để vận hành hệ thống với một hoặc hai nguồn sáng Ngoài ra, các đề xuất về thuật toán và mô hình toán mới cũng được đưa ra, như nghiên cứu của Coutinho F và Morimoto C, trong đó họ sử dụng các tính toán hồi quy để xác định hướng nhìn của mắt Thiết kế này mang lại nhiều ưu điểm cho hệ thống.
- Độ chính xác của hệ thống sẽ tăng lên so với khi chỉ dùng một hoặc hai nguồn sáng
- Có thể thực hiện calib hệ thống một cách độc lập với người dùng
- Khi sử dụng quá nhiều nguồn sáng sẽ rất khó khăn để phân tách và xác định vị trí các đốm sáng trên mắt
- Nếu dùng quá nhiều nguồn sáng sẽ ảnh hưởng đến sức khỏe của người dùng
- Chi phí thiết kế hệ thống sẽ tăng lên
2.2.5 Hệ thống sử dụng nhiều camera
Tương tự như trường hợp sử dụng một camera để giám sát hướng nhìn của mắt, với thiết kế này:
- Độ chính xác của hệ thống tăng lên so với khi chỉ sử dụng một camera
- Có thể xây dựng được mô hình 3D cho khuôn mặt của người dùng, từ đó có thể ước lượng sự dịch chuyển, xoay đầu của người dùng
Tuy nhiên nó cũng các có nhược điểm:
- Giá thành thiết kế hệ thống sẽ tăng lên khá nhiều trong khi độ chính xác của hệ thống được cải thiện không quá nhiều
- Quá trình calib cho hệ thống khá phức tạp
2.2.6 Hệ thống sử dụng nhiều camera và một nguồn sáng
Thiết kế hệ thống sử dụng camera và nguồn sáng để kết hợp với các thuật toán xây dựng mô hình 3D cho khuôn mặt nhằm xác định hướng nhìn của mắt Tuy nhiên, hiệu quả đo đạc không cải thiện đáng kể so với chi phí đầu tư.
2.2.7 Hệ thống sử dụng nhiều camera và nhiều nguồn sáng
Với thiết kế này có các nghiên cứu đã được công bố như:
- Lý thuyết tổng quan về việc xác định hướng nhìn của mắt do Guestrin E và Eizenman M [4] công bố
Guestrin đã thực hiện thí nghiệm hệ thống xác định hướng nhìn sử dụng 2 camera và 4 nguồn sáng, và kết quả của nghiên cứu này được ghi lại trong luận văn của ông.
- Arar N và Thiran J [8] đã tiến hành nghiên cứu với các mô hình thiết kế khác nhau và đưa ra các so sánh như bảng tóm tắt dưới đây
TABLE V: Comparison of existing eye tracking systems In ”Cam(s)” column, * indicates that a pan-tilt unit is employed
The "Calib." column specifies the need for explicit camera and scene geometry calibrations, with "fully" indicating both are necessary and "pre" signifying that the sensor is pre-calibrated In the "Accuracy" section, "SH" refers to stable head scenarios, while "MH" pertains to moving head scenarios The results presented are based on person-specific scenarios within the dataset evaluations, unless otherwise noted.
The "HP" column denotes whether users' head poses were stabilized, such as with a chinrest The "FoV" column illustrates the system's working volume through "FL," which represents the focal length in millimeters; a shorter focal length corresponds to a wider field of view (FoV).
Hình 2.6 Comparison of existing eye tracking systems
( Nguồn: Tài liệu Robust Real-Time Multi-View Eye Tracking [8] )
Thông qua các nghiên cứu đã được công bố, có thể thấy rằng:
- Độ chính xác của hệ thống tăng lên nếu tăng cường số lượng camera và nguồn sáng một cách hợp lý
Hệ thống sử dụng đồng thời nhiều camera để kết hợp với các thuật toán xác định góc xoay của đầu, từ đó nâng cao độ chính xác trong việc ước lượng hướng nhìn của mắt.
Quá trình hiệu chuẩn hệ thống có thể được thực hiện một cách độc lập, giúp giảm thiểu các thông số phụ thuộc vào người dùng, chẳng hạn như bán kính cong của giác mạc.
Ngoài các ưu điểm có được, thiết kế này cũng có các nhược điểm:
- Giá thành lắp đặt hệ thống sẽ tăng rất nhiều, đặc biệt là trường hợp tăng số lượng camera cho hệ thống
Khi số lượng nguồn sáng tăng quá nhiều, độ chính xác của hệ thống đo đạc sẽ giảm sút, dẫn đến việc khó khăn trong việc tách và xác định vị trí các đốm sáng Điều này có thể khiến các đốm sáng trên mắt chồng lấn lên nhau Hơn nữa, việc tăng cường nguồn sáng quá mức cũng có thể gây ảnh hưởng xấu đến mắt của người dùng.
- Việc lắp đặt hệ thống phức tạp hơn và thời gian calib cho hệ thống cũng tăng lên
2.3 Phương án thiết kế chi tiết cho luận văn
2.3.1 Phân tích lại sự thỏa mãn yêu cầu của các phương án thiết kế
Camera là thiết bị quan trọng và đắt giá nhất trong hệ thống xác định hướng nhìn của mắt, ảnh hưởng trực tiếp đến chất lượng và giá thành của toàn bộ hệ thống Khi lựa chọn camera, cần xem xét các yếu tố như chất lượng, độ phân giải và kích thước khung ảnh Việc tăng số lượng camera chỉ cần thiết nếu yêu cầu độ chính xác cao và không gian hoạt động của người dùng rộng, ngược lại, nếu không, việc bổ sung camera là không cần thiết.
MÔ HÌNH TOÁN ĐỂ XÁC ĐỊNH HƯỚNG NHÌN CỦA MẮT
Các giả thuyết ban đầu và quy ước cho mô hình toán
3.1.1 Các giả thuyết ban đầu
- Các nguồn sáng được xem như nguồn sáng điểm
- Các camera theo mô hình camera pinhole
- Mặt cong giác mạc được xem như mặt cầu
- Tâm của mặt cong giác mạc, tâm đồng tử, tâm quay của mắt nằm trên trục quang của mắt
- Tâm quang của mắt trùng với tâm mặt cong giác mạc
Có thể xác định chính xác vị trí các nguồn sáng và thông số của camera, đồng thời xác định tọa độ 2D của tâm đồng tử và các đốm sáng trên mắt trên khung ảnh số.
3.1.2 Các ký hiệu dùng trong mô hình toán
Hình 3.1 Sơ đồ mối quan hệ giữa tia sáng, mắt và camera
Hình 3.1 mô tả các ký hiệu quan trọng trong hệ thống quang học, bao gồm: l i - nguồn sáng thứ i, o j - tâm quang của camera thứ j, v j - ảnh của tâm đồng tử trên camera j, u ij - ảnh của nguồn sáng thứ i trên camera j, q ij - điểm phản xạ của nguồn sáng thứ i đối với camera j, r j - điểm khúc xạ trên bề mặt mắt của tia sáng từ tâm đồng tử vào camera j, p - tâm đồng tử, và c - tâm của đường cong giác mạc, cũng là tiêu điểm của mắt.
R – là bán kính cong của giác mạc
K – là khoảng cách từ tâm đường cong giác mạc c đến tâm đồng tử p
3.1.3 Các hệ trục tọa độ dùng trong mô hình toán
(a) Hệ tọa độ thực ; (b) Hệ tọa độ camera ; (c) Hệ tọa độ ảnh
Hình 3.2 Các hệ trục tọa độ trong mô hình toán
Hệ tọa độ thực là một hệ trục tọa độ Descartes bao gồm các trục X, Y và Z, trong đó mặt phẳng XY trùng với mặt phẳng màn hình và gốc tọa độ nằm ở tâm màn hình Trục X nằm ngang và các tọa độ được tính theo đơn vị milimet (mm).
Hệ tọa độ camera là một hệ trục tọa độ Descartes bao gồm các trục x, y, z, trong đó mặt phẳng xy tương ứng với mặt phẳng của cảm biến thu ảnh như CCD hoặc CMOS Trục z của hệ tọa độ trùng với trục quang của camera, trong khi trục x hướng theo hàng của cảm biến Các tọa độ được tính theo đơn vị mm.
Hệ tọa độ ảnh là một hệ trục tọa độ 2 chiều, bao gồm hai trục r (hàng) và c (cột), được đo bằng pixel từ góc trên bên trái của ảnh.
Mô hình toán áp dụng cho thiết kế đã được lựa chọn
3.2.1 Các phương trình và tính khả thi của bài toán
Hình 3.3 Sơ đồ nguồn sáng và ảnh phản xạ của nguồn sáng trên camera
Có thể quan sát lại sự phản xạ của chùm tia sáng thứ nhất l 1 ở Hình 3.3 Do q 11 là điểm phản xạ của chùm tia l 1 trên bề mặt giác mạc nên:
‖𝐪 11 − 𝐜‖ = 𝑅 ; (R là bán kính cong của giác mạc) (3.1)
Theo định luật phản xạ ánh sáng, góc tới và góc phản xạ luôn bằng nhau, và tia tới, tia phản xạ cùng với đường pháp tuyến nằm trong cùng một mặt phẳng Do đó, vector tại điểm q 11 sẽ vuông góc với bề mặt giác mạc.
- Điều kiện để các điểm 𝐥 1 , 𝐪 11 , 𝐨 1 , 𝐜 đồng phẳng:
Vì tia phản xạ (𝐨 1 − 𝐪 11 ) đi qua tâm quang của camera nên ba điểm 𝐪 11 , 𝐨 1 và
𝐮 11 sẽ cùng nằm trên một đường thẳng và ta có được biểu thức:
𝐪 11 = 𝐨 1 + 𝑘 𝑞11 (𝐨 1 − 𝐮 11 ); 𝑘 𝑞11 là hệ số (3.4) Tương tự với chùm sáng xuất phát từ nguồn sáng thứ hai l 2, ta cũng có được các biểu thức:
‖𝐪 21 − 𝒄‖ = 𝑅 ; (R là bán kính cong của giác mạc) (3.5) [(𝐥 2 − 𝐪 21 ) × (𝐪 21 − 𝐜)] ‖𝐨 1 − 𝐪 21 ‖ = [(𝐨 1 − 𝐪 21 ) × (𝐪 21 − 𝐜)] ‖𝐥 2 − 𝐪 21 ‖ (3.6)
Hình 3.4 Sơ đồ ảnh thu được của tâm đồng tử p
Có thể quan sát lại Hình 3.4, xem xét với K là khoảng cách giữa ảnh tâm đồng tử p và tâm cong giác mạc c, ta sẽ có phương trình:
Xem xét tia sáng đi từ p qua tâm quang của camera o 1, giao với mặt phẳng ảnh của camera tại v 1, như vậy:
Trong bài viết này, chúng ta xem xét phương trình 𝐩 = 𝐨 1 + 𝑘 𝑝 (𝐨 1 − 𝐯 1 ) với 𝑘 𝑝 là hệ số (3.10) Giả sử tọa độ thực của các điểm l 1, l 2, o 1, u 11, u 21 và v 1 đã được xác định, cùng với các thông số mắt R và K đã tìm được Các phương trình từ hệ thống bao gồm 7 biểu thức vô hướng và 3 biểu thức vector, với mỗi biểu thức vector có thể chia thành 3 biểu thức vô hướng tương ứng với các trục tọa độ X, Y, Z Tổng cộng, chúng ta có 16 phương trình.
Hình 3.5 Ý tưởng chính của mô hình toán nằm ở vectơ chỉ phương b
Trong 16 phương trình đã nêu, có 15 đại lượng vô hướng chưa biết, bao gồm tọa độ thực của 4 điểm: q11, q21, p và c, với mỗi tọa độ điểm bao gồm 3 đại lượng tương ứng với các trục X, Y, Z Bên cạnh đó, còn có các hệ số vô hướng chưa biết như k q11, k q12 và k p Điều này cho thấy bài toán có thể giải được Nếu giả sử hệ thống chỉ sử dụng một nguồn sáng, ta sẽ có những điều kiện khác cho việc giải quyết bài toán.
4 biểu thức vô hướng và 2 biểu thức vector Điều này tương ứng với việc hệ thống sẽ có
10 phương trình, nhưng lại có tới 11 đại lượng vô hướng chưa biết (q 11, p, c, k q11 và k p )
Do đó, với trường hợp chỉ sử dụng một nguồn sáng, ta sẽ không thể sử dụng mô hình toán này để áp dụng cho hệ thống
3.2.2 Giải các phương trình và tìm ra hướng nhìn của mắt
3.2.2.1 Giải các phương trình Ở các công thức (3.3) và (3.4) có nhắc đến các điểm l 1, q 11, o 1, u 11 và c là đồng phẳng Tương tự như vậy ở các công thức (3.7) và (3.8) đã chứng minh các điểm điểm l 2, q 21, o 1, u 21 và c là đồng phẳng Từ các thông tin này ta có thể suy ra o 1 và c cùng nằm trên giao tuyến của hai mặt phẳng vừa nêu trên Vectơ chỉ phương của đường giao tuyến này có thể được biểu diễn như sau:
‖[(𝐮 11 − 𝐨 1 ) × (𝐥 1 − 𝐨 1 )] × [(𝐥 2 − 𝐨 1 ) × (𝐮 21 − 𝐨 1 )]‖ (3.11) Nếu b ≠ 0⃗ , tâm của mặt cong giác mạc c có thể viết lại dưới dạng:
Công thức 𝐜 = 𝐨 1 + 𝑘 𝑐 𝐛 𝑛𝑜𝑟𝑚 (3.12) mô tả mối quan hệ giữa khoảng cách giữa tâm mặt cong giác mạc và tâm quang của camera, với 𝑘 𝑐 là hệ số dương Để đảm bảo điều kiện b ≠ 0⃗, các nguồn sáng và camera cần được sắp xếp theo hình chữ V.
Lấy phương trình (3.4) trừ đi phương trình (3.12) rồi thế vào phương trình (3.1) ta sẽ có biểu thức:
‖𝐪 11 − 𝐜‖ = ‖𝑘 𝑞11 (𝐨 1 − 𝐮 11 ) − 𝑘 𝑐 𝐛 𝑛𝑜𝑟𝑚 ‖ = 𝑅 (3.13) Công thức trên có thể được viết lại:
Từ phương trình (3.1) và (3.12), ta nhận thấy rằng q11 phải nằm trên đường tròn có tâm c và bán kính R, đồng thời cũng nằm trên đường thẳng o1 u11 Giải phương trình bậc 2 theo biến k q11 trong phương trình (3.14) sẽ cho ra hai nghiệm, trong đó nghiệm âm sẽ được giữ lại vì nó xác định vị trí của q11 trên bề mặt giác mạc.
Biểu thức (3.15) sẽ được thay thế vào công thức (3.4) để diễn tả q11 như một hàm của trị k c_1 Cần lưu ý rằng tọa độ các điểm o1 và l1 đã được xác định trước, trong khi tọa độ c được biểu diễn thông qua k c như đã nêu trong biểu thức (3.12).
Tương tự, áp dụng cách tính toán này với các biểu thức (3.5), (3.8) và (3.12) ta sẽ thu được k q21:
Biểu thức (3.16) sẽ được thay thế vào biểu thức (3.8) để biểu diễn q21 như một hàm của biến kc2 Tiếp tục, kết quả tìm được sẽ được đưa vào biểu thức (3.6) để giải và tìm ra giá trị của kc2 Sau các bước tính toán này, giá trị kc sẽ được xác định là giá trị trung bình của kc1 và kc2.
Tương tự cách tính toán đã nêu, kết hợp các biểu thức (3.9), (3.10) và (3.12) sẽ tìm được biểu thức tính k p theo k c như sau:
Dựa vào giá trị của k c và b norm đã xác định ở bước trước, chúng ta có thể dễ dàng tính toán giá trị k p Từ đó, tọa độ của các điểm c và p cũng được xác định một cách rõ ràng.
3.2.2.2 Tìm ra hướng nhìn của mắt
Hình 3.6 Điểm nhìn của mắt
Để xác định điểm nhìn của mắt, cần chú ý đến giao điểm g giữa trục ảo của mắt và màn hình Trục ảo là đường thẳng đi qua tâm quang và hố thị giác, lệch khoảng 5 độ so với trục quang Tâm quang di chuyển tương đối với tâm mặt cong giác mạc c, phụ thuộc vào sự điều tiết của mắt, nhưng khoảng cách giữa chúng luôn nhỏ hơn 1mm Để đơn giản hóa tính toán, có thể giả định rằng tâm quang trùng với c.
Biểu diễn hướng trục quang của mắt thông qua các góc xoay, với eye là góc theo phương ngang (phương X) và eye là góc theo phương đứng (phương Y) của trục quang, như minh họa trong Hình 3.7.
Hình 3.7 Mô hình trục quang của mắt
Dựa trên Hình 3.7, ta có thể biểu diễn trục quang của mắt bằng phương trình sau:
𝐩 = 𝐜 + 𝐾 [ cos φ eye sin θ eye sin φ eye
Khoảng cách giữa c và p được ký hiệu là K Để xác định hướng của trục ảo, ta sử dụng các góc theo phương ngang ( eye + eye) và phương đứng ( eye + eye) Tham khảo Hình 3.6 và Hình 3.7, vị trí điểm g có thể được xác định thông qua một phương trình cụ thể.
𝐠 = 𝐜 + 𝑘 𝑔 [ cos(φ eye + β eye ) sin(θ eye + α eye ) sin(φ eye + β eye )
− cos(φ eye + β eye ) cos(θ eye + α eye )
]; k g là khoảng cách giữa c và g (3.19)
Hệ trục tọa độ gốc được đặt tại trung tâm màn hình, dẫn đến giá trị g Z bằng 0 Từ đó, chúng ta có thể thực hiện các phép tính cần thiết.
Trong quá trình tính toán, công thức 𝑘 𝑔 = 𝐜 Z cos(φ eye + β eye ) cos(θ eye + α eye ) (3.20) cần được áp dụng với điều kiện β eye > 0, trong đó α eye < 0 cho mắt phải và α eye > 0 cho mắt trái Sau khi xác định tọa độ của điểm c và p, ta sử dụng công thức (3.18) để tính toán trục quang của mắt, cụ thể là φ eye = sin −1 𝐩 Y − 𝐜 Y.
𝐩 Z − 𝐜 Z (3.22) Khi có được giá trị θ eye và φ eye , điểm nhìn g có thể tìm được thông qua các biểu thức (3.19) và (3.20).
CƠ SỞ LÝ THUYẾT XỬ LÝ ẢNH ÁP DỤNG CHO NGHIÊN CỨU 32 4.1 Cơ sở lý thuyết xử lý ảnh số
Giới thiệu về ảnh số
4.1.1.1 Ảnh số là gì? Ảnh số (“digital image” hay còn được biết đến như “raster image” hoặc
Hình ảnh bitmapped là tập hợp các pixel được sắp xếp theo hàng và cột, tạo nên một bức ảnh số Mỗi pixel là phần tử nhỏ nhất, chứa thông tin về độ sáng và màu sắc tại vị trí của nó trong bức ảnh.
Trên thức tế, tùy vào mục đích sử dụng, người ta sẽ sử dụng các loại ảnh số khác nhau như:
Ảnh màu được cấu thành từ ba lớp màu khác nhau, mỗi pixel bao gồm ba kênh màu phối hợp để thể hiện cường độ và độ sắc nét của ánh sáng Các hệ màu phổ biến bao gồm RGB, HSL/HSV, YCbCr, YUV, CIE và CMYK, nhưng hệ màu RGB thường được sử dụng rộng rãi nhất.
3 lớp màu đỏ, màu lục và màu lam để thể hiện màu sắc của ánh sáng
Hình 4.1 Ảnh số được cấu tạo bởi 3 lớp màu
( Nguồn: https://i.ytimg.com/vi/ZqUotba3V5Y/maxresdefault.jpg )
Bằng cách trộn lẫn ba màu cơ bản, chúng ta có thể tạo ra mọi màu sắc Nếu mỗi màu có 256 mức cường độ và mỗi pixel được lưu trữ trong 3 bytes (24 bits), chúng ta có khả năng tạo ra một lượng màu sắc khổng lồ.
Hình 4.2 Sự trộn phối các màu cơ bản
( Nguồn: https://zw098csf0g-flywheel.netdna-ssl.com/wp-content/uploads/2017/12/Depositphotos_78832566_s-2015.jpg )
Ảnh xám (Grayscale image) là loại ảnh trong đó mỗi pixel chứa giá trị biểu thị mức xám tại vị trí tương ứng Mức xám được phân chia thành 256 cấp độ từ đen đến trắng, mặc dù mắt người chỉ có khả năng phân biệt khoảng 200 mức Sự phân chia này giúp tạo ra một dải mức xám liên tục, cho phép người xem cảm nhận được độ sâu và chi tiết của hình ảnh.
Hình 4.3 Dải mức xám từ đen đến trắng trong ảnh xám
( Nguồn: http://rosettacode.org/mw/images/f/f1/GrayscalesR.png http://www.cs.sfu.ca/CourseCentral/166/tjd/color.html )
- Ảnh nhị phân (binary image): là ảnh số mà mỗi pixel chỉ có thể chứa giá trị 0 hoặc
1 Có nghĩa là mỗi pixel chỉ có thể thể hiện được 2 màu sắc: màu trắng hoặc màu đen Như vậy, trong một bức ảnh nhị phân, nếu màu đen được chọn làm màu nền, thì màu trắng sẽ là màu thể hiện vật thể và ngược lại
4.1.1.2 Độ phân giải của ảnh số Độ phân giải của ảnh là mức độ chi tiết, số lượng thông tin được chứa trong một bức ảnh Một bức ảnh số có độ phân giải càng cao thì nó sẽ chứa càng nhiều thông tin hơn, ảnh sẽ nhìn càng rõ nét và chi tiết hơn
Hình 4.5 Các ảnh thể hiện chữ R có cùng kích thước với độ phân giải ảnh khác nhau
Độ phân giải của bức ảnh được đo bằng nhiều phương pháp khác nhau, trong đó phổ biến nhất là đếm tổng số pixel Số lượng pixel này được gọi là số megapixels, được tính bằng cách nhân tổng số hàng pixel với tổng số cột pixel và chia cho một triệu Ngoài ra, độ phân giải cũng có thể được thể hiện qua số lượng pixel trên một đơn vị chiều dài hoặc diện tích, như pixels/inch hoặc pixels/inch².
Ngoài ra còn có các cách đo đạc mức độ phân giải bổ sung cho bức ảnh số như Spatial resolution và Spectral resolution
Giới thiệu về xử lý ảnh số
Xử lý ảnh là quá trình áp dụng các thuật toán lên ảnh số nhằm tạo ra bức ảnh mới hoặc trích xuất thông tin mong muốn từ ảnh gốc Quá trình này tương tự như một hệ thống phân phối, trong đó đầu vào là hình ảnh từ máy ảnh, camera, video hoặc ảnh số, và đầu ra là bức ảnh đã được chỉnh sửa hoặc các thuộc tính, thông tin liên quan đến bức ảnh đó.
Hệ thống xử lý ảnh cơ bản sẽ bao gồm 3 bước:
- Thu thập hình ảnh đầu vào bằng các máy quét quang học hoặc lấy trực tiếp từ các bức ảnh số
Phân tích và xử lý hình ảnh bao gồm nén dữ liệu, tăng cường độ sắc nét và đánh dấu các điểm nổi bật Quá trình này có thể được chia thành ba cấp độ khác nhau.
Hình 4.6 Phân chia các cấp độ xử lý ảnh
Kết quả cuối cùng của quá trình xử lý ảnh có thể là một bức ảnh đã được chỉnh sửa hoặc một chuỗi thông tin được trích xuất từ việc phân tích hình ảnh.
Mục đích của việc xử lý ảnh có thể chia ra thành 5 nhóm:
- Nhóm 1: Kiểm tra xem một vật thể nào đó có xuất hiện trong bức ảnh hay không
- Nhóm 2: Tăng độ sắc nét, khôi phục lại các thông tin bị mất trên ảnh
- Nhóm 3 Tìm kiếm các vùng đặc biệt của ảnh
- Nhóm 4: Đo đạc kích thước các vật thể trong ảnh
- Nhóm 5: Phân biệt và phát hiện các vật thể khác nhau trong ảnh.
Chuyển ảnh màu thành ảnh xám hoặc ảnh nhị phân
4.1.3.1 Chuyển ảnh màu thành ảnh xám
Tại mỗi pixel của ảnh số, người ta thường sử dụng 1 trong 3 cách sau đây để chuyển ảnh màu thành ảnh xám:
- Phương pháp lightness: lấy trung bình giá trị màu cao nhất và thấp nhất của pixel để tính ra giá trị mức xám I tại pixel đó
- Phương pháp lấy giá trị trung bình: Lấy giá trị trung bình của 3 màu Red, Green, Blue của pixel để tính ra giá trị mức xám I tại pixel đó
Phương pháp luminosity tính toán giá trị mức xám của từng pixel bằng cách áp dụng trọng số cho các màu Red, Green, Blue Các trọng số này được nghiên cứu dựa trên sự phát triển của các dòng TV khác nhau Đối với các dòng TV analog cũ, hệ màu PAL hoặc NTSC được sử dụng để hiển thị ảnh màu trắng đen.
Mức xám I = 0.299R + 0.587G + 0.114B (4.3) Công thức (4.3) cũng là công thức mặc định để chuyển ảnh màu sang ảnh xám trong các thư viện xử lý ảnh như OpenCV
Với các dòng High-definition television (HDTV):
Mức xám I = 0.2126R + 0.7152G + 0.0722B (4.4) Với HDR television để có được ảnh màu trắng đen:
Để chuyển đổi ảnh màu sang ảnh xám, công thức Mức xám I = 0.2627R + 0.6780G + 0.0593B được sử dụng Phương pháp lấy giá trị trung bình có thể tạo ra ảnh xám quá tối, trong khi phương pháp lightness làm giảm độ tương phản của ảnh trắng đen Do đó, phương pháp luminosity thường được ưa chuộng vì nó giữ được độ tương phản và độ sáng cho bức ảnh xám đầu ra.
Trong một số trường hợp đặc biệt, ảnh xám đầu ra từ cả ba phương pháp trên có thể rất giống nhau, khiến việc xác định phương pháp nào hiệu quả hơn trở nên khó khăn.
4.1.3.2 Chuyển ảnh màu sang ảnh nhị phân Để chuyển ảnh màu sang ảnh nhị phân, trước tiên ảnh màu sẽ được chuyển sang ảnh xám và sau đó ảnh xám này sẽ được chuyển đổi sang ảnh nhị phân
4.1.3.3 Ảnh xám chuyển sang ảnh nhị phân
Chuyển đổi ảnh xám sang ảnh nhị phân được thực hiện bằng cách xác định ngưỡng cường độ sáng cho từng điểm ảnh, với T là giá trị ngưỡng cường độ sáng.
- Gọi I(x,y) là giá trị cường độ sáng tại điểm ảnh có tọa độ x, y
- Gọi b(x,y) là giá trị pixel của ảnh nhị phân tại điểm ảnh có tọa độ x, y
Các phương pháp lọc nhiễu và làm trơn ảnh
Trong xử lý ảnh số, để lọc nhiễu và làm mịn ảnh, người ta sử dụng các mặt nạ số, hay còn gọi là kernel, mask, hoặc filter Các mặt nạ này là ma trận số 2D được trượt trên ma trận ảnh số để thực hiện các phép toán Cách thức hoạt động của các mặt nạ số này được minh họa trong Hình 4.7 bên dưới.
Khi áp dụng mặt nạ 3x3 lên khung ảnh số, ta có thể dịch chuyển tâm của mặt nạ từ trái sang phải và từ trên xuống dưới để thực hiện các phép tính toán, từ đó tạo ra ảnh đã được lọc Hình 4.7 minh họa cách tính toán giá trị cho một pixel của ảnh sau khi lọc.
Khi áp dụng mặt nạ lên khung ảnh số, chúng ta thường gặp phải một số vấn đề liên quan đến vùng rìa của ảnh Để khắc phục những tình huống này, có một số giải pháp hiệu quả đã được đề xuất.
Trong trường hợp 1, ảnh số trước và sau khi xử lý lọc nhiễu sẽ có kích thước giống nhau Giá trị của từng pixel trong ảnh đầu ra được tính bằng cách quét tâm của mặt nạ (kernel) trên toàn bộ khung ảnh số đầu vào, sau đó tổng hợp các cặp điểm tương ứng giữa mặt nạ và ảnh Để thực hiện các phép toán ở phần rìa của ảnh số, cần mở rộng ảnh đầu vào bằng cách thêm các pixel có giá trị 0, như được minh họa trong hình bên dưới.
Hình 4.8 Ảnh số trước và sau xử lý lọc nhiễu có cùng kích thước
( Nguồn: https://2.bp.blogspot.com/_b1r1UJs_aVQ/ShJnoWlELxI/AAAAAAAAAA8/jQd-YniOsoM/s400/20090114081152591.jpg.jpg )
- Trường hợp 2: Nếu ảnh số có kích thước 𝑚 × 𝑛 (pixels), mặt nạ có kích thước là
Khi áp dụng mặt nạ kernel kích thước 𝑖 × 𝑘 (pixels) lên ảnh đầu vào, kích thước ảnh đầu ra sẽ là (𝑚 + 𝑖 − 1) × (𝑛 + 𝑘 − 1) Giá trị của mỗi pixel trong ảnh đầu ra được tính bằng cách quét tuần tự từng pixel của mặt nạ kernel lên ảnh đầu vào và tính tổng tích các cặp điểm tương ứng Trong quá trình này, những điểm nằm ngoài vùng ảnh số trên mặt nạ kernel sẽ có giá trị tích bằng 0.
Hình 4.9 Ảnh số sau xử lý lọc nhiễu có kích thước lớn hơn kích thước ảnh đầu vào
- Trường hợp 3: Nếu ảnh số có kích thước là 𝑚 × 𝑛, mặt nạ kernel kích thước là
Khi thực hiện phép toán 𝑖 × 𝑗, kích thước ảnh đầu ra sẽ là (𝑚 − 𝑖 + 1) × (𝑛 − 𝑘 + 1) Giá trị của từng pixel trong ảnh đầu ra được tính toán tương tự như các trường hợp trước, nhưng trong trường hợp này, mặt nạ kernel luôn nằm hoàn toàn bên trong khuôn ảnh số đầu vào trong suốt quá trình quét.
Hình 4.10 Ảnh số sau xử lý lọc nhiễu có kích thước nhỏ hơn kích thước ảnh đầu vào
( Nguồn: http://3.bp.blogspot.com/_b1r1UJs_aVQ/ShJqavR41yI/AAAAAAAAABc/dD410-NwLXI/s1600-h/20090114084801528.jpg )
Các công thức toán tổng quan về lọc nhiễu và làm trơn ảnh
Dựa trên ý tưởng và phương pháp lọc ảnh đã được trình bày, về mặt toán học, người ta phân chia thành hai phương pháp lọc ảnh chính.
- Lọc ảnh theo phương pháp Cross-correlation: Một ảnh số 2D f[i,j] được lọc bởi mặt nạ kernel 2D h[u,v] để tạo thành một ảnh mới g[i,j]
Biểu thức trên còn được gọi là phép toán cross-correlation và nó có thể viết gọn lại như sau:
Lọc ảnh theo phương pháp Convolution sử dụng phép toán tương tự như cross-correlation, nhưng với điểm khác biệt là mặt nạ kernel của convolution được đối xứng theo cả phương ngang và phương dọc Nói cách khác, phép lọc convolution thực chất là phép lọc cross-correlation với mặt nạ được đối xứng trước khi áp dụng vào việc lọc ảnh Công thức của phép toán convolution có thể được diễn đạt lại một cách rõ ràng.
Công thức rút gọn của phép toán convolution:
Phép toán cross-correlation thường được sử dụng để tìm kiếm các vùng ảnh tương tự như ảnh mẫu, trong khi phép toán convolution chủ yếu được áp dụng để lọc nhiễu và làm mờ ảnh số Nếu mặt nạ kernel được sử dụng theo cách đối xứng, thì hai phép toán này sẽ trở nên giống nhau hoàn toàn.
Với phép toán convolution, phép toán này có các đặc điểm nổi bật như sau:
𝑓 ∗ (𝑔 + ℎ) = (𝑓 ∗ 𝑔) + (𝑓 ∗ ℎ) (4.13) a(𝑓 ∗ 𝑔) = (a𝑓) ∗ 𝑔 = 𝑓 ∗ (a𝑔) (4.14) (𝑓 ∗ 𝑔) ′ = 𝑓 ′ ∗ 𝑔 = 𝑓 ∗ 𝑔 ′ (4.15) Trong đó: f, g và h là các hàm tùy ý; a là hằng số
Để áp dụng các phép toán lên ảnh số, ta có thể sử dụng các thuật toán trên mặt nạ kernel trước, sau đó thực hiện việc áp dụng và trượt mặt nạ kernel trên ảnh để tiến hành tính toán.
Gradient của ảnh số
Gradient trong ảnh số là một vector chỉ hướng thể hiện tốc độ thay đổi cường độ ánh sáng hoặc màu sắc Để xác định gradient tại một điểm cụ thể trong ảnh, ta sử dụng công thức phù hợp.
𝑑 𝑦 là gradient theo phương y Trong đó: 𝑑 𝑥 , 𝑑 𝑦 là khoảng dịch chuyển hay khoảng cách giữa các pixel đang xem
Hình 4.11 Gradient của 1 điểm ảnh theo các hướng khác nhau
Hình 4.12 Ví dụ về gradient của ảnh theo lần lượt 2 phương x và y
( Nguồn: https://en.wikipedia.org/wiki/Image_gradient )
Hướng của gradient tại một điểm ảnh xác định bằng công thức:
𝑔 𝑥 ) (4.17) Độ lớn của gradient tại một điểm ảnh được xác định bằng công thức:
Các công thức được trình bày là những công thức tổng quát để tính gradient trên ảnh số Để tính gradient theo phương x hoặc y một cách cụ thể, thường sử dụng các công thức nhất định.
Với giá trị x là tọa độ, hay vị trí của pixel theo phương x
Tại các vùng biên của ảnh, người ta sẽ dùng forward difference để tính gradient, đồng thời lấy 𝑑 𝑥 = 1 như giá trị mặc định
Đối với các vùng ảnh nằm xa rìa, gradient sẽ được tính toán bằng công thức central difference, với giá trị mặc định 𝑑 𝑥 = 2 cho các trường hợp này.
Dưới đây là một ví dụ cụ thể cho việc tính toán gradient trên ảnh số Ảnh xám đầu vào
Kết quả tính gradient cho từng điểm ảnh theo phương x
Hình 4.13 Ví dụ về cách tính gradient cho ảnh số
Các phương pháp xác định vị trí khuôn mặt và mắt người
4.2.1 Tổng quan về các phương pháp xác định khuôn mặt người trong ảnh số
Trong hơn 50 năm phát triển của lĩnh vực xử lý ảnh, con người đã đạt được nhiều thành tựu đáng kể, đặc biệt trong nghiên cứu xác định vị trí khuôn mặt (face detection) trong ảnh kỹ thuật số.
Tính đến nay, có nhiều phương pháp nhận dạng và xác định vị trí khuôn mặt người, có thể chia thành ba hướng tiếp cận chính.
Hướng tiếp cận dựa trên các đặc trưng không thay đổi của khuôn mặt người nhằm mục tiêu phát triển các thuật toán có khả năng xác định và mô tả cấu trúc khuôn mặt một cách chính xác.
Hướng tiếp cận khớp mẫu (template matching) là phương pháp sử dụng các mẫu chuẩn hoặc mẫu đặc trưng để so sánh và xác định vị trí khuôn mặt.
- 3 - Hướng tiếp cận máy học (machine learning): Người ta dùng một tập ảnh mẫu để huấn luyện máy tính nhận diện mặt người bằng các thuật toán khác nhau
Dưới đây là các nghiên cứu nổi tiếng được nhiều người biết đến trong suốt tiến trình phát triển triển của lịch sử nghiên cứu
Bảng 4.1 Các nghiên cứu xử lý ảnh nổi tiếng về việc nhận diện khuôn mặt người
1987 Sirovich & Kirby Principal Component Analysis
2001 Viola & Jones AdaBoost + Haar Cascade
Ngoài các nghiên cứu trong Bảng 4.1, còn nhiều nghiên cứu liên quan đến xác định vị trí và nhận dạng khuôn mặt người đã được công bố và ứng dụng Việc lựa chọn phương pháp nhận diện khuôn mặt phụ thuộc vào hiệu quả, mức độ phức tạp và tốc độ xử lý của từng phương pháp.
Trong bài luận văn này, tác giả sẽ trình bày cơ sở lý thuyết về phương pháp xác định vị trí mặt người do Vila và Jones thực hiện, mà không so sánh với các phương pháp nhận diện khác Phương pháp này sẽ được áp dụng trong đề tài luận văn mà tác giả đã đăng ký.
4.2.2 Thuật toán nhận diện vị trí khuôn mặt người của Viola & Jones
4.2.2.1 Đặc trưng Haar-like Đặc trưng Haar-like (“Haar-like feature” hay “Haar feature”) là các đặc trưng trong ảnh kỹ thuật số dùng để nhận biết một vật thể nào đó Các đặc trưng Haar-like được Viola & Jones đặt tên và lấy ý tưởng dựa trên hoạt động của hàm Haar mà Papageorgiou đã ứng dụng trong nghiên cứu của mình [14]
Hình 4.14 Các đặc trưng Haar-like cơ bản áp vào khuôn mặt người
( Nguồn: https://docs.opencv.org/3.3.0/haar.png )
Đặc trưng Haar-like là một mặt nạ (convolution kernel) dùng để phát hiện các vùng đặc trưng trong ảnh, được tạo thành từ sự kết hợp của các hình chữ nhật đen và trắng theo một trật tự và kích thước nhất định Tất cả các pixel trong vùng hình chữ nhật màu đen sẽ có hệ số riêng.
1, và tất cả các pixel trong vùng hình chữ nhật màu trắng sẽ có hệ số là -1
Hình 4.14 minh họa việc áp dụng đặc trưng Haar-like đầu tiên lên ảnh của một người đàn ông, cho thấy sự khác biệt về độ sáng giữa vùng mắt và gò má Tương tự, mặt nạ thứ hai giúp xác định chênh lệch độ sáng giữa mắt và sóng mũi Đây là nền tảng cho thuật toán nhận diện khuôn mặt của Viola & Jones Bằng cách so sánh độ chênh lệch cường độ sáng qua các đặc trưng Haar-like với một ngưỡng cụ thể, chúng ta có thể dự đoán liệu vùng ảnh đó có chứa khuôn mặt người hay không.
Trong bài báo công bố vào năm 2001, Viola & Jones đưa ra 4 đặc trưng Haar-like cơ bản như sau:
Hình 4.15 Bốn đặc trưng Haar-like cơ bản được Viola & Jones công bố
Để nâng cao thuật toán do Viola & Jones phát triển, vào năm 2002, Lienhart đã phân loại và mở rộng các đặc trưng Haar-like cơ bản thành các nhóm đặc trưng cạnh, đặc trưng đường và đặc trưng tâm.
Hình 4.16 Các đặc trưng Haar-like cơ bản do Lienhart mở rộng và cải tiến
Khi áp dụng các đặc trưng Haar-like vào một bức ảnh, việc tính toán được thực hiện qua công thức f(x, y) = (Tổng các mức xám của các pixel ở vùng đen) – (Tổng các mức xám của các pixel ở vùng trắng) Cụ thể, nếu sử dụng một đặc trưng Haar-like kích thước 24x24 pixels tại một vị trí nhất định, sẽ cần ít nhất 574 phép cộng và 1 phép trừ Khi di chuyển đặc trưng Haar-like trên toàn bộ khung hình, số lượng phép tính sẽ tăng đáng kể, dẫn đến chi phí thời gian hoàn thành thuật toán cũng trở nên lớn hơn.
4.2.2.2 Ảnh tích phân - Integral image
Để đáp ứng nhu cầu tính toán tổng các mức xám tại các vùng ảnh khác nhau, Viola & Jones đã giới thiệu một khái niệm và phương pháp tính toán mới nhằm giải quyết vấn đề này.
Khái niệm hình ảnh tích phân (integral image) là một bức ảnh mới, trong đó mỗi pixel thể hiện tổng cộng các mức xám của tất cả các pixel trong một vùng hình chữ nhật, với đường chéo bắt đầu từ pixel (0,0) đến pixel có tọa độ (x,y).
Hình 4.17 Ví dụ về cách tính toán cho ảnh tích phân - integral image
Để tính giá trị mức xám tại pixel (1,2) của ảnh tích phân B, ta cần tính tổng mức xám của các pixel trong ảnh xám A.
B_value (1,2) = A_value (0,0) + A_value (0,1) + A_value (0,2) + A_value (1,0) + A_value (1,1) + A_value (1,2) = 207 + 200 + 62 + 2 +10 + 186 = 667
Một các tổng quát, integral image có thể được thiết lập bằng công thức sau:
Khi sở hữu bảng giá trị mức xám trong hình ảnh tích phân, việc tính toán tổng mức xám trong một vùng bất kỳ sẽ được thực hiện nhanh chóng và đồng nhất thông qua các phép toán đơn giản.
Hình 4.18 Cách tính tổng mức xám một vùng ảnh dựa trên integral image của ảnh đó
( Nguồn: https://upload.wikimedia.org/wikipedia/commons/5/58/Summed_area_table.png )
Nếu viết lại công thức tổng quát, phép tính này sẽ có dạng:
Phương pháp xác định vị trí của tâm đồng tử và các đốm sáng
Nhiều phương pháp đã được đề xuất để xác định vị trí của tâm đồng tử và các đốm sáng, nhưng phương pháp hiệu quả nhất hiện nay là của Roberto Valenti và Theo Gevers.
4.3.1 Giới thiệu về đường isophote
Isophote của một bức ảnh là các đường cong nối liền những điểm có cường độ sáng giống nhau Những đường này không cắt nhau, cho phép mô tả bức ảnh chỉ bằng các đường isophote Đặc biệt, hình dạng của các đường isophote không bị ảnh hưởng bởi góc quay hay sự thay đổi ánh sáng một cách tuyến tính.
Do đó, các đường isophote có thể được sử dụng như một đặc tính cho việc phát hiện vật thể và tách hình ảnh
Hình 4.22 Ví dụ về đường cong isophote
(a) Ảnh gốc; (b) các đường isophote của ảnh; (c) hình ảnh 3D thể hiện sự thay đổi cường độ sáng tại các điểm trên ảnh
Để xác định các đường cong isophote trong ảnh số, một hệ trục tọa độ cục bộ được gán tại mỗi điểm ảnh, với hướng 𝑤 chỉ theo hướng thay đổi cường độ sáng mạnh nhất Hệ tọa độ này bao gồm các trục {𝑣, 𝑤}, được gọi là hệ tọa độ đánh giá, trong đó các vector của nó được định nghĩa là 𝒗̂ ⊥ 𝒘̂.
Với 𝐿 𝑥 và 𝐿 𝑦 là đạo hàm bậc nhất của hàm giá trị độ sáng (luminance function) L(x,y)
Đạo hàm L theo hướng trục w được định nghĩa là giá trị gradient của ảnh, trong khi đạo hàm L theo hướng trục v bằng 0 do độ sáng không thay đổi dọc theo các đường isophote.
Trong hệ trục tọa đánh giá, một đường isophote có thể được định nghĩa:
Và các đường cong của nó được định nghĩa bằng sự thay đổi 𝑤 ′′ của vector tiếp tuyến
𝑤 ′ Bằng phép lấy đạo hàm ẩn L(v,w(v)) theo v, ta có:
Từ các phân tích đánh giá phía trên, L v = 0, và suy ra 𝑤 ′ = 0
Tiếp tục lấy đạo hàm (4.29) theo v:
𝐿 𝑣𝑣 + 2𝐿 𝑣𝑤 𝑤′ + 𝐿 𝑤𝑤 𝑤′ 2 + 𝐿 𝑤 𝑤 ′′ = 0 (4.30) Đặt 𝑘 = 𝑤′′, và với 𝑤′ = 0, đường cong isophote tìm được sẽ là:
Trong hệ tọa độ Descartes, công thức (4.31) trở thành:
4.3.2 Tâm của các đường isophote
Từ biểu thức đường cong isophote, ta có thể tính bán kính cong và xác định tâm của đường cong Để làm điều này, ngoài bán kính cong, cần ước tính hướng của vector bán kính từ các giá trị gradient Hướng gradient luôn chỉ về phía có sự thay đổi cường độ sáng lớn nhất; nếu vùng ngoài đường cong sáng hơn phần trong, gradient sẽ có giá trị dương và ngược lại.
Giá trị độ lớn của gradient tại một điểm có thể biểu diễn bằng {𝐿 𝑥 , 𝐿 𝑦 }
Lấy giá trị gradient và nhân với nghịch đảo của biểu thức đường cong isophote, ta có thể tạo ra vector thay thế để ước lượng vị trí của tâm đường cong.
Các vector thay thế được tìm thấy sẽ hướng vào tâm của đường cong và được cộng dồn vào bản đồ phân bố tâm để xác định vị trí tốt nhất của tâm đường cong Vì mỗi vector chỉ cung cấp ước tính sơ bộ cho vị trí tâm, nên cần sử dụng bộ lọc Gaussian để ước lượng một vị trí duy nhất cho tâm đường cong tại mỗi cụm khối tâm đã được đề xuất.
Hình 4.23 Ví dụ về việc tìm tâm của các đường isophote
(a) Hướng của gradient; (b) Các vector thay thế chỉ vào tâm của đường cong; (c) Tâm được đánh giá bởi các vector
4.3.3 Xác định tâm đường isophote
Việc áp dụng mặt nạ Gaussian lên ảnh cho phép nhận diện sự gia tăng số lượng đường isophote xung quanh biên của vật thể, trong đó mỗi đường isophote mới có thể được xem như là một phiên bản tỷ lệ của đường isophote cũ.
Trong quá trình xác định tâm cong của vật thể, không có đảm bảo rằng cường độ sáng của các đường biên sẽ đồng nhất Khi cho phép mỗi đường isophote tự chọn tâm cong, việc xác định tâm cong chính xác trở nên khó khăn, vì hình dạng của các đường isophote không phản ánh đúng hình dạng của vật thể Để khắc phục vấn đề này, chỉ những phần của đường isophote dọc theo cạnh vật thể được sử dụng để xác định tâm cong Công thức tính toán đường cong cho thấy rằng đường cong curvedness ít thay đổi ở bề mặt phẳng rộng hoặc cạnh thẳng, và chỉ phản ánh tốt tại các khu vực có mật độ đường isophote cao, tức là cạnh của vật thể Do đó, việc chọn các phần của đường isophote tại những nơi có giá trị curvedness lớn nhất sẽ dẫn đến việc xác định chính xác biên của vật thể và cùng bầu chọn cho một vùng tâm cong nhất quán.
Hình 4.24 Ví dụ về đường isophote và đường cong curvedness
(a) Các đường isophote của một hình cầu ; (b) Đường cong curvedness của ảnh hình cầu
4.3.4 Cách xác định tâm đồng tử và tâm các đốm sáng Ý tưởng xuyên suốt để xác định vị trí tâm đồng tử hoặc tâm các đốm sáng là với mỗi một đường cong isophote sẽ tìm được một vector bán kính cong Mỗi vector bán kính cong sẽ chỉ ra vị trí tâm của đường cong đang xét Tổng hợp kết quả của tất cả các tâm cong sẽ tìm được vị trí của tâm đồng tử hoặc tâm đốm sáng Tuy nhiên để biết chính xác đó là tâm đồng tử hay tâm đốm sáng cần phải xét đến độ lớn của bán kính cong và độ chênh lệch cường độ sáng giữa các vùng ảnh bên trong và bên ngoài đường cong đang xét
Hình 4.25 Ví dụ về các đường cong isophote bình chọn vị trí cho tâm đường tròn
Dấu của các đường isophote, hay hệ số k, phụ thuộc vào sự chênh lệch cường độ sáng giữa vùng ngoài và vùng trong của đường cong Nếu vùng ngoài sáng hơn vùng trong, k sẽ có dấu dương, ngược lại, nếu vùng trong sáng hơn, k sẽ có dấu âm Do đó, việc phân tích dấu của đường cong isophote giúp phân biệt giữa các vùng sáng và tối.
Dựa vào đặc tính sinh học của mắt, vùng tròng trắng sáng hơn vùng tròng đen, điều này cho phép loại bỏ các tâm cong trong quá trình bầu chọn có giá trị isophote dương, từ đó xác định chính xác tâm đồng tử của mắt.
Các đốm sáng quanh tròng đen mắt thường có phần bên trong sáng hơn phần bên ngoài, do đó, các đường isophote được chọn sẽ là những đường isophote có dấu âm.
Thuật toán xác định vị trí tâm đồng tử và tâm các đốm sáng được thể hiện một cách chi tiết hơn ở Phụ lục B
4.3.5 Thuật toán hỗ trợ cho việc xác định vị trí tâm đồng tử và tâm các đốm sáng Để xác định vị trí của tâm đồng tử và tâm các đốm sáng tốt hơn, vùng ảnh để phân tích vị trí của tâm đồng tử và các đốm sáng nên thu nhỏ lại Công việc này có thể thực hiện bằng thuật toán Hough Circle Transform
Hough Circle Transform là một thuật toán quan trọng trong xử lý ảnh, được sử dụng để phát hiện các đối tượng hình tròn trong hình ảnh số Thuật toán này hoạt động qua nhiều bước tính toán để xác định vị trí và kích thước của các hình tròn trong khung hình.
- Thực hiện convert ảnh thành ảnh trắng đen
- Làm mờ ảnh bằng bộ lọc Gaussian
- Chạy thuật toán Canny để lấy biên của các vật thể trong ảnh
- Thực hiện bầu chọn vị trí của các hình tròn tại vùng ảnh đang xem xét