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

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

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

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

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

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

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

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

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

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

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

线扫相机项目中定量判断机构运动是否匀速的方法

线扫相机的原理:线扫相机一般一次只拍摄一条线(线宽通常是1个像素),在机构运动的过程中,线扫相机不断地拍摄线,于是“聚线成面”,这就是线扫相机成像的原理。 线扫相机的原理决定了,它所拍摄的物体必须要运动。机构运动的话,就存在机构的速度是否和线扫相机采集的速度匹配的问题。将对机构运动速度的要求进行拆分的话,其实就是如下两点:① 运动速度必须与线扫相机的工作行频(即采集速度)相匹配。② 机构的运动速度...

Halcon二维仿射变换实例探究

二维仿射变换,顾名思义就是在二维平面内,对对象进行平移、旋转、缩放等变换的行为(当然还有其他的变换,这里仅论述这三种最常见的)。 Halcon中进行仿射变换的常见步骤如下:① 通过hom_mat2d_identity算子创建一个初始化矩阵(即[1.0, 0.0, 0.0, 0.0, 1.0, 0.0]);② 在初始化矩阵的基础上,使用hom_mat2d_translate(平移)、hom_mat2...

Halcon中的坐标系特点及XLD的镜像转换

我们知道,Halcon中的坐标系的原点在左上角,而一般二维平面坐标系的原点在左下角。那么Halcon中坐标系和一般的二维坐标系有什么区别呢?我通过下面这个例子来分析。gen_image_const (Image, 'byte', 512, 512) dev_set_draw ('margin') *点1 gen_circle (Circle1, 10,...

分析一则halcon抓边拟合直线的小案例

例图:read_image (Image, 'C:/Users/Administrator/Desktop/1.png') threshold (Image, Regions, 0, 112) skeleton(Regions,TriangleSkeleton) gen_contours_skeleton_xld(TriangleSkeleton,Triangl...

通过灰度线性映射增强图像对比度

Halcon中如何通过灰度线性映射增强图片对比度呢?不急,我先讲点其他的。如果你用过Photoshop,那么想必对增强图像的对比度很熟悉。在Photoshop中,我们对下面这张图执行“色阶”调整:执行“色阶”调整:可以观察到图片的对比度明显增强。(白的更白,黑的更黑了)它的原理是这样的:将原图中灰度值小于55的点全部强制置为0,将灰度值高于140的点强制置为255,并且将55~140之间的色阶强行...

机器视觉中提高解码成功率的思路分析

以Halcon为例,一般解码的步骤为:创建解码模型——设置解码参数——执行解码——清除模型回收内存。如下所示:create_bar_code_model ([], [], BarCodeHandle) set_bar_code_param (BarCodeHandle, 'num_scanlines', 30) find_bar_code (Image, SymbolRegio...

select_shape_proto算子的几种特征模式含义解析

select_shape_proto是一个非常有用的region筛选算子,但是由于难以理解,因此一般人使用得不是太多。 算子签名如下:select_shape_proto(Regions, Pattern : SelectedRegions : Feature, Min, Max : )其中Feature可以取这7种模式:'distance_center'、'distanc...

视觉检测之产品瑕疵检测(3)赃污检测

赃污通常是比较浅的痕迹,一般你是无法通过threshold来处理的,否则它就不是什么赃污而是刮伤、疤痕之类的。处理这种不明显的痕迹,傅立叶变换算子是最常用到的。素材图:上面的问题图片你可能并不觉得有什么问题,我们用photoshop来调节一下色阶。结果看到了红圈中我示意的两个缺陷处。我们先给出处理代码,后面在分析一下代码:read_image (Image, 'C:/Users/Admin...

Halcon-边缘检测算子

边缘检测的定义 :使用数学方法提取图像像元中具有亮度值(灰度)空间方向梯度大的边、线特征的过程。边缘 是指周围像素灰度有阶跃变化或屋顶等变化的那些像素的集合。图像的边缘对应着图像灰度的不连续性。显然图像的边缘很少是从一个灰度跳到另一个灰度这样的理想状况。真实图像的边缘通常都具有有限的宽度呈现出陡峭的斜坡状。边缘的锐利程度由图像灰度的梯度决定。梯度是指灰度变化的最快的方向和数量。常见的边缘点有三种...

halcon的基础测量技术(1)

2.1 the process of 1D Edge extraction Then, the mean gray value along each line of projection is calculated. The sequence of these mean valuesis called the profile简单的说 是以 profile Line 为基准 对profile Lin...

halcon中你不知道的标定板细节

本人文着重阐述以下问题: halcon是否只能使用halcon专用的标定板?halcon标定板如何生成?halcon标定板如何摆放,拍照数量有无限制? halcon是否只能使用halcon专用的标定板? halcon提供了简便、精准的标定算子并且提供了标定助手,这无疑大大方便了广大开发者。在halcon中有两种方式可以进行标定:如halcon自带例程中出现的,用halcon定义的标定板 ,如下图...

halcon之屌炸天的自标定(1)

本次先对halcon的自标定做个整体介绍,了解屌炸天的自标定在实际应用中的应用与实现方法,具体的编程细节将在后续的文章中介绍。halcon提供了一种自标定的算子,它可以在不用标定板的情况下,标定出相机内参(无焦距),相对于多幅标定无法获取相机的外参。求出了相机内参就可以进行畸变校正,因而自标定相对于多幅标定,在畸变校正方面更快捷,这样设备在现场更容易操作、维护。在畸变校正以后我们同样可以放置一个参...

HALCON之喷码OCR识别案例

一个喷码识别的案例read_image (Image, 'D:/用户目录/Desktop/2.png') rgb1_to_gray(Image, Image) get_image_size (Image, Width, Height) * 获取喷码区域的方法很多 比如可以用mean+dyn的动态阈值 dots_image (Image, Dot...

halcon之屌炸天的变形匹配(1)

在日常工程应用中,我们通常通过halcon的 shape-based matching(形状匹配)进行各种定位,如以前文章介绍的这样,理解各个参数并灵活应用通常就能得到很好的匹配效果和匹配速度,当待匹配物体有轻微变形时,并不影响得到的匹配结果,然后当待匹配物体有较大变形时,如塑料产品在成形时变形、纺织产品的花纹因为褶皱变形等,要想得到精确的定位结果就显得捉襟见肘, 如下图所示,印刷品有较大变形,在...

Halcon12新特性之VS可视化调试插件

当我们用VC\C#调试halcon代码的时候,通常会遇到一个头痛的问题,我们无法看到halcon变量的调试信息如下图:什么鬼。。。什么鬼比如我们想看一个double数值变量,我们需要double score = htScore.D()或者当我们想看一个image、region的中间处理结果时,我们需要存文件或者输出到窗口中如此的繁琐以至于大大降低了开发效率。 然而这些烦恼在halcon12中得到了...

halcon之扫描文档祛底色

很多扫描APP都有祛底色的功能:用于改善成像质量,通常扫描后的图像可能会用于存档或者再打印。 本来想通过扫描后打印,想法是好的,但是打印出来的文件不是自己想象的那样,打印出来有底色,而且很严重,那该怎么办才能解决? 熟悉photoshop的通常通过色阶调整来达到此目的,但是今天介绍的是用halcon灰度拉伸函数(scale_image)来达到此目的。下图是halcon祛底色的效果。在halcon的...

halcon之最小二乘拟合直线

如果不了解最小二乘算法 请先阅读: Least squares的算法细节原理https://en.wikipedia.org/wiki/Least_squares通常在halcon中拟合直线会用houghline或者 fitline。本文提供一种新的选择,用halcon的矩阵操作实现最小二乘拟合直线首先随机生成一组数据 Mx:=[100:10:500] tuple_length(Mx,len)...

halcon提取衣服徽章

收到一封email,有个学员求助去除衣服上纹理的干扰,然后提取衣服上徽章的边缘的方法。我想他肯定是个很努力上进的boy,在求助以前也许已经试过各种方法,通过二值化不断的调试阈值, 寻找各种边缘检测的算子不断的实验,或者更高阶的用FFT试图去掉背景等等,我想起了我刚入门的时候 那股不达目的绝不罢休的狠劲,在网络上或者图书馆搜索相关的书籍, 试图找到答案,然而受制于自身知识体系的不完善,并不能得到满意...

视觉检测之产品瑕疵检测(2)金属表面疤痕

这是一条金属棒上的伤疤,不知道被什么啃去了一块,你说该怎么才能把这个伤疤提取出来呢?肯定是非常简单的,核心一定是threshold算子做阈值分割,然后就是select_shape选择区域只不过在threshold算子的前置算子会有所不同,在select_shape后面的后置算子也如此。本例子提供三种方法,基本上思路都是增加图像,然后threshold阈值分割。方法一。dev_update_off...

视觉检测之产品瑕疵检测(1)污点检测

先来张素材图read_image (Image, 'C:/Users/Administrator/Desktop/划痕+油污+瑕疵的检测/划痕、油污、瑕疵/胶囊表面污点检测/Image.bmp') rgb1_to_gray(Image,GrayImage) scale_image_max(GrayImage,ImageScaleMax) mean_image(ImageSca...

Halcon学习(4-7)Region相关的算子

Chapter_14:Regions14.1 Access1. get_region_chain 功能:一个对象的轮廓(contour)作为链式码。2. get_region_contour 功能:查询一个目标的轮廓(contour)。3. get_region_convex 功能:查询突起的外表作为轮廓(contour)。4. get_region_points 功能:查询一个区域的像...

Halcon的区域特征

当我们想要提取Region时,图像处理后,往往存在几个类似的Region,此时,需要根据Region的一些特殊特征,来选择指定的Region。求Region指定特征值:region_features(Regions : : Features : Value)根据特征值选择区域:select_shape(Regions : SelectedRegions : Features, Operation,...

视觉检测之焊点检测(五):动态定位焊点区域ROI续

上篇我们讲到通过动态定位焊点的ROI区域,以排除压块位置跳舞的影响。正常情况下,我们的region可以通过下移30个像素,取得很好的覆盖ROI,如图:但是,上面的算法在移动30个像素时,无法处理下面这样的情况,如图:因此,我们的算法必须能检测我们要移动的30个像素是否会超出焊片(白色)的区域。我们先把程序放上来:list_files ('C:/Users/Administrator/Des...

halcon处理:划痕、油污、瑕疵

划痕、油污、瑕疵,常用的方法有傅里叶变换和Blob分析。1.表面划痕invert_image(Image,ImageInvert1) mult_image(ImageInvert1, ImageInvert1, ImageResult,0.01, 0) gen_sin_bandpass (ImageBandpass, 0.6, 'none', 'rft'...

halcon-周期性噪声去除例子(一)

参考了HALCON例程和其他网友的思路, 简单地去除周期性噪声方法如下. 因是初学者,所以有错误的地方还请多多指正.素材图片:程序:read_image (Image1, 'C:/Users/Administrator/Desktop/a1.png') get_image_size (Image1, Width, Height) fft_generic (Image1, I...

halcon摄像头获取图像和相关参数的算子总结

1、close_all_framegrabbers ( : : : ) 关闭所有图像采集设备。2、close_framegrabber ( : : AcqHandle : ) 关闭Handle为AcqHandle的图像采集设备。3、open_framegrabber ( : : Name, HorizontalResolution,VerticalResolution, ImageWid...

Halcon学习笔记之缺陷检测(二)

例程:detect_indent_fft.hdev说明:这个程序展示了如何利用快速傅里叶变换(FFT)对塑料制品的表面进行目标(缺陷)的检测,大致分为三步:首先,我们用高斯滤波器构造一个合适的滤波器(将原图通过高斯滤波器滤波);然后,将原图和构造的滤波器进行快速傅里叶变换;最后,利用形态学算子将缺陷表示在滤波后的图片上(在缺陷上画圈)。注:代码中绿色部分为个人理解和注释,其余为例程中原有代码 *...

纹理特征分析的灰度共生矩阵(GLCM)

纹理分析是对图像灰度(浓淡)空间分布模式的提取和分析。纹理分析在遥感图像、X射线照片、细胞图像判读和处理方面有广泛的应用。关于纹理,还没有一个统一的数学模型。它起源于表征纺织品表面性质的纹理概念,可以用来描述任何物质组成成分的排列情况,例如医学上X 射线照片中的肺纹理、血管纹理、航天(或航空)地形照片中的岩性纹理等。图像处理中的视觉纹理通常理解为某种基本模式(色调基元)的重复排列。因此描述一种纹理...

获取Image图像中Region区域的特征参数

area_center_gray ( Regions, Image : : : Area, Row, Column ) 计算Image图像中Region区域的面积Area和重心(Row,Column)。cooc_feature_image ( Regions, Image : : LdGray, Direction : Energy,Correlation, Homogeneity, Cont...

视觉检测之焊点检测(四):动态定位焊点区域ROI

如果机构连压块的位置都不给你保障,那就惨了,就如下图这个样子了。左边的图如果算是正常的话,右边的图是不是你想叫妈?压块的位置在跳舞,逼得你不能用固定的ROI来框焊点。 来一张素材图,然后我来整个算法的思路。基本的思路是,threshold算子取得白色部分的region,然后求出一个内接的Rectangle,然后做下定位把这个矩形画出来。这个就是我们要的动态的ROI了,无论压块怎么跳舞都不怕了!li...
会员中心
搜索
«    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