相机成像之图像传感器与ISP【四】

文章目录

      • 1、图像传感器基础
        • 1.1 基础原理——光电效应
        • 1.2 基础的图像传感器设计
        • 1.3 衡量传感器效率的一个关键指标:光量子效率(QE)
        • 1.4 感光单元的响应
        • 1.5 像素的满阱容量
        • 1.6 像素尺寸和填充比例
        • 1.7 微透镜的作用
        • 1.8 光学低通滤波器简介
        • 1.9 传感器尺寸
        • 1.10 模拟前端
        • 1.11 Vignetting——渐晕
        • 1.12 图像传感器的作用流程小结
      • 2、颜色基础
        • 2.1 颜色是人类感知的产物
        • 2.2 光谱功率分布 (Spectral Power Distribution - SPD)
        • 2.3 光谱灵敏度函数 (Spectral Sensitivity Function - SSF)
        • 2.4 人眼的光谱灵敏度函数
        • 2.5 颜色滤波阵列 - Color filter arrays (CFA)
        • 2.6 每种相机有不同的光谱灵敏度函数
        • 2.7 思考:你能想到其他捕捉颜色的方法吗?
        • 2.8 图像传感器的作用流程小结
      • 3、相机内的图像处理(ISP)
        • 3.1 相机内图像处理的流程
        • 3.2 白平衡基础
        • 3.3 去马赛克
        • 3.4 去噪
        • 3.5 如何去除噪声
        • 3.6 色调重建
      • 4、相机内图像处理小结
        • 4.1 我们真的需要RAW格式图像吗?
        • 4.2 如何方便的获取RAW格式图像?
        • 4.3 有很多开源系统在改变这一情况
        • 4.4 总结

数码摄影的基础流程:

在这里插入图片描述

1、图像传感器基础

现代数字图像传感器已经非常复杂,涉及到半导体等知识,所以我们在本课中只能涉及基础,

在这里插入图片描述

什么是数字图像传感器?
下图中的“桶”就是像素阵列,

在这里插入图片描述

整个拍照过程如下,快门打开,曝光开始,由像素阵列(桶)持续接收这些光子直到曝光结束,曝光结束后,传感器将这些光子转换为数字信号,

1.1 基础原理——光电效应

在这里插入图片描述

1.2 基础的图像传感器设计

术语“感光器件(photosite)”可以用于指代整个像素,也可以仅指感光区域。

在这里插入图片描述

1.3 衡量传感器效率的一个关键指标:光量子效率(QE)

在这里插入图片描述

1.4 感光单元的响应

感光单元的响应几乎是线性的

  • 当势阱饱和时会产生非线性的响应 (过曝)
  • 当接近0时也产生非线性响应 (因为噪声的原因)

在这里插入图片描述

我们可以通过HDR成像来解决这种问题,

在这里插入图片描述

1.5 像素的满阱容量
  • 满阱容量:在饱和前势阱容纳的电子的数量,是成像传感器的另外一个重要的性能指标,
  • 满阱容量并不是越大越好,因为满阱容量越大则需要的像素尺寸也越大,
  • 满阱容量越大,则能提高信噪比和动态范围(更广的亮度范围),动态范围是指一幅图像的传感器能同时捕获并显示最暗和最亮的能力,

在这里插入图片描述

1.6 像素尺寸和填充比例

**加粗样式**

1.7 微透镜的作用
  1. 将光线汇聚到感光像素区域来帮助感光器件收集更多的光线
  2. 提升有效填充因子
  3. 通过实现像素大小的2D Box滤波器对图像进行空间低通滤波,以防止混叠伪影
  4. 有时还会在传感器前面放置一个附加的光学低通滤波器(OLPF),以改进前置滤波效果

在这里插入图片描述

如下右图下面的图像传感器中的微透镜和感光器件有一个斜移,是为了使光线更好地被感光器件接收,

在这里插入图片描述

什么是混叠伪影,如下右图灰色衬衫上的波纹(又叫摩尔纹)就是混叠伪影,
混叠伪影的原因:
图像传感器不足以处理高频信息

有2种方法可以防止混叠伪影:
1、通过实现像素大小的2D Box滤波器对图像进行空间低通滤波,以防止混叠伪影
2、有时还会在传感器前面放置一个附加的光学低通滤波器(OLPF),以改进前置滤波效果

在这里插入图片描述

更多参考:了解什么叫混叠伪影:5. 数码相机内的图像处理-图像采样与金字塔

