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

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

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

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

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

[置顶]本站收费服务公告(贴子源码,netMarketing源码,视觉框架源码,编写指定功能教程,自动化设备软件开发等)

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

opencv基于轮廓的模板匹配

〇.算法效果展示0.1要定位的模板一找到的匹配在有污损情况下找到的匹配0.2要定位的模板2找到的匹配一. 理论部分模板匹配的算法包括基于灰度的匹配,基于特征的匹配,基于组件的匹配,基于相关性的匹配以及局部变形匹配。基于灰度的匹配一般应用在没有缩放和旋转,颜色变化不大的场合。基于特征的匹配一般应用在具有缩放和旋转,颜色变化较大的场合。在模板各个组件有相对位移的情况下,使用基于组件的匹配算法。在图像模...

单目相机标定: 一个全自动化的使用opencv的标定程序

首先使用拍照工具拍摄一些JPG格式的标定图片。然后放到特定的文件夹下,我这里是image文件夹。在标定前,首先读取该文件夹下的图片文件,获取这些图片文件的文件名,以备将来opencv读取图片使用。这样做的好处是不用特意给拍摄的图片按照特定格式重新命名,大大减小了工作量。标定时,程序会检查这些图片是否能正常提取格点,如果不能,程序自动舍去,在标定时该幅图片不参与计算。标定完成后,程序会把标定结果显示...

手眼标定_全面细致的推导过程

本文解决的问题: 机械手搭载双目相机,手眼标定。 本文有细致的推导过程,非常全面。 什么是手眼标定 确定像素坐标系和空间机械手坐标系的坐标转化关系; 为什么会存在这个? 举一个生活中常见的例子——用手移动物体: 第一步:眼睛观察到三维世界,并将其转换到视网膜平面(三维空间转换到二维平面)传送信息给大脑; 第二步:大脑想要移动某个物体,假设想要将物体从A点移动B点(二维坐标),但是...

关于实现Halcon算法加速的基础知识(多核并行/GPU)

一、提高Halcon的运算速度,有以下几种方法:1、Multithreading(多线程)2、Automatic Parallelization(自动操作并行化)3、Compute devices,利用GPU提速,如果显卡性能好,至少可以提高5~10倍的运算速度二、多线程1、官方自带的例程get_operator_info.hdev,可以查看支持多线程的算子;* Determine the mul...

Halcon极坐标转换,图文解说,含点坐标的转换

极坐标的用途把圆形的图片转换为矩形,便于字符识别和关键区域的提取。在halcon中对应的算子(1)极坐标的展开:polar_trans_image_ext(Image : PolarTransImage : Row, Column, AngleStart, AngleEnd, RadiusStart, RadiusEnd, Width, Height, Interpolation : )(2)极坐...

affine transformation matrix 仿射变换矩阵 与 OpenGL

变换模型是指根据待匹配图像与背景图像之间几何畸变的情况,所选择的能最佳拟合两幅图像之间变化的几何变换模型。可采用的变换模型有如下几种:刚性变换、仿射变换、透视变换和非线形变换等,如下图:参考: http://wenku.baidu.com/view/826a796027d3240c8447ef20.html 其中第三个的仿射变换就是我们这节要讨论的。仿射变换(Affine Transformati...

HALCON error #7717: For this operation the cuBLAS library needs to be available(see installation gui

勇哥手里的halcon19.11写的深度学习程序,运行没有问题。但是把它导出为一个action函数到一个项目的上位机程序上面(C#)那边去调用,结果报下面的错误:HALCON error #7717:For this operation the cuBLAS library needs to be available(see installation guide) in operator appl...

手眼标定原理实战

本篇文章已加密,请输入密码后查看。...

几何变换详解

在三维图形学中,几何变换大致分为三种,平移变换(Translation),缩放变换(Scaling),旋转变换(Rotation)。以下讨论皆针对DirectX,所以使用左手坐标系。平移变换将三维空间中的一个点[x, y, z, 1]移动到另外一个点[x', y', z', 1],三个坐标轴的移动分量分别为dx=Tx, dy=Ty, dz=Tz, 即x' = x +...

C# Drawing.Drawing2D.Matrix类,二维矩阵几何变换的3x3仿射矩阵类

本文介绍的Matrix,是.net自带的类. 其命名空间为:System.Drawing.Drawing2D注意并不是netMarketing中那个netMarketing.graphics.Matrix在GDI+中,可以在Matrix对象中存储仿射变换。由于表示仿射变换的矩阵的第三列总是(0,0,1),因此在构造Matrix对象时,只需要指定前两列的6个数。语句:Matrix myMatrix...

C# 一个gdi+中应用矩阵进行二维变换图片的例子

Introduction2D image transformation in .NET has been very much simplified by the Matrix class in the System.Drawing.Drawing2D namespace. In this article, I would like to share with the reader on the u...

Android中关于矩阵(Matrix)前乘后乘的一些认识

在上一篇文章中,我们讲到,在Android中,scale(缩放),rotation(旋转)和 translation(平移)都是以矩阵(Matrix)的形式定义的,实际上在图形学中,这些平面图形的变换都是以矩阵的形式存在的。先来回顾一下,下面,左中右分别scale(缩放),rotation(旋转)和 translation(平移)在Android中的矩阵表示:如果只是单纯的应用某一个变换,我们都知...

2D平面中关于矩阵(Matrix)跟图形变换的讲解

在二维平面上,常用的有以下三种基本的图形变化:1)Translation2)Scale3)Rotation在Android的开发中,我们也经常会用到这样的一些图形变换,尤其是我们在写自定义View时,更是会经常利用到Matrix来实现一些效果,比如平移,旋转,缩放及切变等,相信很多朋友应该很想知道,矩阵实现这种变换的原理是什么,什么是矩阵的左乘右乘,它们在实现效果上有什么差别吗?今天就让我们一起来...

