1

如何轻松获取数组的范数?

我试过这个,我有一个错误:

初始化程序过多错误 C2440:“正在初始化”:无法从“cv::OutputArray (__cdecl *)(void)”转换为“double”

double DaisyFeature [200];
double DaisyFeature1 [200];

double norm( DaisyFeature , DaisyFeature1 , NORM_L2,noArray);

我认为问题在于初始化,但我不知道应该使用什么来代替double DaisyFeature [200];

4

2 回答 2

7

该文档非常清楚 Input/OutputArrays 如何工作。文档可以在这里找到。

它基本上表明您可以假设 openCV 实现的任何算法都接受以下类型作为输入(和输出);

cv::Mat、std::vector<>、cv::Matx<>、cv::Vec<> 或 cv::Scalar

于 2014-07-08T09:10:22.737 回答
4

使用 std::vector 代替数组:

std::vector<double> DaisyFeature(200);
std::vector<double> DaisyFeature1(200);

norm( DaisyFeature , DaisyFeature1 , NORM_L2,noArray);
于 2014-07-08T09:23:46.120 回答