opencv读取txt文件,并赋值为Mat矩阵

来源:互联网 发布:舆情调查软件 编辑:程序博客网 时间:2024/06/06 01:49

目的:opencv读取txt文件,并将txt文件赋值给Mat矩阵
方法:利用fstream类来完成
关于fstream类请参考下面这篇文章:
http://blog.csdn.net/smstone/article/details/661483

下面给出代码:

// vv.cpp : 定义控制台应用程序的入口点。////#include "stdafx.h"  #include <stdio.h>  #include <cv.h>  #include "cvaux.h" //必须引此头文件  #include "cxcore.h"#include <iostream>  #include <fstream>  #include "opencv2/core/core.hpp"  #include "opencv2/highgui/highgui.hpp"   #include "opencv2/nonfree/nonfree.hpp"  using namespace std;using namespace cv;int main(int argc, char** argv){    fstream file1,file2;//创建文件流对象    file1.open("Matrix_ky1.txt");    file2.open("Matrix_ky1.txt");    Mat Ky1_Data = Mat::zeros(67, 4, CV_32FC1);//创建Mat类矩阵,定义初始化值全部是0,矩阵大小和txt一致    Mat Ky2_Data = Mat::zeros(67, 4, CV_32FC1);//同理    //将txt文件数据写入到Data矩阵中    for (int i = 0; i < 67; i++)    {        for (int j = 0; j < 4; j++)        {            file1 >> Ky1_Data.at<float>(i, j);            file2 >> Ky2_Data.at<float>(i, j);        }    }    cout << "矩阵1的数据输出为:" << endl;    cout << Ky1_Data << endl;    cout<<endl;    cout << "矩阵2的数据输出为:" << endl;    cout << Ky2_Data << endl;    waitKey(0);    return 0;}

如下就可以把数据输入到矩阵中,结果如下:
这里写图片描述

本博客参考了这篇博客:
http://lib.csdn.net/article/opencv/28701

原创粉丝点击