Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
542 views
in Technique[技术] by (71.8m points)

opencv - Difference between cvMat, Mat and IpImage

I'm trying to discover opencv library at the moment, but it seems a bit messy with the data structures. so there's cv::Mat, cvMat and IpImage, and different examples to each. I understand that there has been a migration for opencv from C to C++, and then major changes done to version 2.4.
So which one of these data structure is recommended, and generally are there any documentation like an opencv programmers guide explaining the recommended data structure and how this code migration happened (I'm not asking about the code api or the tutorials page)

Many thanks

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

cv::Mat is the c++ version of cvMat, they are identical and if you look through the code you will see that the c++ version just goes to the c code. If you use C++ use cv::Mat.

C doesn't have namespaces so you have the kludge of putting cv in front of each function name so it doesn't clash with other library

IpImage is the old Intel IPP compatible image format. You should never need to use it, but if you are working with some other old library there are function to convert between them.

Start at Welcome to opencv documentation for the new documentation

(OpenCV has been through a few re-orgs and the old websites have all stayed up confusing matters. From now on hopefully everything is under http://opencv.org/)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...