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

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

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

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

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

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

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

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

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

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

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

halcon电路宽度测量的例子

处理要求:根据客户给的宽度,计算出电路宽度太窄的为NG原图:处理程序:read_image (Image, '1.png')rgb1_to_gray(Image, GrayImage)threshold(GrayImage, Region, 130, 255)connection (Region, ConnectedRegions)select_shape(ConnectedReg...

halcon测量圆同心度

处理要求测量圆环同心度处理源码read_image (Image, 'C:/Users/22967/Desktop/图像Barrel 20201024/201024 手机行业 摄像头检测/Barrel 背光/Pic_2020_10_24_095951_blockId#20579.bmp') dev_close_window () dev_open_window_fit_imag...

halcon检测圆形内外毛刺

处理要求椭圆/圆环(产品易变形,为椭圆)内外圆毛刺(凸起)缺口(凹陷)检测。处理方法1方法一思路1、这是一个圆环产品检测,我们可以通过产品区域与标准圆环进行比较得出不良区域。2、为了避免误检、误判,我们可以通过区域筛选阈值偏移的方法滤除干扰区域,可以将标准圆环放大消除一些圆度导致干扰。3、根据不同用户的精度要求,可以通过调节缺陷面积进行筛选。4、方法1的代码量有点多,但是更贴近工业现场使用。方法一...

常见的hlacon标定流程及其相关算子的解释

(一)halcon标定步骤1、创建标定数据模型使用算子 create_calib_data( : : CalibSetup, NumCameras, NumCalibObjects : CalibDataID)CalibSetup:创建的内容NumCameras:相机个数NumCalibObjects :标定项目数CalibDataID:标定句柄例如:create_calib_data (‘cal...

面扫描(除法),多扫描(多项式)

halcon标定助手里选择摄像机模型时,要你选择面阵相机的类型,有:面扫描(除法)、面扫描(多项式)由于翻译的问题,这两种类型有时也称为:division(分工)模型和polynomial(多项式)模型下面是两者的区别:3D相机模型面扫描针孔相机:面扫描相机使用一个镜头来进行中心投影,图像可能会出现径向和切向畸变。面扫描远心相机:面扫描相机使用一个远心镜头来进行平行投影,图像可能会出现径向和切向畸...

Halcon 增强图像对比度的方法总结

Halcon中增强图像的对比度也是预处理中的一环,主要有如下方式:1. 灰度变换a. scale_image 原理:可以理解为用一个模板扫描图像中的每一个像素,模板中像素最大值和最小值的差作为模板中心像素点的值。 作用:拉开图像的对比度,让图像中黑的地方更黑,亮的地方更亮。b. scale_image_max:将灰度值拉伸到0-2552. 增强图像对比度a. emphasize...

halcon算子 calibrate_hand_eye

名称calibrate_hand_eye —执行手眼校准。原型calibrate_hand_eye( : : CalibDataID : Errors)描述操作员根据校准数据模型确定机器人(“手”)相对于相机或3D传感器(“眼睛”)的3D姿势。借助确定的3D姿态,可以将摄像机坐标系中的校准对象的姿态转换为机器人的坐标系,然后可以例如抓取被检零件。机器人摄像机(手眼)系统有两种可能的配置:摄像机可以...

halcon region的行程编码、行程相关功能

这个功能是region里面的一个偏门的功能。纯了解一下,暂时不知道能有啥子用途。行程编码(Run-Length Encoding) 仅存储一个像素值以及具有相同颜色的像素数目的图象数据编码方式称为行程编码,或称游程编码,常用RLE(Run-Length Encoding)表示。 该压缩编码技术相当直观和经济,运算也相当简单,因此解压缩速度很快。 RLE压缩编码尤其适用于计算机生成的图形图像,...

勇哥的实验:halcon阈值分割算子细谈(五)var_threshold

阈值分割引言C#阈值分割有非常多的算法,大体上分为全局和局部算法。 全局算法包括全局固定阈值和基于图像直方图的阈值,局部算法包括局部动态阈值分割。 基于图像直方图阈值分割的方法也有很多,比如常规的高斯滤波双峰法,OTSU大津法。 但是这类所有的法都基于一个假设:图像是有前景和背景的,待分割目标处于背景中,即图像直方图是双峰的。 如果因为非均匀光照导致待分割目标不处于背景或前景中,即图像直方...

勇哥的实验:halcon阈值分割算子细谈(四)hysteresis_threshold

阈值分割引言C#阈值分割有非常多的算法,大体上分为全局和局部算法。 全局算法包括全局固定阈值和基于图像直方图的阈值,局部算法包括局部动态阈值分割。 基于图像直方图阈值分割的方法也有很多,比如常规的高斯滤波双峰法,OTSU大津法。 但是这类所有的法都基于一个假设:图像是有前景和背景的,待分割目标处于背景中,即图像直方图是双峰的。 如果因为非均匀光照导致待分割目标不处于背景或前景中,即图像直方...

勇哥的实验:halcon阈值分割算子细谈(三)binary threshold,bin_threshold

阈值分割引言C#阈值分割有非常多的算法,大体上分为全局和局部算法。 全局算法包括全局固定阈值和基于图像直方图的阈值,局部算法包括局部动态阈值分割。 基于图像直方图阈值分割的方法也有很多,比如常规的高斯滤波双峰法,OTSU大津法。 但是这类所有的法都基于一个假设:图像是有前景和背景的,待分割目标处于背景中,即图像直方图是双峰的。 如果因为非均匀光照导致待分割目标不处于背景或前景中,即图像直方...

勇哥的实验:halcon阈值分割算子细谈(二)histo_to_thresh,auto_threshold

阈值分割引言阈值分割有非常多的算法,大体上分为全局和局部算法。 全局算法包括全局固定阈值和基于图像直方图的阈值,局部算法包括局部动态阈值分割。 基于图像直方图阈值分割的方法也有很多,比如常规的高斯滤波双峰法,OTSU大津法。 但是这类所有的法都基于一个假设:图像是有前景和背景的,待分割目标处于背景中,即图像直方图是双峰的。 如果因为非均匀光照导致待分割目标不处于背景或前景中,即图像直方图无...

勇哥的实验,常见halcon图像过滤器的测试(二):bilateral_filter 双边滤波器

勇哥注:图片过滤器是一切缺陷检测、边缘提取、图片分割前处理、分类器应用等等的基础。有很重要的研究意义。因此勇哥会写成一个系列贴子以和大家一起分享。-正文---------------------------------------------------------------------双边滤波(Bilateral filter)是一种可以保边去噪的滤波器。其输出像素的值依赖于邻域像素的值的加权...

Basler相机外部触发设置

一、相机硬件接线图2号引脚接传感器的触发信号引脚,5号与传感器共地连接。 二、pylon软件设置三、halcon软触发相机拍照Halcon采集助手设置软触发:1.set_framegrabber_param (AcqHandle, 'TriggerMode', 'On')2.set_framegrabber_param (AcqHandle, 'Trigge...

Halcon 中实现 Otsu 算法

Halcon 中的全局阈值分割算子 binary_threshold 中,Method = 'max_separability' 指的就是Otsu法(最大类间方差法,有时也称之为大津算法)。Otsu 算法也叫全局最优阈值处理,使用聚类思想,把图像的灰度数按灰度级分成2个部分,使得两个部分之间的灰度值差异最大,每个部分之间的灰度差异最小,通过方差的计算来寻找一个合适的灰度级别来划分...

勇哥的实验,常见halcon图像过滤器的测试(一):wiener_filter 维纳滤波器

勇哥注:图片过滤器是一切缺陷检测、边缘提取、图片分割前处理、分类器应用等等的基础。有很重要的研究意义。因此勇哥会写成一个系列贴子以和大家一起分享。-正文---------------------------------------------------------------------维纳滤波器(Wiener filter)是由数学家维纳(Norbert Wiener) 提出的一种以最小平方...

halcon的gray_range_rect算子

先来看年过个算子的原型:gray_range_rect( Image : ImageResult : MaskHeight, MaskWidth: ) 函数作用:决定某个方形区域内的灰度值,计算方形区域内的最大最小灰度的差(最大-最小),并体现到每个图像点上。如果MaskHeight和MaskWidth是偶数,它们被变为靠近的小的奇数值,图像边缘的灰度值是呈镜像出现的。 参数列表:Image(in...

勇哥关于FFT频域的研究实验记录(二)

http://www.skcircle.com/?id=1544 接上篇。本篇开头我们再强调一下频域空间的各种过滤器就是对图片中的低频与高频成份进行过滤,保留我们想要的缺陷部分的成分。对图像而言:低频分量(低频信号):代表着图像中亮度或者灰度值变化缓慢的区域,也就是图像中大片平坦的区域,描述了图像的主要部分,是对整幅图像强度的综合度量。高频分量(高频信号):对应着图像变化剧烈的部分,也就是图像的...

halcon的图像间的叠加算法(一)图像加法

在photoshop中,两个图层间可以有许多叠加算法。如下图所示:变暗正片叠底颜色减淡叠加有兴趣的朋友可以逐一试一试。这个系列的贴子勇哥就想着模拟实现photoshop的这些算法。第一篇是图像的加法。===============================read_image (cat, ‘C:/Users/PC01/Desktop/timg (1)_副本.jpg’)rgb1_to_gray...

Halcon之 Variation Model(变形匹配)

Variation Model的主要原理是将待检测的图像与一张标准图像作比较,找出待检测图像与标准图像(ideal image)的明显差异(也就是不良)。标准图像可以采用几张OK品的图像训练(training)得到,也可以通过对一张OK品图像进行处理得到。训练后得到标准图像和一张variation图像(variation image),variation图像中包含了图像中每个像素点灰度值允许变化的...

halcon的数据类型

勇哥发现频域用高斯模糊滤波后再转时域后的图片,居然阈值取的负数范围。 这才意识到一个知识的盲点。 这个盲点就是halcon的数据类型,紧急在这里补上一课:两大类:1、图形参数(之前勇哥称为图标变量)Iconic (image, region, XLD)2、与控制参数Control (string, integer, real, handle),在Halcon算子的参数中,依次为:输入图形参数、...

勇哥关于FFT频域的研究实验记录(一)

在缺陷检测时,频域(FFT)和空间域经常转换,以利用两者的特点。例如下面的代码,就是先把空间域转频域,做完频域空间的算法后(convol_fft 卷积计算),再把频域转回空间域。rft_generic (img, ImageFFT, 'to_freq', 'none', 'complex', Width) convol_fft(ImageFFT,...

交流群里的问题(3)粘连形状的分割问题

如下图,要选择中图中的白色线。因为粘连的原因,第二根线用阈值不好搞 。勇哥花点工夫研究了一下。直觉告诉我应该是有办法的,结果整了四十分钟。结果如下:read_image (Qq20201118202348, 'C:/Users/Administrator/Desktop/QQ图片20201118202348.png') var_threshold(Qq202011182023...

Halcon双目结构光定位(5):创建点云模板

其实讲了这么久点云处理,点云操作无非就是对一系列数组进行操作。这篇博文给大家讲解如何从获取的点云中提取ROI点云区域,并获取我们想要的点云模板。1.从调平的点云数据中提取我们想要的ROI点云通过显示算子,调正点云区域参数Pose是我们从哪个角度观察我们的点云数据,将Rx,Ry,Rz均设置成0,0,0.调正点云 Pose := [-0.1e-3,-0.47e-3,600,0,0,0,0]vis...

Halcon双目结构光定位(4):选取最大点云区域的去噪手法+拟合光平面方式调平点云

1.首先对点云以高度方向初步去噪2.点云数据信息提取对于物料点云的长宽高的判别,最常用的手法是最最小外接矩形,通过获取最小外接矩形的L1,L2,L3,来确定点云的位置。也可以通过一下算子求得点云信息get_object_model_3d_params (ObjectModel3D, 'point_coord_z', GenParamValue)1更正点云分割算子的参数含义//将4m...

Halcon三维测量(4):点云图转深度图+点云滤波(补洞)+断线拟合

对于三维测量的套路,都是将图像转成二维进行测量和处理我仍然以这个开关检测项目为例,开关点云有x,y,z,三个空间坐标如果对这个三维点云直接处理,有一个思路我提供给大家,将点云模型完全调平,然后针对x,y,z其中一个坐标进行测量,其实这种思路也是将三维图转为平面。一.点云图转深度图+点云滤波本篇着重讲解如何将点云模型转为深度图的思路。1.将点云模型拆分成x,y,z三个数组,这里的数据可以自动清空,具...

Halcon双目结构光定位(3):判别六面体+获取机器臂抓取点(六面翻转)

上一讲无序抓取,我们说到将去噪后的点云,按’z’方向从高到低排序。这一篇博文将叙述,判别匹配到的面是六面体的哪个面(正面、侧面、反面…)一.判别六面体首先将最高点的平面位姿,转换成矩阵,获得zx,zy,zz,通过判别zz的角度,确定当前平面落在那个象限内。通过zx,zy判定当前Pose的具体位姿,(正面,反面,侧面)大家可以学习一下这个switch的写法。框内的物体杂乱无章,可能会出现机器臂根本无...

Halcon三维测量(3):鞋底涂胶+边缘提取

本篇文章讲解三维测量鞋底涂胶项目的思路。一.读取模型二.调平模型+预处理去噪调平三大手法由上图可知,鞋底模型是一个空间物体,且主轴明确,所以有三种方法做调平处理。调平方法1:最小外接矩形调平方法2:寻找立体物体的主轴1.首先切除鞋底模型,获得平台点云。2.寻找鞋底的主轴3.调整鞋底点云姿态调平方法3:获取平台点云,拟合平面,调整整体点云姿态。三.切片处理+获取边缘点(涂胶)将鞋底点云模型三角化处理...

Halcon三维测量(2):三维点云模型三角化+切片处理+边缘宽度测量

这一篇文章叙述一个开关测量的项目先讲解项目需求:1.如图是一个开关的三维点云模型,需要检测开关边缘间的距离(红圈部分),以及检测拨动部位的高度。一.调平操作1.看我下面的博文,对点云模型调平处理有深刻的讲解2.这个项目采用的是立体物理调平算法(moment)[调平三大手法]二.去噪处理获取空间ROI1.同样是采用高度筛选,以及特征点连通域分割的手法,提取ROI。点云去噪三.点云模型三角化处理三角化...

halcon小技巧:二维平面根据两个点确定方向向量+三维空间点确定姿态

一.二维平面确定法向向量生成两个点,这个算子在Halcon三维中常用。讲点连接成线 dev_set_line_width(2) *画点 dev_set_color('red') gen_cross_contour_xld(Cross1, 90, 103, 16, 0.785398) gen_cross_contour_xld(Cross2,...
会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 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