石鑫华视觉 发表于 2017-3-23 17:36:45

3.1.31 IMAQ Flatten Image to String扁平化图像为字符串

3.1.31 IMAQ Flatten Image to String扁平化图像为字符串扁平化图像为字符串函数,其作用是使用提供的选项将图像用字符串来表示。IMAQFlatten Image to String扁平化图像为字符串在程序选板中的位置IMAQFlatten Image to String扁平化图像为字符串功能说明、支持图像与接线端Flattenwith Process-Unique Name (F)使用唯一名称的进程扁平化:该选项NI帮助文档中并没有解释,应该是一个BUG。但是根据其字面意思,应该是确定是否使用唯一名称的进程来处理扁平化。相当于分配单独的资源来处理扁平化过程。因为从实际应用来看,当图像超过百万像素时,处理起来是非常慢的。所以,这里可以指定单独专用的一个进程来扁平化。如果为假,则与其它处理共享进程。Compression(None)压缩(无):、Type of Flatten (Image and Vision Info)扁平化类型(图像和视觉信息)、Quality (750)质量: 这三个参数与上节中的扁平化选项中的参数是一样的概念。Data String:是LabVIEW字符串,包含了表示图像的字符串。使用Unflatten将此字符串的LabVIEW原始字符串转换回图像。如果在内存中图像和扁平化后的图像有相同的名称,当字符串没有逆扁平化时,扁平化后的图像字符串内容直接复制到图像中。否则,会新建一个唯一名称的图像,该图像包含了扁平化图像字符串的内容。下面来看一下该函数的实例。IMAQFlatten Image to String扁平化图像为字符串实例程序框图IMAQFlatten Image to String扁平化图像为字符串实例前面板-无压缩如上图所示,为读取一幅30万像素的灰度图。从图像信息中可以看到,分辨率为656×492,共有322752字节的数据。可以看到没有压缩后的数据字符串长度为35083字节(还包含了一些组织信息)。也就是没有使用压缩方法时,转换后的字符串字节数与图像的大小是一样的。注意,压缩方法为None时,建议不要读取大图像,会很慢!IMAQFlatten Image to String扁平化图像为字符串实例前面板-JPEG压缩当使用JPEG压缩时,字符串长度则明显缩短,只有56660字节了。大概也就是56K的样子。这个值大小,和将图像保存为JPEG时的大小接近:示例中读取的30万像素图像BMP与JPEG大小IMAQFlatten Image to String扁平化图像为字符串实例前面板-PACKED BINARY压缩使用Packed Binary方法压缩时,则字符串大小会更小一点。图像质量设置为300时的JEPG压缩可以看到,将图像质量设置为300时的JPEG压缩,其压缩后的大小更小。IMAQFlatten Image to String扁平化图像为字符串实例-扁平化类型为Image and Vision上图为扁平化类型选择图像和视觉,可以看到其与Image相比时,扁平化后的字符串大了9字节。IMAQFlatten Image to String扁平化图像为字符串实例-扁平化类型为Reference to Image而当使用图像引用作为扁平化类型时,则数据字符串最小,仅有127。下面再来看一下扁平化图像选项的使用:扁平化图像选项函数的使用程序框图    这里使用时,比较简单,扁平化图像选项设置好后,将新的选项输出给扁平化图像为字符串函数即可。无压缩效果JPEG压缩效果PACKEDBINNARY压缩效果可以看到,上面的作用效果和图像转换为字符串单独作用时一样。那么问题来了,扁平化图像选项函数的作用又在哪里呢?LabVIEW2014SP1例子下载:
页: [1]
查看完整版本: 3.1.31 IMAQ Flatten Image to String扁平化图像为字符串

LabVIEW HALCON图像处理入门教程(24.09)
石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
《LabVIEW Vision函数实例详解2020-2024》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24