ch09——9.3.2从深度图像中提取边界
1.代码
#include <iostream>
#include <boost/thread/thread.hpp>//多线程
#include <pcl/range_image/range_image.h>
#include <pcl/io/pcd_io.h>
#include <pcl/visualization/range_image_visualizer.h> //深度图可视化
#include <pcl/visualization/pcl_visualizer.h>
#include <pcl/features/range_image_border_extractor.h>
using namespace std;
using namespace pcl;
typedef pcl::PointXYZ PointType;
float angular_resolution = 0.5f;//角分辨率(单位弧度)
pcl::RangeImage::CoordinateFrame coordinate_frame = pcl::RangeImage::CAMERA_FRAME;//深度图像遵循的坐标系统
int main() {
pcl::PointCloud<PointType>::Ptr point_cloud_ptr(new pcl::PointCloud<PointType>);
pcl::PointCloud<PointType> & point_cloud = *point_cloud_ptr;
Eigen::Affine3f scene_sensor_pose(Eigen::Affine3f::Identity());
scene_sensor_pose = Eigen::Affine3f(Eigen::Translation3f(point_cloud.sensor_origin_[0],point_cloud.sensor_origin_[1], point_cloud.sensor_origin_[2]))
*Eigen::Affine3f(point_cloud.sensor_orientation_);
//生成矩形
for (float x = -0.5f