您现在的位置是:首页 > 教程 > Opencv2.31速查表
推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

Opencv2.31速查表

更新时间:2019-09-21 08:20:36 大小:144K 上传用户:杨义查看TA发布的资源 标签:opencv 下载积分:0分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

文档为Opencv2.31速查表详解文档,是一份不错的参考资料,感兴趣的可以下载看看,,,,,,,,,,,,,

部分文件列表

文件名 大小
Opencv2.31速查表.pdf 144K

部分页面预览

(完整内容请下载后查看)
A33.at<float>(i,j) = A33.at<float>(j,i)+1;  
Mat dyImage(image.size(), image.type());  
for(int y = 1; y < image.rows-1; y++) {  
Vec3b* prevRow = image.ptr<Vec3b>(y-1);  
Vec3b* nextRow = image.ptr<Vec3b>(y+1);  
for(int x = 0; y < image.cols; x++)  
for(int c = 0; c < 3; c++)  
OpenCV 2.3 Cheat Sheet (C++)  
Use Quick Search to find descriptions of the particular  
functions and classes  
– correspondingly, addition, subtraction, element-wise  
multiplication ... comparison of two matrices or a  
matrix and a scalar.  
Example. function:  
void alphaCompose(const Mat& rgba1,  
const Mat& rgba2, Mat& rgba dest)  
{
OpenCV Classes  
dyImage.at<Vec3b>(y,x)[c] =  
saturate cast<uchar>(  
Template 2D point class  
Template 3D point class  
nextRow[x][c] - prevRow[x][c]);  
}
Template size (width, height) class  
Template short vector class  
Template small matrix class  
4-element vector  
Rectangle  
Integer value range  
2D or multi-dimensional dense array  
(can be used to store matrices, images,  
histograms, feature descriptors, voxel  
volumes etc.)  
Mat a1(rgba1.size(), rgba1.type()), ra1;  
Mat a2(rgba2.size(), rgba2.type());  
int mixch[]={3, 0, 3, 1, 3, 2, 3, 3};  
mixChannels(&rgba1, 1, &a1, 1, mixch, 4);  
mixChannels(&rgba2, 1, &a2, 1, mixch, 4);  
subtract(Scalar::all(255), a1, ra1);  
bitwise or(a1, Scalar(0,0,0,255), a1);  
bitwise or(a2, Scalar(0,0,0,255), a2);  
multiply(a2, ra1, a2, 1./255);  
multiply(a1, rgba1, a1, 1./255);  
multiply(a2, rgba2, a2, 1./255);  
add(a1, a2, rgba dest);  
Mat <Vec3b>::iterator it = image.begin<Vec3b>(),  
itEnd = image.end<Vec3b>();  
for(; it != itEnd; ++it)  
(*it)[1] ^= 255;  
Matrix Manipulations: Copying,  
art Access  
one  
Scale and convert to  
Multi-dimensional sparse array  
Template smart pointer class  
another datatype  
}
Matrix Basics  
Create a matrix  
Mat image(240, 320, CV 8UC3);  
[Re]allomatrix  
480, 640, CV 8UC3);  
Make deep copy of a matrix  
Change matrix dimensions and/or num-  
ber of channels without copying data  
a matrix row/column  
Take a matrix row/column span  
Create a matrix initialized with a constant  
Mat A33(3, 3, CV 32F, Scalar(5));  
ake a matrix diagonal  
Take a submatrix  
Mat B33(3, 3, CV 32F); B33 = Scalar(5);  
Mat C33 = Mat::ones(3, 3, CV 32F)*5.;  
Mat D33 = Mat::zeros(3, 3, CV 32F) + 5.;  
Create a matrix initialized with specified values  
double a = CV PI/3;  
Make a bigger matrix from a smaller one  
Reverse the order of matrix rows and/or  
columns  
class.  
Mat A22 = (Mat <float>(2, 2) <<  
cos(a), -sin(a), sin(a), cos(a));  
– discrete Fourier and cosine transformations  
Split multi-channel matrix into separate  
channels  
Make a multi-channel matrix out of the  
separate channels  
For some operations a more convenient can  
be used, for example:  
float B22data[] = {cos(a), -sin(a), sin(a), cos(a)};  
Mat B22 = Mat(2, 2, CV 32F, B22data).clone();  
a random matrix  
Scalar(0), Scalar(256)); // uniform dist  
Scalar(128), Scalar(10)); // Gaussian dist  
Convert matrix to/from other structures  
(without copying the data)  
Mat delta = (J.t()*J + lambda*  
Mat::eye(J.cols, J.cols, J.type()))  
.inv(CV SVD)*(J.t()*err);  
Generalized form of split() and merge()  
Randomly shuffle matrix elements  
Example 1. Smooth image ROI in-place  
implements the core of Levenberg-Marquardt optimization  
algorithm.  
Mat imgroi = image(Rect(10, 20, 100, 100));  
GaussianBlur(imgroi, imgroi, Size(5, 5), 1.2, 1.2);  
Example 2. Somewhere in a linear algebra algorithm  
m.row(i) += m.row(j)*alpha;  
Mat image alias = image;  
float* Idata=new float[480*640*3];  
Mat I(480, 640, CV 32FC3, Idata);  
vector<Point> iptvec(10);  
Image Processsing  
Example 3. Copy image ROI to another image with conversion  
Rect r(1, 1, 10, 20);  
Non-separable linear filter  
Separable linear filter  
Smooth the image with one of the linear  
or non-linear filters  
Mat iP(iptvec); // iP – 10x1 CV 32SC2 matrix  
IplImage* oldC0 = cvCreateImage(cvSize(320,240),16,1);  
Mat newC = cvarrToMat(oldC0);  
Mat dstroi = dst(Rect(0,10,r.width,r.height));  
src(r).convertTo(dstroi, dstroi.type(), 1, 0);  
IplImage oldC1 = newC; CvMat oldC2 = newC;  
... (with copying the data)  
Mat newC2 = cvarrToMat(oldC0).clone();  
vector<Point2f> ptvec = Mat <Point2f>(iP);  
Compute the spatial image derivatives  
Simple Matrix Operations  
OpenCV implements most common arithmetical, logical and  
2
2
∂x  
I
∂y  
I
2
compute Laplacian: ∆I =  
+
2
Access matrix elements  
other matrix operations, such as  
Morphological operations  
1

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载