- 二値化は万能な方法が困難で色々検討が必要です(下記はimbinarize関数任せにしています)
- メモリに入らない程大量の画像は読み込めません。read関数で1枚ずつ処理するのが無難です
- 下記は2枚の画像をサンプルとしましたが「フォルダ下に含まれる画像」等の形で処理できます
複数の画像に対する処理の仕方がわかりません
16 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
複数枚ある画像に対しての処理のやり方が分かりません。
下記の手順のことをやりたいと考えています。
複数画像を読み込む
読み込んだ画像を二値化
二値化画像の白色部分の面積を出す
面積を A1, A2,.... ,Anといったような変数に入れる
面積の平均を出す
ご教授いただけると幸いです。
0 Kommentare
Akzeptierte Antwort
Atsushi Ueno
am 17 Nov. 2022
fs = matlab.io.datastore.FileSet(["street1.jpg","coins.png"]); % サンプルは2枚だけ
imds = imageDatastore(fs);
Is = readall(imds) % 複数画像を読み込む
BWs = cellfun(@(x) imbinarize(im2gray(x)),Is,'uni',false) % 読み込んだ画像を二値化
As = cellfun(@(x) sum(x,'all'),BWs) % 二値化画像の白色部分の面積を A1, A2,.... ,Anといったような変数に入れる
AveArea = mean(As) % 面積の平均を出す
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Convert Image Type finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!