1.8 光学低通滤波器简介
  • 在许多传感器前面,通常会有一块作为OLPF的玻璃片,也被称为光学抗混叠滤波器,
    OLPF通常由两层双折射材料和红外滤波器组成。
  • 光线具有不同的振动方向,进入如下图左一的晶体后,就会分成不同的方向(振动方向不同)进行传播,所以会造成字的重影,

在这里插入图片描述

  • 然而,OLPF意味着降低分辨率,因为高频信号被滤除了
  • 随着现在像素数量变大,OLPF变得不再是必要的。所以摄影师经常破解他们的相机来移除OLPF,以避免分辨率的损失
  • 也有相机制造商提供带和不带OLPF的相机版本
  • 同时,OLPF在处理相干光(杂散条纹)时也可能存在问题

在这里插入图片描述

需要用到OLPF的场景,

在这里插入图片描述


在这里插入图片描述

不必要用OLPF的场景,

在这里插入图片描述


在这里插入图片描述

1.9 传感器尺寸

在这里插入图片描述

两种主要的图像传感器,现在主要使用CMOS,CCD逐渐退出历史舞台,

在这里插入图片描述

两类传感器的伪影现象,
传感器泛光是一个像素在图像传感器上接收过多的光子导致的,也会溢出到相邻的像素里面去,涂抹伪影发生在CCD中,因为CCD是逐行读取,速度相对较慢,对于移动的物体或快速变化的光线就会在图像中留下“痕迹”,

在这里插入图片描述

CCD和CMOS的更多区别,

在这里插入图片描述

CMOS传感器简图,

在这里插入图片描述

1.10 模拟前端

在这里插入图片描述

1.11 Vignetting——渐晕

远离中心的像素接收到的光较少,

在这里插入图片描述

四种渐晕产生的原因:
• 机械原因: 光线被遮光罩、过滤器和其他物体阻挡
• 镜头原因:类似,但光线被镜头元件阻挡
• 自然原因:由于辐射定律(“余弦四次衰减”)。
• 像素原因:感光元件的角度相关灵敏度。

在这里插入图片描述

1.12 图像传感器的作用流程小结

当相机快门打开时,传感器:

  1. 在每个像素,将入射光子转换为电子
  2. 在未饱和时将电子存储到光点的势阱中

直到相机快门关闭。 然后,模拟前端:

  1. 逐行读出感光点的电子,并将其转换为模拟信号
  2. 对这些模拟信号应用(可能不均匀)增益
  3. 将它们转换为数字信号
  4. 纠正非线性
  5. 最后返回图像。

2、颜色基础

2.1 颜色是人类感知的产物

“颜色”不是光(电磁辐射)的客观物理属性,波长才是,

在这里插入图片描述

2.2 光谱功率分布 (Spectral Power Distribution - SPD)
  • 大多数类型的光由多种波长的光组成
  • 我们可以根据不同波长上的功率分布来描述光

在这里插入图片描述

2.3 光谱灵敏度函数 (Spectral Sensitivity Function - SSF)
  • 任何光传感器(数字或非数字)对不同波长都有不同的灵敏度。
  • 这是通过传感器的光谱灵敏度函数来描述的𝑓(𝜆)
  • 当测量某个 SPD为𝜙(𝜆)的光时,传感器会产生标量响应

在这里插入图片描述

2.4 人眼的光谱灵敏度函数
  • 人眼包含所谓视锥细胞的光传感器的集合
  • 有三类具有不同光谱灵敏度的细胞
  • 人类的颜色感知是三维的(三原色)

在这里插入图片描述

2.5 颜色滤波阵列 - Color filter arrays (CFA)
  • CFA使得数字图像传感器可以模仿人类视觉系统的视锥细胞来感知颜色
  • 不同颜色的滤波器有不同的光谱灵敏度函数,模拟不同的视锥细胞

在这里插入图片描述

CFA的两种设计考虑:

  • 对每种颜色滤波器采用什么样的光谱灵敏度函数f(λ)
  • 如何在空间中排布不同的颜色滤波器(Mosaic – 马赛克)

在这里插入图片描述

不同的CFA马赛克排布:

在这里插入图片描述

2.6 每种相机有不同的光谱灵敏度函数

每台相机或多或少都有其独特的SSF,而且大多数时候被相机厂商保密,这使得正确再现传感器测量的颜色变得非常困难,

在这里插入图片描述

2.7 思考:你能想到其他捕捉颜色的方法吗?

在这里插入图片描述

2.8 图像传感器的作用流程小结

在这里插入图片描述

3、相机内的图像处理(ISP)

3.1 相机内图像处理的流程

相机图像信号处理器 (Image Signal Processor - ISP) 应用一系列图像处理操作,将 RAW 图像转换为“传统”图像。

在这里插入图片描述

3.2 白平衡基础

人类视觉系统具有色度适应性(chromatic adaptation):

  • 在不同的光源下,我们可以正确地感知白色(和其他颜色)
  • 但相机不行——相机是没有感知

如下图中的下图,虽然在这个光源下,我们看到的颜色和在上图看到的颜色是一致的,

在这里插入图片描述

白平衡:让我们感知到的白色在最终的图像中也渲染为白色的方法,

在这里插入图片描述

相机预置的白平衡设置:
如今的相机有大量的预设白平衡设置:你可以选择在哪种光线下拍摄图像,并应用相应白平衡,

在这里插入图片描述

摄影时的手动和自动白平衡:

手动白平衡:

  • 根据照明情况选择相机上的白平衡设置,
  • 手动选择照片中颜色中性的对象,并使用它进行对图像的颜色进行归一化,

在这里插入图片描述

自动白平衡:

  • 灰色世界假设:强制场景的平均颜色为灰色
  • 白色世界假设:强制场景中最亮的物体为白色
  • 复杂的基于直方图的算法(大多数现代相机都是这样做的)

灰色世界假设:

  • 计算每个通道的平均值
  • 通过平均值对每个通道进行规格化
  • 通过绿色通道平均值进行归一化

在这里插入图片描述

白世界假设:

  • 计算每个通道的最大值
  • 按每个通道的最大值规格化每个通道
  • 按绿色通道最大值规格化

在这里插入图片描述

自动白平衡示例:

在这里插入图片描述

3.3 去马赛克

相机图像信号处理器 (Image Signal Processor - ISP) 应用一系列图像处理操作,将 RAW 图像转换为“传统”图像。

在这里插入图片描述

CFA(颜色滤波阵列)去马赛克:

从马赛克传感器输出中生成完整的RGB图像,需要借助邻域插值,

在这里插入图片描述

双线性插值去马赛克:

双线性插值:只需求4个邻域像素的平均值。

在这里插入图片描述

不同通道的邻域不一致,

在这里插入图片描述

3.4 去噪

相机图像信号处理器 (Image Signal Processor - ISP) 应用一系列图像处理操作,将 RAW 图像转换为“传统”图像

在这里插入图片描述

图像中的噪声:

在低光照下噪声特别明显,也就是势阱未装满光子,

在这里插入图片描述

几种传感器的噪声:

(1) 散粒噪声:光子到达率是一个随机过程(泊松分布),场景越亮,分布的方差就越大。
(2) 暗噪声:由于热活动而发射的电子(随着传感器越来越热而变得更糟)
(3) 读取噪声:由电子设备(例如增益、A/D转换器)引起。

在明亮的场景和以及大像素传感器:散粒噪声是主要的噪声源,

参考资料:
https://zhuanlan.zhihu.com/p/397873289

3.5 如何去除噪声

邻域插值(与去马赛克类似),

在这里插入图片描述

在这里插入图片描述

3.6 色调重建

人眼感知亮度与测量亮度是有区别的,下图中“视网膜颜色”是眼睛感知到的颜色,“感知颜色”是大脑处理后的颜色,

在这里插入图片描述

  • 我们已经看到传感器响应是线性的,人眼的响应也是线性的(测量亮度),
  • 然而视觉感知,也就是大脑(感知亮度)是非线性的:我们对深色调更敏感,近似一个 γ \gamma γ 函数,
  • 下图中,Eyes实际上是大脑感知的颜色,

在这里插入图片描述

Gamma编码:

色调重建也可以是Gamma编码的过程,我们的目标是使用少量的比特位来压缩编码图像的亮度信息,比如从12位压缩到8位应用非线性曲线可以更好地编码人类视觉更敏感的信息,
下图中,横坐标是实际亮度,纵坐标是感知到的亮度,

在这里插入图片描述

Gamma编码 vs 线性编码 —— 一个简化的例子

在这里插入图片描述

  • 使用线性编码(5比特,32阶)会把人眼就能区分的亮度差异变成一个亮度,也会把人眼看不出明显差别的亮度变成有亮度差异,所以线性编码有较大的缺点,
  • 而采用Gamma编码会在感知上更加平滑,

