MCPcopy Create free account
hub / github.com/PointCloudLibrary/pcl / TEST

Function TEST

test/gpu/octree/test_bfrs_gpu.cpp:61–100  ·  view source on GitHub ↗

TEST (PCL_GPU, DISABLED_bruteForceRadiusSeachGPU)

Source from the content-addressed store, hash-verified

59
60//TEST (PCL_GPU, DISABLED_bruteForceRadiusSeachGPU)
61TEST (PCL_GPU, bruteForceRadiusSeachGPU)
62{
63 DataGenerator data;
64 data.data_size = 871000;
65 data.tests_num = 100;
66 data.cube_size = 1024.f;
67 data.max_radius = data.cube_size/15.f;
68 data.shared_radius = data.cube_size/20.f;
69 data.printParams();
70
71 //generate
72 data();
73
74 // brute force radius search
75 data.bruteForceSearch();
76
77 //prepare gpu cloud
78 pcl::gpu::Octree::PointCloud cloud_device;
79 cloud_device.upload(data.points);
80
81 pcl::gpu::DeviceArray<int> results_device, buffer(cloud_device.size());
82
83 std::vector<int> results_host;
84 std::vector<std::size_t> sizes;
85 for(std::size_t i = 0; i < data.tests_num; ++i)
86 {
87 pcl::gpu::bruteForceRadiusSearchGPU(cloud_device, data.queries[i], data.radiuses[i], results_device, buffer);
88
89 results_device.download(results_host);
90 std::sort(results_host.begin(), results_host.end());
91
92 ASSERT_EQ ( (results_host == data.bfresutls[i]), true );
93 sizes.push_back(results_device.size());
94 }
95
96 float avg_size = std::accumulate(sizes.begin(), sizes.end(), (std::size_t)0) * (1.f/sizes.size());;
97
98 std::cout << "avg_result_size = " << avg_size << std::endl;
99 ASSERT_GT(avg_size, 5);
100}
101
102/* ---[ */
103int

Callers

nothing calls this directly

Calls 9

sortFunction · 0.85
printParamsMethod · 0.80
bruteForceSearchMethod · 0.80
uploadMethod · 0.45
sizeMethod · 0.45
downloadMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected