作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用OpenCv 2.4.5从边缘查找渐变方向,但是我在使用cvSobel()时遇到问题,以下是错误消息和我的代码。我在某处读到它可能是由于浮点(??)之间的转换,但我不知道如何解决它。有帮助吗?
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2\opencv.hpp>
#include <opencv2\calib3d\calib3d.hpp>
#include <iostream>
#include <stdlib.h>
#include "stdio.h"
using namespace cv;
using namespace std;
int main()
{
Mat im = imread("test1.jpg");
if (im.empty()) {
cout << "Cannot load image!" << endl;
}
Mat *dx, *dy;
dx = new Mat( Mat::zeros(im.rows, im.cols, 1));
dy = new Mat( Mat::zeros(im.rows, im.cols, 1));
imshow("Image", im);
// Convert Image to gray scale
Mat im_gray;
cvtColor(im, im_gray, CV_RGB2GRAY);
imshow("Gray", im_gray);
//trying to find the direction, but gives errors here
cvSobel(&im_gray, dx, 1,0,3);
waitKey(0);
return 0;
}
最佳答案
您正在混合使用C++和C api。 cv::Mat来自C++ API,而CvArr*
来自C API。
在这里,您正在C++类上使用C api cvSobel
。
//trying to find the direction, but gives errors here
cvSobel(&im_gray, dx, 1,0,3);
cv::Sobel( im_gray, dx, im_gray.depth(), 1, 0, 3);
Mat dx;
Mat dy;
关于opencv - OpenCV:如何使用cvSobel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17982226/
我有一个 10 位灰度图像,我喜欢使用 cvSobel 函数。文档不清楚它是否可以接受 16 位灰度图像。当我尝试完成这项工作时,我从 OpenCV 得到了一个异常(exception)。 在我的 V
我正在研究 opencv,我正在使用 ver 2.4.10 和 VS2010我使用了 cvSobel 函数。 我想实现那个功能。因为我将在该函数中输入另一个元素,称为各向同性 sobel 运算符。 请
我是一名优秀的程序员,十分优秀!