首页IT科技yolo检测车牌(yolo车牌识别、车辆识别、行人识别、车距识别源码(包含单目双目))

yolo检测车牌(yolo车牌识别、车辆识别、行人识别、车距识别源码(包含单目双目))

时间2025-09-14 19:34:39分类IT科技浏览7089
导读:视频效果...

视频效果

车辆识别视频

yolov5车辆识别视频

yolov5 yoloR对比行人车辆识别视频

yolo车距1

完整源码http://www.hedaoapp.com/goods/goodsDetails?pid=4132

系统设计

车牌自动识别是以计算机视觉处理                 、数字图像处理                         、模式识别等技术为基础                 ,对摄像机所拍摄的车辆图像或者视频图像进行处理分析                          ,得到每辆车的车牌号码        ,从而完成识别的过程                 。在此基础上                 ,可实现停车场出入口收费管理         、盗抢车辆管理         、高速公路超速自动化管理                         、闯红灯电子警察                 、公路收费管理等各种交通监管功能                          。

一         、系统处理流程

车牌自动识别系统的设计包含车辆图像获取                          、车牌区域定位                 、车牌特征轮廓提取和车牌内容识别环节        。

二、车牌获取

车牌图像获取是进行车牌识别的首要环节                          ,车牌图像可以从摄像机拍摄的车辆图像或者视频图像中进行抽取        ,车牌图像的获取也可由用户手机拍摄后传入车牌识别系统                 。

三                          、灰度图像生成

摄像机拍摄的含有车牌信息的车辆图像是彩色的         ,为了提高车牌识别的抗外界干扰的能力                          ,先将彩色车辆图像生成二值的灰度图像                 ,实现基于色调的车牌区域定位                          。由于国内的车牌往往是蓝底白字         ,因此                          ,可以利用图像的色调或者色彩饱和度特征                 ,生成二值灰度图像,从而实现更加准确地定位车牌位置        。

四                          、车牌区域定位

车牌区域的定位采用基于形状的方法         。由于车辆图像背景比较复杂                          ,所以应该根据车牌的特征进行初次筛选                          。车牌的特征可以选择中国车牌的大小、比例特征                          ,因为车牌都是固定的矩形形状,通过首先寻找图像上拥有矩形特征的区域                 ,然后再抽取这些区域                          ,再结合车牌的长宽的比例特征可以筛选出相应的矩形区域        ,从而实现对车牌的准确定位                 。

五                 、特征轮廓提取

OpenCV 与 Python 的接口中使用 cv2.fifindContours() 函数来查找检测物体的轮廓         。

图3 和 图4 为特征轮廓提取前后的效果对比图 :

六                          、车牌内容识别

车牌内容识别时                 ,通过计算候选车牌区域蓝色数值(均值)的最大值                          ,确定最终的车牌区域                          。对于选定的车牌轮廓        ,首先进行粗定位         ,即对车牌进行左右边界回归处理                          ,去除车牌两边多余的部分                 ,然后进行精定位         ,即将车牌送入 CRNN 网络进行字符识别                          ,利用左右边界回归模型                 ,预测出车牌的左右边框,进一步裁剪                          ,进行精定位                 。基于文字特征的方法是根据文字轮廓特征进行识别                          ,经过相应的算法解析,得到结果。

def find_car_num_brod(): watch_cascade = cv2.CascadeClassifier(D:\pycharm\pycharm_work\chepai\cascade.xml) # 先读取图片 image = cv2.imread("D:\pycharm\pycharm_work\chepai\capture_img\car1.jpg") resize_h = 1000 height = image.shape[0] scale = image.shape[1] / float(image.shape[0]) image = cv2.resize(image, (int(scale * resize_h), resize_h)) image_gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY) watches = watch_cascade.detectMultiScale(image_gray, 1.2, 2, minSize=(36, 9), maxSize=(36 * 40, 9 * 40)) ​ print("检测到车牌数", len(watches)) for (x, y, w, h) in watches: cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255), 1) cut_img = image[y + 5:y - 5 + h, x + 8:x + w] # 裁剪坐标为[y0:y1, x0:x1] cut_gray = cv2.cvtColor(cut_img, cv2.COLOR_RGB2GRAY) ​ cv2.imwrite("D:\pycharm\pycharm_work\chepai\num_for_car.jpg", cut_gray) im = Image.open("D:\pycharm\pycharm_work\chepai\num_for_car.jpg") size = 720, 180 mmm = im.resize(size, Image.ANTIALIAS) mmm.save("D:\pycharm\pycharm_work\chepai\num_for_car.jpg", "JPEG", quality=90) break
声明:本站所有文章                 ,如无特殊说明或标注                          ,均为本站原创发布                          。任何个人或组织        ,在未征得本站同意时                 ,禁止复制         、盗用                 、采集                         、发布本站内容到任何网站         、书籍等各类媒体平台                          。如若本站内容侵犯了原著者的合法权益                          ,可联系我们进行处理。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
如何关闭自动校正时间(os x 10.10 yosemite自动纠正怎么关?os x yosemite自动纠正功能关闭教程) 前端css js(Web前端进阶高薪必会的54个CSS重难点知识梳理(1))