LabVIEW论坛

 找回密码
 注册

扫一扫,访问微社区

查看: 11674|回复: 68

[共享贴] LabVIEW机器视觉知识入门及提高

    [复制链接]
发表于 2012-12-14 09:59:29 | 显示全部楼层 |阅读模式
USB-6009数据采集卡首发
本帖最后由 work603 于 2012-12-14 10:03 编辑
% z3 t% h. W& F  m% t+ j. j% N. e* y5 e0 p
本人使用LabVIEW快十年了,用LabVIEW做视觉也有六七年的时间。在这段时间中,也遇到很多入门的朋友问及有关LabVIEW视觉方面的知识,可能是所做的行业不同吧,有时候看起来是很简单的东西,他们做起来就很困难,还有些朋友没有太多视觉经验,但为了赶公司的项目时间,急匆匆的使用LabVIEW视觉。为了给他们减少阻力,快速的进入视觉工作,本人打算将NI的视觉概念手册整理一遍,有了这些知识,就能更清楚的理解视觉,从而快速的进入视觉开发。此资料每整理出来一部分,我就及时发布出来,有需要的朋友可下载保存。有些东西我也是第一次接触,知识和经验欠缺,有错误的地方欢迎各位高手及时批评指正,以免影响大家使用,谢谢!

评分

参与人数 2V币 +600 收起 理由
虚拟小强 + 500 很给力!
风带我飞 + 100 很给力!

查看全部评分

IDAQ-USB-6009数据采集卡
 楼主| 发表于 2012-12-14 10:01:58 | 显示全部楼层
在线课堂
本帖最后由 work603 于 2013-1-5 09:53 编辑
! x# V6 O4 y* J% C' k& t" ?0 w& r4 S$ k
         第一章* a6 l' B. B9 ^  O
