05 2022 档案

摘要:自动对焦要求相机根据拍摄环境和场景的变化,通过相机内部的微型驱动马达,自动调节相机镜头和CCD之间的距离,保证像平面正好投影到CCD的成像表面上。这时候物体的成像比较清晰,图像细节信息丰富。相机自动对焦的过程,其实就是对成像清晰度评价的过程。对焦不准确会造成图像模糊,在高精度视觉测量和视觉定位等应用 阅读全文
posted @ 2022-05-31 23:51 ihh2021 阅读(1023) 评论(0) 推荐(0)
摘要:create_calib_data( : : CalibSetup, NumCameras, NumCalibObjects : CalibDataID) 功能:创建Halcon标定数据模型 CalibSetup:标定类型。默认值'calibration_object' NumCameras:摄像机 阅读全文
posted @ 2022-05-31 23:50 ihh2021 阅读(337) 评论(0) 推荐(0)
摘要:算子相关 image_points_to_world_plane( : : CameraParam, WorldPose, Rows, Cols, Scale : X, Y) 功能:把图像坐标系的像素转换到世界坐标系中Z=0平面中XY坐标 CameraParam:输入摄像机参数(外参) WorldP 阅读全文
posted @ 2022-05-31 23:50 ihh2021 阅读(143) 评论(0) 推荐(0)
摘要:创建一个空的Region区域时,假若用的是GenEmptyObj,则用AreaCenter算面积时会报错Index out of range,解决办法: 把GenEmptyObj用专门创建Region的算子GenEmptyRegion Dim Reg As HObject = Nothing HOp 阅读全文
posted @ 2022-05-31 23:50 ihh2021 阅读(803) 评论(0) 推荐(0)
摘要:一、面扫描非远心Division模型 CameraType: 'area_scan_division' CameraParam: [Focus, Kappa, Sx, Sy, Cx, Cy, ImageWidth, ImageHeight] Sx和Sy可以通过相机资料中查询到,把查询到的像元尺寸填入 阅读全文
posted @ 2022-05-31 23:49 ihh2021 阅读(2416) 评论(0) 推荐(0)
摘要:相机:The Imaging Source(映美精)DFK 33GP 1300 面阵COMS相机。像元大小4.8 (微米) * 4.8 (微米) 镜头:Computar M3514-MP 焦距 = 35mm F=1.4 制作并生成标定板文件 *现有标定板7 * 7 的圆点标定点阵列,标定点中心距是3 阅读全文
posted @ 2022-05-31 23:49 ihh2021 阅读(2732) 评论(0) 推荐(0)
摘要:find_shape_model (Image, ModelId, rad(-90), rad(180), 0.9, 1, 0.5, 'least_squares', 5, 0.9, ModelRow111, ModelColumn111, ModelAngle111, ModelScore111) 阅读全文
posted @ 2022-05-31 23:48 ihh2021 阅读(255) 评论(0) 推荐(0)
摘要:Camera Calibration相机标定是视觉高精度测量的必要过程,每个镜头的畸变程度各不相同,通过相机标定可以矫正这种镜头畸变。在相机标定后就可以得到世界坐标系中物体米制单位的坐标,例如米、毫米、甚至微米。相机标定其实就是确定相机的内参和外参的过程。 一、相机外参 一个点从世界坐标系到相机坐标 阅读全文
posted @ 2022-05-31 23:48 ihh2021 阅读(1136) 评论(0) 推荐(0)
摘要:1、规格信息: (1)、标志点行数 * 列数(Y*X)= 7 * 7 (2)、标志点直径:1.5mm (3)、标定上的每个空白间隔都是一样的,即C1 = C2 (4)、标定点的中心距 = 直线AB = 两个半径 + 一个空白间隔(C1) = 一个直径 + 一个间隔 = 3mm (5)、外围黑框宽度D 阅读全文
posted @ 2022-05-31 23:48 ihh2021 阅读(3437) 评论(0) 推荐(0)
摘要:Halcon中没有现成的Region按面积排序算子,给出以下自定义函数. area_center (Regions, Area, Row, Column) tuple_sort (Area, Area_sorted) gen_empty_obj (SortedRegion) if (SortMode 阅读全文
posted @ 2022-05-31 23:47 ihh2021 阅读(1253) 评论(0) 推荐(0)
摘要:Halcon的拟合算子都是基于亚像素级高精度的XLD轮廓。 1、gen_contour_polygon_xld( : Contour : Row, Col : ) 功能:根据输入的点集,生成一个多边形轮廓。 2、fit_circle_contour_xld(Contours : : Algorith 阅读全文
posted @ 2022-05-31 23:46 ihh2021 阅读(1395) 评论(0) 推荐(0)
摘要:1、distance_pl( : : Row, Column, Row1, Column1, Row2, Column2 : Distance) 功能:计算点到直线的距离 参数: Row, Column:输入点的坐标 Row1, Column1, Row2, Column2:输入线段的起始点和终点 阅读全文
posted @ 2022-05-31 23:46 ihh2021 阅读(742) 评论(0) 推荐(0)
摘要:目标:检测下图热缩管表面是否刮伤受损。 Halcon Code: *关闭窗口更新 dev_update_window ('off') *读入图像 read_image (Image, '222.jpg') *阈值分割提取感兴趣区域,减少图像处理区域 threshold (Image, Regions 阅读全文
posted @ 2022-05-31 23:46 ihh2021 阅读(313) 评论(1) 推荐(0)
摘要:要进行测量,就必须找到边缘(分隔明、暗区域的边界),检测边缘就是处理这种不同阴影之间的边界过程。工业上检测边缘的工具叫做卡尺工具。利用卡尺工具检测边缘的步骤如下: 1、投影处理: 沿着边缘检测方向,垂直扫描图像,以获得每条投影线的平均强度(平均灰度值)。正是由于可以获得平均强度, 所以投影处理可以减 阅读全文
posted @ 2022-05-31 23:45 ihh2021 阅读(1221) 评论(0) 推荐(0)
摘要:gen_measure_arc( : : CenterRow, CenterCol, Radius, AngleStart, AngleExtent, AnnulusRadius, Width, Height, Interpolation : MeasureHandle) 功能:产生测量对象句柄,用 阅读全文
posted @ 2022-05-31 23:45 ihh2021 阅读(171) 评论(0) 推荐(0)
摘要:在前面的拟合圆、拟合直线中,draw_spoke、draw_rake时要输入一个固定坐标的圆形和直线。但在实际工程应用中,相机取得的图像不可能每张都是固定不变的,存在有平移、缩放、旋转。这时需要先进行定位,获取的特征点后再对图像进行仿射变换,使得每张图像都是固定不变的。 dev_update_win 阅读全文
posted @ 2022-05-31 23:44 ihh2021 阅读(384) 评论(0) 推荐(0)
摘要:目标:根据两个点进行仿射变换,实现区域跟随。 一、实时图形不变,对ROI进行仿射变换 read_image (Image11, '1-1.bmp') * draw_rectangle1 (3600, Row1, Column1, Row2, Column2) gen_rectangle1 (Rect 阅读全文
posted @ 2022-05-31 23:44 ihh2021 阅读(269) 评论(0) 推荐(0)
摘要:目标:通过定位出实时图像的中心坐标(反射举行中的两个圆形为模板),再利用这个中心坐标来对左上角区域进行仿射变换跟随。 read_image (Image1, 'C:/123/试1.jpg') dev_set_draw ('margin') gen_rectangle2 (Rectangle, 267 阅读全文
posted @ 2022-05-31 23:43 ihh2021 阅读(345) 评论(0) 推荐(0)
摘要:目标:Blob定位圆形,并让矩形实时跟随圆形(矩形和圆形的相对位置不变) read_image (Image1, 'C:/ͼƬ/4.bmp') *阈值分割并连通性操作 threshold (Image1, Regions, 218, 255) connection (Regions, Connect 阅读全文
posted @ 2022-05-31 23:43 ihh2021 阅读(274) 评论(0) 推荐(0)
摘要:目标:对一组如下图的图像的左边圆弧进行拟合(这组图像中的其他图像可能与下图存在位移、选择、缩放等关系) 分析:由日志《33.1、拟合圆、直线(补充)》可知,只要知道拟合的大概区域的几个点(四个点以上)就可以对这块区域进行拟合操作。可以用上图作为定位模板对这组图像进行定位并找出用于拟合上图的几个点用于 阅读全文
posted @ 2022-05-31 23:43 ihh2021 阅读(257) 评论(0) 推荐(0)
摘要:目标:通过仿射变换根据定位find_***_model输出的参数把模板轮廓贴合到实时图像上 read_image (Image11, '1-1.bmp') dev_set_draw ('margin') draw_rectangle1 (3600, Row1, Column1, Row2, Colu 阅读全文
posted @ 2022-05-31 23:42 ihh2021 阅读(198) 评论(0) 推荐(0)
摘要:在机器视觉应用中,经常需要对图像进行仿射变换。 在给基于参考的视觉检测中,由于待检验图像与参考图像或多或少都会存在一些集合变化(平移、旋转、缩放等),所以在做比较值前一般都要对待检验图像进行仿射变换以对齐图像。 仿射变换有:平移、旋转、缩放、斜切。平移、旋转、缩放比较常用。 要进行仿射变换,必须先获 阅读全文
posted @ 2022-05-31 23:41 ihh2021 阅读(662) 评论(0) 推荐(0)
摘要:在图像坐标空间进行仿射变换,经常使用第一(点、角度)和第二(两个以上的点)种方法,第三种方法(根据三个以上的坐标点)不但适用于图像坐标空间的仿射变换,还适用于畸变很小或者经过畸变矫正后的图像坐标空间和物理坐标空间的仿射变换(比如激光行业、装配行业等,可以适用这种方法来实现像素标定、坐标系标定)。这种 阅读全文
posted @ 2022-05-31 23:41 ihh2021 阅读(3168) 评论(0) 推荐(0)
摘要:对图像、ROI、XLD进行仿射变换 1、affine_trans_contour_xld(Contours : ContoursAffinTrans : HomMat2D : ) 功能:对XLD轮廓进行二维反射变换,支持缩放,旋转,平移,斜切 Contours:输入原XLD ContoursAffi 阅读全文
posted @ 2022-05-31 23:41 ihh2021 阅读(872) 评论(0) 推荐(0)
摘要:disp_message( : : WindowHandle, String, CoordSystem, Row, Column, Color, Box : ) 功能:把String打印到屏幕上 WindowHandle:输入窗口句柄 String:输入要打印的信息 CoordSystem:输入参考 阅读全文
posted @ 2022-05-31 23:40 ihh2021 阅读(915) 评论(0) 推荐(0)
摘要:1、在拟合圆或直线中(pts_to_best_****)有一个参数ActiveNum它是表示用于拟合的最少点数,这个最小点数是和 ResultRow或ResultColumn的元素个数进行比较,如果设置ActiveNum比ResultRow或ResultColumn的元素个数少则不进行拟合,认为这样 阅读全文
posted @ 2022-05-31 23:39 ihh2021 阅读(426) 评论(0) 推荐(0)
摘要:算子说明 1 1、draw_rake( : Regions : WindowHandle, Elements, DetectHeight, DetectWidth : Row1, Column1, Row2, Column2) 1 2、rake(Image : Regions : Elements, 阅读全文
posted @ 2022-05-31 23:39 ihh2021 阅读(1220) 评论(0) 推荐(0)
摘要:1、draw_spoke(Image : Regions : WindowHandle, Elements, DetectHeight, DetectWidth : ROIRows, ROICols, Direct) Image:输入图像 Regions:输出边缘点检测区域及检测方向 WindowH 阅读全文
posted @ 2022-05-31 23:39 ihh2021 阅读(836) 评论(0) 推荐(0)
摘要:目标:用几何定位尽可能定位下图的葡萄 read_image (Image, 'C:/葡萄.bmp') *拟合圆形 draw_spoke (Image, Regions, 3600, 30, 60, 15, ROIRows, ROICols, Direct) spoke (Image, Regions 阅读全文
posted @ 2022-05-31 23:38 ihh2021 阅读(121) 评论(0) 推荐(0)
摘要:目标:根据几何定位训练一个模板进行定位。 *读取图像,该图像由halcon提供 read_image (Image, 'rings/nuts_01.png') draw_region (Region, 3600) reduce_domain (Image, Region, ImageReduced) 阅读全文
posted @ 2022-05-31 23:37 ihh2021 阅读(116) 评论(0) 推荐(0)
摘要:目标:定位下图中x、y方向都有放缩的目标。 read_image (Image, 'smd/smd_capacitors_01') dev_set_draw ('margin') draw_region (Region, 3600) draw_region (Region1, 3600) diffe 阅读全文
posted @ 2022-05-31 23:37 ihh2021 阅读(65) 评论(0) 推荐(0)
摘要:目标:定位出以下三种工件(计算出每个工件的中心坐标以及旋转角度) read_image (Image1, 'C:/1.BMP') *创建模板1 draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2) gen_rectangle2 (Rec 阅读全文
posted @ 2022-05-31 23:36 ihh2021 阅读(140) 评论(0) 推荐(0)
摘要:目标:根据几何定位定位出下图葡萄的个数 read_image (Image, 'C:/葡萄.bmp') draw_spoke (Image, Regions, 3600, 15, 20, 10, ROIRows, ROICols, Direct) spoke (Image, Regions1, 15 阅读全文
posted @ 2022-05-31 23:36 ihh2021 阅读(166) 评论(0) 推荐(0)
摘要:dev_display_shape_matching_results使用于显示定位结果的,但它只是把轮廓区域显示出来,并没有变量来保存这个轮廓。 改进方法:修改函数内部让内部保存再输出变量。 dev_display_shape_matching_results函数原型 * This procedur 阅读全文
posted @ 2022-05-31 23:35 ihh2021 阅读(535) 评论(0) 推荐(0)
摘要:例子一 read_image (Capture2013922111946109, 'C:/ww/Capture2013-9-22 11-19-46-109.jpg') draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2) gen_rec 阅读全文
posted @ 2022-05-31 23:34 ihh2021 阅读(108) 评论(0) 推荐(0)
摘要:一、 创建模板 1 1、 create_aniso_shape_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, ScaleRMin, ScaleRMax, 1 2、 create_aniso_shape_model_ 阅读全文
posted @ 2022-05-31 23:33 ihh2021 阅读(152) 评论(0) 推荐(0)
摘要:一、定位相关 1 1、get_shape_model_contours( : ModelContours : ModelID, Level : ) 1 2、get_shape_model_origin( : : ModelID : Row, Column) 1 3、set_shape_model_o 阅读全文
posted @ 2022-05-31 23:33 ihh2021 阅读(231) 评论(0) 推荐(0)
摘要:例子一:定位助手(Matching)应用 1、打开 菜单 助手 打开新的Matching 2、模板准备 (1)、可以加载以前保存过模板,直接使用之前保存过的边缘轮廓特征。如上图①。 注:通过这种方法来加载的轮廓只会在图像窗口中看到它的边缘轮廓,看不到创建创建边缘轮廓的图像。 (2)、创建模板。可以从 阅读全文
posted @ 2022-05-31 23:33 ihh2021 阅读(264) 评论(0) 推荐(0)
摘要:一、 创建模板 1 1、create_scaled_shape_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, ScaleMin, ScaleMax, ScaleStep, 1 2、create_shape_mode 阅读全文
posted @ 2022-05-31 23:32 ihh2021 阅读(170) 评论(0) 推荐(0)
摘要:查找模板 1、find_shape_model(Image : : ModelID, AngleStart, AngleExtent, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness : Row, Column, A 阅读全文
posted @ 2022-05-31 23:31 ihh2021 阅读(252) 评论(0) 推荐(1)
摘要:模板的角度位0°,find_shape_model的角度参数应该与create_shape_model保持一致。 例子一 角度设置如下 分析 结果 例子二 角度设置如下 分析 结果 阅读全文
posted @ 2022-05-31 23:31 ihh2021 阅读(113) 评论(0) 推荐(0)
摘要:几何定位工具又叫做几何匹配,给予物体形状、边缘、轮廓灯几何信息进行定位。 几何定位的优点 支持非线性光照变化,对物体灰度信息的非线性变化具有很好的适应性。 支持尺度变化,即x、y方向的缩放 支持旋转 支持物体遮挡:一个物体的部分边缘信息被遮挡,可以对其他边缘信息对它进行定位。 几何定位的流程 31. 阅读全文
posted @ 2022-05-31 23:30 ihh2021 阅读(671) 评论(0) 推荐(1)
摘要:一、 创建模板 1 1、create_shape_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, Optimization, Metric, Contrast, 1 ⑴、Template 1 ⑵、NumLevels 阅读全文
posted @ 2022-05-31 23:30 ihh2021 阅读(146) 评论(0) 推荐(0)
摘要:目标:定位下图中x、y方向都有放缩的目标。 read_image (Image, 'smd/smd_capacitors_01') dev_set_draw ('margin') draw_region (Region, 3600) draw_region (Region1, 3600) diffe 阅读全文
posted @ 2022-05-10 23:06 ihh2021 阅读(96) 评论(0) 推荐(0)
摘要:目标:用几何定位尽可能定位下图的葡萄 read_image (Image, 'C:/葡萄.bmp') *拟合圆形 draw_spoke (Image, Regions, 3600, 30, 60, 15, ROIRows, ROICols, Direct) spoke (Image, Regions 阅读全文
posted @ 2022-05-10 23:06 ihh2021 阅读(57) 评论(0) 推荐(0)
摘要:目标:定位出以下三种工件(计算出每个工件的中心坐标以及旋转角度) read_image (Image1, 'C:/1.BMP') *创建模板1 draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2) gen_rectangle2 (Rec 阅读全文
posted @ 2022-05-10 23:05 ihh2021 阅读(139) 评论(0) 推荐(0)
摘要:目标:根据几何定位定位出下图葡萄的个数 read_image (Image, 'C:/葡萄.bmp') draw_spoke (Image, Regions, 3600, 15, 20, 10, ROIRows, ROICols, Direct) spoke (Image, Regions1, 15 阅读全文
posted @ 2022-05-10 23:05 ihh2021 阅读(116) 评论(0) 推荐(0)
摘要:目标:根据几何定位训练一个模板进行定位。 *读取图像,该图像由halcon提供 read_image (Image, 'rings/nuts_01.png') draw_region (Region, 3600) reduce_domain (Image, Region, ImageReduced) 阅读全文
posted @ 2022-05-10 23:05 ihh2021 阅读(64) 评论(0) 推荐(0)
摘要:dev_display_shape_matching_results使用于显示定位结果的,但它只是把轮廓区域显示出来,并没有变量来保存这个轮廓。 改进方法:修改函数内部让内部保存再输出变量。 dev_display_shape_matching_results函数原型 * This procedur 阅读全文
posted @ 2022-05-10 23:04 ihh2021 阅读(196) 评论(0) 推荐(0)
摘要:例子一 read_image (Capture2013922111946109, 'C:/ww/Capture2013-9-22 11-19-46-109.jpg') draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2) gen_rec 阅读全文
posted @ 2022-05-10 23:03 ihh2021 阅读(123) 评论(0) 推荐(0)
摘要:一、定位相关 1 1、get_shape_model_contours( : ModelContours : ModelID, Level : ) 1 2、get_shape_model_origin( : : ModelID : Row, Column) 1 3、set_shape_model_o 阅读全文
posted @ 2022-05-10 23:02 ihh2021 阅读(285) 评论(0) 推荐(0)
摘要:例子一:定位助手(Matching)应用 1、打开 菜单 助手 打开新的Matching 2、模板准备 (1)、可以加载以前保存过模板,直接使用之前保存过的边缘轮廓特征。如上图①。 注:通过这种方法来加载的轮廓只会在图像窗口中看到它的边缘轮廓,看不到创建创建边缘轮廓的图像。 (2)、创建模板。可以从 阅读全文
posted @ 2022-05-10 23:02 ihh2021 阅读(208) 评论(0) 推荐(0)
摘要:模板的角度位0°,find_shape_model的角度参数应该与create_shape_model保持一致。 例子一 角度设置如下 分析 结果 例子二 角度设置如下 分析 结果 阅读全文
posted @ 2022-05-10 23:01 ihh2021 阅读(172) 评论(0) 推荐(0)
摘要:一、 创建模板 1 1、create_scaled_shape_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, ScaleMin, ScaleMax, ScaleStep, 1 2、create_shape_mode 阅读全文
posted @ 2022-05-10 23:01 ihh2021 阅读(124) 评论(0) 推荐(0)
摘要:一、 创建模板 1 1、 create_aniso_shape_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, ScaleRMin, ScaleRMax, 1 2、 create_aniso_shape_model_ 阅读全文
posted @ 2022-05-10 23:01 ihh2021 阅读(99) 评论(0) 推荐(0)
摘要:查找模板 1、find_shape_model(Image : : ModelID, AngleStart, AngleExtent, MinScore, NumMatches, MaxOverlap, SubPixel, NumLevels, Greediness : Row, Column, A 阅读全文
posted @ 2022-05-10 23:00 ihh2021 阅读(170) 评论(0) 推荐(0)
摘要:几何定位工具又叫做几何匹配,给予物体形状、边缘、轮廓灯几何信息进行定位。 几何定位的优点 支持非线性光照变化,对物体灰度信息的非线性变化具有很好的适应性。 支持尺度变化,即x、y方向的缩放 支持旋转 支持物体遮挡:一个物体的部分边缘信息被遮挡,可以对其他边缘信息对它进行定位。 几何定位的流程 31. 阅读全文
posted @ 2022-05-10 22:59 ihh2021 阅读(229) 评论(0) 推荐(0)
摘要:一、 创建模板 1 1、create_shape_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, Optimization, Metric, Contrast, 1 ⑴、Template 1 ⑵、NumLevels 阅读全文
posted @ 2022-05-10 22:59 ihh2021 阅读(385) 评论(0) 推荐(0)
摘要:例子1:算出下图套环个数 代码: dev_update_window ('off') * Code generated by Image Acquisition 01 list_files ('F:/套环检测', ['files','follow_links'], ImageFiles) tuple 阅读全文
posted @ 2022-05-09 20:37 ihh2021 阅读(231) 评论(0) 推荐(0)
摘要:阈值分割后,需要提取目标物体。为了提取目标物体不得不先找到连通区域。 1、原理 提取连通域的搜索类型有两种,一种是4连通域,一种是8连通域 Halcon中的connection是默认是用8连通域。 2、作用: *产生region区域 gen_rectangle1 (ROI_0, 72.5, 175. 阅读全文
posted @ 2022-05-09 20:36 ihh2021 阅读(391) 评论(0) 推荐(0)
摘要:1、select_shape(Regions : SelectedRegions : Features, Operation, Min, Max : ) 对象为region 1 2、select_shape_xld(XLD : SelectedXLD : Features, Operation, M 阅读全文
posted @ 2022-05-09 20:36 ihh2021 阅读(420) 评论(0) 推荐(0)
摘要:1、Blob使用场合 Blob分析目的在于对图像中的2-D形状进行检测和分析,得到诸如目标位置、形状、方向(外接仿射矩形或外接椭圆的主轴方向)。根据这些信息可对目标进行识别。以下场合时适合使用Blob分析的: (1)、分析对象为2-D目标,因为Blob分析工具本质上是2-D形状分析工具。 (2)、图 阅读全文
posted @ 2022-05-09 20:35 ihh2021 阅读(954) 评论(0) 推荐(0)
摘要:1、histo_to_thresh( : : Histogramm, Sigma : MinThresh, MaxThresh) 功能:根据灰度直方图的统计信息和平滑参数Sigma确定分割阈值。 注:使用前必须用gray_histo(Regions, Image : : : AbsoluteHist 阅读全文
posted @ 2022-05-09 20:35 ihh2021 阅读(585) 评论(0) 推荐(0)
摘要:目标要求:通过形态学相关操作,求出右边4个IC引脚的个数。 程序: *读入图像,并把它转换为灰度图 read_image (Image000513532, 'F:/Halcon学习/7、测试图片/000513532.jpg') rgb1_to_gray (Image000513532, GrayIm 阅读全文
posted @ 2022-05-09 20:34 ihh2021 阅读(149) 评论(0) 推荐(0)
摘要:开运算:当目标物体区域无法容纳给定的开运算结的构元素时,在凸角点或毛刺和细小区域就会被祛除,可以将两个 物体(交接部分较小无法容纳给定的结构元素)分开。 闭运算:闭运算是用来填充区域的凹角或沟壑和空洞,链接邻近的区域。 例1:闭运算(膨胀)--链接邻近区域 read_image (Snap3, 'C 阅读全文
posted @ 2022-05-09 20:34 ihh2021 阅读(169) 评论(0) 推荐(0)
摘要:一个图像的"骨架"是指图像中央骨骼部分,是描述图像几何拓扑性质的重要特征之一。在求一幅图像X的骨骼过程中应该满足两个条件:第一,X以应有的规律缩小;第二,在X逐步缩小的过程中,应当使X的连通性保持不变。 原理如下: 中间的1不能删掉,否则会产生空洞 应该从边缘来删除1,但并不是所有的边缘的1都删掉, 阅读全文
posted @ 2022-05-09 20:33 ihh2021 阅读(865) 评论(0) 推荐(0)
摘要:1、skeleton(Region : Skeleton : : ) 功能:计算区域的骨骼 draw_region (Region, 3600) skeleton (Region, Skeleton1) 2、junctions_skeleton(Region : EndPoints, JuncPoi 阅读全文
posted @ 2022-05-09 20:33 ihh2021 阅读(1448) 评论(0) 推荐(0)
摘要:目的:根据形态学相关操作,算出图中边界粘连一起小石头的个数以及每个小石头的面积。 Halcon代码: read_image (Dd, 'C:/dd.JPG') *设置ROI draw_region (Region, 3600) reduce_domain (Dd, Region, ImageRedu 阅读全文
posted @ 2022-05-09 20:33 ihh2021 阅读(94) 评论(0) 推荐(0)
摘要:开运算:对图像先进行腐蚀运算然后再进行膨胀运算,可以消除离散点和"毛刺",可以讲两个物体分开。 闭运算:对图像先进行膨胀运算然后再进行腐蚀运算,可以填充图像中内部空洞和图像凹角点,可以把两个邻近的目 标连接起来。 一、开运算 1、opening(Region, StructElement : Reg 阅读全文
posted @ 2022-05-09 20:32 ihh2021 阅读(1384) 评论(0) 推荐(0)
摘要:一、定义: 在腐蚀和膨胀两个基本运算基础上,我们可以构造出形态学的运算簇,它是由上述两个运算的复合和集合操作(交、并、补等)组合成新的所有运算构成。其中两个最为重要的组合运算是形态学的开运算和闭运算。对于图像的机构元素S和图像X,开运算和闭运算的定义如下: 开运算:结构元素S先对图像进行腐蚀,然后又 阅读全文
posted @ 2022-05-09 20:31 ihh2021 阅读(5637) 评论(0) 推荐(0)
摘要:方法:《26、.NET与Halcon混合编程》中的action函数中新增代'************中的码即可 Private Sub action() ' Local iconic variables Dim ho_Image12 As HObject = Nothing '定义一个图形变量 ' 阅读全文
posted @ 2022-05-09 20:31 ihh2021 阅读(442) 评论(0) 推荐(0)
摘要:1、get_image_size(Image : : : Width, Height) 功能:获取图像的真实大小(不受放缩、平移影响) read_image (Image, 'fabrik') get_image_size (Image, Width, Height) 2、get_part( : : 阅读全文
posted @ 2022-05-09 20:31 ihh2021 阅读(2300) 评论(0) 推荐(0)
摘要:一、 导出vb.net代码 1 1、导出参数(全部默认) 1 2、导出的代码: 1 二、 把导出的代码复制到.net工程 3 1、根据需要把代码复制到vb.net工程中 3 三、 把HWindowXCtrl添加到界面上 4 1、把HWindowXCtrl添加到工具箱: 4 2、把HWindowXCt 阅读全文
posted @ 2022-05-09 20:30 ihh2021 阅读(1396) 评论(0) 推荐(0)
摘要:HWindowXCtrl与HWindowControl都是Haocon提供的用于显示图像的交互式控件,但它们功能上也存在一些明显的差异。它们区别如下: ⑴、引用文件(dll)不同 HWindowXCtrl引用来自:halconx.dll(默认路径C:\Program Files\MVTec\HALC 阅读全文
posted @ 2022-05-09 20:30 ihh2021 阅读(1654) 评论(0) 推荐(0)
摘要:目录 1、 dilation1(Region, StructElement : RegionDilation : Iterations : ) 1 2、dilation2(Region, StructElement : RegionDilation : Row, Column, Iterations 阅读全文
posted @ 2022-05-09 20:29 ihh2021 阅读(842) 评论(0) 推荐(0)
摘要:一、准备 新建类库项目,V1DLL,引用旧版本的dll 新建类库项目,V2DLL,引用新版本的dll 二、使用:新建使用项目 在使用项目引用V1的dll,然后再Debug中放入旧版本的Newtonsoft.Json.dll(该项目中没有引用任何版本的Newtonsoft.Json.dll) 结果:可 阅读全文
posted @ 2022-05-09 08:45 ihh2021 阅读(790) 评论(0) 推荐(0)
摘要:1、膨胀前已经结构元素: 2、膨胀后: 3、另一种理解方式: 平移并集 阅读全文
posted @ 2022-05-08 23:11 ihh2021 阅读(298) 评论(0) 推荐(0)
摘要:目录 1、 dilation1(Region, StructElement : RegionDilation : Iterations : ) 1 2、dilation2(Region, StructElement : RegionDilation : Row, Column, Iterations 阅读全文
posted @ 2022-05-08 23:11 ihh2021 阅读(256) 评论(0) 推荐(0)
摘要:一、预备知识: 元素 假设有一幅图像X,若点a在X区域以内,则成a为X的元素,记a ∈ X B包含于X: 设有两幅图像B,X。对于B中的左右元素ai,都有ai ∈ X,则称B包含于X, 记作B ⊂ X B击中X 设有两幅图像B,X。若存在这样一个点,它既是B的元素也是X的元素,则成B击中X,记作B 阅读全文
posted @ 2022-05-08 23:10 ihh2021 阅读(488) 评论(0) 推荐(0)
摘要:数字形态学是由一组形态学的代数运算子组成的。最基本的形态学运算子有:腐蚀(erosion)、膨胀(dilation)、开(opening)、闭(closing)和骨骼(skeleton)。Halcon的形态学运算有基于二值图区域的形态学算子和基于灰度图区域的形态学算子,下面主要介绍基于二值图像区域的 阅读全文
posted @ 2022-05-08 23:10 ihh2021 阅读(877) 评论(0) 推荐(0)
摘要:图像的平滑是一种是用的而数字图像处理技术,主要目的是为了减少图像中的噪声,一般情况下,在空间域内可以用领域平均来减少噪声;在频率域,由于噪声频谱通常在高频段,因此可以采用各种形式的低通滤波的方法俩较少噪声。下面介绍空间域的滤波。 一、图像的平滑 1、smooth_image(Image : Imag 阅读全文
posted @ 2022-05-08 23:09 ihh2021 阅读(950) 评论(0) 推荐(0)
摘要:1、dev_set_check ('~give_error') 功能:不捕捉错误,也不弹出窗口抛出错误,而是把错误代码存到Error变量里。 dev_error_var (Error, 1) //定义Error变量,定以后Error值就为2,表示此时仍未有错误 dev_set_check ('~gi 阅读全文
posted @ 2022-05-08 23:08 ihh2021 阅读(194) 评论(0) 推荐(0)
摘要:点运算能让用户改变图像数据占据的灰度范围,一幅输入图像经过点运算后将产生一幅新的输出图像,由输入像素点的灰度值决定输出图像像素点的灰度值。点运算可以按照预定的方式改变一幅图像的灰度直方图。 灰度直方图 灰度直方图是数字图像处理中一个简单、最有用的工具,它描述了一幅图像的灰度级内容,任何一幅图像的直方 阅读全文
posted @ 2022-05-08 23:08 ihh2021 阅读(922) 评论(0) 推荐(0)
摘要:图像的平移在后续的仿射变换中介绍 插值算法简介 在图形进行变换时可能产生一些原图中非整数位置的点,只是需要进行插值运算来计算这些非整数位置点的像素值。Halcon中常用的两种插值算法:最邻近插值('nearest_neighbor')和双线性插值('bilinear')。Halcon算子在运算时,如 阅读全文
posted @ 2022-05-08 23:08 ihh2021 阅读(465) 评论(0) 推荐(0)
摘要:一、生成二值化图像 1、region_to_bin(Region : BinImage : ForegroundGray, BackgroundGray, Width, Height : ) read_image (Image, 'fabrik')//读入图像 threshold (Image, R 阅读全文
posted @ 2022-05-08 23:07 ihh2021 阅读(282) 评论(0) 推荐(0)
摘要:1、get_obj_class(Object : : : Class) 1 2、elliptic_axis(Regions : : : Ra, Rb, Phi) 1 3、elliptic_axis_xld(XLD : : : Ra, Rb, Phi) 2 4、get_region_points(Re 阅读全文
posted @ 2022-05-08 23:06 ihh2021 阅读(494) 评论(0) 推荐(0)
摘要:一、并集 1 1、union2(Region1, Region2 : RegionUnion : : ) 对象是region 1 2、union1(Region : RegionUnion : : ) 对象是region 2 3、union2_closed_contours_xld(Contours 阅读全文
posted @ 2022-05-08 23:05 ihh2021 阅读(372) 评论(0) 推荐(0)
摘要:*产生通过连通性分析后的区域ConnectedRegions gen_ellipse (ROI_0, 194.454, 142.053, rad(22.0779), 68.1093, 95.939) gen_rectangle1 (TMP_Region, 92.0538, 295.488, 320. 阅读全文
posted @ 2022-05-08 23:05 ihh2021 阅读(156) 评论(0) 推荐(0)
摘要:1、 gen_circle( : Circle : Row, Column, Radius : ) 1 2、 gen_circle_contour_xld( : ContCircle : Row, Column, Radius, StartPhi, EndPhi, PointOrder, Resol 阅读全文
posted @ 2022-05-08 23:02 ihh2021 阅读(374) 评论(0) 推荐(0)
摘要:1、 gen_empty_obj( : EmptyObject : : ) 1 2、 gen_empty_region( : EmptyRegion : : ) 1 3、 draw_circle( : : WindowHandle : Row, Column, Radius) 2 4、 draw_c 阅读全文
posted @ 2022-05-08 23:01 ihh2021 阅读(246) 评论(0) 推荐(0)
摘要:一、预备知识:类型介绍 5 1、 Image类型: 5 2、 Region类型: 5 3、 XLD分为两种:边缘轮廓(xld contour)和多边形(xld polygon) 5 1) 、XLD Contour 5 2) 、XLD Polygon 5 二、转换规律: 5 三、转换算子 5 1、ge 阅读全文
posted @ 2022-05-08 23:01 ihh2021 阅读(4453) 评论(0) 推荐(0)
摘要:1、 reduce_domain(Image, Region : ImageReduced : : ) 1 2、 crop_domain(Image : ImagePart : : ) 1 3、 add_channels(Regions, Image : GrayRegions : : ) 2 4、 阅读全文
posted @ 2022-05-08 23:00 ihh2021 阅读(575) 评论(0) 推荐(0)
摘要:硬件触发(GigE Vision): (1)、使用图像助手先把相机连接上HDevelop (2)、在"参数"选项中打开触发模式,并把曝光时间调大(是图像更加明亮便于观察) (3)、把时间限制(timeout)调大哦,防止过久没触发抛出错误。 (4)、插入代码: open_framegrabber ( 阅读全文
posted @ 2022-05-08 22:58 ihh2021 阅读(2008) 评论(0) 推荐(0)
摘要:当开始一个新的HDevelop程序时,只有一个主函数,随着代码的增加,时常发现一大块代码可以重复使用或者可以构成一个小的单元使得代码窗口更加清晰。这种情况下可以把相应的程序行新建成一个函数。方法如下: 选中要创建函数的行 右键单击 创建新函数: ①:函数的名字 ②:这个复选框决定这个函数式本地函数还 阅读全文
posted @ 2022-05-08 22:49 ihh2021 阅读(253) 评论(0) 推荐(0)
摘要:变量的类型有等号(:=)的右边决定,不用显式声明 图形类型 图像Image read_image(Image, 'fabrik') 区域(region): gen_rectangle1(Rectangle, 30, 20, 100, 200) Xld轮廓 *把region转换为轮廓类型(xld) g 阅读全文
posted @ 2022-05-08 22:38 ihh2021 阅读(151) 评论(0) 推荐(0)
摘要:丢失原因可能是在打补丁过程中,安装了VS 2008 sp1,所以在控制面板中找打SP1并把SP1先给卸载了。 进入VS的维护模式。 重新单独安装 4、效果 5、重新打SP1补丁。 阅读全文
posted @ 2022-05-08 22:37 ihh2021 阅读(115) 评论(0) 推荐(0)
摘要:假若要移植到的目标计算机上没安装有任何与Halcon相关的软件和组件时。 把证书license.dat复制到工程目录下(与可执行文件exe同一个路径)。 注:这里的证书的命名一定要是:license.dat 把需要用到的DLL如halcon.dll,halconcpp.dll文件复制到工程目录下(与 阅读全文
posted @ 2022-05-08 22:37 ihh2021 阅读(350) 评论(0) 推荐(0)
摘要:一、配置环境 把Halcon安装目录下的include文件夹以及所有子文件夹都添加到mfc项目属性 C/C++常规 附加包含目录中。 把Halcon安装目录下的lib文件夹以及所有子文件夹都添加到mfc项目属性 连接器 常规 附加库目录。 mfc项目属性 连接器 输入 附加依赖项,添加ahlconc 阅读全文
posted @ 2022-05-08 22:36 ihh2021 阅读(1192) 评论(0) 推荐(0)