halcon 与 C#
文章平均质量分 82
不转行,就持续更新。。。。
优惠券已抵扣
余额抵扣
还需支付
¥79.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
code bean
wpf/halcon/算法 技术分享~~~~
展开
-
【halcon】set_part 实现平移和缩放 彻悟版
之前写了一篇,确实也实现了平移和缩放。平移是对的,但是缩放其实有畸变。这个问题一直都困扰着我,知道昨天连续测试了好几个小时,直到晚上11点终于完美解决。原创 2024-05-25 12:44:01 · 801 阅读 · 4 评论 -
【halcon踩坑】由于引用dll不一致导致的大坑。
由于引用dll不一致导致的大坑,差点没跳出来。我们知道,halcon 有两个dll:halcondotnet和halcondotnetxl。平时用的都是halcondotnet,halcondotnetxl时为了应付大图。比如线扫相机扫出的大图。原创 2024-05-14 17:36:25 · 160 阅读 · 0 评论 -
【halcon】C# halcon 内存暴增 续,找到一个解决方案
解决方案找到一个~~~原创 2024-04-16 17:36:17 · 714 阅读 · 0 评论 -
【halcon】select_shape 和它关联的函数
这里,我列了一张表。全部都是和select_shape 对应的函数。原创 2024-04-01 17:03:50 · 157 阅读 · 0 评论 -
【halcon深度学习】dev_display_dl_data 移植到C# 上篇
在研究halcon深度学习的时候,会发现halcon的例程里面用到了大量的二次封装库函数。这些库函数内部也是由基础的算子组成。我们在halcon的开发环境里面用的很爽,但是一旦要在C#中使用,就会报错。一开始,我想避开这个移植过程,直接使用halcon引擎(HDevEngine )的方式。其实, halcon引擎(HDevEngine ) 不提供内部显示运算符的实现,而是提供类HDevOperatorImplCpp,其中包含所有您可以自己实现的运算符的空虚拟方法。原创 2023-12-26 17:31:10 · 524 阅读 · 0 评论 -
【halcon】Halcon引擎之远程调试(附加到进程)
halcon引擎用上了就上瘾了,但是有个缺点每解决,就是当你把算子封装好之后,调试时,他就成一个黑盒了。我们不可能用VS去实时调试halcon脚本代码。那有没有一种可能,当运行到这个封装好的算子的时候可以跳转到halcon软件,对这个封装好的算子进行调试呢?这个答案居然是肯定的!原创 2023-12-06 19:56:32 · 522 阅读 · 0 评论 -
【halcon】亚像素轮廓XLD
XLD(eXtended Line Descriptions):XLD其实就是指的亚像素轮廓。如何理解亚像素提到的:threshold (Image, Region, 128, 255) 这个呢,是给了一个灰度的范围,通过像素进行划分区域。像素已经是图片成像的最小单位了,下图就是将一张图片放大到看到像素的程度。这每一个方块就是一个像素,每个像素都有自己的一个灰度值。两个像素之间的灰度值是跳变的。如果进一步细分,假设像素的正中间点才是该像素的值,像素其他地方的值是渐变的方式过度到....原创 2022-05-31 20:21:02 · 1795 阅读 · 0 评论 -
【halcon】.Net6 wpf与Halcon
基于.Net6新建一个Halcon工程原创 2022-10-05 14:01:43 · 1402 阅读 · 0 评论 -
【halcon】裁剪
目前我遇到的裁剪相关的函数都是以clip打头的函数。前面两个是对轮廓的裁剪。后面是对区域的裁剪。原创 2023-12-02 16:00:11 · 622 阅读 · 0 评论 -
【halcon】模板匹配和仿射变换总结
模板匹配和仿射变换,经常一起使用,他们之前的位置变换一般有两种情况!原创 2023-02-21 20:53:43 · 3312 阅读 · 1 评论 -
【halcon】例子分析之动态阈值
之前的【halcon】系列文章中,有介绍全局,阈值的方法,threshold。但是当我们的图片的背景光线不均匀时,我们就需要动态阈值的方式,及不同的明度区域使用不同的阈值。如:这张图就是明暗不均,我们没有办法使用全局的阈值挑选出全部的“棋子”动态阈值时根据周围的环境进行对比的,使用我们先需要做一个均值滤波:做了这个均值滤波之后得到了一个“明暗的背景”,它并不是最终的结果,而是一个动态阈值的参考对象。使用 light,表示和平均值相比offset=15,更亮的部分。使用 dark,表示和平均原创 2022-06-06 19:56:57 · 3283 阅读 · 5 评论 -
【halcon】halcon 区域到轮廓转换(两种方式对比)
什么情况下,需要将区域变换成轮廓,有啥好处?1 轮廓是基于亚像素的,能提供更佳的精度。而区域最小也是一个像素。2 轮廓可以认为是线条(其实是一些列的点),线条是一维的,而区域是二维的。一维,有自己的特征,有时我们会借助这些特征,这些特征往往在二维上体现不明显。比如:轮廓的长度,轮廓的曲度,轮廓闭合度综上所诉,我们有时需要将区域变换成轮廓!原创 2023-12-01 09:54:43 · 643 阅读 · 3 评论 -
【halcon】halcon 函数文件 以及 脚本引擎如何调用外部函数文件 下篇
上次在文章中讲到如何halcon去封装一个算子。这篇下篇,承接上篇讲述C#如何使用halcon引擎调用自己封装好算子。这样的好处很明显:1 不用修改C#代码,更新脚本就能改变算法。免去了一个翻译过程,代码也容易维护。2 可以利用halcon对脚本进行加密。目前发现的一个坏处:无法主动释放内存,当调用计算量很大算子,或者图片很大时,内存会飙升很快。原创 2023-12-04 15:16:59 · 326 阅读 · 0 评论 -
【halcon】C# halcon 内存暴增
如果不使用halcon引擎,直接调用lines_gauss虽然内存会飙升,但是属于图片占用的内存还是会立刻被释放,但是如果在halcon引擎中,这个就会释放很慢,如果连续处理图片,你的内存就会“爆炸”!一个6M的图片通过halcon进行加载,大约会消耗200M的内存,如果等待GC回收,而你又在不停的读取图片,你的内存占用,将在短时间内飙升。目前给我的感觉是,如果我封装了一个算子,然后通过halcon引擎调用,然后这个算子需要传入图片参数,这个图片传入引擎后,过很久才会被释放掉。原创 2023-12-02 15:59:31 · 455 阅读 · 0 评论 -
【halcon】外观检测总结之灰度操作
所以此时我们需要一个图像增强的滤波算法,进行一个大的增强,让大家的灰度水平达到一个很高的水平,再使用hysteresis_threshold。如果mask选的太大,可能把小的瑕疵平均了就被干掉了(而且太大,会很耗时),如果mask选小了,大的就会选不到。有时一个瑕疵的灰度是很斑驳的,意思就是他的灰度值是混乱的,此时我们可以通过 'deviation’这个参数去获得灰度的混乱程度;不过他和动态阈值相比有个缺点,动态阈值不在乎光线不均匀的问题,应为他是判断一个像素和他周围的像素的平均值比。原创 2023-11-15 20:40:38 · 453 阅读 · 2 评论 -
【halcon】为啥匹配到ROI外面去了?
匹配到ROI外面去了中心恰好在roi有效区域内!粉色是ROI区域。原创 2023-04-06 21:38:36 · 462 阅读 · 0 评论 -
【halcon】halcon字符识别——OCR
我越来越发现,什么自动阅读器,什么手动阅读器,都不好用。 自己实现字符分割,然后直接识别才是最优解。只要我们能很好的分割出字符区域,识别就是水到渠成。原创 2023-09-11 16:01:57 · 2538 阅读 · 3 评论 -
【halcon】halcon 函数文件 以及 脚本引擎如何调用外部函数文件 上篇
说多了容易混淆,今天就说,我觉得最有用的:外部函数文件(.hdvp)原创 2023-11-09 21:45:38 · 819 阅读 · 0 评论 -
【halcon】灰度直方图直观理解与应用
这篇文章,由灰度直方图,引出了三个常用的用于分割的函数:threshold全局阈值分割binary_thresholddyn_threshold 动态阈值分割mean_image 均值滤波。原创 2023-02-13 11:35:25 · 3732 阅读 · 2 评论 -
【halcon】轮廓拟合相关算子
先通过edges_sub_pix 找到边缘轮廓,过滤掉一些直线以及短的。将剩下的圆弧轮廓进行联合(更长的圆形轮廓有助于拟合出更准确的圆)从联合后的轮廓中选出最长的,进行拟合圆原创 2023-03-10 21:31:08 · 3687 阅读 · 0 评论