Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误C2664:&x27;cv::Mat::Mat(int,int,int)和#x27;:无法将参数1从';cv::尺寸';至';int'; 这是我第一次尝试编写OpenCV C++代码。 我试图创建一个所有像素值为200的图像,然后画一条线: #include <vector> #include "opencv2/highgui/highgui.hpp" #include <opencv\cv.h> #include <iostream> #include<conio.h> using namespace cv; using namespace std; int main() { std::vector<char> dataPtr(40000, 200); cv::Point p1(0,0); cv::Point p2(200, 200); cv::Size size(200,200); cv::Mat image(size, CV_8U, dataPtr); if (image.empty()) //check whether the image is valid or not { cout << "Error : Image cannot be created..!!" << endl; system("pause"); //wait for a key press return -1; } cv::line(image, p1, p2, 'r', 5, 8, 0); namedWindow("MyWindow", CV_WINDOW_AUTOSIZE); //create a window with the name "MyWindow" imshow("MyWindow", image); //display the image which is stored in the 'img' in the "MyWindow" window waitKey(0); //wait infinite time for a keypress destroyWindow("MyWindow"); //destroy the window with the name, "MyWindow" return 0; }_C++_Opencv - Fatal编程技术网

错误C2664:&x27;cv::Mat::Mat(int,int,int)和#x27;:无法将参数1从';cv::尺寸';至';int'; 这是我第一次尝试编写OpenCV C++代码。 我试图创建一个所有像素值为200的图像,然后画一条线: #include <vector> #include "opencv2/highgui/highgui.hpp" #include <opencv\cv.h> #include <iostream> #include<conio.h> using namespace cv; using namespace std; int main() { std::vector<char> dataPtr(40000, 200); cv::Point p1(0,0); cv::Point p2(200, 200); cv::Size size(200,200); cv::Mat image(size, CV_8U, dataPtr); if (image.empty()) //check whether the image is valid or not { cout << "Error : Image cannot be created..!!" << endl; system("pause"); //wait for a key press return -1; } cv::line(image, p1, p2, 'r', 5, 8, 0); namedWindow("MyWindow", CV_WINDOW_AUTOSIZE); //create a window with the name "MyWindow" imshow("MyWindow", image); //display the image which is stored in the 'img' in the "MyWindow" window waitKey(0); //wait infinite time for a keypress destroyWindow("MyWindow"); //destroy the window with the name, "MyWindow" return 0; }

错误C2664:&x27;cv::Mat::Mat(int,int,int)和#x27;:无法将参数1从';cv::尺寸';至';int'; 这是我第一次尝试编写OpenCV C++代码。 我试图创建一个所有像素值为200的图像,然后画一条线: #include <vector> #include "opencv2/highgui/highgui.hpp" #include <opencv\cv.h> #include <iostream> #include<conio.h> using namespace cv; using namespace std; int main() { std::vector<char> dataPtr(40000, 200); cv::Point p1(0,0); cv::Point p2(200, 200); cv::Size size(200,200); cv::Mat image(size, CV_8U, dataPtr); if (image.empty()) //check whether the image is valid or not { cout << "Error : Image cannot be created..!!" << endl; system("pause"); //wait for a key press return -1; } cv::line(image, p1, p2, 'r', 5, 8, 0); namedWindow("MyWindow", CV_WINDOW_AUTOSIZE); //create a window with the name "MyWindow" imshow("MyWindow", image); //display the image which is stored in the 'img' in the "MyWindow" window waitKey(0); //wait infinite time for a keypress destroyWindow("MyWindow"); //destroy the window with the name, "MyWindow" return 0; },c++,opencv,C++,Opencv,另一个错误是: 1 IntelliSense:构造函数“cv::Mat::Mat”的实例与 参数列表2july.cpp 78 第一个参数“size”存在一些问题。为什么它说int,而我没有用int?为什么会这样 查看上的规范后,我找不到cv::Mat的构造函数实例,该构造函数的第一个参数是cv::Size,有3个参数 我要换这个 cv::Mat image(size, CV_8U, dataPtr); 对此 cv::Mat image(size, CV_8U); “大小”可能是一个坏名字it

另一个错误是:

1 IntelliSense:构造函数“cv::Mat::Mat”的实例与 参数列表2july.cpp 78


第一个参数“size”存在一些问题。为什么它说int,而我没有用int?为什么会这样

查看上的规范后,我找不到cv::Mat的构造函数实例,该构造函数的第一个参数是cv::Size,有3个参数

我要换这个

cv::Mat image(size, CV_8U, dataPtr);
对此

cv::Mat image(size, CV_8U);

“大小”可能是一个坏名字it@beraksize1也是如此:-(@berak我在Mat中的最后一个参数有什么问题吗?需要任何类型的转换吗?哦,对不起,我没有看到这个,你是对的,那应该是&(dataPtr[0])(第一个元素的地址)。另外,vector可能更有用appropriate@berak非常感谢。它成功了!!
cv::Mat image(size, CV_8U, dataPtr);
cv::Mat image(size, CV_8U);