66 lines
2.3 KiB
C++
Executable File
66 lines
2.3 KiB
C++
Executable File
// ----------------------------------------------------------------------------
|
|
// - Open3D: www.open3d.org -
|
|
// ----------------------------------------------------------------------------
|
|
// Copyright (c) 2018-2023 www.open3d.org
|
|
// SPDX-License-Identifier: MIT
|
|
// ----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
namespace open3d {
|
|
namespace ml {
|
|
namespace contrib {
|
|
|
|
#ifdef BUILD_CUDA_MODULE
|
|
/// \param boxes_a (num_a, 5) float32.
|
|
/// \param boxes_b (num_b, 5) float32.
|
|
/// \param iou (num_a, num_b) float32, output iou values.
|
|
/// \param num_a Number of boxes in boxes_a.
|
|
/// \param num_b Number of boxes in boxes_b.
|
|
/// intersection over union.
|
|
void IoUBevCUDAKernel(const float *boxes_a,
|
|
const float *boxes_b,
|
|
float *iou,
|
|
int num_a,
|
|
int num_b);
|
|
|
|
/// \param boxes_a (num_a, 7) float32.
|
|
/// \param boxes_b (num_b, 7) float32.
|
|
/// \param iou (num_a, num_b) float32, output iou values.
|
|
/// \param num_a Number of boxes in boxes_a.
|
|
/// \param num_b Number of boxes in boxes_b.
|
|
void IoU3dCUDAKernel(const float *boxes_a,
|
|
const float *boxes_b,
|
|
float *iou,
|
|
int num_a,
|
|
int num_b);
|
|
|
|
#endif
|
|
|
|
/// \param boxes_a (num_a, 5) float32.
|
|
/// \param boxes_b (num_b, 5) float32.
|
|
/// \param iou (num_a, num_b) float32, output iou values.
|
|
/// \param num_a Number of boxes in boxes_a.
|
|
/// \param num_b Number of boxes in boxes_b.
|
|
/// intersection over union.
|
|
void IoUBevCPUKernel(const float *boxes_a,
|
|
const float *boxes_b,
|
|
float *iou,
|
|
int num_a,
|
|
int num_b);
|
|
|
|
/// \param boxes_a (num_a, 7) float32.
|
|
/// \param boxes_b (num_b, 7) float32.
|
|
/// \param iou (num_a, num_b) float32, output iou values.
|
|
/// \param num_a Number of boxes in boxes_a.
|
|
/// \param num_b Number of boxes in boxes_b.
|
|
void IoU3dCPUKernel(const float *boxes_a,
|
|
const float *boxes_b,
|
|
float *iou,
|
|
int num_a,
|
|
int num_b);
|
|
|
|
} // namespace contrib
|
|
} // namespace ml
|
|
} // namespace open3d
|