news 2026/10/24 0:27:52

算子 image_to_world_plane

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
算子 image_to_world_plane

算子image_to_world_plane通过将图像变换到测量平面(即世界坐标系 WCS 中的平面 z=0z=0 )来实现图像校正。校正后的图像不存在镜头畸变和透视畸变,其效果等同于由一台无镜头畸变、且光轴垂直于测量平面的相机所拍摄的图像。

调用示例:

image_to_world_plane (Image, ImageMapped, CamParam, PoseForCenteredImage, ... WidthMappedImage, HeightMappedImage, ... ScaleForCenteredImage, 'bilinear')

如果需要对多幅图像进行校正,为了提高效率,可先使用算子gen_image_to_world_plane_map生成一个投影映射(projection map)—— 其参数用法与image_to_world_plane类似;
随后,再通过算子map_image利用该映射对每幅图像执行实际的校正变换。

调用流程如下:

gen_image_to_world_plane_map (Map, CamParam, PoseForCenteredImage, ... WidthOriginalImage, HeightOriginalImage, ... WidthMappedImage, HeightMappedImage, ... ScaleForCenteredImage, 'bilinear') map_image (Image, Map, ImageMapped)

✅优势:当处理多帧图像时,只需一次性计算映射(Map),后续每帧仅需快速查表变换,显著提升性能。

校正后图像(rectified image)的尺寸可通过以下参数指定:

  • 对于算子image_to_world_plane,使用参数Width和Height;
  • 对于算子gen_image_to_world_plane_map,使用参数WidthMapped和HeightMapped。

这些尺寸必须以像素(pixels)为单位给出。

校正后图像的像素物理尺寸由参数Scale指定。
该参数定义为:

Scale= 校正后图像的像素尺寸 / 标定靶标世界坐标所采用的单位(公式 3.3)

在许多情况下,标定靶标的世界坐标是以米(meters)为单位给出的。此时,可直接通过将Scale参数设为以下字符串来指定像素尺寸:

  • 'm'(对应数值 1.0)
  • 'cm'(0.01)
  • 'mm'(0.001)
  • 'microns'或'µm'(均为 1e-6)

例如,若将Scale设为'µm',则校正后图像中的一个像素对应于真实世界中1 µm × 1 µm的区域。

应选择合适的Scale值,使得在校正区域中心附近,原始输入图像的像素尺寸与校正后图像的像素尺寸相近。若两者尺度差异过大,会导致混叠(aliasing)或过度平滑(smoothing)效应。

参数Interpolation用于指定插值方式:

  • 'bilinear':在输入图像像素之间进行双线性插值;
  • 'none':直接使用最近邻像素的灰度值。

校正后的图像ImageWorld的定位规则如下:

  • 其左上角精确位于世界坐标系(WCS)的原点;
  • 其列方向(图像 x 轴)与 WCS 的x 轴平行。

由于 WCS 是由相机外参CamPose定义的,因此可通过算子set_origin_pose修改CamPose,从而平移校正图像的位置。
更一般的变换(如旋转、缩放)也可通过对CamPose应用齐次变换矩阵(homogeneous transformation matrices)来实现。

如图 3.11 所示,WCS 被设定为使校正图像的左上角与输入图像的左上角重合。
图中还显示了校正图像的完整定义域(domain)被反向投影到输入图像虚拟成像平面上的效果,可见两者的左上角完全对齐。

需要注意的是,WCS 也可以被定义为使校正图像完全或部分位于成像区域之外。
此时,校正图像的 domain 仅包含那些在原始图像中有灰度信息的像素。


如图 3.12 所示,校正图像的上半部分超出了成像区域,这部分在显示时以深灰色表示(无有效图像数据)。图中同样展示了该校正图像反向投影到输入图像平面的情形,可明显看出上半部分缺乏图像信息。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/23 6:20:54

OpenHanako 人格模板实战解析:从 agents-templates 到系统提示词,读懂 hanako 的回落链与组装原理

人工智能AI AgentAI 应用交互助手桌面应用多智能体Agent 记忆工具调用 【免费下载链接】OpenHanako 可作为日常办公助手,无需复杂配置即可让 AI 记住信息、操作电脑、搜索浏览、执行代码等。具备记忆系统、人格塑造、多 Agent 协作、安全沙盒等核心功能,…

作者头像 李华
网站建设 2026/10/13 12:03:36

Superpowers开发工具:本地LLM与编辑器深度集成原理

1. 项目概述:Superpowers 不是超能力,而是开发者工作流的“肌肉增强器”你搜“superpowers”时,大概率不是在找漫威电影彩蛋,而是在翻 GitHub、Discord 或 Reddit 上某个开发者发的截图——右下角弹出一行小字:“✅ Su…

作者头像 李华
网站建设 2026/10/16 9:32:06

嵌入式程序如何变成可执行文件:链接脚本与启动代码全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/19 17:30:43

如何彻底清除 Windows 11 内置 AI 组件:RemoveWindowsAI 实操指南

如何彻底清除 Windows 11 内置 AI 组件:RemoveWindowsAI 实操指南 【免费下载链接】RemoveWindowsAI Force Remove Copilot, Recall and More in Windows 11 项目地址: https://gitcode.com/GitHub_Trending/re/RemoveWindowsAI Windows Update 重启后&#…

作者头像 李华
网站建设 2026/10/15 11:53:10

AI Agent扩展三件套:Skill、MCP、插件组合编排实战

说实话,最近我收到最多的提问就是同一个:想给 AI Agent 扩展能力,到底是学 Skill 还是接 MCP?又有人问,不是已经有插件了吗,为什么还要搞 MCP 协议?每次看到这类问题我都挺头大,因为…

作者头像 李华