Bối cảnh và vấn đề nghiên cứu

Xác thực sinh trắc học là phương thức định danh cá nhân dựa trên các đặc điểm thể chất hoặc hành vi đặc trưng. Bên cạnh các phương thức truyền thống như dấu vân tay, khuôn mặt, mống mắt hay giọng nói, sinh trắc học dựa trên bàn tay—đặc biệt là đặc trưng đường vân khớp ngón tay (Finger Knuckle Print - FKP)—đang thu hút sự quan tâm lớn từ giới nghiên cứu. Cấu trúc giải phẫu của khớp ngón tay người chứa đựng các nếp gấp, đường vân và mẫu kết cấu ổn định trong suốt giai đoạn trưởng thành, mang tính phân biệt cao giữa các cá nhân (kể cả đối với các cặp song sinh cùng trứng có cùng hệ gen). Đồng thời, phương thức này có tính không xâm lấn, thân thiện với người dùng và có ưu thế vượt trội trong việc bảo vệ quyền riêng tư so với nhận diện khuôn mặt.

Tuy nhiên, bài toán nhận diện khớp ngón tay đối mặt với nhiều thách thức kỹ thuật lớn trong thực tế, bao gồm: sự biến thiên của điều kiện chiếu sáng, sự thay đổi của góc chụp giữa camera và ngón tay (chụp thẳng hoặc nghiêng lệch các hướng), cũng như hiện tượng ngón tay bị dịch chuyển, xoay góc hoặc mờ nét trong quá trình thu nhận hình ảnh. Để giải quyết các thách thức này với chi phí triển khai tối ưu, đồ án hướng đến mục tiêu thiết kế một hệ thống xử lý ảnh nhận diện khớp ngón tay hoạt động theo thời gian thực trên nền tảng máy tính nhúng.

Các mục tiêu và nhiệm vụ nghiên cứu cụ thể của đồ án bao gồm:

  1. Nghiên cứu cơ sở lý thuyết về trích xuất vùng quan tâm (Region of Interest - ROI) và các thuật toán mã hóa đặc trưng đường vân khớp ngón tay.
  2. Xây dựng chương trình xử lý và đánh giá hệ thống trên môi trường lý thuyết (Google Colaboratory) bằng ngôn ngữ Python với tập dữ liệu gồm 1.480 ảnh người đã được định danh và 296 ảnh người chưa được định danh.
  3. Thiết kế, chế tạo mô hình phần cứng thực tế sử dụng máy tính nhúng Raspberry Pi 4 Model B, Raspberry Pi Camera Module V2 và màn hình cảm ứng điện dung 5 inch Waveshare; vận hành chương trình Python trên thiết bị nhúng với tập dữ liệu thực nghiệm gồm 100 ảnh.
  4. Xây dựng giao diện hiển thị, hỗ trợ tương tác người dùng qua màn hình cảm ứng và nút nhấn, thực hiện chức năng nhận diện tự động và đánh giá độ ổn định của hệ thống trong các điều kiện môi trường khác nhau.
  • Đối tượng nghiên cứu: Vùng khớp chính của ngón tay người (Major FKP), tập trung vào các nếp gấp và kết cấu đường vân lồi.
  • Phạm vi nghiên cứu:
    • Không gian: Đồ án được thực hiện tại Bộ môn Kỹ thuật Đo & Tin học công nghiệp, Viện Điện, Trường Đại học Bách khoa Hà Nội.
    • Thời gian: Giai đoạn 2021 – 2022.

Cơ sở lý thuyết và phương pháp

