OpenCV_Contrib module quality
Hello, I am using 'https://github.com/opencv/opencv_cont...' for image quality assessment . When i write following code in main() function and execute I got an error.
Mat img = cv::imread("E:\Images\Slide_02\200131_141613\Tile_0_0_0_0_2.bmp");
String model_path = "E:\VS_Projects\ImageQuality_opencvContrib\ImageQuality_opencvContrib\brisque_model_live.yml";
cv::String range_path = "E:\VS_Projects\ImageQuality_opencvContrib\ImageQuality_opencvContrib\brisque_range_live.yml";
/* compute BRISQUE quality score via static method */
cv::Scalar result_static = quality::QualityBRISQUE::compute(img,model_path, range_path);
Error : e:\opencv_contrib-master\modules\quality\include\opencv2\quality\qualitybrisque.hpp(67): error C2665: 'cv::Ptr<cv::ml::SVM>::Ptr': none of the 3 overloads could convert all the argument types
please suggest me where i am going wrong.
vs version ?
btw, rather use forward slashes in pathnames, even on windows
I am using VS15
does it get better, if you remove the
= nullptr
part ?yes. Thank you
so, did it solve the problem ?
if so, maybe you should post an issue about it ?
but got
error LNK2019: unresolved external symbol "public: static class cv::Scalar_<double> __cdecl cv::quality::QualityBRISQUE::compute(class cv::debug_build_guard::_InputArray const &,class cv::String const &,class cv::String const &)" (?compute@QualityBRISQUE@quality@cv@@SA?AV?$Scalar_@N@3@AEBV_InputArray@debug_build_guard@3@AEBVString@3@1@Z) referenced in function main
Why i am getting linking error?
you're trying to link RELEASE libs to a DEBUG project. (strictly use libs with trailing
d
for DEBUG)i given 'opencv_world341d.lib' in Linker-> Input-> Additional dependencies in DEBUG mode. what else i need to link ?
wait -- IF you built the opencv libs (with contrib modules) locally there should be a opencv_quality341d.lib
I have just downloaded opencv_contrib package in that there is no lib files. Is i need to build separately?