Dice係数の算出方法について

14 views (last 30 days)
弘達 土亀
弘達 土亀 on 4 Nov 2020
Answered: 弘達 土亀 on 5 Dec 2020
Dice係数の算出質問があります・
Reference画像に対して複数枚の画像(比較画像)とDice係数の算出を行いたいと考えています。
1枚ずつの場合は、データをuit8からlogicalに変更することで算出する事が出来ました。
フォルダ内に複数データがある場合に、データを一括でlogicalに変更してDice係数を算出できるでしょうか。
教えて頂けると幸いです。
以前、SSIMの算出について同様の質問をさせて頂きました。
以前教えて頂いたssim算出のフローを下記に記します。
このフロー編集して算出できると助かります。
何卒よろしくお願いします。
ssimフロー
% 参照画像読み込み
>> I = imread('cameraman.tif');
% imgs フォルダには 複数枚の画像が入っていると仮定します
% イメージデータストアの作成
>> imds = imageDatastore('imgs');
% ReadFcn で ssim() 関数を実行 (ファイルを読み込む時点でReadFcnが実行される)
>> imds.ReadFcn = @(filename) ssim(I, imread(filename))
% imgsフォルダ内の画像群に対して ssim() を実行
>> readall(imds)

Answers (2)

Naoya
Naoya on 3 Dec 2020
以下の様に、logical() を被せるような感じで logical にキャストしながら、dice係数を求める処理を行うことができると思います。
>> imds.ReadFcn = @(filename) dice(BW, logical(imread(filename)))

弘達 土亀
弘達 土亀 on 5 Dec 2020
回答ありがとうございました。
返信内容を参考にしたら、フォルダ内の複数画像とのdice係数を算出することが出来ました。
本当にありがとうございました。

Tags

Community Treasure Hunt

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

Start Hunting!