This is the 12th day of my participation in the August More Text Challenge. For details, see: August More Text Challenge

The vehicle information contact platform is created by separating the front and rear ends of Golang+ wechat applet

(There’s some Python in there, too.

1. The background


1.1 Creation Background:

In campus life, electric car is the main commuting tool of most students, and the group of users of electric car is increasingly large. However, problems follow one after another, limited charging and parking space for students brought a lot of trouble. At the same time, the difficulty of contacting car owners has caused many unnecessary conflicts.

For example: electric vehicles occupy the charging space but can not find people, vehicles parked illegally affect access, electric cars lost is difficult to quickly find, scratch other people’s cars difficult to contact the owner in time…… In order to prevent the occurrence of these problems, we designed and developed this vehicle contact information small program platform — bucket vehicle union, the functions include: Owner community, online chat, message reminder, relatives and friends, electric pile view, so that owners easily exchange information, while avoiding personal information leakage, help users better and more quickly to solve the parking, charging, loss, damage and other problems caused by small and medium-sized vehicles.

1.2 Objectives:

  1. Users can identify the license plate number by taking photos to bind the license plate number, and can also find the corresponding owner through the license plate number.
  2. License plate conflict can be appealed feedback.
  3. It can contact the owner of the other party through text message reminder, online chat, SMS reminder and other forms.
  4. Strong community module, support idle items of interactive buying and selling.
  5. Real-time access to charging pile information, convenient for users to choose.
  6. In addition to basic management operations, the background can also monitor the traffic flow in real time.

1.3 Development environment:

Development language: Back end: Golang V1.15, Python V3.7 front end: wechat small program basic library V2.16.0, Vue V3.3.0

Calculation: Pytorch V1.7.1, Cuda V11.0

Data database: MySQL V5.7.30, MongoDB V4.4.6, Redis V4.0.9

SMS service: Tencent Cloud SMS

File storage: Qiniu Cloud storage server: Ali cloud server

2. Functions


2.1 Main Body

Disclaimer: The home page and personal information page here are for referenceNext door has a pitSmall program front end. By Github:GitHub

  • In the home page, the UI interface is introduced gracefully. Convenient for users to quickly understand the general functions of small programs, but also very much thanks to the original author of open source!
  • The main page presents four modules
    1. Community module
    2. Friends and relatives module
    3. Chat module
    4. Personal center

2.2 User Module

Personal center allows users to modify their personal information. Since users log in via wechat, their name and profile picture are the profile picture and name read from wechat. So the name and profile picture are not supported to change.

However, the mobile phone number, email number and vehicle can be unbound. Users can manage their own vehicles by binding their own license plate number.

License plate, we provide an OCR algorithm interface, can recognize the license plate, and then return the license plate information to bind the vehicle.

  • Personal information
  • Binding email
  • Binding mobile phone
  • Binding plates

2.3 Community Module

Recommendation module, circle of friends and relatives, leisure to Kangkang, my world and so on.

  • The Minecraft module can view posts posted by individual users.
  • Post details, can comment on the post, like and other operations.
  • The post sends, the user can carry on the post through the topic.

2.4 Chat module and charging function

  • Chat function, real-time chat.
  • System message, the system can be targeted to send information.
  • User feedback, can comment report, chat report, license plate appeal and other functions.
  • For charging pile query, we use crawlers to crawl the situation of charging piles in schools, so that users can view the situation of charging piles.

2.5 Algorithm

The results of the algorithm are all returned via the FLASK framework API interface.


2.5.1 FasterRCNN Network license plate recognition

2.5.2 YOLOV5 Vehicle identification

2.6 Background Management Module

The background module is relatively simple, and has not been designed to more functions, which need to be improved later.

  • User Module Management
- Vehicle module management - feedback information management - traffic flow monitoring managementCopy the code

Users can be shielded, block processing

Can take down, modify the user’s post information.

The user’s vehicle can be processed, replacement of license plate number, etc

3. Summary

This project is for the small program development competition of wechatBut unlike last year, this time the applet is actually using the applet’s cloud function for back-end development.That’s all. We’ll just have to throw this for the school game. It also solidifies the backend development.

  • Ws for GO is also involved.
  • Gorm’s many-to-many has also gained an in-depth understanding. And some logical structure on the back end.
  • Familiar with Tencent cloud SMS, seven cattle cloud storage, ali cloud server some operations.

This time on the algorithmic side

  • FasterRCNN license plate recognition
  • Vehicle detection for the YOLO Network

Nevertheless the soft work that can regard this as next semester by the way practiced ha ha!

You can pay attention to me if you like