ReUseX  0.0.1
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
ReUseX::vision Namespace Reference

Namespaces

namespace  common
namespace  libtorch
namespace  osd
namespace  tensor_rt

Classes

class  BackendFactory
class  Dataloader
struct  IData
class  IDataset
class  IMLBackend
class  IModel

Enumerations

enum class  Backend {
  OpenCV , TensorRT , libTorch , DNN ,
  ONNXRuntime , OpenVINO , Unknown
}
enum class  Model { Yolo , Sam3 }

Functions

auto annotateRTABMap (const std::filesystem::path &dbPath, const std::filesystem::path &modelPath, bool isCuda) -> int
auto annotate (const std::filesystem::path &dbPath, const std::filesystem::path &modelPath) -> int
auto project (const std::filesystem::path &dbPath, CloudConstPtr cloud) -> CloudLPtr
 Project the labels stored in the database on tho the assebled point cloud.
float generate_scale (cv::Mat &image, const cv::Size &target_size, bool scale_up=false)
float letterbox (cv::Mat &input_image, cv::Mat &output_image, const cv::Size &target_size)
float cropbox (cv::Mat &input_image, cv::Mat &output_image, const cv::Size &target_size)
torch::Tensor xyxy_to_xywh (const torch::Tensor &x)
torch::Tensor xywh_to_xyxy (const torch::Tensor &x)
torch::Tensor nms (const torch::Tensor &bboces, const torch::Tensor &scores, float iou_threshold=0.45)
torch::Tensor non_max_suppression (torch::Tensor &predictions, float confThreshold=0.25, float iouThreshold=0.45, int maxDetections=300)
torch::Tensor xyxy2xywh (const torch::Tensor &x)
torch::Tensor xywh2xyxy (const torch::Tensor &x)

Variables

std::vector< std::string > Yolov8_className
 YOLO v8 class names for object detection.

Enumeration Type Documentation

◆ Backend

enum class ReUseX::vision::Backend
strong
Enumerator
OpenCV 
TensorRT 
libTorch 
DNN 
ONNXRuntime 
OpenVINO 
Unknown 

Definition at line 10 of file BackendFactory.hpp.

◆ Model

enum class ReUseX::vision::Model
strong
Enumerator
Yolo 
Sam3 

Definition at line 8 of file IMLBackend.hpp.

Function Documentation

◆ annotate()

auto ReUseX::vision::annotate ( const std::filesystem::path & dbPath,
const std::filesystem::path & modelPath ) -> int

◆ annotateRTABMap()

auto ReUseX::vision::annotateRTABMap ( const std::filesystem::path & dbPath,
const std::filesystem::path & modelPath,
bool isCuda ) -> int

◆ cropbox()

float ReUseX::vision::cropbox ( cv::Mat & input_image,
cv::Mat & output_image,
const cv::Size & target_size )

◆ generate_scale()

float ReUseX::vision::generate_scale ( cv::Mat & image,
const cv::Size & target_size,
bool scale_up = false )

◆ letterbox()

float ReUseX::vision::letterbox ( cv::Mat & input_image,
cv::Mat & output_image,
const cv::Size & target_size )

◆ nms()

torch::Tensor ReUseX::vision::nms ( const torch::Tensor & bboces,
const torch::Tensor & scores,
float iou_threshold = 0.45 )

◆ non_max_suppression()

torch::Tensor ReUseX::vision::non_max_suppression ( torch::Tensor & predictions,
float confThreshold = 0.25,
float iouThreshold = 0.45,
int maxDetections = 300 )

◆ project()

auto ReUseX::vision::project ( const std::filesystem::path & dbPath,
CloudConstPtr cloud ) -> CloudLPtr

Project the labels stored in the database on tho the assebled point cloud.

For each view in the database this constructs a croped point cloud, computes a z-buffer and the assigns the precomputed labels to the closses point in the point cloud.

◆ xywh2xyxy()

torch::Tensor ReUseX::vision::xywh2xyxy ( const torch::Tensor & x)
inline

Definition at line 36 of file utils.hpp.

References xywh_to_xyxy().

◆ xywh_to_xyxy()

torch::Tensor ReUseX::vision::xywh_to_xyxy ( const torch::Tensor & x)

Referenced by xywh2xyxy().

◆ xyxy2xywh()

torch::Tensor ReUseX::vision::xyxy2xywh ( const torch::Tensor & x)
inline

Definition at line 32 of file utils.hpp.

References xyxy_to_xywh().

◆ xyxy_to_xywh()

torch::Tensor ReUseX::vision::xyxy_to_xywh ( const torch::Tensor & x)

Referenced by xyxy2xywh().

Variable Documentation

◆ Yolov8_className

std::vector<std::string> ReUseX::vision::Yolov8_className
extern

YOLO v8 class names for object detection.

Contains the list of class names that can be detected by YOLO v8 model.