计算机视觉基础(7)——相机基础

前言

从这一节开始,我们来学习几何视觉。中层视觉包括相机模型、单目几何视觉、对极几何视觉和多目立体视觉等。在学习几何视觉最开始,我们先来学习一下相机模型,了解相机的基本原理,了解相机如何记录影像。

一、数字相机

1.1  基本工作原理

相机用于生成二维的图像,图像最小的单元被称为像素 (Pixel)

图像中的每个像素对应三维世界中的某个特定方向

相机度量某一时刻,每个像素的光照强度和颜色,并保存在图像中对应像素位置处。

换言之,像素值衡量了某一时刻,来自某一方向上的光照强度

1.2  基本组成元素

二、图像传感器

2.1  图像传感器简介

图像传感器是一种将光学影像转换成电子信号的设备。

感光元件由光敏单元阵列构成

常见的图像传感器有感光耦合器件(CCD)和互补式金属氧化物半导体有源像素传感器(CMOS )两种

彩色图像的生成采用RGB颜色模型:将红绿蓝三原色的色光以不同比例相加,以产生各种色彩光

彩色图像传感器按照对色彩的分辨方式可分为:

• 3CCD 传感器:通过双色棱镜分光,并采用3块独立的CCD传感器

拜尔(Bayer)传感器:一个像素点只对三原色光中的一种感光

Foveon X3 传感器:每一像素点都有三重传感器

2.2  3CCD传感器

2.3  拜尔传感器

三、快门

3.1  快门简介

通过调整快门速度 (Shutter Speed),控制光线照射感光元件的时间,即曝光时间 (Exposure Time)

更长的曝光时间更多的入射光图像亮度更亮

更长的曝光时间容易引起运动模糊 (长曝光摄影)

3.2  卷帘宽门

  •  采用逐行扫描的方式曝光
  • 同一行像素被同时记录,不同行像素曝光时间点不同
  • 当相机或物体发生快速移动时会引起畸变(Distortion) 

3.3  全局快门

所有像素在同一时间曝光

不会造成卷帘快门式的畸变,因而更适用于3D重构任务 (SLAM)

造价更昂贵

【参考链接】

详细图解,一眼就能看懂!卷帘快门(Rolling Shutter)与全局快门(Global Shutter)的区别-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/lz0499/article/details/102616773

四、图像的形成

4.1  成像原理

问:直接在物体前放置幕布,幕布上能否投射出物体的图像?

答:不会,幕布上每一点都会接收到来自不同方向光线的投射,因而投影的结果是十分模糊的。

那么如何解决呢?

  • 增加遮光板屏蔽掉多余的光线 (小孔成像)
  • 遮光板上通光的小孔就是光圈 (Aperture)
  • 最朴素的针孔相机模型

这就是我们日常生活中的小孔成像原理。

4.2  针孔相机

针孔相机假设通过对小孔是一个点,从物体的每个点发出的光线只有一条能通过小孔

针孔相机模型用于近似图像的形成过程

利用相似三角形原理分析

针孔相机模型:图像较锐化,由于光线较少,需要更多的曝光时间

扩大孔径:可以减少所需曝光时间,但图像变模糊

解决方法:用镜头(透镜)替换针孔

4.3  薄透镜相机

薄透镜相机模型是对针孔相机的近似。

理想情况下物点、像点、光心三点共线

光线与光心距离越远,误差越大

采用光圈,屏蔽距离光心较远的光心,控制误差

4.4  光圈与景深

【光圈】

光圈限制了光线与光心的最大距离,光圈就是小孔的孔径。

【景深】

景深指相机聚焦平面前后相对清晰的成像范围,描述在空间中,可以清楚成像的距离范围

【光圈和景深】

【参考网站】Depth of Field in Photography Explained: The Ultimate DOF Guide! (capturetheatlas.com)

4.5  针孔/薄透镜相机的假设

从同一物点发出的光线被聚焦于同一像点

所有的像点位于同一平面上

物点、光心与像点三点共线

因为以上假设条件在实际中并非总是满足的,这导致了不完美的成像结果。

五、像差

真实成像过程中3D场景到2D图像的投影关系与理想薄透镜相机模型中的投影关系的偏差,称

为像差。像差表现为图像的形变与失真,有多中具体的形式。主要形式如下:

畸变 (Distortion)

球面像差 (Spherical aberrations)

