Matlabでの実装とは? わかりやすく解説

Matlabでの実装

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/13 17:53 UTC 版)

大津の二値化法」の記事における「Matlabでの実装」の解説

関数入力出力 histsは、グレースケール値と近傍平均グレースケール値のペア256 × 256 {\displaystyle 256\times 256} の2次元ヒストグラムである。 totalは、所与画像ペアの数である。これは各方向の2次元ヒストグラムビンの数により決まる。 threshold取得されしきい値である。 function threshold = otsu_2D(hists, total)maximum = 0.0;threshold = 0;helperVec = 0:255;mu_t0 = sum(sum(repmat(helperVec',1,256).*hists));mu_t1 = sum(sum(repmat(helperVec,256,1).*hists));p_0 = zeros(256);mu_i = p_0;mu_j = p_0;for ii = 1:256 for jj = 1:256 if jj == 1 if ii == 1 p_0(1,1) = hists(1,1); else p_0(ii,1) = p_0(ii-1,1) + hists(ii,1); mu_i(ii,1) = mu_i(ii-1,1)+(ii-1)*hists(ii,1); mu_j(ii,1) = mu_j(ii-1,1); end else p_0(ii,jj) = p_0(ii,jj-1)+p_0(ii-1,jj)-p_0(ii-1,jj-1)+hists(ii,jj); % THERE IS A BUG HERE. INDICES IN MATLAB MUST BE HIGHER THAN 0. ii-1 is not valid mu_i(ii,jj) = mu_i(ii,jj-1)+mu_i(ii-1,jj)-mu_i(ii-1,jj-1)+(ii-1)*hists(ii,jj); mu_j(ii,jj) = mu_j(ii,jj-1)+mu_j(ii-1,jj)-mu_j(ii-1,jj-1)+(jj-1)*hists(ii,jj); end if (p_0(ii,jj) == 0) continue; end if (p_0(ii,jj) == total) break; end tr = ((mu_i(ii,jj)-p_0(ii,jj)*mu_t0)^2 + (mu_j(ii,jj)-p_0(ii,jj)*mu_t1)^2)/(p_0(ii,jj)*(1-p_0(ii,jj))); if ( tr >= maximum ) threshold = ii; maximum = tr; end endendend

※この「Matlabでの実装」の解説は、「大津の二値化法」の解説の一部です。
「Matlabでの実装」を含む「大津の二値化法」の記事については、「大津の二値化法」の概要を参照ください。

ウィキペディア小見出し辞書の「Matlabでの実装」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Matlabでの実装」の関連用語

1
大津の二値化法 百科事典
8% |||||

Matlabでの実装のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Matlabでの実装のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの大津の二値化法 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS