transformで​コントラスト変換した​画像の表示

5 visualizaciones (últimos 30 días)
拓 青柳
拓 青柳 el 23 de Oct. de 2022
Respondida: Kojiro Saito el 25 de Nov. de 2022
深層学習によるX線画像の2クラス分類を行っております。
以下のコードによりimdsDatastore内の画像に対しコントラスト変換を行い、表示しようとしておりますが、
imshowを実行した際にエラーが発生してしまいます。ご教示ください。変換した画像を見る方法が他にあればそれでも構いません。
in=[0.1 0.9];
out=[];
%%
imdsTrainnew = transform(imdsTrain,@(x) imadjust(x,in,out));
%%
minibatch = read(imdsTrainnew);
%%
imshow(imtile(minibatch.index))
この型の変数ではドット インデックスはサポートされていません。
エラー: untitled3 (10)
imshow(imtile(minibatch.index))
>>
  1 comentario
Atsushi Ueno
Atsushi Ueno el 23 de Oct. de 2022
画像データminibatchにフィールド名は存在せず、minibatch.indexとアクセスする事は出来ません。このindexとは何にアクセスしようとしたのですか?おそらくaugmentedImageDatastore関数の何かと勘違いしていると想定します。
  • ImageDatastoreのreadメソッドで得られる出力は「整数配列(イメージ)」
  • TransformedDatastoreのreadメソッドで得られる出力は「場合により異なる:TransformedDatastore の作成に使用される transform メソッドで指定された変換関数 @fcn の出力と同じ」即ち「imadjust関数の出力:整数配列(調整されたイメージ)」

Iniciar sesión para comentar.

Respuestas (1)

Kojiro Saito
Kojiro Saito el 25 de Nov. de 2022
minibatch = read(imdsTrainnew)を実行しているところでminibatchに格納されているのが画像データ(数値配列)になっていて、indexというプロパティが無いのが原因です。
画像全てを一度に読み込んでもメモリーが十分あるなら、readallTransformedDatastoreの中の画像をまとめて読み込んでimshowができます。
%%
in=[0.1 0.9];
out=[];
imdsTrain = imageDatastore({'street1.jpg', 'street2.jpg'});
imdsTrainNew = transform(imdsTrain,@(x) imadjust(x,in,out));
allImg = readall(imdsTrainNew);
imshow(allImg)
imtileではなく、tiledlayoutを使って画像の枚数ごとにreadで読み取ってタイル状に表示することもできます。
%%
in=[0.1 0.9];
out=[];
% ダミー画像
imdsTrain = imageDatastore({'cameraman.tif', 'street1.jpg', 'corn.tif','peppers.png'});
imdsTrainNew = transform(imdsTrain,@(x) imadjust(x,in,out));
% 画像の枚数を取得
numImg = length(imdsTrainNew.UnderlyingDatastores{1, 1}.Files);
% タイル状にプロット
figure
tiledlayout(1,numImg,"TileSpacing","tight");
for n=1:numImg
nexttile
img = read(imdsTrainNew);
imshow(img);
end

Categorías

Más información sobre イメージを使用した深層学習 en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!