3D数学基础之C#实现矩阵变换

Never put off what you can do today until tomorrow.从刚开始学unity各种组件,C#基础,API,到现在的学习Cg语言,学习shaderLab用了很长时间在细节上,有的时候一些看似非常基础的概念,大致了解下怎么用后,如果不知道其原理,那么,我认为是不可能真正的学会一种技术的。本节就来实现矩阵与向量之间的计算,,我们将自己实现向量的类和矩阵的类,这...

二维图形的矩阵变换(一)——基本概念

基本的二维变换可包括旋转、缩放、扭曲,和平移四种,而这些几何运算则可以转换为一些基本的矩阵运算:这几个变换都是线性的,但平移运算不是线性的,不能通过2*2矩阵运算完成。若要将点 (2, 1)在 x 方向将其平移 3 个单位,在 y 方向将其平移 4 个单位。 可通过先使用矩阵乘法再使用矩阵加法来完成此操作。综合这几种基本运算,数学家们将其统一为一个3*3矩阵,存储形式如下:由于表示仿射变换的矩阵的...

多路时序触发光源的应用(多光源分时序拍同一个对象最后合成图片)

一、引言在机器视觉的领域里,总会遇见一些获取适合成像比较难的项目,如:图像对比度不够、有反光干扰、有背景干扰等。这些项目通常需要消耗工程师大量的时间去反复评估项目或者调试设备。现在,CST推出最新多路时序触发光源,配合相应的图像处理算法可以完美地解决以上问题。二、多路时序触发光源工作原理多路时序触发光源控制器最多支持多达8路光源的开关及亮度控制。当接收到外部触发信号后,光源可以根据用户的设定依次点...

halcon读取图片的几种方式的总结

有人问到图片如果保存在数组中,调用的时候下标是为0还是1?这个问题勇哥也是有点犹豫,对方信哲旦旦说下标应该为1起始,否则报错。我猜应该是指的C#那边吧?在halcon这边,对象数组确实从1开始,如果为0则报错。那么图形变量可以下标访问吗?答案是用向量变量。并且下标可以为0。下面的代码梳理一下几个常见的错误。read_image(img1,'E:/pic3.tiff') read_...

关于C#的“项目依赖项目”

原来的工程只有解决方案Loader、MainForm、netMarketingCore。现在因为需要引入netMarketing、sharClass、UserUI。全部重新编译,发现许多报错,其中有netMarketing中的一些类报引用问题。实际上,那些报错的位置是没有问题的。因此,应该是引用混乱的原因。解决方法是勾选报错的解决方案,然后在“依赖于”下面勾选要依赖的项目,然后选中解决方案根,全部...

RobotStudio 6扫盲贴(一)软件安装

这个软件是干嘛的?勇哥是希望它有有助于在没有机器人的情况下做机器人视觉的实验。现在还不知道可不可以。先谈谈和谐安装的过程吧。将0C20的D4改成E2就行了。但是改了后显示如下 ,跟网上说的也不同。下面这个地方也没有显示到期时间。右图是网上所说的效果。勇哥换了一个版本,是某宝上买的RobotStudio 6.06。先删除注册表中的那个slp文件夹这里为以前安装和破解过Robotstudio不成功的电...

[netMarketing类库] HalconEngine类:halcon引擎封装类

命名空间:netMarketing.vision.halcon.HalconEngine功能:halcon引擎封装类功能详细说明:halcon引擎的作用是直接运行halcon的程序,包括如下:单个hdev的程序,不含外部函数和用户自定义函数。调用函数RunHdevProgram()hdvp格式的外部函数,它保存于磁盘上。调用函数RunHdvp()即有hdev程序,又包含外部函数或者用户自定义函数。...

[netMarketing类库] DirFileHelper类:目录与文件操作类

命名空间:netMarketing.diskFile.DirFileHelper功能:目录与文件操作类功能详细说明:这是个目录与文件操作的静态类,请使用DirFileHelper.* 的方式调用成员函数。常用函数列表:这个类比较简单,封装的方法都是经验过的、常见的需求。--------------------- 作者:hackpig来源:www.skcircle.com版权声明:本文为博主原创文章...

未能加载ntdll.pdb

