Halcon算子综述(概述)

1.1 Halcon数据结构

Halcon中,Image = Channel + Domain , 像素点存放在Channel矩阵中,根据ROI来描述Image。
Image相关操作:

  • 输入:从文件、从设备
  • 生成:外部图像数据、空内存区域;
  • 显示:disp_image()图像首通道灰度图;disp_color()
    彩色图;disp_channel()某特定通道;disp_obj() 自动判别类别;
  • 缩放:set_part() 设置显示区域;set_part_style() 设置显示参数;
  • 3D显示:(略)

边界点的处理:镜像、常数、延续、周期(略):
域的局限性:一些算子总是要处理周围的矩形区域,比如mean_image(),并且总是先处理小的区域;
测量工具中的ROIs比较特殊,这种ROIs并不依附于Image上,而是在算子gen_measure_*()后产生,并且也只能是任意朝向的矩形、圆弧形区域;
处理多通道图像:

  • 分割:Gray operators仅适用第一通道,Color operators: 使用前三个通道,Multi channel
    operator会使用全部通道;

//对“Gray operators仅适用第一通道”的解释:实际上,灰度图,就是用第一通道(Red)像素点值所构建出来的那幅图。

  • 过滤:所有通道被处理时均使用相同的参数,并且结果的通道数与处理的图片相同;
  • 可以将域的处理结果,与原图像结合在一起作为输入图像;
  • 通道处理:count_channels(),decompose*(), compose*(), access_channel(),
    append_channel(), channels_to_image(), image_to_channels()

图像金字塔中,第一个图像为最大的图像,各图像有各自的区域

标准图形(Shape):circle、ellipse、rectangle1、rectangle2、line、polygon
特殊区域图形:gen_grid_region(): grid、lines、points, gen_checker_region()
图像处理:

  • 修改:set_grayval() : Modify one or more pixels of the input
    image;paint_gray(): Paint part of an image into another image;
    overpaint_gray(): Paint part of an image into the input image;
    paint_region(): Paint the region with a constant gray value into an
    image; overpaint_region() : Paint the region with a constant gray
    value into the input image
  • 复制:crop_part(): Crop a rectangle, given by upper left corner and
    size; crop_rectangle1(): Crop a rectangle, given by upper left and
    lower right corner; crop_domain(): Crop area of the smallest
    rectangle1 of the domain; crop_domain_rel(): Like crop_domain but
    with the possibility to change the size of bounding box;
    change_format(): Limit the size of the image at the lower or the
    right part; get_grayval(): Access one or multiple pixel values Ø
    Tile: tile_images(), tile_images_offset(), tile_channels()

1.2 Halcon数据结构

区域运算:

  • 并:union1()、union2();
  • 交:intersection();
  • 差:difference();
  • 补:complement();

图形显示参数设置:

  • 显示模式:set_draw(); 参数:margin、filled
  • 线宽线形:set_line_width(); set_line_style();
  • 颜色:set_color(); set_colored(); set_rgb(); set_gray();
  • 显示图形:set_shape(); 参数:original、outer circle、inner
    circle、rectangle1、rectangle2、ellipse、icon
  • set_icon

1.3 Halcon数据结构

关于XLD,简要写一下:
图像均用像素点保存,而像素点是整型的,不连续的;Halcon做了拓展,定义了亚像素(subpixel)的对象:xld;其实xld已经用过了,比如提取边缘、构建轮廓等等,xld在模板匹配、图形校准等多方面有重要的用途。

1.4 色彩 color

在视网膜底部,有三类感光细胞,它们分别探测不同频率的光,产生RGB神经冲动,并把这些神经冲动传递下去;经过另外的细胞的处理,转换成1个亮度通道、两个色彩通道。

  • The RGB stimulus is converted to a luminance and 2 chrominance
    channels
    所以,RGB图是原始的感光图,而人眼的感觉,却不是RGB三通道的叠加;更直观地描述人的感觉,需要用到其他的色彩空间,比如hsv空间。
    不同频率的光,会产生不同的颜色;而光只有三种颜色,这是因为人眼只有三种光感受器。
    所以有,任何光产生的颜色,都能够由这三种纯色来合成,这就是光的三元色。 点击查看原图

对于相机来说,能够检测到的光谱范围比人眼要宽泛,比如红外相机等;为了获得人眼类似的图像,可以加上过滤装置,滤去超出400-700nm范围的光线。

1.5 色彩空间及Halcon颜色处理

CCD彩色相机有R、G、B三种感光芯片,捕捉不同颜色,然后转换为RGB三通道。
颜色空间:

  • RGB Red、Green、Blue三色通道,对光来说,犹如在黑暗中点亮各分色。
  • CMY Cyan、Magenta、Yellow 三颜色通道,犹如在白纸上图颜料
  • YUV、YIQ Y描述亮度、其余两通道描述颜色(的差值),用于电视转播
  • ARgYb 与上类似,A描述亮度,其余两者描述颜色差值
  • I1i2i3 与上类似,i1描述亮度
  • HSI Hue、Saturation、Intensity 分别描述颜色、饱和度、亮度
  • HSV 与上类似,这里的V描述亮度,方法与上不同
  • HSL 与HSI类似,L描述亮度,但Hue与之不同
  • HIS 与HIS类似
  • Uniform Color Space、CIE uv 用二维图描述色彩
  • CIE Lab 高级色彩空间,较少使用

颜色空间的转换,依靠GPU进行运算:trans_from_rgb(),速度快

Scale_image() 可以对单通道(RGB、或HSV中的)进行重新渲染;

颜色的选取,通过对Hue通道进行threshold()
2D Histogram 可用来描述两通道(RGB、HSV等中的)相应值对应关系,可用来选取颜色相近区域:histo_2dim()

N维像素分类:learn_ndim_norm()、learn_ndim_box()
LUT:MLP、SVM、GMM

彩色过滤器:用于彩色图像的分割等:edges_color()、edges_color_sub_pix()、lines_color()

1.6 Halcon 窗体

Halcon窗体的坐标系统:(Row, Column) (Width, Height)
图形:可以显示灰度图、彩色图、3D;定义要显示的区域,插值
区域:绘图模式(Fill、Margin),边界、线宽,定义色彩模式,自动图形转换
绘图:点、线、xld等

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薪薪代码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值