EmguCV类CvInvokeClass 方法整理.docx

上传人:b****6 文档编号:7984550 上传时间:2023-01-27 格式:DOCX 页数:40 大小:34.37KB
下载 相关 举报
EmguCV类CvInvokeClass 方法整理.docx_第1页
第1页 / 共40页
EmguCV类CvInvokeClass 方法整理.docx_第2页
第2页 / 共40页
EmguCV类CvInvokeClass 方法整理.docx_第3页
第3页 / 共40页
EmguCV类CvInvokeClass 方法整理.docx_第4页
第4页 / 共40页
EmguCV类CvInvokeClass 方法整理.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

EmguCV类CvInvokeClass 方法整理.docx

《EmguCV类CvInvokeClass 方法整理.docx》由会员分享,可在线阅读,更多相关《EmguCV类CvInvokeClass 方法整理.docx(40页珍藏版)》请在冰豆网上搜索。

EmguCV类CvInvokeClass 方法整理.docx

EmguCV类CvInvokeClass方法整理

方法—相机标定

CalibrationMatrixValues

使用计算的相机校准矩阵,像素中的图像帧分辨率和物理孔径大小来计算各种有用的相机(传感器/透镜)特性

DrawChessboardCorners

棋盘格角点的绘制(摄像机标定)

Find4QuadCornerSubpix

找到棋盘角的亚像素精度的准确位置

FindChessboardCorners

尝试确定输入图像是否是棋盘图案的视图,并定位标定板内角点

FindCirclesGrid(Image,Size,CalibCgType,Feature2D)

找到圆圈网格中心

FindCirclesGrid(IInputArray,Size,IOutputArray,CalibCgType,Feature2D)

找到圆圈网格中心

GetDefaultNewCameraMatrix

返回默认的新相机矩阵

GetOptimalNewCameraMatrix

基于自由缩放参数返回新的相机矩阵

StereoCalibrate(IInputArray,IInputArray,IInputArray,IInputOutputArray,IInputOutputArray,IInputOutputArray,IInputOutputArray,Size,IOutputArray,IOutputArray,IOutputArray,IOutputArray,CalibType,MCvTermCriteria)

用于标定立体相机(Estimatestransformationbetweenthe2camerasmakingastereopair.Ifwehaveastereocamera,wheretherelativepositionandorientatationofthe2camerasisfixed,andifwecomputedposesofanobjectrelativetothefistcameraandtothesecondcamera,(R1,T1)and(R2,T2),respectively(thatcanbedonewithcvFindExtrinsicCameraParams2),obviously,thoseposeswillrelatetoeachother,i.e.given(R1,T1)itshouldbepossibletocompute(R2,T2)-weonlyneedtoknowthepositionandorientationofthe2ndcamerarelativetothe1stcamera.That'swhatthedescribedfunctiondoes.Itcomputes(R,T)suchthat:

R2=R*R1,T2=R*T1+T)

StereoCalibrate(MCvPoint3D32f[][],PointF[][],PointF[][],IInputOutputArray,IInputOutputArray,IInputOutputArray,IInputOutputArray,Size,IOutputArray,IOutputArray,IOutputArray,IOutputArray,CalibType,MCvTermCriteria)

用于标定立体相机

StereoRectify

计算每个摄像机的旋转矩阵(虚拟地)使两个摄像机图像平面处于相同的平面。

StereoRectifyUncalibrated

在不知道摄像头的固有参数和它们在空间的相对位置计算校正变换

方法—内外方位元素确定

CalibrateCamera(IInputArray,IInputArray,Size,IInputOutputArray,IInputOutputArray,IOutputArray,IOutputArray,CalibType,MCvTermCriteria)

估计每个视图的照相机固有参数和外部参数

CalibrateCamera(MCvPoint3D32f[][],PointF[][],Size,IInputOutputArray,IInputOutputArray,CalibType,MCvTermCriteria,Mat[],Mat[])

估计每个视图的照相机固有参数和外部参数

SolvePnPRansac

利用Ransac方法利用点对求解相机姿态

StereoRectify

计算每个摄像机的旋转矩阵(虚拟地)使两个摄像机图像平面处于相同的平面。

Undistort

转换图像以补偿径向和切向透镜失真

UndistortPoints

与cvInitUndistortRectifyMap相似但也不同,相似的内容是他们都可用于校正镜头失真和透视变换。

不同的是函数cvInitUndistortRectifyMap实际上执行的是反向转换以初始化地图,而这个函数执行的是正向变换。

方法—数组、矩阵运算

Add

数组相加

AddWeighted

数组权重相加

Add

数组相加

AddWeighted

数组权重相加

BitwiseAnd

计算两个数组的每元素的逐位逻辑连接:

dst(I)=src1(I)&src2(I)ifmask(I)!

=0。

所有数组必须具有相同的类型(除了掩膜)和大小

dst(I)=src1(I)&src2(I)

AbsDiff

计算两数组差值的绝对值

AccumulateSquare

对输入数据或其选中的ROI求和并平方(Addstheinputsrcoritsselectedregion,raisedtopower2,totheaccumulatorsqsum)

AccumulateWeighted

计算源数据的加权平均和,使得acc变为帧序列的运行平均值(Calculatesweightedsumofinputsrcandtheaccumulatoraccsothataccbecomesarunningaverageofframesequence:

acc(x,y)=(1-alpha)*acc(x,y)+alpha*image(x,y)ifmask(x,y)!

=0wherealpharegulatesupdatespeed(howfastaccumulatorforgetsaboutpreviousframes).

BitwiseOr

计算两个数组的每元素逐位分离(Calculatesper-elementbit-wisedisjunctionoftwoarrays)

dst(I)=src1(I)|src2(I)

CalcCovarMatrix

计算一组向量的协方差矩阵

cvClearND

清除(设置为零)密集数组的特定元素或删除稀疏数组的元素。

如果买没有元素,该函数不运行

cvSet2D

为数组的特定元素分配新值

Determinant

返回方阵矩阵的行列式。

Eigen

计算对称矩阵的特征值和特征向量

Exp

计算输入数组的每个元素的指数

dst(I)=exp(src(I))

FindFundamentalMat

使用四种方法之一计算基本矩阵,如果没有找到矩阵,则返回找到的基本矩阵(1或3)和0的数量

Gemm

执行广义矩阵乘法

dst=alpha*op(src1)*op(src2)+beta*op(src3),whereop(X)isXorXT

Flip

以不同的3种方式翻转数组(行和列索引为0)

Invert

反转矩阵src1并将结果存储在src2中

InvertAffineTransform

反转仿射变换

LUT

使用查找表中的值填充目标数组

Max

计算两个数组的每个元素最大值赋给新数组

dst(I)=max(src1(I),src2(I))

Min

计算两个数组的每元素最小值,赋值到新数组中

dst(I)=min(src1(I),src2(I))

MinMaxIdx

查找数组中全局的最大值最小值

MinMaxLoc

找到最小和最大元素值及其位置。

如果阵列有多个通道,则必须为IplImage,并设置COI。

MulTransposed

计算原始数据及其转置的乘积(Calculatestheproductofsrcanditstransposition.Thefunctionevaluatesdst=scale(src-delta)*(src-delta)^Tiforder=0,anddst=scale(src-delta)^T*(src-delta)otherwise.)

Norm(IInputArray,NormType,IInputArray)

返回计算的范数。

多通道阵列被视为单通道,即所有通道的结果相加。

Norm(IInputArray,IInputOutputArray,NormType,IInputArray)

返回计算的范数。

多通道阵列被视为单通道,即所有通道的结果相加。

Normalize

规范化输入数组

Randn(IInputOutputArray,IInputArray,IInputArray)

用正态分布的随机数填充数组

Randn(IInputOutputArray,MCvScalar,MCvScalar)

用正态分布的随机数填充数组

RandShuffle

将原数组(矩阵)打乱

Randu(IInputOutputArray,IInputArray,IInputArray)

返回均匀分布的随机数,填入数组或矩阵

Randu(IInputOutputArray,MCvScalar,MCvScalar)

返回均匀分布的随机数,填入数组或矩阵

SetIdentity

初始化标度单位矩阵

Sqrt

为源数据的每个数组元素开方。

多通道数据每个通道会被单独处理

Sum

对每个通道计算阵列元素的和S、

Sc=sumIarr(I)c

SVBackSubst

进行奇异值回代(Performsasingularvaluebacksubstitution.)

SVDecomp

SVD分解,将矩阵A分解为对角矩阵和两个正交矩阵的乘积

Swap(Mat,Mat)

交换两个矩阵

Swap(UMat,UMat)

交换两个矩阵

Trace

返回矩阵对角线元素之和

Transform

对src数组的每个元素进行矩阵变换,并将结果存储到dst中。

源数组和目标数据应该有相同的深度、尺寸或ROI的尺寸。

transmat和shiftvec应该是浮点型矩阵

Transpose

转置矩阵src1,在复矩阵的情况下,不进行复共轭。

dst(i,j)=src(j,i)

方法—头文件

cvGetCol

返回头文件信息(header),对应输入数组的指定列

cvGetCols

返回头文件信息,对应输入数组跨越的列数(colspan)

cvGetDiag

返回头文件信息,对应输入数组的指定对角线

cvGetImage

返回图像的头文件信息,输入数据类型可以是(matrix-CvMat*,orimage-IplImage*)

cvGetMat

返回输入矩阵的头文件信息,输入矩阵可以是matrix-CvMat,image-IplImage或multi-dimensionaldensearray-CvMatND*

cvGetRawData

以低级别信息填充输出变量。

cvGetRow

返回头文件信息,对应于输入数组的指定行。

cvGetRows

返回头文件信息,对应输入数组的指定行跨度。

cvGetSubRect

返回头文件,对应于输入数组的指定矩形。

换句话说,它允许用户将输入阵列的一部分视为独立阵列。

通过还可提取ROI的子阵列。

cvInitImageHeader

初始化图像的头文件结构,指针指向由用户指定,并返回指针。

(Initializestheimageheaderstructure,pointertowhichispassedbytheuser,andreturnsthepointer.)

cvReleaseImage

释放头文件和图像数据(Releasestheheaderandtheimagedata.)

cvReleaseImageHeader

释放头文件

cvReleaseMat

参照计数器递减矩阵数据,并释放头文件

cvReshape

初始化CvMat头文件,使其指向与原始数组相同的数据,但形状不同,数量的通道不同,行列数不同

cvSetData

将用户数据分配给矩阵头文件

cvCreateMat

为新矩阵和底层数据分配头信息(header),并返回一个指向创建的矩阵的指针。

矩阵逐行存储。

所有行都对齐4个字节。

cvCreateImage

创建头文件并分配数据

方法—图像处理准备

BitwiseNot

反转

CheckRange

检查每个数组元素既不是NaN也不是+-inf,检查将在多个通道上单独进行,该功能还能检查每个值是否在最小值和最大值之间。

CLAHE

对比有限自适应直方图均衡(CLAHE)

Compare

比较两个数组的相应元素并填充目标掩码数组:

dst(I)=src1(I)opsrc2(I)

CountNonZero

返回数组中非零元素的数量

cvCheckArr

检查每个数组元素既不是NaN也不是Infinity。

如果设置了CV_CHECK_RANGE,它还会检查每个元素是否大于或等于minVal并小于maxVal

cvCreateSparseMat

分配一个多维系数矩阵的阵列。

初始该矩阵不含任何元素

cvGetSize

返回输入矩阵或图像的行列数

CvtColor(IInputArray,IOutputArray,ColorConversion,Int32)

将输入图像从一个颜色空间转换为另一个。

该函数忽略IplImage头的colorModel和channelSeq字段,因此应该正确指定源图像颜色空间(包括RGB空间的通道顺序,例如BGR表示B0的24位格式G0R0B1G1R1...布局,而RGB表示具有R0G0B0R1G1B1...布局的24位格式)

CvtColor(IInputArray,IOutputArray,Type,Type)

将输入图像从一个颜色空间转换为另一个。

EqualizeHist

直方图均衡化

ExtractChannel

从图像中提取特定通道

GetDepthType(Type)

获取相应的opencv深度类型

GetDepthType(DepthType)

获取相应的深度类型

Inpaint

使用补绘来恢复该图像定义位置像素的亮度

InRange

对输入数组的每个元素执行范围检查

MixChannels

把输入的矩阵(或矩阵数组)的某些通道拆分复制给对应的输出矩阵(或矩阵数组)的某些通道中,可用于更改通道的顺序,添加/删除Alpha通道,提取或插入单个通道或多个通道等。

Resize

将图像src调整到指定大小

ResizeForFrame

调整图像大小,使其适合给定的框架

Split

将多通道阵列划分为单独的单通道阵列。

有两种模式可用于操作。

如果原始阵列具有N个通道,那且前N个目标通道不是IntPtr.Zero,则它们都从源阵列中提取,若前N个通道中仅有一个不是IntPtr.Zero,则该特定通道为提取,否则会出现错误

方法—常规方法

BoundingRectangle

返回右上角点

Accumulate

整幅图像或选择区域累加

ApplyColorMap

将颜色应用于图像

BoxPoints(RotatedRect)

计算RotatedRect节点(RotatedRect该类表示平面上的旋转矩形,有三个属性:

矩形中心点(质心)、边长(长和宽)、旋转角度)

BoxPoints(RotatedRect,IOutputArray)

计算RotatedRect节点数组

CalcHist

计算图像的直方图

CalcMotionGradient

计算x,y方向的导数

CompareHist

比较两直方图

ConvertMaps

转换图像的表达方法

ConvertPointsFromHomogeneous

将点从齐性空间转换为欧氏空间

ConvertPointsToHomogeneous

将点从欧式空间转换为齐性空间

ConvertScaleAbs

与cvCvtScale类似,但它存储转换结果的绝对值。

使用线性变换转换输入数组元素成8位无符号整型

ConvexHull(PointF[],Boolean)

使用Sklansky算法找到2D点集的凸包

ConvexHull(IInputArray,IOutputArray,Boolean,Boolean)

使用Sklansky算法找到2D点集的凸包。

ConvexityDefects

找出轮廓的凸度缺陷

链接

CopyMakeBorder

将源2D数组复制到目标数组的内部,并在复制的区域周围形成指定类型的边框。

当需要模拟与嵌入到特定算法实现中的边框类型不同的边框类型时,该功能非常有用。

CvArrToMat

将CvMat、Ipiimage、CvMatND转换为矩阵

cvConvertScale

它将一个数组复制到另一个数组,首先执行缩放(可选)然后转换类型(可选),多通道阵列每个通道被单独处理。

dst(I)=src(I)*scale+(shift,shift,...)

cvCopy

将所选元素从输入数组复制到输出数组。

如果任何传递的数组是IplImage类型,则使用其ROI和COI字段。

两个数组必须具有相同的类型,相同的维数和相同的大小。

dst(I)=src(I)ifmask(I)!

=0

cvGetSpatialMoment

获取空间矩,在图像矩定义为:

M_{x_order,y_order}=sum_{x,y}(I(x,y)*x^{x_order}*y^{y_order})其中I(x,y)是像素的亮度(x,y)。

(Retrievesthespatialmoment,whichincaseofimagemomentsisdefinedas:

M_{x_order,y_order}=sum_{x,y}(I(x,y)*x^{x_order}*y^{y_order})whereI(x,y)istheintensityofthepixel(x,y).)

cvGetNormalizedCentralMoment

检索归一化的中心矩,在图像矩定义为:

eta_{x_order,y_order}=mu_{x_order,y_order}/M00^{(y_order+x_order)/2+1}的情况下,其中mu_{x_order,y_order}是中心时刻(Retrievesnormalizedcentralmoment,whichincaseofimagemomentsisdefinedas:

eta_{x_order,y_order}=mu_{x_order,y_order}/M00^{(y_order+x_order)/2+1},wheremu_{x_order,y_order}isthecentralmoment)

cvGetReal1D

返回单通道数组的特定元素。

如果阵列有多个通道,则会引发运行时错误。

cvGetReal2D

返回单通道数组的特定元素。

如果阵列有多个通道,则会引发运行时错误。

cvGetReal3D

返回单通道数组的特定元素。

如果阵列有多个通道,则会引发运行时错误。

cvGetImageCOI

返回图像感兴趣通道(若所有通道已选返回0)

cvGetImageROI

返回图像感兴趣通道(若所有通道已选返回0)

cvGetCentralMoment

检索中心矩?

(moment),在图像中定义为mu_{x_order,y_order}=sum_{x,y}(I(x,y)*(x-x_c)^{x_order}*(y-y_c)^{y_order})

其中x_c=M10/M00,y_c=M01/M00-重心的坐标

cvGetImageCOI

返回图像感兴趣通道(若所有通道已选返回0)

cvGetImageROI

返回图像感兴趣通道(若所有通道已选返回0)

cvInitMatHeader

初始化已分配的CvMat结构。

它可以用于使用OpenCV矩阵函数处理原始数据。

cvInitMatNDHeader

初始化由用户分配的CvMatND结构

cvMaxRect

查找包含两个输入矩形的最小面积矩形

cvRange

以如下方式初始化矩阵:

arr(i,j)=(end-start)*(i*cols(arr)+j)/(cols(arr)*rows(arr))

cvReleaseSparseMat

释放稀疏数组,并在退出时清除数组指针

cvResetImageROI

释放图像ROI。

之后整幅图像为被选中状态

cvSampleLine

应用一种线迭代器。

读取位于pt1和pt2之间的所有图像点(包括终点)并将它们存储到缓冲区

cvSetImageCOI

是设置图像的COI的函数,coi为0时表示选择所有通道,1表示第一个通道,2表示第二个等等。

cvSetImageROI

基于给定的矩形设置图像的ROI

cvSetReal1D

将新值分配给单通道阵列的特定元素

cvSetReal2D

将新值分配给单通道阵列的特定元素

cvSetReal3D

将新值分配给单通道阵列的特定元素

cvSetRealND

将新值分配给单通道阵列的特定元素

Decolor

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1