PointNet结构

博客记录了PointNet和PointNet++的实现细节。在PointNet部分介绍了InputTransformNet、FeatureTransformNet及相关卷积操作;T_Net部分包含卷积、池化和全连接层操作。PointNet++部分涉及获取关键点、分组及应用PointNet,MSG部分提到最远点采样。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记一下PointNet和PointNet++的实现细节

PointNet

T1=InputTransformNet(I0)I1=I0⋅T1I2=conv2d(I1,channels=64)I2=conv2d(I2,channels=64)I2[N×64]T2=FeatureTransformNet(I2)I3=I2⋅T2I4=conv2d(I3,channels=64)I4=conv2d(I4,channels=128)I4=conv2d(I4,channels=1024)I4[N×1024]I5=MaxPool2d(I4,output=N×1) \begin{aligned} T1&=InputTransformNet(I_0) \\ I_1&=I_0\cdot T_1 \\ I_2&=conv2d(I_1,channels=64) \\ I_2&=conv2d(I_2,channels=64) & I_2[N\times 64]\\ T_2&=FeatureTransformNet(I_2) \\ I_3&=I_2\cdot T_2 \\ I_4&=conv2d(I_3,channels=64) \\ I_4&=conv2d(I_4,channels=128) \\ I_4&=conv2d(I_4,channels=1024) & I_4[N\times 1024]\\ I_5&=MaxPool2d(I_4,output=N\times 1) \end{aligned} T1I1I2I2T2I3I4I4I4I5=InputTransformNet(I0)=I0T1=conv2d(I1,channels=64)=conv2d(I2,channels=64)=FeatureTransformNet(I2)=I2T2=conv2d(I3,channels=64)=conv2d(I4,channels=128)=conv2d(I4,channels=1024)=MaxPool2d(I4,output=N×1)I2[N×64]I4[N×1024]

T_Net

I1=conv2d(I0,channels=64)I1=conv2d(I1,channels=128)I1=conv2d(I1,channels=1024)I2=MaxPool2d(I2,output=N×1)I3=FCLayer(1024→512→256)T=Diagonal(I3⋅W)W[256,K×K] \begin{aligned} I_1&=conv2d(I_0,channels=64) \\ I_1&=conv2d(I_1,channels=128) \\ I_1&=conv2d(I_1,channels=1024) \\ I_2&=MaxPool2d(I_2,output=N\times 1) \\ I_3&=FCLayer(1024\rightarrow512\rightarrow256) \\ T&=Diagonal(I_3\cdot W) & W[256,K\times K] \end{aligned} I1I1I1I2I3T=conv2d(I0,channels=64)=conv2d(I1,channels=128)=conv2d(I1,channels=1024)=MaxPool2d(I2,output=N×1)=FCLayer(1024512256)=Diagonal(I3W)W[256,K×K]

PointNet++

KeyPoints=getsKeyPoints(I0)KeyPoints[K,D]G=getGroupByKey(KeyPoints)Gi[Ni,D],∣G∣=KFeatures=PointNet(G) \begin{aligned} KeyPoints&=getsKeyPoints(I_0) & KeyPoints[K, D]\\ G&=getGroupByKey(KeyPoints) &G_i[N_i,D],|G|=K\\ Features&=PointNet(G) \end{aligned} KeyPointsGFeatures=getsKeyPoints(I0)=getGroupByKey(KeyPoints)=PointNet(G)KeyPoints[K,D]Gi[Ni,D],G=K

MSG

P,R=FarthestPointSampling(I2,n) \begin{aligned} P,R=FarthestPointSampling(I_2,n) \end{aligned} P,R=FarthestPointSampling(I2,n)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值