小编VP.*_*VP.的帖子

与OPENCV C和C++ API不同的结果(边界插值差异)

我已经执行了Closing形态学操作,我得到了与C和C++ API(OpenCV 2.4.2)不同的结果

输入:

输入http://i48.tinypic.com/35jm9n5.png

使用OpenCV'C':

//Set ROI
//Perform Gaussian smoothing
//Perform Canny edge analysis
cvMorphologyEx( src, dst, temp, Mat(), MORPH_CLOSE, 5 );
Run Code Online (Sandbox Code Playgroud)

结果:http: //i47.tinypic.com/33e0yfb.png

使用Opencv C++

//Set ROI 
//Perform Gaussian smoothing 
//Perform Canny edge analysis
cv::morphologyEx( src, dst, cv::MORPH_CLOSE, cv::Mat(), cv::Point(-1,-1), 5 );
Run Code Online (Sandbox Code Playgroud)

结果:http: //i50.tinypic.com/i5vxjo.png

如您所见,C++ API产生具有白色/灰色边框颜色的输出.因此,这两种API的结果都不同.

我已尝试使用C++ API使用不同的borderType,但它总是产生相同的结果.

如何在C++中获得与C API相同的输出?我需要它,因为它会影响检测到的轮廓

提前致谢

c++ opencv image image-processing

6
推荐指数
1
解决办法
6426
查看次数

检测分段常数信号中的步骤

我有一个分段恒定信号如下所示.我想检测步骤转换的位置(用红色标记).

我目前的做法:

我目前正在实施检测不连续性的最后一步.但是,我无法获得精确的位置,并以许多错误检测结束.

我的问题:

  1. 这是正确的方法吗?
  2. 如果是的话,有人会为最后一步提供一些信息/算法吗?
  3. 请建议替代/更好的方法.

谢谢

1级地块的原始,平滑,DWT详细的Coeff

matlab signal-processing

5
推荐指数
1
解决办法
6945
查看次数

的std ::向量; 无法转换参数; Visual Studio 2012

我在VS2012 x64快递版上遇到错误.相同的代码在VS2010下正常工作.我在stackoverflow上经历了很多线程,这似乎是VS2012中的一个错误.

代码:

typedef vector< vector<cv::Point2d> > vec_type; 
vec_type table;
table.assign( 100, 0 );
Run Code Online (Sandbox Code Playgroud)

错误:

错误C2664:' void std::vector<_Ty>::assign(unsigned __int64, const std::vector<cv::Point2d> &)':无法将参数2从' int' 转换为' const std::vector<_Ty> &'

任何人都可以指出解决方案或解决这个问题吗?

谢谢

c++ vector std visual-studio-2012

1
推荐指数
1
解决办法
961
查看次数

旋转矩阵R1与另一个矩阵相对应,比如R2

我有两个相机旋转矩阵R1和R2.它们都是在参考系中计算出来的.

我的最终目标是使用这两个图像的相应特征来执行立体3D三角测量.

我的问题是,给定两个旋转矩阵R1和R2与某些参考系,我如何计算代表第一帧和第二帧之间旋转的矩阵"R"?

谢谢

opencv computer-vision triangulation stereo-3d

1
推荐指数
1
解决办法
578
查看次数