上衣颜色识别项目总结

  • 流程:
  1. 先用yolo v3的Keras版本训练coco数据集的模型做行人检测,过滤掉非行人以及超大框,得到行人的位置
  2. 使用alexnet进行颜色分类,一共12类,数据集是之前标定好的数据集,格式是pascal voc的格式,大概3万张数据集。按照train-set :val-set=9:1的比例进行训练,得到颜色识别模型的val acc=76%,想用vgg模型继续改,但是训练到21%左右准确率就不再提升不知道原因。尝试失败
  3. 测试训练好的颜色模型:将第一步的行人位置的图片截取出来,传入颜色识别模型中进行识别,然后将结果返回。但是测试阶段很慢,每帧需要400秒的测试时间,因此视频当中的每一秒的测试时间是400*25帧=10000秒,时间太长,需要修改网络结构

优化方向:感觉可以使用Yolo v3训练全景图,也就是5元组,4个坐标位置+1个颜色label,这样实时性能高很多,毕竟仅仅使用Yolo v3这个框架,并不需要调用颜色识别函数。

  • 相关说明:

训练数据:仅仅设计涉及到上衣颜色数据集,用的之前标定的数据集,并没有用RAP数据集

测试数据:将视频当中的行人用yolo v3训练coco数据集的模型检测出来,然后传入颜色识别模型进行测试,但是误检率比较高

测试平台:ubuntu14.04,python3.6.1,keras==2.1.3,tensorflow-gpu==1.4.1

评价指标以及测试demo,由于需要的时间太长,11分钟的视频,需要11*60*400*25约等于76天,没有做,需要方法优化,不过做这个小实验也有一些收获,踩了很多坑,最后都解决了。

三.项目收获

1)RAP数据集

RAP数据集的label是mat文件,第一次使用,所以需要先转化为xml格式,然后再进行读取,并且RAP数据集仅仅能做图片训练,不能做行人检测【问了RAP数据集的作者】;

RAP数据集的上衣位置,需要将上衣的位置-人的位置,才可以找到上衣的位置

2)yolo v3的多分类

之前使用yolo v3做了人脸识别,仅仅有face这一个类别,这次用yolo v3做了多分类,产生了一个比较奇怪的现象,返回了多个预测类别,因此需要将sigmoid层改为softmax层重新训练,这样才可以得到最终的预测一种类别。

3)两个项目的拼接:

我是以yolo v3作为主项目,然后颜色识别的测试做子项目,两个项目的拼接也用了一段时间,遇到了好多坑,比如说,图像处理的库:opencv以及PIL,这两个库的channel顺序不同,opencv是BGR,PIL是RGB,因此需要转换,并且在用PIL的剪裁行人的框的时候也遇到了一些小问题,导致在项目拼接的时候始终调用不了颜色识别模型的测试文件。

4)一定要写异常处理函数!!

这点很重要,因为数据集的标定并不像想象那样标注的很好,遇到了问题就是,读取了一个标注文件,没有衣服颜色属性,导致返回空值,在批处理的时候由于数据量太大,始终发现不出来问题,就是报错,后来printf这个方法搞定了。

