![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器视觉
Pass_Time_
这个作者很懒,什么都没留下…
展开
-
工业相机飞拍模式介绍及相机曝光值计算
例如:相机现在的曝光时间是2000us,传送带运动的速度是100mm/s,使用的相机分辨率为2448*2048,视野范围是300mm*250mm,物体运动的方向是水平方向,精度要求拖影不超过1/2像素。1.视觉停拍:传统的视觉定位采取停拍的方式,即工件按照既定的轨迹运动,当运行到拍照点时,运动轴速度减为0停下来进行拍照、图像采集、运算处理、纠偏,待视觉系统处理完成后,继续完成接下来的轨迹运动,v-t图如下。即机构按照既定的轨迹运动,当运行到拍照位时,运动轴不停止运动,瞬间完成高速抓拍的功能。原创 2022-09-03 12:23:11 · 17467 阅读 · 1 评论 -
visionPro图像与Halcon图像格式互相转换代码
【代码】visionPro图像与Halcon图像格式互相转换代码。原创 2022-08-23 10:34:53 · 2453 阅读 · 2 评论 -
VisionPro PatInspect(CogPatInspectTool使用方法)
PatInspect主要用于缺陷检测,例如印刷字符检测、部分缺失或者明暗变换、激光打标内容检测等,该检测方法对光照的稳定性要求较高,视野内的光照不均匀极易造成误判与过杀。通过将当前图像与“训练图像”对比,获取“原始差异图像”,再将“原始差异图像”与“阈值图像”进行对比,进而获取“阈值差异图像”得到最终的当前图像与训练图像的差异,通常差异区域为缺陷所在。...转载 2022-08-15 22:33:40 · 2001 阅读 · 0 评论 -
海康相机SDK二次开发的一些报错和解决办法
常见的问题类型有: 相机节点不存在或者无法访问,例如,自动曝光,在手动曝光情况下,自动曝光节点会被隐藏,或者其他相机存在这个参数,而使用的相机无此参数,例如线扫相机的行频参数等等,还比如说部分相机无此功能,例如event参数,部分相机固件暂不支持用户调用。sdk接口调用,有一定流程顺序,例如getimagebuffer在startgrabing之前调用,就违反了接口流程,就会报错顺序调用错误 还比如,没有调用startgrabing接口,就去调用频繁调用stopgrabing接口,也会报此错误。...原创 2022-08-12 22:48:43 · 5733 阅读 · 0 评论 -
DALSA网口线扫相机SDK开发详解例程(C#版)
Win 10系统很扯淡,报错的提示一点都看不懂,我换Win 7的系统后,也报错,但是明确把错误原因找出来了。当你完全理解了这篇文章(以及我提到的两篇),Dalsa网口线阵相机的开发基本就没啥问题了,当然这时候你返回去看官方demos会有新的收获,比如我上面的UpdateFrameRate()就是从官方demos中剥离出来的,该函数可以得到采图时的实际帧率。文章二的代码缺少关键的GetCameraInfo()方法,是不能直接运行的,但是这篇文章的讲解更全面、深入,可以说两篇都是必备的啦。...原创 2022-08-12 22:46:03 · 2069 阅读 · 1 评论 -
DALSA工业相机SDK二次开发(图像采集及保存)C#版
2,然后读取配置文件(配置文件是通过官方自带的CamExpert来生成的)读取参数,也可以在程序中配置,本程序有个setting按钮,按一下就可以配置拉,把想配置的参数写在对应的代码块里(当然小编很懒,没做显示的功能,所以按按钮的时候你可能觉得按了个寂寞,但已经配置好了)。还有个读取参数的按钮(当然小编也没做显示的功能,所以也按了个寂寞),但有助于debug的时候查看数据,也可以自己打印出来看看。3,Snap是快照,可以设置快照的张数,因为写本程序时只有相机没有镜头,所以是黑乎乎一片…...原创 2022-08-12 22:30:58 · 3499 阅读 · 6 评论 -
使用Basler相机SDK采集的显示图片
添加Basler引用,复制安装目录pylon 6\Development\Assemblies\Basler.Pylon\x64路径下的Basler.Pylon.dll文件到你的项目debug目录下,并使用using Basler.Pylon;设置好后,打开pylon Viewer程序,这是basler提供的相机调试工具,测试下相机是否正常,然后就可以开始进入VS开发了。注意:一旦打开相机连接,必须有关闭,否则相机将会连接不上,这种情况下等待几分钟后,连接对象会被系统回收,再次连接即可。...原创 2022-08-12 22:11:57 · 1673 阅读 · 0 评论 -
CogBlobTool斑点工具的编程接口RunParams参数中英对照
CogBlobTool斑点工具的编程接口RunParams参数中英对照。原创 2022-08-04 17:11:36 · 744 阅读 · 0 评论 -
使用VisionPro的CogImageFileTool工具读取本地图片和保存图片到本地
/// <summary> /// vpro保存图片到本地 /// </summary> /// <param name="cogImage">输入图像</param> /// <param name="fileName">文件名</param> private void SaveImage(ICogImage cogImage, string fileN.原创 2022-04-13 22:32:55 · 4247 阅读 · 0 评论 -
C#在VS中利用VisionPro库读取相机列表及取像
在 .NET 环境下通过VisionPro打开相机并获取图像的基本步骤如下:1.创建CogFrameGrabberGigEs对象,获取连接到图像采集卡的所有相机设备。2.通过CogFrameGrabberGigEs获取单个对象ICogFrameGrabber的引用,支持的图像格式、相机序列号等信息可以从该接口对象中获取。3.通过CogFrameGrabber的CreateAcqFifo方法创建ICogAcqFifo接口对象,在使用CreateAcqFifo方法时须指定图像格式、相机端口等信息。4.通原创 2022-04-08 16:54:39 · 3914 阅读 · 1 评论 -
线阵相机的线扫描速率的计算方法
要保证采集到的图像不被拉伸或者压缩,必须遵从一点,即“横向和纵向的分辨率相等”。首先设定以下变量:1)线阵相机的每线像素数(单位:pixel):Hc2)目标物的宽幅(单位:m):Lo3)目标物运行速率(单位:m/s):Vo4)线阵相机线扫描速率(单位:Hz,即 线/s):Vc5)扫描一帧图像目标物运行的时间(单位:s):To6)扫描一帧图像线阵相机的扫描时间(单位:s):Tc那么,横向的分辨率为:Lo/ Hc,标定纸的值/单个相机像素(4096)纵向分辨率为:( Vo* To ) / (原创 2021-08-18 17:37:28 · 1785 阅读 · 0 评论 -
VisionPro CogSearchMaxTool VS CogPMAlignTool VS CogCNLSearchTool三个模板匹配工具之间的差异
CogSearchMaxTool工具原理:该SearchMax工具结合了PMAlign和CNLsearch工具的优缺点;使用归一化相关搜索匹配功能通过颜色特征来寻找目标物体;工具使用场合:彩色图像小图案(特征少的图像)包含纹理图像图像倾斜CogPMAlignTool工具原理:与其他一些模型定位算法一样,首先训练一个模型,然后再运行时图像上查询一个或多个已训练的模型,但是CogPMAlignTool不是基于像素栅格,基于像素栅格的算法在一些旋转和尺寸变化的情况时达不到有效的精度。它是基原创 2021-07-23 16:54:14 · 2037 阅读 · 1 评论 -
VisionPro通过代码设定模板训练的中心坐标
QQ群日志记录使用代码设定所选模板区域的中心原点,图形界面中可以使用如下图的按钮来操作C#代码中可以使用如下的代码来完成中心原点的设定:private void PatternCenterPoint() { try { if (this.pmalign_.Pattern != null && this.pmalign_.Pattern.TrainImage != null &&am原创 2021-07-21 11:35:35 · 1432 阅读 · 0 评论 -
VS(C#)调用Basler相机SDK采集图像及基本功能设定
使用到了Basler的相机,利用C#编写的SDK,下面进行简单的整理记录。首先引用basler的动态库文件,具体引用位置如下:安装目录\Basler\pylon 5\Development\Assemblies\Basler.Pylon\x64\Basler.Pylon.dllusing System;using System.Collections.Generic;using System.Linq;using System.Text;using HalconDotNet;using B转载 2021-06-24 16:59:21 · 2634 阅读 · 0 评论 -
使用cognex的序列化类CogSerializer打包对象到自定义文件及读取文件到对象
一、自定义类[Serializable]//标记要序列化的内容class TestClass{ public string Str { get; set; } public Cognex.VisionPro.ToolBlock.CogToolBlock Mblock { get; set; }}二、保存对象到文件//实例化类TestClassc = new TestClass();//给类的属性赋值 c.Str = "something else";//原创 2021-05-21 09:16:20 · 1765 阅读 · 0 评论 -
Cognex VisionPro连接USB相机的两种品牌
1.Imaging USB相机Imageingicextaik,安装这个Imaging官方提供的软件后就可以直接通过VP连接Imaging品牌的USB相机了,同时附上下载地址。2.巴斯勒的USB相机装上官网上的AIK adopter适配器,就能通过visionpro调用Basler的USB相机。有需要的网友可以直接其官网直接下载相关软件,Basler的软件比较大,就不上传了。如果还有其他可连接VisionPro软件的USB相机,网友可以在下方评论区留言,大家一起分享一下!...原创 2021-05-11 09:03:17 · 2680 阅读 · 3 评论 -
机器视觉基本组成解惑
机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是指通过机器视觉产品(即图像摄取装置,分CMO和CCD两种)将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。【机器视觉的优势】机器视觉系统具有高效率、高度自动化的特点,可以实现很高的分辨率精度和速度。机器视觉系统与被检测对象无接触,安全可靠。【系统组成】一个典型的机器视觉系统包括以下部分:1.转载 2021-03-24 08:35:20 · 968 阅读 · 0 评论