Chương 1: Tổng quan - Chương 2: Cơ sở lý thuyết - Chương 3: Thiết kế và thử nghiệm hệ thống quản lý xe - Chương 4: Kết luận và đề nghị 3 Chương 2. Phân tích các phương án quản lý xe ra vào ở các xưởng sửa chữa 2. Hệ thống ghi nhận thủ công Hiện nay, quy trình tiếp nhận và giao xe tại nhiều hãng xe vẫn còn dựa trên các phương pháp thủ công, dẫn đến nhiều bất cập trong việc quản lý và vận hành. - Thứ nhất, việc sử dụng phiếu kiểm tra và tiếp nhận xe thủ công gây ra nhiều hạn chế: + Tốn thời gian: Việc ghi chép, kiểm tra và lưu trữ thông tin trên giấy tờ mất nhiều thời gian, ảnh hưởng đến hiệu suất làm việc.
+ Dễ xảy ra sai sót: Việc ghi chép thủ công dễ dẫn đến nhầm lẫn, sai sót trong quá trình nhập liệu, ảnh hưởng đến độ chính xác của thông tin. Khó khăn trong việc quản lý và tra cứu: Việc lưu trữ giấy tờ cồng kềnh, khó sắp xếp và tìm kiếm thông tin khi cần thiết. - Thứ hai, việc chụp ảnh bằng điện thoại cá nhân và lưu trữ phân tán gây ra nhiều khó khăn: + Thiếu tính nhất quán: Hình ảnh được chụp và lưu trữ bởi nhiều cá nhân khác nhau, không theo một chuẩn mực chung, gây khó khăn trong việc quản lý và sử dụng. + Nguy cơ mất mát dữ liệu: Việc lưu trữ trên điện thoại cá nhân tiềm ẩn nguy cơ mất mát dữ liệu do hỏng hóc thiết bị, mất điện thoại, hoặc do nhân viên nghỉ việc.
+ Khó khăn trong việc chia sẻ và truy cập thông tin: Việc truy cập và chia sẻ hình ảnh giữa các bộ phận gặp nhiều khó khăn do dữ liệu nằm phân tán trên nhiều thiết bị cá nhân. - Thứ ba, việc sử dụng lệnh xuất xe bằng giấy tờ thủ công cũng mang lại nhiều bất tiện: + Chậm trễ: Việc in ấn, ký duyệt và chuyển phát lệnh xuất xe bằng giấy tờ mất nhiều thời gian, làm chậm trễ quá trình giao xe cho khách hàng. + Dễ thất lạc: Lệnh xuất xe bằng giấy tờ dễ bị thất lạc trong quá trình lưu trữ và vận chuyển, gây khó khăn cho việc kiểm soát và xác minh thông tin.1: Phiếu tiếp nhận thủ công 5 2. Hệ thống tự động hóa với cảm biến và máy tính Phương án này sẽ sử dụng các cảm biến và camera đặt ở các cửa ra vào hoặc CVDV sẽ sử dụng 1 điện thoại chụp ảnh biển số và sẽ gửi dữ liệu về một máy tính trung tâm, nơi dữ liệu được xử lý và quản lý.
Phần mềm Python hoặc các phần mềm tương tự có thể được sử dụng để xử lý dữ liệu và tạo giao diện cho người dùng. - Ưu điểm: + Tăng tính chính xác và tin cậy so với phương án ghi nhận thủ công. + Giảm thiểu sự can thiệp của con người. + Dễ dàng tự động hóa quy trình quản lý xe ra vào + Không bị lỗi và mất thông tin của khách hàng.
- Nhược điểm: + Yêu cầu chi phí đầu tư ban đầu cao hơn so với hệ thống thủ công. + Đòi hỏi kiến thức kỹ thuật cao để triển khai và duy trì hệ thống. + Vẫn sẽ cần 1 người ngồi ở máy trung tâm để ghi thông tin khách hàng. Hệ thống thông minh dựa trên công nghệ AI và IoT: Trên thế giới, nhiều ứng dụng quản lý dịch vụ sửa chữa ô tô đã được phát triển và ứng dụng thành công, ví dụ như AutoRepair Cloud, Shopmonkey, Mitchell Repair Information Software.
Tuy nhiên, những ứng dụng này chưa được ứng dụng rộng rãi tại Việt Nam, một phần vì rào cản ngôn ngữ, chi phí bản quyền, và chưa phù hợp với thói quen sử dụng. Ví dụ: Phần mềm quản lý gara ô tô carCRM giúp số hóa dữ liệu, nhắc lịch bảo dưỡng, chăm sóc khách hàng tự động, trợ lý đắc lực cho nhà quản lý. Có các tính năng nổi bật: [25] + Quản lý khách hàng + Quản lý xe + Quản lý sản phẩm + Quản lý sửa chữa + Chăm sóc khách hàng + Tích hợp đa kênh + Cài đặt linh hoạt + Báo cáo trực quan 6 CarCRM chủ yếu cho bộ phận tư vấn và kinh doanh, các chức năng nhắc nhở công việc và chăm sóc khách hàng giúp hiệu quả vận hành tốt hơn hạn chế tối đa các thao tác thủ công, tránh sai sót và tối ưu thời gian làm việc của nhân viên[25]. Hạn chế : với những hãng lớn thì công việc đã được chia riêng biệt nên nếu sử dụng sẽ gây lãng phí tài nguyên , web của chúng em được thiết kế riêng biệt cho công việc của CVDV cũng như KTV giúp giảm lãng phí cũng như có thể tối ưu hóa cho 1 vị trí.2: Ứng dụng CarCRM 7 2.
Cơ sở lý thuyết về lập trình và mạng 2. Giới thiệu về ngôn ngữ Python và một số công cụ liên quan 2. Ngôn ngữ Python Hình 2.3: Ngôn ngữ Python Python là một ngôn ngữ lập trình thông dịch, được phát triển bởi Guido van Rossum và ra mắt lần đầu vào năm 1991. Với triết lý thiết kế là ngôn ngữ dễ đọc, dễ hiểu và linh hoạt, Python đã trở thành một trong những ngôn ngữ lập trình phổ biến nhất trên thế giới.
Một trong những điểm đặc biệt của Python là cú pháp gần gũi với ngôn ngữ tự nhiên, giúp cho việc viết mã trở nên dễ dàng và trực quan hơn. Python cung cấp một loạt các tính năng mạnh mẽ và đa dạng, từ lập trình hàm đến lập trình hướng đối tượng và thậm chí là lập trình hợp nhất[1]. Với một cộng đồng lớn và tích cực, Python có một hệ sinh thái phong phú của các thư viện và framework, từ khoa học dữ liệu và máy học đến web development và automation. Điều này làm cho Python trở thành một lựa chọn lý tưởng cho mọi loại dự án, từ nhỏ đến lớn.
Bên cạnh đó, Python còn được sử dụng rộng rãi trong các lĩnh vực như khoa học máy tính, trí tuệ nhân tạo, phân tích dữ liệu, phát triển phần mềm, và nhiều lĩnh vực công 8 nghệ khác. Sự linh hoạt và mạnh mẽ của Python đã thu hút sự quan tâm và ủng hộ của cả cộng đồng lập trình viên và doanh nghiệp trên toàn thế giới[2]. Framework trong Python Một framework là một bộ công cụ đã được xây dựng sẵn, cung cấp các tính năng và thành phần cần thiết để phát triển ứng dụng web một cách nhanh chóng và hiệu quả. Nó giống như việc xây dựng một ngôi nhà trên nền móng đã có sẵn, giúp nhà phát triển tập trung vào việc xây dựng và tùy chỉnh nội dung theo ý muốn.
Các framework thường đi kèm với các tính năng và mô hình đã được xây dựng sẵn, bao gồm quản lý người dùng, xử lý đăng nhập, tích hợp cơ sở dữ liệu và nhiều tính năng khác[3]. Điều này giúp giảm thiểu thời gian và công sức cần thiết cho việc phát triển ứng dụng web, đồng thời cung cấp một cơ sở vững chắc để xây dựng trên đó. Python, một ngôn ngữ lập trình mã nguồn mở, cung cấp nhiều framework miễn phí cho nhà phát triển để xây dựng các ứng dụng web[3]. Có ba loại framework chính trong Python là full-stack, micro-framework và asynchronous framework, mỗi loại phục vụ một mục đích và yêu cầu cụ thể của dự án.
Full-stack framework: Bao gồm tất cả các yêu cầu của phát triển web, từ quản lý người dùng đến giao diện người dùng. Đây là lựa chọn phù hợp cho các dự án lớn và phức tạp. Micro-framework: Nhẹ nhàng và linh hoạt, phù hợp cho các dự án web đơn giản và tối giản. Các tính năng có thể được bổ sung thông qua extension hoặc plugin.
Asynchronous framework: Đặc biệt hữu ích cho việc xử lý đồng thời một lượng lớn kết nối. Sử dụng thư viện asyncio của Python để tối ưu hiệu suất xử lý. Dù là full-stack, micro hay asynchronous, các framework Python đều mang lại sự linh hoạt và tiện ích cho nhà phát triển trong quá trình phát triển ứng dụng web. Sau đây là top 5 framewwork phổ biến trong Python[3]: - Django - Web2Py - Flask - CherryPy - Pyramid 9 Nhưng nhóm chọn Flask là framework sử dụng trong đề tài này.
Nhóm giới thiệu khái quát về Flask: Hình 2.4: Flask trong framework python - Flask là một micro-framework Python nhẹ nhàng, linh hoạt và dễ sử dụng, được phát triển để giúp người dùng xây dựng các ứng dụng web tối giản và hiệu quả. Dù được thiết kế để đơn giản, nhưng Flask vẫn cung cấp đầy đủ các tính năng cần thiết cho việc phát triển các ứng dụng web từ cơ bản đến phức tạp[4]. - Với Flask, nhà phát triển có thể nhanh chóng tạo ra các ứng dụng web một cách dễ dàng nhờ vào cú pháp đơn giản và trực quan. Flask giúp tối ưu hóa quá trình phát triển bằng cách cung cấp các công cụ và thư viện hỗ trợ cho việc xử lý yêu cầu HTTP, quản lý định tuyến, xử lý biểu mẫu, và nhiều tính năng khác[4].
- Một trong những điểm mạnh của Flask là cấu trúc nhẹ nhàng, không có các yêu cầu cứng nhắc về cấu trúc dự án. Điều này cho phép nhà phát triển tự do tổ chức mã nguồn của họ theo cách tốt nhất cho dự án cụ thể của họ, giúp tăng tính linh hoạt và tự do trong quá trình phát triển. - Flask cũng được kích hoạt bởi một cộng đồng lớn và năng động, cung cấp các tài liệu, hướng dẫn và gợi ý sáng tạo từ những người dùng khác. Điều này làm cho việc học và làm việc với Flask trở nên dễ dàng hơn, đồng thời cung cấp cho nhà phát triển một nguồn tài nguyên phong phú để nâng cao kỹ năng và hiểu biết của mình[5].
10 - Tóm lại, Flask là một micro-framework Python mạnh mẽ và linh hoạt, đem lại sự đơn giản và hiệu quả cho quá trình phát triển ứng dụng web. Với cú pháp dễ hiểu, cộng đồng hỗ trợ đông đảo và tính linh hoạt cao, Flask là lựa chọn lý tưởng cho những dự án web từ nhỏ đến lớn. Giải thuật xử lý ảnh nhận diện biển số xe - Thư viện xử lý ảnh OpenCV: Hình 2.5: Thư viện OpenCV trong Python Project OpenCV được khởi đầu bởi Intel vào năm 1999 dưới sự lãnh đạo của Gary Bradsky. OpenCV là viết tắt của Open Source Computer Vision Library.
Nó là một thư viện nguồn mở hàng đầu trong lĩnh vực Computer Vision và Machine Learning, và cung cấp thêm tính năng tăng tốc GPU cho các hoạt động thời gian thực. OpenCV được phát hành dưới giấy phép BSD, cho phép miễn phí sử dụng cả cho mục đích học tập và thương mại.