どのようにイメージをセルに変換できますか? mat2cellの変換では、このいずれかを実行している間、私はエラーを取得しています:イメージをセルに変換する
close all;
I=imread('D:\prj2.jpg');
Imshow(I);
C=mat2cell(I,[130 97],[130 97]);
どのようにイメージをセルに変換できますか? mat2cellの変換では、このいずれかを実行している間、私はエラーを取得しています:イメージをセルに変換する
close all;
I=imread('D:\prj2.jpg');
Imshow(I);
C=mat2cell(I,[130 97],[130 97]);
ドキュメントからmat2cell
のために:
mat2cell Break matrix up into a cell array of matrices.
C = mat2cell(X,M,N) breaks up the 2-D array X into a cell array...
これは、現在の関数のmat2cellを使用している方法です。ただし、エラーメッセージから、I
という行列は2次元行列ではないようです。コマンド行にndims(I)
と入力すると、配列の次元数がわかります。
、あなたのI
は、3次元(画像の三次元各カラーチャンネルのためである)を持っていることがわかります。したがって、別様にmat2cell
を使用する必要があります。コマンドプロンプトに「help mat2cell
」と入力し、多次元配列にはmat2cell
を使用してください。
また、あなたが最初にあなたの画像とは別に各カラーチャンネルを抽出でき、個別に各カラーチャンネルでmat2cell
を実行します。
red_channel = I(:, :, 1);
green_channel = I(:, :, 2);
blue_channel = I(:, :, 3);
rgbをフレームに変換する方法M(1)= im2frame(red_channel、map); M(2)= im2frame(green_channel、map); M(3)= im2frame(blue_channel、map); ???未定義関数または変数 'map'。 ==> prj = 7のエラー M(1)= im2frame(red_channel、map); – user1340253
いずれにしても、画像をフレームに変換し、その後乱気流シミュレーションを適用してフレームをビデオに変換するためのMATLABコードの書き込みに役立ちます。 – user1340253
素晴らしいコメント。たぶん、これらは別々の質問として最もよいでしょう、ここでそれらに答えることは非常に難しいです。 –
あなたはどのようなエラーを取得していますか?私のサイズは何ですか? (実行するために 'size(I)'を実行してください) –
??? 962で==> mat2cellを使用しているエラー 入力ベクトル引数の数2が、入力行列の次元数3と一致しません。 4 = 0> prjでエラーが発生しました。C = mat2cell(I、[130 97] 、[130 97])。 – user1340253