Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cô của trường Đại học Điện Lực, đặc biệt là các thầy cô Công Nghệ ThôngTin của trường đã tạo điều kiện ch
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
-*** -ĐỀ CƯƠNG THỰC TẬP MÔN THỰC TẬP HỆ THỐNG THÔNG TIN TÍCH HỢP
ĐỀ TÀI:
XÂY DỰNG MODULE NHẬN DẠNG BIỂN SỐ XE
Giảng viên hướng dẫn : TS NGÔ HOÀNG HUY
Sinh viên thực hiện : NGUYỄN THI THU
Trang 3MỤC LỤC
LỜI NÓI ĐẦU 4
1 Lời cảm ơn 4
2 Phạm vi nghiên cứu 4
3 Phương pháp nghiên cứu 4
CHƯƠNG 1 GIỚI THIỆU VỀ CÔNG TY/ĐƠN VỊ THỰC TẬP 5
1.1 Về FSI 5
1.2 Về FSIS-CE Tech 7
1.3 Kết quả cần đạt được 8
1.4 Các yêu cầu đối với sinh viên 8
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG 9
2.1 Khảo sát hiện trạng 9
2.1.2 Mục tiêu 9
2.2.2 Yêu cầu chức năng 9
2.2 Mô tả bài toán 9
CHƯƠNG 3: XÂY DỰNG MODULE NHẬN DẠNG BIỂN SỐ XE 11
3.1 Xây dựng module bóc tách biển số xe với YOLOV5 11
3.1.1 Giới thiệu về YOLO 11
3.1.2 Kiến truc mạng YOLO 11
3.2 Thử nghiệm bóc tách biển số xe với YOLOv5 17
3.3 Xây dựng module nhận dạng biển số xe 18
3.3.1 Giới thiệu về Transformer OCR 18
3.3.2 Chức năng nhận dạng biển số xe 18
3.3.3 Chức năng kiểm tra và đối chiếu thông tin xe khi ra khỏi bãi 19
3.4 Kết quả thử nghiệm nhận dạng 20
3.5 Tích hợp module nhận dạng 20
3.5.1 Chức năng của hệ thống 20
3.5.1 Mô tả nghiệp vụ 24
3.5.2 Thiết kế giao diện 24
CHƯƠNG 4: KẾT LUẬN 26
4.1 Kết quả đạt được 26
4.2 Hướng phát triển 26
TÀI LIỆU THAM KHẢO 27
Trang 4LỜI NÓI ĐẦU
1 Lời cảm ơn
Trong quá trình thực tập và làm bài báo cáo thực tập, khó tránh khỏisai sót, rất mong các thầy, cô bỏ qua Đồng thời do trình độ lý luận cũng nhưkinh nghiệm thực tiễn còn hạn chế nên bài báo cáo không thể tránh khỏinhững thiếu sót, em rất mong nhận được ý kiến đóng góp thầy, cô để em họcthêm được nhiều kinh nghiệm và sẽ hoàn thành tốt hơn bài báo cáo
Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy
cô của trường Đại học Điện Lực, đặc biệt là các thầy cô Công Nghệ ThôngTin của trường đã tạo điều kiện cho em hoàn thành báo cáo Đặc biệt gửi lờicảm ơn sâu sắc tới giảng viên hướng dẫn Ngô Hoàng Huy, đã nhiệt tình giúpđỡ và hướng dẫn em trong suốt quá trình học tập
2 Phạm vi nghiên cứu
Tập trung Nghiên cứu phương pháp nhận dạng biển số xe, sau đó là
áp dụng vào thực tiễn xây dựng một hệ thống quản lý bãi đỗ xe thông minh
3 Phương pháp nghiên cứu
Phương pháp nghiên cứu lý thuyết
- Phân tích thiết kế hệ thống, truy vấn SQL
- Phương pháp trích xuất đặc trưng OCR
- Sử dụng model YOLOv5 để phát hiện đối tượng
Phương pháp nghiên cứu thực nghiệm
- Khảo sát những góc chụp camera
- Khảo sát thời gian nhận diện gửi trả về máy chủ
- Lập trình thiết kế, cài đặt thuật toán trong môi trường thực nghiệm
Trang 5CHƯƠNG 1 GIỚI THIỆU VỀ CÔNG TY/ĐƠN VỊ THỰC TẬP
1.1 Về FSI
Công ty CP Đầu Tư Thương Mại và Phát Triển Công Nghệ FSI là công tycông nghệ hàng đầu Việt Nam trong lĩnh vực số hóa và chuyển đổi số giúp xâydựng tổ chức của bạn theo mô hình công nghệ số đồng thời bảo vệ tài sản quantrọng nhất của tổ chức bạn – thông tin
Thành lập vào ngày 6/11/2007, trải qua nhiều năm xây dựng và phát triển,FSI vẫn luôn trung thành với sứ mệnh: Trên cơ sở thấu hiểu nhu cầu của khách hàng, chúng tôi cung cấp các giải pháp, công nghệ tiên tiến nhằm mang lại giá trị cao nhất cho khách hàng và đối tác
Đối tác của các hãng công nghệ lớn trên toàn cầu như: IBM, Dell, Cisco, Oracle, Microsoft, Symantec, Juniper, HP, Eset, Kaspersky, NTT Data…
Trải qua nhiều năm xây dựng và phát triển, FSI vẫn luôn trung thành vớisứ mệnh: Trên cơ sở thấu hiểu nhu cầu của khách hàng, chúng tôi cung cấp cácgiải pháp, công nghệ tiên tiến nhằm mang lại giá trị cao nhất cho khách hàng vàđối tác
- Sứ mệnh: Không ngừng đổi mới và sáng tạo các giải pháp công nghệViệt - Đẳng cấp quốc tế góp phần phát triển đất nước và giúp các tổchức, doanh nghiệp Việt vươn tầm quốc tế
- Tầm nhìn: Đến năm 2023, FSI sẽ trở thành nhà cung cấp giải phápchuyển đổi số top 10 Đông Nam Á
- Giá trị cốt lõi: Cống hiến, sáng tạo, tận tâm, uy tín, đoàn kết
Triết lý kinh doanh:
- Hết lòng vì mục tiêu và sự thành công của khách hàng
- Sáng tạo trong cả tư duy lẫn hành động
Trang 6- Chuyên nghiệp từ thái độ và tác phong làm việc đến kỹ năng chuyên môn và tính cam kết dài lâu.
- Kết hợp hài hòa lợi ích của khách hàng, nhân viên, cổ đông, các đối tác và cả cộng đồng
- Phát triển bền vững lâu dài
Đội ngũ nhân sự chất lượng cao được đào tạo bài bản trong và ngoàinước, nhiệt tình, yêu nghề, giỏi chuyên môn và có nhiều năm kinh nghiệm thựctiễn trong các lĩnh vực:
- Tư vấn và cung cấp thiết bị số hóa tài liệu
- Phát triển và triển khai phần mềm, giải pháp công nghệ số hóa tàiliệu
- Xây dựng cơ sở hạ tầng CNTT và tích hợp hệ thống
- Tư vấn, triển khai các dịch vụ số hóa tài liệu
- Bảo trì hệ thống; Bảo dưỡng, sửa chữa máy scan chuyên dụng
- Đội ngũ nhân sự thông thạo nhiều ngoại ngữ: Anh, Nhật, Nga, …100% nhân sự được tham gia các khóa đào tạo thường xuyên tại công tyvà các trung tâm đào tạo uy tín trên thị trường cũng như được đào tạo bài bản tạicác hãng công nghệ lớn ở Việt Nam và thế giới
Văn hóa doanh nghiệp: FSI hướng đến xây dựng một môi trường làm việcchuyên nghiệp, đoàn kết và cởi mở, tạo cơ hội cho tất cả các thành viên đượcphát triển kỹ năng chuyên môn cũng như hoàn thiện bản thân Bên cạnh đó,công ty luôn chú trọng đến các hoạt động đào tạo, nuôi dưỡng nhân tài và xâydựng đời sống vật chất, tinh thần phong phú, lành mạnh cho tất cả các thànhviên
Sơ đồ cơ cấu tổ chức:
- Hội đồng quản trị
- Ban kiểm soát
- Ban điều hành
- Các khối: Hỗ trợ, Kinh doanh, Kỹ thuật Công nghệ, Đơn vị trựcthuộc
Trang 71.2 Về FSIS-CE Tech
Được thành lập từ năm 2016, đến nay, dù chỉ với chặng đường 3 nămnhưng FSI Soft ngày càng khẳng định rõ được vị thế của một doanh nghiệp trẻtrên thị trường chuyển đổi số Năm 2019 không chỉ là một năm thành công củaFSI Soft khi thể hiện được năng lực của mình trong lĩnh vực CNTT nói chung,thị trường chuyển đổi số nói riêng mà còn có những đóng góp to lớn trong sựphát triển của FSI
Tiền thân là trung tâm nghiên cứu và phát triển trực thuộc tổng công ty
CP Đầu tư thương mại và Phát triển công nghệ FSI (FSI) Thành lập ban đầu với
số vốn nhỏ, quy mô hạn chế, cùng nhiều khó khăn và thách thức Tới nay, sau 3
Trang 8năm chặng đường, FSIS đã ngày càng bứt phá, khẳng định rõ được uy tín,thương hiệu của mình Đặc biệt, năm 2019 vừa qua – một năm đáng nhìn lại củaFSIS với những bước ngoặt lớn trong lĩnh vực chuyển đối số, giúp FSI trở thànhtop những doanh nghiệp chuyển đối số hàng đầu tại Việt Nam
FSIS – Con người chuyên nghiệp tạo nên thành công:
Có được những thành công, sự bứt phá vượt bậc chỉ trong chặng đường 3năm đưa FSIS trưởng thành, vững mạnh như ngày hôm nay, đầu tiên, phải kểđến đội ngũ nhân lực đầy tiềm năng tại FSIS
Dưới sự chỉ dẫn và lãnh đạo đúng đắn của những nhân sự chủ chốt –những con người bản lĩnh, luôn hết mình vì sự nghiệp chung của FSIS Cùnghơn 50 cán bộ nhân viên được đào tạo bài bản, có nhiều kinh nghiệm, từng thamgia những dự án lớn nhỏ của chính phủ và các tập đoàn cũng như làm việc vớicác đối tác nước ngoài
Đội ngũ cán bộ FSI Soft liên tục được cập nhập kiến thức, công nghệ mớivà được thử sức với những dự án thực tế theo quy trình công nghệ sản xuất hiệnđại
Vậy mới nói, con người FSIS chính là nền tảng tạo ra mọi thành công củaFSIS nói riêng và thành công của FSI nói chung
1.3 Kết quả cần đạt được
- Tìm hiểu được phương pháp phân đoạn ảnh màu JSEG
- Tìm hiểu được phương pháp trích rút đặc trưng
- Nghiên cứu được phương pháp tra cứu ảnh dựa vào vùng ảnh
- Xây dựng được hệ thống tra cứu ảnh thử nghiệm với tập 2000 ảnh
1.4 Các yêu cầu đối với sinh viên
- Có khả năng học và tìm hiểu các tài liệu bằng Tiếng Anh
- Có khả năng lập trình với ngôn ngữ Python
- Sử dụng công cụ lập trình Sublime Text 3, Notepad++, Visual Studio
Trang 9CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG
- Bóc tách vùng biển số độ chính xác phải đạt 99%
- Tốc độ nhận dạng và bóc tách nhanh phải < 1 giây
2.2.2 Yêu cầu chức năng
- Nhận dạng biển số xe, lưu thông tin và hiển thị thông tin real-time ra màn hình
- Kiểm tra, đối chiếu thông tin biển số khi xe ra khỏi bãi
2.2 Mô tả bài toán
Thiết kế một hệ thống trông, giữ xe tự động sử dụng công nghệ nhận dạngbiển số xe Mỗi xe có một biển số xe duy nhất
Hình 2.1: Mô phỏng hệ thống quản lý bãi đỗ xe
- Hệ thống hoạt động hoàn toàn tự động do đó giảm 100% về mặt thời gian giám sát
- Tự động nhận biết xe vào-ra để mở barrier
Trang 10- Tự động ghi hình ảnh xe vào ra.
- Tự động phân tích ghi nhận biển số xe
- Tự động tính số lần vào ra
Quản lý
- Thống kê, theo dõi tình hình xe vào – ra theo năm tháng ngày giờ
- Báo cáo doanh thu theo ngày, tháng, năm nếu có yêu cầu khách hàng
- Báo cáo doanh thu theo ca trong này nếu có yêu cầu khách hàng
- Quản lý nhân viên theo ca làm việc
- Quản lý xe trong bãi
Đối tượng sử dụng:
- Bãi đỗ xe các trường đại học, cao đẳng
- Bãi trông giữ xe công cộng có quy mô lớn
- Các siêu thị, khu vui chơi giải trí
- Các khu chung cư, khách sạn, nhà hàng
- Công trường, nhà máy, xí nghiệp
Khi vào gửi xe, hệ thông camera sẽ tự động chụp lại vùng biển số, nhậndạng vùng biển số xe lưu real-time vào cơ sở dư liệu Tất cả chỉ mất 1 đến 3giây Khi lấy xe ra, xe đi vào làn ra hệ thống camera sẽ chụp lại vùng biển số đốichiếu với biển số xe lưu trong cơ sở dữ liệu Nếu không khớp hệ thông sẽ phát ramột tiếng ‘bíp’, nhẫn viên bãi sẽ ra kiểm tra
Ở đây tối sẽ trình bày chủ yếu về module nhận dạng biển số của hệ thốngquản lý bãi đỗ xe
Trang 11CHƯƠNG 3: XÂY DỰNG MODULE NHẬN DẠNG BIỂN SỐ XE 3.1 Xây dựng module bóc tách biển số xe với YOLOV5
3.1.1 Giới thiệu về YOLO
YOLO trong object detection có nghĩa là “You only look once” Nghĩa làchỉ cần nhìn 1 lần là có thể phát hiện ra vật thể Về độ chính xác YOLO có thểkhông phải là thuật toán tốt nhất nhưng nó là thuật toán nhanh nhất trong các lớp
mô hình object detection Nhưng YOLO đạt được tốc độ gần như real time mà
độ chính xác không kém so với các model thuộc top đầu
YOLO là thuật toán object detection nên mục tiêu của mô hình không chỉlà dự báo nhãn cho vật thể như các bài toán classification mà nó còn xác địnhlocation của vật thể Do đó YOLO có thể phát hiện được nhiều vật thể có nhãnkhác nhau trong một bức ảnh thay vì chỉ phân loại duy nhất một nhãn cho mộtbức ảnh
3.1.2 Kiến truc mạng YOLO
Kiến trúc YOLO bao gồm: base network là các mạng convolution làmnhiệm vụ trích xuất đặc trưng Phần phía sau là những Extra Layers được ápdụng để phát hiện vật thể trên feature map của base network
Base network của YOLO sử dụng chủ yếu là các convolutional layer vàcác fully conntected layer Các kiến trúc YOLO cũng khá đa dạng và có thể tùybiến thành các version cho nhiều input shape khác nhau Một số khái niệm cầnbiết:
Bounding box, anchor box: Bounding box là khung hình bao quanh vật
thể Anchor box là những khung hình có kích thước xác định trước, có tácdụng dự đoán bounding box
Mạng nơ ron tích chập (Convolutional Neural Network): Đây là mạng
nơ ron áp dụng các layer Convolutional kết hợp với Maxpooling để giúptrích xuất đặc trưng của ảnh tốt hơn
Feature map: Là một khối output mà ta sẽ chia nó thành một lưới ô
vuông và áp dụng tìm kiếm và phát hiện vật thể trên từng cell
Non-max suppression: Phương pháp giúp giảm thiểu nhiều bounding
box overlap nhau về 1 bounding box có xác suất lớn nhất
ground truth box: Khung hình được xác định trước từ bộ dữ liệu thông
qua tọa độ (cx, cy, w, h) giúp xác định vật thể
offsets: Các tọa độ (cx, cy, w, h) để xác định vật thể
positive matching prediction: Khung được dự báo (predicted box) là
vùng có vật thể là đúng, được xác định dựa trên tỷ lệ IoU > 0.5 giữapredicted box với ground truth box
Trang 12 negative matching prediction: Khung được dự báo (predicted box) là
vùng không chứa vật thể là đúng, cũng được xác định dựa trên IoU < 0.5giữa predicted box với ground truth box
Hình 3.1: Sơ đồ kiến trúc mạng YOLO Thành phần Darknet Architechture đượcgọi là base network có tác dụng trích suất đặc trưng Output của base network làmột feature map có kích thước 7x7x1024 sẽ được sử dụng làm input cho cácExtra layers có tác dụng dự đoán nhãn và tọa độ bounding box của vật thể
Đầu ra của YOLO là một véc tơ sẽ bao gồm các thành phần:
Trong đó
Việc hiểu output khá là quan trọng để chúng ta cấu hình tham số chuẩnxác khi huấn luyện model qua các open source như darknet Như vậy output sẽđược xác định theo số lượng classes theo công thức (n_class+5) Nếu huấn luyện
80 classes thì bạn sẽ có output là 85 Trường hợp bạn áp dụng 3 anchors/cell thì
số lượng tham số output sẽ là:
Trang 13Những feature map ban đầu có kích thước nhỏ giúp dự báo được cácobject kích thước lớn Những feature map sau có kích thước lớn hơn trong khianchor box được giữ cố định kích thước nên sẽ giúp dự báo các vật thể kíchthước nhỏ.
Hình 3.2: Các feature maps của mạng YOLOv3 với input shape là 416x416,output là 3 feature maps có kích thước lần lượt là 13x13, 26x26 và 52x52
Trên mỗi một cell của các feature map chúng ta sẽ áp dụng 3 anchor boxđể dự đoán vật thể Như vậy số lượng các anchor box khác nhau trong một môhình YOLO sẽ là 9 (3 featue map x 3 anchor box)
Trang 14Đồng thời trên một feature map hình vuông S x S, mô hình YOLOv3 sinh
ra một số lượng anchor box là: S x S x 3 Như vậy số lượng anchor boxes trênmột bức ảnh sẽ là:
(13×13+26×26+52×52) ×3=10647(anchor boxes)
Đây là một số lượng rất lớn và là nguyên nhân khiến quá trình huấn luyện
mô hình YOLO vô cùng chậm bởi chúng ta cần dự báo đồng thời nhãn vàbounding box trên đồng thời 10647 bounding boxes
Một số lưu ý khi huấn luyện YOLO:
Khi huấn luyện YOLO sẽ cần phải có RAM dung lượng lớn hơn để saveđược 10647 bounding boxes như trong kiến trúc này
Không thể thiết lập các batch_size quá lớn như trong các mô hìnhclassification vì rất dễ Out of memory Package darknet của YOLO đãchia nhỏ một batch thành các subdivisions cho vừa với RAM
Thời gian xử lý của một step trên YOLO lâu hơn rất rất nhiều lần so vớicác mô hình classification Do đó nên thiết lập steps giới hạn huấn luyệncho YOLO nhỏ Đối với các tác vụ nhận diện dưới 5 classes, dưới 5000steps là có thể thu được nghiệm tạm chấp nhận được Các mô hình cónhiều classes hơn có thể tăng số lượng steps theo cấp số nhân tùy bạn.Để tìm được bounding box cho vật thể, YOLO sẽ cần các anchor box làm
cơ sở ước lượng Những anchor box này sẽ được xác định trước và sẽ bao quanhvật thể một cách tương đối chính xác Sau này thuật toán regression boundingbox sẽ tinh chỉnh lại anchor box để tạo ra bounding box dự đoán cho vật thể.Trong một mô hình YOLO:
Mỗi một vật thể trong hình ảnh huấn luyện được phân bố về một anchorbox Trong trường hợp có từ 2 anchor boxes trở lên cùng bao quanh vậtthể thì ta sẽ xác định anchor box mà có IoU với ground truth boundingbox là cao nhất