Borrar filtros
Borrar filtros

各画像の画素値の求め方

67 visualizaciones (últimos 30 días)
suzuka iwaki
suzuka iwaki el 10 de Nov. de 2023
Respondida: Atsushi Ueno el 12 de Nov. de 2023
jpegFiles = dir('*.jpg');
numfiles = 1528;
mydata = cell(1, numfiles);
T = table((1:numfiles)', zeros(numfiles,1), 'VariableNames', {'Serial_No.', 'meanLuminance'})
for k = 1:numfiles
mydata{k} = imread(jpegFiles(k).name);
RGB = imread(jpegFiles(k).name);
graying = rgb2gray(RGB);
meanLuminance = mean(graying,"all")
T{k,2} = meanLuminance
end
上のようなコードで、1528枚の各グレースケール画像の輝度値を求めたのですが、各画像の輝度値ではなく画素値を求める場合、どのようなコードを書けば良いのでしょうか。よろしくお願いします。

Respuestas (1)

Atsushi Ueno
Atsushi Ueno el 12 de Nov. de 2023
  • モノクロ画像の場合「画素値=輝度値」
  • カラー画像の場合「画素値はRGBの三要素ある」
上記コードでは rgb2gray 関数で各画素の輝度値を求め、画像1枚につき1つの値(輝度値の平均)を計算しています。これに倣い画素値の平均を求めると下記の様になります。画像を imread 関数で読み込んだ時点で画素値データが得られるので、あとは平均値を求めるだけです。ファイルの走査や結果の格納は上記コードと同じなので割愛します。
RGB = imread(jpegFiles(k).name); % これがRGBの画素値
meanPixelValue = mean(RGB,[1 2]) % RGB各ページにおける画素値の平均を求める

Categorías

Más información sobre イメージ en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2023b

Community Treasure Hunt

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

Start Hunting!