Trong chương trình fingerprint detection này, một số thuật toán và phương pháp đã được sử dụng để xử lý và nhận diện vân tay. Dưới đây là các thuật toán chính:
-
Gaussian Blur:
-
Được sử dụng để làm mờ hình ảnh nhằm giảm nhiễu và làm mềm các cạnh trước khi phát hiện cạnh. Thuật toán Gaussian Blur sử dụng hàm Gaussian để làm mờ các pixel, giúp cải thiện độ chính xác của các bước xử lý tiếp theo.
-
Canny Edge Detection:
-
Đây là một trong những thuật toán phát hiện cạnh phổ biến nhất. Nó hoạt động theo ba bước chính:
-
Làm mờ: Sử dụng Gaussian Blur để giảm nhiễu.
-
Tính gradient: Phát hiện các điểm có độ thay đổi mạnh về cường độ sáng (các cạnh).
-
Thực hiện ngưỡng kép: Để xác định các cạnh mạnh và yếu, và loại bỏ các điểm không phải là cạnh.
-
Template Matching:
-
Được sử dụng trong hàm
match_fingerprint
để so sánh vân tay đầu vào với các vân tay đã lưu trong cơ sở dữ liệu. Phương pháp này sử dụng hàm cv2.matchTemplate
, cho phép so sánh hai hình ảnh để tìm kiếm sự tương đồng. Kết quả tương đồng được đánh giá bằng cách sử dụng một ngưỡng (threshold) để quyết định xem hai vân tay có giống nhau hay không.
-
SQLite Database:
-
Cơ sở dữ liệu SQLite được sử dụng để lưu trữ thông tin về người dùng và vân tay củ
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
Cài đặt visual studio code
cài đặt Python
cài đặt sqlite brower để xem csdl
Cài đặt các thư viện hỗ trợ chạy code python chương trình :
-
import sys
-
import cv2
-
import numpy as np
-
import sqlite3
-
from PyQt5.QtWidgets import (
-
QApplication, QWidget, QLabel, QPushButton, QGridLayout,
-
QLineEdit, QMessageBox, QFileDialog
-
)
-
from PyQt5.QtGui import QPixmap
-
from PIL import Image