Đồ án vận dụng hệ thống lý thuyết xử lý ảnh số, thị giác máy tính và phân tích sinh trắc học, kết hợp giữa mô phỏng phần mềm và thực nghiệm trên phần cứng nhúng:

  • Khung lý thuyết và mô hình giải thuật:
    • Thuật toán lọc không gian và tiền xử lý: Bộ lọc Gauss (Gaussian Filter) giảm nhiễu và kỹ thuật giảm mẫu (Down-Sampling).
    • Thuật toán phát hiện biên Canny (Canny Edge Detection): Kết hợp tính toán gradient đa hướng, triệt tiêu không cực đại (Non-Maximum Suppression - NMS) và lọc ngưỡng kép để phân tách đường vân.
    • Phương pháp định vị hệ trục tọa độ vùng quan tâm (ROI): Dựa trên phân ngưỡng biên dưới ngón tay để lập trục $X$ và thuật toán tính toán cường độ lồi cục bộ (ConMag) với cửa sổ trượt để tìm điểm cực tiểu xác định trục $Y$.
    • Lý thuyết biến đổi sóng Gabor (Gabor Wavelet Transform): Sử dụng phần thực của bộ lọc Gabor 2D để phân tích cấu trúc tần số không gian và định hướng của nếp nhăn khớp ngón tay.
    • Các mô hình trích xuất đặc trưng được khảo sát: Phương pháp mã hóa sơ đồ định hướng (Competitive Code - CompCode), phương pháp nhị phân hóa sơ đồ mã hóa định hướng (Binary Orientation Co-occurrence Vector - BOCV), phương pháp biến đổi Radon trong vùng cục bộ (Localized Radon Transform - LRT), và phương pháp kết hợp đặc trưng định hướng cùng độ lớn đường vân (ImcompCode & magCode).
  • Phương pháp nghiên cứu thực nghiệm:
    • Thiết kế cấu trúc buồng chụp cố định có gờ định vị ngón tay nhằm chuẩn hóa góc chụp và nguồn sáng.
    • Phân tích đối sánh ma trận đặc trưng bằng các phép toán logic nhị phân (AND, XOR) kết hợp ma trận mặt nạ (Mask) để tính toán khoảng cách chuẩn hóa, từ đó đưa ra quyết định định danh.
  • Nguồn dữ liệu:
    • Dữ liệu tham khảo trên Google Colab: 1.480 ảnh ngón tay của người đã được định danh và 296 ảnh của người chưa được định danh.
    • Dữ liệu tự thu thập trên Raspberry Pi 4: 100 ảnh đường vân khớp ngón trỏ bàn tay phải thu nhận trực tiếp từ hệ thống phần cứng của đồ án.

Nội dung chính theo từng chương

Chương 1. Tổng quan về bài toán nhận dạng khớp ngón tay con người

Chương 1 hệ thống hóa quá trình phát triển của các công nghệ nhận dạng sinh trắc học và vị trí của công nghệ quét cấu trúc bàn tay. Tác giả phân tích cấu trúc giải phẫu của ngón tay và chỉ ra rằng các nếp nhăn tại khớp ngón chính (Major FKP) mang tính ổn định cao và đặc trưng riêng biệt cho từng cá nhân. Chương này phân tích chi tiết hai thách thức lớn nhất của bài toán: sự thay đổi cường độ ánh sáng môi trường và góc lệch ngón tay so với trục quang học của camera. Đồng thời, tác giả nêu các tiềm năng ứng dụng thực tế của công nghệ nhận diện FKP như tích hợp cây ATM, điều tra dấu vết tội phạm, khóa bảo mật thay thế mật khẩu số, chấm công và kiểm soát cửa ra vào.

Nội dung cuối của chương tập trung giới thiệu các thiết bị phần cứng được lựa chọn để xây dựng mô hình thực nghiệm:

  • Máy tính nhúng Raspberry Pi 4 Model B (phiên bản 2019): Dòng máy tính kích thước nhỏ, chạy hệ điều hành Linux (Raspbian), có năng lực tính toán vượt trội so với thế hệ Raspberry Pi 3B+.
  • Raspberry Pi Camera Module V2: Cảm biến hình ảnh Sony IMX219 độ phân giải 8 Megapixel (chụp ảnh tĩnh kích thước $3280 \times 2464$, hỗ trợ quay video 1080p30, 720p60, 640x480p90), trọng lượng hơn 3g, kết nối qua cáp ribbon 15 cm với cổng CSI.
  • Màn hình cảm ứng điện dung 5 inch Waveshare: Độ phân giải phần cứng $800 \times 480$, giao tiếp hình ảnh qua cổng HDMI, cảm ứng 5 điểm, hỗ trợ giao diện vận hành trực quan.

Chương 2. Phương pháp xác định vùng quan tâm (ROI)

