车位关键点检测-车位识别-车辆识别检测(教程+代码)

2024-01-05 17:20

本文主要是介绍车位关键点检测-车位识别-车辆识别检测(教程+代码),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

车位关键点检测、车位识别和车辆识别检测是现代智能交通系统中的重要技术,它们在提高停车管理效率和交通流畅度方面起着重要作用。以下是对这三个技术的分点阐述:
1. 车位关键点检测:

车位关键点检测是指通过计算机视觉技术,自动地检测出停车场区域内的每个车位的位置和边界。这个过程通常涉及到目标检测和图像分割等算法。通过车位关键点检测,可以实现对停车场的精细管理和优化,提高停车位的利用率。

2. 车位识别:

车位识别是指通过车位关键点检测后,进一步对每个车位进行状态判断,即判断该车位是否被占用。这个过程通常通过图像分类或物体检测算法来实现。车位识别可以帮助驾驶员快速找到可用车位,减少寻找空余车位的时间和拥堵情况,提高停车效率。

3. 车辆识别检测:

车辆识别检测是指对停车场内的车辆进行实时监测和识别。通过使用计算机视觉和机器学习技术,可以对车辆进行自动识别,并进一步分析车辆的类型、颜色、车牌等信息。车辆识别检测可以应用于车辆出入口管理、违规停车监控等场景,提高交通管理的效率和安全性。

综上所述,车位关键点检测、车位识别和车辆识别检测是现代智能交通系统中的关键技术。通过这些技术的应用,可以实现停车场管理的智能化和优化,提高停车效率和交通流畅度。随着计算机视觉和机器学习技术的不断进步,相信这些技术在未来会发挥更加重要的作用,为我们的城市交通带来更多便利和效益。

概述


基于深度学习的鱼眼图像中的停车点检测和分类是为二维物体检测而开发的。我们的工作增强了预测关键点和方框的能力。这在许多场景中很有用,因为对象不能用右上的矩形“紧密”表示。一个这样的例子,道路上的任何标记,由于透视效果,在现实世界中的对象矩形不会在图像中保持矩形,所以关键点检测显得格外重要。鱼眼图像还呈现了观察到这种现象的另一种场景,由于鱼眼宽广的视角,可以扑捉更多画像。
预知结果

上面的例子显示了一个停车位,它不能用直立的矩形(黄色)来表示。由4个关键点(蓝色)包围的形状表示它更符合要求。


算法过程


在自动驾驶(AD)应用领域中,自动代客泊车(AVP)在机会和采用方面尤其具有吸引力。摄像机是AVP应用中常用的感知传感器之一。在摄像机馈送中,停车点的检测和分类为空闲或占用是关键的。
停车点检测功能在自主操作期间用于定位和操纵到适当的停车位置。停车点检测的主要挑战在于在图像域中将停车点表现为梯形。此外,用于环绕视野或泊车辅助功能的现代相机往往是鱼眼,其中镜头失真会导致现实生活中的直线段和物体看起来弯曲。
提出了一种基于深度学习中对象检测框架的高效像素级停车点实例化和分类方法。该方法使用MobileNet-V1网络架构作为主干卷积神经网络(CNN),并使用改进的单镜头检测器(SSD)作为对象检测元架构,以直接在鱼眼域中执行停车点实例化。

物体检测功能的传统SSD元架构已经创新性地增强,以检测停车点的主要关键点,从而精确地描绘停车点边界。所提出的解决方案对于检测到的包围停车点的矩形盒实**现了0.87mAP,**并且每次检测的四个角点的精度为0.76OKS。

数据集
开发了名为TI_PSD_VD_V3的内部数据集,该数据集具有边界框+其他关键点注释。已经对以下三类进行了注释。

 

1-空停车位
2-占用的停车位
3-车辆

方案


为每个停车点和车辆采集四个角点坐标。注释时保持关键点的顺序。第一和第二个关键点分别是停车点入口的左角和右角。其余角点沿逆时针方向捕捉。对于车辆,第一和第二关键点分别是包围车辆的矩形的地面上最左侧和最右侧的关键点。其他两个关键点是在车辆逆时针方向捕捉的车辆的其他两个角。
Bounding box参数是包围捕获的四个关键点的矩形框。边界框参数不带注释,而是在捕捉关键点后导出。

准确性


TI_PSD_VD_v3数据集的精度低于@IOU阈值=0.6。这是与下面提到的预训练模型相对应的精度。
|类别 |mAP|
|空停车位 |85.48%|
|占用停车位 |75.75%|
|车辆 |67.25%|
|平均AP |76.16%|
 

#全部代码可加qq767172261def train():#parses command line argsargs = parse_args()#parses args from fileif args.config_file is not None:cfg_from_file(args.config_file)if (args.FIX_MODEL_CHECKPOINT):args.FIX_MODEL_CHECKPOINT = args.FIX_MODEL_CHECKPOINT.replace(" ", "")args.FIX_MODEL_CHECKPOINT = args.FIX_MODEL_CHECKPOINT.replace("=", "")cfg.RESUME_CHECKPOINT = args.FIX_MODEL_CHECKPOINTcfg.CHECK_PREVIOUS = Falseif (os.path.exists(cfg.RESUME_CHECKPOINT) == False):print('Exiting the process as asked model for resuming is not found')exit()if (args.RESUME_CHECKPOINT):cfg.RESUME_CHECKPOINT = args.RESUME_CHECKPOINTif (args.LOG_DIR):cfg.EXP_DIR = args.LOG_DIRcfg.LOG_DIR = cfg.EXP_DIRif (args.PHASE):cfg.PHASE = []cfg.PHASE.append(args.PHASE)if (args.EVAL_METHOD):cfg.DATASET.EVAL_METHOD = args.EVAL_METHOD#for backward compatibilityif cfg.DATASET.DATASET == 'psd':cfg.DATASET.DATASET = 'tiod'if cfg.DATASET.BGR_OR_RGB == True:#cfg.DATASET.PIXEL_MEANS = (123.68, 116.78, 103.94)#cfg.DATASET.PIXEL_MEANS = (123, 117, 104)cfg.DATASET.PIXEL_MEANS = (128.0, 128.0, 128.0) # simpler mean subtraction to keep data in int8 after mean subtractionprint("cfg: ", cfg)for phase in cfg.PHASE:cfg_dir = cfg.LOG_DIR + '/' + phase + '_cfg/'os.makedirs(os.path.dirname(cfg_dir), exist_ok=True)shutil.copy(args.config_file, cfg_dir)# to making every run consistent # TIInp.random.seed(100)torch.manual_seed(100)torch.cuda.manual_seed(100)random.seed(100)torch.cuda.manual_seed_all(999)torch.backends.cudnn.enabled = Falsetrain_model()if __name__ == '__main__':train()

 推理结果 全部代码可私信。

 

这篇关于车位关键点检测-车位识别-车辆识别检测(教程+代码)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/573595

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景