其他分享
首页 > 其他分享> > OpenCV2:总结篇 core模块

OpenCV2:总结篇 core模块

作者:互联网

一.cv::Mat

1.作用

cv::Mat表示图像类,用来操作图像和矩阵,它包含很多属性和方法

 

2.构造方法

cv::Mat image;  //cv::Mat image()      无参数构造方法

cv::Mat image(int rows,int cols,int type);    
cv::Mat image(cv::Size size,int type);

cv::Mat image(int rows,int cols,int type,const cv::Scalar& s);
cv::Mat image(cv::Size size,int type,const cv::Scalar& s);

cv::Mat image(int rows,int cols,int type,void* data,size_t step=AUTO_STEP)
cv::Mat image(cv::Size size,in type,void* data,size_t step=AUTO_STEP)

cv::Mat image(const cv::Mat& m);  //image1=image;
cv::Mat image(const cv::Mat& m,const Rect& roi);

    CV_8UC1       灰度单通道图

              CV_16SC1

              CV_64FC4

 

3.成员函数

image.empty()
image.size().height
image.size().width
image.converTo(image2,CV_32F,1/255.0,0.0);
image.type();          
image.at<uchar>(int x,int y);
image.zeros()
image.ones()
image.eyes()

 

4.属性

image.data
image.rows  //像素总行数
image.cols  //像素总列数

 

二.翻转图像

1.cv::flip()

cv::flip(cv::Mat src,cv::Mat des,int i);  //用来翻转图像,正数表示水平翻转,0表示垂直翻转,负数表示既有水平翻转也有垂直翻转

cv::flip(image,result,1);

 

2.cvFlip()

 

三.数据

1.cv::Rect() / cv::Point() / cv::Scalar()

2.cvRect() / cvPoint() / cvScalar()

 

四.时间

1.cv::getTickCount() / cv::getTickFrequency()

2.cvGetTickCount() / cvGetTickFrequency()

 

五.拷贝图像

1.cv::Mat::CopyTo() / cv::Mat::clone()

2.cvCopy()

 

六.创建图像/销毁图像

1.cv::Mat::create() / cv::Mat::release()

2.cvCreateImage() / cvReleaseImage()

 

七.转化图像

1.cv::Mat.convertTo() 

2.cvConvert()

 

八.绘制图形

1.cv::circle() / cv::rectangle() / cv::line() / cv::polylines() / cv::fillPoly()

2.cvCircle() / cvRectangle() / cvLine() / cvPolyLine() / cvFillPoly()

 

标签:core,Mat,int,image,OpenCV2,模块,type,cv,size
来源: https://www.cnblogs.com/k5bg/p/11082451.html