Chương 2 trình bày giải thuật thiết lập hệ trục tọa độ cục bộ để trích xuất ảnh ROI kích thước chuẩn từ ảnh chụp gốc, khắc phục hiện tượng ngón tay bị xê dịch giữa các lần chụp. Quy trình xử lý gồm các bước tuần tự:

  1. Tiền xử lý ảnh: Ảnh FKP ban đầu có kích thước $768 \times 576$ pixel với độ phân giải 400 dpi được làm mịn bằng bộ lọc Gauss để loại bỏ nhiễu, sau đó áp dụng kỹ thuật Down-Sampling hạ độ phân giải xuống 150 dpi nhằm tiết kiệm bộ nhớ và rút ngắn thời gian tính toán.
  2. Xác định trục $X$: Dựa vào khối tì cơ học cố định trong buồng chụp, đường ranh giới dưới cùng của ngón tay với nền ảnh có tính ổn định cao. Áp dụng phân ngưỡng nhị phân (Threshold) để tách đường biên này và gán làm trục $X$ của hệ tọa độ.
  3. Cắt sơ bộ theo trục $X$: Ước tính bề rộng ngón tay để xác định biên trên, đồng thời giới hạn ranh giới trái - phải theo kinh nghiệm thực nghiệm.
  4. Dò biên bằng thuật toán Canny: Tính đạo hàm theo hướng ngang ($G_x$) và hướng dọc ($G_y$) qua nhân chập kernel $3 \times 3$, xác định cường độ gradient $Edge_Gradient = \sqrt{G_x^2 + G_y^2}$ và hướng gradient $Theta = \arctan(G_y / G_x)$. Hướng gradient được quy về 4 góc đại diện ($0^\circ, 45^\circ, 90^\circ, 135^\circ$). Áp dụng lọc triệt tiêu không cực đại (NMS) với cửa sổ $3 \times 3$ và lọc ngưỡng giá trị tối thiểu $V_{min}$ để thu được sơ đồ biên mảnh $I_E$.
  5. Mã hóa đường vân lồi ($I_{CD}$): Dựa trên đặc điểm giải phẫu là các nếp gấp hai bên khớp ngón có xu hướng uốn cong đối lập nhau, mỗi pixel trên ảnh biên $I_E$ được gán nhãn: $1$ nếu lồi sang trái, $-1$ nếu lồi sang phải, và $0$ nếu không mang thông tin hướng lồi (phân định qua vị trí tương đối với trục giữa $y_{mid}$).
  6. Xác định trục $Y$: Xây dựng hàm cường độ lồi $ConMag(x)$ bằng cách trượt một cửa sổ $W$ kích thước $d \times h$ (với $d = 35$ pixel, $h$ là chiều cao ảnh $I_{CD}$) dọc theo trục hoành: $$ConMag(x) = \left| \sum_{i=x}^{x+34} \sum_{j=0}^{Y-1} I_{CD}(i, j) \right|$$ Tại vị trí chính giữa khớp ngón tay, số lượng đường vân lồi sang trái và sang phải triệt tiêu lẫn nhau, khiến giá trị $ConMag(x)$ đạt cực tiểu. Vị trí hoành độ $x_0$ thỏa mãn điều kiện cực tiểu này được chọn làm trục tung $Y$ ($X = x_0$).
  7. Cắt ảnh ROI chuẩn hóa: Dựa trên gốc tọa độ $(X, Y)$ vừa thiết lập, vùng ảnh ROI được cắt với kích thước tối ưu $110 \times 220$ pixel.

Chương 3. Phương pháp nhận diện khớp ngón tay sử dụng đặc trưng về hướng và độ lớn đường vân

