Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

OpenCV3.0 migration guide?

Hi all,

I installed CV2, got some demos working, then decided to try CV3 when I found an interesting one that depended on it. CV3 installed and the new demo works but now (HA!) the old ones are broke. I gather there are significant changes in the API and a lot of legacy support is gone. Does anyone have a list of what is gone and what replaces it? Other things I should know for a successful migration?

In case there is no better answer, I know O'Reilly has a second edition of their OpenCV book for 3.0 coming out end of April. Hopefully that will highlight changes but I don't want to wait.

For what it matters, I'm working in C++ under VS13.

Thanks

OpenCV3.0 migration guide?

Hi all,

I installed CV2, got some demos working, then decided to try CV3 when I found an interesting one that depended on it. CV3 installed and the new demo works but now (HA!) the old ones are broke. I gather there are significant changes in the API and a lot of legacy support is gone. Does anyone have a list of what is gone and what replaces it? Other things I should know for a successful migration?

In case there is no better answer, I know O'Reilly has a second edition of their OpenCV book for 3.0 coming out end of April. Hopefully that will highlight changes but I don't want to wait.

For what it matters, I'm working in C++ under VS13.

Thanks

Update: an example of the gotchas I've found. imwrite, according to this 3.0.0 API ref, supports a number of parameters including CV_IMWRITE_JPEG_QUALITY. The 'CV_' prefix kills it...apparently points back to an obsolete C header, imgcodecs_c.h. Point is, removing 'CV_' is proper (works anyway) for CV3. The example code farther down has the same problem.

What makes it hard to find is that the enumeration exists, just isn't #INCLUDEed ... because it shouldn't be. It would be better if the deprecated header didn't exist. I installed from the .zip file so I don't think I grabbed stuff I shouldn't have.

I did check the references in the answers (thanks again), but didn't see/understand if there a list of these kinds of things, should there be?