-1
我试图运行以下代码并将RGB图像转换为YCbCr颜色模型。但是当构建这个代码段时,会出现上述错误。我附上了截图。你可以参考并给我一个解决方案。名称必须是名称空间名称Visual Studio错误
#include "opencv2/core/core.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "iostream"
#include "opencv2/opencv.hpp"
using namespace cv;
using namespace cv2;
using namespace std;
int main()
{
Mat src1;
src1 = imread("face.jpg", CV_LOAD_IMAGE_COLOR);
namedWindow("Original image", CV_WINDOW_AUTOSIZE);
imshow("Original image", src1);
Mat gray, edge, draw;
//cvtColor(src1, gray, CV_BGR2GRAY);
Mat imgYCC = cv2.cvtColor(src1, cv2.COLOR_BGR2YCR_CB);
//equalizeHist(gray, draw);
//Canny(gray, edge, 50, 255, 3);
edge.convertTo(draw, CV_8U);
namedWindow("image", CV_WINDOW_AUTOSIZE);
imshow("image", imgYCC);
waitKey(0);
return 0;
}
这意味着没有命名空间'cv2'存在。我想你可以不用'cv2.'来调用'cvtColor()'。 – Soeren
在C++中,名称空间不是用于点而是与'cv :: cvtColor(src1,cv :: COLOR_BGR2YCR_CB)一样''' –