吴恩达神经网络和深度学习-学习笔记-40-目标定位

目标检测是计算机视觉领域中一个新兴的应用方向。相比前两年,它的性能越来越好。

对象定位

在构建对象检测之前,我们先了解一下对象定位。
在这里是入图片描述
定位分类问题:
不仅要用算法判断图片中是不是一辆汽车,还要在图片中标记出它的位置。
定位分类问题通常只有一个较大的对象位于图片中间位置。

对象检测问题:
图片可以含有多个对象,甚至单张图片中会有多个不同分类的对象。

图片分类的思路可以帮助学习分类定位,而对象定位的思路又有助于学习对象检测

分类和定位

在这里插入图片描述
图片分类的流程(标准的分类pipeline):

  • 输入一张图片到多层卷积神经网络
  • 输出一个特征向量
  • 特征向量反馈给softmax单元来预测图片类型

定位的思路

想定位图片中汽车的位置,实际上就是让神经网络多输出几个单元,输出一个边界框。

具体说就是让神经网络再多输出4个数字,标记为bx、by、bh和bw,这四个数字是被检测对象的边界框的参数化表示。

在这里规定,图片左上角的坐标为(0,0),右下角标记为(1,1),

要想确定边界框的具体位置,需要指定红色方框的中心点(bx,by),边界框的高度为bh,宽度为bw。

训练集的变化

训练集不仅包含神经网络要预测的对象分类标签,还包含表示边界框的这四个参数。

训练思路

接着采用监督学习算法,输出一个分类标签和这四个参数。

例子分析

此例中:

  • bx的理想值是0.5(表示汽车位于图片水平方向的中间位置)
  • by大约是0.7(表示汽车位于距离图片底部3/10的位置)
  • bh约为0.3(表示红色方框的高度是图片高度的0.3倍)
  • bw约为0.4(表示红色方框的宽度是图片宽度的0.4倍)。

定义目标标签y

在这里插入图片描述
神经网络输出的是四个参数、分类标签出现的概率。

鉴于我们所要处理的问题,我们假设图片中只含有一个对象。

则y是一个向量:

  • 第一个组件Pc表示是否含有对象(如果对象属于前三类则Pc=1。如果是背景则Pc=0)。
  • 第二个组件bx、by、bh和bw表示如果检测到对象,就输出被检测对象的边界框参数。
  • 第三个组件c1、c2、c3表示在Pc=1的情况下,判断对象属于1-3中的哪一类

损失函数

在这里插入图片描述
上图是对误差函数的简单的描述。

通常做法是对边界框坐标应用平方误差或类似方法,对Pc应用逻辑回归函数(甚至采用平方预测误差也是可以的)。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值