【发布时间】:2016-08-02 17:42:09
【问题描述】:
我是 MATLAB 及其开发的新手。我有一个 1134(行)X 1134(列)的图像。我希望该图像保存 3(列)X 3(行)。为了做到这一点,我需要 378 个细胞。为此,我使用了以下代码,但它给了我一个错误。
image=imread('C:\Users\ven\Desktop\test\depth.png');
I=reshape(image,1,1134*1134);
chunk_size = [3 3]; % your desired size of the chunks image is broken into
sc = sz ./ chunk_size; % number of chunks in each dimension; must be integer
% split to chunk_size(1) by chunk_size(2) chunks
X = mat2cell(I, chunk_size(1) * ones(sc(1),1), chunk_size(2) *ones(sc(2),1));
错误:
使用 mat2cell 时出错(第 97 行) 输入参数 D1 到 D2 必须与输入矩阵大小 [1 1285956] 的每个维度相加。'
【问题讨论】:
-
您希望这段代码做什么?
./是逐元素除法运算符。它尝试将 LHS 的每个元素与 RHS 上的 对应 元素分开。这里的关键词是对应的,意思是两个矩阵必须有相同数量的元素和相同的形状。恐怕您的代码甚至无法完成您所描述的操作。我可以建议您现在阅读mathworks.com/help/matlab/matlab_prog/… 和documentation for./以及基本教程。
标签: matlab