Nhận diện căn cước nhân dân bằng python
1. pip install opencv-python pytesseract
2. Sau khi đã cài đặt thành công, bạn có thể thực hiện nhận diện căn cước nhân dân bằng đoạn code sau:
import cv2
import pytesseract
# Đường dẫn đến ảnh chứa số CMTND
img_path = 'path/to/image.jpg'
# Load ảnh và chuyển sang ảnh đen trắng
img = cv2.imread(img_path)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Áp dụng các bước xử lý ảnh để tăng cường chất lượng ảnh
gray = cv2.GaussianBlur(gray, (3, 3), 0)
gray = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)[1]
# Tìm contours của văn bản
contours = cv2.findContours(gray, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)[0]
# Lưu trữ kết quả
results = []
# Với mỗi contour, nhận diện văn bản bên trong và lưu vào kết quả
for contour in contours:
(x, y, w, h) = cv2.boundingRect(contour)
if w < 100 or h < 10:
continue
roi = gray[y:y+h, x:x+w]
text = pytesseract.image_to_string(roi, lang='vie', config='--psm 6')
results.append(text.strip())
# In kết quả
print(results)
Tác giả: admin