《Halcon》
阿卡基-马
业余马拉松选手
展开
-
Halcon如何注释单行以及多行
1、快捷键注释:单行注释:直接将鼠标移动到当前行最开始的位置,然后按shift+*多行注释:选中所有代码再按F42、工具栏选中注释选中代码并点击红圈中带红叉的即可,撤销注释选中带勾的即可...原创 2020-01-18 15:06:00 · 2504 阅读 · 3 评论 -
《Halcon》表面划痕检测方法
划痕、裂缝等产品缺陷用肉眼来查看可能因为太小导致检查不出来,导致产品出厂后有缺陷,从而影响到厂家的声誉及用户体验。有什么办法能解决划痕检测的问题呢?下面就告诉您: 在工业生产中总是经常遇到裂痕、划痕和变色等产品的表面缺陷问题,而这些问题不管对于人工检测还是机器视觉检测都极富挑战。其难度在于该类缺陷形状不规则、深浅对比度低,而且往往会被产品表面的自然纹理或图案所干扰。因...原创 2019-11-15 21:52:58 · 11025 阅读 · 2 评论 -
halcon 特征提取
gray_features ( Regions, Image : : Features : Value )Calculates gray value features for a set of regions.gray_features has a set of regions (Regions) as input. For each of these regions the features ...原创 2019-11-13 10:44:07 · 2211 阅读 · 0 评论 -
【halcon-tuple】halcon学习备忘三(数组的一些常用操作算子)
1、求数组元素的最大值tuple_max(Array,Max)2、求数组元素的最小值tuple_min(Array,Min)3、求数组元素的平均值tuple_mean(Array,Mean)4、求数组元素的绝对值tuple_abs(Array,Abs)5、两个数组相加tuple_add(Array1,Array2,Sum)6、两个数组相减tuple_su...转载 2019-06-25 14:44:28 · 5952 阅读 · 0 评论 -
Halcon之HTuple数据和VC数据的相互赋值
// HTuple→VC 数据类型转换HTuple hTuple = 1234;int i = hTuple[0].I(); // i=1234long l = hTuple[0].L(); // l=1234long lNumber = hTuple.Num(); // lNumber=1,数据个数...转载 2019-06-21 15:08:40 · 2244 阅读 · 0 评论 -
Chapter_19:XLD
19.1 Access1. get_contour_xld功能:返回XLD轮廓(contour)的坐标。2. get_lines_xld功能:返回一个XLD多边形(polygon)数据。3. get_parallels_xld功能:返回一个XLD并行数据。4. get_polygon_xld功能:返回一个XLD多边形(polygon)数据。19.2 ...转载 2019-06-20 17:21:30 · 729 阅读 · 0 评论 -
【Halcon-example】angio.hdev
dev_update_off ()read_image (Angio, 'angio-part')get_image_size (Angio, Width, Height)dev_close_window ()dev_open_window (0, 0, Width, Height, 'black', WindowID)set_display_font (WindowID, 14...原创 2019-06-20 16:26:22 · 435 阅读 · 0 评论 -
Lines_gauss——检测图像中的线条及其宽度,在视觉表面检测方面应用广泛
lines_gauss(Image : Lines : Sigma, Low, High, LightDark, ExtractWidth, LineModel, CompleteJunctions : )Image:输入图像Lines:提取出的亚像素精度线条Sigma:应用的高斯平滑的系数Low:后滞阈值分割的低值High:后滞阈值分割的高值LightDark:提取图像中...转载 2019-06-20 14:58:22 · 2394 阅读 · 0 评论 -
【halcon-Operator】 Halcon中很重要的一个算子 lines_gauss
过滤算子存在的问题In the following, we will take a closer look at special cases: Using an image with a reduced domain as input for a filter, and problems caused by gray values outside of the image domain.I...原创 2019-06-20 11:21:00 · 3844 阅读 · 0 评论 -
Halcon学习笔记_04:划痕、油污、瑕疵
划痕、油污、瑕疵,常用的方法有傅里叶变换和Blob分析。1.表面划痕invert_image(Image,ImageInvert1) mult_image(ImageInvert1, ImageInvert1, ImageResult,0.01, 0) gen_sin_bandpass (ImageBandpass, 0.6, 'none', 'rft', Width, Height...转载 2019-06-20 09:55:51 · 2246 阅读 · 0 评论 -
玻璃划伤检测
对算法进行了一些改进,但其实还有很多小的划痕没标出来dev_close_window ()dev_open_window (0, 0, 512, 360, 'black', WindowHandle)* Image Acquisition 01: Code generated by Image Acquisition 01read_image (Image, '13_284...原创 2019-06-18 22:39:14 · 2519 阅读 · 1 评论 -
【halcon】带纹理的划痕检测 经测试鲁棒性好 可以检测任何方向的划痕!
read_image (Image928957880c86d59583515, 'E:/work/OpenCV/flaw.bmp')***************** 角度设置****************rotate_image (Image928957880c86d59583515, Image928957880c86d59583515, 0, 'constant')get...转载 2019-06-18 22:24:36 · 2345 阅读 · 6 评论 -
【halcon】油污检测
read_image (Image1, 'E:/work/OpenCV/Image/oil.jpg')decompose3(Image1, Image11, Image2, Image3)threshold (Image11, Regions, 85, 171)fill_up(Regions, RegionFillUp)connection(RegionFillUp, Conn...原创 2019-06-18 21:47:46 · 3105 阅读 · 0 评论 -
【Halcon】钢铁划痕检测
dev_close_window()dev_update_off()read_image(Image, './1.jpg')get_image_size(Image, Width, Height)rgb1_to_gray(Image, GrayImage)dev_open_window(0, 0, Width/3, Height/3, 'black', WindowH...转载 2019-06-18 21:22:26 · 2163 阅读 · 3 评论 -
【halcon】 Matching助手
通过模板匹配找到的是模板的中心点坐标——r_center,c_center,如果不需要显示找到的object的样子,这时候模板匹配的作用已经完成了,之所以要进行Vector_angle_to_rigid和affine_trans_contour_xld,是因为模板的中心点在模板创建后已经变成(r,c)=(0,0)点,而模板的contour是围绕这个中心点的,若要在被搜索的图片上准确的显示这个co...原创 2019-06-25 22:05:58 · 2346 阅读 · 0 评论 -
Halcon学习(四)图像处理中的两个坐标系
写在前面:从“矩阵都是对基的变换”这个角度去理解仿射变换,这样更为直观。矩阵的学习应从矩阵的几何意义入手一 参考MATLAB文档1. Pixel Indices(matlab文档)origin in upper left corner of the image (pixel 和 image 都是这个坐标系),左上角的像素坐标为(1,1),右边的像...转载 2019-06-26 13:54:54 · 6378 阅读 · 0 评论 -
Halcon的内存管理
5.4 Memory ManagementAll of HALCON's classes, i.e., not only HImage, HRegion, HTuple, HFramegrabber etc., but also the class HObject used when calling operators in the procedural approach, release...原创 2019-09-29 15:25:21 · 2946 阅读 · 0 评论 -
halcon中你不知道的标定板细节
本文着重阐述以下问题:halcon是否只能使用halcon专用的标定板? halcon标定板如何生成? halcon标定板如何摆放,拍照数量有无限制?halcon是否只能使用halcon专用的标定板?halcon提供了简便、精准的标定算子并且提供了标定助手,这无疑大大方便了广大开发者。在halcon中有两种方式可以进行标定:如halcon自带例程中出现的,用...原创 2019-08-15 20:08:44 · 2148 阅读 · 0 评论 -
halcon 标定详解
**创建标定板gen_caltab(7,7,0.008,0.5,'48_48mm.descr','48_48mm.ps') *=======标定内参dev_close_window ()dev_open_window (0, 0, 652, 494, 'black', WindowHandle)dev_update_off ()dev_set_draw ('ma...原创 2019-08-15 20:04:50 · 3276 阅读 · 4 评论 -
【Halcon】线阵相机标定
我是使用halcon标定助手来标定线阵相机的,对于里面的一些参数来做一个记录说明:首先下面的两个数组就是标定之后得到的相机内参和外参内参:CameraParameters := [0.0357809 , -61.3384 , 6e-006 , 6e-006 , 915.932 , 182.341 , 2048 , 3840 , 1.41028e-006 ...转载 2019-08-15 19:43:52 · 6581 阅读 · 1 评论 -
【Halcon】关于轮廓匹配的一些算子
Shape-BasedList of Operatorsclear_shape_modelFree the memory of a shape model.create_aniso_shape_modelPrepare an anisotropically scaled shape model for matching.create_aniso_shape_model_xldPr...原创 2019-08-15 14:52:11 · 2478 阅读 · 0 评论 -
classification based on deep learning
This chapter contains operators for classification based on deep learning, both for the training and inference phases.The term deep learning refers to a family of machine learning methods, used f...原创 2019-08-14 21:36:15 · 2362 阅读 · 0 评论 -
train a deep learning fruit classifier
* This example shows how to train a deep learning fruit classifier, along with* a short overview of the necessary steps.** Initialization.dev_update_off ()dev_close_window ()WindowWidth := 800...原创 2019-08-14 21:11:41 · 584 阅读 · 0 评论 -
【halcon-案例】刀痕崩边检测
read_image (Image, 'K:/3.Halcon学习视频/Images/刀痕崩边1.bmp') dev_set_draw ('margin') get_image_size (Image, Width, Height) gen_rectangle1 (Rectangle, 0, 0, Height-1, Width-1) threshold (Image, Region...原创 2019-07-06 16:46:04 · 2586 阅读 · 0 评论 -
【halcon】 测量助手 生成的代码
measure_pairs* Measure 01: Code generated by Measure 01* Measure 01: Prepare measurementAmplitudeThreshold := 20RoiWidthLen2 := 5.5set_system ('int_zooming', 'true')* Measure 01: Coordinates f...原创 2019-06-24 21:28:21 · 8272 阅读 · 0 评论 -
【Halcon-chapter】1D Measuring
1D MeasuringList of Operators ↓This chapter contains operators for 1D measuring.Concept of 1D measuringWith 1D measuring, edges, i.e., transitions from light to dark or from dark to light, can...转载 2019-06-24 15:14:10 · 384 阅读 · 0 评论 -
Halcon 1D测量(1) :测量边缘对
首先先说明一下Hdevelop图形显示界面的坐标:基本上和其他环境中图像的坐标一样,左上角为(0,0),X轴为横轴,Y轴为纵轴,行Row指的是Y轴坐标,列Column指的是X轴坐标关于gen_measure_rectangle2:它是获得一个测量句柄Row, Column是矩形的中心Length1, Length2是矩形区域的长和宽的一半,关于区域的宽度,尽量在包住边缘的同时设置的...转载 2019-06-24 15:02:42 · 963 阅读 · 0 评论 -
Halcon学习知识点
halcon常用算子1.Filters 1.1 enhancement 1.1.1emphasize — Enhance contrast of the image. 1.1.2 illuminate — Illuminate image. 1.2 lines 1.2.1 lines_gaus...原创 2019-06-18 21:19:57 · 1212 阅读 · 0 评论 -
halcon机器视觉玩转车牌识别-超人视觉罗超
本人超人视觉-罗超: 大家好,直接上干货。本人将从哲学和技术结合的全新视角来理解,我的整个学习视觉的思想套路都是从哲学世界观来展示,下面我将逐步从我的第一篇博客开始给大家展示。首先我们要对一个机器视觉系统有一个完整的认识,一个完整的机器视觉系统是由光源、成像系统、图像捕捉系统(CCD/CMOS)、AD转换系统、图像处理和决策模块、控制系统。其中的图像处理和决策模块分为四个处理步骤:采集-》...转载 2019-06-18 21:07:55 · 2189 阅读 · 0 评论 -
halcon机器视觉缺陷检测之划痕-超人视觉
大家好,直接上干货,缺陷检测是视觉需求中难度最大一类需求,主要是其稳定性和精度的保证。首先常见缺陷:凹凸、污点瑕疵、划痕、裂缝、探伤等。常用的手法有六大金刚(在halcon中的ocv和印刷检测是针对印刷行业的检测,有对应算子封装):1.blob+特征2.blob+差分+特征3.光度立体4.特征训练5.测量拟合6.频域+空间结合。 此处用群友给的一个项目实际图...转载 2019-06-18 20:34:17 · 9197 阅读 · 2 评论 -
halcon算子学习
1. gen_contour_polygon_xld( : Contour : Row, Col : )功能:根据一个多边形(polygon)(以元组形式给出)创建一个XLD轮廓(contour)。(输出)contour:输出创建的XLD轮廓;(输入)Row:输入的行数组;(输入)Col:输入的列数组;例:gen_contour_polygon_xld( Contour, [1...转载 2019-03-15 21:01:50 · 2253 阅读 · 0 评论 -
算子 create_shape_model & find_shape_model
HDevelop开发环境中提供的匹配的方法主要有三种,即Component-Based、Gray-Value-Based、Shape-Based,分别是基于组件(或成分、元素)的匹配,基于灰度值的匹配和基于形状的匹配。这三种匹配的方法各具特点,分别适用于不同的图像特征,但都有创建模板和寻找模板的相同过程。这三种方法里面,我主要就第三种-基于形状的匹配,做了许多的实验,因此也做了基于形状匹配的物...原创 2019-03-07 21:40:19 · 5109 阅读 · 0 评论 -
gen_image_to_world_plane_map (Operator)
Namegen_image_to_world_plane_map — Generate a projection map that describes the mapping between the image plane and a the plane z=0 of a world coordinate system.Signaturegen_image_to_world_plane...原创 2019-03-15 09:46:18 · 1917 阅读 · 0 评论 -
halcon学习笔记(10)——标定
摄像头拍摄时候,图像均有畸变,但是图像的扭曲变形均是有规律的成线性的,所以可以通过算法矫正。矫正的算法可以在网上找到,这里就叙述了。halcon标定过程需要在镜头内放置标定板;标定板一般选用30*30mm的;可以通过halcon程序来制作:gen_caltab(::XNum,YNum,MarkDist,DiameterRatio,CalTabDescrFile,CalTabPSFile :) ...转载 2019-03-14 19:49:36 · 2161 阅读 · 0 评论 -
find_shape_mode参数详解及时长优化
注:本文内容大量引用了王成群所著《Halcon工业使用教程》第二册中9.1.3 find_shape_mode的内容。HALCON中最实用的算子find_shape_model,该算子通过模板在图像中寻找没有几何缩放的目标。本文重点对其主要参数进行了归纳整理。通过对该参数的分析,得出通过优化匹配角度、金字塔层数以及贪婪度可减少模板寻找的时长。find_shape_model(...转载 2019-03-04 15:50:11 · 4148 阅读 · 2 评论 -
Halcon二维仿射变换实例探究
二维仿射变换,顾名思义就是在二维平面内,对对象进行平移、旋转、缩放等变换的行为(当然还有其他的变换,这里仅论述这三种最常见的)。Halcon中进行仿射变换的常见步骤如下:① 通过hom_mat2d_identity算子创建一个初始化矩阵(即[1.0, 0.0, 0.0, 0.0, 1.0, 0.0]);② 在初始化矩阵的基础上,使用hom_mat2d_translate(平移)、...转载 2019-03-04 15:06:52 · 1014 阅读 · 0 评论 -
总结一下__declspec(dllimport)的作用
作者:朱金灿来源:http://blog.csdn.net/clever101/是时候总结一下__declspec(dllimport)的作用了。可能有人会问:__declspec(dllimport)和__declspec(dllexport)是一对的,在动态链接库中__declspec(dllexport)管导出,__declspec(dllimport)管导出,就像一个国家...转载 2019-03-06 16:10:15 · 377 阅读 · 0 评论 -
HWindow.h
/************************************************************ File generated by the HALCON-Compiler hcomp version 13.0* Usage: Interface to C++** Software by: MVTec Software GmbH, www.mvtec.co...原创 2019-03-08 14:37:22 · 1509 阅读 · 0 评论 -
【Halcon-1D Measuring】一维测量中measure_pos和measure_pairs算子
一般我们进行一维尺寸测量有两个关键步骤:一 设置测量区域 首先需要设定测量区域的大小,一般是通过gen_measure_rectangle2 来查找平面区域的边缘距离,通过gen_measure_arc来设定圆弧区域的边缘距离;注意生成图像的角度,会影响你找边缘的方向及找边缘的结果;二 执行测量任务在一维测量中有两个测量关键算子measure_pos和...原创 2019-03-05 18:00:12 · 3648 阅读 · 0 评论 -
Halcon 1D测量(1) :测量边缘对
首先先说明一下Hdevelop图形显示界面的坐标:基本上和其他环境中图像的坐标一样,左上角为(0,0),X轴为横轴,Y轴为纵轴,行Row指的是Y轴坐标,列Column指的是X轴坐标关于gen_measure_rectangle2:gen_measure_rectangle2 (Operator)Namegen_measure_rectangle2 — Prepare the ext...转载 2019-03-05 16:09:14 · 1865 阅读 · 0 评论