C++ 将整数数组转换为等效的opencv mat
我有一个包含81920个元素的整数数组,它的名称是label。此数组的元素类似于:0,1,2,7,。。。(小整数值) 我正在尝试将此整数数组转换为OpenCV mat。我使用了以下代码:C++ 将整数数组转换为等效的opencv mat,c++,opencv,C++,Opencv,我有一个包含81920个元素的整数数组,它的名称是label。此数组的元素类似于:0,1,2,7,。。。(小整数值) 我正在尝试将此整数数组转换为OpenCV mat。我使用了以下代码: int label[81920]; //Fill label matrix cv::Mat LabelsMat = cv::Mat(81920, 1, CV_32FC1, label); 但当我使用此指令将LabelsMat显示为输出时: cout << "LabelsMat = "<&l
int label[81920];
//Fill label matrix
cv::Mat LabelsMat = cv::Mat(81920, 1, CV_32FC1, label);
但当我使用此指令将LabelsMat显示为输出时:
cout << "LabelsMat = "<< endl << " " << LabelsMat << endl << endl;
我不能使用CV_32SC1
,而不是CV_32FC1
谢谢,但这次我收到了一些数字,比如:“-324483898;32741;44;0;-219778840;32741;337130304;32767;-219786826;32741;-241775467;32741;0;13;0;-32483898;32741;2;0;-219778840;32741;0;0;0;8400;0;0;0;0;0;0;0;0;0;0;31”因此,较大的数字仍然不正确:(如果int标签[81920];
超出范围,在使用LabelsMat
之前,您必须克隆()它。但是标签矩阵没有超出范围…即使我尝试了:for(int I=0;I