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

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

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

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

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

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

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

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

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

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

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

halcon模板匹配 scaled_shape_model模板的另一个例子

halcon的模板匹配种类有很多种,方法各有优缺点,一般有基于灰度的匹配,基于形状的匹配等等,这里具体理论和方法不做详解,只简单总结一个实例。图像匹配一般需要对旋转放缩进行处理,另外为了提高搜索效率,常用用图像金字塔来处理模板图像,图像金子塔就是把图像按一定算法,缩小为不同比例的模板,减少像素。一般的模板匹配流程如下:所以首先创建模板,模板的创建就是采集一张自己需要的原始图像,如下我采集的原始图像...

Halcon二维仿射变换实例探究

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

Halcon中两种实现旋转的方法rotate_image和affine_trans_image

Halcon中实现旋转的方式由两种。一种是rotate_image,该方式实现简单,但只能绕中心旋转。二是affine_trans_image,该方式实现较复杂,但是可以实现绕任意位置的旋转。1 rotate_image*Image和ImageRotate分别是输入和输出图像 *Phi是输入的旋转度数 *interpolation是内插方式,默认为'constant' rota...

halcon的 shape_model模板匹配的算子使用流程的总结

create_shape_model创建模板,这个函数有许多参数,其中金字塔的级数由Numlevels指定,值越大则找到物体的时间越少,AngleStart和AngleExtent决定可能的旋转范围,AngleStep指定角度范围搜索的步长;这里需要提醒的是,在任何情况下,模板应适合主内存,搜索时间会缩短。对特别大的模板,用Optimization来减少模板点的数量是很有用的;MinConstra...

find_shape_mode参数详解及时长优化

注:本文内容大量引用了王成群所著《Halcon工业使用教程》第二册中9.1.3 find_shape_mode的内容。 HALCON中最实用的算子find_shape_model,该算子通过模板在图像中寻找没有几何缩放的目标。本文重点对其主要参数进行了归纳整理。通过对该参数的分析,得出通过优化匹配角度、金字塔层数以及贪婪度可减少模板寻找的时长。 find_shape_model...

halcon的三种模板匹配方法总结

halcon有三种模板匹配方法:即Component-Based、Gray-Value-Based、Shaped_based,分别是基于组件(或成分、元素)的匹配,基于灰度值的匹配和基于形状的匹配,此外还有变形匹配和三维模型匹配也是分属于前面的大类本文只对形状匹配做简要说明和补充:Shape_Based匹配方法:上图介绍的是形状匹配做法的一般流程及模板制作的两种方法。先要补充点知识:形状匹配常见的...

视觉检测例子:检测垫圈局部变形

