diff --git a/include/aidge/backend/opencv/stimuli/StimulusImpl_opencv_imread.hpp b/include/aidge/backend/opencv/stimuli/StimulusImpl_opencv_imread.hpp index 3db56da874507e738d3a2b5987306c1ca96b304c..ab5562143f6a27472ef8ae83acb43eb4ee5b011e 100644 --- a/include/aidge/backend/opencv/stimuli/StimulusImpl_opencv_imread.hpp +++ b/include/aidge/backend/opencv/stimuli/StimulusImpl_opencv_imread.hpp @@ -28,12 +28,12 @@ class StimulusImpl_opencv_imread : public StimulusImpl { private: /// Stimulus data path const std::string mDataPath; - const int mColorFlag; + const int mReadMode; public: - StimulusImpl_opencv_imread(const std::string& dataPath="", std::int32_t colorFlag=cv::IMREAD_COLOR) + StimulusImpl_opencv_imread(const std::string& dataPath="", int readMode=cv::IMREAD_UNCHANGED) : mDataPath(dataPath), - mColorFlag(colorFlag) + mReadMode(readMode) { // ctor } diff --git a/src/stimuli/StimulusImpl_opencv_imread.cpp b/src/stimuli/StimulusImpl_opencv_imread.cpp index 1872c0b0297ae084d241fa0655979a6ce6b56364..ff0b1dac8cde7617a75a39369477ebcba7f214c6 100644 --- a/src/stimuli/StimulusImpl_opencv_imread.cpp +++ b/src/stimuli/StimulusImpl_opencv_imread.cpp @@ -23,7 +23,7 @@ Aidge::StimulusImpl_opencv_imread::~StimulusImpl_opencv_imread() noexcept = default; std::shared_ptr<Aidge::Tensor> Aidge::StimulusImpl_opencv_imread::load() const { - cv::Mat cvImg = cv::imread(mDataPath, mColorFlag); + cv::Mat cvImg = cv::imread(mDataPath, mReadMode); if (cvImg.empty()) { throw std::runtime_error("Could not open images file: " + mDataPath); } diff --git a/unit_tests/Test_Stimulus.cpp b/unit_tests/Test_Stimulus.cpp index 41bf3181dead632099247acfcb4bd68453a44aba..7ad5613cdaece960c08ee2d4915bf1f97b6d65f5 100644 --- a/unit_tests/Test_Stimulus.cpp +++ b/unit_tests/Test_Stimulus.cpp @@ -39,7 +39,7 @@ TEST_CASE("Stimulus creation", "[Stimulus][OpenCV]") { // Access the cv::Mat with the tensor TensorImpl_opencv_* tImpl_opencv = dynamic_cast<TensorImpl_opencv_*>(tensor_load->getImpl().get()); - REQUIRE(tImpl_opencv->data().size() == true_mat.size()); + REQUIRE((tImpl_opencv->data().total() * tImpl_opencv->data().channels()) == (true_mat.total() * true_mat.channels())); REQUIRE(cv::countNonZero(tImpl_opencv->data() != true_mat) == 0); @@ -50,7 +50,7 @@ TEST_CASE("Stimulus creation", "[Stimulus][OpenCV]") { // Access the cv::Mat with the tensor TensorImpl_opencv_* tImpl_opencv_2 = dynamic_cast<TensorImpl_opencv_*>(tensor_load_2->getImpl().get()); - REQUIRE(tImpl_opencv_2->data().size() == true_mat.size()); + REQUIRE((tImpl_opencv_2->data().total() * tImpl_opencv_2->data().channels()) == (true_mat.total() * true_mat.channels())); REQUIRE(cv::countNonZero(tImpl_opencv_2->data() != true_mat) == 0); } diff --git a/unit_tests/Test_StimulusImpl_opencv_imread.cpp b/unit_tests/Test_StimulusImpl_opencv_imread.cpp index 3f0dff7ae6597b860044766b58b0510c6aaf7cfe..d84e65ee8a32d06067428ba76eb5eb0aaccb0296 100644 --- a/unit_tests/Test_StimulusImpl_opencv_imread.cpp +++ b/unit_tests/Test_StimulusImpl_opencv_imread.cpp @@ -38,7 +38,7 @@ TEST_CASE("StimulusImpl_opencv_imread creation", "[StimulusImpl_opencv_imread][O // Access the cv::Mat with the tensor TensorImpl_opencv_* tImpl_opencv = dynamic_cast<TensorImpl_opencv_*>(tensor_load->getImpl().get()); - REQUIRE(tImpl_opencv->data().size() == true_mat.size()); + REQUIRE((tImpl_opencv->data().total() * tImpl_opencv->data().channels()) == (true_mat.total() * true_mat.channels())); REQUIRE(cv::countNonZero(tImpl_opencv->data() != true_mat) == 0); }