输入:k个通道的影像,也就代表着输入数据为k*m*n,其中m,n为影像行列数。这个输入数据也就有着k个原始特征(个人理解)。而点云数据与与此类似,输入数据一般为k*j,其中k为点云的特征数,一般为3+d,其中3代表着点云的x,y,z三个坐标,d为其他特征值,一般为强度值,回波数等特征。
卷积层:
输入通道数为 K,输出通道数为 L,那么卷积核个数为 KxL。因为高维卷积计算是多个通道与多个卷积核分别进行二维计算
所以 K 个通道会需要 K 个卷积核,因为每个通道可能实际所占权重不同,需要采用不同的卷积核,这样在误差传播之后还能进行动态调整,计算之后,合并也就是相加得到一个通道,又因为输出通道为 L,所以需要 KxL 个卷积核。
然后就是如何求解参数数量?
其实很简单,就是卷积核个数乘以卷积核尺寸,para=IxJxKxL。
1*1卷积核的意义:改变特征维度。
全连接层:其实就是输出的每个值和输入的每个值都有关系,也就是连接状态:
输入的是M*N*P的数据,那么输出的每一个数据都要和这些所有的M*N*P个数据相关。但是也会因此失去空间特征(因为输出的每个值和前面的所有点都有关系了)
就是一个卷积核为像素值大小的卷积层。即参数数量为m*n*K*L,m,n为影像的像素值多少。
代码理解:
torch.nn.Linear(in_features, # 输入的神经元个数 out_features, # 输出神经元个数 bias=True # 是否包含偏置 )
全连接层就是将输入的数据展平为m*1*1(其中m=原本的特征数目*行数*列数),再将其传入Linear中,即in_features=m。
讲解参数量的好文章:卷积和全连接层的模型参数计算详解,详细到神经元个数一个个算,天啊,以VGG16为例_全连接层参数量计算_小林同学记录的博客-优快云博客