自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (3)
  • 收藏
  • 关注

原创 1、单目相机内参标定(camera_calibration_internal)

ImgPath := '3d_machine_vision/calib/'dev_close_window ()dev_open_window (0, 0, 652, 494, 'black', WindowHandle)dev_update_off ()dev_set_draw ('margin')dev_set_line_width (3)*获得当前的系统:window

2016-03-18 10:44:48 5783

转载 Halcon算子--区域特征

当我们想要提取Region时,图像处理后,往往存在几个类似的Region,此时,需要根据Region的一些特殊特征,来选择指定的Region。求Region指定特征值:region_features(Regions : : Features : Value)根据特征值选择区域:select_shape(Regions : SelectedRegions : Features, Op

2016-03-22 14:59:53 3103

原创 5、直方图二值化的例子

read_image (Image, 'D:/1.tif')emphasize (Image, ImageEmphasize, 7, 7, 1)gen_rectangle1 (ROI_0, 149.936, 263.422, 785.883, 1049.47)reduce_domain (ImageEmphasize, ROI_0, ImageReduced)gray_histo_

2016-03-18 11:01:58 689

原创 4、图像滤波+边缘检测+图像增强实例

read_image (Image, 'fabrik')*均值滤波mean_image (Image, ImageMean, 9, 9)*递归滤波器进行滤波smooth_image (Image, ImageSmooth, 'deriche2', 0.5)*sigma标准方差进行非线性滤波sigma_image (Image, ImageSigma, 5, 5, 3)*

2016-03-18 11:01:30 4500

原创 3、图像几何变换和差值缩放实例

read_image (Image, 'patras')rotate_image (Image, ImageRotate, 20, 'weighted')mirror_image (Image, ImageMirror, 'row')mirror_image (ImageMirror, ImageMirror1, 'column')zoom_image_factor (Im

2016-03-18 11:01:02 719

原创 2、图像灰度变换,加法减法乘法除法差异最大处理

read_image (Image, 'fabrik')*以下所有操作都是针对灰度点进行的操作*简单的灰度拉伸,针对灰度点进行操作的scale_image (Image, ImageScaled, 1, 50)*灰度拉伸到0-255scale_image_max (Image, ImageScaleMax)*灰度拉伸到限定的范围内,这个外部过程可以利用在很多复杂场景的分割上

2016-03-18 11:00:33 1645

原创 1、灰度直方图相关算子实例-灰度直方图二值化实例

read_image (Image, 'D:/Picture/新湿巾/1.bmp')gen_rectangle1 (ROI_0, 279.5, 907.5, 637.5, 1069.5)*灰度直方图*AbsoluteHisto灰度值的数量*RelativeHisto灰度值的比例(除以面积)gray_histo (ROI_0, Image, AbsoluteHisto, Rela

2016-03-18 11:00:01 2699

原创 3、相机pose的理解(explain_poses)

* * This example visualizes different poses* in the camera coordinate system* * A calibration plate is held at varying positions in different* orientations with respect to the camera.* The

2016-03-18 10:51:24 6150

原创 2、单目相机外参标定(camera_calibration_external)

*外参标定即为相机坐标系和系统世界坐标系关系的旋转和平移矩阵;可以简化理解为一个3*3的矩阵ImgPath := '3d_machine_vision/calib/'dev_close_window ()dev_open_window (0, 0, 652, 494, 'black', WindowHandle)dev_update_off ()dev_set_draw ('m

2016-03-18 10:47:27 10925 1

转载 基于HALCON的模板匹配方法总结

转自—— 蓝云杨的机器视觉之路http://www.china-vision.net/blog/user1/8/index.html       基于HALCON的模板匹配方法总结                                 推荐很早就想总结一下前段时间学习HALCON的心得,但由于其他的事情总是抽不出时间。去年有过一段时间的集中学习,做了许多的练习和实验,并对基于

2015-06-23 10:05:07 920

原创 OpenCV数据格式转换成Halcon数据格式HObject

HObject MatToHImage(Mat  pImage,HObject   &Hobj){if(pImage.channels()==1){int height=pImage.rows;int width=pImage.cols;uchar *dataGray=new uchar[width*height];for(int i=0; i{memc

2015-06-23 09:53:57 2331

转载 轮廓的匹配

轮廓的匹配 如果要比较两个物体,可供选择的特征很多。如果要判断某个人的性别,可以根据他(她)头发的长短来判断,这很直观,在长发男稀有的年代准确率也很高。也可以根据这个人尿尿的射程来判断,如果射程大于0.50米,则是男性。总之,方法很多,不一而足。 我们在上文中得到了轮廓的这么多特征,它们也可以用于进行匹配。典型的轮廓匹配方法有:Hu矩匹配、轮廓树匹配、成对几何直方图匹配。 1.

2015-03-15 14:59:05 2084

转载 OpenCV——绘制填充轮廓drawContours

我们知道如果要求取轮廓可以使用findContours函数,该函数会返回为vector >的轮廓向量。而在以前想对轮廓进行绘制我通常会使用遍历这个vector然后依次将点绘制到img上其实OpenCV里面已经有drawContours这个函数可以实现这个效果具体来说,当我想将这个轮廓进行填充的时候我会有下面2步骤:a)依次遍历轮廓点,将点绘制到img上

2015-03-15 14:55:08 2957

转载 开运算和闭运算

(1)开运算  先腐蚀后膨胀的过程称为开运算。用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。   (2)闭运算  先膨胀后腐蚀的过程称为闭运算。用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。    通常,由于噪声的影响,图象在阈值化后所得到边界往往是很不平滑的,物体区域具有一些噪声孔,背景区域

2015-03-15 14:54:24 12894

转载 图像卷积计算(存档)

一个矩阵与另一个矩阵的卷积运算大部分运用在图像处理上,例如用一个模板去对一幅图像进行卷积。把模板(n*n)放在矩阵上(中心对准要处理的元素),用模板的每个元素去乘矩阵中的的元素,累加和等于这个元素例如例子中的第二行第二个元素16= 1*2+1*1+1*3+1*1+1*2+1*1+1*2+1*1+1*2+1*1+1*3的计算,依次计算每个元素的值,如果矩阵的中心在边缘就要将原矩阵进行扩展,例

2015-03-11 15:53:46 588

转载 基于C++的OpenCV常用函数

C++版本的好处:1、在于可以尽量避免使用指针这种危险的东西;2、不用费心去release资源了,因为在其destructor里面,系统会自动帮你搞定。3、在某些情况下会比C版本运行速度快。在文件中包含 using namespace cv; 1.        loads an image from a file;2

2015-03-11 10:07:19 801

原创 最小特征分辨率

感光元件尺寸感光元件水平长度感光元件垂直高度1/4inch3.2mm2.4mm1/3inch4.8mm3.6mm1/2inch6.4mm4.8mm2/3inch8.8mm6.6mm

2015-03-11 10:03:50 1763

转载 OpenCV学习——查找轮廓

主要函数是       cvFindContours(tour_buf,storage,&contour,sizeof(CvContour),                                    CV_RETR_EXTERNAL, CV_CHAIN_APPROX_SIMPLE);                    tour_buf 是需要查找轮廓的单通道灰度图像 

2015-03-07 14:33:02 596

转载 OpenCV学习——cvApproxPoly的学习

这是一个轮廓的多边形轮廓逼近函数,这个函数用指定精度逼近一个或多个 曲线,并返回逼近结果。一开始觉得这个函数没什么必要,因为如果只是要简单的提取和显示图像轮廓的话只要cvFindContours函数就够了,那么为什么还要这个函数呢?后来百度了下,在opencv论坛上找到了答案。首先,轮廓的多边形逼近指的是:使用多边形来近似表示一个轮廓。其次,多边形逼近的目的是为了减少轮廓的顶点数目。但多边

2015-03-07 14:24:17 1956

转载 opencv-图像细化

在我们进行图像处理的时候,有可能需要对图像进行细化,提取出图像的骨架信息,进行更加有效的分析。     图像细化(Image Thinning),一般指二值图像的骨架化(Image Skeletonization) 的一种操作运算。     所谓的细化就是经过一层层的剥离,从原来的图中去掉一些点,但仍要保持原来的形状,直到得到图像的骨架。骨架,可以理解为图象的中轴。     好

2015-03-07 09:55:28 1077

转载 Harris角点检测

角点:最直观的印象就是在水平、竖直两个方向上变化均较大的点,即Ix、Iy都较大 边缘:仅在水平、或者仅在竖直方向有较大的变化量,即Ix和Iy只有其一较大 平坦地区:在水平、竖直方向的变化量均较小,即Ix、Iy都较小2 strong eigenvalues======interest point1 strong eigenvalues======contour/edg

2015-03-07 09:52:03 380

转载 opencv2.4.3中surf代码分析----特征点提取

opencv安装目录/doc 下有个文件:opencv_tutorials.pdf  这个文件给我们提供很多学习代码。。有时间可以好好看下。。很有用的。。。我还没认真看。。。现在进入正题  surf特征提取方法:[cpp] view plaincopystd::vectorkeypoints;  cv::SurfFeatureDetector surf(2500

2015-03-06 17:02:04 1030

转载 OpenCV学习笔记——2维特征Feature2D,SURF

基于特征点的图像匹配是图像处理中经常会遇到的问题,手动选取特征点太麻烦了。比较经典常用的特征点自动提取的办法有Harris特征、SIFT特征、SURF特征。先介绍利用SURF特征的特征描述办法,其操作封装在类SurfFeatureDetector中,利用类内的detect函数可以检测出SURF特征的关键点,保存在vector容器中。第二部利用SurfDescriptorExtractor类

2015-03-06 15:38:50 578

转载 OpenCV学习笔记——图像处理之直方图ImgProc

直方图histograms也是图像处理中经常用到的一种手段。新版本对直方图不再使用之前的histogram的形式,而是用统一的Mat或者MatND的格式来存储直方图,可见新版本Mat数据结构的优势。先介绍下其相关的函数calcHist、calcBackProject、compareHist、EMD、equalizeHist。除了这几个常用的函数以为,还有一些c函数写的直方图类CvHisto

2015-03-06 15:22:24 725

转载 OpenCV学习笔记——图像处理之滤波器ImgProc

先介绍几个最基本的核滤波器相关的类2D图像滤波器基础类BaseFilter:dst(x,y) = F(src(x,y), src(x+1,y)... src(x+wdith-1,y), src(y+1,x)... src(x+width-1, y+height-1) ); 相关的调用函数为getLinearFilter、getMorphologyFilter单行核滤波器基础类Bas

2015-03-06 15:19:57 565

转载 OpenCV学习笔记——对XML和YAML文件实现I/O操作

1. XML、YAML文件的打开和关闭XML\YAML文件在OpenCV中的数据结构为FileStorage,打开操作例如:[cpp] view plaincopystring filename = "I.xml";  FileStorage fs(filename, FileStorage::WRITE);  \\...

2015-03-06 15:13:25 458

转载 OpenCV函数cvFindContours

提取轮廓在OpenCV里有一个函数 cvFindContours :[cpp] view plaincopyint cvFindContours( CvArr* image, CvMemStorage* storage, CvSeq** first_contour,int header_size=sizeof(CvContour),int mode=CV_RETR_LIST,int method=

2015-03-06 11:20:15 487

转载 vector的用法

1.vector 的数据的存入和输出:#include#include#include using namespace std;void main(){   int i = 0;    vector v;    for( i = 0; i    {             v.push_back( i );//

2015-03-05 17:22:37 397

转载 OpenCV中Mat的C++用法介绍

Mat      OpenCV 自 2001 年出现以来。在那些日子里库是围绕C接口构建的。在那些日子里,他们使用名为IplImage C 的结构在内存中存储图像。这是您将在大多数较旧的教程和教材中看到的那个。使用这个结构的问题是将 C 语言的所有负面效果都摆到了桌面上。最大的问题是手动管理。它是建立在用户来负责处理内存分配和解除分配的假设之上的。当程序规模较小时,这是没有问题的,一旦

2015-03-05 15:53:12 13446

转载 OpenCV的Mat基本用法

一、矩阵基础操作:Mat image(240, 320, CV8UC3);第一个参数是rows,该矩阵的行数;第二个参数是cols,该矩阵的列数;第三个参数是该矩阵元素的类型。这句话表示创建一个大小为240×320的矩阵,里面的元素为8位unsigned型,通道数(channel)有3个。image.create(480, 640, CV8UC3);分配(或重新分配)image

2015-03-05 10:31:58 3940

转载 OpenCV数据格式转换

在mfc c++ 以及opencv 编写程序当中,很多常用的类型转换,现在总结一下。(注意加相应的头文件,这里不罗嗦)提纲:1. Mat ---> Iplimage2. Iplimage  --->  CvvImage3. Mat  ---> vector or vector4. vector or vector  --->  vector> or vect

2015-03-05 10:19:54 1455

转载 opencv 基本数据结构

DataType : 将C++数据类型转换为对应的opencv数据类型enum { CV_8U=0, CV_8S=1, CV_16U=2, CV_16S=3, CV_32S=4, CV_32F=5, CV_64F=6 };// allocates a 30x40 floating-point matrix // CV_32FMat A(30, 40, DataTypeflo

2015-03-05 10:17:28 377

C#入门经典第四版源代码

c#入门第四版源代码,书本配套源码适合c#初学者

2013-08-21

emgu简单例程1

vs2008+emgu2.4.9简单例程

2013-08-21

emgu的简单例程

emgu的简单例程,包含配置引用,使用了image类的

2013-08-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除