【计算机视觉】图像形成与颜色

news/2024/10/22 4:18:53/

图像形成与颜色

光照及阴影

辐射度学

image-20221204185226005

颜色

颜色信息反映了入射光的能量分布与波长,可见光的波长在400nm760nm之间。

RGB

RGB分别代表三个基色(R-红色、G-绿色、B-蓝色),如(0,0,0)表示黑色、(255, 255, 255)表示白色。其中255表示色彩空间被量化成255个数,最高亮度值为255(255 = 2^8 - 1,即每个色彩通道用8位表示)。

CMYK

CMY是色料三原色,分别是青(Cyan)、品红(Magenta)、黄(Yellow),再增加一个独立的黑色(K)

RGB 转换至CMYK

image-20221204184415977

CMYK 转换至 RGB

image-20221204184449057

Lab

Lab是基于人对颜色的感觉来设计的,更具体地说,它是感知均匀(perceptual uniform)的,如果数字(L、a、b这三个数)变化的幅度一样,那么它给人带来视觉上的变化幅度也差不多。

HSI

色调H(Hue):与光波的频率有关,它表示人的感官对不同颜色的感受,如红色、绿色、蓝色等。

饱和度S(Saturation):表示颜色的纯度,纯光谱色是完全饱和的,加入白光会稀释饱和度。饱和度越大,颜色看起来就会越鲜艳,反之亦然。

亮度I(Intensity):对应成像亮度和图像灰度,是颜色的明亮程度。

RGB转HSI:

image-20221204184713427

HSI转RGB:

image-20221204184757850

HSV

H (Hue)色相:取值范围 [0, 360]

S (Saturation)饱和度,即色彩纯净度,0饱和度为白色;取值范围:[0, 1]

V (Value):明度,0明度为纯黑色;取值范围:[0, 1]

HSV转换至RGB:

image-20221204184857163

RGB转换至HSV

image-20221204184905318

色彩还原

全世界目前主流使用8位每通道SRGB色彩描述体系来记录我们的颜色信息,8位的灰阶256非常有限。人眼的特点是对暗部更为敏感。如果用256灰阶直

接记录物理渐变的话,那么暗部只有56个灰阶,暗部就会出现巨大的色阶断层。如果我们做一次非线性映射,也就是Gamma矫正。把0.218的光信号提到中间。那么亮部和暗部各会分配到128个色阶。

光度处理

直方图处理

image-20221204185100718

手工实现直方图均衡化
了解直方图均衡化的原理之后,我们以一个简单的例子来手工计算均衡化后的图像。这里我们假设存在以下这张图像(假定图像的灰度级范围是 [0, 9]):

img
计算过程如下:

image-20221204192832794

image-20221204192902240

原文链接:https://blog.csdn.net/qq_15971883/article/details/88699218

图像融合

直接剪切粘贴技术(cut-and-paste)

ps抠图

Alpha融合

实现平滑过渡的更好方法是在图像中央选择一个宽度w,并使alpha掩模在这w个像素上从0平滑过渡到1,这个过程被称为羽化,能够实现更平滑的混合。线性减小或增大的混合函数会导致梯度不连续,从平滑区域过渡到线性区域时产生被称为马赫带的可见噪声。

拉普拉斯金字塔

综合考虑混合函数对特征大小和平滑度的约束,混合图像的理想方法是

分辨率混合。可以用拉普拉斯金字塔进行这种多分辨率分解,其中金字塔的每一层提供不同的分辨率,而组合所有层能恢复原图像

全景图像生成

两个相邻图像的区域进行混合

光度立体视觉

光度立体法的用途是可以重建出物体表面的法向量,以及物体不同表面点的反射率,最关键的是它不像传统的几何重建(例如立体匹配)方法那样需要去考虑图像的匹配问题,因为所需要做的只是采集三张以上,由不同方向的光照射物体的图像。这个过程中,物体和相机都不动,因此图像天然就是对齐的,这使得整个过程非常的简洁。


http://www.ppmy.cn/news/1518.html

相关文章

Kafka - 主题Topic与消费者消息Offset日志记录机制

Kafka Topic 可以根据业务类型,分发到不同的Topic中,对于每一个Topic,下面可以有多个分区(Partition)日志文件: kafka 下的Topic的多个分区,每一个分区实质上就是一个队列,将接收到的消息暂时存储到队列中&#xff0…

计算机毕业设计Java大众采编本微资讯发布平台(源码+系统+mysql数据库+lw文档)

计算机毕业设计Java大众采编本微资讯发布平台(源码系统mysql数据库lw文档) 计算机毕业设计Java大众采编本微资讯发布平台(源码系统mysql数据库lw文档)本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse…

大数据必学Java基础(一百一十一):过滤器注解应用和开发案例

文章目录 过滤器注解应用和开发案例 一、过滤器注解应用 二、开发案例

windows域控上批量修改域账号密码

目录 一、查询密码过期域账号信息 (一)根据OU组织架构查询密码过期账号 (二)查询域控所有密码过期账号 (三)导出dsquery查询的信息 二、批量修改过期域账号密码 (一)根据dsque…

并发基本原理(四):AQS源码解析1-ReentrantLock的lock实现原理

简介 AQS(AbstractQueuedSynchronizer)是JUC包中的核心抽象类,许多并发工具的实现,包括ReentrantLock、ReentrantReadWriteLock、CountDownLatch、Semaphore 等都是基于此实现。 AQS,主要提供了表示同步状态的 state…

qt使用http get和post

qt使用http get和post 本文目录qt使用http get和post准备get请求widge.hwidget.cpppost请求widge.hwidget.cpppost请求的数据格式参数写在url后面使用application/x-www-form-urlencoded使用application/json使用multipart/form-data传送文件准备 使用到网络编程,需…

跟着实例学Go语言(二)

本教程全面涵盖了Go语言基础的各个方面。一共80个例子,每个例子对应一个语言特性点,非常适合新人快速上手。 教程代码示例来自go by example,文字部分来自本人自己的理解。 本文是教程系列的第二部分,共计20个例子、约1.2万字。 …

9.2、面向对象高级特性(类方法和静态方法、property类属性、单例模式)

文章目录类方法和静态方法property类属性单例模式基于装饰器实现使用_ _ new _ _方法实现面向对象总结类方法和静态方法 类里面定义的方法称为实例方法,python解释器会自动将对象(或实例)传入方法【pycharm中会自动将self传入,se…