我还在学习octave,需要用到imwrite函数
我的程序基本上只需要读取图像,然后创建一个较小的矩阵来缩小原始图像(我不是试图插值,只是在特定的行和列处获取点)。
这里是我的输入和输出矩阵的一些例子
Original
ans(:,:,1) =
184 175 184 194 194 194 194 194 184 194 194 194 194 194 184 150
184 184 175 175 150 159 175 184 184 184 175 175 184 184 159 159
175 184 184 184 175 184 175 159 159 159 159 175 175 184 184 150
150 126 126 150 150 126 103 103 126 126 103 126 103 103 126 103
184 194 159 194 194 194 194 159 194 194 194 184 175 175 159 184
175 184 184 175 159 175 159 150 159 175 175 184 184 184 184 175
159 159 175 184 175 175 175 150 184 184 184 175 175 159 159 159
103 103 126 126 150 126 103 103 103 103 126 126 126 150 126 103
184 194 194 184 175 175 194 194 194 194 194 194 194 194 184 159
184 175 184 184 184 184 175 159 159 159 175 159 175 159 159 150
194 184 175 175 159 159 159 159 175 175 175 175 159 159 184 159
103 103 126 150 150 126 103 103 103 126 150 126 126 103 103 103
194 159 184 194 194 184 184 159 194 194 194 159 194 184 194 194
175 175 184 184 159 159 175 159 159 184 184 175 184 175 175 175
175 159 159 175 184 175 159 150 184 184 175 159 159 159 159 159
103 126 126 103 103 126 150 150 150 126 103 126 103 103 103 103
ans(:,:,2) =
148 143 148 157 157 157 157 157 148 157 157 157 157 157 148 116
148 148 143 143 116 132 143 148 148 148 143 143 148 148 132 132
143 148 148 148 143 148 143 132 132 132 132 143 143 148 148 116
116 98 98 116 116 98 80 80 98 98 80 98 80 80 98 80
148 157 132 157 157 157 157 132 157 157 157 148 143 143 132 148
143 148 148 143 132 143 132 116 132 143 143 148 148 148 148 143
132 132 143 148 143 143 143 116 148 148 148 143 143 132 132 132
80 80 98 98 116 98 80 80 80 80 98 98 98 116 98 80
148 157 157 148 143 143 157 157 157 157 157 157 157 157 148 132
148 143 148 148 148 148 143 132 132 132 143 132 143 132 132 116
157 148 143 143 132 132 132 132 143 143 143 143 132 132 148 132
80 80 98 116 116 98 80 80 80 98 116 98 98 80 80 80
157 132 148 157 157 148 148 132 157 157 157 132 157 148 157 157
143 143 148 148 132 132 143 132 132 148 148 143 148 143 143 143
143 132 132 143 148 143 132 116 148 148 143 132 132 132 132 132
80 98 98 80 80 98 116 116 116 98 80 98 80 80 80 80
ans(:,:,3) =
95 85 95 98 98 98 98 98 95 98 98 98 98 98 95 65
95 95 85 85 65 77 85 95 95 95 85 85 95 95 77 77
85 95 95 95 85 95 85 77 77 77 77 85 85 95 95 65
65 55 55 65 65 55 44 44 55 55 44 55 44 44 55 44
95 98 77 98 98 98 98 77 98 98 98 95 85 85 77 95
85 95 95 85 77 85 77 65 77 85 85 95 95 95 95 85
77 77 85 95 85 85 85 65 95 95 95 85 85 77 77 77
44 44 55 55 65 55 44 44 44 44 55 55 55 65 55 44
95 98 98 95 85 85 98 98 98 98 98 98 98 98 95 77
95 85 95 95 95 95 85 77 77 77 85 77 85 77 77 65
98 95 85 85 77 77 77 77 85 85 85 85 77 77 95 77
44 44 55 65 65 55 44 44 44 55 65 55 55 44 44 44
98 77 95 98 98 95 95 77 98 98 98 77 98 95 98 98
85 85 95 95 77 77 85 77 77 95 95 85 95 85 85 85
85 77 77 85 95 85 77 65 95 95 85 77 77 77 77 77
44 55 55 44 44 55 65 65 65 55 44 55 44 44 44 44
Compressed
ans(:,:,1) =
184 175 159 184 184 175 184 159
126 150 126 103 126 126 103 103
184 175 175 150 175 184 184 175
103 126 126 103 103 126 150 103
175 184 184 159 159 159 159 150
103 150 126 103 126 126 103 103
175 184 159 159 184 175 175 175
126 103 126 150 126 126 103 103
ans(:,:,2) =
148 143 132 148 148 143 148 132
98 116 98 80 98 98 80 80
148 143 143 116 143 148 148 143
80 98 98 80 80 98 116 80
143 148 148 132 132 132 132 116
80 116 98 80 98 98 80 80
143 148 132 132 148 143 143 143
98 80 98 116 98 98 80 80
ans(:,:,3) =
95 85 77 95 95 85 95 77
55 65 55 44 55 55 44 44
95 85 85 65 85 95 95 85
44 55 55 44 44 55 65 44
85 95 95 77 77 77 77 65
44 65 55 44 55 55 44 44
85 95 77 77 95 85 85 85
55 44 55 65 55 55 44 44
我将这个“压缩”矩阵保存到一个变量中并调用 imwrite:
orig = imread('orig.png')
comp = compress(orig, 1);
imwrite(comp, 'comp.png');
然后... imwrite 生成一个空白图像。有谁知道我做错了什么?
当我输入原始矩阵时,我可以正常工作。但是当我尝试输入补偿矩阵时我不起作用