File size: 1,135 Bytes
56bd2b5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import sys
sys.path.append('ProposalNetwork/utils')
from plane import Plane, Plane_np

import open3d as o3d
import numpy as np

import torch

# Load saved point cloud and visualize it
pcd_load = o3d.io.read_point_cloud("ProposalNetwork/utils/tests/caixa.ply")
# o3d.visualization.draw_geometries([pcd_load])
points = np.asarray(pcd_load.points)
import time


p1 = Plane()

p2 = Plane_np()

# points = np.array([[-2.11,1.38,0],[0,0,1.86],[1.44,1.27,0]])
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
point_torch = torch.from_numpy(points).to(device)

# random.seed(0)
# np.random.seed(0)
# torch.manual_seed(0)
t1 = time.perf_counter()
a1 = p1.fit(point_torch, thresh=0.01, maxIteration=1000)
t2 = time.perf_counter()
t3 = time.perf_counter()
a11 = p1.fit_parallel(point_torch, thresh=0.01, maxIteration=1000)
t4 = time.perf_counter()
t5 = time.perf_counter()
a2 = p2.fit(points, thresh=0.01, maxIteration=1000)
t6 = time.perf_counter()

print(f'time for pyransac3d: {t6-t5}')
print(f'time for torch: {t2-t1}')
print(f'time for torch parallel: {t4-t3}')

print(a1)
print(a2[0],torch.from_numpy(a2[1]))
print(a11)