GithubHelp home page GithubHelp logo

huangcongqing / plane_fit_ground_filter Goto Github PK

View Code? Open in Web Editor NEW
107.0 5.0 21.0 30 KB

点云分割论文2017 Fast segmentation of 3d point clouds: A paradigm on lidar data for autonomous vehicle applications

License: BSD 3-Clause "New" or "Revised" License

CMake 3.95% C++ 96.05%
segmentation 3d-segmentation ground-segmentation cloud-point pcl ros-melodic

plane_fit_ground_filter's Introduction

plane_fit_ground_filter

点云分割论文2017 Fast segmentation of 3d point clouds: A paradigm on lidar data for autonomous vehicle applications

@双愚 , 若fork或star请注明来源

@inproceedings{Zermas2017Fast,
  title={Fast segmentation of 3D point clouds: A paradigm on LiDAR data for autonomous vehicle applications},
  author={Zermas, Dimitris and Izzat, Izzat and Papanikolopoulos, Nikolaos},
  booktitle={IEEE International Conference on Robotics and Automation},
  year={2017},
}

相关算法(带中文详细注解):https://github.com/HuangCongQing/linefit_ground_segmentation_details

Introduction

笔记:https://t.zsxq.com/0fqSUPOmD

Dataset bag

数据集已处理好,放在百度网盘上,需要自己下载

编译

将本仓库下的2个文件夹plane_fit_ground_filter&Run_based_segmentation移动到catkin_wp/src下,然后执行下面操作

// 创建环境变量 src中运行
mkdir -p catkin_wp/src
cd catkin_wp/src
catkin_init_workspace

// 编译(需要回到工作空间catkin_wp)
cd ..
catkin_make  // 产生build和devel文件夹


//设置环境变量,找到src里的功能包(每个新的shell窗口都要执行以下source devel/setup.bash)
source devel/setup.bash  // 不同shell,不同哦.sh  .zsh           通过设置gedit ~/.zshrc,不用每次都source

详情可参考:https://www.yuque.com/docs/share/e59d5c91-b46d-426a-9957-cd262f5fc241?# 《09.创建工作空间与功能包※※※》

plane_fit_ground_filter

参考:https://github.com/AbangLZU/plane_fit_ground_filter

修改配置文件

举例:修改输入topic,需要修改两处

cd plane_fit_ground_filter/src/plane_ground_filter_core.cpp
# 16行  需要修改 "/kitti/velo/pointcloud"
sub_point_cloud_ = nh.subscribe("/kitti/velo/pointcloud", 10, &PlaneGroundFilter::point_cb, this)

cd plane_fit_ground_filter/plane_ground_filter.launch

#第2行 修改 value="/kitti/velo/pointcloud"  修改你的雷达点云话题
<arg name="input_topic" default="/kitti/velo/pointcloud" />     <!-- 输入topic   原始 default="/velodyne_points"    OR /kitti/velo/pointcloud-->   

Run(Terminal)

# Terminal1
roscore

# Terminal2  注意修改bag路径
rosbag play ~/data/KittiRawdata/2011_09_26_drive_0005_sync/kitti_2011_09_26_drive_0005_synced.bag --loop

# Terminal3
roslaunch plane_ground_filter plane_ground_filter.launch

Result

result

Run_based_segmentation

参考:https://github.com/VincentCheungM/Run_based_segmentation

Requirement

安装velodyne_pointcloud 官网链接:http://wiki.ros.org/velodyne/Tutorials/Getting%20Started%20with%20the%20Velodyne%20VLP16

# melodic
sudo apt-get install ros-melodic-velodyne
# kinetic
sudo apt-get install ros-kinetic-velodyne

修改输入Topic

Run_based_segmentation/nodes/ground_filter/groundplanfit.cpp

    node_handle_.param<std::string>("point_topic", point_topic_, " /kitti/velo/pointcloud");  // 输入topoc   /velodyne_points   OR  /kitti/velo/pointcloud

修改配置文件

举例:修改输入topic

cd Run_based_segmentation/nodes/ground_filter/groundplanfit.cpp

#第129行 修改  node_handle_.param<std::string>("point_topic", point_topic_, "/kitti/velo/pointcloud");  
node_handle_.param<std::string>("point_topic", point_topic_, "/kitti/velo/pointcloud");  // 输入topoc   /velodyne_points   OR  /kitti/velo/pointcloud

Run(Terminal)

catkin_make # 编译

# Terminal1  注意修改bag路径
rosrun points_preprocessor_usi groundplanfit

# Terminal2
rosrun points_preprocessor_usi scanlinerun

And cluster point cloud will be published as cluster with different label.

Result

图片

License

Copyright (c) 双愚. All rights reserved.

Licensed under the BSD 3-Clause License License.

plane_fit_ground_filter's People

Contributors

huangcongqing avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

plane_fit_ground_filter's Issues

added occupancy grid publisher

Hi, great work you did!
I have added an occupancy grid publisher to your 'plane_fit_ground_filter' (useful for 2D robot navigation stack, cost map etc.) as attached.
It publishes 2D grid maps for the 'non-ground' point clouds.
Regards,
Alexander

plane_fit_ground_filter.zip

Screenshot from 2021-06-20 15-05-09
Screenshot from 2021-06-20 15-36-50

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.