【点云数据转换系列】点云batch数据, 转为geometric数据 图神经网络训练【PYG】

前提已有数据:比如2个点云文件,点云文件有4点
需求数据:

1.将对个点云cat拼接到一个 [ 2,4,3 ]->[ 2*4,3 ]
2.每个点有一个索引:[0,0,0,0,1,1,1,1]

参考地址:
https://developer.moduyun.com/column/detail/82643.html

import torch
from torch_geometric.data import Data, Batch

def switchupdata(batch_input):
    temparry = []

    for i in range(batch_input.shape[0]):
        onetorch = batch_input[i].squeeze() # 2维度的数据
        temparry.append(Data(onetorch)) # 转成List
        print(onetorch.shape)

    switch = Batch().from_data_list(temparry)
    x          = switch.x
    batch      = switch.batch
    edge_index = switch.edge_index
    return x,batch,edge_index

if __name__ == '__main__':

    # 准备一个 batch 点云数据(3维)
    data_tsdim3 = torch.tensor([[[1, 1, 1], [2, 2, 2], [3, 3, 3],
                                      [4, 4, 4], [5, 5, 5], [6, 6, 6]]],
                                      dtype=torch.float32)

    xdata_G,batch_G,edge_index = switchupdata(data_tsdim3)

    print(xdata_G)
    print(xdata_G.shape)
    print(batch_G)
    print(edge_index)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值