计算机视觉算法--第一章:概述

一、探究图像在计算机上的本质

首先我们需要先理解图像究竟是什么?在计算机视觉中,一幅图像是一个矩阵,也就是一个二维向量。简化地说:

  • 图像的宽度 对应矩阵的列数
  • 图像的高度 对应矩阵的行数
  • 矩阵的每个元素代表一个像素,像素是图像最基本的组成部分,图像就是像素的集合。

经过上述的小结,我们很容易就理解了图像的本质。可小结提及到像素,其中又包含着什么信息呢?

一个像素可以包含一个到多个数值来表示其视觉信息,比如:颜色 和 亮度等。而其中的颜色又有灰色图像和彩色图像的区分,灰色图像只含有单个通道(++片面说法++),而彩色图像则含有三个通道。因此在彩色图像 和 灰度图像中,每个像素包含的信息是不同的,彩色图像显然包含更多的信息。

灰色图像的像素通常使用无符号8位整型来表示一个0~255的数值,这也是灰色图像为什么是单通道原因。 基于这种表示方式,进而可以理解RGB图像(彩色图像)为什么是三通道图像。

当然,刚才提及到的通道是8位整型表示也不是绝对的,也可以16位。甚至也可以是浮点数。每个像素的数值类型 和 通道数量一起构成了图像的深度。举个例子:一个三通道的彩色图像使用16位整型来表示每个通道,那么每个像素的位深= 16 * 3 = 48位。

图像浮点数类型是「32 位单精度浮点数(float32)」或「64 位双精度浮点数(float64)」

正是因为这种表示方式,图像可以轻松地转化位数学元素,进而在不同类型的算法中使用。

二、探究色彩空间中RGB 和 HSV

什么是色彩空间?听起来似乎是一个包含所有"颜色"的一种空间领域。这样理解其实也没问题,其理论只是在不同的层面应用上对色彩的表示。

第一个常见的色彩空间--RGB。每个像素是用三个8位整型,即三个通道(R、G、B),每个通道均是0~255,对应红,绿、蓝颜色分量的强度。 正如前面说到灰色图像是单通道是片面这个说法,其实当一副RGB图像每个像素的R、G、B的数值相同,就成了一副三通道的灰色图像。

第二个是计算机视觉常用的色彩空间是HSV(Hue,Saturation,Value),其中包含的信息是:色彩、饱和度、明亮度。每个像素是由这三个数值表示的,和通道表示类似,只是数值代表的含义不同。RGB 是「红绿蓝光叠加」,HSV 是「人眼对颜色的感知逻辑」。

  • 色彩值介于0~360度,用来表示该像素的色彩。
  • 饱和度介于0-100%,用来表示该像素颜色的纯净度。
  • 明亮度介于0-100%,用来表示该像素颜色的明亮程度。

现实中 H 通道的物理范围是 0~360°(比如红色对应 0°、绿色 120°、蓝色 240°),但计算机存储和处理时,会将其映射到整数范围(避免浮点数运算,提升效率)。等同的S、V通道也是同样如此,最常见的映射:缩放到 0~255。

相关推荐
风象南5 分钟前
OpenClaw 登顶 GitHub Star 榜首:一个程序员 13 年后的"重新点火"故事
人工智能·后端
TF男孩9 小时前
重新认识Markdown:它不仅是排版工具,更是写Prompt的最佳结构
人工智能
想打游戏的程序猿10 小时前
AI时代的内容输出
人工智能
小兵张健10 小时前
Playwright MCP 截图标注方案调研:推荐方案 1
人工智能
凌杰12 小时前
AI 学习笔记:Agent 的能力体系
人工智能
IT_陈寒13 小时前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端
舒一笑14 小时前
如何获取最新的技术趋势和热门技术
人工智能·程序员
聚客AI15 小时前
🎉OpenClaw深度解析:多智能体协同的三种模式、四大必装技能与自动化运维秘籍
人工智能·开源·agent
黄粱梦醒15 小时前
大模型企业级部署方案-vllm
人工智能·llm
IT_陈寒15 小时前
JavaScript代码效率提升50%?这5个优化技巧你必须知道!
前端·人工智能·后端