Ứng dụng nhận dạng chữ màu xanh bằng python

Để viết ứng dụng nhận dạng chữ màu xanh bằng Python, ta có thể sử dụng thư viện OpenCV để xử lý ảnh và tìm kiếm các ký tự màu xanh trong ảnh. Sau đây là một ví dụ đơn giản về việc tìm kiếm chữ màu xanh trong một ảnh.

Lập trình Python

Sau đây là một chương trình đơn giản để nhận dạng chữ màu xanh để bạn tham khảo phát triển ứng dụng.

import cv2

# Đọc ảnh từ file
image = cv2.imread('test_image.png')

# Chuyển ảnh sang định dạng HSV để dễ dàng phát hiện màu xanh
hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)

# Thiết lập phạm vi của màu xanh trong không gian màu HSV
lower_green = (60, 50, 50)
upper_green = (80, 255, 255)

# Tìm kiếm các vùng có màu nằm trong phạm vi đã thiết lập
mask = cv2.inRange(hsv, lower_green, upper_green)

# Áp dụng phép toán đóng và mở để loại bỏ nhiễu và kết nối các vùng có màu xanh gần nhau
kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
closed_mask = cv2.morphologyEx(mask, cv2.MORPH_CLOSE, kernel)
opened_mask = cv2.morphologyEx(closed_mask, cv2.MORPH_OPEN, kernel)

# Tìm kiếm các contour trong ảnh đã xử lý
contours, hierarchy = cv2.findContours(opened_mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

# Duyệt qua các contour tìm được và vẽ hình chữ nhật xung quanh các contour có diện tích lớn hơn một ngưỡng nào đó (ở đây là 500)
for contour in contours:
    area = cv2.contourArea(contour)
    if area > 500:
        x, y, w, h = cv2.boundingRect(contour)
        cv2.rectangle(image, (x, y), (x+w, y+h), (0, 255, 0), 2)

# Hiển thị ảnh kết quả
cv2.imshow('Result', image)
cv2.waitKey(0)

Trong ví dụ này, ta đầu tiên đọc ảnh từ file và chuyển ảnh sang định dạng HSV để phát hiện màu xanh dễ dàng hơn. Sau đó, ta thiết lập phạm vi của màu xanh trong không gian màu HSV và tìm kiếm các vùng có màu nằm trong phạm vi đã thiết lập bằng hàm cv2.inRange(). Tiếp theo, ta áp dụng các phép toán đóng và mở để loại bỏ nhiễu và kết nối các vùng có màu xanh gần nhau. Sau đó, ta tìm kiếm các contour trong ảnh đã xử lý bằng hàm cv2.findContours() và duyệt qua các contour tìm được để vẽ hình chữ nhật xung quanh các contour có diện tích lớn hơn một ngưỡng nào đó (ở đây là 500). Cuối cùng, ta hiển thị ảnh kết quả bằng hàm cv2.imshow() và đợi người dùng nhấn phím để thoát khỏi chương trình bằng hàm cv2.waitKey().

Chú ý rằng đây chỉ là một ví dụ đơn giản và ứng dụng nhận dạng chữ màu xanh có thể được phát triển thêm với nhiều tính năng và chức năng khác nhau để đáp ứng nhu cầu sử dụng cụ thể của từng trường hợp.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *