图像处理
文章平均质量分 95
xiamentingtao
这个作者很懒,什么都没留下…
展开
-
halcon/c++接口基础 之 控制参数
HALCON/C++可以处理各种不同类型的字母数字混合的控制参数,如下:离散数字(long)浮点数字(double)字符串(char*)控制参数的一个特殊形式是句柄,提供了途径去访问复杂的数据类型,像windows,图像获取设备,用于形状匹配的模型。实际上,在内部,句柄总是以离散数字(long)表示。HALCON/C++使用tuple表示控制参数的容器类。另外,tuple是多态的,可以包含各翻译 2016-08-31 23:24:06 · 2574 阅读 · 0 评论 -
halcon模板匹配学习(二) 准备模板
如下,我们将介绍匹配的第一个操作:准备模板初始时刻,我们准备好参考图像,并对其做一定的处理,然后我们需要从参考图像中导出模板,也就是将参考图像裁剪成所谓的模板图像。获取模板图像可以通过设置ROI来完成。对于某些应用来说,也可以使用综合模板代替模版图像。综合模板既可以是综合创造的模板图像,也可以是一个XLD轮廓。裁剪参考图像,使之成为模板图像为了创建模板图像,我们需要从参考图像中选取ROI,并使用 r原创 2016-09-13 23:04:58 · 16847 阅读 · 0 评论 -
基于几何距离的椭圆拟合
问题给定离散点集Xi=(xi,yi)X_i=(x_i,y_i),我们希望找到最好的椭圆去拟合这些离散点。方法通常我们使用最小二乘法求解如下的最优化问题:Min∑i=1Nf(xi,E)2Min \sum_{i=1}^N f(x_i,E)^2 这里f(xi,E)f(x_i,E) 表示点xix_i 到E(指待拟合的椭圆)的最小距离。通常我们有两种方法来表达f(xi,E)f(x_i,E) ,分别是:几原创 2017-02-08 23:24:43 · 9194 阅读 · 8 评论 -
基于代数距离的椭圆拟合
问题给定离散点集Xi=(xi,yi),i=1,2,...NX_i=(x_i,y_i) ,i=1,2,...N,我们希望找到误差最小的椭圆去拟合这些离散点。 方法由于椭圆的形式可以给定, 自然我们将使用最小二乘法来求解椭圆。主要依据论文《Direct least squares fitting of ellipsees, Fitzgibbon, Pilu and Fischer in Fitzgibb原创 2017-02-08 22:25:50 · 5473 阅读 · 5 评论 -
halcon相关的链接
论坛、培训halcon学习网:http://www.ihalcon.com/鸟叔机器视觉:http://bbs.szvbt.com/forum.php博客韩兆新的博客园majunfuLife and Codingzhaojun的博客風韻無聲骑蚂蚁上高速的博客小马_xiaoLV2小新识图程序园-程序员的世界章柯渊的博客 注:介绍了halcon与MFC混合编程!新浪博客搜原创 2016-09-19 10:54:01 · 2844 阅读 · 0 评论 -
图像极坐标变换及在OCR中的应用
极坐标变换定义我们知道在二维坐标系中,有直角坐标系,也有极坐标系,二者的转换关系是: 如下图: 如图,直角坐标系的圆心与极坐标系的圆心一一对应,且圆弧BA可以通过极坐标变换到极坐标系ρ=r\rho=r的一条直线上,实现由圆形到直线的转换。这往往在一些图像处理中很有用。实际上,我们在图像处理中,往往还不是处理这样的圆弧,而更多的是处理圆环区域。如下, 同理,我们可以把(a原创 2017-10-22 14:53:36 · 4404 阅读 · 0 评论 -
图像金字塔总结
本文转载自:http://blog.csdn.net/dcrmg/article/details/52561656 一、 图像金字塔图像金字塔是一种以多分辨率来解释图像的结构,通过对原始图像进行多尺度像素采样的方式,生成N个不同分辨率的图像。把具有最高级别分辨率的图像放在底部,以金字塔形状排列,往上是一系列像素(尺寸)逐渐降低的图像,一直到金字塔的顶部只包含一个像转载 2017-11-21 19:59:06 · 13270 阅读 · 0 评论 -
opencv中的椭圆拟合
首先贴一个最简单的程序:访问:https://blog.csdn.net/guduruyu/article/details/70069426//创建一个用于绘制图像的空白图 cv::Mat image = cv::Mat::ones(480, 640, CV_8UC3); //设置蓝色背景 image.setTo(cv::Scalar(100, 0, 0)); //输入拟...原创 2018-06-22 10:17:51 · 5341 阅读 · 0 评论 -
求圆和椭圆上任意角度的点的坐标
圆上任意角度的点的坐标如上图,给定圆心(Cx,Cy),半径为R, 求θ\thetaθ对应的点的坐标? 此处θ\thetaθ是相对于水平轴的角度。显然我们可以使用极坐标转换来求:{px=Cx+Rcos(θ)py=Cy+Rsin(θ)\left\{\begin{matrix}px= Cx+Rcos(\theta) \\ py= Cy+Rsin(\theta) \end{matrix}\...原创 2019-01-04 22:27:21 · 29376 阅读 · 5 评论 -
雅可比旋转求解对称二维矩阵的特征值和特征向量
问题描述:给定一个矩阵,如下: A=[a11a21a12a22] A=\begin{bmatrix}a_{11}&a_{12}\\ a_{21}& a_{22}\end{bmatrix} 其中满足a12=a21a_{12}=a_{21}.也就是所谓的对称矩阵。那么如何求解此矩阵的特征值以及特征向量呢?这里我们要用到雅克比旋转。雅克比旋转Jacobi方法是求对称矩阵的全部特征值以及相应的原创 2016-09-25 23:32:07 · 8769 阅读 · 2 评论 -
卷积的循环矩阵求解方法
通常我们求解一维卷积或者二维卷积都是采用模板平移的方法,今天我们介绍一种新的求解方法,可以一次性求出所有的结果。一维卷积卷积定义对于两个长度分别为m和n的序列x(i)和g(i)有, h(i)=x(i)∗g(i)=∑jx(j)g(i−j)h(i)=x(i)*g(i)=\sum_{j}x(j)g(i-j) 上式给出了长度为N=m+n-1的输出序列。称为一维情况下的卷积公式。循环矩阵参考百度百科:原创 2016-10-24 12:08:25 · 12719 阅读 · 1 评论 -
离散卷积与自相关
本文章转载自:http://www.cnblogs.com/einyboy/archive/2012/12/30/2839633.html一、 定义离散信号f(n),g(n)的定义如下: N-----为信号f(n)的长度s(n)----为卷积结果序列,长度为len(f(n))+len(g(n))-1例:f(n) = [1 2 3];转载 2016-10-24 11:34:33 · 5666 阅读 · 0 评论 -
halcon/c++接口基础 之异常处理
关于运行错误,HALCON/C++默认打印错误信息并且终止程序。然而在某些应用中,放宽这个法则可能更有用。比如,如果一个应用要求用户交互式地指定一个图像文件读取,如果因为用户不能拼错文件名而终止程序的话,会很不方便。因此,HALCON/C++允许集成你自己的错误处理代码。如下的章节将分别介绍面向对象的方法和面向过程的方法。面向对象的方法如果一个运行错误发生在面向对象的调用中,类HException的翻译 2016-08-31 23:21:02 · 8416 阅读 · 0 评论 -
halcon/c++接口基础 之内存管理
所有的HALCON类,不仅仅HImage,HRegion,HTuple,HFramegrabber等等,还有面向过程的方法中使用的Hobject,都可以使用默认的析构器自动释放内存。 ( see also section 2.4 “Destructors and Halcon Operators”))进一步地,当再一次构造对象,比如通过已经初始化的实例(see section “Construct翻译 2016-08-31 23:19:18 · 6823 阅读 · 0 评论 -
halcon/c++接口基础 之 析构函数和Halcon算子
所有的HALCON/C++类都提供了默认的析构函数用来自动销毁对应的内存。对于某些类,析构函数基于适合的算子:Windows: HWindow类的析构函数基于close_window关闭窗口。注意:算子本身不是析构器。你可以选择调用CloseWindow关闭窗口,并且使用OpenWindow再次打开它。Other Handle Classes: 其他句柄类的默认析构函数,如HShapeMod翻译 2016-08-31 23:18:10 · 1323 阅读 · 0 评论 -
halcon/c++接口基础 之 构造函数与Halcon算子
Halcon/C++提供了构造函数翻译 2016-08-31 23:16:41 · 2633 阅读 · 0 评论 -
halcon模板匹配学习(一) Matching 初印象
什么是模板匹配呢?简单而言,就是在图像中寻找目标图像(模板),或者说,就是在图像中寻找与模板图像相似部分的一种图像处理技术。依赖于选择的方法不同,模板匹配可以处理各种情形下的变换,如照明、杂点、大小、位置以及旋转,甚至模版内部的相对移动。模版匹配的鲁棒性和灵活性都很高,而且很多参数可以自适应生成,只有极少的参数需要配置。在Halcon中,提供了各种不同的匹配方法。不同方法的选择依赖于图像数据以及要解原创 2016-09-12 20:50:40 · 13734 阅读 · 0 评论 -
灰度图像的8位平面分解
所谓灰度图像,即指8位256颜色的图像。将图像的每一位分别取出来,我们就可以将一幅图像分解开来,形成8幅图像。下面我们分别介绍使用matlab分解图像与使用halcon/c++分解图像的方法。matlab8位分解clc;clear all;A = imread('lena.tif');% 显示原始图像subplot(3,3,1);imshow(A);title('原始图像');原创 2016-09-01 13:43:21 · 24791 阅读 · 5 评论 -
halcon/c++接口基础 之 HALCON图像变量类
图像变量在HALCON/C++中,HObject是一个基类,可以表示图像变量。另外还有三种类继承自HObject.Class HImage 处理图像Class HRegion 处理区域Class HXLD 处理多边形Regions一个region是图像平面坐标点的集合。这样一个区域不需要被连通,而且可能还有好多洞。a region可以比实际的图像大。区域在HALCON中可以用所谓的行程编码实翻译 2016-08-31 23:23:12 · 10245 阅读 · 0 评论 -
基于HALCON的模板匹配方法总结
很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间。去年有过一段时间的集中学习,做了许多的练习和实验,并对基于HDevelop的形状匹配算法的参数优化进行了研究,写了一篇《基于HDevelop的形状匹配算法参数的优化研究》文章,总结了在形状匹配过程中哪些参数影响到模板的搜索和匹配,又如何来协调这些参数来加快匹配过程,提高匹配的精度,这篇paper放到了中国论文在线了,需转载 2016-09-19 10:16:09 · 4291 阅读 · 0 评论 -
halcon/c++接口基础 之 halcon初认识
从今天开始,开始更新博客,主要分享自己最近正在翻译的Halcon/C++教程。先给出第一篇文章,由于此文章,是用latex写的,直接导成html,保存在七牛云存储上,所以直接点击链接就看到,后面我将直接分享到csdn博客上,我也希望大家将自己的一些原创资料分享出来,为此我建了一个qq群 ,希望志同道合者加入。大家可以扫一扫,加群。 下面手指一点,请学习Halcon/c++接口基础。翻译 2016-08-31 23:11:27 · 3672 阅读 · 0 评论 -
将bgr彩色矩阵归一化到0-255之间 【RGB image normalization】
参考下面文章,可以使用normalize 函数。 https://blog.csdn.net/kuweicai/article/details/78988886对于彩色rgb图像,也可以直接使用以上函数, 参考 https://devtalk.nvidia.com/default/topic/1042100/rgb-image-normalization/?offset=8image = cv...原创 2019-01-05 23:25:42 · 9323 阅读 · 0 评论