私はMATLABとその開発が初めてです。私は1134(行)×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));
エラー:あなたはそれはと思うよう
Error using mat2cell (line 97) Input arguments, D1 through D2, must sum to each dimension of the input matrix size, [1 1285956].'
このコードで何を期待していましたか? '。/'は要素ごとの除算演算子です。それは、LHSの各要素をRHS上の対応する*要素で分割しようとします。ここでのキーワードは対応しています。つまり、2つの行列*は同じ数の要素と同じ形を持たなければなりません。私はあなたのコードが、あなたが描いていることに近づくことさえできないのではないかと心配しています。 http://www.mathworks.com/help/matlab/matlab_prog/array-vs-matrix-operations.htmlと[./'のドキュメント(http://www.mathworks.com)を読むことをお勧めしますか? /help/fixedpoint/ref/rdivide.html)と基本的なチュートリアルです。 – Dan