diff --git a/modules/contrib/include/opencv2/contrib/retina.hpp b/modules/contrib/include/opencv2/contrib/retina.hpp index 13c8978840..8dac0c318a 100644 --- a/modules/contrib/include/opencv2/contrib/retina.hpp +++ b/modules/contrib/include/opencv2/contrib/retina.hpp @@ -288,6 +288,10 @@ public: */ void getMagno(std::valarray &retinaOutput_magno); + // original API level data accessors : get buffers addresses... + const std::valarray & getMagno() const; + const std::valarray & getParvo() const; + /** * activate color saturation as the final step of the color demultiplexing process * -> this saturation is a sigmoide function applied to each channel of the demultiplexed image. diff --git a/modules/contrib/src/retina.cpp b/modules/contrib/src/retina.cpp index 2f986f96ac..c86f2d8ed2 100644 --- a/modules/contrib/src/retina.cpp +++ b/modules/contrib/src/retina.cpp @@ -337,6 +337,9 @@ void Retina::getMagno(cv::Mat &retinaOutput_magno) // original API level data accessors : copy buffers if size matches void Retina::getMagno(std::valarray &magnoOutputBufferCopy){if (magnoOutputBufferCopy.size()==_retinaFilter->getMovingContours().size()) magnoOutputBufferCopy = _retinaFilter->getMovingContours();} void Retina::getParvo(std::valarray &parvoOutputBufferCopy){if (parvoOutputBufferCopy.size()==_retinaFilter->getContours().size()) parvoOutputBufferCopy = _retinaFilter->getContours();} +// original API level data accessors : get buffers addresses... +const std::valarray & Retina::getMagno() const {return _retinaFilter->getMovingContours();} +const std::valarray & Retina::getParvo() const {if (_retinaFilter->getColorMode())return _retinaFilter->getColorOutput(); /* implicite else */return _retinaFilter->getContours();} // private method called by constructirs void Retina::_init(const cv::Size inputSize, const bool colorMode, RETINA_COLORSAMPLINGMETHOD colorSamplingMethod, const bool useRetinaLogSampling, const double reductionFactor, const double samplingStrenght)