グラフのピークサーチについて

14 views (last 30 days)
Ibuki Takahashi
Ibuki Takahashi on 8 Jun 2021
Answered: Atsushi Ueno on 8 Jun 2021
画像を、白黒に変換し、行の和で表したグラフの、最小値と最大値を抜き出したいと考えております。
その最小値と最大値を、プログラムの変数へ格納したいのですが、どうすればよいのでしょうか。

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 8 Jun 2021
下記リンクの画像を読み込み、行の和で表したグラフの最小値と最大値をrow_min, row_maxにそれぞれ格納しました。
gry = imread('convertrgbimagetograyscaleimageexample_02_ja_JP.png');
% gry = rgb2gray(gry); % 元々白黒なので変換は省略
imshow(gry);
% 行の和で表したグラフの、最小値と最大値を抜き出したい
row_sum = sum(gry); % 行の和
row_sum(row_sum == 0) = NaN; % 0(画像の黒い縁)を最小値にしないよう非数値化
% その最小値と最大値を、プログラムの変数へ格納
[row_max, idx_max] = max(row_sum)
row_max = 30877
idx_max = 327
[row_min, idx_min] = min(row_sum)
row_min = 7101
idx_min = 98
% 最小値と最大値を確認する為グラフに表示する
figure; hold on; mx = size(gry, 2);
plot(1:mx, row_sum, idx_max, row_max, 'o', idx_min, row_min, 'o');

More Answers (0)

Categories

Find more on グラフとネットワーク アルゴリズム in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!