Opencv344函数分析(由于学习阶段本章内容五天更新一次)

imread(const string&filename,int flap): 读取文件
	filename:图文件名称
	flags: 读取方式
	**OpenCV可读取文件种类
	·BMP:Windows位图文件
	·PBM,PGM,PPM:可移植图文件格式
	·SR、RAS:Sun的图文件格式
	·JPEG、JPG、JPE:JPEG图文件格式
	·TIFF、TIF:TIFF图文件格式
	·PNG:可以移植网络图文件格式
	**读取方式
	CV_LOAD_IMAGE_UNCHAGED:原始文件状态读取 数值大于0
	CV_LOAD_GRAYSCALE:黑白方式读取,数值等于0
	CV_LOAD_COLOR:彩色方式读取,数值大于0
	
	
namedWindow(const string&winname,int flags) :建立要显示图文件的窗口
	winname:窗口名称,也可以表示同时建立多个窗口,再以名称区分
	flags有以下几种选择
	·WINDOW_AUTOSIZE:窗口大小不可改变,会按照图文件的大小自动调整
	·WINDOW_NOMAL:窗口大小可以改变,必须是使用Qt开发
	·WINDOW_OPENGL:设置支持OpenGL
	·CV_WINDOW_NORMAL:重新建立对OpenCL的支持,窗口随意放大图片不会失真
	
	
imshow(const string&winname,inputArray mat):显示窗口
	winname:窗口名称
	Mat:图文件所声明的矩阵参数
	
	
waitKey():等待按键 毫秒为单位

rectangle(Mat& img,Point pt1,Point pt2,const Scalar&color,int thickness=1,int lineType=8,int shift=0):绘制矩形
rectangle(Mat&img,Rect rec,const Scalar &color,int thickness=1,int linetype=8,int shift=0):绘制矩形
	img:要绘制矩形所在的图像
	pt1:矩形的顶点
	pt2:矩形pt1的对角的顶点
	color:矩形的颜色
	thickness:矩形线的厚度
	lineType:矩形线的格式
	shift:点坐标内的部分参数
	rec:要绘制的矩形内容
	

ellipse(Mat& img,Point center,Size axes,double angle,double startAngle,double endAngle,const Scalar&color,
	      int thickness=1,int lineType=8,int shift =0);//绘制椭圆
ellipse(Mat& img,const RotateRect&box,const Scalar&color,int thickness=1,int lineType=8)
	img:要绘制椭圆的图像
	center:椭圆圆心
	axes:椭圆主轴的一半
	angle:椭圆旋转角度读书
	startAngle:椭圆弧度起始角度
	endAngel:椭圆弧度结束角度
	color:椭圆的颜色
	thickness:椭圆弧线的厚度
	lineType:绘制椭圆线的形态:(8,4,CV_AA LINE_AA)
	shift:椭圆心与主轴坐标的部分位数
	Box:椭圆外围矩形
	
	
circle(Mat& img,Point center,int radius,const Scalar &color,int thickness=1,int lineType=8,int shift=0)//绘制圆
	img:要绘制圆的图形
	center:圆的圆心
	radius:圆的半径
	color:圆的颜色
	thickness:圆线的厚度
	lineType:绘制圆线的形态
	shift:圆心与轴值坐标的部分位数

fillPoly(Mat&img,const Point**pts,const int * npts,int ncontours,const Scalar&color,int lineType=8,int shift=0,
	      Point offset=Point())多边形围绕区域填满
	img:填满区域所在的图像
	pts:多边形数组,数组内容是多边形点的数组
	npts:多边形定点数数组
	ncontours:填满区域的轮廓数目
	color:多边形颜色
	lineType:多边形边的形态
	shift:顶点坐标的部分位数
	offset:轮廓的位移点

line(Mat& img,Point pt1,Point pt2,const Scalar&color,int thickness=1,int lineType=8, int shift=0)绘制直线
	img:绘制直线所在的图像
	pt1:直线起点
	pt2:直线终点
	color:颜色
	thickness:直线厚度
	lineType :直线形态
	shift:点坐标内的部分位数
polylines(Mat&img,const Point**pts,const int *npts,int ncontours,bool isClosed,const Scalar&color,
		Int thickness=1,int lineType=8,int shift=0):绘制多边形曲线
	img:图像
	pts:多边形曲线点的数组
	npts:多边形曲线顶点数的数组
	ncontours:曲线数
	isClosed:表示是否为封闭多边形
	colory:颜色
	thickness:曲线厚度
	lineType:曲线形态
	shift:坐标部分位数

cvtColor(InputArray src,OutputArray dst,int code,int dstCn=0):图像颜色空间转换
	src:输入图像
	dst:目标图像
	code:颜色转换空间种类
	dstCn:输出图像通道数,如果为0则有输入图像src和code自动获取

imwrite(cosnt string&filename,InputArray img):存储图像
	filename:要存储的文件名
	img:要存储的图像
	
addweight(inputArray src1,double alpha,inputArray src2,double beta,double gamma,outputArray dst,intdtype=-1)以权重将两图重合
	Src1:要相加的第一个图文件
	Alpha:第一个图文件的权重
	Src2:要想加的第二个图文件
	Beta:第二个图文件的权重
	Dst:两个图文件的相加的结果的图文件
	Dtype:相加结果图的景深,此参数可有可无
resize(InputArray src,outputArray dst,Size dsize, double fx=0,double fy=0,int interpolation=INTER_LINEAR):改变图像大小
	Src:输入图像
	Dst:输出图像
	Dsize:输出图像大小,如果等于0 则 dsize=Size(round(fx*src.cols),round(fy*src.rows)) fx,fy不为0
	fx:水平缩放因子
	fy:垂直缩放因子
	interpolation:差值方式
	·INTER_NEAREST: 最靠近周围差值法
	·INTER_LINEAR:双线性差值
	·INTER_AREA:用像素关系区再取样差值
	·INTER_CUBIC:在4x4像素附近用双立方差值
	·INTER_LANCZOS4:在8x8像素附近使用Lanczos差值
Rng(uint64 state)产生随机数
	state:起始数值的64位值

Size getTextSize(const string&text,int fontFace,double fontScale,int thickness,int *baseLine):设置文字长宽
	text:文字
	fontFace:字体
	fontScale:字体大小
	thickness:笔画粗细
	baseLine:文字底线y坐标

putText(Mat &img,const string&text,Point org,int fontFace,double fontScale,Scalar color,int thickness 
		Int lineType,bool bottomLeftOrigin)
	img:图片
	text:文字
	org:文字在图中的左下角
	fontFace:字体   FONT_HERSHEY_
	fontScale:大小
	color:颜色
	thickness:笔划粗细
	lineType:文字形态
	bottomLeftOrigin:参数可选。起点是否在左下角,否则在又上角

int getOptimalDFTSize(int versize)// 由输入想浪取得最佳的DFT大小
	versize //输入的向量大小

copyMakeBorder(InputArray dst,OutputArray dst,int top, int bottom, int left, int right, int borderType, const Scalar(&value=Scalar())
	src 原始图
	dst 输出图
	top 向上扩展的像素数
	bottom 向下扩展的像素数
	left 向左扩展的像素数
	right 向右扩展的像素数目
	borderType 边框类
	value 边框值

dft(InputArray src,OutputArray dst,int flags=0,int nonzeroRows=0):离散傅里叶变换
	src 原始图
	dst 结果图
	flags 转换标志

magnitude(InputArray x,OutputArray y,OutputArray magnitude) 计算二维向量的级数
	x 向量x坐标的浮点数组
	y 向量y坐标的浮点数组
	magnitude 输出数组

log(InputArray src,OutputArray dst) 对数运算
	src 输入图
	dst 输出图

normalize(InputArray src,OutputArray dst,double alpha=1,double beta=0,int norm_type=NORM_L2,int dtype=-1,InputArray mask=noArray()) 数组值矩
	src 输入图
	dst 输出图
	alpha 基准正常化
	beta 范围正常化的较高范围边界值
	norm_type 正常化类型
	dtype 负值 输出与输入有相同的类型,非负值,输出和输入有相同的通道和深度
	mask 可有可无的遮罩值

createTrackBar(const string &trackbarname,const string& winname,int *value,int count,TrackbarCallback onChange=0,void *yserdata=0):窗口滑块
	trackbarname 滑块名称
	winname 呈现的窗口名称
	value 滑块所在位置的值
	count 滑块的最大值
	onChange 示例处理函数
	userdata 要传入处理滑块函数的值

absdiff(InputArray src1,InputArray src2,OutputArray dst):计算两图差异的绝对值
	src1 第一个输入图或者Scalar颜色
	src2 第二个输入图或者Scalar颜色
	dst 结果图

GaussianBlur(InputArray src,OutputArray dst,Size ksize,double sigmaX,double sigmaY=0,int borderType=BORDER_DEFULT) 高斯滤波平滑图像
	src 输入图
	dst 输出图
	ksize 核心大小
	sigmaX 高斯X的方向核心标准差
	sigmaY 高斯Y的方向核心标准差
	borderType 像素外推边界类型

Add(inputArray src1,inputArray src2,outputArray dst,inputArray mask=noArray(),int dtype=-1):计算两个图像或者颜色值相加
	src1:第一个图像或者颜色值
	src2:第二个图像或者颜色值,与第一个图像相同
	dst:输出图像
	mask:掩码,可有可无
	dtype:输出图像景深,可有可无

blur(InputArray src,OutputArray dst,Size ksize,Point anchor=Point(-1,-,1),int borderType=BORDER_DEFAULT) 归一化方格滤波器平滑图像
	src 输入图
	dst 输出图
	ksize 核大小
	anchor 锚点
	borderType 像素外推

medianBlur(InputArray src,OutputArray dst,int ksize) 平均滤波器模糊图像
	src 输入图
	dst 输出图
	ksize 光圈线性大小 大于1的奇数

bilateralFilter(InputArray src,OutputArray dst,int d,double sigmaColor,double sigmaSpace,int borderType=BORDER_DEFAULT) 左右对称滤波图像
	src 输入图像
	dst 输出图
	d 每个像素临近地区的直接
	sigmaColor 颜色空间内的滤波器标准差
	sigmaSpcae 坐标空间内的滤波器标准差
	borderType 像素外推边缘的类型

Mat getStructingElement(int shape,Size ksize,Point anchor=Point(-1,-1)):返回结构性元素
	shape 元素形状 长,椭圆,十字
	ksize 结构性元素大小
	anchor 锚点位置

erode(InputArray src,OutputArray dst,InputArray kernel,Point anchor,int iterations,int borderType, const Scalar&borderValue) 腐蚀
	src 输入图
	dst 输出图
	kernel 腐蚀图像的结构性元素
	anchor 锚点
	iterations 腐蚀次数
	borderType 外推边界类型
	borderValue 边缘的值

dilate(InputArray src,OutputArray dst, InputArray kernel,Point anchor=Point(-1,-1) int iterations=1,int borderType=BORDER_CONSTANT,
		const Scalar& borderValue=morphologyDefalutBorderValue()) 膨胀图像
	src 原始图
	dst 输出图
	kernel 结构元素
	anchor 锚点
	iterations 膨胀次数
	borderType 外推边缘类型
	borderValue 边缘的值

morphologyEx(InputArray src,OutputArray dst, int op,InputArray kernel,Point anchor=Point(-1,-1),int iterations=1,int borderType=BORDER_CONSTANT,
		const Scalar&borderValue=morphologyDefaultBorderValue())高级形态变化
	src 输入图
	dst 输出图
	op 形态运算类型 
	kernel 结构元素
	anchor 锚点
	iterations 膨胀次数
	borderType 外推边缘类型
	bordeValue 边缘的值

pyrUp(InputArray src,OutputArray dst,const Size& dstsize=Size(),int borderType=BORDER_DEFAULT) 向上取样并模糊化 放大
	src 输入图
	dst 输出图
	dstsize 输出图像大小
	borderType 像素外推边缘类型
pyrDown(InputArray src,OutputArray dst,const Size& dstsize=Size(),int borderType=BORDER_DEFAULT) 向下取样模糊化 缩小
 	src 输入图
	dst 输出图
	dstsize 输出图像大小
	borderType 像素外推边缘类型

filter2D(InputArray src,OutputArray dst,int ddepth,InputArray kernel,Point anchor=Point(-1,-1) double beta=0,int borderType )用核作卷积
	src 输入图
	dst 输出图
	ddepth 输入图像的深度
	kernel 卷积处理核值
	anchor 核的锚点
	delta 增加到每个像素的值
	borderType 像素外推

Scharr(InputArray src,OutputArray dst,int ddepth,int dx,int dy,double scale=1,double delat=0,int borderType=BORDER_DEFAULT) 计算图像X或Y轴算子值
	src 输入图
	dst 输出图
	ddepth 输出图像深度
	dx X轴算子
	dy Y轴算子
	scale 计算算子值的缩放因子
	delta 输出图像的差异值
	borderType 边缘形态

Soble(InputArray src, OutputArray dst,int ddepth,int dx,int dy, int ksize=3,double scale=1,double delta=0,int borderType=BORDER_DEFAULT) 计算第一第二,第三或混合的图像算子
	src 输入图
	dst 输出图
	ddepth 输出图像深度
	dx X轴算子
	dy Y轴算子
	ksize Sobel核大小 1,3,5,7
	scale 计算算子值的缩放因子
	delta 输出图像的差异值
	borderType 边缘形态
converScaleAbs(InputArray src,OutputArray dst,double alpha=1,double beta=0)计算绝对值 并将结果转换成8位
	src 输入图
	dst 输出图
	alpha 缩放因子
	beta 缩放值的差异值

Laplacian(InputArray src,OutputArray dst,int ddepth,int ksize=1,double scale=1,double delta=0,int borderType=BORDER_DEFAULT) 拉普拉斯运算
	src 输入图
	dst 输出图
	ddepth 图像深度
	ksize 第二算字光圈大小
	scale 拉普拉斯缩放因子
	delta 输出图像的差异值
	borderType 边缘类型

canny(inputArray image,OutputArray edges,double threshold1,double threshold2,int apertureSize=3,bool L2gradient=false) 寻找图像边缘
	image 输入图
	edges 输出的边缘图
	threshold1 滞后程序的第一个阈值
	threshold2 滞后程序的第二个阈值
	apertureSize Sobel运算的光圈大小
	L2gradient 是否更精准的标志

HoughLines(InputArray image,OutputArray lines,double rho,double theta,int threshold,double srn=0,double stn=0) 用霍夫变换在二元图像中寻找线
	image 输入图
	lines 输出线的向量值
	rho 像素中距离解析的累加器
	theta 累加器的角解析的弧度
	threshold 累加器的阈值参数
	srn 多级别霍夫变换,距离解析rho的除数
	stn 多级别霍夫变换,角解析theta的除数

HoughLinesP(InputArray image,OutputArray lines,double rho,double theta,int threshold,double minLineLength=0,double maxLineGap=0):概率的霍夫变换二元图像寻找线
	image 输入图像
	lines 输出线的向量值
	rho 像素中距离解析的累加器
	theta 累加器的角解析弧度
	threshold 累加器的阈值参数
	minLineLength 线的最小长度
	maxLineGap 线中两点间允许的最大间隔
HouhjCircles(InputArray image,OutputArray circles,int method,doubel dp,double minDist,double param1=100,double param2=100,int minRadius=0,int maxRadius=0)霍夫圆检测
	image,输入灰度图
	circles 找到圆的输出向量(x,y,r)
	method 检测方法
	dp 累加器解析对图像解析的反向比 1相同,2一半
	minDist 检测到的圆心最小距离,
	param1 指定方法的第一个参数
	param2 指定方法的第二个参数
	minRadius 圆的最小半径
	maxRadius 圆的最大半径

remap(InputArray src,OutputArray dst,InputArray map1,InputArray map2,int interpolation,int boderMode=BORDER_CONSTANT,const Scalar &borderValue=Scalar())几何变换
	src 原图
	dst 结果图
	map1 第一个图
	map2 第二个图
	interpolation 插值法
	borderMode 像素外推
	borderValue 固定边缘的值
Mat getAddineTransform(InputArray src,InputArray dst) 放射变换
	src 原图像三角形顶点坐标
	dst 变换结果图像对应的三角形顶点坐标

Mat getRotationMatrix2D(Point2f center,double angle,double scale):2D旋转的Affine矩阵
	center 源图像的旋转中心
	angle 旋转角度 正值反时针旋转 坐标远点左上角
	scale 灯箱缩放因子

warpAffine(InputArray src,OutputArray dst,InputArray M,Size dsize,int flags=INTER_LINEAR,int borderMode=BORDER_CONSTANT,const Scalar&borderValye=Scalar()) 放射变换
	src 输入图象个
	dst 输出图像
	M 2x3变换矩阵
	dsize 输出图像大小
	flags 像素外推组合
	bordeMode 边缘外推的模式
	bordeValue 固定边缘的值


	

	





 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值