尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

数字图像处理从入门到精通

数字图像处理从入门到精通
📅 发布时间:2026/7/8 4:37:29

数字图像处理完整入门教程;分模块

一、基础概念:什么是数字图像

1. 图像数字化原理

现实照片是连续模拟信号,电脑识别必须转成离散数字矩阵,分两步:

  1. 采样:把画面切成无数小方块(像素),分辨率 = 宽 × 高;采样越密图片越清晰、文件越大。
  2. 量化:给每个像素亮度分配数字:
    • 二值图:只有 0 (黑)/1 (白)
    • 灰度图:0 纯黑~255 纯白,共 256 级
    • RGB 彩色:红、绿、蓝三通道灰度叠加

2. 图像 vs 图形

  • 图像(位图):相机实拍、照片,最小单位像素,放大模糊(jpg/png)
  • 图形(矢量图):软件绘制(图标、CAD),靠数学公式存储,无限放大清晰(svg/dwg)

3. 色彩模型

  1. RGB(显示器 / 手机):相加混色,红光 + 绿光 + 蓝光组合所有颜色
  2. CMYK(打印机):相减混色,青、品、黄、墨,用于纸质印刷
  3. LAB(人眼视觉):亮度 L、红绿轴 A、黄蓝轴,调色专用

二、图像基础算术 / 逻辑运算(点对点,单像素计算)

所有运算都是同位置像素数值计算,不改变图片轮廓结构

1. 算术运算

  1. ** 加法C = A + B
    • 降噪:多张相同场景图片取平均,消除随机噪点
    • 特效:双重曝光、图片叠加
  2. ** 减法C = A - B
    • 去除固定背景、视频运动检测(前后帧相减,动的区域会发亮)
  3. ** 乘法C = A × B
    • 蒙版遮罩:用黑白掩码,黑色区域直接抹掉图像内容
    • 颜色混合:正片叠底(打印油墨效果)
  4. ** 除法C = A ÷ B
    • 修正拍摄亮度不均、多光谱图像比值分析

2. 逻辑运算(仅黑白二值图使用)

  • AND 与:两张图重叠区域保留,提取相交物体
  • OR 或:合并两张图所有内容
  • XOR 异或:两张图不一样的区域显示,相同变黑;图片和自身异或会清空

三、几何变换(平移、旋转、缩放、镜像,改变像素位置)

核心知识点:正向 / 反向映射

  • 正向:原图像素映射到新图,容易出现空洞
  • 反向映射(推荐):遍历新图每个坐标,反推原图对应像素,无空洞,搭配插值填充空白像素

1. 平移

公式:\(x'=x+t_x,\ y'=y+t_y\) 矩阵齐次坐标: \(\begin{bmatrix}x' \\ y' \\ 1\end{bmatrix}=\begin{bmatrix}1 & 0 & t_x \\ 0 & 1 & t_y \\ 0 & 0 & 1\end{bmatrix}\begin{bmatrix}x \\ y \\ 1\end{bmatrix}\) \(t_x\)左右偏移,\(t_y\)上下偏移

2. 镜像

水平镜像(左右翻转):\(x'=W-x\) 垂直镜像(上下翻转):\(y'=H\)

3. 缩放

\(x'=f_x·x,\ y'=f_y·y\) \(f_x/f_y>1\)放大;小于 1 缩小,缩放后空白像素需要插值填充

4. 旋转(绕图像中心)

  1. 先把图像原点移到中心
  2. 旋转矩阵: \(\begin{bmatrix}x' \\ y' \\ 1\end{bmatrix}=\begin{bmatrix}\cos\theta & \sin\theta \\ -\sin\theta & \cos\theta\end{bmatrix}\begin{bmatrix}x \\ y\end{bmatrix}\)
  3. 计算旋转后整张图边界,自动扩充画布避免裁切

插值算法(空白像素补值)

  1. 最近邻插值:取最近像素,速度快但锯齿严重
  2. 双线性插值:周边 4 像素加权,画面平滑,日常处理首选

四、灰度变换(点运算:只改像素亮度,不挪位置)

1. 线性灰度变换 \(D_B = a·D_A + b\)

  • \(a>1\):提升对比度;\(0<a<1\)降低对比度
  • \(b>0\)画面整体变亮;\(b<0\)变暗
  • \(a=-1,b=255\):图像反色(黑变白,白变黑)

2. 非线性灰度变换

自定义曲线拉伸中间灰度,提升画面层次感,常用公式: \(f(x)=x+\frac{0.8·x·(255-x)}{255}\)

3. 直方图(核心工具)

直方图:统计图片里每个灰度值有多少像素特点:

  1. 只记录亮度,不记录物体位置(物体移动直方图不变)
  2. 一张图对应唯一直方图,直方图相同图片不一定一样 用途:判断图片明暗、对比度、分割阈值
直方图均衡(自动增强)

把拥挤的灰度均匀铺开,暗图变通透、对比度大幅提升,适合逆光、昏暗照片。

直方图规定化

自定义目标直方图,统一多张图片光影色调(滤镜、批量调色)

五、傅里叶变换(空域 ↔ 频域)

1. 核心概念

  • 空域:我们看到的像素画面
  • 频域:描述画面灰度变化快慢
    • 低频:大片平滑区域(天空、墙面),频谱中心亮点
    • 高频:边缘、纹理、噪点,频谱外围亮点 变换作用:复杂图像运算(滤波、降噪)转到频域会大幅简化

