Hướng dẫn tích hợp thư viện đọc biển số xe máy & xe hơi IPSS

Bài viết này hướng dẫn cách lập trình để tích hợp thư viện IPSS vào project viết bằng C#. Lưu ý IPSS chỉ có phiên bản x64, nếu quý khách không thể build phần mềm x64 vui lòng liên hệ để được hỗ trợ.

Thông tin chung

  • IPSS được viết cho project .NET framework, quý khách có thể sử dụng C# hoặc VB .NET đều được
  • Khi setup project chỉ được chọn mode x64, mode ANY CPU và x86 không build hoặc không run được
  • Nên sử dụng Visual Studio 2017 trở lên
  • Chỉ hỗ trợ Windows 10 x64, không hỗ trợ các hệ điều hành khác (có thể hoạt động nhưng không ổn định)

Các bước tạo project C#

Bước 1: tạo project C#.

Ở đây chúng tôi tạo 1 project Windows Form Application

Mặc định project sẽ có mode là ANY CPU. Chọn Configuration Manager

Trong popup Configuration Manager tạo mới Platform bằng cách chọn New Platform

Chọn platform mới là x64 và đồng thời check vào Create new solution platforms

Trong cấu trúc của solution sẽ có nhiều project, mỗi project có config (Debug/Release) và platform (ANY CPU, x64, x86/Win32, ARM) riêng.

Trong trường hợp của project đọc biển số xe, để dễ hiểu các bạn chỉ cần setup tất cả platform về x64 là được.

Và nếu cẩn thận thì các bạn có thể xóa mode ANY CPU đi, tuy nhiên bước này không quan trọng nên bỏ qua.

Bước 2: clone project IPSS

Clone source code example đọc biển số xe từ link: https://github.com/viscomsolution/IPSS. Nếu bạn là lập trình viên các bạn nên sử dụng Git để clone.

Còn nếu bạn chỉ muốn test độ chính xác đọc biển số thì download tại link: https://viscomsolution.com/download/IPSS.zip

Để đảm bảo rằng bạn cài đặt Visual Studio đúng thì bạn nên build ExampleConsole.sln hoặc IPSS_VS2017_x64.sln. Khi thành công ký tự biển số sẽ in ra như hình dưới (với điều kiện đã mua key).

Bước 3: tích hợp IPSS.dll

Khi bạn đã clone repo IPSS thành công thì vào folder bin\Release sẽ thấy danh sách các file dll trong đó. Trừ file ảnh png và UI.exe thì tất cả các file dll đều cần thiết.

Các bạn copy tất cả các file dll vào folder output của project Windows Form Application đã tạo ở bước 1

Trong Visual Studio, mở Solution Explorer và reference đến file IPSS.dll

Cửa sổ Reference Manager hiện ra, các bạn chọn Browser rồi chọn đến file IPSS.dll

Reference thành công bạn sẽ được như hình dưới

Bước 4: gọi hàm đọc biển số xe

Đầu tiên các bạn cần using namespace TGMT; (Viết tắt của cty Thị Giác Máy Tính). Sau đó tạo 1 button và click để tạo event button1_Click và even Form1_Load.

Trong event Form1_Load các bạn khởi tạo biến kiểu PlateReader(), trong event button1_Click các bạn gọi hàm Read để đọc từ ảnh bitmap hoặc image path.

Kết quả trả về là biến kiểu PlateInfo, hoặc các bạn có thể kham khảo trong ExampleConsole.sln.

Giải thích kết quả trả về

PlateInfo gồm các thuộc tính sau:

  • text: ký tự biển số đọc được, bao gồm dấu gạch, dấu chấm và khoảng trắng
  • alphanumeric: ký tự biển số giản lược, chỉ gồm chữ và số dành cho tìm kiếm biển số
  • bitmap: ảnh kết quả có vẽ vùng biển số và ký tự kết quả
  • error: mã lỗi (nếu có) dùng cho mục đích debug
  • isValid: biển số hợp lệ hay không (dùng cho việc đọc biển số tự động)
  • elapsedMilisecond: thời gian đọc biển số
  • rect: tọa độ biển số
  • type: long (biển số 1 dòng) hoặc short (biển số 2 dòng)

Một số thông tin khác:

  • Chương trình chỉ trả về 1 biển số cho dù ảnh có nhiều biển số để phục vụ cho việc giữ xe. Nếu quý khách cần chức năng đọc nhiều biển cùng lúc vui lòng liên hệ.
  • Nếu có nhiều biển số trong ảnh thì IPSS trả về biển số gần góc trên bên trái nhất
  • Thời gian đọc ảnh thông thường (dưới 1 mpx) khoảng 300-500ms, nếu nhiều hơn vui lòng check lại
  • Log in ra ở console là do thư viện Intel MK DNN (mkldnn.dll) nên không thể tắt được.

Chúc quý khách thành công. Nếu không thành công vui lòng liên hệ phone/zalo: 0939825125

Categories: