Ошибка OpenCV: плохой флаг

0

Я работаю в opencv по некоторым методам, но продолжаю получать следующую ошибку:

OpenCV Error: Bad flag(parameter or structure field) (unrecognized or unsupported array)

Вот код:

void RafiTextLineExtractor::eraseMargins(){


    Mat img = _image.clone();
    threshold(img, img, 100, 200, CV_THRESH_BINARY_INV);

    BinaryComponentExtractor bn;
    bn.setImage(&DImage(img));
    vector<ConnectedComponent*> components;

    bn.extract(components);

    namedWindow("components",CV_WINDOW_NORMAL);
    imshow("components", img);

}

void  BinaryComponentExtractor::extract(vector<ConnectedComponent*>& components){
    vector<vector<Point>> contours;
    vector<Vec4i> hierarchy;
    Mat mat = _image->getMat().clone();
    cv::findContours(mat, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_NONE, Point(0, 0) );
    collectComponents(contours, hierarchy, components);
} 

void setImage(DImage* img) { _image = img; } 

Кроме того, когда я отлаживаю проект, он, похоже, не пропускает изображение (в bn.setImage()..) любые идеи, почему это происходит?

С уважением.

  • 0
    о да, это исправлено, все еще получаю ошибку.
Теги:
opencv

1 ответ

0

ваша функция возвращает None. поэтому вы пытаетесь показать None.

  • 0
    Проблема не в том, что я НЕ ВИДЕЛ что-либо, потому что функция не проходит должным образом.
  • 0
    Весь код плз, так что можете видеть, что wat ru передается в эту функцию.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню