An implementation on "Curved-Voxel Clustering for Accurate Segmentation of 3D LiDAR Point Clouds with Real-Time Performance"

Overview

Lidar-Segementation

build passing velodyne_HDL_64 compliant

An implementation on "Curved-Voxel Clustering for Accurate Segmentation of 3D LiDAR Point Clouds with Real-Time Performance" from IROS 2019

Paper Link [link 1][link 2]

Update on 20210825

  1. Add a demo code
  2. Fix some problem

This file is just a function file, you may need to change a little bit to fit your own code

How to use:

 vector
   
     papr;
 calculateAPR(*cloud_gr,papr);
 unordered_map
    
      hvoxel;
 build_hash_table(papr,hvoxel);
 vector
     
       cluster_index = CVC(hvoxel,papr);
 vector
      
        cluster_id;
 most_frequent_value(cluster_index, cluster_id);

      
     
    
   

The output is the same as https://github.com/FloatingObjectSegmentation/CppRBNN

For the demo code:

 mkdir build
 cd build
 cmake ..
 make -j

Reference

  1. Part of this code references to the https://github.com/FloatingObjectSegmentation/CppRBNN
  2. Ground Remocve: https://github.com/LimHyungTae/patchwork

Result:

Image text

You might also like...
Implementation of Geometric Vector Perceptron, a simple circuit for 3d rotation equivariance for learning over large biomolecules, in Pytorch. Idea proposed and accepted at ICLR 2021
Implementation of Geometric Vector Perceptron, a simple circuit for 3d rotation equivariance for learning over large biomolecules, in Pytorch. Idea proposed and accepted at ICLR 2021

Geometric Vector Perceptron Implementation of Geometric Vector Perceptron, a simple circuit with 3d rotation equivariance for learning over large biom

Official implementation of AAAI-21 paper
Official implementation of AAAI-21 paper "Label Confusion Learning to Enhance Text Classification Models"

Description: This is the official implementation of our AAAI-21 accepted paper Label Confusion Learning to Enhance Text Classification Models. The str

Official PyTorch implementation for paper Context Matters: Graph-based Self-supervised Representation Learning for Medical Images
Official PyTorch implementation for paper Context Matters: Graph-based Self-supervised Representation Learning for Medical Images

Context Matters: Graph-based Self-supervised Representation Learning for Medical Images Official PyTorch implementation for paper Context Matters: Gra

PyTorch implementation of
PyTorch implementation of "Conformer: Convolution-augmented Transformer for Speech Recognition" (INTERSPEECH 2020)

PyTorch implementation of Conformer: Convolution-augmented Transformer for Speech Recognition. Transformer models are good at capturing content-based

An essential implementation of BYOL in PyTorch + PyTorch Lightning
An essential implementation of BYOL in PyTorch + PyTorch Lightning

Essential BYOL A simple and complete implementation of Bootstrap your own latent: A new approach to self-supervised Learning in PyTorch + PyTorch Ligh

The official implementation of NeMo: Neural Mesh Models of Contrastive Features for Robust 3D Pose Estimation [ICLR-2021].  https://arxiv.org/pdf/2101.12378.pdf
The official implementation of NeMo: Neural Mesh Models of Contrastive Features for Robust 3D Pose Estimation [ICLR-2021]. https://arxiv.org/pdf/2101.12378.pdf

NeMo: Neural Mesh Models of Contrastive Features for Robust 3D Pose Estimation [ICLR-2021] Release Notes The offical PyTorch implementation of NeMo, p

A PyTorch re-implementation of the paper 'Exploring Simple Siamese Representation Learning'. Reproduced the 67.8% Top1 Acc on ImageNet.

Exploring simple siamese representation learning This is a PyTorch re-implementation of the SimSiam paper on ImageNet dataset. The results match that

PyTorch implementation of
PyTorch implementation of "A Full-Band and Sub-Band Fusion Model for Real-Time Single-Channel Speech Enhancement."

FullSubNet This Git repository for the official PyTorch implementation of "A Full-Band and Sub-Band Fusion Model for Real-Time Single-Channel Speech E

Pytorch implementation of PCT: Point Cloud Transformer

PCT: Point Cloud Transformer This is a Pytorch implementation of PCT: Point Cloud Transformer.

