Как использовать OTSU Threshold в opencv?

Я использовал фиксированный порог, но оказалось, что онэто не так хорошо для меня. Затем кто-то рассказал мне о пороге отсу. Как я могу использовать это в моем коде? Я читал об этом, и я неЯ не очень хорошо понимаю. Может кто-нибудь объяснить мне, как использовать его в OpenCV порог отсу?

Вот мой код сейчас:

#include 
#include 

using namespace cv;

int main ( int argc, char **argv )
{
   Mat im_gray = imread("img3.jpg",CV_LOAD_IMAGE_GRAYSCALE);

   Mat im_rgb  = imread("img3.jpg");
   cvtColor(im_rgb,im_gray,CV_RGB2GRAY);

   Mat img_bw = im_gray > 115;

   imwrite("img_bw3.jpg", img_bw);

   return 0;
}  

При этом я должен изменить порог для любого изображения, которое я хочу преобразовать в двоичный файл. Я нашел это:

cvThreshold(scr, dst, 128, 255, CV_THRESH_BINARY | CV_THRESH_OTSU);

Это правильно? Я нене очень хорошо понимаю, и поэтомуне знаю, как я мог адаптироваться к своему коду.

Ответы на вопрос(3)

Ваш ответ на вопрос