opencv 最大類間方差(大津法OTSU)

2021-07-15 04:28:40 字數 938 閱讀 1498

參考:

otsu (大津演算法):

最近在做字元識別,看了很多資料,發現在對影象進行預處理過程中,對影象進行二值化是乙個必不可少的方式。如何才能有效的將目標字元表現出來,opencv提供的閾值化方法有threshold和adaptivethreshold,但這需要自己進行引數調整。在同學那裡了解到乙個很有效的方法,就是大津法(otsu)。

otsu演算法就是一種對於影象進行二值化的高效演算法。它是基於最大類間方法法原理。

我在使用過程中發現效果確實不錯,能夠有效的區分出前景和背景

實驗:使用以下**,解析出字元

注:該影象由網上獲取

c++:

#include #include using namespace std;

using namespace cv;

int main(int argc, char* argv)

iplimage *gray = cvcreateimage(cvgetsize(img), ipl_depth_8u, 1);

cvcvtcolor(img, gray, cv_bgr2gray);

iplimage *dst = cvcreateimage(cvgetsize(img), ipl_depth_8u, 1);

cvthreshold(gray, dst, 0, 255, cv_thresh_otsu);

cvnamedwindow("src");

cvnamedwindow("gray");

cvnamedwindow("dst");

cvshowimage("src", img);

cvshowimage("gray", gray);

cvshowimage("dst", dst);

cvwaitkey(0);

return 0;

}

最大類間方差(大津法)詳解

參考 應用 是求影象全域性閾值的最佳方法,應用不言而喻,適用於大部分需要求影象全域性閾值的場合。優點 計算簡單快速,不受影象亮度和對比度的影響。缺點 對影象雜訊敏感 只能針對單一目標分割 當目標和背景大小比例懸殊 類間方差函式可能呈現雙峰或者多峰,這個時候效果不好。計算類間方差 double var...

最大類間方差法 大津法,OTSU

最大類間方差法是由日本學者大津 nobuyuki otsu 於1979年提出的,是一種自適應的閾值確定的方法,又叫大津法,簡稱otsu。它是按影象的灰度特性,將影象分成背景和目標2部分。背景和目標之間的類間方差越大,說明構成影象的2部分的差別越大,當部分目標錯分為背景或部分背景錯分為目標都會導致2部...

最大類間方差法otsu (大津演算法)

效能 類間方差法對噪音和目標大小十分敏感,它僅對類間方差為單峰的影象產生較好的分割效果。當目標與背景的大小比例懸殊時,類間方差準則函式可能呈現雙峰或多峰,此時效果不好,但是類間方差法是用時最少的。公式推導 記t為前景與背景的分割閾值,前景點數佔影象比例為w0,平均灰度為u0 背景點數佔影象比例為w1...