From 5e41def3f3dcb3d9785cc7c4bcd83fe266b3ecc8 Mon Sep 17 00:00:00 2001 From: Fabian Peller-Konrad <fabian.peller-konrad@kit.edu> Date: Tue, 1 Mar 2022 17:26:19 +0100 Subject: [PATCH] encode images correctly --- .../armem/server/ltm/base/converter/image/png/PngConverter.cpp | 2 ++ .../libraries/armem_objects/server/instance/Segment.cpp | 1 + 2 files changed, 3 insertions(+) diff --git a/source/RobotAPI/libraries/armem/server/ltm/base/converter/image/png/PngConverter.cpp b/source/RobotAPI/libraries/armem/server/ltm/base/converter/image/png/PngConverter.cpp index f2ab4d8db..24fc8be1f 100644 --- a/source/RobotAPI/libraries/armem/server/ltm/base/converter/image/png/PngConverter.cpp +++ b/source/RobotAPI/libraries/armem/server/ltm/base/converter/image/png/PngConverter.cpp @@ -15,6 +15,7 @@ namespace armarx::armem::server::ltm::converter::image ARMARX_CHECK_NOT_NULL(data); auto img = aron::converter::AronOpenCVConverter::ConvertToMat(data); + cv::cvtColor(img, img, CV_RGB2BGR); std::vector<unsigned char> buffer; cv::imencode(".png", img, buffer); return buffer; @@ -23,6 +24,7 @@ namespace armarx::armem::server::ltm::converter::image aron::data::NDArrayPtr PngConverter::_convert(const std::vector<unsigned char>& data) { cv::Mat img = cv::imdecode(data, cv::IMREAD_COLOR); + cv::cvtColor(img, img, CV_BGR2RGB); return aron::converter::AronOpenCVConverter::ConvertFromMat(img); } } diff --git a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp index 0dbe6db72..351d0f5ac 100644 --- a/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp +++ b/source/RobotAPI/libraries/armem_objects/server/instance/Segment.cpp @@ -975,6 +975,7 @@ namespace armarx::armem::server::obj::instance std::filesystem::path filename = path->filename(); filename.replace_extension(); // Removes extension + // The check seems useless? if (lockMemory) { commitSceneSnapshot(snapshot.value(), filename.string()); -- GitLab