众所周知,VisionPro是一款功能强大的机器视觉软件,用于开发和部署机器视觉应用程序。其中ImageConvertTool是其中一个重要的工具,用于图像转换和处理。本文将介绍如何使用ImageConvertTool进行图像转换,并探讨其背后的原理。

  写之前先吐槽一下,引出自己的原因,哈哈哈(当然一个小小的转换工具不足以写一篇博文,放在这里就当自己的小日记吧)。

  为什么要写这一篇博文呢,正常VisionPro 的 Documentation里面都有啊。但是实际上在最新版的VisionPro仍然和之前的版本有一些差异。

根据官方的介绍,VisionPro 9.8和VisionPro 10.2之间存在以下一些区别:

  1. 功能和性能改进:通常,软件的新版本会引入新的功能和性能改进。VisionPro 10.2可能在功能上比9.8版本更丰富,并提供更好的性能和效率。

  2. 支持的硬件和操作系统:VisionPro的不同版本可能对不同的硬件设备和操作系统提供不同程度的支持。VisionPro 10.2可能支持更新的硬件设备和操作系统,并提供更好的兼容性。

  3. 用户界面和工具改进:新版本的软件通常会改进用户界面和工具,以提供更直观和易用的操作体验。VisionPro 10.2可能在用户界面和工具方面进行了改进,使得开发和调试视觉应用程序更加方便和高效。

  4. Bug修复和稳定性改进:软件的新版本通常会修复旧版本中存在的错误和问题,并提供更好的稳定性和可靠性。VisionPro 10.2可能修复了9.8版本中已知的错误,并提供更稳定的运行环境。

  当然我们也可以直接看官网update information,我这里只copy一点点

  但是我想说的是,从使用体验来看,实际上VisionPro10.x的版本比较VisionPro9.x及其以前的版本来说,差异主要就是没有example了。虽然最新页面更新了,看起来更加高大上了,但是隐藏了之前的教程案例,确实不太友好。

  截图对比如下(上图:VisionPro9.x, 下图VisionPro10.x):

  就是因为VisionPro 10.x 没有例子,所以对于有些算子,我们直接加载数据,再接算子的时候,会报错,这时候本文的主角ImageConvertTool就排上用场了,无论是加载的数据是灰度图(需要转换为RGB的),还是彩色图(需要转换为灰度图),这个算子都可以。下面介绍一下ImageConvertTool。

1,什么是ImageConvertTool?

  ImageConvertTool是VisionPro提供的一个图像处理工具,它允许用户对图像进行各种格式转换和预处理操作。无论是从一个图像格式转换为另一个格式,还是对图像进行增强、滤波、几何变换等操作,ImageConvertTool都能满足用户的需求。

  下图就是ImageConvertTool算子的界面:

2,使用ImageConvertTool 进行图像转换

2.1 打开ImageConvertTool

  在VisionPro软件中,找到ImageConvertTool并打开它。通常,它可以在主菜单或工具栏中找到。

2.2  加载原始图像

  通过点击工具界面上的“Load Image”按钮,选择并加载你想要转换的原始图像。ImageConvertTool支持多种常见的图像格式,如JPEG、BMP、PNG等。

  加载数据有两种方式,一种如下所示:

  连接相机,如下所示:

2.3  选择目标格式和参数设置

  在ImageConvertTool的界面上,选择你希望将原始图像转换成的目标格式。例如,如果你想将JPEG图像转换为BMP格式,选择BMP作为目标格式。

  此外,你还可以根据需要设置其他参数,例如图像质量、色彩空间、图像大小等。这些参数根据你的具体需求而定。

  图像转换工具接受以下类型的彩色图像:

  • 色调、饱和度、强度 (HSI)

    VisionPro 支持 Image24PlanarColor 图像,其中三个 8 位颜色平面代表:

    • 色调:以 [0,360] 度之间的角度的形式描述颜色
    • 饱和度:描述颜色被白光稀释了多少,范围在 [0,1] 之间
    • 强度:表示 [0,1] 之间范围内的亮度,其中 0 表示全黑,1 表示全白
  • 红、绿、蓝 (RGB)

    VisionPro 支持具有三个 8 位颜色平面的 Image24PlanarColor 图像,代表 RGB 颜色格式的红色、绿色和蓝色值。

  • Bayer

    VisionPro 支持使用 Bayer 滤波器处理的 Image8Grey 图像。

  大多数图像转换操作产生一个 Image8Grey 图像,代表彩色图像的灰度强度。下面根据界面介绍:

2.3.1  运行参数

  使用运行参数选项卡在图像转换选项之间进行选择

  参数从以下选择其一:

2.4.2  区域

  使用区域选项卡确定该工具是分析整个图像还是指定区域:

  默认情况下,该工具会分析整个 Current.InputImage。选择矩形以使用以下参数指定输入图像的特定矩形区域:

  • 选定空间名称选择用于处理图像的坐标空间。
  • 选择模式:选择输入区域的尺寸是从图像的原点还是从区域的中心开始测量。

  当然设定特定区域,图像也只获取特定区域的数据,并且传入下一个图像中也是特定的区域。

2.4  执行图像转换

  点击“Convert”按钮,ImageConvertTool将开始执行图像转换操作。在转换过程中,你可以在进度条上观察到转换的进度(当然这个很快)。

2.5  保存转换后的图像

  当转换完成后,你可以通过点击“Save Image”按钮来保存转换后的图像。选择保存的文件路径和文件名,并选择你希望的保存格式。或者可以进行下一个算子的计算。

  当你右击图像,即可发现保存按钮:

3,ImageConvertTool的工作原理

  ImageConvertTool的工作原理基于图像处理算法和编码技术。它首先读取原始图像数据,并根据用户指定的目标格式进行解码和编码。在转换过程中,ImageConvertTool可以对图像进行各种处理操作,例如调整亮度、对比度、色彩平衡,以及应用滤波器、增强算法等。

  VisionPro 支持使用图像转换工具将图像格式从一种类型转换为另一种类型。例如,您的视觉应用程序可能会采集彩色图像,您需要将颜色格式转换为 8 位灰度格式,便于不支持彩色图像的视觉工具进行分析。

  个人觉得就是日常的RGB转灰度图,具体的原理还需测试分析,这里就不再展开。如果需要实现此算子。我后面会补充原理。

