HSV変換した画像か​ら特定の色のピクセル​数を数えたい

21 次查看(过去 30 天)
大輝 隅岡
大輝 隅岡 2022-7-23
画像中から特定の色を抽出して,そのピクセル数を数えるプログラムをつくりたいのですがうまくいきません.やりたいこととしては,添付画像をHSV変換し,赤い部分のピクセル数を数えるプログラムを作りたいです.RGB画像よりもHSV画像の方が特定の色を抽出しやすいと考え,HSV変換して行いたいと考えています.分かりにくい文章ですみませんが,どなたか教えていただきたいです。

回答(1 个)

Atsushi Ueno
Atsushi Ueno 2022-7-23
H (色相) が 0~360 度 ( rgb2hsv 関数の出力では 0~1 ) の内 0 度付近が赤です。
H (色相) が 0.00~0.02 と 0.98~1.00 のピクセルを「赤」と判定しました。
HSV = rgb2hsv(imread('image.png'));
RED = (HSV(:,:,1) <= 0.02) ...
| (HSV(:,:,1) >= 0.98);
sum(RED,'all') % 赤い部分のピクセル数
ans = 46521
numel(HSV(:,:,1)) % 画像のピクセル数
ans = 56882
imshow(~RED) % 黒い部分が赤色、白い部分が赤色以外。若干判定ムラが生じている
  1 个评论
大輝 隅岡
大輝 隅岡 2022-7-25
丁寧な回答ありがとうございます.このプログラムを元に頑張ってみます.ありがとうございました.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!