在这里插入图片描述

色调重建流程:

通过Gamma编码和Gamma校正得到的净效应还是线性曲线,

在这里插入图片描述

  • 真实场景是线性的,经过人的大脑对线性场景的非线性响应,最终感知到的图就是下图左一,
  • 经过相机Gamma编码,人眼看到的图片就是下图左二,
  • 相机Gamma编码后,再经过Gamma校正,就得到显示器正常显示的图像,如下图右一,

在这里插入图片描述

如果没有Gamma编码会如何?

在这里插入图片描述

Gamma编码的历史缘故

  • CRT显示器过去的响应曲线(几乎)完全等于人类灵敏度曲线的倒数。因此,CRT显示器可以跳过Gamma校正并直接显示Gamma编码的图像,
  • 反过来说,以前在CRT显示器时代,我们执行Gamma编码的一个重要目的是抵消显示器的响应曲线。但在液晶显示器时代就不是了——我们现在依旧执行Gamma编码的原因就是确保最终图像的8个比特在感知上更加均匀,

Gamma编码曲线

确切的gamma编码曲线取决于相机制造厂商的设定,
可以近似的用Lγ描述,而不同设定的γ值不同,比较好的默认值是 γ = 1 / 2.2 \gamma=1/2.2 γ=1/2.2

在这里插入图片描述

重要:Gamma编码后亮度值和场景的辐照度之间不再是线性关系,

在这里插入图片描述

4、相机内图像处理小结

相机图像信号处理器 (Image Signal Processor - ISP) 应用一系列图像处理操作,将 RAW 图像转换为“传统”图像,

在这里插入图片描述

4.1 我们真的需要RAW格式图像吗?

是的!
每次使用基于物理的计算机视觉算法时,都需要对辐射进行线性测量。
例如:光度立体、从阴影到形状、基于图像的重新照明、照明估计、与光传输和反向渲染有关的任何事情等。将算法应用于非线性(即非RAW)图像将产生完全无效的结果。

在这里插入图片描述

即便不研究计算机视觉算法,摄影师们也喜欢在RAW格式上进行图像编辑,

在这里插入图片描述

存储和处理RAW格式图像的负担,

  • 图像巨大,对存储空间占用很大,不管是相机还是电脑都需要大量的存储空间
  • 相机本身的处理负担加大,特别是在快速连拍模式
4.2 如何方便的获取RAW格式图像?
  • 大多数专业相机、甚至卡片相机都提供存储RAW格式图像的选项
  • 一些高端的手机,例如Iphone也提供了存储RAW格式图像的选项

如果拍摄前未设置存储为RAW格式,有办法通过RGB格式逆向得到RAW图像吗?

  • 很不幸,你无法简单逆向得到RAW图像
  • 图像处理管道是有损的:在所有步骤之后,关于原始图像的信息都会丢失。
  • 除非如果我们确切地知道相机流程中各个组件的作用(例如,通过使用来自其他类似RAW图像的信息),我们才有可能反转相机的部分图像处理流程。
  • 将PNG/JPG转换回RAW被称为“逆渲染(Derendering)”,这是一个活跃的研究领域。

逆渲染-Derendering

如下图,RAW是最大的几何体(颜色空间),而jpg是最大几何体里面的小的几何体,所以想从jpg还原RAW是较困难的,

在这里插入图片描述

我们讲述的相机内图像处理的流程是一个猜测的公有流程

相机图像信号处理器 (Image Signal Processor - ISP) 应用一系列图像处理操作,将 RAW 图像转换为“传统”图像。

在这里插入图片描述

实际的ISP流程可能非常复杂,

在这里插入图片描述

我们所讲的模拟前端也是一个通用而假设的流程,实际传感器复杂得多

在这里插入图片描述

Gamma编码曲线也因相机的不同而有很大变化

在这里插入图片描述

这些情况都使得严肃的研究非常困难,在管道的中间阶段很难获得真实数据,很难评估新算法对特定管道阶段的效果,

4.3 有很多开源系统在改变这一情况
  • Frankencamera
  • Android Camera2 API
  • https://github.com/cruxopen/openISP
4.4 总结

照片中的像素值和相机传感器输出的值是两个非常不同的东西,两者之间的关系是复杂而未知的,

在这里插入图片描述

参考资料:

基础阅读资料:

  • Szeliski, Computer Vision: Algorithms and Applications, Section 2.3. https://szeliski.org/Book/
  • Michael Brown, “Understanding the In-Camera Image Processing Pipeline for Computer Vision,” CVPR 2016,
    slides available at: http://www.comp.nus.edu.sg/~brown/CVPR2016_Brown.html

进一步阅读资料:

  • Adams et al., “The Frankencamera: An Experimental Platform for Computational Photography,” SIGGRAPH 2010.
    第一个图像处理管道的开放架构,也是Android Camera API的先驱.
  • Heide et al., “FlexISP: A Flexible Camera Image Processing Framework,” SIGGRAPH Asia 2014.
    讨论如何实现单阶段图像处理管道.
  • Buckler et al., “Reconfiguring the Imaging Pipeline for Computer Vision,” ICCV 2017.
  • Diamond et al., “Dirty Pixels: Optimizing Image Classification Architectures for Raw Sensor Data,” arXiv 2017.
    这两篇论文都讨论了如何自适应地改变传统的图像处理流程,使其更好地适应各种计算机视觉问题.
  • Chakrabarti et al., “Rethinking Color Cameras,” ICCP 2014.
    讨论不同的 CFA,包括具有白色滤镜的 CFA,以及如何对其进行去马赛克.
    -Gunturk et al., “Demosaicking: Color Filter Array Interpolation,” IEEE Signal Processing Magazine 2005
    对去马赛克算法的精彩回顾.
  • Kim et al., “A New In-Camera Imaging Model for Color Computer Vision and Its Application,” PAMI 2012.
  • Chakrabarti et al., “Probabilistic Derendering of Camera Tone-mapped Images,” PAMI 2014.
    两篇论文详细讨论了如何建模和校准图像处理管道、如何渲染已经通过管道的图像以及如何在不同相机的管道下重新渲染图像

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

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

相关文章

机器学习周报第27周

目录 摘要Abstract一、文献阅读 摘要 本周阅读了一篇混沌时间序列预测的论文,论文模型主要使用的是时间卷积网络(Temporal Convolutional Network,TCN)、LSTM以及GRU。在数据集方面除了使用现实的时间序列数据外,还通…

计算机毕业设计 | SpringBoot+vue农产品商城 买菜购物网站(附源码)

1,绪论 1.1 项目背景 随着社会发展,网上购物已经成为我们日常生活的一部分。但是,至今为止大部分电商平台都是从人们日常生活出发,出售都是一些日常用品比如:食物、服装等等,并未发现一个专注于菜品的电商…

路由器02_静态路由DHCP

一、静态路由 1、静态路由特点 由管理员手工配置,是单向的,缺乏灵活性 2、默认路由 默认路由是一种比较特殊静态路由,一般用于末节(末梢)网络,直接指定目标为任何地方 二、静态…

为什么 Kafka 这么快?它是如何工作的?

随着数据以指数级的速度流入企业,强大且高性能的消息传递系统至关重要。Apache Kafka 因其速度和可扩展性而成为热门选择,但究竟是什么让它如此之快? 在本期中,我们将探讨: Kafka 的架构及其核心组件,如生…

Xfs文件系统磁盘布局

目录 一,CentOS下Xfs文件系统的安装 二,准备工作 三,AG结构 四,AG超级块 五,AG空闲磁盘空间管理 六,ABTB的Btree 七,ABTB/ABTC的节点块管理 八,inode节点管理 九&#xff0…

Vue-5、el和data的两种写法

1、el 第一种写法 <!DOCTYPE html> <html lang"en" xmlns:v-model"http://www.w3.org/1999/xhtml" xmlns:v-bind"http://www.w3.org/1999/xhtml"> <head><meta charset"UTF-8"><title>el和data的两种写…

vue3中路由的使用(详细讲解)

1、路由的简介 路由(route)&#xff1a;就是根据特定的规则将数据包或请求从源地址传输到目标地址的过程。 在前端或者vue3项目中路由主要用于构建单页面应用程序&#xff08;SPA&#xff09;&#xff0c;其中所有的页面都在同一个HTML文件中加载&#xff0c;通过JavaScript动…

自监督深度学习技术

一、定义 自监督学习&#xff08;SSL&#xff09;是机器学习的一种范式&#xff0c;用于处理未标记数据以获取有用的表示&#xff0c;以帮助下游学习任务。SSL方法最显著的特点是它们不需要人类标注的标签&#xff0c;这意味着它的训练完全基于由未标记的数据样本组成的数据集…

网络通信过程的一些基础问题