Comments
  • parameters question?

    parameters question?

    你好, 能否请教下你CVC这篇文章中的相关参数选择问题? 1.deltaR, deltaP, width的选择实际是怎么考虑的呢?

        length = round((maxrange - minrange)/deltaR);
        width = 301; //?
        height = round((maxazimuth - minazimuth)/deltaA);
    

    2.求取最大的三个索引的目的在于哪?

        auto maxPosition = max_element(ai.begin(), ai.end());
        auto maxPosition1 = max_element(ri.begin(), ri.end());
        auto maxPosition2 = max_element(pi.begin(), pi.end());
    
    1. 求取azimuth_index有两种不同方法: // int azimuth_index = round((vapr[i].azimuth+fabs(minazimuth))*180/PI/deltaA); // int azimuth_index = round(((vapr[i].azimuth-minazimuth)*180/PI)/deltaA);

    谢谢回复!

    opened by crankler 4
  • License for reuse of code

    License for reuse of code

    First of all , I would like to express appreciation and admire to your work in the GitHub repository towards your implementation of some of the state of the art published papers contributing to the perception field .

    i wanted kindly inquire about the availability of a license for the open source repo “Lidar Segmentation” , for example an "MIT " license ? . I was mostly interested in the rights to use the implementation part regarding clustering approach from “Curved-Voxel Clustering for Accurate Segmentation of 3D LiDAR Point Clouds with Real-Time Performance'

    It would gladly be helpful to have a license for this project as I am working on R&D project and would like to appropriately know the rights to use your published software code.

    opened by Omar-Tag 1
  • How can I process demo?

    How can I process demo?

    Hello! Thanks for sharing your great work I want to take a demo of your program after making, but I don't know how to do. Can you help me the process to demo? Thanks a lot in advance

    opened by minho8849 0
  • 你好,源代码CVC.cpp    86行和88行 是不是写反了

    你好,源代码CVC.cpp 86行和88行 是不是写反了

    按照曲率体的定义我感觉应该是相反的 par.polar_angle = Polar_angle_cal(cloud_IN.points[i].x, cloud_IN.points[i].y); par.azimuth =(float) atan2(cloud_IN.points[i].z,par.range);

    opened by HMX2013 3
Owner
Wangxu1996
Wangxu1996
Numenta Platform for Intelligent Computing is an implementation of Hierarchical Temporal Memory (HTM), a theory of intelligence based strictly on the neuroscience of the neocortex.

NuPIC Numenta Platform for Intelligent Computing The Numenta Platform for Intelligent Computing (NuPIC) is a machine intelligence platform that implem

Numenta 6.3k Dec 30, 2022
PyTorch implementation of neural style transfer algorithm

neural-style-pt This is a PyTorch implementation of the paper A Neural Algorithm of Artistic Style by Leon A. Gatys, Alexander S. Ecker, and Matthias

null 770 Jan 2, 2023
PyTorch implementation of DeepDream algorithm

neural-dream This is a PyTorch implementation of DeepDream. The code is based on neural-style-pt. Here we DeepDream a photograph of the Golden Gate Br

null 121 Nov 5, 2022
The project is an official implementation of our CVPR2019 paper "Deep High-Resolution Representation Learning for Human Pose Estimation"

Deep High-Resolution Representation Learning for Human Pose Estimation (CVPR 2019) News [2020/07/05] A very nice blog from Towards Data Science introd

Leo Xiao 3.9k Jan 5, 2023
Image-to-Image Translation with Conditional Adversarial Networks (Pix2pix) implementation in keras

pix2pix-keras Pix2pix implementation in keras. Original paper: Image-to-Image Translation with Conditional Adversarial Networks (pix2pix) Paper Author

William Falcon 141 Dec 30, 2022
Python implementation of cover trees, near-drop-in replacement for scipy.spatial.kdtree

This is a Python implementation of cover trees, a data structure for finding nearest neighbors in a general metric space (e.g., a 3D box with periodic

Patrick Varilly 28 Nov 25, 2022
Home repository for the Regularized Greedy Forest (RGF) library. It includes original implementation from the paper and multithreaded one written in C++, along with various language-specific wrappers.

Regularized Greedy Forest Regularized Greedy Forest (RGF) is a tree ensemble machine learning method described in this paper. RGF can deliver better r

RGF-team 364 Dec 28, 2022
Implementation of Restricted Boltzmann Machine (RBM) and its variants in Tensorflow

xRBM Library Implementation of Restricted Boltzmann Machine (RBM) and its variants in Tensorflow Installation Using pip: pip install xrbm Examples Tut

Omid Alemi 55 Dec 29, 2022
A fast Evolution Strategy implementation in Python

Evostra: Evolution Strategy for Python Evolution Strategy (ES) is an optimization technique based on ideas of adaptation and evolution. You can learn

Mika 251 Dec 8, 2022
🌳 A Python-inspired implementation of the Optimum-Path Forest classifier.

OPFython: A Python-Inspired Optimum-Path Forest Classifier Welcome to OPFython. Note that this implementation relies purely on the standard LibOPF. Th

Gustavo Rosa 30 Jan 4, 2023