[置顶]python知识导航贴,持续更新

[置顶]C# 语言高级特性知识导航贴,持续更新

[置顶]netMarketing类库: 类库说明

[置顶]本站视觉相关教程整理贴子,持续更新

[置顶]C++相关导航贴,持续更新

[置顶]本站收费服务公告(netMarketing源码,工业自动化行业培训班等)

[置顶]2020年勇哥的机器视觉实验项目清单(大纲)

[置顶]本站连载贴子系列,持续更新中……

[置顶]勇哥的免费视频教程清单

[置顶]勇哥在B站发布的视频清单

[置顶]运动控制专题,持续更新

视觉进阶:检测漏焊board.hdev

通过本例程学习,掌握了read_image读取多幅图像,channels_to_image算子的使用。本例程的算法思路是通过求取各个通道求取暗的和亮的部分,然后各个通道使用union1进行联合,得到的联合后的暗图像和明亮图像,然后求取明暗图像的交集。后续经过基本的选择处理,得到漏焊的焊点。get_system ('clip_region', Information) set_sy...

视觉进阶:阈值分割函数总结

(1) fast threshold(mage: Region: MinGray, MaxGray, Minsize:) ①算子描述: 全局阈值,此算子与threshold类似,只是多了一个輸入参数MinSize :提取对象的最小尺寸(2) gray histo(Regions, Image : : : AbsoluteHisto, Relativ...

视觉进阶:select shape proto算子的应用

(1)函数原型: select shape proto(Regions, Pattern, SelectedRegions , Feature, Min, Max)(2)函数功能: 依据某种相互关系筛选区域。(3) Feature参数的选项: 1)distance center:判断Regions中每个region的中心(area ce...

视觉进阶:聚类及halcon实现

(1)聚类的简介: 聚类是一种无监督学习方法,试图将数据集中的样品划分为若干个通常不相交的子集。(2)聚类的两个基本问题: ①性能度量: 用于度量聚类结果的好坏,即相同簇样本尽可能相似,不同簇样本尽可能不同。性能度星可分为两类,一,外部指标,将聚类结果与外部指标相比较,二,内部指标,直接考察聚类结果。 ②距离计算:...

视觉进阶: 学习KNN(三)KNN+HOG实现手写数字识别

在学习KNN(二)KNN算法手写数字识别的OpenCV实现我们直接将像素值作为特征,实现了KNN算法的手写数字识别问题,并得到了较好的准确率,但是就像其他机器学习算法一样,KNN的对象同样是特征,所以我们可以用一种特征提取算法配合KNN实现手写数字识别的任务。下面用HOG原理及OpenCV实现中介绍的HOG算法提取特征,作为KNN的的输入,最后与像素值特征的结果进行对比。在数据方面还是使用之前生成...

视觉进阶: 学习KNN(二)KNN算法手写数字识别的OpenCV实现

在OpenCV的安装文件路径/opencv/sources/samples/data/digits.png下,有这样一张图:图片大小为1000*2000,有0-9的10个数字,每5行为一个数字,总共50行,共有5000个手写数字,每个数字块大小为20*20。为了后续方便处理,我们先写一段小程序把这5000个图截取出来:#include <opencv2/opencv.hpp> #in...

视觉进阶: 学习KNN(一) 图像分类与KNN原理

简介KNN算法,即K近邻算法是一种监督学习算法,本质上是要在给定的训练样本中找到与某一个测试样本A最近的K个实例,然后统计k个实例中所属类别计数最多的那个类,就是A的类别。从上面一句话中可以看出,KNN的原理非常简单粗暴,而且是一种“在线”的学习方式,即每一次分类都需要遍历所有的训练样本,此外KNN算法还有几个要素:K,距离,分类决策规则。要素对于KNN而言有三个要素:1.K的选择:K值是KNN算...

视觉进阶: KNN算法及halcon例程

(1) KNN算法简介: KNN算法,即K近邻算法是一种监督学习算法,本质上是要在给定的训练样本中找到与某一个测试样本A最近的 K个实例,然后统计k个实例中所属类别计数最多的那个类,据他们的主要分类来决定新数据的类别。(2) KNN算法的三个要点: ①K的选择: K值是KNN算法中为数不多的参数之一, K值的选择也直接影响着模型的...

halcon形态学分析整盘入料的物料的取料中心点位置与方向

勇哥的这个项目是整盘物料机器人视觉取料。由于该项目有两个相机,一个是整盘入料相机,用于判断物料有无和粗定位。另外还有一个下相机,用于精定位后物料入转盘机。本篇说的就是整盘入料相机的粗定位算法。这里勇哥使用的是halcon的形态学算法,相比找边的方式来说,其意义是速度快,能满足视觉一键换型的需要。read_image(backImg, 'C:/Users/hackpig/Desktop/蓝牙...

halcon中求rectangle2矩形的四个顶点坐标

(1)实现功能: halcon中调用smallest_rectangle2()函数获得仿射外接矩形(旋转外接矩形),返回的是矩形的中心坐标、角度和长短轴长度,但是在有些时候需要使用的是仿射外接矩形的四个顶点坐标。 本文实现的功能是通过矩形的中心坐标、角度和长短轴长度获得四个顶点的坐标。(2)实现代码: smallest_rectangle2 (ObjectSelec...

视觉进阶: 寻找出边缘突出的部分

如下图,想取得这根条状物的突出来的“刺”。寻找图中边缘突出的部分,解决思路:1、阈值分割,找出黑色部分2、生成一个小矩形作为StructElement,进行opening操作,即可找到如下图的部分3、与阈值分割后的进行difference操作,即可找到突出部分,后面再进行求取突出的最边缘部分。上代码:read_image (Image, 'C:/Users/gongyong/Desktop...

C#和halcon的混编程序出现长时间拍照时程序崩溃问题的解决经验

勇哥项目中有下面这个拍照函数GrabOneImage()。在其它十几台设备上面运行没发现有什么问题,但是最近发现有一台设备上长时间运行不到半小时,程序就报告崩溃。错误原因是内存不足。 public bool GrabOneImage(bool isDebug) { try { //如果未初始化,先初始化...

一款Basler相机拍图问题(单次拍照时间过长,连续拍照正常)的处理经验

这款Basler相机1000W像素。GigE 接口,不用独立供电。它的故障现象为:halcon连续采图,有10帧的速度,但是单次采图有580毫秒。这种情况按经验一般怀疑下面的问题:(1)网卡驱动版本(2) 网卡驱动的设置项 (3) 网线的问题由于连续拍照帧速正常,因此问题3可以排除。对于问题1,问题2,勇哥检查了网卡的驱动与设置,确认了驱动程序版本与设置与另外的机器一样。所以也可以排除了。这个...

三角函数超入门(6)正弦定理

第四个要掌握的定理是正弦定理,它指的是:在任意一个平面三角形中,各边和它所对角的正弦值的比相等且等于外接圆的直径根据正弦定理,图4-6-2会有几个比较有意思的特点:只要BC边不变,其它两条边无论怎么变,∠A一定是30°任意一对边和其角的正弦比值一定等于这个圆的直径20勇哥用CAD验证了一下第一点。也验证了第二点。CAD的计算结果:三角形的外切圆的直径是57.75注意:由于CAD的测量时存在结果精度...

Basler相机Sdk采图的演示例程(C#)

勇哥说的这个话题的起因是追求极速的拍图速度。机器ppm不达标的情况下,往往对视觉的处理速度有变态的要求,为了争取处理时间最短,几十毫秒也要争取。halcon的接口是通用接口,其速度是比不上相机厂商自己相机配套的SDK的采图速度的。下面程序运行后,500w的CCD拍图的时间(不算显示时间)达到惊人的32毫秒,如果用halcon接口,最快的我见过是180毫秒。using Basler.Pylon;...

halcon与C#混编的入门贴

这篇主要是C#和Halcon的混合编程,写给新手们看的。halcon源程序:dev_open_window(0, 0, 512, 512, 'black', WindowHandle)read_image (Image, 'C:/Users/Administrator/Desktop/猫.jpg')dev_display(Image)get_image_size(I...

C#中调用halcon引擎来执行hdev程序

调用halcon引擎有两个直接的好处:避免C# 与halcon代码混编时可能产生的内存泄露问题修改halcon程序时不用重新编译C# 勇哥写了一个示例,详细的应用感受和缺点限制勇哥会持续做相关的总结给大家分享。对于halcon17来说,要运行下面的程序,你要引用halcondotnet.dll hdevenginedonet.dllusing HalconDotNet; using Syste...

三角函数超入门(5)余弦定理

余弦定理如下,三角函数中6个必须掌握的公式,这是第3个。先来推导一下。如图4-1-1中,ΔABC中,已知∠A=60°,b=10,c=15,求a的长度。60°角的三边比是 1:2:√3以此可以求出e,h(1) e/b=cosA ∴ e=b*cosA (2) h/b=sinA ∴ h=b*sinA (3) d=c-e=c-b*cosA (4) a2=h2+d2 a2=(b*si...

halcon17支持1394的相机吗?

halcon17支持1394的相机吗?勇哥可以告诉你:不支持!!想不到吧!勇哥手里的一款point grey的1394接口的相机就发现在halcon17怎么也找不到。我记得以前的win7 64位系统下是找得到的,现在换成了win10 64位就找不到了。其实不是系统的原因,而是,之前用的是halcon10,现在用了hacon17才发现找不到相机了。解决办法是,到halcon的网站上下载对应的接口。下...

C#和halcon的混编程序出现序内存泄露、句柄持续增加、视觉程序运行越来越慢等问题的处理

这个话题非常重要。勇哥苦于手中的项目遇到这样的问题。这些问题表现是:(1)视觉程序内存占用会越来越大。这种内存变大通常是缓慢变大,几天不关机持续运行的话,大到几个G也不稀罕。通常,急速内存变大要容易找到问题些,最怕的是缓慢变大。(2) 视觉程序会越运行越慢,会影响设备的PPM。通常工厂里的电脑一辈子不会关机,你可别指望他们会每班给你重启软件一次。(3)程序句柄越来越多,大至几万都有可能。这是一种什...

三角函数超入门(4)钝角三角比、三角形面积

见下图,求三角形ΔABC的面积。 按三角形面积公式 (面积=底×高÷2。其中,a是三角形的底,h是底所对应的高)设底边b=20,经过顶点B作底边CA的垂直线,则点H就会落在CA的延长线上,BH就是三角形的高h,这和图3-1-2测量海拔高度是一样的。在做高h时,我们创建了一个三角形Δ由于h/c=sin40° ,得h=c*sin40° ∴ SΔABC= 1/2*b*h=1/2*20*18*sin40°...

[netMarketing类库] Config类: 以XML方式保存程序配置文件的类

命名空间:netMarketing.automation.baseClass.ConfigClass.Config功能:以XML方式保存程序配置文件版本要求: netMarketingv1.3.1功能详细说明:这个类是勇哥的同事写的一个类,比较好用,特收录进netMarketing中。这个类使用的时候只需要做两件事:(1)创建一个类,用来声明要保存配置文件的项目(2)在你的调试面板中放入一个pro...

HTML4.01 支持的数学符号

常用数学符号:√ ∠ θ α β ° Δ ≥ ≤ ≈ ≠∵ 因为∴ 所以ι π120运算符号如加号(+),减号(-),乘号(×或·),除号(÷或/),两个集合的并集(∪),交集(∩),根号(√ ̄),对数(log,lg,ln,lb),比(:),绝对值符号| |,微分(d),积分(∫),闭合曲面(曲线)积分(∮)等。关系符号如“=”是等号,“≈”是近似符号(...

三角函数超入门(3)三角比之间的关系

三角函数里有许多公式,需要牢牢记住的只有6个,其它的都是其的变形。证明公式(1): a2+b2=c2a2/c2+b2/c2=1(a/c)2+(b/c)2=1假设∠A=θ ,则a/c=sinθ, b/c=cosθ∴ sin2θ+cos2θ=1证明公式(2)利用60°度直角可以验证公式(2)tanθ=sinθ/cosθtan60°=sin60°/cos60°=(√3/2)/(1/2)=√3下面来证明...

矩阵的逆inv()到底有什么用

首先,我们先来看看这个数的倒数:其实矩阵的逆矩阵也跟倒数的性质一样,不过只是我们习惯用A-1表示:问题来了,既然是和倒数的性质类似,那为什么不能写成1/A?其实原因很简单,主要是因为矩阵不能被除。不过 1/8倒可以被写成 8-1。那矩阵的逆和倒数还有其他相似之处吗?当我们将一个数乘以它的倒数我们得到1。8 × (1/8) = 1当一个矩阵乘以逆时,我们得到了单位矩阵(而单位矩阵,其实也就是矩阵中的...

三角函数超入门(2)锐角三角形的三角比

特殊三角形的sin,cos和tan内角为30°,45°,60° 的特殊三角形,其三角比如下:sin, cos, tan的一些规律解题如下题。如果只是算一算x,y是多少没多少意思。勇哥用halcon的算子来画出题意并解题。下面的代码中,我们把c=20改为c=200,这样屏幕上的线条长一点方便观察。dev_close_window() dev_open_window(0, 0, 400, 400,...

halcon中不使用模板进行ROI跟随

如果不使用模板来进行ROI更随,该如何做到呢?勇哥先把图片放上来:我想所有人都会想到用形态学算法,阈值勾出电池本体,然后取得电池角度与位置信息,就可以ROI跟随了。难点在哪里呢?我们的目的是:“取电池几何中心的位置与电池的方向。”那么电池的几何中心可以是电池整个外接最小矩形的中心,这个比较容易办到的。但是方向呢?我们可以取电矩形本体的外接矩形的角度做为方向,但是这一点因为极耳的干扰,我们取到本体的...

win10两个技巧:找已安装好的软件;绿色程序固定到开始屏幕

(一) 浏览已经安装好的全部程序win10有时候安装完程序后,安装程序没有创建快捷方式,然后就找不到新增的程序在哪里了。这时候可以用到本技巧。在地址栏内输入Shell:AppsFolder这个名字,如图所示,然后回车,可以看到打开的这个文件夹内疚包含了当前电脑所有的安装程序。或者创建一个文件夹,更名为:Applications.{4234D49B-0245-4DF3-B780-389394345...

三角函数超入门(1)三平方定理的证明

这个证明三平方定理的方式比较巧妙,勇哥用autocad画了个示意图。大正方形的面积C2= 四个直角的面积+ 小矩形的面积结果就是: c2=b2+a2AutoCAD是个好东西,勇哥可以直接在屏幕上测量直角三角形的a边与b边,结果如下:距离 = 82.9038,XY 平面中的倾角 = 34, 与 XY 平面的夹角 = 0 距离 = 55.9193,XY 平面中的倾角 = 304, 与 XY...

halcon差异运算去掉背景图像

如果是下相机对位,有时候会碰到相机拍到复杂背景,造成需要处理的工件被背景干扰的问题。这时候有一个办法是去掉背景。一般来讲,每次拍到的背景应该是一样的,只是每次拍到的工件不一样。勇哥直接上图片与演示代码,最后介绍一下相关的算子。(图1 背景图像)(图2 含有背景图像的电芯)下面是代码处理的结果。(图3 电池本体之外的背景全部镂空的效果)(图4 含有膨胀区域的处理结果)read_image(b...
会员中心
搜索
«    2024年5月    »
12345
6789101112
13141516171819
20212223242526
2728293031
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864