Coordinate Spaces

本主题包含以下部分:

  • 根空间

  • 用户空间

  • 像素空间

任何VisionPro图像支持一系列坐标空间,以提供一个数值框架来表达特定特征的位置。最有用的空间是根空间,它将点与原始获取图像中的像素相关联,以及用户空间,用于在标定和固定的空间中获取特征位置和测量值。

根空间

图像的根空间是一个左手坐标系,与在任何图像处理之前获取的图像的像素完美对齐。根空间的原点 (0, 0) 通常位于图像的左上角像素的左上角。正x轴向右延伸,正y轴向下延伸。

下图展示了一个图像,并在图像上叠加了红色的根空间。

在获取的图像中,根空间坐标网格定义了图像像素之间的边界。任何特征的位置都可以用网格中的 (X, Y) 值来描述。

当获取的图像经历图像处理操作(如降采样、形态学处理)导致图像中像素总数发生变化时,VisionPro 会自动重新调整根空间,以确保处理后的图像中的特征具有相同的根空间坐标位置。

下图展示了经过降采样缩小后的相同图像。

经过图像处理后,根空间坐标网格不再与像素边界相对应。VisionPro 会自动调整根空间,以确保图像特征(例如“COGNEX”中的字母“C”)保持相同的坐标位置。

用户空间

VisionPro 校准和夹具工具创建用户空间,这些空间定义了图像根空间之外的任意数量的附加坐标系统。所使用的工具决定了用户空间的坐标系统的方向和单位,并确定它如何与根空间相关联。

下图展示了一个添加到获取图像根空间中的用户空间。

在这种情况下,用户空间是一个右手坐标系统,其原点位于“COGNEX”文本的底部。一个特征在不同的坐标空间中具有不同的坐标位置。

每个用户空间都有一个唯一的名称,您的应用程序可以使用这个名称来确定 VisionPro 用于报告工具结果的空间。与图像相关联的所有用户空间都存储在一个坐标空间树中。

像素空间

像素空间类似于根空间,但 VisionPro 不会调整它以反映图像处理操作的效果。像素空间的原点始终是左上角的第一个像素的左上角。如果对图像进行子采样,特征在子采样图像的像素空间中的位置将与在原始图像的像素空间中的位置不同。

一般来说,像素空间在应用中很少有用,尽管在指定显示图形时可能会有用。

Coordinate Spaces的更多相关文章

  1. Blink Coordinate Spaces

    Blink Coordinate Spaces Blink Coordinate Spaces Types of Zoom There are two types of zoom in Chromiu ...

  2. OpenCASCADE Coordinate Transforms

    OpenCASCADE Coordinate Transforms eryar@163.com Abstract. The purpose of the OpenGL graphics process ...

  3. OpenCASCADE Camera

    OpenCASCADE Camera eryar@163.com Abstract. OpenCASCADE introduce a new class Graphic3d_Camera for th ...

  4. 孙鑫MFC学习笔记11:保存图像

    1.CPtrArray指针数组 2.CPtrArray返回void指针,需要做类型转换 3.View类中的OnPaint调用OnPrepareDC和OnDraw,如果覆盖OnPaint,就不会调用On ...

  5. golang.org/x/mobile/exp/gl/glutil/glimage.go 源码分析

    看这篇之前,建议先看之前几篇,这几篇是基础. Go Mobile 例子 basic 源码分析 http://www.cnblogs.com/ghj1976/p/5183199.html OpenGL ...

  6. 图形变幻矩阵 Transforms

    https://developer.apple.com/library/mac/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d ...

  7. Foundations of Game Engine Development Volume 1 Mathematics (Eric Lengyel 著)

    http://www.foundationsofgameenginedev.com/ Chapter1 Vectors and Matrices (已看) Chapter2 Transforms (已 ...

  8. Game Engine Architecture 6

    [Game Engine Architecture 6] 1.Data-Parallel Computations A GPU is a specialized coprocessor designe ...

  9. Input Team

    The Chromium Input team (aka input-dev) is a web platform team focused on making touch (P1) and othe ...

  10. Layout Team

    The layout team is a long-term engineering team tasked with maintaining, supporting, and improving t ...

随机推荐

  1. 使用 .NET 的 Dev Proxy 构建和测试弹性应用

    使用 .NET 的 Dev Proxy 构建和测试弹性应用 https://devblogs.microsoft.com/dotnet/build-test-resilient-apps-dotnet ...

  2. 解决WSL2无法启动提示“找不到元素”

    最近一段时间没有看 docker desktop,忽然想起来打开看看,结果死活启动不了.以前卸载之后,重新安装就好了,同样的方法尝试了很多次还是不太行,重启也不行... 后来想想是不是 wsl 出了问 ...

  3. Dockerr安装Oracle以及使用DBeaver连接

    拉取镜像 pull container-registry.oracle.com/database/free:latest 创建容器 说明一下我现在的最新版本是23 docker run -d --na ...

  4. jmeter接口测试 -- 连接数据库(MySQL)

    三个步骤 一.下载MySQL的连接驱动 1.先查看MySQL的版本 1)服务器上查看:mysql --version 2)在连接工具上查看 2.下载连接驱动,下载地址:https://dev.mysq ...

  5. Qt数据库应用15-通用数据库同步

    一.前言 数据库同步的主要功能是将本地的数据库记录同步到远程的数据库,其中数据库类型不限,比如本地是sqlite数据库,远程可以是mysql数据库,本地是mysql数据库,远程也可以是postgres ...

  6. Qt数据库应用11-通用数据生成器

    一.前言 有两种应用场景需要用到数据生成器,一种是需要测试数据库性能,比如在100万条和1000万条记录的时候对比查询或更新语句执行耗时,一种是随机模拟生成一堆数据,用来测试程序的性能,看下程序中到了 ...

  7. [转]idea2021.1破解版 附安装教程免激活码

    参看链接:http://www.ddooo.com/softdown/190256.htm 百度网盘地址:https://pan.baidu.com/share/init?surl=qwywmPK-F ...

  8. 记录一下关于谷歌浏览器的开发者插件之vue-devtools

    在做vue进行开发的时候增加一个浏览器的插件进行开发可以做到游鱼得水,更加的舒适 在这里我留下一个git地址用来下载插件包 https://gitee.com/zhang_banglong/vue-d ...

  9. Mac 最大连接数和端口的相关参数

    1. 最大连接数限制 最大连接数限制就是系统所能打开的最大文件数(文件描述符)的限制,分全局和进程两种: 1.1. 全局 $ sysctl kern.maxfiles kern.maxfiles: 4 ...

  10. Solution -「COCI 2009-2010」「洛谷 P8076」RESTORAN

    \(\mathscr{Description}\)   Link.   给定一个含 \(n\) 个点 \(m\) 条边的简单图, 求一种边二染色方案, 使得所有 \(\deg\ge2\) 的结点都邻接 ...