如何在Octave中从文件加载矩阵?

8
我使用imread函数将一张8位灰度图像加载到Octave中,然后将其保存为ascii格式,得到了一个包含所有值的巨大列表。接着,我在Java中使用2x2矩阵对其进行抖动处理,并将每个抖动矩阵的列表打印在同一行上。
如果程序中某个像素的矩阵如下所示:
0 2
3 1

那么我的程序生成的输出看起来像这样:
0 2 3 1

然后我有每个像素矩阵的所有格式都在一行上。如何将其加载到Octave中以查看最终抖动图像? 我尝试使用Octave创建简单的矩阵,就像我展示的第一个矩阵一样,并将其保存到文件中,然后我能够将其全部放在一行上并再次正确加载它。然后我试图用程序生成的矩阵替换该文件中的矩阵,但是Octave似乎没有加载它。要加载的矩阵根本没有改变。
1个回答

8
我不确定我完全理解了你的问题,但如果你在与文件系统交互时遇到了问题,我建议使用dlmread和dlmwrite函数。
以下代码将提供一个示例,帮助你开始:
%Random 4 by 4 matrix
M = rand(4,4) 

%Write matrix to file system
dlmwrite("filename.txt",M);

%Read it back and store in an other variable
M2 = dlmread("filename.txt")

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接