自分で指定した数の三次元配列の三次元表示

同じ大きさ136*190の5枚の画像を読み込んでから空の三次元配列に読み込んだ画像の値を代入してz軸の値をずらしながら、三次元行列を作りました。
この三次元を表示したいのですが、エラーを吐いてしまい前に進めない状況です。本来は自分の設定した画像枚数で表示できると思うのですが、z軸を3で指定されている状況です。エラーは3で実行すれば消えますが自分のしたいことができないです。どなたか助けて頂きたいです。宜しくお願いします。
clear;clc
td = zeros(136,190,5);
for i = 1:5
td(:,:,i) =imread(sprintf('%d.jpg',i));
end
figure;
pcshow(td);
以下エラーメッセージです。
エラー: pcshow
xyzPointsの実際のサイズは 136x190x5 ですが、サイズは MxNx3 にする必要があります。
エラー: vision.internal.pc.validateAndParseInputsXYZC (line 19)
validateattributes(xyzPoints,{'numeric'}, {'real','size',[NaN,NaN,3]},filename,'xyzPoints');
エラー: pcshow>validateAndParseInputs (line 151)
[X, Y, Z, C] = vision.internal.pc.validateAndParseInputsXYZC(mfilename, varargin{1});
エラー: pcshow (line 99)
validateAndParseInputs(varargin{:});
エラー: no1 (line 13)
pcshow(td);

 Réponse acceptée

Toshinobu Shintai
Toshinobu Shintai le 1 Août 2019

0 votes

pcshowはカラー画像(width, height, color)を対象としているので
うまくいかないのではないでしょうか。
imshowを用いると、それぞれの行列を白黒の画像として表示できます。
また、単にそれぞれの行列の要素を数値で見たい場合はbar3, mesh, surfなどを用いてはどうでしょうか。
添付にサンプルを作成しましたのでご確認ください。

5 commentaires

virgo kk
virgo kk le 1 Août 2019
回答有難うございます。pcshowはカラーで用いられ、グレースケールではimshowを使うことが好ましいということでしょうか?
サンプルを利用してコードを回した結果、それぞれの画像に対して使用した関数の結果が表示できました。有難うございます。
重ねて質問させて頂きたいのですが、表示できたそれぞれのグラフを重ねて表示することは
可能でしょうか?現在5つの画像に対して結果を表示していますが、これがさらに大量の画像に対して適応したあと、重ねて表示することができれば縦長のモデルのようなものが作ることができると思います。円を重ねて円柱を作るイメージです。
宜しくお願いします。
Toshinobu Shintai
Toshinobu Shintai le 1 Août 2019
単純に画像の数値をピクセル位置ごとに加算するのであれば、
以下のようにして表示することができます。
td_sum = sum(td, 3);
bar3(td_sum);
こうではないということでしょうか。
おっしゃっていることが理解できておらず申し訳ありません。
virgo kk
virgo kk le 2 Août 2019
お世話になります。
詳しくお伝えします。
512*512の2DCTのdcmデータを切り取り部分だけで積み重ねて、3Dモデルとして表示させようと考えました。
しかし、DCMファイルでは切り取りができず、一度jpegに画像を変換してから、トリミングを行いました。
今回は、トリミングした画像を積み重ねて三次元表示する際に発生したエラーを解消したく質問をした次第です。
Toshinobu Shintai
Toshinobu Shintai le 2 Août 2019
詳細について教えてくださいまして、ありがとうございます。
自分から関わってきておいて何なのですが、私ではもう分かりませんので他の方に期待します。
virgo kk
virgo kk le 2 Août 2019
わかりました。
お答え頂いて有難うございました。

Connectez-vous pour commenter.

Plus de réponses (1)

Yoshio
Yoshio le 26 Août 2019
Modifié(e) : Yoshio le 26 Août 2019

0 votes

こちらに参考となる例があると思います。
MRIの画像表示も例もありますので、読んだ上で検討してみてください。

Catégories

En savoir plus sur イメージ dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!