đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn thông số và bố cục đồ án. Chương 2: Cơ sở lý thuyết. Giới thiệu về kit Arduino, giới thiệu về cách cài đặt thư viện cho Arduino. Giới thiệu về mống mắt, các phương pháp nhận dạng mống mắt và áp dụng vào bài toán nhận dạng mống mắt người.
Chương 3: Thiết kế và Tính toán Phân tích, xây dựng sơ đồ khối, sơ đồ phần cứng, thiết kế về chương trình cho hệ thống nhận dạng mống mắt người được viết trên phần mềm Matlab, sử dụng thư viện của Matlab cho kit Arduino. Chương 4: Thi công hệ thống Xây dựng chương trình hoàn chỉnh cho toàn hệ thống, các hàm, các lưu đồ, các chương trình được sử dụng. Tạo tập tin huấn luyện, lắp ráp và test cho chương trình. Viết tài liệu hướng dẫn sử dụng, quy trình thao tác.
Chương 5: Kết quả, Nhận xét và đánh giá Nêu các kết quả đạt được khi thực hiện chương trình, phân tích, nhận xét, đánh giá kết quả thực thi được. Chương 6: Kết luận và hướng phát triển. Tóm tắt những kết quả đạt được, những hạn chế và nêu lên các hướng phát triển trong tương lai. do an Chương 2.1 GIỚI THIỆU PHẦN CỨNG 2.1 Kit Arduino [3] Arduino ra đời tại thị trấn Ivrea – Italy, được giới thiệu vào năm 2005 như một công cụ cho sinh viên tìm tòi, học hỏi, phát triển, nhưng đến nay Arduino đã được sử dụng rộng rãi trên thế giới và chứng tỏ được hiệu quả thông qua vô số ứng dụng từ người dùng.
Arduino là một board mạch vi xử lý được dùng để tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn hay các thiết bị khác. Một board Arduino bao gồm một vi điều khiển AVR với nhiều linh kiện bổ sung đã làm nên board mạch với nhiều thế mạnh hơn so với các vi điều khiển khác như: chạy được trên nhiều hệ điều hành khác nhau (Windows, Linux.), dễ dàng lắp ráp và mở rộng phần cứng, phát triển dựa trên nguồn mở, dễ dàng chia sẻ mã nguồn với nhau mà không phải lo lắng ngôn ngữ hay hệ điều hành đang sử dụng… Arduino thường sử dụng các dòng chip megaAVR, đặc biệt là ATmega8, ATmega168, ATmega328, ATmega1280 và ATmega2560. Hầu hết các mạch gồm một bộ điều chỉnh tuyến tính 5V và một thạch anh dao động 16 MHz, các board Arduino hiện tại được lập trình thông qua cổng USB.2 Kit Arduino Uno Kit Arduino có nhiều phiên bản với tính năng và mục đích sử dụng khác nhau. Board Arduino Uno là một trong những phiên bản được sử dụng rộng rãi nhất bởi chi phí và tính linh động của nó.
Arduino Uno là một board mạch vi điều khiển dựa trên chip Atmega328 với 14 chân vào/ra bằng tín hiệu số được đánh số từ 0 đến 13, trong đó 6 chân có thể tạo xung PWM được đánh dấu “~” trước mã số của chân, 6 chân nhận tín hiệu analog được đánh do an dấu từ A0 đến A5, có thể sử dụng như là 6 chân I/O số. Có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 30 mA. Vi điều khiển Atmega328P họ 8 bit Điện áp hoạt động 5V Điện áp đầu vào 7-12V Điện áp đầu vào giới hạn 6-20V Số chân Digital I/O 14 (có 6 chân PWM) Số chân Analog 6 ( độ phân giải 10bit) DC current per I/O pin 20mA DC current for 3.3V pin 50mA Flash Memory 32KB (ATmega328P) SRAM 2KB (Atmega328P) EEPROM 1KB (Atmega328P) Clock Speed 16MHZ Length 68.4 mm Weight 25 g Bảng 2. Thông số kỹ thuật Arduino Uno.
Cấu trúc phần cứng của Arduino Uno. do an Cổng USB(1): Cổng USB dùng để kết nối với máy tính và thông qua đó để upload chương trình cho Arduino từ máy tính, đồng thời cung cấp nguồn cho Arduino. Nguồn (2 và 4): Sử dụng jack cắm nguồn 2.1mm (cực dương ở giữa) hoặc có thể dùng chân Vin và GND để cấp nguồn cho Arduino. Board mạch hoạt động ở điện áp ngoài khoảng 5-20V, nhưng nếu cấp nguồn lớn hơn 5V thì ngõ ra chân 5V sẽ lớn hơn, không nên cấp nguồn lớn hơn 12V vì board sẽ nóng và dễ bị hỏng.
Chân 5V và chân 3.3v là 2 chân lấy nguồn từ Arduino ra ngoài, không được cấp nguồn vào nó, sẽ làm hỏng. Chip Atmega328P(6): Có 32KB bộ nhớ flash trong đó có 0.5KB dùng cho bootloader, 2KB SRAM, 1KB EEPROM. Output và input(3 và 5): Arduino có 14 chân Digital với các chức năng Input và Output.2 TỔNG QUAN VỀ MATLAB [4] Matlab (Matrix Laboratory ) là một môi trường tính toán số và lập trình, được thiết kế bởi công ty MathWorks, là ngôn ngữ lập trình thực hành bậc cao được sử dụng nhiều để giải các bài toán kỹ thuật. Matlab tích hợp việc tính toán thể hiện kết quả cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng.
Dữ liệu cùng với thư viện được lập trình sẵn cho phép người dùng có được những ứng dụng như: Tính toán các phép toán học thông thường, tính toán ma trận, Lập trình tạo ra những ứng dụng mới. Cho phép mô phỏng các mô hình thực tế. Phân tích, khảo sát, hiển thị dữ liệu. Với phần mềm đồ họa cực mạnh.
Matlab giúp đơn giản hóa việc giải quyết các bài toán tính toán kỹ thuật so với các ngôn ngữ lập trình truyền thống như C, C++, và Fortran. Matlab là một hệ thống tương giao chúng cho phép giải quyết các vấn đề liên quan đến lập trình bằng máy tính, đặc biệt sử dụng các phép tính về ma trận hay véctơ và có thể sử dụng ngôn ngữ C hoặc Fortran lập trình rồi thực hiện ứng dụng lập trình đó bằng các câu lệnh gọi từ Matlab. do an Matlab được sử dụng trong nhiều lĩnh vực, bao gồm xử lý tín hiệu và ảnh, truyền thông, thiết kế điều khiển tự động, đo lường kiểm tra, phân tích mô hình tài chính, hay tính toán sinh học. Matlab cung cấp giải pháp chuyên dụng gọi là Toolbox.
Toolbox là một tập hợp toàn diện các hàm của Matlab (M-file). Hệ thống Matlab gồm 5 phần chính: Ngôn ngữ Matlab: cho phép lập trình từ các ứng dụng nhỏ đến phức tạp. Đó là các ngôn ngữ cao về ma trận và mảng, các dòng lệnh, các hàm, cấu trúc dữ liệu vào. Môi trường làm việc: bao gồm các phương tiện cho việc quản lý các biến trong không gian làm việc Workspace cũng như xuất nhập dữ liệu.
Nó cũng bao gồm các công cụ phát triển, quản lý, gỡ rối và định hình M-file. Xử lý đồ họa: bao gồm các lệnh cao cấp cho trực quan hóa dữ liệu hai chiều và ba chiều, xử lý ảnh, ảnh động. Cung cấp các giao diện tương tác giữa người sử dụng và máy tính. Giao diện người dùng (Application Program Interface): cho phép viết chương trình tương tác với các ngôn ngữ khác C, Fortran.3 GIỚI THIỆU MỐNG MẮT NGƯỜI Mống mắt là màng tròn mỏng, nằm giữa giác mạc và thuỷ tinh thể của mắt người.
Một ảnh nhìn chính diện của mống mắt được chỉ ra trong hình 2. Mống mắt bị đục thủng gần tâm của nó bởi lỗ tròn gọi là đồng tử.2 : Ảnh của mắt người nhìn trực diện từ phía trước. do an Nói một cách khác, mống mắt là một cơ trong mắt. Nó là phần màu của mắt với màu của mống mắt được xác định chủ yếu dựa trên số lượng sắc tố melatonin có trong cơ.
Chức năng của mống mắt là điều chỉnh kích thước đồng tử và số lượng ánh sáng vào mắt. Điều này được thực hiện bởi các cơ vòng và cơ giãn, chúng điều chỉnh kích thước đồng tử. Đường kính trung bình của mống mắt là 12mm và kích thước đồng tử có thể biến đổi từ 10 đến 80% đường kính mống mắt. Mống mắt gồm một số lớp, thấp nhất là lớp biểu mô, chúng chứa các tế bào sắc tố dày đặc.
Lớp chất nền nằm trên lớp biểu mô và chứa các mạch máu, các tế bào sắc tố và hai cơ mống mắt. Mật độ của sắc tố chất nền xác định màu sắc của mống mắt. Bề ngoài rõ ràng bề mặt của mống mắt là đa lớp có hai vùng, chúng thường có màu sắc khác nhau. Một vùng mi ngoài và một vùng đồng tử trong, và hai vùng đó được phân ra bởi đường viền- chúng xuất hiện như kiểu chữ chi (zíc zắc).3 : Cấu trúc của mống mắt.
Mặc dù màu sắc và cấu trúc của mống mắt gắn với vấn đề di truyền học,nhưng những đặc trưng chính của mỗi mống mắt là không giống nhau. Mắt phát triển trong suốt thời kỳ trước khi trưởng thành thông qua một quá trình định hình chặt chẽ và sự tạo nếp của các màng mô. Sự hình thành mống mắt bắt đầu vào tháng thứ ba của thời kỳ thai nghén và việc tạo ra cấu trúc kiểu của nó khá đầy đủ vào tháng thứ tám. Nhưng kiểu dáng duy nhất trên bề mặt mống mắt được tạo thành trong suốt một năm đầu tiên, và sự phát triển của các sắc tố chất nền xảy ra khoảng vài năm đầu sau khi sinh.
Sự hình thành các kiểu dáng đơn nhất của mống mắt là ngẫu nhiêu không liên quan tới bất kỳ do an nhân tố gen nào.Chỉ những đặc tính mà phụ thuộc vào gien là sắc tố của mống mắt mới xác định màu sắc của nó. Nhờ biểu sinh tự nhiên của các kiểu mống mắt, hai mắt của một cá nhân hoàn toàn độc lập về kiểu mống mắt và ngay cả các cặp sinh đôi giống hệt nhau cũng có các kiểu mống mắt khác nhau. Chính vì đặc điểm mỗi mống mắt là duy nhất và các cấu trúc khác biệt nêu trên nên ảnh mống mắt có thể được sử dụng cho mục đích nhận dạng/xác thực người dùng.4 CÁC PHƯƠNG PHÁP NHẬN DẠNG MỐNG MẮT NGƯỜI [8],[9] 2.1 Xác định mống mắt. Xác định vị trí mống mắt và đồng tử.
Bước này là để tìm ra đường biên bên trong (giữa mống mắt và đồng tử) và đường biên bên ngoài (giữa mống mắt và màng cứng) trong ảnh gốc. Cả hai đường ranh giới trong và ngoài của một mống mắt điển hình có thể được đưa ra xấp xỉ như các đường tròn. Tuy nhiên hai đường tròn này thường không đồng tâm, nhưng trong hệ thống này giả thiết chúng đồng tâm tại tâm đồng tử. Bằng cách dò tìm đồng tử và mống mắt, hệ thống sẽ không thay đổi đối với sự chuyển dịch.
Kỹ thuật xác định vị trí đã điều khiển khoanh vùng chính xác vùng đồng tử và mống mắt của cơ sở dữ liệu ảnh mống mắt có tỷ lệ thành công lần lượt khoảng 100% và 98% ở hình 2.