2015-04-09 2 views
0
error C2664: 'double cv::threshold(cv::InputArray,cv::OutputArray,double,double,int)' : cannot convert argument 1 from 'IplImage *' to 'cv::InputArray' 

Как решить эту ошибку?Ошибка Visual Studio OpenCV C2664

+0

Какой язык? Что вы пробовали? – SaeX

+0

сделайте пожалуйста ** нет ** использование IplImages. opencv переехал в C++ полвека назад. – berak

ответ

1

Вы смешиваете API OpenCV и C++. Поскольку вы используете C++, используйте cv::Mat вместо IplImage *, что также рекомендуется.

Если вы должны использовать IplImage *, преобразовать его в cv::Mat первый перед вызовом cv::threshold:

IplImage *ipl_img; 
cv::Mat mat_img(ipl_img); 

И, затем, использовать mat_img перейти в cv::threshold.

Смежные вопросы