色相差 (Chromatic aberrations)

像散 (Astigmatism )

光晕 (Vignetting)

5.1  畸变

  • 直线投影 (rectilinear projection): 3D场景中的直线在2D投影中仍未直线
  • 畸变:与直线投影的偏差

5.2  球面像差

  • 由于透镜球面折射率变化不均造成平行于光轴的光线无法聚焦
  • 造成成像模糊

5.3  色相差

透镜折射率随光的波长而变化,同一物点发出的不同颜色光线无法聚焦于同一像点

5.4  像散

水平和竖直方向的焦点不同

5.5  光晕/暗角

  • 图像的外围部分的亮度或饱和度比中心区域低
  • 一个或多个透镜的实际尺寸造成的,后方的元件遮蔽了前方的
  • 然而,有时却因为需要创意风格而被刻意加入

六、常见的镜头种类

6.1  长焦镜头

  • 视野较窄
  • 透视变形最小
  • 3D空间中平行线在2D图像中保持平行

6.2  广角镜头

  • 视野较宽广 (70-120)
  • 有透视变形
  • 3D空间中的直线在2D图像大致是直线

6.3  鱼眼镜头

  • 视野极宽 (>130)
  • 3D空间中的直线在2D图像中几本不再是直线

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/194221.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PVE Win平台虚拟机下如何安装恢复自定义备份Win系统镜像ISO文件(已成功实现)

环境: Virtual Environment 7.3-3 Win s2019 UltraISO9.7 USM6.0 NTLite_v2.1.1.7917 问题描述: PVE Win平台虚拟机下如何安装恢复自定义备份Win系统镜像ISO文件 本次目标 主要是对虚拟机里面Win系统备份做成可安装ISO文件恢复至别的虚拟机或者实体机上 解决方案: …

wpf devexpress项目中添加GridControl绑定数据

本教程讲解了如何添加GridControl到wpf项目中并且绑定数据 原文地址Lesson 1 - Add a GridControl to a Project and Bind it to Data | WPF Controls | DevExpress Documentation 1、使用 DevExpress Template Gallery创建一个新的空白mvvm应用程序,这个项目包括了…

安防监控EasyCVR视频汇聚平台使用海康SDK播放出现花屏是什么原因?

视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、…

【问题处理】WPS提示不能启动此对象的源应用程序如何处理?

哈喽,大家好,我是雷工! 最近在用WPS打开word文件中,插入的Excel附件时,无法打开,提示:“不能启动此对象的源应用程序”。 经过上网查找处理办法,尝试解决,现将解决过程记…

Linux输入设备应用编程(键盘,触摸屏,按键,鼠标)

目录 一 输入设备编程介绍 1.1 什么是输入设备呢? 1.2 什么是输入设备的应用编程? 1.3 input子系统 1.4 数据读取流程 1.5 应用程序如何解析数据 1.5.1 按键类事件: 1.5.2 相对位移事件 1.5.3 绝对位移事件 二 读取 struct input_e…

C++ 之字符串、字符数组与字符指针(*、**)

C 之字符串、字符数组与字符指针(*、**) 最近频繁使用字符串指针,有时候想取值或者复制,常用到问题,在此总结一下字符串的处理、指针的使用长期更新版~ 1. char 使用相关 1.1 内存使用 首先介绍一下C语言中的数据类型: 下图给…

【文件读取/包含】任意文件读取漏洞 afr_1

1.1漏洞描述 漏洞名称任意文件读取漏洞 afr_1漏洞类型文件读取漏洞等级⭐漏洞环境docker攻击方式 1.2漏洞等级 高危 1.3影响版本 暂无 1.4漏洞复现 1.4.1.基础环境 靶场docker工具BurpSuite 1.4.2.靶场搭建 1.创建docker-compose.yml文件 version: 3.2 services: web: …

服务器数据恢复—磁盘出现坏道掉线导致raid5阵列崩溃的数据恢复案例

服务器数据恢复环境: 某品牌服务器中有一组16块SAS接口硬盘组建的raid5磁盘阵列。 服务器故障&检测: 服务器raid5阵列中有2块硬盘掉线,上层服务器应用崩溃,导致服务器数据丢失。丢失的数据主要是4个1.5TB大小的卷中的数据&am…

番外 2 : LoadRunner 的安装以及配置