使用yolo v3+alexnet做上衣颜色识别项目总结相关推荐

  1. yolo v3做行人检测+alexnet做上衣颜色识别

    参考链接: 1)alexnet做上衣颜色识别 2)keras训练自己的数据集 前言: 本项目是基于yolo v3已经训练好的coco数据集的模型进行行人检测的,然后将检测出来的结果传入到alexnet ...

  2. 【项目实践】从零开始学习Deep SORT+YOLO V3进行多目标跟踪(附注释项目代码)...

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自|集智书童 1.跟踪基础知识简介 首先要说明一点,现在多目标 ...

  3. 魔方机器人(二)颜色识别

    魔方机器人(二) 颜色识别 今天,就让我们来看看魔方的颜色识别是如何做到的.做图像处理的话我们可以用OpenCV(用到了颜色空间的转换RGB转HSV以及ROI区域提取),全称为Open Source ...

  4. 口罩、安全帽识别比赛踩坑记(二) 比赛流程及 SSD / YOLO V3 两版本实现

    本篇文章主要对比赛流程中的各个环节进行展开说明,并对笔者践行过的代码及更改的地方进行记录.如哪里有侵权请联系笔者进行删除.另外在这里对比赛举办方表示感谢 ~ ~ 其中开源代码会在整理后放在github ...

  5. 基于改进YOLO v3网络的夜间环境柑橘识别方法

    基于改进YOLO v3网络的夜间环境柑橘识别方法 人工智能技术与咨询 本文来自<农业机械学报>,作者熊俊涛等 关注微信公众号:人工智能技术与咨询.了解更多咨询!

  6. 使用kinect2.0做动作识别和重量颜色识别

    在抓取杠铃的过程中,杠铃的颜色是固定的,我们可以使用颜色信息识别出我们杠铃片的重量,具体做法是,利用手抓取横杆的信息获取到手的骨骼关键点的深度值信息,然后利用距离信息做x,y,z方向上的点云滤除,滤除 ...

  7. opencv做颜色识别(python)

    使用Raspberry摄像头抓图然后进行颜色识别. #!/usr/bin/python # -*- coding: UTF-8 -*- import sys import time from pica ...

  8. 图像目标检测算法总结(从R-CNN到YOLO v3)

    (首发于知乎,链接:https://zhuanlan.zhihu.com/p/242424344,欢迎关注~) 基于CNN 的目标检测是通过CNN 作为特征提取器,并对得到的图像的带有位置属性的特征进 ...

  9. r语言把两个折线图图像放到一个图里_图像目标检测算法总结(从R-CNN到YOLO v3)...

    基于CNN 的目标检测是通过CNN 作为特征提取器,并对得到的图像的带有位置属性的特征进行判断,从而产出一个能够圈定出特定目标或者物体(Object)的限定框(Bounding-box,下面简写为bb ...

最新文章

  1. ---Pcie基本概念普及(扫盲篇--巨适合新手)
  2. HTML5好从业吗?为什么都热衷于HTML5全栈工程师呢?
  3. 电气期刊论文实现:考虑爬坡约束和输电损耗的经济调度【有代码】
  4. .NET常用第三方库(包)总结
  5. 克鲁斯卡尔算法(公交站问题)
  6. 赛锐信息:SAP系统用户账号类型介绍
  7. 利用js排序html表格
  8. 算法导论第三版 第1章习题答案
  9. python itchat教程_Python itchat.run方法代码示例
  10. UVAOJ 10098 Generating Fast
  11. 2020年专业408的算法题
  12. TRC病毒-宿主融合抑制剂研究丨4-氨基-1-叔丁基说明书
  13. vue照片查看器插件v-viewer
  14. java坦克大战课设报告_java课程设计之坦克大战
  15. 中小企业网上手机订货下单软件|移讯云订货通订单管理系统后台功能模块
  16. 老猿学5G扫盲贴:中国移动的5G计费架构解读
  17. matlab线性拟合前的准备工作
  18. c语言实现猜单词小游戏
  19. openwrt网络唤醒计算机,蜗牛星际 82583V网卡在win10中开启网络唤醒开机的方法
  20. AutoIt自动化实例

热门文章

  1. 星座运势接口、星座查询接口和星座配对接口应用解决方案【源码可用】
  2. 4位网关高手论道:什么才是好的微服务网关?
  3. 手机文件丢失了怎么找回
  4. 计算机网络知识全面讲解:抓包分析SMTP和POP3
  5. hive like语法、RLIKE正则匹配字符串
  6. blr不是已知的css属性名,css笔记
  7. Flink1.8 on yarn 环境搭建及使用
  8. pandas 从dataframe A剔除 dataframe B包含的行
  9. c++ 哥德巴赫猜想
  10. Adobe Acrobat Reader 窗口一闪而过的解决方法