资源简介
下载解压后安装必要的py程序库 再打开cardshiping运行程序及可,详细说明见博主相关介绍。
代码片段和文件信息
#coding=gbk
import cv2
import numpy as np
import cardpictureprocessing as cpp
def card_color_predict(card_imgs Cardsetting):
“““使用颜色定位,排除不是车牌的矩形,目前只识别蓝、绿、黄车牌“““
cards_to_color = []
colors_to_card = []
for card_index card_img in enumerate(card_imgs): #枚举每一个车牌 enumerate返回索引和值
green = yello = blue = black = white = 0
card_img_hsv = cv2.cvtColor(card_img cv2.COLOR_BGR2HSV) #得到颜色空间转换后的车牌图片转为hsv方便识别颜色
if card_img_hsv is None: #有转换失败的可能,原因来自于上面矫正矩形出错 转换失败则重新
continue
#以下为车牌颜色判断
row_num column_num = card_img_hsv.shape[:2] #得到车牌像素的行列数值
card_img_count = row_num * column_num #计算车牌面积
for row in range(row_num): #遍历车牌区域全部像素用于判断车牌颜色
for column in range(column_num):
H = card_img_hsv.item(row column 0)
S = card_img_hsv.item(row column 1)
V = card_img_hsv.item(row column 2)
if 11 < H <= 34 and S > 34: #图片黄色部分像素总和
yello += 1
elif 35 < H <= 99 and S > 34: #图片绿色部分像素总和
green += 1
elif 99 < H <= 124 and S > 34: #图片蓝色部分像素总和
blue += 1
if 0 < H <180 and 0 < S < 255 and 0 < V < 46: #再计算白色和黑色字体部分的颜色像素总和
black += 1
elif 0 < H <180 and 0 < S < 43 and 221 < V < 225:
white += 1
color = “no“ #颜色初始化
limit1 = limit2 = 0
if yello * 2.2 >= card_img_count: #判断车牌颜色
color = “y“ #黄色为11-34
limit1 = 11
limit2 = 34
elif green * 2.7 >= card_img_count:
color = “g“ #绿色为35-99
limit1 = 35
limit2 = 99
elif blue * 2.2 >= card_img_count:
color = “b“ #蓝色为100-124
limit1 = 100
limit2 = 124
elif black + white >= card_img_count * 0.7: #TODO
color = “other“
if color not in (“b“ “y“ “g“):
continue
#以下为根据车牌颜色再定位,缩小边缘非车牌边界,再筛选
xl xr yh yl = cpp.accurate_place(card_img_hsv limit1 limit2 color Cardsetting) #确定好颜色后调用前面的函数精确缩小车牌区域
if yl == yh and xl == xr: #如果原图缩为一点则不是车牌
continue
need_accurate = False
if yl >= yh: #裁剪出错调整后重新裁剪
yl = 0
yh = row_num
need_accurate = True
if xl >= xr:
xl = 0
xr = column_num
need_accurate = True
card_imgs[card_index] = card_img[yl:yh xl:xr] if color != “g“ or yl < (yh-yl)//4 else card_img[yl-(yh-yl)//4:yh xl:xr]
if need_accurate: #可能x或y方向未缩小,需要再试一次
card_img = card_imgs[card_index]
card_img_hsv = cv2.cvtColor(card_img cv2.COLOR_BGR2HSV) #颜色空间转换 转换为hsv
xl xr yh yl = cpp.accurate_place(card_img_hsv limit1 limit2 color Cardsetting)
if yl == yh and xl == xr:
continue
if yl >= yh:
yl = 0
yh = row_num
if xl >= xr:
xl = 0
xr = column_num
card_imgs[card_index] = card_img[yl:yh xl:xr] if color != “g“ or yl < (yh-yl)//4 else card_img[yl-(yh-yl)//4:yh xl:xr]
colors_to_card.append(color) #的到的颜色加入颜色序列
cards_to_color.append(card_imgs[card_index])
return(cards_to_color colors_to_card)
def card_char_predict(cards_to_color colors_to_card trainsvm Cardsetting):
“““识别车牌中的字符“““
predict_results = [] #存放预测的结果
card_screenshots = [] #存放车牌截图
fo
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-03-25 13:05 视频测试版7(换分拣算法)\
文件 38879926 2018-08-18 17:56 视频测试版7(换分拣算法)\MOV_0973.avi
目录 0 2019-03-25 12:55 视频测试版7(换分拣算法)\__pycache__\
文件 4672 2018-09-26 12:59 视频测试版7(换分拣算法)\__pycache__\cardcharpredict.cpython-36.pyc
文件 4648 2018-09-16 00:56 视频测试版7(换分拣算法)\__pycache__\cardcharpredict.cpython-37.pyc
文件 2148 2018-09-26 12:50 视频测试版7(换分拣算法)\__pycache__\cardlocationpredict.cpython-36.pyc
文件 2115 2018-09-01 18:24 视频测试版7(换分拣算法)\__pycache__\cardlocationpredict.cpython-37.pyc
文件 4489 2018-09-26 12:50 视频测试版7(换分拣算法)\__pycache__\cardpictureprocessing.cpython-36.pyc
文件 4419 2018-08-27 21:54 视频测试版7(换分拣算法)\__pycache__\cardpictureprocessing.cpython-37.pyc
文件 845 2018-09-26 12:50 视频测试版7(换分拣算法)\__pycache__\cardpredictor.cpython-36.pyc
文件 810 2018-09-07 02:17 视频测试版7(换分拣算法)\__pycache__\cardpredictor.cpython-37.pyc
文件 2271 2018-09-26 13:00 视频测试版7(换分拣算法)\__pycache__\cardsetting.cpython-36.pyc
文件 2236 2018-09-07 08:55 视频测试版7(换分拣算法)\__pycache__\cardsetting.cpython-37.pyc
文件 4003 2018-09-26 12:50 视频测试版7(换分拣算法)\__pycache__\cardtrainmodel.cpython-36.pyc
文件 3968 2018-09-07 02:17 视频测试版7(换分拣算法)\__pycache__\cardtrainmodel.cpython-37.pyc
文件 7673 2018-09-26 12:59 视频测试版7(换分拣算法)\cardcharpredict.py
文件 3301 2018-09-01 18:23 视频测试版7(换分拣算法)\cardlocationpredict.py
文件 5493 2018-08-27 21:25 视频测试版7(换分拣算法)\cardpictureprocessing.py
文件 1003 2018-09-07 02:17 视频测试版7(换分拣算法)\cardpredictor.py
文件 2846 2018-09-26 13:00 视频测试版7(换分拣算法)\cardsetting.py
文件 9001 2018-09-26 14:00 视频测试版7(换分拣算法)\cardshiping.py
文件 4356 2018-09-07 02:17 视频测试版7(换分拣算法)\cardtrainmodel.py
目录 0 2019-03-25 12:55 视频测试版7(换分拣算法)\train_data\
文件 5043949 2018-10-02 08:01 视频测试版7(换分拣算法)\train_data\svm_chinese.dat
文件 7531806 2018-10-02 08:02 视频测试版7(换分拣算法)\train_data\svm_letterAnumber.dat
文件 3780473 2018-10-02 08:02 视频测试版7(换分拣算法)\train_data\svm_one_letter.dat
目录 0 2019-03-25 13:11 视频测试版7(换分拣算法)\train_picture\
相关资源
- 基于python下的 车牌识别代码 的车牌数
- python ppt
- python数据分析参考案例
- (完整版)learn python 3 the Hard Way
- Python-智联51job招聘需求挖掘采集和分
- Python趣味编程.pdf
- python数据挖掘概念、方法与实践.pdf
- opencv_python-3.2.0-cp36-cp36m-win_amd64.whl25
- 量化投资以python为工具 数据及代码
- Python语言程序设计基础-嵩天第2版
- ABAQUS GUI程序开发指南 PYTHON语言
- 自编码推荐算法的实现
- 《Python编程从入门到实践》源代码文
- 小白入门宝典 python魔力手册 高清完
- wxPython2.8-win64-unicode-2.8.12.1-py27.exe
- 爱上PYTHON 一日精通PYTHON编程
- Python编程快速上手——让繁琐工作自
- python 运行文件及geckodriver
- Python Data Analytics
- PTVS官方版
- Python高效开发实战原代码刘长龙
- ThePracticeofComputingUsingPython3rdedition.pd
- Python数据处理 中文完整清晰版PDF + 代
- Python 3面向对象编程_高清 带索引书签
- python emd算法
- python从入门到放弃.rar
- python深度,广度,三种启发式搜索解
- 超清原版《Python深度学习》2018中文版
- OpenCV3 计算机视觉 Python语言实现
- 利用python进行数据分析-中文第二版
评论
共有 条评论