图像识别零基础实战入门 1 计算机如何“看”一张图片

1️⃣ 本章你将学会什么

学完这一章,你将能够:

  • 明白计算机眼中的"图片"并不是照片,而是数字
  • 亲手把一张图片读入 Python
  • 看到图片在计算机中的真实形态(数字矩阵)
  • 理解 RGB 三个颜色通道的含义

2️⃣ 问题引入:AI 是怎么看图片的?

人看一张图片,会直接看到"人、物体、颜色、场景"。

但计算机什么也看不到

它看不到"猫",也看不到"人",它只能看到:

一大堆数字。


3️⃣ 核心概念

概念 1:像素(Pixel)

  • 图片由很多个小点组成
  • 每一个小点,叫做一个像素
  • 每个像素都有一个位置(行、列)

你可以把图片理解成一张密密麻麻的表格


概念 2:颜色其实是数字

一张普通彩色图片,通常由 三层数字 组成:

  • 红色(R)
  • 绿色(G)
  • 蓝色(B)

每个像素点,其实存的是三组数字,例如:

复制代码
R = 120
G = 200
B = 80

计算机并不知道这是"绿色偏亮",

它只知道:这里是三个数字。


概念 3:图片 = 数字矩阵

在计算机中,一张图片可以理解为:

一个三维数组(高度 × 宽度 × 颜色通道)

现在你只需要记住一句话即可:

图片在计算机里,本质就是数组。


4️⃣ 演示案例说明

本章我们要做什么?

我们将完成一个非常基础但非常重要的演示

  1. 用 Python 读取一张图片
  2. 查看图片在计算机中的形状
  3. 把 RGB 三个通道拆开并显示

最终你会看到什么?

  • 图片的尺寸
  • 图片对应的数字矩阵
  • 红、绿、蓝三个通道分别长什么样

5️⃣ 演示案例:用 Python "看见"图片的数字形态

第一步:准备环境

你只需要安装以下库:

bash 复制代码
pip install pillow matplotlib numpy

第二步:读取一张图片

准备一张任意图片,例如 test.jpg,和代码放在同一目录。

python 复制代码
from PIL import Image
import numpy as np

# 读取图片
img = Image.open("test.jpg")

# 转成 numpy 数组
img_array = np.array(img)

print("图片类型:", type(img))
print("数组形状:", img_array.shape)

可能的输出示例:

复制代码
图片类型: <class 'PIL.JpegImagePlugin.JpegImageFile'>
数组形状: (480, 640, 3)

解释:

  • 480:高度(行)
  • 640:宽度(列)
  • 3:RGB 三个颜色通道

第三步:看看图片里的"数字"

python 复制代码
# 查看左上角第一个像素
pixel = img_array[0, 0]
print("第一个像素的 RGB 数值:", pixel)

可能输出:

复制代码
第一个像素的 RGB 数值: [123 200 45]

这就是计算机眼中的"颜色"。


第四步:拆分 RGB 三个通道并显示

python 复制代码
import matplotlib.pyplot as plt

# 拆分通道
red_channel = img_array[:, :, 0]
green_channel = img_array[:, :, 1]
blue_channel = img_array[:, :, 2]

# 显示
plt.figure(figsize=(10, 3))

plt.subplot(1, 3, 1)
plt.title("Red Channel")
plt.imshow(red_channel, cmap="gray")
plt.axis("off")

plt.subplot(1, 3, 2)
plt.title("Green Channel")
plt.imshow(green_channel, cmap="gray")
plt.axis("off")

plt.subplot(1, 3, 3)
plt.title("Blue Channel")
plt.imshow(blue_channel, cmap="gray")
plt.axis("off")

plt.show()

你会看到三张灰度图。

这说明一件非常重要的事情:

彩色图片,其实是三张"灰度图"叠加而成的。




6️⃣ 结果解读

通过这个演示,你应该形成以下直觉:

  1. 图片 ≠ 照片
  2. 图片 = 数字 + 位置
  3. AI 处理图片,本质是在处理大量数字
  4. 后面所谓的"训练模型",就是在学习这些数字的规律

7️⃣ 本章小结

  • 计算机"看图",看到的是数组
  • 颜色是数字,不是感觉
  • RGB 是最常见的图片表示方式
  • 你已经完成了图像识别学习的第一步

相关推荐
Starry-sky(jing)12 分钟前
RecursionError: maximum recursion depth exceeded —— 你的函数调用链,踩穿了 CPython 的安全气囊
python·cpython·pydantic·recursionerror·递归深度·递归限制·sys.setrecursionlimit
cui_ruicheng16 分钟前
Python从入门到实战(三):流程控制与循环语句
开发语言·python
Rauser Mack26 分钟前
Vibe coding游戏实战:零代码编程五子棋小游戏
人工智能·python·游戏·html·prompt
FriendshipT40 分钟前
Ultralytics:解读PSABlock模块
人工智能·pytorch·python·深度学习·目标检测
hhzz1 小时前
全局实例跟踪(GIT):像人类一样定位目标——VideoCube基准与SiamFC实战全解析
大数据·python·计算机视觉·目标跟踪·数据分析
hhzz10 小时前
基于监控视频的水位尺自动识别技术方案与实现
python·opencv·yolo·图像识别·cv
yongche_shi10 小时前
ragas官方文档中文版(五十)
开发语言·python·ai·ragas·如何评估和改进 rag 应用
weixin_4080996711 小时前
OCR批量识别图片方案:从手动处理到自动化API系统(Python/Java/PHP实战)
图像处理·python·ocr·文字识别·api调用·批量识别·石榴智能
AI行业学习11 小时前
Notepad++ 官方下载 + 完整安装 + 全套优化配置(2026最新)
开发语言·人工智能·python·前端框架·html·notepad++
大圣编程12 小时前
Python中continue语句的用法是什么?
开发语言·前端·python