yolov3 知乎 04节

torch.sequeeze(ind) 在ind位置添加一个维度

tensor.new() 生成一个新的张量,该张量的type和维度都和原来的一致,一般可使用copy_进行赋值

 

IoU的非极大抑制:https://www.cnblogs.com/makefile/p/nms.html

 

 

简单来说,非极大抑制作用的IoU,是移除重复率较大的框的一种操作,也就是保留最大的

 

对于write_result函数当中最外层的循环,也就是针对每个batch(即每张图片),使用的loop循环,而非向量化;其文中对此解释不对,而且我认为可以通过index标记对此进行解决,后续可以尝试进行实现

 

.pth .pt .weights 这几个后缀文件本质均相同,是模型的保存,内部记录有训练好的参数,即作为预测detection直接使用,但需要加载入网络当中

 

argparse.ArgumentParser()方法

是一种在python当中使用的命令行对象,具体参考

https://blog.csdn.net/huima2017/article/details/104797135

https://www.cnblogs.com/yibeimingyue/p/13800159.html 即可,感觉适用于linux等系统,在pycharm上没有这个必要,权当知识补充

 

 

 

总结

今天所做的也就这些内容而已,但是却花了不少时间理解(深刻意识到自己的菜),尤其是IoU那段代码,文中通过大量的阈值过滤和矩阵对应位置乘法,实现了mask的功能

(对应位置相乘也就是使用 *; 而矩阵乘法是np.dot 需要注意区分)

随后也看了第五部分,即预测输出与显示,搞了下开始的图片加载,网络初始化等琐事,无非是对前面几天写的方法的一些调用,但实际完成起来还是挺费功夫

明天争取把最后一个部分给完成了,然后去补充训练网络即保存方面的内容,因为这个文章中没有给出

 

 

 

 
 
 
 

posted on 2021-11-27 00:19  LazydogeWang  阅读(29)  评论(0)    收藏  举报