cloudRGBFromSensorData(): just return empty cloud if inputs are not valid (don't assert)

This commit is contained in:
matlabbe
2017-06-01 13:09:34 -04:00
parent f92025e120
commit c8357be4d0

View File

@@ -990,12 +990,9 @@ pcl::PointCloud<pcl::PointXYZRGB>::Ptr RTABMAP_EXP cloudRGBFromSensorData(
decimation = 1; decimation = 1;
} }
UASSERT(!sensorData.imageRaw().empty());
UASSERT((!sensorData.depthRaw().empty() && sensorData.cameraModels().size()) ||
(!sensorData.rightRaw().empty() && sensorData.stereoCameraModel().isValidForProjection()));
pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGB>); pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGB>);
if(!sensorData.depthRaw().empty() && sensorData.cameraModels().size()) if(!sensorData.imageRaw().empty() && !sensorData.depthRaw().empty() && sensorData.cameraModels().size())
{ {
//depth //depth
UDEBUG(""); UDEBUG("");
@@ -1090,7 +1087,7 @@ pcl::PointCloud<pcl::PointXYZRGB>::Ptr RTABMAP_EXP cloudRGBFromSensorData(
} }
} }
} }
else if(!sensorData.rightRaw().empty() && sensorData.stereoCameraModel().isValidForProjection()) else if(!sensorData.imageRaw().empty() && !sensorData.rightRaw().empty() && sensorData.stereoCameraModel().isValidForProjection())
{ {
//stereo //stereo
UDEBUG(""); UDEBUG("");