mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-04 08:47:45 +08:00
merged master->ros2
This commit is contained in:
@@ -1979,7 +1979,7 @@ bool convertStereoMsg(
|
|||||||
if(leftImageMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) == 0 ||
|
if(leftImageMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) == 0 ||
|
||||||
leftImageMsg->encoding.compare(sensor_msgs::image_encodings::MONO8) == 0)
|
leftImageMsg->encoding.compare(sensor_msgs::image_encodings::MONO8) == 0)
|
||||||
{
|
{
|
||||||
left = leftImageMsg->image;
|
left = leftImageMsg->image.clone();
|
||||||
}
|
}
|
||||||
else if(leftImageMsg->encoding.compare(sensor_msgs::image_encodings::MONO16) == 0)
|
else if(leftImageMsg->encoding.compare(sensor_msgs::image_encodings::MONO16) == 0)
|
||||||
{
|
{
|
||||||
@@ -1992,7 +1992,7 @@ bool convertStereoMsg(
|
|||||||
if(rightImageMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) == 0 ||
|
if(rightImageMsg->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) == 0 ||
|
||||||
rightImageMsg->encoding.compare(sensor_msgs::image_encodings::MONO8) == 0)
|
rightImageMsg->encoding.compare(sensor_msgs::image_encodings::MONO8) == 0)
|
||||||
{
|
{
|
||||||
right = rightImageMsg->image;
|
right = rightImageMsg->image.clone();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -396,32 +396,39 @@ void StereoOdometry::callbackRGBD(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
cv_bridge::CvImageConstPtr ptrImageLeft = imageRectLeft;
|
cv::Mat left;
|
||||||
if(imageRectLeft->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) !=0 &&
|
if(imageRectLeft->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) !=0 &&
|
||||||
imageRectLeft->encoding.compare(sensor_msgs::image_encodings::MONO8) != 0)
|
imageRectLeft->encoding.compare(sensor_msgs::image_encodings::MONO8) != 0)
|
||||||
{
|
{
|
||||||
if(keepColor_ && imageRectLeft->encoding.compare(sensor_msgs::image_encodings::MONO16) != 0)
|
if(keepColor_ && imageRectLeft->encoding.compare(sensor_msgs::image_encodings::MONO16) != 0)
|
||||||
{
|
{
|
||||||
ptrImageLeft = cv_bridge::cvtColor(imageRectLeft, "bgr8");
|
left = cv_bridge::cvtColor(imageRectLeft, "bgr8")->image;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ptrImageLeft = cv_bridge::cvtColor(imageRectLeft, "mono8");
|
left = cv_bridge::cvtColor(imageRectLeft, "mono8")->image;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cv_bridge::CvImageConstPtr ptrImageRight = imageRectRight;
|
else
|
||||||
|
{
|
||||||
|
left = imageRectLeft->image.clone();
|
||||||
|
}
|
||||||
|
cv::Mat right;
|
||||||
if(imageRectLeft->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) !=0 &&
|
if(imageRectLeft->encoding.compare(sensor_msgs::image_encodings::TYPE_8UC1) !=0 &&
|
||||||
imageRectLeft->encoding.compare(sensor_msgs::image_encodings::MONO8) != 0)
|
imageRectLeft->encoding.compare(sensor_msgs::image_encodings::MONO8) != 0)
|
||||||
{
|
{
|
||||||
ptrImageRight = cv_bridge::cvtColor(imageRectRight, "mono8");
|
right = cv_bridge::cvtColor(imageRectRight, "mono8")->image;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
right = imageRectRight->image.clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
UTimer stepTimer;
|
|
||||||
//
|
//
|
||||||
UDEBUG("localTransform = %s", localTransform.prettyPrint().c_str());
|
UDEBUG("localTransform = %s", localTransform.prettyPrint().c_str());
|
||||||
rtabmap::SensorData data(
|
rtabmap::SensorData data(
|
||||||
ptrImageLeft->image,
|
left,
|
||||||
ptrImageRight->image,
|
right,
|
||||||
stereoModel,
|
stereoModel,
|
||||||
0,
|
0,
|
||||||
rtabmap_ros::timestampFromROS(stamp));
|
rtabmap_ros::timestampFromROS(stamp));
|
||||||
|
|||||||
Reference in New Issue
Block a user