当前位置: 首页 > news >正文

【数字图像处理】立体视觉基础(1)

成像

成像过程:三维空间坐标到二维图像坐标的变换

相机矩阵:建立三维到二维的投影关系

相机的使用步骤(模型-视图变换):

(1)视图变换

(2)模型变换

(3)投影变换

(4)视口变换

相机的参数:含内参(intrinsics)、外参(extrinsics)、畸变系数(distortion coefficients)

相机内参矩阵

【1】针孔成像

障碍物滤除大多数的辐射线后,通过小孔成像。

即通过光圈孔径成像。

【2】相机模型基础

•针孔成像模型(Pinhole camera model)

•正射投影(Orthographic projection)

•缩放投影(Scaled orthographic projection)

•平行透视(Paraperspective projection)

•透视投影(Perspective projection)

【3】相机内参推演

内参矩阵:将3D相机坐标变换到2D齐次图像坐标

【4】相机内参矩阵计算

(1)焦距:从像素到世界单元

内参矩阵只关心相机坐标和图像坐标之间的关系,与相机的绝对尺寸无关

(2)2D变换中的相机内参的计算

方式一:将内参矩阵分解分别对应焦距、主点偏移、轴倾斜

方式二:将内参矩阵分解分别对应主点偏移、轴倾斜、焦距

内参不影响可见性——阻隔对象

在图像空间中无法通过简单的2D变换显示出来

相机外参矩阵

【1】相机外参导论

透视投影或立体投影

相机外参矩阵:世界坐标系到相机坐标系的刚体变换

旋转和平移来描述物体相对于相机坐标系统的相对姿态

世界坐标系与相机坐标系之间的关系可以用旋转矩阵 R 平移向量 t 来描述

(1)平移矩阵

(2)旋转矩阵

外参矩阵以刚体变换矩阵的形式:旋转矩阵 + 平移列向量

【2】相机外参求解

相机姿态的变换矩阵 (Rc |C)

        描述相机中心在世界坐标系中的位置的 向量 C 

        相机在世界坐标系旋转到当前姿态需要的 旋转矩阵 Rc

外参矩阵 是 相机姿态矩阵的逆

结合相机内参+外参:

镜头畸变

镜头畸变:透镜由于制造精度以及组装工艺的偏差会引入畸变,导致原始图像的失真

分类:径向畸变和切向畸变

        一共有5个畸变参数:k1、k2、k3、p1、p2

(1)径向畸变

沿着透镜半径方向分布的畸变

主要包括:枕形畸变和桶形畸变

调节公式:

(2)切向畸变

透镜本身与相机传感器平面(成像平面)或 图像平面不平行

相机模型参数归纳

相机中四个坐标系:{world},{camera},{image},{pixel}

【1】从{world}到{camera}

【2】从{camera}到{image}

【3】从{image}到{pixel}

【4】从{world}到{pixel}四个坐标系的变换过程

镜头畸变:

16个单目相机的参数:

(1)10个内部参数

(2)6个外部参数

相关文章:

【数字图像处理】立体视觉基础(1)

成像 成像过程:三维空间坐标到二维图像坐标的变换 相机矩阵:建立三维到二维的投影关系 相机的使用步骤(模型-视图变换): (1)视图变换 (2)模型变换 (3&…...

通过AI工具或模型创建PPT的不同方式详解,结合 Assistants API、DALL·E 3 等工具的功能对比及表格总结

以下是通过AI工具或模型创建PPT的不同方式详解,结合 Assistants API、DALLE 3 等工具的功能对比及表格总结: 1. 主要实现方式详解 1.1 基于文本生成PPT 工具示例:Microsoft PowerPoint Copilot、Google Workspace(AI-powered D…...

weibo_har鸿蒙微博分享,单例二次封装,鸿蒙微博,微博登录

weibo_har鸿蒙微博分享,单例二次封装,鸿蒙微博 HarmonyOS 5.0.3 Beta2 SDK,原样包含OpenHarmony SDK Ohos_sdk_public 5.0.3.131 (API Version 15 Beta2) 🏆简介 zyl/weibo_har是微博封装使用,支持原生core使用 &a…...

C++ Lambda表达式复习

C Lambda表达式 (C Lambda Expressions: Beginner to Advanced) Lambda表达式是C11引入的一种轻量级匿名函数语法,支持闭包捕获,可以简化代码逻辑,特别是在函数式编程、回调函数和STL算法场景中尤为常用。本文将从基础语法到高级应用&#x…...

鸿蒙NEXT开发权限工具类(申请授权相关)(ArkTs)

import abilityAccessCtrl, { Permissions } from ohos.abilityAccessCtrl; import { bundleManager, common, PermissionRequestResult } from kit.AbilityKit; import { BusinessError } from ohos.base; import { ToastUtil } from ./ToastUtil;/*** 权限工具类(…...

1000 QPS 下 MySQL 性能瓶颈解决方案

当 MySQL 在 1000 QPS 时出现性能瓶颈,需从‌索引优化‌、‌查询逻辑调整‌、‌服务器配置调优‌、‌架构扩展‌等多维度综合解决,具体策略如下: 一、索引优化 补充缺失索引‌ 通过慢查询日志定位高频低效 SQL,使用 EXPLAIN 分…...

【MySQL】MySQL 表的增删改查(CRUD)—— 下篇(内含聚合查询、group by和having子句、联合查询、插入查询结果)

目录 1. 插入查询结果 2 聚合查询 (行与行之间运算) count 计算查询结果的行数 sum 求和 avg 求平均值 max 最大值 min 最小值 【小结】 3. group by 子句 分组 where 条件 having 条件 4. 联合查询(多表查询) 内连接…...

简化K8S部署流程:通过Apisix实现蓝绿发布策略详解(上)

本次主题主要目的是为大家讲解蓝绿发布,但是发现文档和内容太长了,对此将文档拆分成了两部分,视频拆分成了好几部分,这样大家刷起来没疲劳感。 第一部分《apisix argorollout 实现蓝绿发布I-使用apisix发布应用》,主要…...

FLV 与 MP4 格式深度剖析:结构、原理

1 FLV格式分析 1.1 定义 FLV(Flash Video)是Adobe公司推出的⼀种流媒体格式,由于其封装后的⾳视频⽂件体积⼩、封装简单等特点,⾮常适合于互联⽹上使⽤。⽬前主流的视频⽹站基本都⽀持FLV。采⽤FLV格式封装的⽂件后缀为.flv FLV封装格式是由⼀个**⽂件…...

k8s的yaml文件里的volume跟volumeMount的区别

volume 是 Pod 级别的资源,用于定义存储卷。它是一个独立于容器的存储资源,可以被一个或多个容器共享使用。volume 的定义位于 Pod 的 spec.volumes 部分。 特点 独立性:volume 是 Pod 的一部分,而不是容器的一部分。它独立于容…...

Git常用操作命令

配置 Git git config --global user.name "Your Name": 设置用户名。git config --global user.email "your_emailexample.com": 设置用户邮箱。 初始化和克隆仓库 git init: 初始化一个新的 Git 仓库。git clone [URL]: 克隆一个远程仓库到本地。 git cl…...

09.传输层协议 ——— TCP协议

文章目录 TCP协议 谈谈可靠性TCP协议格式 序号与确认序号窗口大小六个标志位 确认应答机制(ACK)超时重传机制连接管理机制 三次握手四次挥手 流量控制滑动窗口拥塞控制延迟应答捎带应答面向字节流粘包问题TCP异常情况TCP小结基于TCP的应用层协议 TCP协…...

NineData 与飞书深度集成,企业级数据管理审批流程全面自动化

NineData 正式推出与飞书审批系统的深度集成功能,企业用户在 NineData 平台发起的审批工单,将自动推送至审批人的飞书中,审批人可以直接在飞书进行审批并通过/拒绝。该功能实现跨系统协作,带来巨大的审批效率提升,为各…...

WebRTC服务器Coturn服务器中的通信协议

1、概述 作为WebRTC服务器,coturn通信协议主要是STUN和TURN协议 STUN&TURN协议头部都是20个字节,用 Message Type来区分不同的协议 |------2------|------2------|------------4------------|------------------------12-------------------------|-----------…...

4.19除自身以外数组的乘积

我自己的思路,想用双指针, 一个从左边left开始乘,一个从右边right开始乘,如果left,或者right遇到了目标索引i(也就是我们要跨过去的当前元素),那么直接让对应的指针加一,当前元素不参与累积的计算&#xff…...

Anaconda3使用conda进行包管理

一、基础包管理操作 ‌安装包‌ 使用 conda install <包名> 安装指定包&#xff0c;支持多包批量安装和版本指定&#xff1a; conda install numpy # 安装单个包 conda install numpy scipy pandas # 批量安装多个包 conda install numpy1.21 # 指定版本 conda instal…...

媒体关注:联易融聚焦AI+业务,重塑供应链金融生态

近日&#xff0c;供应链金融科技龙头企业联易融科技集团&#xff08;以下简称“联易融”&#xff09;发布的公告显示&#xff0c;截至2024年末&#xff0c;公司现金储备达51亿元&#xff0c;同比上一年增加2亿元。公司称&#xff0c;公司经营性现金流保持健康&#xff0c;现金储…...

安装 Conda 环境

安装 Conda 环境&#xff1a;快速指南 什么是 Conda&#xff1f; Conda 是一个开源的跨平台包管理器和环境管理系统&#xff0c;支持 Python、R、Julia 等语言。它广泛用于数据科学和机器学习领域&#xff0c;能够轻松创建、管理和切换开发环境。 安装步骤 1. 安装 Anaconda…...

Qt Creator 创建 Qt Quick Application一些问题

一、Qt Creator 创建 Qt Quick Application 时无法选择 MSVC 编译器(即使已安装 Qt 5.15.2 和 MSVC2019) 1、打开 Qt Creator 的编译器设置 工具 (Tools) → 选项 (Options) → Kits → 编译器 (Compilers) 检查是否存在 Microsoft Visual C++ Compiler (x86_amd64) 或类似条…...

Spark-Streaming核心编程

以下是今天所学的知识点与代码测试&#xff1a; Spark-Streaming DStream实操 案例一&#xff1a;WordCount案例 需求&#xff1a;使用 netcat 工具向 9999 端口不断的发送数据&#xff0c;通过 SparkStreaming 读取端口数据并统计不同单词出现的次数 实验步骤&#xff1a;…...

深度剖析神经网络:从基础原理到面试要点(二)

引言 在人工智能蓬勃发展的今天&#xff0c;神经网络作为其核心技术之一&#xff0c;广泛应用于图像识别、自然语言处理、语音识别等众多领域。深入理解神经网络的数学模型和结构&#xff0c;对于掌握人工智能技术至关重要。本文将对神经网络的关键知识点进行详细解析&#xf…...

c#操作excel

说明 vs2022开发&#xff0c;调用excel 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using Sy…...

MQTTX + MCP:MQTT 客户端秒变物联网 Agent

引言&#xff1a;MQTTX 与 MCP 的融合 作为最受欢迎的 MQTT 客户端工具&#xff0c;MQTTX 在 1.12.0 beta 版本中集成了模型上下文协议&#xff08;MCP&#xff09;到 Copilot AI 功能中&#xff0c;显著提升了服务能力。这一融合让 MQTTX 转变为 MCP Host&#xff08;也就是发…...

GSAP 动画引擎实战:打造丝滑动效交互组件库

目录 一、前言二、项目初始化三、核心动效组件实战1. 元素淡入组件&#xff1a;FadeIn.vue2. 列表级联动画&#xff1a;SlideList.vue3. 滚动触发 Reveal 动画&#xff1a;ScrollReveal.vue4. 拖拽盒子组件&#xff1a;DraggableBox.vue5. 打字机效果组件&#xff1a;Typewrite…...

[OpenGL] Lambertian材质漫反射BRDF方程的解释与推导

一、简介 本文简单的介绍了 Physical Based Rendering, PBR 中的 Lambertian 材质漫反射BRDF公式 f r l a m b e r t i a n c d i f f π fr_{lambertian}\frac{c_{diff}}{\pi} frlambertian​πcdiff​​的推导。 二、漫反射项 根据 渲染方程&#xff1a; L o ( v ) ∫ …...

网易云音乐如何修改缓存地址到D盘

你可以通过创建 符号链接&#xff08;Symbolic Link&#xff09; 将网易云音乐的缓存目录转移到D盘&#xff0c;无需修改软件设置。以下是具体步骤&#xff1a; 操作步骤 关闭网易云音乐 确保程序完全退出&#xff08;任务栏右下角无残留进程&#xff09;。 备份并移动原缓存文…...

react使用01

React.cloneElement(element,props,…children) 这个是React的官方API&#xff0c;&#xff0c;主要用于克隆并修改React元素&#xff0c;&#xff0c; 本质&#xff1a; 复制一个已有的React元素&#xff0c;并允许你修改他的props element : 必须是一个有效的element元素p…...

yooAsset打包后材质丢失

以安卓为目标平台打出的AssetBundle包&#xff08;尤其是YooAsset打出的&#xff09;&#xff0c;在Window下Unity编辑器以HostPlayMode运行&#xff0c;有时显示会丢失部分材质。 这是因为安卓目标的AssetBundle包适合OpenglES&#xff0c;而window下Unity编辑器模式是Dx11&a…...

Codeforces Round 1019 (Div. 2)

A. Common Multiple 找不同的数字 #include<iostream> #include<vector> #include<algorithm> using namespace std; int main() {int t; cin >> t;while (t--) {int n;cin >> n;vector<int> a(n);for (int i 0; i < n; i)cin >&…...

【Spring Boot】MyBatis多表查询的操作:注解和XML实现SQL语句

1.准备工作 1.1创建数据库 &#xff08;1&#xff09;创建数据库&#xff1a; CREATE DATABASE mybatis_test DEFAULT CHARACTER SET utf8mb4;&#xff08;2&#xff09;使用数据库 -- 使⽤数据数据 USE mybatis_test;1.2 创建用户表和实体类 创建用户表 -- 创建表[⽤⼾表…...

Docker离线安装与配置指南

Docker离线安装与配置指南 离线安装步骤 1. 下载离线安装包 官方下载地址&#xff1a; https://download.docker.com/linux/static/stable/x86_64/注意&#xff1a;国内用户若无法访问&#xff0c;可能需要使用科学上网工具。本文档以Docker 20.10.23版本为例。 2. 安装与部…...

N8N 官方 MCP 节点实战指南:AI 驱动下的多工具协同应用场景全解析

在低代码自动化领域&#xff0c;N8N 凭借其强大的节点扩展能力和灵活的工作流编排&#xff0c;成为企业构建复杂自动化流程的首选工具。随着 AI Agent 技术的兴起&#xff0c;通过 MCP&#xff08;Multi-Tool Coordination Protocol&#xff09;实现 AI 与外部工具的协同调用&a…...

v-html 显示富文本内容

返回数据格式&#xff1a; 只有图片名称 显示不出完整路径 解决方法&#xff1a;在接收数据后手动给img格式的拼接vite.config中的服务器地址 页面&#xff1a; <el-button click"">获取信息<el-button><!-- 弹出层 --> <el-dialog v-model&…...

UWB与GPS技术融合的室内外无缝定位方案

‌ 一、技术原理与互补性‌ ‌双模定位机制‌ ‌室外场景‌&#xff1a;GPS/北斗提供‌10-30厘米级定位精度‌&#xff08;RTK技术辅助&#xff09;&#xff0c;覆盖露天区域。‌室内场景‌&#xff1a;UWB通过‌TOF/TDOA算法‌实现‌10-50厘米级定位精度‌&#xff0c;穿透金…...

AiEditor v1.3.8 发布

2025 年 4 月 22 日&#xff0c;AI 富文本编辑器 AiEditor 发布了 v1.3.8 版本。 AiEditor 是一个面向 AI 的下一代富文本编辑器&#xff0c;基于 Web Component 开发&#xff0c;支持 Layui、Vue、React、Angular 等几乎任何前端框架&#xff0c;适配 PC Web 端和手机端&#…...

从零学会epoll的使用和原理

从零学会epoll的使用和原理 第一步&#xff1a;理解 select / poll 的缺陷 一、select 和 poll 是什么&#xff1f; 它们是 Linux 提供的 I/O 多路复用机制&#xff0c;可以让我们同时监听多个文件描述符&#xff08;fd&#xff09;&#xff0c;比如 socket&#xff0c;来等…...

XHTMLConverter把docx转换html报java.lang.NullPointerException异常

一.报错 1.报错信息 org.apache.poi.xwpf.converter.core.XWPFConverterException: java.lang.NullPointerExceptionat org.apache.poi.xwpf.converter.xhtml.XHTMLConverter.convert(XHTMLConverter.java:77)at org.apache.poi.xwpf.converter.xhtml.XHTMLConverter.doConve…...

教育科技质检的三重挑战 质检LIMS系统在教育技术研发的应用

在教育技术研发领域&#xff0c;实验室作为产品验证的核心环节&#xff0c;其质检效率与数据安全性直接关乎企业的创新竞争力。LIMS&#xff08;实验室信息管理系统&#xff09;作为贯穿检测全流程的数字化中枢&#xff0c;正在成为教育科技企业的"质量守护者"。本文…...

MySQL最左前缀原则深度解析:优化索引设计的核心法则

一、什么是最左前缀原则&#xff1f; 最左前缀原则&#xff08;Leftmost Prefix Principle&#xff09; 指在使用复合索引&#xff08;Composite Index&#xff09;时&#xff0c;MySQL会按照索引定义的列顺序&#xff0c;从左到右匹配查询条件。只有连续且从最左侧开始的列组…...

多模态大语言模型arxiv论文略读(三十五)

On the Out-Of-Distribution Generalization of Multimodal Large Language Models ➡️ 论文标题&#xff1a;On the Out-Of-Distribution Generalization of Multimodal Large Language Models ➡️ 论文作者&#xff1a;Xingxuan Zhang, Jiansheng Li, Wenjing Chu, Junjia…...

Linux 安装pm2并全局可用

前言 本文基于&#xff1a;操作系统 CentOS Stream 8 使用工具&#xff1a;Xshell8、Xftp8 服务器基础环境&#xff1a; node - 请查看 Linux安装node并全局可用 所需服务器基础环境&#xff0c;请根据提示进行下载、安装。 1.安装依赖 npm install pm2 -g2.配置全局软链…...

39.剖析无处不在的数据结构

数据结构是计算机中组织和存储数据的特定方式&#xff0c;它的目的是方便且高效地对数据进行访问和修改。数据结构表述了数据之间的关系&#xff0c;以及操作数据的一系列方法。数据又是程序的基本单元&#xff0c;因此无论是哪种语言、哪种领域&#xff0c;都离不开数据结构&a…...

基于 Vue 的Tiptap 富文本编辑器使用指南

目录 &#x1f9f0; 技术栈 &#x1f4e6; 所需依赖 &#x1f4c1; 文件结构 &#x1f9f1; 编辑器组件实现&#xff08;components/Editor.vue&#xff09; ✨ 常用操作指令 &#x1f9e0; 小贴士 &#x1f9e9; Tiptap 扩展功能使用说明&#xff08;含快捷键与命令&am…...

【音视频】AAC-ADTS分析

AAC-ADTS 格式分析 AAC⾳频格式&#xff1a;Advanced Audio Coding(⾼级⾳频解码)&#xff0c;是⼀种由MPEG-4标准定义的有损⾳频压缩格式&#xff0c;由Fraunhofer发展&#xff0c;Dolby, Sony和AT&T是主 要的贡献者。 ADIF&#xff1a;Audio Data Interchange Format ⾳…...

vue中将elementUI和echarts转成pdf文件

若要将包含 ElementUI 组件数据和多个 ECharts 图表的数据转换为 PDF 文档&#xff0c;可结合 html2canvas、jspdf 以及 dom-to-image 来实现。其中&#xff0c;html2canvas 和 dom-to-image 可将 ECharts 图表转换为图片&#xff0c;jspdf 则用于生成 PDF 文档。对于 ElementU…...

基于 Electron、Vue3 和 TypeScript 的辅助创作工具全链路开发方案:涵盖画布系统到数据持久化的完整实现

基于 Electron、Vue3 和 TypeScript 的辅助创作工具全链路开发方案&#xff1a;涵盖画布系统到数据持久化的完整实现 引言 在数字内容创作领域&#xff0c;高效的辅助工具是连接创意与实现的关键桥梁。创作者需要一款集可视化画布、节点关系管理、数据持久化于一体的专业工具&…...

本地部署DeepSeek-R1模型接入PyCharm

以下是DeepSeek-R1本地部署及接入PyCharm的详细步骤指南,整合了视频内容及官方文档核心要点: 一、本地部署DeepSeek-R1模型 1. 安装Ollama框架 ​下载安装包 访问Ollama官网(https://ollama.com/download)或通过视频提供的百度云盘链接下载对应系统的安装包。Windows用户…...

基于LightGBM-TPE算法对交通事故严重程度的分析与可视化

基于LightGBM-TPE算法对交通事故严重程度的分析与可视化 原文&#xff1a; Analysis and visualization of accidents severity based on LightGBM-TPE 1. 引言部分 文章开篇强调了道路交通事故作为意外死亡的主要原因&#xff0c;引起了多学科领域的关注。分析事故严重性特…...

音视频小白系统入门课-3

本系列笔记为博主学习李超老师课程的课堂笔记&#xff0c;仅供参阅 往期课程笔记传送门&#xff1a; 音视频小白系统入门笔记-0音视频小白系统入门笔记-1音视频小白系统入门笔记-2 视频&#xff1a; 由一组图像组成&#xff1a;像素、分辨率、RGB 8888(24位) 、RGBA(32位)为…...

考研系列-计算机网络-第五章、传输层

一、传输层提供的服务 1.重点知识...