
halcon
JF_Ma
好好学习,不断进步
展开
-
halcon各章节归纳
Chapter 1:Classification 用于各类分类操作,其中包括对高斯混合模型的操作、对分类器的相关操作、对感知器的相关操作以及对支持向量机的相关操作。Chapter 2 :Control ,用于程序的执行控制。包括程序常用的跳转语句,比如continue、if/else、for等等。Chapter3 :Develop,主要用于窗口的操作,比如窗口的关闭、显示等。Chapter 4 :原创 2015-08-28 15:28:33 · 1671 阅读 · 0 评论 -
Halcon学习之仿射变换2
4.序列化一个均匀2D转换矩阵,将序列化矩阵,以二进制方式写入文件中//序列化一个均匀2D转换矩阵,将序列化矩阵,以二进制方式写入文件中 HSerializedItem item = hommat2d_scale.SerializeHomMat2d(); HFile file("affine.hobj", "output_binary"); item.FwriteSerial原创 2015-09-14 21:11:02 · 4690 阅读 · 0 评论 -
Halcon学习之仿射变换3D1
1.产生一个3D的单位阵 //产生一个3D的单位阵(4*4的仿射变换矩阵,真实存储在内存中的时候,最后一行不进行存储,因为最后一行都是相同的数据) HHomMat3D hhommat3d; hhommat3d.HomMat3dIdentity(); HTuple tuple=hhommat3d.ConvertToTuple();//转换为tuple类型,以便读取内容数据原创 2015-09-15 11:07:39 · 1663 阅读 · 0 评论 -
Halcon学习之仿射变换3D2
4.添加旋转因子到一个3d仿射变换矩阵中//添加旋转因子到一个3d仿射变换矩阵中,与示例2的区别就是,自动取坐标原点为固定点 //参数说明:参数1:旋转角度(弧度),参数2:指定相对的旋转轴(‘x’,'y','z') HHomMat3D rotatelocal = hhommat3d.HomMat3dRotateLocal(0.4, "z"); tuple = rotatel原创 2015-09-15 11:10:00 · 1046 阅读 · 0 评论 -
Halcon学习之仿射变换3
7.转化一个仿射变换矩阵//转化一个仿射变换矩阵 HHomMat2D invert = hommat2d_scale.HomMat2dInvert(); result_image = image.AffineTransImage(invert, "constant", "true");//进行仿射变换 image.DispColor(w); w.Click();原创 2015-09-14 21:13:23 · 3302 阅读 · 0 评论 -
halcon学习之仿射变换1
1.根据仿射变换提供的变换矩阵,转化给定原点到目标点HHomMat2D hommat2d; hommat2d.HomMat2dIdentity();//产生一个均匀变换矩阵(单位矩阵,没有实质上转化影响) Hlong x = 4, y = 6; double result_x, result_y; hommat2d.AffineTransPixel(x,y,&resu原创 2015-09-14 21:08:16 · 4723 阅读 · 0 评论 -
Halcon学习之仿射变换3D3
7.转换一个3d仿射变换矩阵为pose//转换一个3d仿射变换矩阵为pose,pose代表一个3d刚性物体变换数据集,可以平移和旋转 //pose对象参数说明:参数1-参数3:代表x,y,z三个方向的平移量,参数4-参数6:代表x,y,z三个轴的旋转量,最后一个代表操作类型。 HPose pose = rotatelocal.HomMat3dToPose(); tuple=p原创 2015-09-15 11:13:01 · 3730 阅读 · 0 评论 -
Halcon学习之仿射变换4
11.添加一个旋转效果到一个仿射变换矩阵(相对于本地坐标系统,即图像中心点)cout << "12.添加缩放因子到一个仿射矩阵中。相对于本地坐标系统" << endl; //添加缩放因子到一个仿射矩阵中。 HHomMat2D scalelocal = hommat2d.HomMat2dScaleLocal(0.8,1);//其中第一个参数代表x轴方向的缩放系数,第二个参数代表y轴方向原创 2015-09-14 21:15:53 · 3387 阅读 · 0 评论 -
halcon基本示例1
1.得到图像任意部分。生成另一张图片void test(){ HImage image; image.ReadImage("1.jpg");//读图片 Hlong width, height; image.GetImageSize(&width, &height);//获得图像尺寸 HWindow w(0, 0, width, height);//定义窗口原创 2015-09-19 10:44:05 · 3628 阅读 · 0 评论 -
halcon基本示例之灰度直方图
void test(){ HImage image("2.jpg"); HImage gray = image.Rgb1ToGray();//转化为灰度图 Hlong width, height; image.GetImageSize(&width, &height); HRegion region; region.GenRectangle1(0,原创 2015-09-19 13:45:11 · 16297 阅读 · 0 评论 -
Halcon学习之2DMetrology
#include"halconcpp\HalconCpp.h"#include<iostream>using namespace HalconCpp;using namespace std;1.测量矩形void test2DMetrologyRect(){ //创建一个需要用来测量几何图形的数据结构 HMetrologyModel metrologyModel; me原创 2015-10-08 21:24:39 · 6083 阅读 · 0 评论 -
halcon基本算子2
GrayHisto:计算指定区域的灰度值分布GenRegionHisto:根据直方图生成生成灰度直方图区域HistoToThresh:根据灰度直方图确定阈值ScaleImage:对图像灰度值进行变换ScaleImageMax:拉伸图像灰度值,增加图像对比度EquHistoImage:直方图均衡化AddImage:图像加法SubImage:图像减法DivImage:图像除法MultIma原创 2015-09-19 15:03:47 · 5933 阅读 · 1 评论 -
Halcon二值化示例
选择一个图像中一定范围的灰度值事物,并且展现出来void testThreshold(){ HImage image("one.png"); HImage gray = image.Rgb1ToGray(); HRegion region = gray.Threshold(170, 255); Hlong width, height; gray.GetIma原创 2015-09-18 17:49:00 · 9569 阅读 · 0 评论 -
Halcon学习SVM
void testSupportVectorMachines(){ //创建一个支持向量机 //参数说明:NumFeatures支持向量机输入特征向量的维数, KernelType核函数类型, KernelParam核函数的附件参数, Nu正则化常量, //NumClasses类别数量, Mode支持向量机的模式, Preprocessing用来转换特征向量的预处理类型原创 2015-09-30 11:05:46 · 3696 阅读 · 0 评论 -
halcon学习之tuple元素排序操作
//转置一个数组HTuple tuple; tuple = HTuple::TupleGenSequence(1, 10, 1);//获得1-10的数组序列 for (int i = 0; i<tuple.Length(); i++) { cout << (double)tuple[i] << " "; } cout << endl; HT原创 2015-09-11 17:32:09 · 7887 阅读 · 0 评论 -
halcon算子大全
Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训练数据上。 2.classify_class_gmm 功能:通过一个高斯混合模型来计算一个特征向量的类。 3. clear_all_class_gmm 功能:清除所有高斯混合模型。原创 2015-08-28 15:27:27 · 5648 阅读 · 0 评论 -
halcon学习 tuple之算术运算1
//对指定tuple数组内的值求绝对值void testTupleAbs(){ HTuple tuple; for (int i = 0; i < 10;i++) { tuple[i] = i * 2 - 5; } for (int i = 0; i < 10;i++) { cout << (Hlong)tuple[i原创 2015-09-10 16:36:04 · 2553 阅读 · 0 评论 -
halcon学习 tuple之算术运算2
//计算数组的积累值,tuple数组中每个元素必须都是数字,输入[1,2,3,4],则输出[1,3,6,10],如果输入的有浮点数,则输出结果也会出现浮点数void testTupleCumul(){ HTuple tuple; for (int i = 0; i < 10; i++) { tuple[i] = i; } for (int i原创 2015-09-10 16:37:42 · 1957 阅读 · 0 评论 -
Halcon学习之超盒分类
void testHyperboxes(){ //创建一个新的分类器 HClassBox classBox; classBox.CreateClassBox(); //训练一个分类器 //参数说明: Features要学习的属性数组, Class指定属性数组被分配到的类 HTuple Features=HTuple(0).Append(1).Appe原创 2015-09-24 21:12:49 · 1591 阅读 · 0 评论 -
Halcon学习之高斯混合模型
void testGaussMixtureModels(){ //创建一个高斯混合模型对象 //参数说明: NumDim特征空间的维度数量, NumClasses高斯混合模型的类别数目, NumCenters每个类的中心数目, //CovarType协方差矩阵的类型, Preprocessing用来转化特征向量的预处理类型, NumComponents预处理参数:转化特原创 2015-09-24 21:13:53 · 2188 阅读 · 0 评论 -
halcon学习之tuple按位运算
//执行数组对应值的按位’与’,’或’,’非’,’异或’,’左移’,’右移’这五种位运算void testTupleBitLogic(){ HTuple tuple1; tuple1[0] = 1; tuple1[1] = 2; HTuple tuple2; tuple2[0] = 3; tuple2[1] = 4; HTuple result原创 2015-09-11 09:12:55 · 1192 阅读 · 0 评论 -
halcon学习 tuple之算术运算3
//计算数组的自然对数void TupleLog(){ HTuple tuple1; for (int i = 0; i < 10; i++) { tuple1[i] = i *10+2; } HTuple result = tuple1.TupleLog(); for (int i = 0; i < 10; i++) {原创 2015-09-10 16:39:02 · 8480 阅读 · 0 评论 -
Halcon学习之K最近邻分类
void testKNearestNeighbors(){ //创建K最近邻分类器 //参数说明:NumDim指定特征维度数量 HTuple NumDim = 2; HClassKnn classKnn; classKnn.CreateClassKnn(NumDim); //添加一个样本到k最近邻分类器 //参数说明:Features增加的特征原创 2015-09-24 21:11:34 · 1852 阅读 · 0 评论 -
halcon学习之tuple转化操作
对tuple数组执行相关的转化操作//通过截断一个浮点型的数据,转化为整形数据,tuple内容不允许是string类型 HTuple tuple1 = 12.124431432; HTuple result = tuple1.TupleInt(); cout << (Hlong)result<<endl;//检测一个tuple是否代表是数字,输入可以是字符串、浮点数、整数。字符原创 2015-09-11 17:26:22 · 14367 阅读 · 1 评论 -
halcon学习之tuple创建操作
//连接两个tuple数组到第三个tuple中 HTuple tuple1; tuple1[0] = 1; tuple1[1] = 2; HTuple tuple2; tuple2[0] = 3; HTuple result = tuple1.TupleConcat(tuple2); for (int i = 0; i < 3;i++)原创 2015-09-11 17:28:26 · 7893 阅读 · 0 评论 -
Halcon学习 多层神经网络
void testNeuralNets(){ //为分类和回归创建一个多层感知器 //参数说明: NumInput输入变量的个数, NumHidden隐藏层的单元数, NumOutput输出变量的数目, OutputFunction输出层激励函数的类型, //Preprocessing转换特征向量的预处理类型, NumComponents转换特征的数目, RandS原创 2015-09-28 11:09:42 · 8164 阅读 · 1 评论 -
halcon学习之tuple比较运算
//执行两个tuple数组之间的相互比较void testComparison() { HTuple tuple1; tuple1[0] = 1; tuple1[1] = 1; tuple1[2] = 2;HTuple tuple2;tuple2[0] = 1;tuple2[1] = 2;tuple2[2] = 1;HTuple result = tu原创 2015-09-11 17:21:33 · 5220 阅读 · 0 评论 -
halcon基本示例阈值操作
void test(){ HImage image("two.jpg"); HImage gray = image.Rgb1ToGray(); Hlong width, height; image.GetImageSize(&width, &height); HRegion region; HTuple AbsoluteHisto, Relative原创 2015-09-19 14:14:20 · 2596 阅读 · 1 评论