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

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

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

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

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

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

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

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

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

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

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

Halcon19.11的新特性

主要的改变有下面这些:异常检测:深度学习更简单找箱子Box Finder:方便,准确ECC读码:更快,更准远心镜头标定(一)异常检测Anomaly Detection在之前,halcon的深度学习要提供OK产品和NG产品各N张。但是由于产线上,OK产品大量的可以提供,但是NG产品往往几天出不了几个。现在有了异常检测,用户只需要提供OK产品就可以了。 只需要正常图像无需标注更少的样本更少的超参支持C...

halcon中的一些不常见算子或者代码的学习(一)

(一) 字典这个可以和C#中的Dictionary类比,它是由key来访问存储的元素。和C#的字典区别只是,halcon中的这个字典只接收Htuple, 和Object两种类型。下面的程序演示了写入与读取Htuple, Object类型的数据。create_dict(DictHandle) read_image(Image, 'printer_chip/printer_chip_01...

halcon写数据到csv文件的方法

示例,将以下 两个元组分别写入表格中,元组a在第一行,元组b在第二行a:= [1,2,3]b:= [4,5,6] 1、读入文件,先判断是否存在,如果存在将内容清空fileName:='E:/test.csv'file_exists(fileName, FileExists)if(FileExists) delete_file(fileName)endif*假如文件不存在,将重新...

Halcon 映射校正例程注释(map_image)