Chương 3 trình bày các giải pháp toán học nhằm trích xuất các vector đặc trưng phục vụ nhận dạng cá nhân từ ảnh ROI:

  • Cơ sở biến đổi sóng Gabor: Sử dụng phần thực $\psi_R(x, y, \omega_0, \theta)$ với kích thước bộ lọc $35 \times 35$, điểm gốc trung tâm $(x_0, y_0) = (17, 17)$, hệ số $\kappa = 5.3$, và 6 góc định hướng $\theta_j = j\pi/6$ ($j = 0, 1, 2, 3, 4, 5$).
  • Khảo sát các phương pháp hiện có:
    • CompCode: Xác định mã định hướng tại mỗi pixel bằng chỉ số của góc lọc Gabor cho phản hồi lớn nhất ($argmax$), tạo ma trận giá trị từ $0$ đến $5$. Đối sánh hai ma trận qua phép logic AND có bù trừ mặt nạ Mask.
    • BOCV: Mở rộng CompCode bằng cách giữ lại phản hồi của cả 6 hướng lọc, nhị phân hóa thành vector 6 bit tại mỗi pixel dựa trên dấu của giá trị phản hồi ($1$ nếu âm, $0$ nếu không âm). Quá trình đối sánh sử dụng phép logic XOR giữa các vector nhị phân kết hợp logic AND với mặt nạ Mask.
    • LRT: Tích hợp cường độ ảnh trên đoạn thẳng thuộc vùng lân cận cục bộ kích thước $9 \times 9$ pixel (độ rộng đường $1$ pixel, 6 góc định hướng) để tìm hướng có cường độ tích phân nhỏ nhất. Đối sánh đặc trưng qua ba kỹ thuật: pixel-to-pixel, pixel-to-cross-shape và pixel-to-area.
  • Phương pháp cải tiến được lựa chọn (ImcompCode & magCode): Kết hợp đồng thời hai loại thông tin:
    • Sơ đồ mã hóa định hướng cải tiến (ImcompCode): Tính mã định hướng qua phản hồi cực đại của bộ lọc Gabor. Nhằm loại bỏ các điểm ảnh thuộc vùng tương đối phẳng (vốn không có hướng vân rõ nét và dễ gây nhiễu), tác giả đưa vào chỉ số cường độ định hướng: $$oriMag(x, y) = \frac{|\max(R) - \min(R)|}{\sum R}$$ Nếu $oriMag(x, y)$ nhỏ hơn một ngưỡng thực nghiệm, pixel đó được coi là điểm phẳng và được gán mã đặc biệt bằng $6$.
    • Sơ đồ mã hóa độ lớn đường vân (magCode): Lượng hóa độ lớn đáp ứng lớn nhất của bộ lọc Gabor thành $N = 8$ cấp độ rời rạc: $$magCode(x, y) = \text{ceil}\left( N \cdot \frac{mag(x, y) - l_{min}}{l_{max} - l_{min}} \right)$$
Thuật toán Cơ sở toán học Kích thước vùng/bộ lọc Số hướng/mức lượng hóa Đặc điểm đối sánh
CompCode Gabor phần thực $35 \times 35$ pixel 6 hướng ($\theta = j\pi/6$) Ma trận giá trị $0 - 5$, đối sánh khoảng cách logic AND
BOCV Gabor phần thực $35 \times 35$ pixel 6 hướng nhị phân (6 bit) Đối sánh vector nhị phân bằng phép logic XOR và AND
LRT Tích phân Radon cục bộ $9 \times 9$ pixel 6 hướng định lượng Đối sánh pixel-to-pixel, cross-shape hoặc area
ImcompCode & magCode Gabor đa đặc trưng $35 \times 35$ pixel 6 hướng + mức phẳng (mã 6); 8 cấp độ lớn Kết hợp ma trận hướng và độ lớn, loại bỏ nhiễu vùng phẳng

Chương 4. Triển khai và kết quả thực nghiệm

Chương 4 mô tả toàn bộ quá trình thử nghiệm hệ thống trên hai nền tảng:

  • Môi trường giả lập (Google Colaboratory): Sử dụng cấu hình phần cứng do Google Colab cung cấp để kiểm tra tốc độ trích xuất ROI và khả năng nhận diện trên tập cơ sở dữ liệu lớn gồm 1.480 ảnh định danh và 296 ảnh chưa định danh.
  • Môi trường thực tế (Raspberry Pi 4 Model B): Chạy chương trình trực tiếp trên phần cứng nhúng, kết nối Pi Camera V2 và màn hình cảm ứng 5 inch Waveshare. Tiến hành thu nhận 100 ảnh mẫu khớp ngón trỏ phải để lập cơ sở dữ liệu nhận diện.
  • Nội dung thử nghiệm: Đo đạc thời gian xử lý trong một lần nhận dạng; kiểm tra độ bền vững của thuật toán khi ngón tay đặt lệch ở các vị trí khác nhau trong khe đỡ; đánh giá hệ thống dưới các điều kiện ánh sáng môi trường yếu (thiếu sáng), ánh sáng môi trường mạnh (thừa sáng), và trường hợp ngón tay bị xoay một góc nhỏ.

Thiết kế và triển khai hệ thống

Hệ thống nhận diện khớp ngón tay được thiết kế thành hai phân hệ (module) chức năng khép kín:

