mirror of
https://github.com/opencv/opencv.git
synced 2025-06-07 17:44:04 +08:00
core: fix builds with eigen helper header
This commit is contained in:
parent
9fef09fe89
commit
74020a084b
@ -45,9 +45,14 @@
|
|||||||
#ifndef OPENCV_CORE_EIGEN_HPP
|
#ifndef OPENCV_CORE_EIGEN_HPP
|
||||||
#define OPENCV_CORE_EIGEN_HPP
|
#define OPENCV_CORE_EIGEN_HPP
|
||||||
|
|
||||||
|
#ifndef EIGEN_WORLD_VERSION
|
||||||
|
#error "Wrong usage of OpenCV's Eigen utility header. Include Eigen's headers first. See https://github.com/opencv/opencv/issues/17366"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "opencv2/core.hpp"
|
#include "opencv2/core.hpp"
|
||||||
|
|
||||||
#if EIGEN_WORLD_VERSION == 3 && EIGEN_MAJOR_VERSION >= 3
|
#if EIGEN_WORLD_VERSION == 3 && EIGEN_MAJOR_VERSION >= 3 \
|
||||||
|
&& defined(CV_CXX11) && defined(CV_CXX_STD_ARRAY)
|
||||||
#include <unsupported/Eigen/CXX11/Tensor>
|
#include <unsupported/Eigen/CXX11/Tensor>
|
||||||
#define OPENCV_EIGEN_TENSOR_SUPPORT
|
#define OPENCV_EIGEN_TENSOR_SUPPORT
|
||||||
#endif // EIGEN_WORLD_VERSION == 3 && EIGEN_MAJOR_VERSION >= 3
|
#endif // EIGEN_WORLD_VERSION == 3 && EIGEN_MAJOR_VERSION >= 3
|
||||||
@ -157,7 +162,7 @@ Eigen::TensorMap<Eigen::Tensor<float, 3, Eigen::RowMajor>> a_tensormap = cv2eige
|
|||||||
\endcode
|
\endcode
|
||||||
*/
|
*/
|
||||||
template <typename _Tp> static inline
|
template <typename _Tp> static inline
|
||||||
Eigen::TensorMap<Eigen::Tensor<_Tp, 3, Eigen::RowMajor>> cv2eigen_tensormap(const cv::InputArray &src)
|
Eigen::TensorMap<Eigen::Tensor<_Tp, 3, Eigen::RowMajor>> cv2eigen_tensormap(InputArray src)
|
||||||
{
|
{
|
||||||
Mat mat = src.getMat();
|
Mat mat = src.getMat();
|
||||||
CV_CheckTypeEQ(mat.type(), CV_MAKETYPE(traits::Type<_Tp>::value, mat.channels()), "");
|
CV_CheckTypeEQ(mat.type(), CV_MAKETYPE(traits::Type<_Tp>::value, mat.channels()), "");
|
||||||
|
Loading…
Reference in New Issue
Block a user