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

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

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

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

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

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

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

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

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

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

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

measure_pos报错 Wrong value of control parameter 4

勇哥之前写的一篇文章《Halcon学习(27-2)halcon测量技术:找线》里那段找线的代码,经常会报measure_pos的第4个参数报错。measure_pos的调用如下面这样: measure_pos (Image, MeasureHandle1, sigma, thresold, transition, select, RowEdge, ColumnEdge, Amplitude, Di...

2500W像素GigE接口的CCD出现横条纹的问题

CCD拍照出现横条纹的问题,一般人都知道,要么是网卡设置中的“巨帧”设置太小,要么是网卡模式:100M全双工/1000M全双工之类的设置有问题。详细如勇哥之前的贴子:Gig-E接口相机拍照出现横条纹或者是图像不完整的解决方法 这一次有一台尺寸测量设备在所谓的一次不关机断电后出现软件无法打开,现象是软件打后界面失去响应。经检查,是因为软件启动后,要进行一次拍图操作,就卡在这里出不来。使用官方CCD...

认识vidi(二)

红色版本检测&分割纺织检测纺织检测狭窄的纤维检测医用钻头的检测巧克力的检测大理石的检测 @ 120m/min工件的表面检测手表零件检测印刷检测薯条的检测Cement Spot segmentation医疗检测 疟疾寄生虫在血液里的检测铁轨检测汽车引擎部件的检测医疗影像绿色版本标签 & 分类后勤中心木料筛选...

halcon的hom_mat2d_to_affine_par算子详解

hom_mat2d_to_affine_par算子全网只有下面这个解释:hom_mat2d_to_affine_par( : : HomMat2D : Sx, Sy, Phi, Theta, Tx, Ty) 功能:根据仿射变换矩阵(齐次二维变换矩阵)计算仿射变换参数 HomMat2D (输入参数):仿射变换矩阵 Sx (输出参数):x方向的缩放因子(如...

Halcon 1D测量(1) :测量边缘对

首先先说明一下Hdevelop图形显示界面的坐标:基本上和其他环境中图像的坐标一样,左上角为(0,0),X轴为横轴,Y轴为纵轴,行Row指的是Y轴坐标,列Column指的是X轴坐标关于gen_measure_rectangle2:它是获得一个测量句柄Row, Column是矩形的中心Length1, Length2是矩形区域的长和宽的一半,关于区域的宽度,尽量在包住边缘的同时设置的越大越好,因为设...

图像处理之细化算法(Thinning Algorithm)C++实现

最近在实验室里遇到了一个问题,就是在有一张轮廓二值图的情况下,如何才能将轮廓进行细化,得到轮廓的骨架。效果如图:可以看到,右边图中的数字变瘦了,这就是细化算法的作用下面我们来讲一下,Thining-Algorithm的算法原理。一、八领域我们先来介绍一下,八领域这一个概念如图,八领域是指包围了中心P1像素的八个像素点。在很多图像处理算法中,八领域的这个概念都极为常见,应用十分广泛。二、算法原理首先...

图像解析力算法—SFR(Spatial Frequency Response)源码分析(二)--完

在上一篇图像解析力算法—SFR(Spatial Frequency Response)源码分析(一)中介绍了SFR的几个重要函数,接下来我们看一下主流程和其他函数。4、sfrProc作用:计算SFR数值的主流程函数short sfrProc (double **freq, double **sfr, int *len, double *farea,...

图像解析力算法—SFR(Spatial Frequency Response)源码分析(一)

在前面的文章中,我们已经分析了SFR的算法原理与步骤,下面我们直接来分析源码,源码中主要的函数主要分为一下几个:1、locate_centroids作用:定位每一行像素的矩心位置unsigned short locate_centroids(double *farea, double *temp, double *shifts,unsigned short size_x, unsigned s...

图像解析力算法—SFR(Spatial Frequency Response)原理分析(二)

在图像解析力算法—SFR(Spatial Frequency Response)原理分析(一)中,我们已经分析了SFR的前四个步骤,接下来,我们继续讨论以下的五个步骤4、重新定位ROI,获得ESF5、对获得的ESF进行四倍超采样6、通过差分运算获得LSF7、对LSF应用汉明窗8、进行DFT运算 4、重新定位ROI,获得ESF这一步其实比较复杂,我也不确定在我的讲述之下,大家是否能够听懂,我尝试用简...

图像解析力算法—SFR(Spatial Frequency Response)概念理解

最近这一个月在搞SFR算法--(空间频域响应),终于也算是搞出来了,网上关于SFR计算MTF的资料和博客也是比较少,现在就是总结一下,也算是方便后人,篇幅估计会比较长,会分篇慢慢写。讲到SFR和MTF,刚入门的小伙伴,肯定会觉得一脸懵逼,我们先来解释一下这些基础概念成像系统的解析力: 摄像头最关键的指标之一。所有用户拿到一张照片的时候首选看到的是照片清楚不清楚,这里的清楚指的就是解...

图像解析力算法—SFR(Spatial Frequency Response)原理分析(一)

在图像解析力算法—SFR(Spatial Frequency Response)概念理解一文中,我们已经讲解了在阅读SFR源码前必须了解的概念,下面我们来讲解一下,SFR算法的计算具体流程,然后结合源码进行分析, 获取计算公式。先来看图,直观感受一下吧:可以看到,SFR的具体步骤就是上面的九大步骤,箭头中对应的是每一步执行前后对应的输入和输出。总结如下:0、获取垂直斜边的ROI1、进行数据的归一化...

交流群里的问题(1):测量工件的指定区域的尺寸

群里有人问题怎么测量下面的工件的尺寸?勇哥把原图处理了一下,供大家练习。下面代码是群中有人给出的一种思路,不完善。其主要思路是:。查找边缘Xld。分割Xld。循环判断每小段xld,通过其方向判断是不是我们需要的线条dev_close_window() read_image (Image, 'C:/Users/hackpig/Desktop/QQ图片20191214110730.png&#...

视觉应用的详细分类列表(收藏以方便搜索用)

网址: http://homepages.inf.ed.ac.uk/rbf/CVonline/applic.htm罗列的跟视觉相关的各方面应用文献。Agricultural / ForestryCrop Treatment/Weed Classification and ControlForest Survey/Tree Crown counting (See also Fire detectio...

基于CUDA技术的图像旋转

目 录摘 要... IAbstract II1 绪论... 12 CUDA技术概况... 42.1 CUDA架构... 42.2 CUDA的硬件模型... 52.3 CUDA软件环境和编程模型... 62.4 CUDA开发平台的搭建... 102.4.1软件安装和环境配置... 102.4.2创建工程... 113 基于CUDA的图像旋转实现... 143.1 实现图像旋转的方案选择......

摄相机标定方法的总结(数学方法总结)

下面文章引用自:中国科学院自动化研究所模式识别国家重点实验室http://www.nlpr.ia.ac.cn/english/rv 包括如下的内容:1、引言:什么是摄相机标定2、摄相机标定方法的分类3、传统摄相机标定方法(或利用景物信息的标定方法)4、主动视觉摄相机标定方法5、摄相机自标定方法1、引言视觉目的三维重建是人类视觉的主要目的,也是计算机视觉的最主要的研究方向. (Marr 1982)所...

AForge.NET介绍:SimpleShapeChecker简单几何形状检查类

SimpleShapeChecker类,该类允许检测/检查一些简单的几何图形。在下面的示例程序中:Circles 圆Quadrilateral 四边形Known quadrilatera 已知四边形Triangles 三角形Known triangles 已知三角形这些功能貌似对于机器视觉来说没啥子用处,如果谈到找圆,估计这样干精度会有问题。-------...

AForge.NET介绍:Blobs分析

Blob分析可为机器视觉应用提供图像中的blobs的数量、位置、形状和方向等信息,还可以提供相关blobs间的几何拓扑结构。图像分割的结果就是所谓的Blob(binary large objects),在halcon中该数据类型被叫做“区域”在特征提取这一步,Blob的像素数,重心,方向等被计算出来。例如:下面的代码计算所有灰度值在120和255像素构成的8连通区域的面积与中心坐标。 re...

AForge.NET介绍:滤镜Filters

AForge.NET的图像滤镜有来自许多不同领域的滤波器,如颜色滤波、颜色级别校正、卷积滤波器、边缘检测滤波器、二值化滤波器等。这个跟photoshop的滤镜的作用是一样的。在机器视觉中,滤镜用得比较少(也许是勇哥孤陋寡闻)。滤镜需要引用aferge.Imaging.Filters命名空间。下面的演示程序中,罗列了这个命令空间的一部分滤镜类型。勇哥放几张滤镜的效果图片。原图二值化阈值 Thres...

Halcon计算一个点旋转指定角度并且偏移到指定位置

怎么让一个点按指定的角度旋转并且偏移到指定的位置上去呢?这个其实就是旋转与偏移二合一矩阵的应用。halcon的算子vector_angle_to_rigid配合affine_trans_pixel就是这个作用如下图所示,勇哥希望两个极耳朵中间那个点按电池的角度旋转并且位置于电池本体的中心上去。read_image(Image, 'C:/Users/Administrator/Desktop...

OpenCV学习31--图像分水岭分割算法

任意的灰度图像可以被看做是地质学表面,高亮度的地方是山峰,低亮度的地方是山谷。给每个孤立的山谷(局部最小值)不同颜色的水(标签),当水涨起来,根据周围的山峰(梯度),不同的山谷也就是不同的颜色会开始合并,要避免这个,你可以在水要合并的地方建立障碍,直到所有山峰都被淹没。你所创建的障碍就是分割结果,这个就是分水岭的原理,但是这个方法会分割过度,因为有噪点,或者其他图像上的错误。所以OpenCV实现了...

OpenCV学习30--阈值分割的OTSU算法

OTSU算法又叫最大类间方差阈值分割算法,也叫大津算法,是在1980年由日本的大津展之提出,是由最小二乘法推导而来,用于一些简单的阈值确定。对于一个灰度图,我们有时候非常想把他用一个阈值将他的前景和背景区分开来。我们可以合理的假设为如果将图像的像素分布图画出来,那么图像上应该有两个峰,即前景色和背景色。在这两个峰之间肯定有一个谷,那么我们就可以将阈值设在这里,从而对图像达到一个良好的分割效果。怎样...

OpenCV学习29--计算物体的凸包

物体的凸包(Convex hull)用于理解物体的形状或轮廓。很多复杂物体的特性都能很好的被这种缺陷表现出来。 一组平面上的点,求一个包含所有点的最小的凸多边形,这就是凸包问题了。这可以形象地想成这样:在地上放置一些不可移动的木桩,用一根绳子把他们尽量紧地圈起来,这就是凸包了。凸包有什么应用?凸包在很多地方有着重要的应用,如手势识别,需要识别出手的轮廓的凸包,二维或者三维区域的边界的信息等。凸缺陷...

OpenCV学习28--在图像中寻找轮廓

查找轮廓什么是轮廓:一个轮廓是由图像中的一系列点组成的,也就是图像中的一条曲线。在OpenCV中一般用序列来存储轮廓信息。序列中的每个元素是曲线中每个点的位置。关于序列:序列是内存存储器中可以存储的一种对象,序列是某种结构的链表。下面是序列结构体:typedef sturct CvSeq{ int flags; int header_size; CvSeq * h_pr...

OpenCV学习27--反向投影

什么是反射投影反射投影是记录给定图像中像素点如何适应直方图模型像素分布的方式(估计你看了这句话还是不懂)。英文的解释是这样的:a way of recording how well the pixels of a given image fit the distribution of pixels in a histogram model.(还是不懂?)简单地讲就是就是先计算某一特征的直方图模型,...

OpenCV学习26--仿射变换

什么是仿射变换:一个任意的仿射变换都能表示为 乘以一个矩阵 (线性变换) 接着再 加上一个向量 (平移).仿射变换可以实现什么功能:旋转平移缩放操作怎样得到一个仿射变换:放射变换代表的是两幅图之间的关系。通过原图和目标图像三个点之间的对应关系,可以求出一个2 X 3的矩阵。我们通常使用2 x 3矩阵来表示仿射变换。怎样去旋转一个图像:- 确定旋转图像的中心点- 旋转的角度. 在OpenCV中正角度...

OpenCV学习25--Harris角点检测

在图像处理和与计算机视觉领域,兴趣点(interest points),或称作关键点(keypoints)、特征点(feature points) 被大量用于解决物体识别,图像识别、图像匹配、视觉跟踪、三维重建等一系列的问题。我们不再观察整幅图,而是选择某些特殊的点,然后对他们进行局部有的放矢的分析。如果能检测到足够多的这种点,同时他们的区分度很高,并且可以精确定位稳定的特征,那么这个方法就有使用...

OpenCV学习24--漫水填充算法

漫水填充法是一种用特定的颜色填充联通区域,通过设置可连通像素的上下限以及连通方式来达到不同的填充效果的方法。漫水填充经常被用来标记或分离图像的一部分以便对其进行进一步处理或分析,也可以用来从输入图像获取掩码区域,掩码会加速处理过程,或只处理掩码指定的像素点,操作的结果总是某个连续的区域。所谓漫水填充,简单来说,就是自动选中了和种子点相连的区域,接着将该区域替换成指定的颜色,这是个非常有用的功能,经...

OpenCV学习23--模板匹配

模板匹配是在一幅图像中寻找一个特定目标的方法。这种方法的原理非常简单,遍历图像中的每一个可能的位置,比较各处与模板是否“相似”,当相似度足够高时,就认为找到了我们的目标。程序中会用到 OpenCV 的函数包括:void matchTemplate( InputArray image, InputArray templ, OutputArr...

OpenCV学习22--直方图比较

对输入的两张图像计算得到直方图H1与H2,归一化到相同的尺度空间,然后通过计算H1与H2之间的距离得到两个直方图的相似程度进而进行比较图像本身的相似度。OpenCV提供的比较方法有四种:直方图比较方法Correlation相关性比较Chi-Squra卡方比较Intersection十字交叉性Bhattacharyya distance巴氏距离直方图比较方法–相关性计算(CV_COMP_CORREL...

OpenCV学习21--图像直方图

灰度直方图,RGB直方图,梯度直方图对于数据在一定范围之内,可以统计频率的都可以做直方图。图像直方图。是指对整个图像在灰度范围内的像素值(0-255)统计出现频率次数,据此生成的直方图成为图像直方图,直方图反映了图像灰度的分布情况,是图像的统计学特征。直方图均衡化是一种提高图像对比度的方法,拉伸图像灰度值范围。如何实现均衡化呢?通过重映射可以将图像灰度分布从一个分布映射到另一个分布,然后在得等映射...
会员中心
搜索
«    2024年3月    »
123
45678910
11121314151617
18192021222324
25262728293031
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 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