LoadRunner 的安装以及配置教程 一 . 配置 IE 浏览器二 . 安装 LoadRunner 工具三 . 修改默认浏览器的配置四 . 设置 LoadRunner 能够获取本地资源 Hello , 大家好 , 又给大家带来新的专栏喽 ~ 这个专栏是专门为零基础小白从 0 到 1 了解软件测试基础理论设计的 , 虽然还不足以…

代码随想录算法训练营第五十一天|309. 买卖股票的最佳时机含冷冻期、714. 买卖股票的最佳时机含手续费

第九章 动态规划part12 309. 买卖股票的最佳时机含冷冻期 给定一个整数数组prices,其中第 prices[i] 表示第 i 天的股票价格 。​ 设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票&…

安全好用性价比高的远程协同运维软件有吗?

据悉不少IT专业人员认为,远程运维风险性更高,更容易给企业带来更大的风险。所以不少运维人员都在求一款安全好用性价比高的远程协同运维软件,因为下班需要,因为碰到IT难题时候需要,因为驻场需要。那你知道市面上安全好…

基于非对称纳什谈判的多微网电能共享运行优化策略(附带MATLAB程序)

基于非对称纳什谈判的多微网电能共享运行优化策略MATLAB程序 参考文献: 《基于非对称纳什谈判的多微网电能共享运行优化策略》——吴锦领 资源地址: 基于非对称纳什谈判的多微网电能共享运行优化策略MATLAB程序 MATLAB代码:基于非对称纳什…

Python---数据序列中的公共方法

公共方法就是 支持大部分 数据 序列。 常见公共方法---简单 运算符描述支持的容器类型合并字符串、列表、元组* 复制字符串、列表、元组in元素是否存在字符串、列表、元组、字典not in元素是否不存在字符串、列表、元组、字典 案例: 合并 代码&#xff1…

网络安全准入技术之MAC VLAN

网络准入控制作为主要保障企业网络基础设施的安全的措施,特别是对于中大型企业来说,终端类型多样数量激增、终端管理任务重难度大、成本高。 在这样的一个大背景下,拥有更灵活的动态识别、认证、访问控制等成为了企业网络安全的最核心诉求之…

STM32CubeIDE报“xxx is not implemented and will always fail”解决方法

本文介绍STM32CubeIDE报“xxx is not implemented and will always fail”解决方法。 最近用STM32CubeIDE开发STM32程序时,编译报警告: warning: _close is not implemented and will always fail warning: _lseek is not implemented and will always…

云ES高级监控告警

一、高级监控告警配置 1.1 操作入口 1.2 配置告警模块 1.2.1 新建联系人 添加联系人后,需要进行激活 1.2.2 新建联系人组 1.2.3 创建报警组 1.2.4 新建报警规则

ffmpeg 4.4 cenc-aes-ctr 加解密 MP4 工程性质分析

目录 一、cenc-aes-ctr 原理介绍 二、显式 cenc-aes-ctr 和隐式 cenc-aes-ctr 三、加密工具---ffmpeg 四、播放---ffplay 五、总结 ​​​​​​​一、cenc-aes-ctr 原理介绍 加密算法:CENC-AES-CTR 使用 AES(Advanced Encryption Standard&…

设计模式之工厂模式 ( Factory Pattern )(1)

其他设计模式也会后续更新… 设计模式其实需要有一定开发经验才好理解,对代码有一定的设计要求,工作中融入才是最好的 工厂模式 ( Factory Pattern ) 工厂模式(Factory Pattern)提供了一种创建对象的最佳方式 工厂模式在创建对…

【MATLAB源码-第79期】基于蚯蚓优化算法(EOA)的栅格路径规划,输出做短路径图和适应度曲线。

操作环境: MATLAB 2022a 1、算法描述 蚯蚓优化算法(Earthworm Optimisation Algorithm, EOA)是一种启发式算法,灵感来源于蚯蚓在自然界中的行为模式。蚯蚓优化算法主要模仿了蚯蚓在寻找食物和逃避天敌时的行为策略。以下是蚯蚓…

交换机如何配置BGP协议

环境: 华为交换机 华三交换机 问题描述: 交换机如何配置BGP协议 解决方案: 华三交换机上配置案例 1.配置BGP协议,可以按照以下步骤进行: 登录交换机:使用SSH、Telnet或控制台等方式登录到华三交换…