映射校正效果如下:几个核心算子说明如下:gen_image_to_world_plane_map( : Map : CameraParam, WorldPose, WidthIn, HeightIn, WidthMapped, HeightMapped, Scale, MapType : ) /*************************************************...

无纺布折痕检测(2)· 基于Laws纹理滤波的折痕检测

1Laws纹理滤波纹理实际上一种视觉特征,反映了图像上某种灰度变化的分布,体现出像素灰度与周围空间的一种关系,例如布匹纹理、木制家具纹理等,如下图所示布匹上纹理。LAWS纹理滤波以一种统计能量的方式检测纹理,能量的度量一般由以下三个向量得到:这三个向量与其自身以及互相卷积后,可形成以下5个向量:而这5个向量之间,相互乘积,可以生成检测水平、垂直、高频点、V形状等特征纹理的模板,下图为生成检测垂直边...

无纺布折痕检测(3)· 基于灰度投影的折痕检测

- 算法思路 -(1)构造滤波器与原图卷积增强图像(2)灰度投影,构建垂直灰度投影函数,并与平滑后的函数进行 差分运算,超过一定阈值即为缺陷所在位置的列坐标(3)计算缺陷区域并显示使用第一篇构造的滤波器与图像卷积运算,突出图像竖直方向的折痕,如下图。使用gray_projections算子,得到图像的水平灰度投影HorProjection以及垂直灰度投影VertProjection。HorProj...

无纺布折痕检测(1)· 基于构造方向滤波器的折痕检测

原图来自Ihalcon论坛中间有一条对比度不明显的垂直折痕(图片来源:http://www.ihalcon.com/read-4226.html)发此帖子的楼主已经给出解决方案,如下:1. 设计一个滤波器2. 用convol_image算子来增强特定方向的纹理3. 再用Gray_Range_Rect做图像变换4. 最终用线高斯提取目标折痕我们沿着楼主的解决思路走一遍。首先介绍下相关理论点:卷积、如...

边缘缺陷检测

原图来自Ihalcon论坛缺陷如在下图圆框中首先,阈值分割+形态学处理,将包含边缘部分图像进行抠图然后使用canny滤波器进行边缘检测如下图红、绿双线将凸起部分平滑掉,细节如下右图计算待检测边缘上的点到平滑后边缘的距离,超过一定阈值公差即为缺陷如下图缺陷检测关键代码*选择待检测边缘 select_obj(UnionContours, ObjectSelected, Index)...

使用Halcon读取Stanford bunny模型

1模型下载下载地址: https://www.cc.gatech.edu/projects/large_models/bunny.html打开后页面如下点击红色箭头所指,下载.PLY格式2ply格式简介PLY是一种数据存储格式, 全名为多边形档案(Polygon File Format)或斯坦福三角形档案(Stanford Triangle Format)。该格式主要用以储存立体扫描结果的三维数值...

基于二次曲面拟合的脏污检测

原图来自于Ihalcon论坛,条条大路通罗马,目前有动态阈值、频域分析等算法思路,都可以尝试,在此提出另一种思路--人为构造光滑的二次区域与原图对比,进行脏污的检测。所检测图片如下脏污在红色箭头所指处特别浅显灰度拉伸等预处理后,脏污基本清晰可见原图打光不均匀,中间亮,四角暗,应使用尺寸更大的环形光打开轮廓线工具经过脏污处的灰度值分布如图右所示我们目的使得灰度值分布线更加平滑按行依次拟合平滑后的二维...

【测量篇】(1)1D测量

1. 边缘检测原理测量直线或者曲线的前提,是进行边缘检测和轮廓提取。边缘一般是指图像灰度值变化剧烈的位置。沿着如下左图水平线的位置的灰度值分布函数f(x),如下右图所示。可知,在边缘的地方,灰度值变化非常明显。为了获取准确且唯一的边缘,那么变化最剧烈的地方就是边缘所在位置,对灰度值分布函数求一阶导f '(x)。可知,变化最剧烈的位置就是其一阶导的局部最大值,一阶导最大时,其二阶导f'...

【相机标定篇】单目相机标定原理(1)

“ 经济基础决定上层建筑”1、什么是标定?需要标定什么?为什么需要标定?空间物体呈现的是三维几何位置,相机内的投影图像为二维位置,所以,确定空间物体某点的三维几何位置与其投影图像中对应点的关系,就是标定。需要确定标定关系,必须建立物体与相机的投影数学模型,即相机成像的几何模型。构建几何模型的数学参数就是需要标定的内容,即相机的内外参数。内参是相机的工艺参数,包括焦距,主距,畸变系数,相邻像素距离等...

【相机标定篇】halcon自标定(3)

“一滴水,用显微镜看,也是一个大世界。”在项目中,偶尔会遇到由于产品形状、拍摄位置等原因导致标定板很难放置的情况,此时可以考虑使用halcon自标定算法来标定相机。由于自标定可以在不使用用标定板情况下,进行畸变矫正。所以,极大地方便在设备现场进行调试。1. 自标定处理流程自标定原理来源于此论文:“Automatic line-based estimation of radial lens dist...

张正友相机标定Opencv实现以及标定流程&&标定结果评价&&图像矫正流程解析(附标定程序和棋盘图)

原文来自:http://blog.csdn.net/dcrmg/article/details/52939318使用OpenCV实现张正友法相机标定之前,有几个问题事先要确认一下,那就是相机为什么需要标定,标定需要的输入和输出分别是哪些?相机标定的目的:获取摄像机的内参和外参矩阵(同时也会得到每一幅标定图像的选择和平移矩阵),内参和外参系数可以对之后相机拍摄的图像就进行矫正,得到畸变相对很小的图像...

相机的那些事儿 - 概念、模型及标定

说起相机大家都比较熟悉,现在已经是手机的标配和卖点,而且做的非常便捷易用,随便按都能拍出不错的照片,但如果想更手动、更专业一点,或者将相机用于工业应用(如机器视觉、摄影测量等),还是需要了解一下成像方面的东西,本文力求通俗易懂,先介绍一些相机相关的基本概念,然后对相机的标定过程进行简单的阐述。一、基本概念1、景深我们拍照片的时候常有“虚化”的效果,其实就是利用“景深”来突出重点:上图只有中间部分是...

相机标定原理学习

一.总体原理:摄像机标定(Camera calibration)简单来说是从世界坐标系换到图像坐标系的过程,也就是求最终的投影矩阵的过程。[1]基本的坐标系:世界坐标系;相机坐标系;成像平面坐标系;像素坐标系[2]一般来说,标定的过程分为两个部分:第一步是从世界坐标系转换为相机坐标系,这一步是三维点到三维点的转换,包括R,t(相机外参)等参数;第二部是从相机坐标系转为成像平面坐标系(像素坐标系),...

单目相机测距

单目相机测距单目测距的小项目,大概需要就是用单目相机,对一个特定的目标进行识别并测算相机与该目标的距离。所以便去网上找了一堆教程,这里给大家总结一下,希望给小白们一个参考。首先是基本需求了· opencv自然要会的,这咱就不多说了,会一点就行· 需要一个摄像头,我用的是一个畸变很大的鱼眼免驱动摄像头,大家用电脑上的那个自带摄像头也可以的,就是不方便。· 需要MATLAB进行相机标定其实上面都是废话...

聊一聊机器视觉的学习

接触视觉算起来有好几年了,每过一段时间都会对视觉有新的思考。慢慢的我发现这些零碎的思考拼出来一幅比较大的图景,这里把它记下来。因为我做过的项目都是从实际需要中来的,所以都是一些关于实际应用的感悟。思考框架碰到一个视觉相关的任务,我们应该怎么去思考它?应该用什么方法,效果又怎么把握?之前有人问匹配该不该用深度学习,这里就把这个作为例子来分析。第一点是对视觉的理解。大家知道,目前我们对于视觉的原理所知...

机器视觉的相关资源

以下链接是本人整理的关于计算机视觉(ComputerVision, CV)相关领域的网站链接,其中有CV牛人的主页,CV研究小组的主页,CV领域的paper,代码,CV领域的最新动态,国内的应用情况等等。打算从事这个行业或者刚入门的朋友可以多关注这些网站,多了解一些CV的具体应用。搞研究的朋友也可以从中了解到很多牛人的研究动态、招生情况等。总之,我认为,知识只有分享才能产生更大的价值,真诚希望...

手眼标定的培训视频精华摘录(1)

这篇贴子是看了一套网上的手眼标定的培训视频后的记录。大凡是培训视频,都存在废话很多的问题,关于这一点,其实也是跟你自己的知识储备多少有关,比如对于小白来讲,也许每一句话都不是废话。本贴就是勇哥记录下来的认为其精华部分内容。评心而论,老师讲得不错,很有经验,虽然经常在中间插播自己的培训室广告。^-^----------------------------------------大家都知道,手眼标定就...

二维测量:找线,带角度跟随(add_metrology_object_line_measure)

今天有个网友问到这个add_metrology_object_line_measure算子没有角度参数,怎么做roi跟随。勇哥网站上搜索了一下,还真没有写过这样的贴子,因此制作了一个小例子,给有需要的朋友参考。代码比较简单。用了形态模板匹配来定位roi位置。第一张图用来定义了模板。中间那几个变量 a,b,c,d,e,f,g,h是roi四个边的顶点。那一部分代码实际上的作用是:已知rectangle...

(halcon实例)最大稳定极值区域(MSER)方法进行图像分割

* This example demonstrates the functionality of segment_image_mser. * * Create artificial example image. create_example_image (Image) * dev_update_off () dev_close_window () dev_open_window_...

halcon的 segment_image_mser算子

segment_image_mser(Image : MSERDark, MSERLight : Polarity, MinArea, MaxArea, Delta, GenParamName, GenParamValue : )segment_image_mser使用最大稳定极值区域(MSER)方法将图像分割成灰度值均匀的区域。分割过程通过观察周围的局部区域来判断一个区域是否是均匀的。因此,该算...

Halcon入摄像机标定初始参数解释

1、摄像机外参:决定摄像机坐标与世界坐标系之间相对位置关系。其中Pw为世界坐标,Pc是摄像机坐标,他们之间关系为Pc = RPw + T式中,T= (Tx,Ty,Tz),是平移向量,R = R(α,β,γ)是旋转矩阵,分别是绕摄像机坐标系z轴旋转角度为γ,绕y轴旋转角度为β,绕x轴旋转角度为α(也可以从左像右看把它理解为先绕x轴旋转α,再绕旋转后的坐标系的y轴旋转β,最后绕再次旋转后的z轴旋转γ)...

Halcon摄像机标定流程

摄像机分为两种,一种是面扫描摄像机(Area Scan Camera),一种是线扫描摄像机(Line Scan Camera)。准确来说,叫摄像机系统比较正确。所谓的面扫描摄像系统是指可以通过单纯曝光取得面积影像,而线扫描摄像机,必须利用运动速度才能取得影像。两种不同的摄像系统由于成像的过程有区别,所以标定的过程也有区别,这里仅讨论面扫描摄像系统。流程如下: 1、初始摄像机参数:startCamP...

(halcon实例)CCD校正和利用校正后的结果进行测量、图像校正

勇哥先放上代码,有空时再研究一下。* Attention: * This program reads the interior camera parameters from the file * 'camera_parameters.dat', which, e.g., could be generated by the program * 'camera_calib...

(halcon实例)Halcon相机标定

勇哥先上程序,后面再解释:list_files ('E:/calibration_image', 'files', ImageFiles) TmpCtrl_AllMarkRows := [] TmpCtrl_AllMarkColumns := [] TmpCtrl_StartPoses := [] TmpCtrl_ReferenceIndex := 0 S...

两根线的起始与端点的坐标在一个像素内变化,是不是两根线的角度就差不多呢?

两根线的起始点端点值如下:1065.69,1190.38,1054.0,1193.51065.86,1190.35,1054.0,1194.0这个坐标看上去是不是几乎一样,在0.5个像素的差别内。那么两线的角度是不是就应该差不多呢?dev_close_window() dev_open_window(0, 0, 512, 512, 'black', WindowHandle)...

勇哥再谈谈C#中编写halcon代码的内存泄露的问题

今天在群里聊起这个halcon内存泄露的问题。有几点要注意的地方,在此记录下来。(1)hobject要Dispose,htuple也要Dispose这一点以前没有注意,好像是受了官方一个贴子影响认为htuple不用管。但是hlacon导出的C#代码里面,就注意到了这一点,htuple也要Dispose。(2)被塞入List的halcon对象,注意不能直接List.Clear()如果你这样做,内存就...

用autocad来验证标定原理(2)

接上篇《 用autocad来验证标定原理(1)》上节把CCDA标定完成了。实际的生产过程中,我们常常会碰到这样的情况,机械手从工位一吸着对象到工位二进行贴合,但是工位二我们不方便执行标定,通常的做法是在工位一执行一次标定流程,然后使用两点映射或者四点映射把工位二的相机坐标映射到工位一的相机一中。所以下面的我们继续做CCDB的标定部分。我们先把坐标系切换到机器人坐标系。为了画映射板的图形。我们接下来...
会员中心
搜索
«    2025年4月    »
123456
78910111213
14151617181920
21222324252627
282930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 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