代码改变世界

opencv图像处理6--网球检测

2011-09-27 22:49 by libing64, 890 阅读, 0 推荐, 收藏, 编辑
摘要:void CBallsampleDlg::OnOK(){// TODO: Add extra validation here//CDialog::OnOK();IplImage*frame = NULL; //定义帧,每帧就是一张图 IplImage* B_part = NULL;IplImage* G_part = NULL;IplImage* R_part = NULL;//三个通道下的灰度图IplImage* biImage = NULL;//调试用,G通道二值化后的灰度图IplImage* biImage_B = NULL;//B通道下进行阈值分割后的图片。IplImage* dst 阅读全文

opencv图像处理5--车辆检测

2011-09-25 13:49 by libing64, 2008 阅读, 1 推荐, 收藏, 编辑
摘要:void CTrafficsampleDlg::OnOK() //读入视频并检测车辆{// TODO: Add extra validation here//此处添加图像处理的代码//CDialog::OnOK();IplImage *frame = NULL; //定义帧,每帧就是一张图 IplImage *B_part = NULL, *G_part = NULL, *R_part = NULL;IplImage *pFrImg = NULL; //前景图片IplImage *pBkImg = NULL; //背景图片IplImage *dst = NULL;CvMemStorage* s 阅读全文

[置顶][置顶]opencv图像处理4--opencv下鼠标事件

2011-09-21 21:45 by libing64, 601 阅读, 1 推荐, 收藏, 编辑
摘要:#include<highgui.h>#include<cv.h>#include<stdio.h>//#include<iostream>//鼠标事件CvPoint down;CvPoint up;CvRect rect;IplImage *dst;void on_mouse(int event,int x,int y,int flags,void *param){//鼠标事件分为两个部分,左键按下和左键弹起 IplImage *image=(IplImage *)param; if (event == CV_EVENT_LBUTTONDOWN 阅读全文

[置顶]opencv图像处理3--opencv下使用滑动条

2011-09-21 21:12 by libing64, 270 阅读, 0 推荐, 收藏, 编辑
摘要:#include "cv.h"#include "highgui.h"#include <stdio.h>#include <ctype.h>void on_trackbar(int position){if( position == 0 ) {printf("the position is%d", position);} else {printf("the position is %d", position); }}int main(){IplImage* pImg; //声明IplIma 阅读全文

opencv图像处理2--打开图片并显示

2011-09-20 00:08 by libing64, 662 阅读, 0 推荐, 收藏, 编辑
摘要://在opencv下图像的打开及显示极为简单,仅需调用几个小函数即可~~//需要注意的一点是opencv虽然含有类的思想,但确实是用C语言完成,C下没有类一说,因此那些构造函数其实是C下的内联函数,或者宏,仔细观察的话,就会发现,他的构造//函数和类名的首字母不一样,一个小写,一个大写。若把它当类来使,这点是极容易错的~//首先要配置opencv的环境,网上很多~这里就不赘述了//1建立MFC的单文档程序SDI //2在sampledoc.h中添加#include<highgui.h> //3在sampledoc.h中public下添加 public: IplImage* img; 阅读全文

opencv图像处理1--IPlImage结构分析

2011-09-17 08:20 by libing64, 668 阅读, 0 推荐, 收藏, 编辑
摘要:IplImage结构由于OpenCV主要针对的是计算机视觉方面的处理,因此在函数库中,最重要的结构体是IplImage结构。IplImage结构来源于Intel的另外一个函数库Intel Image Processing Library (IPL),该函数库主要是针对图像处理。IplImage结构具体定义如下:typedef struct _IplImage{int nSize;/* IplImage大小*/int ID;/*版本(=0)*/int nChannels;/*大多数OPENCV函数支持1,2,3或4个通道*/int alphaChannel; /*被OpenCV忽略*/int d 阅读全文

VC6.0图形处理10--腐蚀膨胀

2011-09-15 22:22 by libing64, 253 阅读, 0 推荐, 收藏, 编辑
摘要:void CBMPViewerDoc::OnMenuitem32799() //图像的腐蚀{//自定义3*3的矩阵作为检验的结构// TODO: Add your command handler code hereint linewidth;linewidth=(pbi->bmiHeader.biWidth*pbi->bmiHeader.biBitCount+31)/32*4;unsigned char *lpDest;unsigned char *lpScr;HLOCAL hTemp;hTemp = LocalAlloc(LHND ,linewidth * bi.biHeight 阅读全文

VC6.0图形处理9--轮廓提取

2011-09-03 22:16 by libing64, 227 阅读, 0 推荐, 收藏, 编辑
摘要://前面请参照之前的文章void CBMPViewerDoc::OnMenuitem32797() //轮廓提取 适合已经转变为二值图像{// TODO: Add your command handler code hereint linewidth;linewidth=(pbi->bmiHeader.biWidth*pbi->bmiHeader.biBitCount+31)/32*4;HLOCAL hTemp;hTemp = LocalAlloc(LHND ,linewidth * bi.biHeight );LPSTR lpTemp;lpTemp = (char*)LocalL 阅读全文

VC6.0图形处理8--Hough变换(下)

2011-09-03 20:39 by libing64, 264 阅读, 0 推荐, 收藏, 编辑
摘要:源码下载:http://download.csdn.net/detail/renshengrumenglibing/3875522//请先仔细研读Hough变化的算法问题void CBMPViewerDoc::OnMenuitem32796() //Hough变化{//现在只能处理二值图像// TODO: Add your command handler code hereint linewidth;linewidth=(pbi->bmiHeader.biWidth*pbi->bmiHeader.biBitCount+31)/32*4;HLOCAL hTemp;hTemp = Lo 阅读全文

VC6.0图形处理8--Hough变换(上)

2011-09-02 13:07 by libing64, 480 阅读, 0 推荐, 收藏, 编辑
摘要:Hough变换的基本思想是利用点—线的对偶性,即图像空间共线的点对应在参数空间里相交的线,反过来,在参数空间中交与同一个点的所有直线在图像空间里都有贡献的点与之对应。在图像空间X—Y中,所有共线的点(x,y)都可以用直线方程描述为: (3.1)其中m为直线的斜率,c为截距,同时式(3.1)又可以改写为: (3.2)上式可以看做是参数空间C—M中的一条直线方程,其中直线的斜率为x,截距为y。比较式(3.1)和式(3.2),可以看出,图像空间中的一点(x,y)对应参数空间中的一条直线,而图像空间中的一条直线又是由参数空间中的一个点(m,c)来决定的。Hough变换的基本思想就是将上述两式看作时图像 阅读全文