更新接口
This commit is contained in:
		
							
								
								
									
										53
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										53
									
								
								README.md
									
									
									
									
									
								
							@@ -15,11 +15,10 @@ License_plate_recognition/
 | 
			
		||||
├── OCR_part/                 # OCR识别模块
 | 
			
		||||
│   └── ocr_interface.py      # OCR接口(占位)
 | 
			
		||||
├── CRNN_part/                # CRNN识别模块
 | 
			
		||||
│   └── crnn_interface.py     # CRNN接口
 | 
			
		||||
│   └── crnn_interface.py     # CRNN接口(占位)
 | 
			
		||||
└── LPRNET_part/              # LPRNet识别模块
 | 
			
		||||
    ├── lpr_interface.py      # LPRNet接口
 | 
			
		||||
    ├── Final_LPRNet_model.pth # 预训练模型文件
 | 
			
		||||
    └── will_delete/          # 参考资料(可删除)
 | 
			
		||||
    ├── lpr_interface.py      # LPRNet接口(已完成)
 | 
			
		||||
    └── LPRNet__iteration_74000.pth  # LPRNet模型权重文件
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## 功能特性
 | 
			
		||||
@@ -39,19 +38,22 @@ License_plate_recognition/
 | 
			
		||||
- 将倾斜的车牌矫正为标准矩形
 | 
			
		||||
- 输出标准尺寸的车牌图像供识别使用
 | 
			
		||||
 | 
			
		||||
### 4. PyQt界面
 | 
			
		||||
### 4. 多种识别方案
 | 
			
		||||
- 支持OCR、CRNN和LPRNet三种车牌识别方法
 | 
			
		||||
- LPRNet模型准确率高达98%
 | 
			
		||||
- 模块化接口设计,便于切换不同识别算法
 | 
			
		||||
 | 
			
		||||
### 5. PyQt界面
 | 
			
		||||
- 左侧:实时摄像头画面显示
 | 
			
		||||
- 右侧:检测结果展示区域
 | 
			
		||||
  - 顶部显示识别到的车牌数量
 | 
			
		||||
  - 每行显示:车牌类型、矫正后图像、车牌号
 | 
			
		||||
- 美观的现代化界面设计
 | 
			
		||||
 | 
			
		||||
### 5. 模块化设计
 | 
			
		||||
### 6. 模块化设计
 | 
			
		||||
- yolopart:负责车牌定位和矫正
 | 
			
		||||
- OCR_part:基于PaddleOCR的车牌号识别模块
 | 
			
		||||
- CRNN_part:基于CRNN网络的车牌号识别模块
 | 
			
		||||
- LPRNET_part:基于LPRNet网络的车牌号识别模块
 | 
			
		||||
- 各模块独立,便于维护和扩展,可通过修改main.py中的导入语句切换识别模块
 | 
			
		||||
- OCR_part/CRNN_part/LPRNET_part:负责车牌号识别
 | 
			
		||||
- 各模块独立,便于维护和扩展
 | 
			
		||||
 | 
			
		||||
## 安装和使用
 | 
			
		||||
 | 
			
		||||
@@ -73,7 +75,21 @@ pip install -r requirements.txt
 | 
			
		||||
python main.py
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### 5. 使用说明
 | 
			
		||||
### 5. 选择识别模块
 | 
			
		||||
在 `main.py` 中修改导入语句来选择不同的识别方案:
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
# 使用LPRNet(推荐,准确率98%)
 | 
			
		||||
from LPRNET_part.lpr_interface import LPRNmodel_predict, LPRNinitialize_model
 | 
			
		||||
 | 
			
		||||
# 使用OCR
 | 
			
		||||
from OCR_part.ocr_interface import LPRNmodel_predict, LPRNinitialize_model
 | 
			
		||||
 | 
			
		||||
# 使用CRNN
 | 
			
		||||
from CRNN_part.crnn_interface import LPRNmodel_predict, LPRNinitialize_model
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### 6. 使用说明
 | 
			
		||||
1. 点击"启动摄像头"按钮开始检测
 | 
			
		||||
2. 将车牌对准摄像头
 | 
			
		||||
3. 系统会自动检测车牌并显示:
 | 
			
		||||
@@ -95,8 +111,9 @@ YOLO Pose模型输出包含:
 | 
			
		||||
 | 
			
		||||
## 接口说明
 | 
			
		||||
 | 
			
		||||
### OCR/CRNN接口
 | 
			
		||||
车牌号识别部分使用统一接口:
 | 
			
		||||
### 车牌识别接口
 | 
			
		||||
 | 
			
		||||
项目为OCR、CRNN和LPRNet识别模块提供了标准接口:
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
# 接口函数名(导入所需模块,每个模块统一函数名)
 | 
			
		||||
@@ -108,7 +125,7 @@ LPRNinitialize_model()
 | 
			
		||||
# 预测主函数
 | 
			
		||||
from 对应模块 import LPRNmodel_predict
 | 
			
		||||
result = LPRNmodel_predict(corrected_image)  # 返回7个字符的列表
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### 输入参数
 | 
			
		||||
- `corrected_image`:numpy数组格式的矫正后车牌图像
 | 
			
		||||
@@ -117,6 +134,14 @@ result = LPRNmodel_predict(corrected_image)  # 返回7个字符的列表
 | 
			
		||||
- 长度为7的字符列表,包含车牌号的每个字符
 | 
			
		||||
- 例如:`['京', 'A', '1', '2', '3', '4', '5']`
 | 
			
		||||
 | 
			
		||||
### LPRNet模块特性
 | 
			
		||||
 | 
			
		||||
- **高准确率**: 模型准确率高达98%
 | 
			
		||||
- **快速推理**: 基于深度学习的端到端识别
 | 
			
		||||
- **CTC解码**: 使用CTC(Connectionist Temporal Classification)解码算法
 | 
			
		||||
- **支持中文**: 完整支持中文省份简称和字母数字组合
 | 
			
		||||
- **模型权重**: 使用预训练的LPRNet__iteration_74000.pth权重文件
 | 
			
		||||
 | 
			
		||||
## 开发说明
 | 
			
		||||
 | 
			
		||||
### 添加新的识别算法
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user