今天调试程序时,发现运行程序没问题,退出程序时出现下面这个报错。未能加载ntdll.pdb调试菜单->选项,然后选择“符号”,勾选“Microsoft符号服务器”,设置下载目录,确定。重新编译运行程序后,会从网上下载各种符号到本地。这个过程比较缓慢。然而,加载符号后,退出程序时还是报异常。跟之前的报错区别是:多了一点信息。因为网上有人发现如果程序写得有问题,也会出现这个报错信息,因此勇哥在想...

【Unity】6.2 在VS2015中调试 C# 脚本

Unity虽然是开发游戏用的,但是可以用来验证视觉原理算法。勇哥折腾了几天,无法运行场景后,让场景对应的C#代码断点断下来,不知道怎么回事。反复的的从4.x版本安装到5.x,还是不行。其实不是Unity的版本问题,是教程没教对头。按照下面这个教程则成功了。一、简介这一节先利用GUI显示一个简单的界面(以后还会专门介绍GUI),并解释如何在VS2015中调试C#脚本。本节例子的运行效果如下:二、调试...

几何向量(14):计算光线反射reflect向量

这一篇我们来聊一下光线反射的基础计算,看过点叉积篇的小伙伴们肯定注意到底下有一句话,就是“为了以后的光线反射reflect计算”,这里我们就别以后以后了,现在就动起来。光线反射是一个非常重要的概念,或者说常识,这里我们来聊一下真实世界。现实世界中,我们眼睛之所以看到各种各样的物体,其原因就是太阳发出的光线照射到地球上,然后经过反射后进入人的眼睛,人的眼睛接收到光子后在视网膜上成像,然后通过生物信号...

几何向量(13):点与多边形(凸)

国庆放假前写一篇,搞不好整个国庆没得机会写了,在几何开发中,点与凸多边形的关系判断属于很常见的,比如射线与平面相交,判断交点是否在若干顶点组成的多边形中。 和之前判断点在三角形中类似,先来一张点与多边形关系示意图,如下: ①很容易就看的出来,五个夹角之和等于360°,②可以看得出来∠BPC=其他四角之和,除非∠BPC在线段BC上,不然小于180°,则五夹角之和小于360°。...

几何向量(12):点与三角形

判断点在三角形内部,属于三维开发中很常用的一种算法,之前搞忘记说了,前面我们判断射线与平面,如果再加上判断交点是否在三角形内的计算就更好了。 好,假设我们有个三角形,和三角形所在平面的一个点,那么怎么判断点与三角形的关系,先来个示意图,如下:可以看的出来,如果点P在三角形内部,那么P与三角形ABC组成的六个夹角之和为180°(三角形内角和180°),如果在三角形外部,则不然。...

几何向量(11):射线与平面

射线与平面的检测属于三维空间典型的检测算法之一,属于三维中基础实用一通百通的技术之一。 之前我们在空间点与平面中已经大致了解了其中的概念和原理,不清楚的可以先回过去看下,空间表示法A*x+B*y+C*z+D = 0,射线表示法为start + n*dir(起点+模长*朝向),那么射线与平面检测,就是解方程组就好了,还是画个图方便理解,如下:程序设计思路也简单,首先使用叉积计算出平面单位...

几何向量(10):三维点与直线

在三维图形问题中,点和直线计算是很常见的,比如,已知三维空间中一条直线和任意非直线上的点,求点到直线的垂线(或垂点),这个问题比较典型,基本上就属于一系列三维空间点与直线关系的代表。 首先如下图:学到现在的几何向量,一眼就看得出来,只需要根据向量PC1与向量PV的点积等于0,得到方程组就可以最终计算出P点坐标了。首先我们确定三维空间中P点表示法,使用C1 + n*dir的形式,其中C1为起...

几何向量(9):叉积和夹角(左手定则)

最近又回顾了一遍叉积,概念我们应该了解,几何上就是向量a和b,那么向量a和b的叉积得到向量c,向量c与向量a和b相互垂直,也就是说向量c垂直于向量a和b所在的平面,同时向量c的模长等于向量a和b组成的平行四边形的面积。 物理上叉积的意义就是力矩的意义。 这里回顾一下以前写的叉积篇:叉积 实际上有个重要的问题以前忽视掉了,那就是unity左手坐标系中的叉积计算遵循左...

几何向量(8):Angle/SignedAngle函数解析

最近又跑去温习基础数序去了,没办法,人对某个事物的永久记忆是七次理解才能达成,所以抽空写一些常用的数学计算。 在二维和三维开发中,计算向量之间夹角属于很常见的操作,在数学中我们可以使用下面: 1.余弦定理,如果我们知道三边的情况下,使用余弦定理可以计算出任意角的角度,如图: 2.点乘(点积),我们可以通过点乘(点积)推导出: a·b...
«   2020年8月   »
12
3456789
10111213141516
17181920212223
24252627282930
31
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
标签列表
搜索
最新留言
最近发表
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:

Powered By Z-BlogPHP 1.6.0 Valyria

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864