Chisel(Constructing Hardware In a Scala Embedded Language)是UC Berkeley开发的一种开源硬件构造语言。
站长xddcore有话说:在我大二的时候,因为项目需要,接触了Chisel。在体验过后,我被它深深的吸引了。我幻想着它十年后的样子,充满希望。于是创建了这个博客,让更多人的了解Chisel,学习Chisel。

[项目分析与总结]目标检测数据集自动标注

内容纲要
Reading Time: < 1 minute

hello,everyone.好久不见,在折腾了近两个月后,目标检测自动训练功能终于在maixhub上线了。(刚刚上线的那几天,我也是提心吊胆的QAQ,就怕服务崩掉,这种感觉,相信大家都懂QAQ)

在这里插入图片描述

当然,现在目标检测自动训练也存在一些问题.接下来罗列下问题List吧。

Q_List:

  1. 折腾我半个月都没解决的问题(主要还是自己太菜了)。当tflite通过nncase量化成int8后,效果大大下降。表现为coords并不准确。因为最开始我是存在loss函数和论文中理解有偏差,然后写错的原因。所以我一直认为是coords部分的loss没有写对/数据集本身的问题。经过和大佬的讨论,得出结论。做detection的话,最后几层还是建议用float,虽然速度损失一些,但是精度得到了保证。
  2. 目前自动训练仅支持一个图片 一个框,不太人性化。
  3. 训练后,显存有几率不释放问题。(查了下,tf2并没有显存释放API,可能是由于tf2采用动态图机制,用完就释放了。)这个问题不太好解决,因为我测试了显存不释放的时间点前后的数据集,尝试复现显存不释放的问题,结果,显存全部都释放正常QAQ。(大写的玄学)

这些问题打算后面慢慢优化了,自己也在yolov2上快折腾两个月了,达到疲劳阶段了,是时候换个口味了QAQ。

聊了这么多,接下来回到正题:目标检测数据集自动标注

需求分析:在数据集很大的时候(比如几百张,上千张,乃至上万张时),如果还是用传统的人工手动标注的话,将会大大浪费时间。所以自动标注数据集的需求还是很大的。

实现难度分析:自动标注在github上有类似开源项目,改一改轮子就可以用。开发的重心主要在自动标注后的输出与现有自动训练脚本的对接上。

TODO(完成的会打✔)(预计时间:15-20天{最近因为疫情在家,又长胖了QAQ,所以每天中午爬山,晚上散步5KM左右,一般就早上干活了})

  1. 测试数据集自动标注脚本,评估性能和稳定性。
  2. 编写并测试DataAssitantV1.2软件。(新增对目标检测数据集自动标注的支持)
  3. 修改,优化自动标注脚本,使其与DataAssitantV1.2适配
  4. 编写数据格式自动转换脚本
  5. 本地联调测试
  6. 思考程序可能出现的异常,建立异常捕获机制,提升程序稳定性
    7.上线Maixhub进行公测

最近在写程序之外,也找到了一些好玩的东西。比如西点烹饪(长胖警告QAQ

在这里插入图片描述
就在昨天,Maixhub目标检测(自动标注)上线啦。使用指南:https://www.bilibili.com/video/BV14D4y1D7S3?zw

Share

xddcore

xddcore www.github.com/xddcore

You may also like...

发表回复

您的电子邮箱地址不会被公开。