OpenCV-记录01:API函数总结

OpenCV-记录01:API函数总结

Harris角点检测

c++:void cornerHarris(InputArray src,OutputArray dst,int blockSize,
                     int kSize,double k,int borderType=BORDER_DEFAULT);
/***************************************************************
 *@src:单通道的输入图像
 *@dst:用于存放Harris角点检测的输出结果,和原图像有一样的尺寸和类型
 *@blockSize:临域的大小
 *@kSize: Sobel()算子孔径的大小
 *@k:Harris参数
 *@borderType:图形像素的边界模式
****************************************************************/
//--[示例]
#include 
#include 
using namespace std;
int main()
{
     
	//加载灰度图
	Mat srcImg=imread("文件路径",0);
	imshow("srcImg",srcImg);
	//进行Harris角点检测
	Mat stdImg;
	cornerHarris(srcImg,stdImg,2,3,0.01);
	//对灰度图进行阈值操作
	threshold(stdImg,stdImg,0.0001,255,THRESH_BINARY);
	imshow("stdImg",stdImg);
	waitKey(0);
	return 0;
}

Shi-Tomasi角点检测

c++: void goodFeaturesToTrack(InputArray image,OutputArray corners,int maxCorners,double qualityLevel,double minDistance,IputArray mask=noArray(),int blockSize=3,bool useHarrisDetector=false,double k=0.04)
/**********************************************************************
 *@image 输入图像,单通道
 *@corners:检测到的角点输出向量
 *@maxCorners:角点的最大数量
 *@qualityLevel:角点检测可接受的最小特征值
 *@minDistance:角点之间的最小距离
 *@mask:可选参数 感兴趣区域
 *@blockSize:计算导数自相关矩阵时指定的临域范围
 *@useHarrisDetector:是否使用Harris角点检测
 *@k:设置Hessian自相关矩阵行列式的相对权重系数

reshape()

既可以改变图片的通道数,又可以对图片元素进行序列化
函数原型:

c++:Mat Mat::reshape(int cn,int rows=0) const
/****************************************************************
* cn:表示通道数(channels),0表示通道数不变
* rows:表示矩阵的行数,0表示原有的行数不变
* ***************************************************************

计时函数

getTickCount()函数返回CPU自某个时间以来走过的时钟周期
getTickFrequency() 函数返回CPU一秒所走的时钟周期
实例:

double time0=static_cast(getTickCount());//记录起使时间
/***********进行图像处理操作***************************/
time0=((double)getTickCount()-time0)/getTickFrequency();
cout<<"代码运行时间为:"<<time0<<"秒"<<endl;//输出运行时间

convertTo()函数

功能:把一个矩阵从一种数据类型转换到另一种数据类型,同时可以带上缩放因子和增量
原型:

void Mat::convertTo(Mat &m,int rtype,double alpha=1,double beta=0) const ;
/*************************************************************************
* m:目标矩阵,如果m的大小与原矩阵不一样,或者数据类型与参数不匹配,那么在函数converTo内部会先给m从新分配空间
* rtype:转换后的数据类型,若为负数,m的数据类型与原矩阵一致。矩阵m的通道数与原矩阵的一样
* alpha:缩放因子
* beta:增量

你可能感兴趣的:(c++,计算机视觉)