0
我需要幫助。我正在從文本文件中讀取數據。它有3列和100行。數據爲(x,y,z)格式。我想將x和y合併成一個Mat數據,將Z合併成另一個。從Txt文件讀取並轉換爲浮動墊opencv
對於Z很容易,我創建了它的浮點矩陣。我正在讀x和y,現在我將它作爲浮點向量存儲。如下面的代碼。
char buf[255];
float x, y;
float label;
vector<float> x_coord;
vector<float> y_coord;
Mat class_label(y_coord.size(), 1, CV_32FC1);
if(!inFile.eof())
{
while (inFile.good())
{
inFile.getline(buf, 255);
string line(buf);
istringstream iss(line);
iss >> x;
x_coord.push_back(x);
iss >> y;
x_coord.push_back(y);
y_coord.push_back(y);
iss>> label;
class_label.push_back(label);
}
inFile.close();
}
如何可以結合x_coord和y_coord創建類型Mat training_data(y_coord.size(), 2, CV_32FC1, train_data);
即2列由100行的墊的。我這樣做,但它不工作
float train_data[10938][2];
for (int j = 0; j < 2; j++)
{
for (int i = 0; i < x_coord.size(); i++)
{
int index = j + i * x_coord.size();
train_data[i][j] = x_coord.at(index);
//train_data[i][1] = x_coord.at(i);
}
}
我真的被困在這裏請幫助我。
你真的想要2列單浮點數據,還是CV_32FC2的單列? – berak
2列單浮點數據 –