专栏首页腾讯智能钛AI开发者【典型案例】利用AI技术快速识别物体种类之火眼金睛目标检测
原创

【典型案例】利用AI技术快速识别物体种类之火眼金睛目标检测

目标检测任务在计算机视觉和数字图像处理领域扮演着重要角色,在各行各业也已得到广泛应用,如航空航天、机器人、智能监控等重大行业。精准地从图片中识别出目标所在位置,并准确地将该目标分类,是目标检测任务的核心目的。随着深度学习的主流浪潮,目标检测算法在性能上也得到了较大的提升。

本文通过智能钛机器学习平台,提供一种利用深度学习算法快速搭建目标检测模型的使用方法。用户无须编写代码,只要拖动相应的算法组件,便可以在十几分钟的时间内快速上手,解决目标检测场景下的问题。

数据集介绍


本案例使用的数据集为从 公开数据集 中选取的 Daisy(菊花)和 Sunflower(向日葵)的部分图片,并对其进行手工标注得到的 demo 数据集。

整体流程


工作流整体流程如下:

本场景共包含4个环节,分别是:

  1. 花朵数据准备(花朵数据的标注信息+花朵数据的图像信息)。
  2. 将数据拆分成训练集、验证集 。
  3. 将原始 JPG 图片文件转换成高效的 TFRecord 格式文件。
  4. 选择合适的 CNN 网络处理分类任务。

详细流程


一. 上传数据 本步骤中需要上传两个数据源:花朵数据标注和花朵数据图像。

1.在智能钛机器学习平台控制台的左侧导航栏选择:【输入】>【数据源】>【COS 数据集】,并拖入画布中。

2.设置【COS 数据集】参数:

  • 将该组件重命名为:花朵数据标注。
  • 填写 COS 数据路径:(请直接复制输入) ${ai_dataset_lib}/public/YOLOv2/flowers/Annotations
  • 请务必关闭“是否检查数据”。

3.在智能钛机器学习平台控制台的左侧导航栏选择:【输入】>【数据源】>【COS 数据集】,并拖入画布中。

4.设置该【COS 数据集】参数:

  • 将该组件重命名为:花朵数据图像。
  • 填写 COS 数据路径:(请直接复制输入) ${ai_dataset_lib}/public/YOLOv2/flowers/Images
  • 请务必关闭“是否检查数据”按钮。

二. 切分数据 在模型训练的时候通常会将所有的数据分成三部分, 分别是训练集 training set、验证集 validation set 和测试集 test set。 训练集用来训练模型, 验证集用于调节超参数,测试集用来整体评估模型的性能。

本文的实验较简单,可只将数据切割成训练集和测试集,比例为 8 : 2( 80% 用于训练, 20% 用于测试)。

  1. 在智能钛机器学习平台控制台的左侧导航栏,选择【输入】>【数据转换】>【图像数据切分】,并拖入画布中。
  2. 将【花朵数据标注】的输出桩连接到【图像数据切分】的输入桩。
  3. 填写参数, 其余参数均可默认:
    • 分类 or 检测任务:Detection。
    • 验证集比例:0.2。

三. 数据格式转换 TFRecord 数据文件是一种将图像数据和标签统一存储的二进制文件,能更好的利用内存,在 Tensorflow 中快速的复制、移动、读取、存储等。通过以下操作将原始 JPG 文件格式转换成高效的 TFRecord 格式。

  1. 在智能钛机器学习平台控制台的左侧导航栏,选择【输入】>【数据转换】>【图片格式转换(检测)】。
  2. 将【图片格式转换(检测)】拖入画布
  3. 将 【图像数据切分】 的输出桩,连到 【图片格式转换(检测)】 最左边的输入桩上; 将【花朵数据标注】的输出桩连接到【图片格式转换(检测)】最右边的输入桩上;将【花朵数据图像】的输出桩连接到【图片格式转换(检测)】中间的输入桩上。
  4. 填写参数, 其余参数均可默认:
    • 类别映射文件(手动复制输入): ${ai_dataset_lib}/public/SSD/flowers_label_map.pbtxt

