1.原kmeans算法在代码中如何运行?
首先遍历每一个标签的每一个目标
把每一个遍历的目标都通过load_data函数来遍历,
把遍历结果存放在data这个变量里面
进行聚类算法
因为yolo运用了9个先验框,所以在代码中就使用了9个聚类中心
首先随机选取9个聚类中心,然后计算其他聚类中心和这个9个聚类中心之间的距离
这个里需要提到IOU的概念,就看预测框和实际框之间的交并比;
我们会把所有的框相对与这九个聚类中心之间的距离,
我们会根据这个距离对所有的框进行一个划分,把它划分为9个区域
如果某一个框距离某个聚类中心是最近的,那么这个框就属于这个聚类中心了
之后会对这九个区域的框取一个平均,重新作为这个聚类中心
进行下一轮的循环,直到聚类中心的位置不再改变为止。
box:[[],[],]1105
distance:[[]]1105
k:9
last_clu:0.0.0.0
row:int(1150)
cluster:[[],[]]0-8
i:1104
near