随笔分类 -  机器视觉

如何列举你系统已经安装的设备(视频压缩设备,视频捕获设备...)!
摘要:系统设备调查器提供了一个统一的方法去列举出系统中用户所有按类型注册的过滤器。系统设备调查器通过创建一个指定类型调查器(比如音频捕获类型或者视频压缩类型) (enumerator)来工作,这个调查器会返回系统中所有该类设备的唯一名称。按一下步骤操作去使用设备调查器: 1. 调用CoCreateInstance 创建系统设备调查器。类标识(CLSID)参数是CLSID_SystemDeviceEnum... 阅读全文

posted @ 2010-10-24 22:13 wqj1212 阅读(934) 评论(1) 推荐(0)

转 基于DirectShow视频及图片捕获软件的开发
摘要:我们知道目前很多工业相机的图像数据采集都是基于DirectShow的,常见的有映美精等。DirectShow是微软公司提供的一套在Windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。DirectShow为多媒体流的捕捉和回放提供了强有力的支持。运用DirectShow,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。它广泛地支... 阅读全文

posted @ 2010-10-24 13:45 wqj1212 阅读(4813) 评论(3) 推荐(0)

工业相机,工业摄像机,工业摄像头的选择
摘要:做图像处理,处理的对像是从工业相机来的图像,所以,工业相机的选择是不可缺少而且非常重要的一步。 首先要弄明白的是自己的检测任务,是静态拍照还是动态拍照、拍照的频率是多少、是做缺陷检测还是尺寸测量或者是定位、产品的大小(视野)是多少、需要达到多少精度、所用软件的性能、现场环境情况如何、有没有其它的特殊要求等。如果是动态拍照,运动速度是多少,根据运动速度选择最小曝光时间以及是否需要逐行扫描的相机;而... 阅读全文

posted @ 2009-10-25 12:05 wqj1212 阅读(2403) 评论(0) 推荐(0)

利用Hough变换,求最长的直线。并且得到最长直线 与水平的夹角
摘要:/**//* This is a standalone program. Pass an image name as a first parameter of the program.Switch between standard and probabilistic Hough transform by changing "#if 1" to "#if 0" and back */ #inclu... 阅读全文

posted @ 2008-11-09 15:16 wqj1212 阅读(2937) 评论(1) 推荐(0)

Hough变换
摘要:Hough变换的核心是两个坐标系的变换。总所周知,一个点或者一个线段在不同坐标系下的表现形式是不同的。我们最熟悉的当然是直角坐标系,还有三角坐标系。那么Hough变换首先要建立一种新的坐标系。对于直角坐标系中的一条直线L(如图1),进行Hough变换后,为一一个点。 而过直线上某点在所有直线经过Hough变换在新的坐标系中,将会呈现为一条正弦线。 变换坐标系的好处在哪里呢?正如大家所知,Hou... 阅读全文

posted @ 2008-11-09 13:49 wqj1212 阅读(8136) 评论(0) 推荐(0)

视觉跟踪
摘要:1.PID介绍 PID控制框图 设 2.利用PID控制,使目标图像点移动到图像中心。 目的:视觉跟踪物体。小车能够跟踪目标。利用质心法,求出物体的质心,然后控制(PID)小车运动,使物体的质心在图像平面中心位置。 目标点为实际物体所在位置。图像中心是理想位置。 //m_posX , m_posY为物体质心在像平面的位置。 //(320,240)是图像平面中心。理想位置。 //ex, e... 阅读全文

posted @ 2008-04-10 15:39 wqj1212 阅读(1394) 评论(0) 推荐(0)

Direct Show采集图像实例
摘要:// CaptureVideo.h: interface for the CCaptureVideo class. // /**/////////////////////////////////////////////////////////////////////// #if !defined(AFX_CAPTUREVIDEO_H__973C8C7A_47A3_45B6_9B28_0A4A08... 阅读全文

posted @ 2008-04-01 16:24 wqj1212 阅读(5362) 评论(12) 推荐(0)

图像畸变校正OPENCV
摘要:使用USB摄像头,采集一副图像,然后对图像畸变校正。摄像头事先标定好 #include "cv.h" #include "highgui.h" #include "cxcore.h" #include "cvcam.h" //图像的像素直接提取 #define _I(img,x,y) ((unsigned char*)((img)->imageData + (img)->widt... 阅读全文

posted @ 2008-01-25 12:13 wqj1212 阅读(21292) 评论(5) 推荐(1)

DDB to DIB
摘要:bool CCStaticDrawDlg::SaveBitmapFile(CString strFileName, CBitmap &bmp,CDC *pdc) { BITMAP bm; bmp.GetBitmap (&bm); int nWidth = bm.bmWidth; int nHeight = bm.bmHeight; in... 阅读全文

posted @ 2008-01-21 13:52 wqj1212 阅读(502) 评论(0) 推荐(0)

角点检测
摘要:#include #include "cv.h" #include "highgui.h" #define max_corners 100 int main( int argc, char** argv ) { int cornerCount=max_corners; CvPoint2D32f corners[max_corners]; double qualityLev... 阅读全文

posted @ 2007-12-23 13:14 wqj1212 阅读(741) 评论(1) 推荐(0)

卡尔曼
摘要:#if !defined(AFX_KALMAN_H__ED3D740F_01D2_4616_8B74_8BF57636F2C0__INCLUDED_) #define AFX_KALMAN_H__ED3D740F_01D2_4616_8B74_8BF57636F2C0__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > ... 阅读全文

posted @ 2007-12-23 13:09 wqj1212 阅读(854) 评论(0) 推荐(0)

分割移动微小物体
摘要:思路: 1. 前后两帧相减,得到差分图像 2.在差分图像里求像素最大的点(最亮的点) 这样就得到,移动微小物体 #include "check.h" #include void main() { DWORD t1,t2; IplImage *frame=0; CvCapture *capture = cvCapt... 阅读全文

posted @ 2007-12-21 21:31 wqj1212 阅读(525) 评论(0) 推荐(0)

多目标识别
摘要:writen by wqj1212@yahoo.com.cn 思路 1.先对图像标记。给每个目标一个标号。 2.然后计算每个被标号目标的NMI特征值, 3.然后这些NMI特征值与已知要识别目标NMI特征值比较。 如果差值小于某个阈值,就说明该目标就是要识别的目标。 BOOL Cbiaoji1::ObjectionExtrationNMI(IplImage *src) { DWORD t... 阅读全文

posted @ 2007-12-21 20:51 wqj1212 阅读(1348) 评论(0) 推荐(0)

数字识别
摘要:思想。 AGV(自动引导小车)采用识别数字来确定工位。 1.数字和路径分割 采用区域标记 来标记路径和数字,还有其它干扰目标 2.然后计算每个标记区域的面积(像素多少),面积最大的,为路径,面积次大的 为数字。 这样可以把路径和数字识别出来 3. 数字识别。 可以利用LED数码管显示数字的思想,来识别数字。 5行3列矩阵。 把数字划分成 5行3列,然后计算每行每列 像素所占的... 阅读全文

posted @ 2007-12-21 20:34 wqj1212 阅读(1375) 评论(0) 推荐(0)

导航