# 智能停车场项目 (MVP) **Repository Path**: ccjabc/project ## Basic Information - **Project Name**: 智能停车场项目 (MVP) - **Description**: c++/qt/opencv学习 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-10-22 - **Last Updated**: 2025-10-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 智能停车场项目 (MVP) --- #### 实现功能 - 车牌检测(检测车牌 --> 文字)使用[`EasyPR`](https://github.com/liuruoze/EasyPR)对车牌进行识别 - 入库信息 - 出库信息 - 计费 - 车位信息统计 #### 不足之处 - linux环境下qt控件显示中文乱码 - 缺少日志模块,日志信息输出到控制台 - 结构设计不规范 #### 代码结构 ``` src ├── main.cpp ├── MainWindow.cpp ├── MainWindow.h ├── Image.cpp ├── Image.h ├── Infomation.cpp ├── Infomation.h ├── Saveplate.cpp ├── Saveplate.h └── ImageDialog.h ``` `main.cpp` 程序入口 `MainWindow.cpp/.h` 初始化界面,将数据与qt控件结合,点击按钮选取图片模拟车辆入库出库事件 `Image.cpp/.h` 定义了图片处理类`Image`,运用EasyPR库对传入的图片进行处理,识别车牌号和获取车牌信息 `Infomation.cpp/.h` 定义`Places`类,使用`Info`封装车辆入库的信息,运用`std::map`对车辆入库信息进行管理 ``` typedef struct { std::string name; // 车牌 QString in_time; // 入场时间 QString out_time; // 出场时间 quint64 starttime; // 入场时间(seconds) QImage image; // 保存图片 } Info; ``` `Saveplate.cpp/.h` 使用QSql模块创建按数据库对`Info`中的数据进行存储,并使用`QTableView`展示入库的车辆 `ImageDialog.h` 定义了一个图片展示窗口,通过点击`QTableView`上的车牌信息获取车辆出入库时的图片 --- 中文乱码问题:因为我linux环境下没有中文字体,安装中文字体后,就能显示中文了 `build` ```bash git clone https://gitee.com/xyrxr/project.git cd project/build cmake .. make ```