商汤科技感知算法一面复盘

来源:投稿 作者:LSC
编辑:学姐

自我介绍

介绍自己的项目

Inception网络的核心模块是什么,有什么用

Inception模块的核心思想就是将不同的尺度的信息特征以并行分支的方式结合在一起,经过不同卷积层处理的结果矩阵在深度这个维度拼接起来,形成一个更深的矩阵。Inception模块可以反复叠堆形成更大的网络,它可以对网络的深度和宽度进行高效的扩充,在提升深度学习网络准确率的同时防止过拟合现象的发生。

上采样和下采样

上采样就是放大图像的操作,也叫图像插值。下采样反之,是缩小图像的操作,也叫降采样。

上采样的方法有(1)插值法(最邻近插值、双线性插值等) (2)转置卷积(又称为反卷积) (3)上池化(unpooling)等。

下采样的方法有(1)卷积和(2)池化

https://blog.csdn.net/jackzhang11/article/details/105046217/

反卷积 插值法

反卷积:反卷积就是卷积,只是中间padding了下,然后再做卷积。也叫做转置卷积,只能还原原来的特征图大小,而不是原来的值。在进行反卷积的时候设置的stride并不是指反卷积在进行卷积时候卷积核的移动步长,而是被卷积矩阵填充的padding。通过反卷积并不能还原之间的矩阵,只能从大小上进行还原,反卷积的本质还是卷积,只是在进行卷积之前,会进行一个自动的padding补充0,从而使得输出的矩阵和指定输出的矩阵的shape相同。

https://www.cnblogs.com/eilearn/p/9125177.html

插值法有很多种,最常见的是双线性插值,是对线性插值在二维直角网格上的扩展,用于对双变量函数(例如x 和y)进行插值。其核心思想是在两个方向分别进行一次线性插值。

https://zhuanlan.zhihu.com/p/361430532

https://blog.csdn.net/qq_34919792/article/details/102697817

全局池化

是对[C,W, H]的张量变成[1,1, H]的张量的操作。

Yolo算法中用到的数据增强

  • MixUp,图像对及其标签的凸叠加,构建了虚拟的样本。https://blog.csdn.net/m0_52073096/article/details/120677075
  • CutMix,通过从一个图像中切割一部分并将其粘贴到增强图像上来组合图像,使用了两张图片。
  • Mosaic,将4张图片以随机缩放、随机裁剪、随机排布的方式进行拼接。最主要的方式。
  • 其他常见的数据增强。

Yolov5相比之前的改进之处

采用GIOU_Loss做Bounding box的损失函数。

输入端采用了Mosaic数据增强、自适应锚框计算、自适应图片缩放等tricks。

Yolov5的Neck结构采用FPN+PAN的结构,还采用借鉴CSPnet设计的CSP2结构,加强网络特征融合的能力。

Backbone采用了CSPDarkNet53网络,还使用了focus操作。

https://zhuanlan.zhihu.com/p/172121380

https://zhuanlan.zhihu.com/p/186014243

目标检测中的Presicion和recall怎么算

https://zhuanlan.zhihu.com/p/478461060

目标检测的AP怎么求

AP(Average Precision) 用11点法、近似面积法求得。

以Presicion为纵坐标、以recall为横坐标。将置信度最高到最低的值排序将其离散化,对应的bbox对应的p和r标在图上,进行计算。

用代码计算IOU

def IOU(A, B):
x1, y1, x2, y2 = A[0], A[1], A[2], A[3]
a1, b1, a2, b2 = B[0], B[1], B[2], B[3]
xmin = max(x1, a1)
xmax = min(x2, a2)
ymin = max(y1, b1)
ymax = min(y2, b2)
if xmin > xmax or ymin > ymax:
return 0
SI = (xmax - xmin + 1) * (ymax - ymin + 1)
SU = (x2 - x1 + 1) * (y2 - y1 + 1) + (a2 - a1+ 1) * (b2 - b1 + 1) - SI
return SI / SU
# 测试
import numpy as np
A = np.array([[2, 4, 5, 6], [1, 2, 3, 4]])
B = np.array([[2, 4, 5, 6]])


iou = []
for i in A:
result = []
for j in B:
print(IOU(i, j))
result.append(IOU(i, j))
iou.append(result)
iou

问了行业的前景、求职规划,实习能学到什么东西

如果没有顶会论文,不要冲计算机视觉,建议换一个赛道。

除非有很优秀的竞赛、实习经历或者大型项目,可以试一下。

点击卡片关注👇

回复“500”即可领取论文复现视频及代码资料

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值