- 博客(6)
- 收藏
- 关注
原创 问题:yolox里计算gt框的和预测框的iou值,其中使用torch.prod算框交集会出现inf,导致simota的结果会出现nan值。
首先,自己选取一张图片,用cv2去读取,并根据图片名字,拿coco的api去查找对应的注释(做循环,找到该图片id,在get注释,拿到标签框gt)。进一步查看,我们发现,在计算交集的area_i=torch.prod() 这行,会第一次出现inf,导致后面的计算出现nan。在尝试做simota的标签分配时,发现会出现nan值,仔细对head部分的代码跟踪,发现出现在计算iou的函数里,以下是发现的过程。会发现其中有nan。但查看该br-tl的值,我们发现仅仅只是一个40*8的数,为什么会出现inf?
2024-04-28 17:41:02
284
1
原创 C++多态的两种体现:重写(覆盖)和重载。以及重定义的区别
重写(覆盖),发生在子类和父类的同名函数上,且是虚函数(即要用virtual修饰),其参数列表,返回值类型要求一致。overload:较简单,即我们在一个类中,会定义几个同名函数,那么在函数名相同的情况下,如何区分进行调用呢?重定义:也是在继承的过程中,子类和父类中的同名函数,但不是虚函数,而是普通成员函数,这时就是重定义。多态,多种形态,具体来说,在类中我们有时候会定义同名函数,但他们的函数体不同,会产生不同的行为。以上是多态的两种体现,发生在同一类中,以及不同类中的同名函数。
2023-11-18 21:17:58
84
1
原创 python中,pass,continue,break,yield的区别(常见考点)
python中,pass,continue,break,yield的区别
2023-11-07 23:58:54
192
原创 列表作为参数传入一个函数
列表作为参数传入一个函数,函数对列表的修改,会直接改变该列表的值。而变量则不会,只在函数里改变,不会影响原来的值。
2023-02-27 19:36:15
1125
2
原创 什么时候使用with torch.no_grad(), 当requires_grad=False时,还需要用吗?
当requires_grad=False时,还需要用with torch.no_grad()吗?
2022-10-30 22:49:51
661
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人