Ứng dụng Deep Learning để đếm số lượng xe ôtô trong nội thành Đà Nẵng

25 600 1
Ứng dụng Deep Learning để đếm số lượng xe ôtô trong nội thành Đà Nẵng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẶNG THỊ MỸ NHÀN ỨNG DỤNG DEEP LEARNING ĐỂ ĐẾM SỐ LƯỢNG XE ÔTÔ TRONG NỘI THÀNH ĐÀ NẴNG Chuyên ngành: Khoa Học Máy Tính Mã số: 8480101 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC: TS TRẦN THẾ VŨ Đà Nẵng - Năm 2019 Cơng trình hồn thành TRƯỜNG ĐẠI HỌC BÁCH KHOA Người hướng dẫn khoa học: TS TRẦN THẾ VŨ Phản biện 1: TS Nguyễn Văn Hiệu Phản biện 2: TS Phạm Xuân Hậu Luận văn bảo vệ trước Hội đồng chấm luận văn tốt nghiệp thạc sĩ Khoa học máy tính Trường Đại học Bách khoa vào ngày 25 tháng năm 2019 Có thể tìm hiểu luận văn tại: - Trung tâm Học liệu, Đại học Đà Nẵng Trường Đại học Bách khoa - Thư viện Khoa Công nghệ thong tin, Trường Đại học Bách khoa Đại học Đà Nẵng PHẦN I: MỞ ĐẦU Lý chọn đề tài Giao thông vấn đề quan tâm nhiều đô thị lớn nước nói chung Việt Nam nói riêng Trong năm gần tình trạng kẹt xe ln vấn đề nghiêm trọng thiết Đây vấn đề xúc toàn xã hội, ảnh hưởng đến phát triển bền vững kinh tế, văn hóa, xã hội hình ảnh đất nước Việt Nam với bạn bè Quốc tế Hiện nay, có nghiên cứu, nhiều giải pháp tháo gỡ tình trạng tắc nghẽn giao thơng hiệu chưa cao tình trạng kẹt xe xảy thường xuyên trục đường giao thông, đặc biệt khu đô thị Xuất phát từ yêu cầu thực tiễn chọn đề tài “Ứng dụng Deep Learning để đếm số lượng xe ô tô nội thành Đà Nẵng” Mục tiêu nhiệm vụ ➢ Mục tiêu Từ thực trạng đòi hỏi mục tiêu đặt trước mắt là: - Giảm thiểu ùn tắc, tai nạn giao thông - Nâng cao nhận thức ý thức tự giác chấp hành giao thông - Nghiên cứu nhân rộng giải pháp đột phá khắc phục tình trạng ùn tắc giao thơng, đồng thời nâng cao hiệu quản lý trật tự đô thị ➢ Nhiệm vụ Từ mục tiêu đề tài, luận văn tập trung nghiên cứu nhiệm vụ sau: - Tìm hiểu kỹ thuật Deep Learning - Tìm hiểu thư viện cài đặt cho mơ hình Deep Learning 2 - Sử dụng cơng cụ nhận diện để đánh nhãn ôtô video giao thông - Huấn luyện xây dựng mơ hình nhận dạng, đếm xe ôtô Ý nghĩa khoa học thực tiễn - Về khoa học: Áp dụng phương pháp Deep Learning để phát hiện, tính tốc độ đếm xe ô tô - Về thực tiễn: Hỗ trợ xác định lưu lượng ô tô tham gia giao thông trục đường giao thông, giúp giải vấn đề giao thông Bố cục luận văn - Chương 1: Giới thiệu khái niệm giao thông thực trạng giao thông Việt Nam; giới thiệu khái niệm xử lý ảnh, học máy, toán nhận dạng ô tô qua hình ảnh tổng quan kết nghiên cứu liên quan nước nước - Chương 2: Giới thiệu môi trường công cụ sử dụng bao gồm thư viện mã nguồn Tensorflow Object Detection, thuật toán SSD (Single Shot Object Detectors), thuật tốn Faster R-CNN, mơ hình Object Detectors; Các bước phát triển chương trình bao gồm bước; Thu thập liệu, đánh nhãn liệu, đào tạo mơ hình, nhận dạng đếm phương tiện - Chương 3: Giới thiệu kết thực nghiệm đánh giá kết nhận dạng đếm số lượng phương tiện video mẫu trích xuất từ camera giao thơng đoạn đường cụ thể nội thành Đà Nẵng - Kết luận hướng phát triển 3 PHẦN II: NỘI DUNG CHƯƠNG NGHIÊN CỨU TỔNG QUAN 1.1 KHÁI NIỆM VÀ THỰC TRẠNG GIAO THÔNG VIỆT NAM 1.1.1 Khái niệm giao thông 1.1.2 Thực trạng giao thông Việt Nam 1.2 KHÁI NIỆM VỀ XỬ LÝ ẢNH, HỌC MÁY VÀ BÀI TỐN NHẬN DẠNG Ơ TƠ QUA HÌNH ẢNH 1.2.1 Khái niệm xử lý ảnh Xử lý ảnh phương pháp chuyển đổi hình ảnh sang dạng số thực số hoạt động để nâng cao chất lượng hình ảnh để trích xuất số thơng tin hữu ích từ 1.2.2 Tổng quan Học máy Học máy - Machine Learning phận của trí tuệ nhân tạo (AI), hệ thống mà sau cung cấp lượng liệu thực thao tác dựa liệu cung cấp để máy học Machine Learning thường dùng việc xử lý tác vụ tương tự người mà khó mơ thành cơng thức cụ thể, ví dụ nhận diện, đánh giá lựa chọn, a, Các phương thức Machine Learning Các thuật tốn Machine Learning thường chia làm nhóm: - Học có giám sát (dạy học) - Học khơng giám sát (tự học) - Học bán giám sát (vừa học vừa tự học) - Reinforcement Learning (học tăng cường) b, Các nhóm Machine Learning dựa chức - Thuật toán phân loại (Classification Algorithms) bao gồm: Phân loại tuyến tính (Linear Classifier), Máy hỗ trợ vector (Support Vector Machine – SVM) - Giải thuật dựa vào thể thức (Instance-based Algorithms): K-Nearest Neighbor (KNN), Learning Vector Quantization (LVQ) - Giải thuật Bayesian: Naive Bayes, Gaussian Naive Bayes - Giải thuật phân cụm: K-Means clustering, K-Medians - Dimensionality Reduction Algorithms: Phân tích thành phần độc lập (Principal Component Analysis –PCA), Phân loại tuyến tính (Linear Discriminant Analysis – LDA) 1.2.3 Bài tốn nhận dạng tơ qua hình ảnh a Giới thiệu về tốn nhận dạng tơ qua hình ảnh Những năm gần đây, có nhiều cơng trình nghiên cứu tốn nhận dạng ô tô Ban đầu chỉ toán đơn giản, ảnh chỉ có hình ảnh xe tơ với góc chụp diện, khơng đáp ứng nhu cầu ngày cao sống, khoa học ngày Vì có cải tiến nghiên cứu tốn phát xe tơ mơi trường phức tạp hơn, có nhiều xe tơ xuất đồng thờivới nhiều góc chụp khác với phương tiện khác ảnh Phát xe ô tô kỹ thuật để phát vị trí, màu sắc kích thước khác ảnh bất kỳ Kỹ thuật chỉ nhận biết đặc trưng xe ô tô bỏ qua đặc trưng khác b Các phương pháp nhận dạng xe tơ Dựa vào tính chất phương pháp xác định xe ô tô ảnh, phương pháp chia thành bốn loại chính, tương ứng với bốn hướng tiếp cận khác - Hướng tiếp cận dựa tri thức: - Hướng tiếp cận dựa đặc trưng không thay đổi - Hướng tiếp cận dựa so sánh khớp mẫu - Hướng tiếp cận dựa ảnh mẫu có sẵn c Những khó khăn nhận dạng xe tơ ảnh - Xe tơ ảnh có góc chụp khác - Mỗi loại xe có đặc trưng khác - Một số xe bị che khuất đối tượng - Giới hạn số hình ảnh cần thiết cho việc huấn luyện 1.3 TỔNG QUAN CÁC KẾT QUẢ NGHIÊN CỨU TRONG VÀ NGOÀI NƯỚC 1.3.1 Một số nghiên cứu thực nước ta - Nghiên cứu phát đường, ôtô người công nghệ ảnh hỗ trợ cho ôtô tự hành hai tác giả Trương Quốc Bảo, Trương Quốc Định - Trường ĐH Cần Thơ [1] - Các nhà khoa học thuộc Khoa Điện - Điện tử, Trường Đại học Giao thông Vận tải nghiên cứu thiết kế chế tạo thành công hệ thống giám sát giao thông ứng dụng công nghệ xử lý ảnh Hệ thống bao gồm camera giám sát, camera chụp hình, mạng truyền thơng, video server, phần mềm xử lý ảnh sở liệu tự động phát ghi nhận tình vi phạm Luật Giao thơng nhằm tăng cường giám sát, phát xử lý kịp thời vi phạm, hạn chế tai nạn nâng cao ý thức chấp hành người tham gia giao thông 1.3.2 Các kết nghiên cứu nước ➢ Nghiên cứu ơng Andrews Sobral: Ơng Andrews Sobral cộng nghiên cứu nhận diện phương tiện qua phương pháp Haar Cascades using OpenCV [3] Nghiên cứu sử dụng thư viện thị giác máy tính mã nguồn mở JavaScript OpenCV để nhận diện hình ảnh truy cập vào webcam ➢ Nghiên cứu nhận diện theo dõi xe sử dụng OpenCV Kalman Filter Ông Ronit Sinha cộng sử dụng OpenCV Kalman Filter để nhận diện theo dõi xe từ luồng trực tuyến Camera giao thông [4] Bộ lọc OpenCV Kalman phát theo dõi xe ô tô từ video phát trực tiếp từ camera ➢ Nghiên cứu nhận diện vật thể thuật toán YOLO: Yolo Redmon Farhadi phát triển vào năm 2015, thời gian học tiến sĩ [5] YOLO (‘You only look once”) thuật toán nhận diện phổ biến nhờ độ xác cao thời gian thực, đạt đến 45 khung hình giây ➢ Nghiên cứu nhận diện phương tiện hướng (Vehicle Detection for Autonomous Driving) Ông Junsheng Fu cộng sử dụng công cụ, bao gồm OpenCV3, Python3.5, tensorflow, CUDA8 OS: Ubuntu 16.04 [6].Có hướng đi: SVM tuyến tính mạng Neural CHƯƠNG PHÂN TÍCH HỆ THỐNG 2.1 NHẬN DẠNG ĐỐI TƯỢNG XE Ô TÔ DỰA VÀO DEEP LEARNING Mục tiêu toán từ video cụ thể phải nhận diện phương tiện xuất video Sau nhận diện đối tượng xe, tiến hành đếm xe u cầu đặt cho tốn tính xác, sai số khơng đáng kể Một giải pháp ứng dụng Deep Learning để nhận diện xe 7 [Hình 2.1] Sử dụng Deep Learning nhận dạng xe ô tô Deep Learning huấn luyện cách sử dụng tập hợp liệu lớn có gắn nhãn kiến trúc mạng (thần kinh) chứa nhiều lớp, điều giúp máy tính thực thi việc như: Phân loại ngàn vật thể khác ảnh; Tự tạo thích cho ảnh; Bắt chước giọng nói chữ viết người; Giao tiếp với người, hay chí sáng tác văn hay âm nhạc Deep Learning sử dụng phương pháp Neural Network với nhiều tầng (layer) khác mà tầng hàm phi tuyến (hàm đa thức) 8 Deep Learningcó nhiều điểm bật so với phương pháp Machine Learning:sử dụng nhiều lớp nên có khả "mơ hình hóa" tốn có độ phức tạp cao, cần lượng lớn liệu để huấn luyện.Thông thường đầu vào hệ thống Deep Learning liệu thơ, đầu vào Machine Learning liệu trích xuất.Deep Learning có phương pháp huấn luyện đào tạo để thực phân loại đối tượng tốt Machine Learning với phương pháp phổ biến sau đây: ➢ Đào tạo từ đầu Để đào tạo mạng lưới sâu từ đầu, phương pháp đòi hỏi phải thu thập tập liệu lớn gắn nhãn thiết kế kiến trúc mạng Điều tốt cho ứng dụng ứng dụng có số lượng danh mục đầu lớn Đây cách phổ biến với lượng liệu tốc độ học tập lớn, mạng thường vài ngày vài tuần để đào tạo ➢ Học chuyển giao Đây phương pháp chủ yếu Deep Learning, trình liên quan đến việc tinh chỉnh mơ hình sàng lọc trước Nó bắt đầu với mạng có, sau cung cấp thêm liệu có chứa lớp mà trước chưa biết Sau thực số điều chỉnh bổ sung điều chỉnh liệu cho phù hợp xác hơn, từ thực tác vụ mới, chẳng hạn điều chỉnh phân loại theo đối tượng giúp cho thời gian tính toán giảm xuống đáng kể ➢ Đào tạo theo cách xếp chồng tự động Bộ liệu huấn luyện xếp chồng lên cách tự động để tạo thành mạng sâu tồn dạng tiềm ẩn, đầu làm đầu vào cho lớp Mỗi lớp huấn luyện sàng lọc để tăng độ xác cho đầu vào (và mẫu đầu lớp trước) tiếp tục việc tự động xếp chồng lớp khác 9 Ngày nay, với phát triển mạnh mẽ Công nghệ thơng tin, trí tuệ nhân tạo trở nên phổ biến, Deep Learning xu hướng phát triển thời đại nhờ tính ưu việt độ xác 2.2 MƠI TRƯỜNG VÀ CƠNG CỤ SỬ DỤNG 2.2.1 Thư viện mã nguồn Tensorflow Object Detection TensorFlow ™ thư viện phần mềm nguồn mở để tính tốn số hiệu suất cao Kiến trúc linh hoạt cho phép dễ dàng triển khai tính toán nhiều tảng khác (CPU, GPU, TPU) từ máy tính để bàn đến cụm máy chủ tới thiết bị di động Được phát triển nhà nghiên cứu kỹ sư từ nhóm Google Brain tổ chức AI Google, hỗ trợ mạnh mẽ cho Machine Learing,Deep Learning lõi tính tốn linh hoạt sử dụng nhiều lĩnh vực khoa học khác ➢ Các thành phần TensorFlow: - Node - Tensor - Rank - Shape - Op - DType 2.2.2 Thuật toán SSD (Single Shot Object Detectors) a Giới thiệu Để hiểu rõ SSD, bắt đầu cách giải thích tên kiến trúc đến từ đâu: - Single Shot: Có nghĩa nhiệm vụ định vị hóa phân loại đối tượng thực lần chuyển tiếp vật thể 10 - MultiBox: Tên kỹ thuật hộp ràng buộc phát triển Szegedy etal - Detector: Là dò tìm đối tượng phân loại đối tượng phát SSD sử dụng layer có kích thước giảm dần theo độ sâu để nhận dạng đối tượng SSD có độ phân giải giảm đáng kể qua layer bỏ sót đối tượng có kích thước nhỏ lớp có độ phân giải thấp, thực tế hình ảnh đầu vào cần phải có độ phân giải cao Thuật toán SSD chạy nhanh, độ xác khơng cao (khơng region proposal) b MultiBox Kỹ thuật hồi quy hộp giới hạn SSD lấykết từ cơng trình Szegedy MultiBox, phương pháp cho đề xuất điều phối hộp giới hạn nhanh, nhạy cảm với lớp học Quá trình xử lý thực MultiBox, mạng chuyển đổi kiểu khởi động sử dụng Hàm tinh giảm MultiBox kết hợp hai thành phần quan trọng đưa vào SSD: - Confidence Loss - Location Loss Nếu khơng sâu vào tốn học biểu thức cho hàm tinh giản, tức đo lường mức độ dự đoán “đúng” nào: multibox_loss = confidence_loss + alpha * location_loss Thuật ngữ alpha giúp cân đóng góp việc vị trí Như thường lệ Deep Learning, mục đích tìm giá trị tham số tối ưu làm giảm hàm tinh giảm, đưa dự đoán gần với thực tiễn c Thuật toán phát hiện vật thể SSD 11 Qua mơ hình phân tích có thuật tốn minh họa sau (thuật tốn phát vật thể video, sử dụng thư viện opencv-python==4.1.0.25): import cv2 print('Project Topic : Car Counting and Speed Detection') print('Research Internship on Machine learning using Images') print('By Dang Thi My Nhan') cascade_src = 'cars.xml' video_src = 'video.avi' cap = cv2.VideoCapture(video_src) car_cascade = cv2.CascadeClassifier(cascade_src) while True: ret, img = cap.read() if (type(img) == type(None)): break gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cars = car_cascade.detectMultiScale(gray, 1.1, 2) for (x,y,w,h) in cars: cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,255),2) cv2.imshow('video', img) if cv2.waitKey(33) == 27: break cv2.destroyAllWindows() 2.2.3 Thuật toán Faster R-CNN 12 Faster R-CNN thuật toán để tìm kiếm vị trí vật thể ảnh.Thuật tốn có đầu hình hộp, với vật thể bên hộp Phiên Faster R-CNN R-CNN, với nguyên lý đơn giản Sử dụng mạng huấn luyện sẵn để feed-forward region proposals, tốn nhiều thời gian với ảnh thuật toán selective search cho hàng nghìn region proposals Với thuật tốn Faster R-CNN, sử dụng convolution filter trả kết dự đoán: giá trị toạ độ boundary box, giá trị lại xác suất xuất đối tượng Tổng quát hơn, ta có input D feature map 8x8, output 8x8x5, số convolution filter Faster R-CNN 3x3xDx8 Thử nghiệm lần ảnh gốc, thu convolutional features ảnh Ví dụ với hình ảnh có kích thước 600∗600∗3600∗600∗3, ta thu convolutional features với kích thước 37∗37∗51237∗37∗512 Kích thước features bị giảm nhỏ khoảng 16 lần 6003760037 Dựa vào kích thước vị trí region proposals ảnh gốc, ta tính tốn vị trí region proposal convolutional features Sử dụng giá trị convolutional faetures region proposal, ta dự đốn vị trí đỉnh bounding box vật thể nằm bounding box Đối với Fast R-CNN, chia sẻ tính toán region ảnh, tốc độ thực thi thuật toán giảm từ 120s ảnh xuống 2s Phần tính tốn gây nghẽn phần đưa region proposal đầu vào, chỉ thực thi CPU.Faster R-CNN giải vấn đề cách sử dụng DNN để tính toán region proposals So với thuật toán Faster R-CNN thuật tốn SSD chạy nhanh, có độ xác khơng cao, đặc biệt việc nhận dạng đối 13 tượng có kích thước nhỏ Trong Faster R-CNN cho kết có độ xác cao kể hình ảnh đầu có độ phân giải thấp 2.2.4 Lựa chọn mơ hình Object Detectors Trong luận văn này, lựa chọn mơ hình Object Detector cho tốn Các thuật tốn Object Detection phát triển khoảng thời gian dài Ý tưởng đầu tiên, đơn giản sử dụng cửa sổ trượt # Sliding windows for window in windows patch = get_patch(image, window) results = detector(patch) Để tăng tốc, sẽ: Giảm số lượng windows (R-CNN giảm khoảng 2000); 2.Giảm phép tính việc tìm ROI (Fast R-CNN sử dụng feature map thay tồn image patchs) # Fast R-CNN feature_maps = process(image) ROIs = region_proposal(feature_maps) for ROI in ROIs patch = roi_pooling(feature_maps, ROI) results = detector2(patch) Việc tìm region_proposal tốn nhiều thời gian.Faster RCNN sử dụng convolution network thay cho region proposal bước (làm giảm thời gian từ 2.3s xuống 0.3 giây) Faster R-CNN giới thiệu khái niệm anchor giúp cải thiện độ xác việc huấn luyện trở nên dễ dàng 14 R-FCN đưa điều chỉnh nhỏ, tiến hành tìm position sensitive score map ROIS độc lập Và tính trung bình xác suất xuất đối tượng # R-FCN feature_maps = process(image) ROIs = region_proposal(feature_maps) score_maps = compute_score_map(feature_maps) for ROI in ROIs V = pool(score_maps, ROI) class_scores = average(V) class_probabilities = softmax(class_scores) R-FCN chạy nhanh, độ xác thấp chút so với Faster R-CNN.Thuật tốn SSD (Single Shot Detector) đề xuất để sử dụng lần tính tốn feature_maps = process(image) results = detector3(feature_maps) # No more separate step for ROIs Thuật toán SSD YOLO thuộc nhóm single shot detectors Cả hai sử dụng convolution layer để rút trích đặc trưng convolution filter để đưa định Cả hai dùng feature map có độ phân giải thấp (low resolution feature map) để dò tìm đối tượng => chỉ phát đối tượng có kích thước lớn Một cách tiếp cận sử dụng feature map có độ phân giải cao (higher resolution feature map) Nhưng độ xác giảm thơng tin đặc trưng đối tượng hỗn loạn FPN đưa ý tưởng sử dụng feature map trung gian merge feature map high resolution low resolution Việc giúp cho giữ thông tin đặc trưng hữu ích đối tượng, đồng thời giữ thông tin đối tượng có kích thước nhỏ Do đó, độ xác tăng lên phát đối tượng có tỷ lệ khác (different scale) tốt 15 Trong trình huấn luyện, nhận vấn đề backgroup chiếm phần lớn ảnh.Hoặc đối tượng có số mẫu nhiều so với đối tượng khác.Thuật toán Focal loss sinh để giải vấn đề 2.3 PHÁT TRIỂN CHƯƠNG TRÌNH Để đào tạo mơ hình Machine Learning nhận dạng phương tiện tính tốc độ xe cần thực nhiều bước theo quy trình sau: [Hình 2.9] Các bước giải tốn 2.3.1 Thu thập liệu Từ video có, ta dùng thư viện OpenCV để cắt video thành nhiều ảnh, trung bình với video khoảng 40s ta 50 hình: covert_video_to_image.py import cv2 path = " /Dang Nhan/Dataset_all/DNG33" video = "v203161" cap = cv2.VideoCapture(path + "/"+ video +".ts") frameCount = cap.get(cv2.CAP_PROP_FRAME_COUNT) i=0 16 while True: ret, image = cap.read() if ret == False: break i += if i % == 0: link = path + "/" + video + "/" + video + " " + str(i) + ".JPG" cv2.imwrite(link, image) cap.release() Đối với đề tài này, liệu lấy từ camera giao thông địa bàn thành phố Đà Nẵng nguồn khác từ internet Dữ liệu huấn luyện Dữ liệu kiểm thử Size Kích thước Kích thước Số lượng 2000 10 [Bảng 2.1] Test liệu huấn luyện 2.3.2 Đánh nhãn liệu Với liệu ảnh ta thu thập trên, ta dùng phần mềm labelImage để gán nhãn cho liệu Ta dùng phần mềm để vẽ khung ô tô cho tất xe tơ có ảnh, sau ta gán nhãn cho khung ‘car’ Sau làm xong, ta lưu lại file thích xml 2.3.3 Đào tạo mơ hình - Tải Tensorflow máy tính $ git clone https://github.com/tensorflow/models.git 17 - Cài đặt thư viện cần thiết $ pip install tensorflow-gpu - Từ Folder tensorflow/models/research xuất file proto $ protoc object_detection/protos/*.proto python_out= - Đánh nhãn liệu lớp: item { id: name: 'motocycle' } item { id: name: 'car' } Từ Folder models/object_detection chạy code training liệu $pythontrain.py–logostderr train_dir=training/ pipline_config_path=training/ssd_mobilenet_v1_pets.config 2.3.4 Nhận dạng Mục tiêu tốn từ video cụ thể phải nhận diện phương tiện xuất video Cụ thể trình bày sau: - Load video cap = cv2.VideoCapture('test_video/vehicle_video.mp4') - Lấy frame xử lý nhận dạng (ret, frame) = cap.read() 18 input_frame = frame image_np_expanded = np.expand_dims(input_frame, axis=0) (boxes, scores, classes, num) = sess.run([detection_boxes, detection_scores, detection_classes, num_detections], feed_dict={image_tensor: image_np_expanded}) 2.3.5 Đếm phương tiện Sau có mơ hình để nhận dạng, ta bắt đầu đưa video xác định vùng nhận diện khả dụng (ROI) video Tiếp theo tách frame ra, nhận dạng xe frame, update liên tục vị trí xe, xe vào ROI tăng biến đếm lên Cứ lặp lại kết thúc video xuất kết đếm xe - Gọi hàm để xử lý kết việc nhận dạng counter = vis_util.visualize_boxes_and_labels_on_image_array( cap.get(1),input_frame, np.squeeze(boxes), np.squeeze(classes).astype(np.int32), np.squeeze(scores), category_index, use_normalized_coordinates=True, line_thickness=4 ) - Quy trình nhận dạng đếm xe: 19 [Hình 2.16] Quy trình nhận dạng đếm xe CHƯƠNG THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 3.1 KẾT QUẢ THỰC NGHIỆM Thực nghiệm video mẫu trích xuất từ camera giao thơng đoạn đường gần trường Trường Mầm Non Tiên Sa (106 Quang Trung, phường Thạch Thang, quận Hải Châu, TP Đà Nẵng) vào ngày 01/4/2019: 20 [Hình 3.1] Kết nhận diện đếm xem qua video giao thông 3.1.1 Nhận diện xe chuyển động Sau trình huấn luyện ta thu mơ hình nhận dạng xe, đếm số lượng xe Để đánh giá khả nhận dạng xe mơ hình, chạy thử với mơ hình nhận dạng 60 giây video trích xuất từ camera giám sát có chứa xe nhiều góc, kích thước lớn nhỏ khác Số lượng ô tô xuất video ghi khơng nhiều, tác giả tiến hành thử nghiệm nhận dạng loại phương tiện ô tô vàxe máy Kết nhận diện tương đối xác, nhiên có số hình ảnh ô tô nhận diện chưa xác mẫu tơ khơng có tập huấn luyện, số lượng mẫu ô tô sử dụng để huấn luyện chưa nhiều, mẫu ô tô chưa đa dạng 3.1.2 Đếm số lượng xe Kết đếm số lượng ô tơ xe máy từ camera giao thơng nói tương đối xác liệu mẫu huấn luyện, số phương tiện không đếm khơng có tập liệu huấn luyện tác động khách quan bị vật cản che khuất, xe chạy sát 21 nhau, Có trường hợp đếm nhầm vật thể có hình dạng giống tơ xe máy Số xe máy thực tế Số xe thực tế Số xe máy đếm Số xe đếm Độ lệch (Thực tế Đếm được) – 60 2 80,00% 61 – 200 77,78% 201 – 400 80,00% 401 – 600 55,56% 601 – 800 3 41,67% 801 – 1000 71,43% 1001 - 1200 85,71% 1200 - 1400 3 50,00% 1400 - 1600 11 42,86% STT [Bảng 3.1] Số liệu nhận dạng đếm xe 3.2 ĐÁNH GIÁ KẾT QUẢ 3.2.1 Nhận diện xe chuyển động Kết nhận dạng xe mơ hình cao mà xe lưu thơng đường phố có nhiều khác biệt màu sắc, kích thước, số lượng người ngồi xe hay loại hàng hóa chở xe, bị ảnh hưởng nhiều yếu tố khác bị che khuất, bóng cây, thời tiết,… Qua thực nghiệm nhận thấy mơ hình cho kết nhận dạng cao mà xe khơng bị che khuất, có kích thước vừa phải 22 Đối với số trường hợp xe không nhận dạng chủ yếu bị che khuất phần, kích thước hình ảnh xe q nhỏ xe chưa huấn luyện 3.2.2 Đếm số lượng phương tiện Độ xác hệ thống đếm phương tiện cao.Kết triển khai toán ta thấy có nhiều khả quan ứng dụng vào tốn u cầu độ xác khơng q lớn, đưa số chấp nhận Từ hệ thống đơn giản này, ta cải tiến để nâng cao khả nhận dạng xe độ xác tốn phức tạp Kết toán phụ thuộc nhiều vào tình hình giao thơng, thời tiết, địa điểm thực nhiều yếu tố khác.Mật độ lưu thông phương tiện giao thơng lớn độ xác giảm dần Cũng tương tự thời tiết diễn biến xấu hay địa điểm đếm xe có nhiều vật cản che khuất hay có nhiều bóng Bên cạnh thuật tốn chưa ổn định yếu tố ảnh hưởng đến kết 23 PHẦN III: TỔNG KẾT Kết luận Trong nghiên cứu này, đề cập đến nghiên cứu nhận dạng phát đối tượng video trước thử nghiệm, đánh giá, tìm điểm chung nghiên cứu Từ đề giải pháp tối ưu việc lựa chọn phương pháp Deep Learning để thực việc nhận dạng đếm xe ôtô thông qua video Sau trình triển khai đề tài, hệ thống nhận dạng đếm xe với độ xác cao Tuy nhiên, có trường hợp chưa nhận dạng Sự thiếu xác xuất phát từ nhiều nguyên nhân khác thiếu liệu đào tạo nên mơ hình nhận dạng có hiệu suất khơng cao, thuật tốn tính vận tốc xe chưa tối ưu, hay nguyên nhân khách quan khác vật cản che khuất, thời tiết, Hệ thống đạt hiệu suất cao nhận diện xe đường chiều, đường rộng xe mật độ xe không cao Hướng phát triển Để cải thiện độ xác, ta tiến hành thu thập thêm nhiều liệu hơn, đa dạng Từ giúp mơ hình nhận dạng xe xác Ngồi để nhận diện tính tốn vận tốc xe hiệu quả, ta cần cải thiện thuật tốn nhận dạng tính tốn Sau có hệ thống nhận diện xe có hiệu suất ổn định, đếm xác lưu lượng xe tơ tham gia giao thơng đường ta ứng dụng vào toán khác lớn thực tế để giải vấn đề tắc nghẽn giao thông ... tình trạng kẹt xe xảy thường xuyên trục đường giao thông, đặc biệt khu đô thị Xuất phát từ yêu cầu thực tiễn chọn đề tài Ứng dụng Deep Learning để đếm số lượng xe ô tô nội thành Đà Nẵng Mục tiêu... vật cản che khuất, xe chạy sát 21 nhau, Có trường hợp đếm nhầm vật thể có hình dạng giống tơ xe máy Số xe máy thực tế Số xe thực tế Số xe máy đếm Số xe đếm Độ lệch (Thực tế Đếm được) – 60 2 80,00%... số khơng đáng kể Một giải pháp ứng dụng Deep Learning để nhận diện xe 7 [Hình 2.1] Sử dụng Deep Learning nhận dạng xe ô tô Deep Learning huấn luyện cách sử dụng tập hợp liệu lớn có gắn nhãn kiến

Ngày đăng: 15/06/2020, 21:06

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan