15 #ifndef VISIONTRANSFER_RECONSTRUCT3D_H 16 #define VISIONTRANSFER_RECONSTRUCT3D_H 20 #include "visiontransfer/common.h" 21 #include "visiontransfer/imagepair.h" 70 float* createPointMap(
const unsigned short* dispMap,
int width,
int height,
71 int rowStride,
const float* q,
unsigned short minDisparity = 1);
85 float* createPointMap(
const ImagePair& imagePair,
unsigned short minDisparity = 1);
107 void projectSinglePoint(
int imageX,
int imageY,
unsigned short disparity,
const float* q,
108 float& pointX,
float& pointY,
float& pointZ);
135 void writePlyFile(
const char* file,
const unsigned short* dispMap,
137 int dispRowStride,
int imageRowStride,
const float* q,
138 double maxZ = std::numeric_limits<double>::max(),
139 bool binary =
false);
155 void writePlyFile(
const char* file,
const ImagePair& imagePair,
156 double maxZ = std::numeric_limits<double>::max(),
bool binary =
false);
158 #ifdef PCL_MAJOR_VERSION 174 inline pcl::PointCloud<pcl::PointXYZ>::Ptr createXYZCloud(
const ImagePair& imagePair,
175 const char* frameId,
unsigned short minDisparity = 0);
182 inline pcl::PointCloud<pcl::PointXYZI>::Ptr createXYZICloud(
const ImagePair& imagePair,
183 const char* frameId,
unsigned short minDisparity = 0);
190 inline pcl::PointCloud<pcl::PointXYZRGB>::Ptr createXYZRGBCloud(
const ImagePair& imagePair,
191 const char* frameId,
unsigned short minDisparity = 0);
203 #ifdef PCL_MAJOR_VERSION 205 template <
typename T>
206 typename pcl::PointCloud<T>::Ptr initPointCloud(
const ImagePair& imagePair,
const char* frameId);
212 #include "visiontransfer/reconstruct3d-pcl.h"
Transforms a disparity map into a set of 3D points.
ImageFormat
Image formats that can be transferred.
A set of two images, which are usually the left camera image and the disparity map.