![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
opencv学习
mikedadong
世界上美丽的情诗有很多很多,但是最幸福的一定是这一句——执子之手,与子偕老。
展开
-
opencv2.4.9学习:加载、修改、保存一个图片
/*加载一张图片,并转换色彩空间,然后保存*/#include<cv.h>#include<highgui.h>using namespace cv;int main(){ Mat image=imread("D:/1.jpg",1);//读取一张RGB彩色图片 //检测是够成功加载图片 if (!image.data) { printf("No原创 2015-12-28 21:50:47 · 2093 阅读 · 0 评论 -
opencv保存mat矩阵为TXT、XML、xls等文档的方法
opencv保存mat矩阵为TXT、XML、xls等文档的方法现在的方法主要是用类Filestorage。具体解释可以看由浅入深学习C++471页或者opencv_tutorials 181页等等 `#include<opencv2\opencv.hpp> #include<time.h> using namespace cv; using namespace std;原创 2016-04-12 14:38:25 · 7220 阅读 · 0 评论 -
opencv图像拼接,即把两个矩阵合并为一个(vconcat和hconcat)、Mat成员函数size()
Mat类的成员函数 size()当我们用size()获取一个矩阵的行数和列数时,要注意这个函数返回的结果行和列是相反的。如Mat ab(30,15,Cv_32fC1);ab.rows;返回的结果将是(15,30);opencv如何将两个矩阵按行或者按列合并在Matlab中将两个矩阵合并非常方便,按行合并,如A=[B C]。按列合并如A=[B ;C]。在opencv中貌似并不存在这样的函数,因原创 2016-05-03 16:20:37 · 34533 阅读 · 3 评论 -
opencv类:PCA降低数据的维度(主成分分析法的学习)
PCA降维的学习以下代码是在opencv中的函数pca.cpp的基础上进行了一些更改,主要更改体现在读取降维样本方面,并对代码加上了一些自己理解的注释:`#include <iostream>#include <fstream>#include <sstream> #include <opencv2/core/core.hpp>#include <opencv2/highgui/high原创 2016-04-19 15:29:41 · 2670 阅读 · 4 评论 -
opencv删除mat矩阵的多行或者多列
opencv删除mat矩阵的多行或者多列做项目的时候需要删除选定矩阵的多行或者多列,百度了许久发现opencv里面没有这样的函数,翻墙去国外搜索一下 ,同样没有找到这样的函数,因此,自己写了一个简单的子程序。下面程序实现删除矩阵的某些列,如果要删除行,简单修改一下即可。#include<opencv2\opencv.hpp>#include<iostream>using namespace s原创 2016-05-20 22:07:40 · 8247 阅读 · 1 评论 -
提取出图像中感兴趣的部分,cvSetImageRoi已经过时,更牛逼Rect解决问题
在做人脸检测的时候,需要从摄像头拍摄视频中把检测到的人脸区域提取出来,网上找了很多博客,发现多数都是在用cvSetImageRoi函数, 使用的时候发现这个函数支持IplImage类,不能使用Mat,所以转换来转换去很麻烦,最后在国外网站(stack overflow)发现了一个用Rect 提取的方法。举个例子来说明: Mat img=imread("D:\\1研究生\\Faci原创 2016-04-27 21:47:04 · 4964 阅读 · 2 评论 -
opencv神经网络训练时的目标矩阵构建方法
在做模式识别时,应用算法神经网络或者SVM训练时,要用到目标数据,每个样本对应一个目标向量,因此142个训练样本就要有142个目标向量,想了很久,终于构建出来了,构建的矩阵为142*7,目标对应的节点为1,其余为零 方法如下: Mat labels=Mat::zeros(142,7,CV_8SC1); Mat a=labels.rowRange(原创 2016-04-12 14:42:50 · 1178 阅读 · 0 评论 -
opencv获取矩阵某位置元素值的几种简便方法
获取某点像素值的方法在输出像素值,不要直接用cout输出,将获得的像素幅值给一个变量,用cout输出这个变量。 1、ptr方法 mat类提供了ptr函数获取任意行的首地址,例如ptr[i]返回第i行的首地址。 例子:获取坐标【5,5】的像素值 Mat TrainData=imread(“C:\Users\andy\Desktop\特征图片.jpg”,1); uchar *d原创 2016-04-12 14:24:48 · 15305 阅读 · 6 评论 -
opencv24.9学习_创建矩阵并给矩阵幅值的几种方法
该部分主要讲解Mat类矩阵的创建并通过不同的方式来初始化。#include<opencv2\opencv.hpp>#include<highgui\highgui.hpp>using namespace std;using namespace cv;int main(){ Mat image=imread("D:\1.jpg",1); /* M(2,2,CV_8SC3,S原创 2015-12-29 21:19:50 · 1453 阅读 · 0 评论 -
opencv2.4.9学习_加载并显示一个图像
本文根据opencv2.4.9的帮助文档opencv tutorials帮助文档撰写得来。如有不明白,请参看该文档。程序中代码参考帮助文档,但对文档有一定的更改。/* OpenCV2包含不同的模块,不同的模块对应的功能不同。因此在使用的时候需要根据需求加载头文件等*/#include<opencv2/core/core.hpp>#include<opencv2/highgui/highgui原创 2015-12-28 20:35:28 · 737 阅读 · 0 评论 -
opencv打开matlab保存的txt文件,并赋值为Mat矩阵
将matlab的矩阵保存为TXT,并用opencv读取,然后保存为Mat类型做图像分类,matlab提取的特征用于训练和测试神经网络,想要用opencv打开,想了非常久,自己都没有做出来,刚开始想用XML文档作为介质进行传输,发现比较困难,网上的方法试了试没有成功,请来了一个大神师兄,不得不佩服,几分钟用txt给我搞定了。代码如下:#include<opencv2\opencv.hpp>#inc原创 2016-04-12 14:29:49 · 3552 阅读 · 2 评论