CSVデータから列ご​とに画像を生成するに​はどうすれば良いです​か?

こんにちは。小熊塁と申します。
先日、一列のCSVデータからreshapeを用いて画像を作る方法を伺ったのですが、今度は複数の列からそれぞれの画像を生成したいと考えています。
当初は一列ごとの画像生成と保存をループさせることで目的を達成しようと考えていたのですが、素人の私では困難でした。
ループでなく一括でも構いませんので、列ごとの画像を生成する方法を教えていただけると幸いです。
参考までに添付しますが、以下のようなデータになっており、各波長(400nm-1000nm,5nm刻み)におけるレタスの光強度がピクセルごとに表されています。
よろしくお願いします。

 Risposta accettata

Atsushi Ueno
Atsushi Ueno il 29 Lug 2021
Modificato: Atsushi Ueno il 29 Lug 2021

2 voti

前回の質問の回答を踏まえ、列の数分ループさせる様にしました。
mytable = readtable('answers888272.csv'); % サンプルデータは10000行*10列
for index = 1:size(mytable,2) % 一列ごとの画像生成と保存をループさせる
image = uint8(reshape(mytable{:,index},[100,100]));
imwrite(image, [num2str(index) '.png']);
end
ls % ファイルを一覧表示
10.png 1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png answers888272.csv

1 Commento

塁 小熊
塁 小熊 il 2 Ago 2021
前回に続き今回も返信して頂き、ありがとうございます。
私の理想通りの出力がなされました。
これで波長ごとにエクセルからエクセルへコピペしなくて済みます。
大変助かりました。重ねてお礼申し上げます。
ありがとうございました。

Accedi per commentare.

Più risposte (0)

Prodotti

Release

R2020a

Tag

Community Treasure Hunt

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

Start Hunting!