VisionPro学习笔记(2)——图像转换工具ImageCovertTool的更多相关文章

  1. Caffe学习笔记4图像特征进行可视化

    Caffe学习笔记4图像特征进行可视化 本文为原创作品,未经本人同意,禁止转载,禁止用于商业用途!本人对博客使用拥有最终解释权 欢迎关注我的博客:http://blog.csdn.net/hit201 ...

  2. golang学习笔记5 用bee工具创建项目 bee工具简介

    golang学习笔记5 用bee工具创建项目 bee工具简介 Bee 工具的使用 - beego: 简约 & 强大并存的 Go 应用框架https://beego.me/docs/instal ...

  3. Andorid:日常学习笔记(3)——掌握日志工具的使用

    Andorid:日常学习笔记(3)——掌握日志工具的使用 使用Android的日志工具Log 方法: Android中的日志工具类为Log,这个类提供了如下方法来供我们打印日志: 使用方法: Log. ...

  4. Java程序猿的JavaScript学习笔记(9—— jQuery工具方法)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  5. <p><span style="font-size:14px">近期须要批量将PNM&#26684;式的文件转换成GIF文件。我尝试了例如以下的图像转换工具:</span></p>

    近期须要批量将PNM格式的文件转换成GIF文件.我尝试了例如以下的图像转换工具: ImageBatch:全然免费,但只支持PNG JPEG BMP GIF四种格式 OfficeConverter:在线 ...

  6. VisionPro学习笔记(1)——软件介绍和基本使用

    前言 自己使用visionPro已经有段时间了,最近也一直在研究其算子的理论,为了加深印象,计划将自己的学习笔记整理在博客园,当然其官方文档对如何使用及其各种算子都有详细的介绍,所以这里的笔记仅仅为个 ...

  7. Java学习笔记 -- Java定时调度工具Timer类

    1 关于 (时间宝贵的小姐姐请跳过) 本教程是基于Java定时任务调度工具详解之Timer篇的学习笔记. 什么是定时任务调度 基于给定的时间点,给定的时间间隔或者给定的执行次数自动执行的任务. 在Ja ...

  8. OpenCV学习笔记(5)——颜色空间转换

    学习如歌对图像进行颜色空间转换,从BGR到灰度图,或者从BGR到HSV等 创建一个程序用来从一幅图像中获取某个特定颜色的物体 1.转换颜色空间 OpenCV中有超过150种进行颜色空间转化的方法,但是 ...

  9. VisionPro学习笔记:用IEEE1394相机抓取图像

    1)找到采集卡: CogFrameGrabber1394DCAMs cameras = new CogFrameGrabber1394DCAMs(); 2)列举相连接的相机: ICogFrameGra ...

  10. [OpenCV学习笔记3][图像的加载+修改+显示+保存]

    正式进入OpenCV学习了,前面开始的都是一些环境搭建和准备工作,对一些数据结构的认识主要是Mat类的认识: [1.学习目标] 图像的加载:imread() 图像的修改:cvtColor() 图像的显 ...

随机推荐

  1. flask-wtf使用

    Web应用程序的一个重要方面是为用户提供一个用户界面.HTML提供了一个 标签,用于设计一个接口.一个Form 元素,例如文本输入,单选框等可以适当地使用. 通过GET或POST方法将用户输入的数据以 ...

  2. [MyBatis]MyBatis系列:模糊查询的4种实现方式【待完善】

    背景 客户现网遇到的1个子问题. 方案 LIKE + Concat(strA, strB) ... 参考文献 MyBatis系列:模糊查询的4种实现方式

  3. PHP创建SqlLite数据表并让ID自增

    <?php class MyDB extends SQLite3 { function __construct() { $this->open('test.db'); } } $db = ...

  4. Node.js入门学习笔记

    NodeJs是js的运行时,意味着可以在浏览器外运行js.可以使用nodejs来构建服务器端应用.CLI应用.Web API,甚至用electron构建桌面端应用. 使用nvm来管理node版本. 在 ...

  5. Netty介绍与认识

    概述 Netty是由JBOSS提供的一个java开源框架.Netty提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序. 2.体系结构图 Netty的核 ...

  6. Valgrind交叉编译

    Valgrind交叉编译 编译环境:ubuntu16.04 x64 开发平台:hisi3535 arm板 1.下载Valgrind 我下载的版本为 valgrind-3.12.0.tar.bz2 所有 ...

  7. 【Redis】数据类型介绍

    一.字符 string Redis常用基本类型之一,存入Redis的所有key都是字符类型,常用于保存Session信息 字符类型 命令 含义 复杂度 set <key> <valu ...

  8. js 获取 ajax返回数据及处理

    $.ajax({ url: "http://xiaocui.dgoods.cn/app/index.php?i=5&c=entry&do=check&m=stonef ...

  9. npm i 与 npm install 的区别

    我们在平时运用的时候一般用 npm i 来代替 npm install(为npm i 的简写) 但是在实际应用中两者是有些不同的(查阅总结): 1.使用npm i 安装的模块和依赖,使用npm uni ...

  10. Rocky 9 Linux 平台 vim 9.0 源码包编译安装踩坑记录

    目录 vim 9.0 部署准备环境 vim 9.0 源码包正式部署 vim 9.0 初体验 plug-vim 安装插件 在上一篇 <vim入门实战> 篇,我并没有介绍 Linux 平台源码 ...