[Module 1: Thu thập dữ liệu]
Ảnh ngón tay từ Pi Camera V2 -> Tiền xử lý & Trích xuất ROI -> Lưu trữ vào CSDL mẫu

[Module 2: Xử lý và nhận diện thời gian thực]
Ảnh chụp thực tế -> Trích xuất ROI (110x220) -> Bộ lọc Gabor (ImcompCode & magCode) -> Đối sánh khoảng cách với CSDL -> Hiển thị kết quả trên màn hình Waveshare 5"

Kiến trúc phần cứng và bố trí quang học

  • Bộ xử lý trung tâm: Máy tính nhúng Raspberry Pi 4 Model B đảm nhiệm toàn bộ khâu thu thập tín hiệu hình ảnh, chạy các thuật toán xử lý ảnh số và xuất tín hiệu điều khiển ra màn hình.
  • Thiết bị ghi hình: Raspberry Pi Camera Module V2 (cảm biến Sony IMX219) được bố trí tại vị trí tiêu cự cố định, hướng vuông góc với bề mặt ngón tay.
  • Cơ cấu định vị và chiếu sáng: Hệ thống được gia công buồng chụp kín nhằm hạn chế tác động bất lợi của ánh sáng tán xạ bên ngoài. Bên trong tích hợp cơ cấu khối tì cơ học để cố định vị trí đặt ngón tay và dàn đèn LED chiếu sáng chủ động tạo độ tương phản đồng đều cho các nếp gấp ngón tay.
  • Giao diện người dùng: Màn hình cảm ứng 5 inch Waveshare gắn trực tiếp lên hộp thiết bị, cho phép người dùng quan sát hình ảnh khung ngắm thời gian thực và tương tác qua nút bấm ảo.

Môi trường phần mềm và kịch bản kiểm thử

  • Công nghệ phần mềm: Chương trình viết hoàn toàn bằng ngôn ngữ Python, chạy trên hệ điều hành Raspbian (Linux).
  • Kiểm thử hệ thống:
    • Đánh giá khả năng tự động tách ROI khi ngón tay bị dịch chuyển tịnh tiến dọc/ngang trên khối đỡ.
    • Đánh giá thuật toán trong điều kiện phòng tối (ít ánh sáng môi trường) và phòng có ánh sáng tự nhiên cường độ cao.
    • Đánh giá thuật toán ImcompCode & magCode khi khớp ngón tay xoay góc nghiêng nhỏ so với phương thẳng đứng của camera.

Kết quả và đóng góp

Kết quả chính

  • Xây dựng thành công thuật toán trích xuất tự động vùng quan tâm (ROI) dựa trên việc dò biên Canny và hàm cường độ lồi $ConMag(x)$. Thuật toán đưa các ảnh chụp thô kích thước $768 \times 576$ (400 dpi) về ảnh chuẩn hóa kích thước $110 \times 220$ pixel tại đúng vị trí trung tâm khớp ngón chính.
  • Triển khai thuật toán trích xuất đa đặc trưng kết hợp sơ đồ mã hóa định hướng cải tiến (ImcompCode) và sơ đồ mã hóa độ lớn (magCode) bằng bộ lọc sóng Gabor ($35 \times 35$, 6 hướng, 8 mức lượng hóa biên độ), đồng thời tích hợp chỉ số $oriMag$ để triệt tiêu nhiễu tại các vùng phẳng.
  • Tích hợp hoàn chỉnh hệ thống trên phần cứng nhúng Raspberry Pi 4 Model B kết hợp camera Pi V2 và màn hình hiển thị cảm ứng, tạo thành một thiết bị độc lập có khả năng ghi hình, xử lý và trả kết quả nhận diện tại chỗ.
  • Hoàn thành hai đợt thử nghiệm độc lập: kiểm thử thuật toán trên môi trường Google Colab với 1.480 ảnh định danh và 296 ảnh chưa định danh; kiểm thử vận hành thực tế trên phần cứng Raspberry Pi với 100 ảnh tự thu thập.

