OpenCv中的 C 结构 | OpenCV中的 C++ 封装 | Emgu.CV中的 C# 封装 |
---|---|---|
OpenCV 和 Emgu.CV 中的结构罗列 | ||
Basic Structures: main data structures used in opencv. | ||
CvPoint CvPoint2D32f CvPoint2D64f CvPoint3D32f CvPoint3D64f |
Point_<typename _Tp> Point3_<typename _Tp> Point_<int>(Point2i, Point) Point_<float>(Point2f) Point_<double>(Point2d) Point3_<float>(Point3f) Point3_<double>(Point3d) Point3_<int>(Point3i) |
System.Drawing.Point System.Drawing.PointF MCvPoint2D64f MCvPoint3D32f MCvPoint3D64f |
CvSize CvSize2D32f |
Size_<typename _Tp> Size_<int>(Size, Size2i) Size_<float>(Size2f) |
System.Drawing.Size System.Drawing.SizeF |
CvRect |
Rect_<typename _Tp> Rect_<int>(Rect) |
System.Drawing.Rectangle |
CvScalar (A container for 1-,2-,3-or4-tuples of doubles) |
Scalar_<typename _Tp> Scalar_<double>(Scalar) (:public Vec<_Tp, 4>) (Scalar is widely used to pass pixel values) |
MCvScalar |
CvBox2D | RotatedRect | MCvBox2D |
CvMat (A multi-channel dense matrix) – obsolete |
Mat | MCvMat MCvHistogram Matrix<TDepath>(wrapper) |
CvMatND (Multi-dimensional dense multi-channel array) – obsolete |
MCvMatND MatND<TDepth>(wrapper) |
|
IplImage | MIplImage Image<TColor, TDepth>(wrapper) |
|
CvSparseMat | SparseMat | SparseMatrix<TDepath>(wrapper) |
CvArr (“metatype”only used as function parameter) |
InputArray OutputArray |
CvArray<TDepth>(wrapper) |
CvTermCriteria (Termination criteria for iterative algorithms) |
TermCriteria | MCvTermCriteria |
Dynamic Structures: for creating growable sequences and other dynamic data structures allocated in CvMemStorage. If you use the new C++, Python, Java etc interface, you will unlikely need this functionality. Use std::vector or other high-level data structures instead. | ||
CvMemStorage | MemStorage | MemStorage(wrapper) |
CvMemBlock | ||
CvMemStoragePos | ||
CvSeq | Seq<typename _Tp> | MCvSeq Seq<T>(wrapper) |
CvSlice | Range | MCvSlice |
CvSet (derived from CvSeq) |
MCvSet | |
CvGraph (derived from CvSet) |
||
CvGraphScanner (used for depth-first graph traversal) |
||
CvTreeNodeIterator (used to traverse trees of sequences) |
||
Extra C++ Basic Structures: some basic structures in C++ version. | ||
Matx<typename _Tp, int m, int n> typedef Matx<float, 1, 2> Matx12f; typedef Matx<double, 6, 6> Matx66d; ... |
||
Vec<typename _Tp, int n> (:public Matx<_Tp, n, 1>) typedef Vec<uchar, 2> Vec2b; typedef Vec<short, 4> Vec4s; typedef Vec<int, 3> Vec3i; ...float,double... |
||
Ptr<typename _Tp> for smart reference-counting pointers |
||
MatExpr Matrix Expressions: (Mat A, B; Scalar s; double alpha)
|