Построение вывода для 3D-облака точек с помощью Pointcept V3 Point TransformerPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Построение вывода для 3D-облака точек с помощью Pointcept V3 Point Transformer

Сообщение Anonymous »

Код: Выделить всё

import torch
from torch.utils.data import Dataset, DataLoader
import numpy as np
import open3d as o3d
from pointcept.models.point_transformer_v3.point_transformer_v3m1_base import PointTransformerV3
from pointcept.engines.defaults import (
default_argument_parser,
default_config_parser,
default_setup,
)
from pointcept.engines.train import TRAINERS
from pointcept.engines.test import TESTERS

def load_model():
args = {
'save_path': 'semsegV3_waymo_20_epochs_2',
'weight': 'semsegV3_waymo_20_epochs_2/model/model_best.pth'
}
cfg = default_config_parser('PointTransformerV3.1/configs/waymo/semseg-pt-v3m1-0-base.py',args)
cfg = default_setup(cfg)
print(cfg)
model = TESTERS.build(dict(type=cfg.test.type, cfg=cfg))

# Uses overidden test method from SemSegTester class
model.test()
return model.model
def visualize_data_sample():
# Load and preprocess the data
data = np.load('PointTransformerV3.1/exp/waymo/semsegV3_waymo_20_epochs_2/result/segment-10203656353524179475_7625_000_7645_000_with_camera_labels_1522688017467153_pred.npy')
print(data)
if data.ndim == 1 and data.size % 3 == 0:
data = data.reshape(-1, 3).astype(np.float64)
else:
raise ValueError("Data cannot be reshaped into (N, 3). Check the input file.")

# Create the point cloud
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(data)

# Save the point cloud to a file (e.g., PLY format)
o3d.io.write_point_cloud("output.ply", pcd)
print("Point cloud saved to output.ply")

def test():

# model = load_model()
visualize_data_sample()

test()

Я инициализирую предварительно обученную модель. Второй файл предназначен для визуализации облака точек.
Это код, который у меня сейчас есть. Я проверил, данные 1D. Что-то вроде [9 8 9... 17 17 17]. Я считаю, что прямое добавление размеров — неправильный подход. Но когда я это делаю, для одного из файлов мне выдается файл .ply. Но если я изменю файл pred.npy, он скажет: ValueError: Данные не могут быть преобразованы в (N, 3).

Подробнее здесь: https://stackoverflow.com/questions/792 ... ransformer
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»