Equivalent of cvMean from opencv-2.4.5 in opencv-3.3.1?

asked 2017-11-02 06:18:50 -0500

Fevzi gravatar image

updated 2017-11-02 11:54:49 -0500

I'm trying to compile osiris_v4.1(open source iris) an open source library. According to the documentation (while it doesn't explicitly state it) it uses opencv-2.4.5, I currently have 3.3.1 installed and I get this error while trying to compile the project

.../Iris_Osiris_v4.1/src/OsiProcessings.cpp:299:28: error: ‘cvMean’ was not declared in this scope double iris_mean = cvMean(pSrc,safe_area) ;

Is there an equivalent function I can replace it with in opencv-3.3.1?

edit retag flag offensive close merge delete

Comments

rule of thumb: if it has IplImage in it : RUN ! (it's entirely DEAD)

really, consider to find something better maintained. the c-api got killed way back in 2010, you must not use it, or try to build even more technical debt on top of that.

cvMean was replaced by cvAbs long before 2.2, so they cannot have used 2.4.5 even, ever.

berak gravatar imageberak ( 2017-11-02 06:53:18 -0500 )edit

The reason I said it doesn't explicitly state it is, in the documentation it only says that opencv is required but doesn't mention a version but a few lines later while going through the installation of opencv it says something like

"Decompress it in your home (for example) as follows:

tar zxvf opencv-2.4.5.tar.gz "

So I really had no way of knowing, thanks a lot for the heads up, it never even crossed my mind that the documentation was wrong. Would you consider making your comment an answer? Or should the accepted answer be cvMean's equivalent anyway?

Fevzi gravatar imageFevzi ( 2017-11-02 11:54:03 -0500 )edit

the accepted answer should be: either let it lay in its well deserved grave, or rewrite it, using the c++ api

berak gravatar imageberak ( 2017-11-02 11:59:32 -0500 )edit