数字图像
8 q, e& I" {! c! r  n0 m本章包含的信息有:数字图像的属性、图像类型、文件格式、在NI视觉中图像的内部描述方式、图像边缘和图像遮盖。, D' ]9 x# D7 P9 j% t; J2 u- S, R: S
一幅数字图像的定义                                                      9 O7 O5 q! ~1 R' w$ ]
一幅图像就是表示光强度的一个二维数组。为达到图像处理的目的,图像这个词就是指数字图像。图像是光强度的一个函数:( t0 k. @' [1 a
f(x,y)
7 z* Z6 @5 \- [- k; b* f1 G2 E其中f是坐标点(x,y)的亮度值,x和y表示一个图片元素的空间坐标,或者叫像素。
. g* A: d# k' N5 C! o通常,像素的空间参考点坐标(0,0)位于图像的左上角。注意,在图1-1中,x值从左向右增加,y值从上向下增加。9 S  g, d" S( m# ?$ x6 \6 w
" S+ J% d! X4 J; ]

  a( N: f1 q- {6 Q                               
登录/注册后可看大图
[img]
; x: N: y5 ]2 i: A5 ?* @+ B/ ?' U' P% W. W
图1-1 像素(0,0)的空间参考点
% p# n" u5 p' d9 L1 ^在数字图像处理中,图像传感器把一幅图像转换成像素的离散数字。图像传感器给每一个像素指定一个数字位置,灰度值或者色彩值表示像素的亮度或者颜色。8 b, s! U- |& Q# T

5 F( x' F  P7 B5 b+ y# o% [* S( ?! F数字化图像的特性                                                      
4 B3 |& b! P5 @; R3 p8 }% m一幅数字化图像有三个基本特性:分辨率、definition9 R6 a& m0 J3 M" s8 f. H( W- L  ?
图像分辨率
( G; ~4 x8 H% a, a* |- `  W6 M# p6 O图像分辨率由像素的行数和列数决定。由m列和n行组成的一幅图像有m*n的分辨率。这个图像在水平方向上有m个像素,在竖直方向有n个像素。
/ ~$ i( X; U6 p  |! y) ?, T
 楼主| 发表于 2012-12-14 10:34:48 | 显示全部楼层
图像解析度(definition)& [! F' q  s+ Q. x
图像的位深是编码像素值的位数。对于一个给定的位深n,图像有2的n次方的图像精度,意味着一个像素可以有2的n次方个不同的值。比如,如果n=8,那么一个像素可以有从0-255一共256个不同的值。如果n=16,一个像素可以有65536个不同的值,范围从0-65535,或者从-32768到32767。目前,NI视觉仅仅支持从-32768到32767范围的16位的图像。$ |+ x* a+ T- _9 w) D
NI视觉可以处理的图像有:8位,10位,12位,14位,16位,浮点,或者彩色编码的图像。你编码你图像的方式依赖于图像采集器的特性、你需要用的图像处理类型、你需要执行的分析类型。例如,如果你需要获得图像中目标形状信息,8位的编码就足够了。然而,如果你需要精确测量图像或者区域中的光强度,你就需要使用16位或者浮点类型的编码。0 }& j  h6 Z* |$ i0 V* L" H
当你的机器视觉或者图像处理的应用依赖于你检测或者分析的目标的色彩成分时,就使用彩色编码图像。( Y# C+ ~+ p( S( X
NI视觉并不直接支持其他的图像编码类型,特别是1位、2位或者4位。在这种情况下,当打开图像时,NI视觉自动的把图像转换成一个8位图像——NI视觉中最小的位深。
- h) j; i8 w$ }  xNumber of Planes像元数目1 Y# O( h8 C$ k! Y+ ^  l
图像的像元数目与像素的数组数目相对应。一个灰度级图像,或者抽取了色彩的图像由一种像元组成。一幅真彩色图像由三种像元组成——红色,绿色和蓝色。
+ q% u" o+ X5 S* t在真彩色图像中,像素的彩色成分强度由三种不同的值编码组成。一个彩色图像的像素由三个数组组成,在RGB图像中对应的是红色、绿色和蓝色成分。HSL图像由色调Hue,色度saturaion和亮度组成。
) `# _; X% F9 k/ V
 楼主| 发表于 2012-12-14 10:35:41 | 显示全部楼层
本帖最后由 work603 于 2013-1-6 19:39 编辑
* [1 P3 U9 u7 H0 s4 Q/ M# \# z
' I2 u, r& K( x  |, D图像的类型                                          
( z0 |; A/ }4 F0 f1 G( R: c+ }NI视觉库可以处理三种类型的图像:灰度,彩色和符合图像。尽管NI视觉支持所有三种类型,但某些操作在特定类型的图像也是不可能的。例如,你不能对一个符合图像使用逻辑与运算。
. U" c+ {/ J! T表格1-1显示了灰度图、彩色图和复合图像的每个像素所占用的字节数。对于一个相同的空间分辨率图像,彩色图像占用的内存空间是8位灰度图像空间的4倍,复合图像占用的内存空间是8位灰度图的8倍。
) p3 L  h2 u# j, F
; Y5 o4 d$ m0 n$ X+ p

5 J- m. G  m0 P( J                               
登录/注册后可看大图
# L/ f' E/ O: J2 y
                               
登录/注册后可看大图
发表于 2012-12-14 12:10:51 | 显示全部楼层
顶一下不错,好像上面的图片没显示出来
发表于 2012-12-14 13:58:05 | 显示全部楼层
顶一个,现在用labview进行机器视觉应用的开发越来越多了,期待楼主继续更新,不过有些图像显示不了哦
发表于 2012-12-14 16:28:03 | 显示全部楼层
顶 ,学习学习你的先进经验~
 楼主| 发表于 2012-12-15 09:22:48 | 显示全部楼层
本帖最后由 work603 于 2012-12-17 18:58 编辑
6 I9 G6 ?; E# g9 \3 u9 t2 W+ A
4 H, P1 Q$ A* `1 l2 b头一回在这里上传图片,还不习惯,有些审核后才能通过呢。) M; b4 S+ u- a8 E6 `

, ?& w2 I1 _' t7 N! H! @' O这些东西还是需要先了解基本的知识,才能更好的理解图像,编程会更有的放矢。
 楼主| 发表于 2012-12-15 09:49:04 | 显示全部楼层
本帖最后由 work603 于 2013-1-6 19:40 编辑 + j% `* \1 j) l/ p

! l5 `) c: y: s2 B灰度图像      
* A& l( V* u  _  ~7 r. |一幅灰度图像由像素的单一平面组成。每个像素都使用下面一种编码方式:
2 C3 i# l2 u3 o0 e( n) F1 B. d! d   8位无符号整型灰度值在0-255之间。! ?( G: X# o9 ]' _: f* D4 ]) e& h
    16位的有符号整型表示的灰度值在-32768到+32767之间。
* g4 a' t  R6 \: I, [7 \9 l) H, G5 I        单精度浮点型数,用4个字编码,表示的灰度范围从-∞到∞。
7 ^( t* G4 U* _3 A2 P/ G  I彩色图像
; o3 d6 D! i: U1 M$ Y* c4 l* D% z7 Y彩色图像在内存中的编码是RGB,或者是HSL格式。彩色图像的像素是4个值的组合。RGB图像使用8位的红、绿和蓝存储彩色信息。HSL图像使用8位的色调、饱和度和亮度存储彩色信息。RGB U64图像使用16位的红、绿、蓝存储彩色信息。在RGB和HSL彩色模式下,附加的8位值没用到。这种表示方式被称为4X8位或32位编码。在RGB U64彩色模式下,一个16位的值没有用到。这种表示方式被称为4X16位或64位编码。
) t4 A. ~  [( p. \9 s, I7 U
7 }) p1 c* ^. K& `

* V( V: ]  S/ X                               
登录/注册后可看大图

) l; \. v0 u& t复合图像
% Z4 S0 K% e! Z7 f2 ?4 G* O一个复数图像包含灰度图像的频率信息。你可以通过对灰度图像使用快速傅里叶变换来创建一个复合图像。在把灰度图像转换成复合图像后,你可以在图像上执行频域的操作了。
0 `! O& i$ b2 p3 k复合图像的每个像素都被编码成两个单精度浮点值,它表示复合图像的实部和虚部。从复合图像中,你可以取得下面四个成分:实部,虚部,相位和振幅。3 z( ]; U% x  K, X  ]. i& Y( f
 楼主| 发表于 2012-12-15 10:19:01 | 显示全部楼层
本帖最后由 work603 于 2012-12-17 19:04 编辑
( j1 V; u8 e9 a, o0 ^( P) y/ e, h+ Q$ O4 E5 M- N
图像文件        
9 P: ^) V& o, ?                                  ) w7 g0 A. x  S4 w+ C8 ?
图像文件由标头组成,标头后面是像素值。根据文件格式,标头包含的图像信息有横向和纵向分辨率,像素定义和原始的调色板。图像信息业包含存储的信息,如校正,匹配模板和图像上的覆盖。下面是通常的文件格式:
; m' H( L9 I9 h2 K/ u; k, f. n; ^9 s        位图(BMP)1 T# I, E/ E2 b! }4 ~+ V( |
        标签图像文件格式。(TIFF)
8 J/ Q; b! s& C5 u        便携式网络图形(PNG)——提供存储图像信息的能力,关于空间校正,模式匹配模板和图像上的覆盖。9 g1 U4 [# m& z% B3 Y1 G
        联合图像专家组格式。(JPEG)
# d& h* B! }* i0 h, h) N' j( S        NI的内部图像格式(AIPD)——用来存储浮点、复数和HSL图像。5 H6 ~2 ?! D  p* \" g
8位的灰度图和RGB彩色图象的标准格式是BMP,TIFF,PNG, JPEG和AIPD。16位的灰度图,64位的RGB图和负数图的标准格式是PNG和AIPD。( h* P0 \$ p; o. [+ o
NI视觉图像的内部描述                                  6 C* z& ]- ?8 J3 h6 _
图1-2说明了一幅NI视觉图像如何在系统内存中表述。除了图像像素,所保存的图像还包括额外的像素的行和列,称作图像边缘和左右对齐。涉及像素邻域操作的具体处理功能时使用图像边界。调整区域确保图像的第一个像素在内存中是32个字节的对齐。调整区的大小依赖于图像的宽度和边界的大小。调整图像增加了最多30%的处理速度。
! h1 V$ d8 o2 \$ e7 z# |* p( r线宽是图像水平线上像素的总数,它包含水平分辨率的总数,图像边界和左右的对齐。如果水平分辨率是32字节的倍数,边界大小是0的话,那么水平分辨率和线宽就是一样的。5 g" u& Z! i# E; P! p

) {& W# c  {6 w9 L# l- e                               
登录/注册后可看大图
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|无图浏览|手机版|网站地图|虚拟仪器家园 ( 沪ICP备06029130号-1 )

GMT+8, 2019-1-19 08:05 , Processed in 0.031892 second(s), 24 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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