四. 选择 RCNN 网络 选择合适的 CNN 网络处理分类任务,如此处选择Faster RCNN 网络模型。

  1. 在智能钛机器学习平台控制台的左侧导航栏,选择【算法】>【深度学习算法】>【计算机视觉】>【Faster-rcnn】。
  2. 将【Faster-rcnn】拖入画布。
  3. 将【图片格式转换(检测)】左侧输出桩与【Faster-rcnn】左侧输入桩相连,同时将【图片格式转换(检测)】右侧输出桩与【Faster-rcnn】的右侧输入桩相连。
  4. 填写参数:
    • 配置文件:点此下载 将下载后的文件上传至此。
    • 标签类别映射(直接复制输入):${ai_dataset_lib}/public/SSD/flowers_label_map.pbtxt
    • 初始模型(直接复制输入): ${ai_dataset_lib}/checkpoints/faster_rcnn/faster_rcnn_resnet50_coco/model.ckpt
    • 类别个数:2。
    • GPUs:1。
    • 其余使用默认值。

五. 运行调度及训练进度查看 详情请参考 运行工作流

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【典型案例】如何使用机器学习帮助你快速成为花朵分类专家

    随着信息时代的发展,伴随着照相装备和图片采集设备的普及,越来越多的图片数据广泛存在于生产生活的各个角落,如何对海量图片数据进行高效的分类和检索成为了一项新的挑战...

    腾讯智能钛AI开发者
  • 高分选手讲解:如何突破思维圈限,从NLP角度挖掘新的解题思路

    稳居排行榜前三,成绩高达1.453292的他,究竟是位怎样的神级选手?今天,我们就邀请到这位实力强劲的神秘大咖,为大家揭晓他的上分思路。

    腾讯智能钛AI开发者
  • 【技术分享】机器学习在量化交易方向的应用—基于神经网络的多因子选股策略

    量化交易策略无非三点:择时、选股、仓控。择时为短期套利交易策略,选股为中长期交易策略,目标是在中长期跑赢指数、获取市场超额收益率alpha。多因子选股的关键是找...

    腾讯智能钛AI开发者
  • 刚刚,96年美女拿下了刘强东的猪脸识别冠军,30万奖金到手!

    记者 | 鸽子 刚刚,JDD—2017京东金融全球数据探索者大赛决赛冠军出炉,获得算法组4组冠军分别为: 登陆行为识别冠军:啦啦队 店铺销量预测冠军: 小麻猫 ...

    AI科技大本营
  • 小记最近踩得两个C++坑

    记一下最近踩得两个C++独有的暗坑,其中一个和ABI相关。第二个坑其实之前研究过,但是没有实例,这次算是碰到了个典型的实例。

    owent
  • Go 语言Map(集合)

    Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值。 Map 是一种集合,所以我们可以像迭代...

    李海彬
  • QT-QTSingleApplication-程序只运行一个实例

    QTSingleApplication由Qt官方提供的,用于实现只启动一个实例,并在启动时可以向向另一个实例通信(依赖于QtNetwork模块)

    张诺谦
  • 在线隐性关联测试在民意调查中的应用(CS Computers and Society)

    民意调查已经成为社会中非常重要的组成部分,因为它是我们日常新闻的一部分,并且民意测验的结果以对我们而言并不总是显而易见的方式影响着政府和企业。但是,民意调查并不...

    Rosalie
  • shell脚本中字符串的常见操作及"command not found"报错处理(附源码)

    简介 昨天在通过shell脚本实现一个功能的时候,由于对shell处理字符串的方法有些不熟悉导致花了不少时间也犯了很多错误,因此将昨日的一些错误记录下来,避免以...

    我是十三
  • ViewPager使用FragmentPagerAdapter适配器

    AlicFeng

扫码关注云+社区

领取腾讯云代金券