Giải pháp và kiến nghị của tác giả

  • Cần bố trí hệ thống đèn chiếu sáng bên trong buồng chụp và các khối tì cơ học cố định để ổn định góc chụp và giảm thiểu tác động tiêu cực của ánh sáng môi trường bên ngoài.
  • Đối với các bài toán xử lý ảnh sinh trắc học trên hệ thống nhúng có tài nguyên hạn chế, việc áp dụng bộ lọc Gauss kết hợp giảm độ phân giải mẫu (Down-Sampling từ 400 dpi xuống 150 dpi) là bước bắt buộc để đảm bảo tốc độ phản hồi thời gian thực mà không làm suy giảm các đặc trưng nếp gấp cốt lõi.
  • Cần sử dụng chỉ số cường độ định hướng $oriMag$ để gán mã riêng cho các pixel không có hướng vân rõ nét, ngăn chặn hiện tượng gán nhãn sai làm sai lệch ma trận khoảng cách khi đối sánh.

Đóng góp so với các nghiên cứu trước

  • Tác giả tự đánh giá việc kết hợp đồng thời hai trường thông tin (định hướng và độ lớn nếp nhăn) giúp hệ thống có khả năng nhận diện vượt trội hơn so với các phương pháp trích xuất truyền thống chỉ dựa trên một đặc trưng đơn lẻ (như CompCode, BOCV hay LRT), đặc biệt là trong các trường hợp ảnh ngón tay bị xoay nhẹ, bị mờ hoặc dịch chuyển khỏi tâm khung ngắm.
  • Đồ án chứng minh tính khả thi của việc đưa các thuật toán xử lý ảnh sinh trắc học phức tạp (vốn thường chạy trên máy tính cá nhân cấu hình mạnh) xuống vận hành ổn định trên nền tảng máy tính nhúng kích thước nhỏ với giá thành thấp.

Hạn chế và hướng nghiên cứu tiếp

  • Hạn chế:
    • Quy mô cơ sở dữ liệu thử nghiệm thực tế trên phần cứng Raspberry Pi còn nhỏ (chỉ gồm 100 ảnh của ngón trỏ phải), chưa bao quát được nhiều nhóm đối tượng với đặc điểm da và độ tuổi đa dạng.
    • Hệ thống vẫn phụ thuộc vào buồng chụp cơ học có khối tì cố định ngón tay; khả năng thích ứng với các góc xoay lớn hoặc ngón tay cử động tự do còn hạn chế.
    • Toàn văn tài liệu dừng lại ở việc đánh giá định tính qua các tình huống kiểm thử (ít sáng, nhiều sáng, xoay góc nhỏ, lệch vị trí) mà chưa công bố các chỉ số thống kê định lượng chuẩn của hệ thống sinh trắc học như tỷ lệ nhận diện sai (FAR), tỷ lệ từ chối sai (FRR) hay tỷ lệ lỗi tương đương (EER).
  • Hướng nghiên cứu tiếp:
    • Thu thập và mở rộng tập dữ liệu thực nghiệm trên phần cứng nhúng với quy mô mẫu lớn hơn, bổ sung thêm nhiều ngón tay khác nhau của bàn tay.
    • Tối ưu hóa thời gian thực thi của thuật toán biến đổi sóng Gabor trên Raspberry Pi bằng các kỹ thuật lập trình song song hoặc thư viện tăng tốc phần cứng.
    • Cải tiến buồng thu nhận ảnh hướng tới công nghệ quét không tiếp xúc, nâng cao khả năng bất biến với góc quay lớn và độ méo phối cảnh.

Giá trị tham khảo

Đồ án là tài liệu kỹ thuật có giá trị tham khảo thiết thực cho sinh viên, học viên chuyên ngành Kỹ thuật Điều khiển & Tự động hóa, Kỹ thuật Đo & Tin học công nghiệp, Kỹ thuật Máy tính và Công nghệ Thông tin đang nghiên cứu về xử lý ảnh số, thị giác máy tính và hệ thống nhúng.

Các nội dung có giá trị tham khảo kỹ thuật cao bao gồm:

  • Quy trình toán học 7 bước chuẩn hóa trích xuất vùng quan tâm (ROI) của cấu trúc hình ống/ngón tay dựa trên biên Canny và hàm cực tiểu độ lồi $ConMag(x)$.
  • Phương pháp thiết kế bộ lọc Gabor 2D phần thực đa hướng và cách tiếp cận lượng hóa kép (ImcompCode & magCode) kết hợp triệt tiêu nhiễu vùng phẳng ($oriMag$).
  • Giải pháp tích hợp phần cứng máy tính nhúng Raspberry Pi 4 với Camera CSI và màn hình cảm ứng để xây dựng một thiết bị đo lường - kiểm tra thị giác độc lập.

