画像解析で二次元化ができていない
16 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
画像解析をして、図中に存在する楕円の長さの測定を試みています。
エラーが出てしまいます。
I = imread('crystal.jpeg'); %画像読み込み
BW = imbinarize(I); %二値化
imshowpair(crystal,BW,'montage'); %画像表示
stats = regionprops('table',BW,'MajorAxisLength','MinorAxisLength')
としたときに下のようなエラーが出てしまいます。
警告: ndims(L) > 2 の場合、これらの測定値はサポートされていません: MajorAxisLength
MinorAxisLength 。
> In regionprops>NoNDSupport (line 1440)
In regionprops>PreprocessRequestedStats (line 1471)
In regionprops>InitializeStatStructures (line 1411)
In regionprops (line 228)
In gazo (line 4)
エラー: regionprops>InitializeStatStructures (line 1415)
プロパティが選択されていないか、または適用可能なものがありません。
エラー: regionprops (line 228)
[stats, statsAlreadyComputed] = InitializeStatStructures(imageSize, ...
エラー: gazo (line 4)
stats = regionprops('table',BW,'MajorAxisLength','MinorAxisLength')
二値化できていないのでしょうか。よろしくお願いいたします。
2 Kommentare
Hiroki Okawa
am 21 Mai 2020
Toolboxが手元にないのですが、まずは
size(I)
size(BW)
を実行してみてはいかがでしょうか。
おそらくjpeg画像がRGBチャンネルを持っているため配列のサイズが [M, N, 3]となっており、二値化した変数も[M, N, 3]になっているのではないかと予測しております。
Akzeptierte Antwort
Kenta
am 21 Mai 2020
clear;clc;close all
I = imread('strawberries.jpg'); %画像読み込み
I = rgb2gray(I);%このコードを加える
BW = imbinarize(I); %二値化
imshowpair(I,BW,'montage'); %画像表示
stats = regionprops('table',BW,'MajorAxisLength','MinorAxisLength') ;
こんにちは、Hiroki Okawaさまのおっしゃるようにregionpropsのために、グレースケール画像を入力しなければなりません。そのため、rgb2grayで入力画像を白黒(BW: black and white)にします。
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu イメージ タイプの変換 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!