石鑫华视觉论坛微信公众号:石鑫华视觉

 找回密码
 注册会员
查看: 6310|回复: 1

[原创] 3.1.1 IMAQ Create创建(图像缓存)

[复制链接]
  • TA的每日心情
    无聊
    3 小时前
  • 签到天数: 3178 天

    连续签到: 48 天

    [LV.Master]2000FPS

    发表于 2016-11-2 16:29:48 | 显示全部楼层 |阅读模式 来自:广东省东莞市 电信

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    3.1.1 IMAQ Create创建(图像缓存)
    创建图像缓存这个在NI Vision中是非常基本且必须的一个操作。基本上NI所有与图像相关的函数,都是必须要使用图像缓存的。

    IMAQ Create创建函数在程序选板中的位置

    IMAQ Create创建函数在程序选板中的位置
    IMAQCreate创建函数在程序选板中的位置

    IMAQ Create创建函数说明与接线端

    IMAQ Create创建函数说明与接线端
    IMAQCreate创建函数说明与接线端
    根据函数官方的功能说明,其是为图像创建一块临时内存位置。使用IMAQ Create创建函数并联合IMAQ Dispose释放,可以在LabVIEW中创建或释放NI视觉中的图像。
    该函数的作用就是为图像在内存中建立一个缓存区域,以提供给后面的其它函数进行具体的操作。如果不使用该函数创建缓存,后面其它的所有需要图像处理的函数,都无法正常执行,因此该函数是其它图像处理函数正常执行的先决条件。
    边界尺寸BorderSize边缘尺寸决定了围绕图像的边框的宽度,使用像素单位。这些边界像素仅用于一些特别的函数。在应用程序一开始时就要创建好边界尺寸,从而能够用于后面需要边界的函数(如标签、形态学等)。默认的边界值是3。使用3像素的边缘尺寸,可以使用最大7×7的内而不需要改变边界尺寸。而如果在想要在处理中使用大于7×7的内核,则需要在创建图像缓存时指定更大的边界尺寸。满足公式边界尺寸≥(内核-1)/2,例如想要使用15×15的内核,则边界尺寸必须大于等于(15-1/2=7才可以。

    8×6像素的图像边界尺寸为0

    8×6像素的图像边界尺寸为0
    8×6像素的图像边界尺寸为0
    如上图所示的8×6像素的图像,其边界尺寸为0,则不允许使用内核。

    8×6像素的图像边界尺寸为2

    8×6像素的图像边界尺寸为2
    8×6像素的图像边界尺寸为2
        而上图的8×6图像,其边界尺寸为2,则允许最大为5×5的内核进行图像处理。
    图像名称ImageName是与创建的图像相关联的名称。类似于给内存地址赋值一个用户直观可见的别名。每个图像缓存的创建必须使用唯一的名称。
    图像类型Image Type:用于指定创建图像缓存的类型。不同的图像类型其占用的内存空间大小不一样。可以选择以下表中的值:
      
    Grayscale (U8) (0)
      
    灰度图U8
      
    8  bits per pixel (unsigned, standard monochrome)
      
    每像素8位(无符号U8,标准单色图像)-最常用
    Grayscale (I16) (1)
      
    灰度图像(I16
    16  bits per pixel (signed)
      
    每像素16位(有符号I16
    Grayscale (SGL) (2)
      
    灰度(SGL
    32  bits per pixel (floating point)
      
    每像素32位(单精度浮点型SGL
    Complex (CSG) (3)
      
    复数(CSG
    2 × 32  bits per pixel (floating point)
      
    每像素2×32位(用于实部、虚部,单精度浮点)
    RGB (U32) (4)
      
    RGB彩色(U32
    32  bits per pixel (red, green, blue, alpha)
      
    每像素32位(红、绿、蓝、透明平面,每个8位)-较常用
    HSL (U32) (5)
      
    HSL彩色(U32
    32  bits per pixel (hue, saturation, luminance, alpha)
      
    每像素32位(色调、饱和度、亮度、透明平面,每个8位)
    RGB (U64) (6)
      
    RGB彩色(U64
    64  bits per pixel (red, green, blue, alpha)
      
    每像素64位(红、绿、蓝、透明平面,每个16位)
    Grayscale (U16) (7)
      
    灰度(U16
    16  bits per pixel (unsigned, standard monochrome)
      
    每像素16位(无符号I16
    图像类型表
    新图像New Image是图像引用,将作为随后所有使用NI 视觉函数的输入。该接线端,可以在后面的其它函数之间串行、并行,并将始终保持使用当前的内存空间。使用LabVIEW创建应用程序时,可以创建多个图像引用。

    IMAQ Create函数的使用

    IMAQ Create函数的使用
    IMAQCreate函数的使用
       Create函数常规的使用只会涉及到程序框图,其中的几个输入端一般也都使用常量,而不会使用变量。而边界、名称、类型三个值的选择,则需要根据具体的程序来确定。其中最简单的创建方法就如上图中的图像缓存2,只需要指定名称即可,这样创建的图像缓存是灰度U8,边界为3。而从前面相机采集函数中我们知道,即使创建成了灰度图像,如果相机的视频模式是彩色的,则获取图像函数会强制将图像缓存空间转换成RGB模式。

    create.vi (9.33 KB, 下载次数: 47)

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    LabVIEW HALCON图像处理入门教程(第二版)
    石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
    《LabVIEW Vision函数实例详解》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23
    LabVIEW图像处理教程
    机器视觉商城淘宝店铺
    视觉论坛充值赞助方法

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-4-20 14:46

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表