高定位精度的交通标志识别----开源了

小白学视觉

共 2457字,需浏览 5分钟

 ·

2021-05-16 07:04

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

本文转自:AI算法与图像处理

本文包括以下4个部分,大家可以根据自己的需求,跳到相应小节仔细阅读。
  1. 方法简介

  2. 代码下载与使用

  3. 数据库下载与简介

  4. 总结


方法简介



网络结构如上图所示,可以用netscope(http://ethereon.github.io/netscope/#/editor)看源码中网络结构中的各个layer的参数。这是一个end-to-end的网络,网络输入为测试图片,输出有3个head:bbox、label、mask,整个网络也属于one-stage实例分割网络。一些结果如下:
 


代码下载与使用


代码下载:https://github.com/LoveBaldwin/TrafficSign
模型下载:链接:https://pan.baidu.com/s/1_yawJa_KUbfv0Bs2VqR4JA提取码:l0mt

代码说明


  • caffe: caffe代码
  • model: 模型相关文件
  • script: 训练模型、准备数据相关脚本
  • python: 模型、数据显示相关程序
    • anno_func.py: 简单的功能函数
    • data_show.ipynb: 图像显示的方法
    • deployer.ipynb: 模型测试流程
    • eval_check.ipynb: 模型评估

代码使用


数据下载完后,解压到与TrafficSign文件同目录下。
cd TrafficSign/script
1,编译caffe:./compile.sh
2,生成数据:mkdir -p ../../data/lmdb
./1_convert_lmdb.sh
./2_calc_img_mean.sh
3,开始训练模型:
../caffe/build/tools/caffe train --solver../model/solver.prototxt --gpu 0

数据下载与简介


数据来自某公司街景数据,场景相当丰富,数据库共有100000张图,采自中国5个不同的城市的10个不同场景,包含了不同的光照和季节的照片。数据的标注包含了:bbox(bounding box)、label和mask,如上图。数据分成了4个大类:warnings 、prohibitions、mandatory、Other,如下图所示,正如图中所示,除了这4个大类,还根据信息内容进行了细分类。模型的训练与测试仅使用了其中一部分图片,约占15%,目前仅开源程序中使用的图像。


数据库目录说明


  • train:所有训练图
  • test: 所有测试图
  • other: 从训练集和测试集排除的图
  • marks: 用于做数据增强的标准图
  • annotations.json: 图片标注文件

标注说明


关于mask的标注,使用了两种模型去拟合目标边界:三角和椭圆,其中三角在标定时使用了3个角点,如果图像畸变比较严重,会增加标注点,椭圆标注了5个点来拟合椭圆方程,json字段含义如下:
  • path: 图像相对路径

  • objects:[], 图像中的所有目标

  • category: 目标类别.

  • bbox: {xmin,ymin,xmax,ymax:float}, 目标框

  • ellipse_org: [[x1,y1],[x2,y2],...], 非必须, 椭圆的标注点

  • ellipse: [[x_o,y_o],[r_l,r_s],angle], 非必须, 根据椭圆标注点拟合的椭圆,[x_o,y_o] 是椭圆圆心, [r_l,r_s]是椭圆长短轴, angle椭圆旋转角.

  • polygon: [[x1,y1],[x2,y2],...], 非必须, 三角形的标注点

 
下载方式


可以先下载一些样例:
链接:https://pan.baidu.com/s/1B0Rz2HBLIoVTAIFXxfxnPA提取码:xam3

训练程序的数据集下载方式:关注本公众号,将本文发到朋友圈,收集7个赞,在后台截图发给小编,小编会在24小时内将下载链接发给你。
数据集收集不易希望能够理解,对于原创作者而言,你的关注和分享,是我们分享的动力!

总结


代码是以caffe为基础的,可能环境配置要花一些时间。小编最近在整理代码,环境编译相关的问题,希望大家可以通过google/baidu来解决。也欢迎大家实现pytorch和tensorflow版本的代码。

下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


浏览 31
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报