[Nhận diện biển số xe] Chương 1 – Phát hiện biển số xe bằng pretrain model YOLO

Helo, rất xin lỗi anh em vì đợt này lâu quá mình mới lại có bài cho anh em. Lý do là mình bận quá, cuối năm có nhiều việc nên mình phải tranh thủ thời gian rảnh hiếm hỏi. Hôm nay mình xin giới thiệu đến các bạn 1 chủ đề mà mình thấy đang “khá hot” và nhiều bạn hỏi đó là nhận diện biển số xe.

Tuy nhiên, do vấn đề này không đơn giản, nên mình sẽ chia ra thành nhiều Chương khác nhau để các bạn dễ năm bắt và phù hợp với phong cách Mì Ai nhé. Với Chương 1 này, chúng ta sẽ đi sâu vào tìm hiểu pipeline để nhận diện biển số xe và cách sử dụng vài pretrain model để nhận biển số xe đơn giản nhé.

Phần 1. Pipeline để nhận diện biển số xe

Well, nhận diện biển số xe có nghĩa là với input đầu vào là một hình ảnh xe oto kèm biển số, chúng ta phải có output đầu ra là 1 đoạn text chứa nội dung biển số. Ví dụ: “30A09832” hoặc “15L2222″….

nhận diện biển số
Nguồn: https://i.ytimg.com/

Để làm được như vậy, chúng ta phải làm step by step các công đoạn sau:

  1. Detection / Phát hiện: Chúng ta phải biết biển số nằm ở đâu trong cả bức ảnh.
  2. Segmentation / Phân tách: Tách riêng biển số đó ra khỏi ảnh, một số phương pháp thì còn tách luôn cả chữ số trên biển ra.
  3. Recognition/ Nhận diện: Nhận được nội dung biển số và hiển thị trên màn hình hoặc gửi đi đâu đó tùy.

Chúng ta sẽ đi tìm hiểu từng phần trong series này. Trong Chương 1 này chúng ta sẽ tìm hiểu bước Detection thôi nhé, và sẽ tập trung vào sử dụng pretrain model để nhận diện.

Thôi, lý thuyết vậy là đủ, bây giờ tiến hành thôi!

Phần 2. Phát hiện biển số bằng pretrain YOLO

Phát hiện biển số có rất nhiều phương pháp, mỗi cái có ưu và nhược điểm riêng. Mình sẽ lần lượt guide các bác qua từng phương pháp, các bạn bình tĩnh và ủng hộ mình nhé.

Để tiếp tục làm bài, các bạn tạo thư mục MiAI_LP_Detection_1 để chứa các món của bài này. Bây giờ các bạn gõ tiếp lệnh git thần thánh quen thuộc:

git clone https://github.com/thangnch/MiAI_LP_Detection_1 .

Sau khi đợi một chút cho mã nguồn chạy về máy, các bạn chạy tiếp lệnh sau để cài đặt các thư viện cần thiết:

pip install -r setup.txt

Và bước cuối cùng, tải file pretrain weight YOLOv3 về máy. Link tải tại đây, sau khi tải xong thì các bạn lưu file vào thư mục MiAI_LP_Detection_1 nhé.

Done. Sang bước tiếp theo.

Phần 3. Chạy thử và tận hưởng

Các bạn chuyển vào thư mục MiAI_LP_Detection_1 và gõ lệnh:

python YOLO.py -i test01.jpg

Nếu mọi thứ ổn, các bạn sẽ thấy kết quả hiển thị lên màn hình rất rõ ràng như sau:

phát hiện biển số

Các bạn có thể thay đổi file ảnh để thử với các hình ảnh biển số khác nhau nhé. Đố các bạn biết nhận diện bằng pretrain này có nhược điểm gì? Các bạn comment trên group Mì AI (Group trao đổi, chia sẻ: https://www.facebook.com/groups/miaigroup ) để cùng trao đổi nhé.

Mình xin dừng bài này ở đây, hẹn gặp lại các bạn trong các bài tiếp theo của series Nhận diện biển số nhé.

Hãy gia nhập cùng Mì Ai nhé!

Fanpage: http://facebook.com/miaiblog
Group trao đổi, chia sẻ: https://www.facebook.com/groups/miaigroup
Website: http://ainoodle.tech
Youtube: http://bit.ly/miaiyoutube

mm
Nguyễn Chiến Thắng

Một người đam mê những điều mới mẻ và công nghệ hiện đại. Uớc mơ cháy bỏng dùng AI, ML để làm cho cuộc sống tốt đẹp hơn! Liên hệ: thangnch@gmail.com hoặc facebook.com/thangnch

Related Post

7 Replies to “[Nhận diện biển số xe] Chương 1 – Phát hiện biển số xe bằng pretrain model YOLO”

Leave a Reply

Your email address will not be published. Required fields are marked *