Есть ли в opencv функция, похожая на size и bwperim в matlab? - PullRequest
2 голосов
/ 24 марта 2010

Я новичок в opencv и хорошо разбираюсь в matlab

я хочу написать эквивалент ниже в opencv

[мм, пп] = размер (binaryimage);

bwperim (binaryimage);

Пожалуйста, можете ли вы помочь?

Ответы [ 2 ]

2 голосов
/ 24 марта 2010

Есть библиотека для этих вещей: http://opencv.willowgarage.com/wiki/cvBlobsLib

0 голосов
/ 23 ноября 2012

Для эмуляции bwperim вы можете сделать

Mat m;
Mat dilated = m.clone(); dilate(dilated,one_pixel_wide_element);
Mat output = dilated - m;

где one_pixel_wide_element может быть построен с использованием инструкций из opencv :

  dilation_type = MORPH_RECT;
  dilation_size = 1;
  Mat element = getStructuringElement( dilation_type,
                  Size( 2*dilation_size + 1, 2*dilation_size+1 ),
                  Point( dilation_size, dilation_size ) );

Это дает внешнюю границу. Для внутренних границ эрозии (и m-eroded).

...