目录
目录
前言
网络(Faster RCNN、SSD、YOLO v2&v3等)中,均有先验框的说法,Faster RCNN中称之为anchor(锚点),SSD称之为prior bounding box(先验框),可以理解是一个概念。Anchor设置的合理与否,极大的影响着最终模型检测性能的好坏。
什么是Anchor?
一句话概括——**提前在图像上预设好的不同大小,不同长宽比的框,**先验框示意如下:
同一位置设置多个不同尺度先验框
yolov2中先验框的计算方法
在YoloV2中,先验框(Prior Box)的计算方法是通过一个数学公式实现的,这个公式基于输入图像的宽和高以及一些其他的参数。
具体来说,先验框的宽度和高度是通过对输入图像的宽度和高度的函数计算得出的。这个函数考虑了输入图像的宽高比以及其他一些参数,以确保先验框能够适应输入图像的不同形状和大小。
在YoloV2中,先验框的计算方法包括以下步骤:
- 计算输入图像的宽高比。这个比例是根据输入图像的实际宽度和高度计算的。
- 根据输入图像的宽高比和其他一些参数,计算出先验框的宽度和高度。这个计算方法可以确保先验框能够适应输入图像的不同形状和大小。
- 将计算出的先验框的宽度和高度应用于特征图上的每个位置,以生成每个位置的先验框。这个步骤可以通过一个简单的数学公式实现,其中包含了输入图像的宽高比和其他一些参数。
需要注意的是,在YoloV2中,每个位置的特征图上都会生成一个先验框,这个先验框是基于输入图像的宽高比和其他一些参数计算得出的。因此,每个位置的先验框的大小和形状都是不同的,以适应输入图像的不同形状和大小。
k-means算法
k-means算法以数据间的距离作为数据对象相似性度量的标准,因此选择计算数据间距离的计算方式对最后的聚类效果有显著的影响,常用计算距离的方式有:余弦距离、欧式距离、曼哈顿距离等。本文以欧式距离为例
举例:若数据为2维:
通过上述公式可计算出每对数据对象间的距离,根据距离的远近进行聚类成指定的类别数K。
对每一类中的数据初步选取类心,取的方式有多种如:
1.该类所有数据的均值;
2.随机取k个数据作为类心;
3.选取距离最远的k个点作为类心等。
以上方法均需要对初步的类心进行迭代,当类心变化缓慢时便可认为收敛,此时该点便为最终的类型。本文以方法1为例