2. 傅里叶变换关键性质

  1. 可分离:二维图可以先行、后列分别做一维变换
  2. 平移不变幅度:图片移动,轮廓频谱形状不变,只改变相位
  3. 旋转同步:图片转多少度,频谱同步转多少
  4. 卷积定理(最重要)空域卷积 = 频域相乘 图像滤波不用滑动卷积核,直接频域相乘,速度提升几十倍

3. FFT 快速傅里叶变换

原始 DFT 复杂度 \(O(N^2)\),FFT 拆分奇偶序列,优化到 \(O(Nlog_2N)\),电脑处理图片全靠 FFT。 蝶形运算:FFT 基础计算单元,分层合并高低频分量。

六、滤波(图像平滑 / 锐化,卷积实现)

卷积原理

拿小矩阵(卷积核 / 模板)在图片逐窗口滑动,窗口内像素 × 核权重求和,生成新像素。 示例 3×3 均值核(模糊降噪): \(\begin{bmatrix}1/9 & 1/9 & 1/9 \\ 1/9 & 1/9 \\ 1/9 & 1/9 & 1/9\end{bmatrix}\)

1. 空域滤波(直接处理像素)

平滑滤波(降噪、模糊)
  • 均值滤波:邻域平均,消除细小噪点,缺点会糊掉边缘
  • 中值滤波:取邻域中间亮度,完美去除黑白雪花噪点,保留边缘
锐化滤波(强化边缘、细节)

用拉普拉斯 / 梯度算子,放大像素亮度差,画面更清晰;过度锐化会出现白边过冲。

2. 频域滤波(傅里叶变换后处理)

  1. 低通滤波:保留低频、过滤高频(降噪、模糊) 类型:理想(振铃波纹)、巴特沃斯、高斯(无波纹,首选)
  2. 高通滤波:保留高频、去掉低频(提取边缘) 缺陷:丢失画面基础亮度,图像发黑,搭配偏移增益改善
  3. 带通 / 带阻:只保留 / 删除特定频率纹理

七、完整图像处理通用流程

  1. 读取图片,转灰度 / RGB
  2. 预处理:几何变换(摆正、裁剪)
  3. 灰度校正:直方图均衡 / 线性提亮
  4. 降噪平滑(空域均值 / 频域高斯低通)
  5. 特征提取:高通滤波提取边缘
  6. 分割 / 识别:基于灰度阈值、边缘划分目标区域

配套实操(Python+OpenCV 极简示例,直接跑)

1. 图像加减降噪

python

运行

import cv2 import numpy as np # 读取两张同场景图片 img1 = cv2.imread("1.jpg") img2 = cv2.imread("2.jpg") avg = (img1 + img2) // 2 # 均值降噪 cv2.imshow("降噪图", avg)

2. 图片旋转

python

运行

img = cv2.imread("test.jpg") h, w = img.shape[:2] # 以中心旋转45° M = cv2.getRotationMatrix2D((w/2, h/2), 45, 1) res = cv2.warpAffine(img, M, (w, h)) cv2.imshow("旋转", res)

3. 直方图均衡提亮暗图

python

运行

import cv2 img = cv2.imread("dark.jpg", 0) # 0=灰度图 equ = cv2.equalizeHist(img) cv2.imshow("原图", img) cv2.imshow("均衡提亮", equ)

4. 高斯模糊降噪(频域等价低通)

python

运行

img = cv2.imread("test.jpg") blur = cv2.GaussianBlur(img, (5,5), 1.5) cv2.imshow("平滑降噪", blur)

5. 边缘提取(高通效果)

python

运行

img = cv2.imread("test.jpg", 0) edge = cv2.Laplacian(img, cv2.CV_8U) cv2.imshow("边缘", edge)

学习顺序建议

  1. 先吃透像素、分辨率、RGB、算术运算(最基础,看懂图片数据)
  2. 几何变换 + 插值(日常修图必备)
  3. 灰度直方图、点运算(调色核心)
  4. 空域卷积滤波(降噪、边缘提取,高频实操)
  5. 傅里叶变换与频域(理论难点,理解卷积加速逻辑即可)
  6. 综合写代码实现整套图像处理流水线

相关新闻

  • HTTP 超文本传输协议全解:Web 世界的通信规则
  • IP 协议全解:互联网的「快递寻址中枢」,搞懂网络层的核心逻辑
  • 科智咨询:2025年中国IDC市场规模达1847.5亿元,AI驱动市场增速显著回升

最新新闻

  • -python-LangGraph框架(3-34-LangGraph循环实战)
  • 从硬编码到 .env 与 pydantic_settings 类,连路由用法都给你捋清楚
  • 耐达讯自动化EtherNet/IP转DeviceNet网关:功能、参数与配置,看这一篇就够了!
  • 华硕笔记本终极性能优化指南:GHelper轻量级控制工具完全教程
  • ARIMA 模型参数 (p,d,q) 定阶实战:基于AIC/BIC与ACF/PACF的2种方法对比
  • 解析 CVE-2026-46244 IPv6 防火墙绕过漏洞:底层成因与望获 OS 网络安全防护实践

日新闻

  • PROPKA 3深度解析:蛋白质pKa预测的实战指南与算法原理
  • 微信小程序 globalData 监听:基于 Object.defineProperty 的 3 种实现方案对比
  • MySQL 8.0 数据清洗实战:3类异常值识别与 UPDATE/DELETE 批量处理

周新闻

  • 基于YOLOv12的番茄成熟度智能检测系统开发
  • 终极RimWorld模组管理指南:用RimSort告别模组冲突烦恼
  • AI Agent框架开发:从理论到实践的完整指南

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号