mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-11 03:59:53 +08:00
Added mono16 format for accepted depth input
This commit is contained in:
+3
-2
@@ -690,9 +690,10 @@ void CoreWrapper::commonDepthCallback(
|
|||||||
imageMsg->encoding.compare(sensor_msgs::image_encodings::BGR8) == 0 ||
|
imageMsg->encoding.compare(sensor_msgs::image_encodings::BGR8) == 0 ||
|
||||||
imageMsg->encoding.compare(sensor_msgs::image_encodings::RGB8) == 0) ||
|
imageMsg->encoding.compare(sensor_msgs::image_encodings::RGB8) == 0) ||
|
||||||
!(depthMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1) == 0 ||
|
!(depthMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1) == 0 ||
|
||||||
depthMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1) == 0))
|
depthMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1) == 0 ||
|
||||||
|
depthMsg->encoding.compare(sensor_msgs::image_encodings::MONO16) == 0))
|
||||||
{
|
{
|
||||||
ROS_ERROR("Input type must be image=mono8,mono16,rgb8,bgr8 and image_depth=32FC1,16UC1");
|
ROS_ERROR("Input type must be image=mono8,mono16,rgb8,bgr8 and image_depth=32FC1,16UC1,mono16");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -98,9 +98,10 @@ public:
|
|||||||
image->encoding.compare(sensor_msgs::image_encodings::BGR8) == 0 ||
|
image->encoding.compare(sensor_msgs::image_encodings::BGR8) == 0 ||
|
||||||
image->encoding.compare(sensor_msgs::image_encodings::RGB8) == 0) ||
|
image->encoding.compare(sensor_msgs::image_encodings::RGB8) == 0) ||
|
||||||
!(depth->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1)==0 ||
|
!(depth->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1)==0 ||
|
||||||
depth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)==0))
|
depth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)==0 ||
|
||||||
|
depth->encoding.compare(sensor_msgs::image_encodings::MONO16)==0))
|
||||||
{
|
{
|
||||||
ROS_ERROR("Input type must be image=mono8,mono16,rgb8,bgr8 (mono8 recommended) and image_depth=16UC1");
|
ROS_ERROR("Input type must be image=mono8,mono16,rgb8,bgr8 (mono8 recommended) and image_depth=16UC1,32FC1,mono16");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if(depth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)==0)
|
else if(depth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)==0)
|
||||||
@@ -108,7 +109,7 @@ public:
|
|||||||
static bool warned = false;
|
static bool warned = false;
|
||||||
if(!warned)
|
if(!warned)
|
||||||
{
|
{
|
||||||
ROS_WARN("Input depth type is 32FC1, please use type 16UC1 for depth. The depth images "
|
ROS_WARN("Input depth type is 32FC1, please use type 16UC1 or mono16 for depth. The depth images "
|
||||||
"will be processed anyway but with a conversion. This warning is only be printed once...");
|
"will be processed anyway but with a conversion. This warning is only be printed once...");
|
||||||
warned = true;
|
warned = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -136,9 +136,10 @@ private:
|
|||||||
const sensor_msgs::CameraInfoConstPtr& cameraInfo)
|
const sensor_msgs::CameraInfoConstPtr& cameraInfo)
|
||||||
{
|
{
|
||||||
if(depth->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1)!=0 &&
|
if(depth->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1)!=0 &&
|
||||||
depth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)!=0)
|
depth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)!=0 &&
|
||||||
|
depth->encoding.compare(sensor_msgs::image_encodings::MONO16)!=0)
|
||||||
{
|
{
|
||||||
ROS_ERROR("Input type depth=32FC1,16UC1");
|
ROS_ERROR("Input type depth=32FC1,16UC1,MONO16");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -159,10 +159,11 @@ private:
|
|||||||
image->encoding.compare(sensor_msgs::image_encodings::MONO16) ==0 ||
|
image->encoding.compare(sensor_msgs::image_encodings::MONO16) ==0 ||
|
||||||
image->encoding.compare(sensor_msgs::image_encodings::BGR8) == 0 ||
|
image->encoding.compare(sensor_msgs::image_encodings::BGR8) == 0 ||
|
||||||
image->encoding.compare(sensor_msgs::image_encodings::RGB8) == 0) &&
|
image->encoding.compare(sensor_msgs::image_encodings::RGB8) == 0) &&
|
||||||
(imageDepth->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1)!=0 ||
|
!(imageDepth->encoding.compare(sensor_msgs::image_encodings::TYPE_16UC1)==0 ||
|
||||||
imageDepth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)!=0))
|
imageDepth->encoding.compare(sensor_msgs::image_encodings::TYPE_32FC1)==0 ||
|
||||||
|
imageDepth->encoding.compare(sensor_msgs::image_encodings::MONO16)==0))
|
||||||
{
|
{
|
||||||
ROS_ERROR("Input type must be image=mono8,mono16,rgb8,bgr8 and image_depth=32FC1,16UC1");
|
ROS_ERROR("Input type must be image=mono8,mono16,rgb8,bgr8 and image_depth=32FC1,16UC1,mono16");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user