客户端A在和服务器进行TCP/IP通信时&#xff0c;发送和接收数据使用的是同一个端口吗&#xff1f; 这个问题可以这样来思考&#xff1a;在客户端A与服务器B建立连接时&#xff0c;A需要指定一个端口a向服务器发送数据。当服务器接收到A的报文时&#xff0c;从报文头部解析出A的…

018、通用集合类型

Rust标准库包含了一系列非常有用的被称为集合的数据结构。大部分的数据结构都代表着某个特定的值&#xff0c;但集合却可以包含多个值。 与内置的数组与元组类型不同&#xff0c;这些集合将自己持有的数据存储在了堆上。这意味着数据的大小不需要在编译时确定&#xff0c;并且可…

WEB 3D技术 three.js 顶点交换

本文 我们来说 顶点的转换 其实就是 我们所有顶点的位置发生转变 我们整个物体的位置也会随之转变 这里 我们编写代码如下 import ./style.css import * as THREE from "three"; import { OrbitControls } from "three/examples/jsm/controls/OrbitControls.j…

kettle的基本介绍和使用

1、 kettle概述 1.1 什么是kettle Kettle是一款开源的ETL工具&#xff0c;纯java编写&#xff0c;可以在Window、Linux、Unix上运行&#xff0c;绿色无需安装&#xff0c;数据抽取高效稳定。 1.2 Kettle核心知识点 1.2.1 Kettle工程存储方式 以XML形式存储以资源库方式存储…

【数据结构】树的遍历

树的遍历 前序遍历 前序遍历是按照根节点->左子树->右子树的顺序进行遍历 图片来源维基百科深度优先遍历&#xff08;前序遍历&#xff09;: F, B, A, D, C, E, G, I, H. 代码实现 递归 # class TreeNode: # def __init__(self, x): # self.val x # …

Office提示内存或磁盘空间不足

Office提示内存或磁盘空间不足 Office提示内存或磁盘空间不足&#xff0c;可以试试以下方法&#xff0c;不管用不要骂我 打开选项 点击信任中心 在受保护的视图中将以下选项取消勾选后确定&#xff0c;关掉软件重新打开

服务容错-熔断策略之断路器hystrix-go

文章目录 概要一、服务熔断二、断路器模式三、hystrix-go3.1、使用3.2、源码 四、参考 概要 微服务先行者Martin Fowler与James Lewis在文章microservices中指出了微服务的九大特征&#xff0c;其中一个便是容错性设计(Design for failure)。正如文章中提到的&#xff0c;微服…

Python打印Python环境、PyTorch和CUDA版本、GPU数量名称等信息

代码&#xff1a; import torch import platformgpu_num torch.cuda.device_count() torch_version torch.__version__ python_version platform.python_version()print("Python Version: Python %s" % python_version) print("PyTorch Version: %s" %…

Spring之推断构造方法源码

文章目录 一、 简介1. 内容回顾2. Spring推断构造方法 二、 源码分析 一、 简介 1. 内容回顾 前面分析了Spring的Bean的生命周期的源码&#xff0c;然后分析了依赖注入源码&#xff0c;以及依赖注入的过程中循环依赖Spring的解决方案。在介绍Bean的生命周期中&#xff0c;我们…

三维模型的几何坐标纠正应用探讨

三维模型的几何坐标纠正应用探讨 倾斜摄影三维模型数据的几何坐标纠正应用分析 近年来&#xff0c;倾斜摄影技术在三维数据采集设备中得到广泛应用。倾斜摄影技术通过在飞行平台上搭载多台传感器&#xff0c;从不同角度采集影像&#xff0c;相比传统的摄影测量&#xff0c;倾斜…

每日算法打卡:数的三次方根 day 7

文章目录 原题链接题目描述输入格式输出格式数据范围输入样例&#xff1a;输出样例&#xff1a; 题目分析示例代码 原题链接 790. 数的三次方根 题目难度&#xff1a;简单 题目描述 给定一个浮点数 n&#xff0c;求它的三次方根。 输入格式 共一行&#xff0c;包含一个浮…

第17课 为rtsp流加入移动检测功能

在上节课&#xff0c;我们成功拿到了rtsp视频和音频流&#xff0c;在第13课&#xff0c;我们为普通的usb摄像头加上了移动检测功能&#xff0c;那能不能给rtsp摄像头也加上移动检测功能以实现一些好玩的应用呢&#xff1f;答案是肯定的&#xff0c;在usb摄像头检测中&#xff0…