Câu hỏi thường gặp

1. Kích thước chuẩn của ảnh vùng quan tâm (ROI) sau khi trích xuất là bao nhiêu và được xác định bằng cách nào?
Ảnh ROI hoàn chỉnh được cắt với kích thước chuẩn $110 \times 220$ pixel. Trục hoành $X$ của hệ tọa độ được định vị dựa trên đường ranh giới dưới cùng của ngón tay (tiếp xúc với khối đỡ cơ bản), trong khi trục tung $Y$ được xác định tại hoành độ $X = x_0$ làm cực tiểu hóa hàm cường độ lồi đường vân $ConMag(x)$ tính qua cửa sổ trượt $35 \times h$ pixel.

2. Bộ lọc Gabor sử dụng trong đồ án có các thông số kỹ thuật cụ thể nào?
Tác giả sử dụng phần thực của hàm Gabor với kích thước bộ lọc là $35 \times 35$ pixel, tọa độ điểm gốc trung tâm $(x_0, y_0) = (17, 17)$, hệ số tỷ lệ $\kappa = 5.3$, và triển khai qua 6 góc định hướng: $\theta \in {0, \pi/6, 2\pi/6, 3\pi/6, 4\pi/6, 5\pi/6}$.

3. Tại sao phương pháp ImcompCode lại cần bổ sung thông số cường độ định hướng $oriMag$?
Trên ảnh khớp ngón tay có một số khu vực tương đối phẳng không mang hướng vân cụ thể, khiến phản hồi của bộ lọc Gabor tại các pixel này không có sự chênh lệch rõ rệt. Nếu vẫn gán mã định hướng cho chúng sẽ gây nhiễu cho các điểm lân cận. Chỉ số $oriMag$ đo độ chênh lệch cực đại - cực tiểu của phản hồi lọc; nếu giá trị này dưới ngưỡng cho phép, pixel đó sẽ được gán nhãn riêng (giá trị bằng 6) để loại bỏ nhiễu.

4. Hai tập dữ liệu được sử dụng để kiểm thử hệ thống có quy mô như thế nào?
Hệ thống sử dụng hai tập dữ liệu độc lập: (1) Tập dữ liệu tham khảo chạy trên Google Colaboratory gồm 1.480 ảnh của người đã được định danh và 296 ảnh của người chưa được định danh; (2) Tập dữ liệu tự thu thập trực tiếp bằng camera trên phần cứng Raspberry Pi 4 gồm 100 ảnh khớp ngón trỏ bàn tay phải.

5. Cấu hình phần cứng thực tế của thiết bị nhận diện gồm những linh kiện nào?
Hệ thống phần cứng hoàn chỉnh gồm có máy tính nhúng Raspberry Pi 4 Model B (phiên bản 2019), mô-đun ghi hình Raspberry Pi Camera Module V2 sử dụng cảm biến Sony IMX219 8MP kết nối qua cổng CSI, màn hình cảm ứng điện dung 5 inch Waveshare (độ phân giải $800 \times 480$) giao tiếp qua cổng HDMI, đi kèm buồng chụp có khối tì định vị ngón tay và hệ thống đèn LED trợ sáng.


Kết luận

Đồ án tốt nghiệp của tác giả Vũ Cường Thịnh đã thiết kế và hiện thực hóa thành công một hệ thống xử lý ảnh nhận diện khớp ngón tay người hoàn chỉnh trên nền tảng máy tính nhúng Raspberry Pi 4. Bằng việc kết hợp giải thuật trích xuất ROI tự động qua hàm cường độ lồi $ConMag(x)$ cùng phương pháp mã hóa đa đặc trưng định hướng và độ lớn nếp nhăn (ImcompCode & magCode), hệ thống có khả năng vận hành ổn định trước các biến động về vị trí và điều kiện chiếu sáng. Nghiên cứu đã hoàn thành đầy đủ các nhiệm vụ từ mô phỏng thuật toán trên tập dữ liệu lớn đến chế tạo mô hình phần cứng thực nghiệm, đóng góp một giải pháp sinh trắc học chi phí thấp, bảo mật và giàu tiềm năng ứng dụng thực tế.