opencv
文章平均质量分 72
萝卜一只有榨菜
希望认识更多对图像处理有兴趣的朋友
展开
-
opencv——创建矩阵并显示
#include #include #include int main(){ float data[18]={3,4,5,6,7,8, 9,0,1,2,1,3, 4,5,6,6,7,8}; CvMat mat ; cvInitMatHeader(&mat ,3,6,CV_32FC1,data); for(int y=0;y<m原创 2014-09-23 20:30:00 · 895 阅读 · 0 评论 -
opencv——cvCopy与cvCloneImage的区别
/* Copies source array to destination array */CVAPI(void) cvCopy( const CvArr* src, CvArr* dst, const CvArr* mask CV_DEFAULT(NULL) );/* Creates a copy of IPL image (widthS转载 2014-10-30 15:46:14 · 553 阅读 · 0 评论 -
opencv——图像的旋转(绕X轴、Y轴、原点旋转)
#include #include int main(int argc ,char* argv[]){ //读取图像IplImage* src1 = cvLoadImage("2.jpg");//创建两个图像空间IplImage* srcX = cvCreateImage(cvGetSize(src1),8,3);IplImage* srcY = cvCreateImage(cv原创 2014-10-15 22:23:09 · 6333 阅读 · 0 评论 -
opencv——取反
函数cvNot()会将src中的原创 2014-10-15 23:03:03 · 1500 阅读 · 0 评论 -
opencv——融合技术(alpha融合 和 cvAnd按位与运算)
#include #include int main ( int argc ,char* argv[]){IplImage* src1 = cvLoadImage("C:\\Users\\wxh\\Documents\\Visual Studio 2010\\Projects\\9.24\\9.24\\1.jpg",1) ;IplImage* src2 = cvLoadImage("C原创 2014-10-14 23:09:11 · 2958 阅读 · 0 评论 -
opencv——模板匹配
模板匹配是通过在输入图像上滑动模板图像块对实际的图像块和输入图像进行匹配,应用场景:比如要在一堆图像中寻找指定人脸,就可以利用此算法在图像中找到此人脸的最佳匹配,确定相似度。并且可以利用函数cvMinMaxLoc()找到最佳匹配的位置。对于特定的应用来说,如视频中应用自动部分检测或跟踪(视频中的车牌识别),可以试试所有这些方法,找到最合适的method,这里要考虑算法的性能。-----------翻译 2014-11-26 09:48:48 · 506 阅读 · 0 评论 -
opencv——图像金字塔
什么是图像金字塔(pyramid)? 一个图像金字塔是一系列图像的集合 - 所有图像来源于同一张原始图像 - 通过梯次向下采样获得,直到达到某个终止条件才停止采样。 图像金字塔最初用于机器视觉和图像压缩,一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低的图像集合。 图像金字塔描述结果如下所示翻译 2014-11-20 22:37:45 · 521 阅读 · 0 评论 -
opencv——查找轮廓
首先创建一个窗口用来显示图像,滑动条(trackbar)用来设置阈值,然后对灰度图像提取轮廓,并绘制轮廓。当控制参数的滑动条变化时,图像被更新。#include #include IplImage *g_image = NULL;IplImage *g_gray = NULL;//设置初始阈值int g_thresh = 100;//创建序列指针CvMemStorage *g_翻译 2014-11-26 11:47:31 · 466 阅读 · 0 评论 -
opencv——卷积
最常见的图像变换(image transform,即将一幅图像转变成图像数据)就是傅里叶变换(Fourier transform),即将图像转换成源图像数据的另一种表示,而卷积是大多数变换的基础。我们可以用方程来表示这个过程。我们首先定义图像为I(x,y),核为G(x,y),参考点位于相应核的(ai,aj)坐标上,则卷积H(x,y)定义如下:边缘部分使用转载 2014-11-23 15:13:59 · 680 阅读 · 0 评论 -
opencv——拉普拉斯变化
#include #include #include int main(int argc, char* argv[]) { IplImage *src=cvLoadImage("1.jpg"); IplImage *s=cvCreateImage(cvGetSize(src),8,1); IplImage *dst=cvCreateImag翻译 2014-11-24 22:36:41 · 531 阅读 · 0 评论 -
opencv——阈值化
#include #include int main(int argc , char argv[] ) { IplImage *src = cvLoadImage("3.jpg"); IplImage *dst = cvCreateImage(cvGetSize(src),8,1); IplImage *r = cvCreateImage(cvGetSize(sr原创 2014-11-23 14:19:05 · 729 阅读 · 0 评论 -
opencv——Sobel导数
#include #include #include int main(int argc, char* argv[]) { IplImage *src=cvLoadImage("1.jpg"); IplImage *s=cvCreateImage(cvGetSize(src),8,1); //源图像为8位,为了避免溢出,目标图像的深度必须是I翻译 2014-11-24 22:20:53 · 589 阅读 · 0 评论 -
opencv——显示视频并创建滚动条(2段代码,)
// CV模块中包含了图像处理,图像结构分析 // 运动描述和跟踪,模式识别和摄像机标定 #include"cv.h" //包含了图像和视频的输入和输出 #include"highgui.h" // 用来标定滚动条当前的位置 int g_Pos = 0; // 将打开的视频文件作为一个全局变量使用 CvCapture*原创 2014-09-21 21:04:07 · 1434 阅读 · 0 评论 -
opencv——trajkovic 角点检测
#include #include "cv.h"#include "highgui.h"#include "cxcore.h"using namespace std;void getTrajkovic4NCorner(IplImage* src,IplImage* srcResize , float T1 , float T2 ,CvSeq* corners,int maximumSize){//转载 2014-10-10 22:39:39 · 768 阅读 · 0 评论 -
opencv——实现目标模板匹配
#include #include int main( int agrc,char* argv[]){//templat为目标模板图像,为彩色图像IplImage* templat = cvLoadImage("1.jpg",1);//src为被搜索图像,也为彩色图像IplImage* src = cvLoadImage("2.jpg",1);cvNamedWindo原创 2014-10-02 21:30:00 · 1309 阅读 · 0 评论 -
opencv——实现图片的粘贴
#include #include int main( int arc ,int argv[]){//读入图像(a为大图,b为小图【用于被粘贴】)IplImage* a = cvLoadImage("C:\\Users\\wxh\\Documents\\Visual Studio 2010\\Projects\\9.24\\9.24\\1.jpg");IplImage* b = cvL原创 2014-09-24 23:50:31 · 4284 阅读 · 2 评论 -
opencv——对指定区域增加颜色值
#include #include int main ( int argc ,char* argv[]){IplImage* src1 = cvLoadImage("C:\\Users\\wxh\\Documents\\Visual Studio 2010\\Projects\\9.24\\9.24\\1.jpg",1) ;IplImage* src2 = cvLoadImage("C原创 2014-09-25 13:03:12 · 3035 阅读 · 0 评论 -
opencv——灰度直方图
#include #include // HIstogram.cpp : 定义控制台应用程序的入口点。 // #define cvQueryHistValue_1D( hist, idx0 ) ((float)cvGetReal1D( (hist)->bins, (idx0))) int main() { IplImage* src= cvLoadI翻译 2014-09-25 20:18:33 · 489 阅读 · 0 评论 -
opencv——实现BGR到HSV颜色空间转换
#include #include int main (int argc ,char* argv[]){ //读入图像IplImage* src = cvLoadImage("C:\\Users\\wxh\\Documents\\Visual Studio 2010\\Projects\\9.28\\9.28\\1.jpg",1);//创建图像hsv、h、s、v,大小和src一样,其原创 2014-09-28 16:54:49 · 1335 阅读 · 0 评论 -
opencv——漫水填充法
#include #include int main(int argc, char* argv[]){ IplImage* src = cvLoadImage("1.jpg"); CvScalar loDiff = cvScalarAll(0); CvScalar upDiff = cvScalarAll(0); int flags = 4; /*低八位可以被设置为4或者8翻译 2014-10-22 17:18:50 · 686 阅读 · 0 评论 -
Moravec角点检测
#include #include "cv.h"#include "cxcore.h"#include "highgui.h"/***********************************************************************************函数 int getMoravec(IplImage* src,CvSeq* corners)转载 2014-10-06 21:58:25 · 675 阅读 · 0 评论 -
opencv——尺度调整
#include #include int main(int argc ,char* argv[]){ //src为原图像IplImage* src = cvLoadImage("C:\\Users\\wxh\\Documents\\Visual Studio 2010\\Projects\\图像处理\\图像处理\\1.jpg",1);//dst为目标图像,大小为src的1/2.I原创 2014-10-23 22:38:23 · 577 阅读 · 0 评论 -
opencv——灰度直方图的绘制
#include #include #include "cv.h"#include "highgui.h"#define _CRT_SECURE_NO_WARINGSIplImage* Draw(CvHistogram* Hist,float sclarX=1,float sclarY=1){ //归一化参数 float HistMax = 0; //获取最大值 cvGet翻译 2014-10-25 21:09:48 · 757 阅读 · 0 评论 -
opencv——对指定区域进行腐蚀
#include #include int main( int argc, int argv[]){ //读图IplImage* src = cvLoadImage("1.jpg",1);//构造腐蚀模板的数据结构IplConvKernel* element =0;int cols=4,rows=4,anchor_x=2,anchor_y=2;int values[16]原创 2014-09-29 16:39:07 · 1252 阅读 · 0 评论 -
opencv——提取轮廓
#include #include "cv.h" #include "cxcore.h" #include "highgui.h" using namespace std; #define OPENCV_FLANN_LOGGER_Hint main(int argc,char* argv[]){int i;//创建并设置一个动态内存存储器,CvMemStorage原创 2014-10-01 15:44:30 · 785 阅读 · 0 评论 -
cvFindContours函数
函数cvFindContours从二值图像中检索轮廓,并返回检测到的轮廓的个数。first_contour的值由函数填充返回,它的值将为第一个外轮廓的指针,当没有轮廓被检测到时为NULL。其它轮廓可以使用h_next和v_next连接,从first_contour到达。int cvFindContours( CvArr* image, CvMemStorage* storage, CvSe转载 2014-10-01 16:07:15 · 466 阅读 · 0 评论 -
opencv——Canny算子
#include #include #include int main(int argc, char* argv[]) { IplImage *src=cvLoadImage("4.jpg"); IplImage *s=cvCreateImage(cvGetSize(src),8,1); IplImage *dst=cvCreateImag翻译 2014-11-24 22:57:34 · 495 阅读 · 0 评论