- 二値化は万能な方法が困難で色々検討が必要です(下記はimbinarize関数任せにしています)
- メモリに入らない程大量の画像は読み込めません。read関数で1枚ずつ処理するのが無難です
- 下記は2枚の画像をサンプルとしましたが「フォルダ下に含まれる画像」等の形で処理できます
複数の画像に対する処理の仕方がわかりません
16 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
複数枚ある画像に対しての処理のやり方が分かりません。
下記の手順のことをやりたいと考えています。
複数画像を読み込む
読み込んだ画像を二値化
二値化画像の白色部分の面積を出す
面積を A1, A2,.... ,Anといったような変数に入れる
面積の平均を出す
ご教授いただけると幸いです。
0 comentarios
Respuesta aceptada
Atsushi Ueno
el 17 de Nov. de 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) % 面積の平均を出す
Más respuestas (0)
Ver también
Categorías
Más información sobre Convert Image Type en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!