Rinspect_gasket_local_deformable.hdev检测垫圈局部变形*这个例子演示了如何利用局部变形匹配(local deformable matching)来寻找出垫圈是否变形dev_update_off()Smoothness:=25read_image(ModelImage,..read_image( Image,......下面是ModelImage和Image(两个...

Halcon基于形状特征的模板匹配

halcon软件最高效的一个方面在于模板匹配,号称可以快速进行柔性模板匹配,能够非常方便的用于缺陷检测、目标定位。下面以一个简单的例子说明基于形状特征的模板匹配。为了在右图中,定位图中的三个带旋转箭头的圆圈。注意存在,位置、旋转和尺度变化。上halcon代码:dev_update_pc ('off') dev_update_window ('off') de...

Halcon算子:smallest_rectangle1()和smallest_rectangle2()

smallest_rectangle1(Regions : : : Row1, Column1, Row2, Column2)功能:返回平行坐标最小外包矩形该算子计算返回输入区域的平行于坐标系的最小外包矩形。该最下外包是关于区域中心计算的最小平行外包。返回参数:Row1, Column1:矩形中心点的坐标。 Row2, Column2:矩形右下较的点坐标。smallest_rectangle2 (...

图像分割之阈值分割

图像分割之阈值分割:  请参见halcon例程:gray_histo.hdev  此例程中主要用到两个算了:  1.gray_histo(Regions,Image:::AbsoluteHisto,RelativeHisto)  作用:获得图像的某一指定区域内的灰度分布,将数据写入到参数AbsoluteHisto和RelativeHisto  其中AbsoluteHisto是指图像内0-255灰度...

halcon的一些概念术语解释:Image,HOI,Region, XLD,Shape, Contours

Image一 读取的3种方式:read_image( image,'filename') //image 是输出对象,后面是输入文件的路径和名称读取多图: 1,申明一个数组,分别保存路径ImagePath:=[]ImagePath[0]:='D:/1.bmp'ImagePath[1]:='D:/2.bmp'ImagePath[2]:=&#...

halcon常见问题收集

1. 无论读入什么图像,读入图像显示效果明显和原始图像不一致,哪怕是从相机读入的图像,也是明显颜色差异。什么原因引起?初步诊断是,显示的时候调用的颜色查找表存在异常不是 default ,而是其它选项。此时可以通过查阅相关参数,调用set_system解决,也可以 在 编辑-》参数选择-》颜色查找表进行更改 。2. 裁剪图像;从图像上截取某段图像进行保存。如何实现该操作 ?首先应该知道,regio...

halcon图像预处理之图像增强

图像增强一般通过如下几种方式:1. 灰度值线性变换scale_image: g’ := g * Mult + Add g为当前的灰度值,Mult 为所乘的系数,Add为加的偏移值,由公式可以看出用scale_image来处理图像是个线性变化,会让黑的地方更黑,亮的地方更亮。scale_image_max:将灰度值拉伸到0-255。2. 增强图像对比度- emphasize(Image : Imag...

无法添加引用。包“netMarketing”试图将 GAC 中不存在的框架引用添加到“netMarketing”中

今天打包netMarketing上传服务器, 发现这个包无法被引用.报下面的错误!这个错误是VS2017的包管理器报出来的.搜遍网络, 这个问题无解.最后发现是自己打包出了问题.正确的包格式应该是下面这样的:注意红框处所示.看来对于NuGet Package Explorer 还是不了解, 操作错误造成的.2018/12/29注:勇哥今天碰到了这个API key无效的问题。后来发现这个Api ke...

halcon之共线连接union_collinear_contours_xld

很多时候当我们用edges_sub_pix, threshold_sub_pix 等算子得到边缘后,因为有噪声、物体本身断裂等原因 很多边缘是共线但是断裂的如下图所示,提取键盘的网格,左图有很多共线线段,右图为共线连接后的结果更详细信息可查阅自带例程:measure_grid.hdev一个更直观的例子提取网格,左图因为网格有交叉点通过edges_sub_pix得到是断裂的网格线,右图为union...

halcon的语言基本语句

由于halcon的这些基本运算符有时候要用时查帮助手册比较困难,不像算子那样容易搜索到帮助。因此特在此留下一篇,以方便大家查阅。1、标准赋值Ø assign(Input, Result) //编辑形式,永远都是输入在前,输出在后 1: assign(sin(x) + cos(y), u)Ø Result := Input //代码形式 1: u := si...

视觉检测例子:定位螺丝孔的位置

如下图,我们需要找到该产品的中心的螺丝孔。处理结果截图如下:halcon的中间处理结果如下图这个例子在各类锁螺丝设备中都比较常见。采用基本的形态学算子,如:threshold, connection, select_shape 即可以解决问题。但是如果是多种颜色的产品,可能不光要调节面积、阈值等算子的参数,还需要调用不同的光源或者相机曝光参数等。在下面的代码中, inner_circle算子即求出...

解决Git在添加ignore文件之前就提交了项目无法再过滤问题

由于未添加ignore文件造成提交的项目很大(包含生成的二进制文件)。所以我们可以将编译生成的文件进行过滤,避免添加到版本库中了。首先为避免冲突需要先同步下远程仓库$ git pull1在本地项目目录下删除缓存$ git rm -r --cached .1新建.gitignore文件在项目的根目录下面新建.gitignore文件并添加相应的过滤规则再次add所有文件输入以下命令,再次将项目中所有文...

Git忽略提交规则 - .gitignore配置

在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交。简单来说一个场景:在你使用git add .的时候,遇到了把你不想提交的文件也添加到了缓存中去的情况,比如项目的本地配置信息,如果你上传到Git中去其他人pull下来的时候就会和他本地的配置有冲突,所以这样的个性化配置文件我们一般不把它推送到git服务器中...

“git pull”如何强制覆盖本地文件?

git pull如何强制覆盖本地文件呢?情景如下:团队成员正在修改我们正在处理的网站的模板他们正在添加一些图像到图像目录(但忘记在源代码控制下添加它们)他们通过邮件将图像发送给我我在源代码控制下添加图像,并将其与其他更改一起推送到GitHub他们不能从GitHub提取更新,因为Git不可覆盖他们的文件。得到的错误是:error: Untracked working tree file 'p...

解析 C# 7中的元组类型(ValueTuple)

System.Tuple 类型是在.NET 4.0中引入的,但是有两个明显的缺点:(1) Tuple 类型是引用类型。(2) 没有构造函数支持。为了解决这些问题,C# 7 引入了新的语言功能以及新的类型(*)。现在,如果您需要从函数中返回两个值的合并结果,或者把两个值合并到一个哈希表中,可以使用System.ValueTuple类型并使用一个精短的语法来构造它们:这有助于IDE和编译器“检查”元素...

C#7.0新特性(VS2017可用)

前言微软昨天发布了新的VS 2017 ..随之而来的还有很多很多东西... .NET新版本 ASP.NET新版本...等等..太多..实在没消化..分享一下其实2016年12月就已经公布了的C#7.0的新特性吧,虽然很早就出来了,但咱这IDE不支持啊..不过在昨天的VS2017中已经完美可以支持使用了.E文好的,移步官方介绍地址:https://docs.microsoft.com/zh-cn/d...

如何将NuGet软件包安装到解决方案的第二个项目中?

如下图,netMarketing有几个项目组成,我需要一个包System.ValueTuple -Version 4.5.0但是如果直接安装的话,默认是装在第一个项止demo设置启动项目为netMarketing是没有用的。解决方法有两种:PackageManager控制台有一个下拉列表,其中列出了解决方案中的项目。另一种方法是使用-Project标志.。很好的一点是,它给您的智能感知与项目名称!...

GIT命令大全

GIT命令大全Git 是一个很强大的分布式版本控制系统。它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势。Git常用操作命令:我经常用的命令也就这几个:提交步骤git status 查看状态git add . 添加所有的修改文件git status 查看状态git commit -m ‘备注’ 添加备注git push origin 分支名...

git分支的理解

在开发netMarketing类库的时候,需要把一个项目挂到仓库里, 但是这个项目需要共享netMarketing,但是本身是不能发布的。原来的想法是让这个项目放置于本地仓库外面,再引用netMarketing,但是这样做的后果是这个项目本身无法进行版本控制。因此,想到了git的分支功能,于是在网上收集这方面的资料。下面引用一篇讲得比较好的文章:分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学...

使用Git Bash从Git上下载代码到本地以及上传代码到码云Git

前提是在码云上已经新建一个空的项目,可参考:https://www.cnblogs.com/babysbreath/p/9170455.html1、新建一个目录,存放下载下来的项目,我在D盘新建了一个“gitspace”文件夹,用来存放下载下来的项目2、进入刚刚新建的文件夹,即进入“gitspace”,点击鼠标右键,选择"Git Bash Here",如下图:点击“Git Ba...

Git基础之合并解决冲突, 解决vs报错: 遇到合并冲突标记

在编写netMarketing类库时,经常遇到合并冲突.打开冲突的文件, 看到是下面这样的:第一个标记<<<<<<< HEAD后的内容源于当前分支。第二个标记>>>>>>> 16bfefa465b369a7f46d090072d9e638bc951db9,Git 会告诉我们这些改动是从哪里(哪个分支)来的。然后有两...

安装.Net Framework 4.6.2时出现“无法建立到信任根颁发机构的证书链”解决方法

netMarketing类库需要.Net Frameworkd4.5的支持, 在win7的机器上只有.net 4.0. 在官网上没看.net 4.5的离线安装包, 恰恰看到有一份.NET Framework 4.6.2是脱机包, 于是下载下来安装.结果:在安装Microsoft .NET Framework 4.6.2脱机包时提示 无法建立到信任根颁发机构的证书链实际上是要安装一个根证书。解决方案...

Visual Studio团队资源管理器 Git 源码管理工具介绍

1.1 环境Visual Studio + GitLab (其他版本同理)1.2 Git操作过程图解1.3 常见名词解释拉取(Pull):将远程版本库合并到本地版本库,相当于(Fetch+Meger)获取(Fetch):从远程版本库获得最新版本合并(Meger):将两个版本库进行合并操作提交(Commit):将所做的更改,存入本地暂存库推送(Push):将所做的更改,存入远程版本库同步(Pull+...

Git常用命令使用大全

查看、添加、提交、删除、找回,重置修改文件git help <command> # 显示command的helpgit show # 显示某次提交的内容 git show $idgit co -- <file> # 抛弃工作区修改git co . # 抛弃工作区修改git add <file> # 将工作文件修改提交到本地暂存区git add . # 将所有修改...
会员中心
搜索
«    2018年10月    »
1234567
891011121314
15161718192021
22232425262728
293031
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 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