0
您好,我在文本文件中有一個大的33 x 33矩陣。我一直在研究opencv項目,它基本上讀取框架並計算相似度。所以基本上,我現在有這個大文本文件充滿數字。如何將這個矩陣可視化爲2D灰度圖像?將大矩陣轉換爲圖像
您好,我在文本文件中有一個大的33 x 33矩陣。我一直在研究opencv項目,它基本上讀取框架並計算相似度。所以基本上,我現在有這個大文本文件充滿數字。如何將這個矩陣可視化爲2D灰度圖像?將大矩陣轉換爲圖像
您的矩陣是否爲cv::Mat
對象?
如果是的話,做的事:
cv::Mat matrix;
//Load the matrix from the file
matrix = ...
//show the matrix
imshow("window name", matrix);
//save the image
imwrite("image.png", matrix);
如果沒有,那麼這樣做:
cv::Mat matrix = cv::Mat.create(33, 33, CV_32FC1);
float* floatPtr = matrix.ptr<float>();
for (int i=0;i<33*33;i++)
//read data from file here
*floatPtr++ = data[i] //if it's in an array
//If you have a file stream then do: file>>*floatPtr++;
//show the image
imshow("window name", matrix);
//save the image
imwrite("image.png", matrix);
什麼是你的txt文件的格式? yml/xml?那麼它是簡單的cv :: FileStorage – berak 2013-03-19 20:55:51