首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
数字图像处理考点梳理:从空域滤波到频域增强的全景笔记
📅 2026/10/16 16:55:10
✍️ 爱科研究院
👁 阅读 3,247
这篇笔记我整理了好几天期间翻了不少资料、推了不少公式也踩了不少坑。最开始只是想应付考试把所有知识点抄一遍但写到后面才发现《数字图像处理技术》这门课如果只是堆名词、背公式考前看两遍等于没看。真正有效的复习方式是把前后章节串成一条线搞清楚每个算法想解决什么问题、处理的是空域还是频域、代价是什么。这篇文章就是按这个思路整理的覆盖了课程的主流考点图像数字化与采样量化、空间域图像增强、频率域滤波、图像去噪与复原、形态学处理、图像分割、图像压缩每一节都尽量把原理、公式、参数含义、适用场景和典型考点放在一起方便考前快速过一遍也方便平时查阅。如果只够时间做一件事先把直方图均衡化、各种滤波器的区别、三种边缘检测算子的比较这三大块吃透这份笔记里大半考点都集中在这几个地方。1. 内容整体设计与思路拆解1.1 课程主线从采集到感知的完整链路《数字图像处理技术》这门课和普通编程课的上手逻辑不太一样。编程课通常是“给你一个SDK调用函数看效果”而图像处理更偏“给你一个像素矩阵你自己想办法从中提取有用的信息”。整门课实际上围绕一条链路展开图像是怎么来的图像怎么改进图像里有什么图像怎么压缩存储。这条链路对应了四个大的知识模块分别是图像数字化采样与量化、图像增强空域和频域、图像分析与理解分割、形态学、边缘检测、图像压缩编码。期末复习时如果只看孤立的知识点很容易陷入“什么都背了但做题不会”的状态但如果你先搭好这条主线再往每个环节里填细节效果会好很多。很多人复习时容易犯一个错误就是花太多时间在公式推导上。考试确实会考计算但通常只考代表性的题目比如直方图均衡化、中值滤波、均值滤波、图像缩放、哈夫曼编码这些题型的计算步骤是固定的熟练之后其实很好拿分。而真正拉开差距的是概念辨析题和简答题例如“为什么频域高通滤波会让图像变暗”“为什么中值滤波对椒盐噪声有效但对高斯噪声一般”“为什么梯度算子对噪声敏感”。这些题不考你背得多熟而是看你是否真正理解算法背后的代价与取舍。所以这篇文章里我不会只堆公式而是尽可能把“为什么这样做”“这样做有什么代价”讲清楚方便你应对变着花样的简答题。1.2 复习优先级先抓主干再补边角根据我个人的复习经验和从往年考情了解到的情况这门课的复习优先级大致可以这样排优先级知识点模块常考题型复习建议高直方图均衡化计算题、简答题必须能手算出映射关系理解灰度级合并的概念高空域滤波均值/中值/锐化选择题、填空题、简答题区分不同滤波器的效果、适用噪声、模板参数高频率域滤波低通/高通/带阻简答、名词解释、图像效果分析理解频谱图与图像特征的关系会看滤波后的效果图高边缘检测算子计算题、简答Sobel、Prewitt、Laplacian的模板与特点中图像分割阈值/区域生长/边缘简答、选择掌握分割的分类和典型方法中形态学处理腐蚀/膨胀/开闭运算计算题、简答题结构元素对结果的影响开闭运算的应用场景中图像压缩编码计算题哈夫曼、概念题掌握无损压缩和有损压缩的对比会算编码效率低图像复原简答、选择区分退化模型和噪声模型知道逆滤波、维纳滤波思想低彩色图像处理选择、填空掌握RGB/HSI转换、伪彩色处理、彩色补色如果你时间有限把优先级高的模块先吃透再解决中优先级低优先级的内容考前过一遍即可。但有一条线不能断每个模块里出现的核心概念比如灰度级、直方图、空间域、频率域、信噪比、分辨率必须在脑子里形成一张概念网而不是孤立记忆。1.3 概念网这些名词之间到底是什么关系图像处理里最常出现的一批名词其实是互相解释的。像素是组成图像的最小单位灰度级决定了像素明暗变化的精细程度直方图则统计了图像中每个灰度级出现的次数。灰度级和空间分辨率常被放在一起考它们决定了图像的数字质量。采样决定空间分辨率量化决定灰度级分辨率。这两句话基本就是图像数字化那一节的核心。采样越密图像细节越多但数据量也成倍增加量化级越多灰度层次越平滑但同样带来存储和计算的开销。这里常考的一个概念是“假轮廓”当量化级数不足时图像原本平滑变化的区域会呈现出一圈一圈的轮廓类似等高线地形图它和图像边缘是两回事注意区分。再往后增强和复原有本质区别。增强是改善图像的主观视觉效果不建立精确的退化模型是以“你觉得好看”为目标复原则是根据图像退化的原因建立模型再尽可能恢复出原始图像是以“逼近真实”为目标。这两个概念经常被放在一道简答题里考所以一定别混。增强里又分空域法和频域法。空域法直接操作像素灰度值频域法先把图像通过傅里叶变换转到频率域对频谱系数做处理后再反变换回空间域。许多同学学到这里会问为什么要多此一举转到频域原因是图像中的平滑区域对应低频分量细节和边缘对应高频分量而噪声通常也集中在高频区域所以在频域里你可以有选择性地处理不同频率成分这种选择性在空域里操作起来非常麻烦。理解了这个再去学低通滤波和高通滤波就会顺畅很多。2. 图像数字化采样、量化与分辨率2.1 从连续图像到数字图像三步走图像数字化是把模拟图像转换成数字图像的过程也是整个数字图像处理的第一步。这个过程可以拆成三步采样、量化、存储。采样是在空间位置上对连续图像进行离散化也就是用一个网格去覆盖图像每个网格取一个像素值。量化是对像素值进行分级把连续的亮度值映射到有限的离散灰度级。存储则是把离散后的数据按照某种文件格式保存到存储介质中。考试里经常问“采样和量化的区别”最直接的答法是采样解决的是“在哪儿取点”的问题量化解决的是“取到的值算几级”的问题。2.2 采样定理与混叠为什么放大图像会变马赛克采样不是想怎么采就怎么采它有一个理论下限叫采样定理。简单说如果一个连续信号中包含的最高频率成分为 f_max那么采样频率至少要达到 2 * f_max才能够在采样后无失真地恢复出原始信号。这个“2倍频率”通常被称为奈奎斯特频率。在图像处理里这个定理同样适用只是我们很少直接去算频率而是通过观察效果来理解它的意义。如果采样密度不够也就是采样频率低于信号最高频率的两倍就会出现混叠现象。混叠在图像上看最典型的效果就是高密度条纹或格子图案在采样后变成了歪歪扭扭的条纹甚至出现原本不存在的低频纹理。这就好比你在一个光线很暗的场合用低分辨率相机拍摄远处大厦上一排整齐的窗户照片里的窗户可能变成了一条条奇怪的灰带。物理世界里的高频细节因为采样不够密被“伪装”成了低频信号这种现象在期末卷子里经常以选择题或名词解释出现。很多同学对采样定理的数值计算有点犯怵其实考法很固定。题目会给出图像的最高空间频率单位是周期/毫米问你采样间隔最大是多少才能无失真恢复。套公式采样频率 2 * 最高频率那么采样间隔 1 / (2 * 最高频率)。如果题目给出的是奈奎斯特频率那采样频率必须大于等于它。答题时记得写明这个对应关系步骤清晰就能拿分。实操中我们感受到的最典型例子是放大图像。一张 100 x 100 的图像放大到 500 x 500放大过程可以理解为在已有像素之间“插值”出新像素这个过程不会增加真实信息量只是通过一些规则来猜测中间点该是什么灰度值。这就是为什么放得越大越容易看到马赛克边缘因为原本隐藏的采样网格被曝光了。最近邻插值最快但会产生锯齿双线性插值会平滑一些双三次插值更平滑但计算量也最大。这部分经常以选择或填空形式考记住三个关键词最近邻质量差但快、双线性平滑、常用、双三次质量好、更慢。2.3 量化与灰度级为什么灰度级太少会出现假轮廓量化是把连续的灰度值映射到有限个灰度级。灰度级常用 2 的整数次幂表示比如 256 级8比特是最常见的。黑白二值图像只有 2 级灰度图像通常是 256 级彩色图像每个通道也是 256 级。量化级数越少数据量越小但图像质量会下降。当灰度级过少比如降到 16 级或 8 级原本平滑的渐变区域会出现一圈一圈的轮廓这就是前面提到的假轮廓。假轮廓产生的原因是量化时把相近的灰度值合并成了同一个整数渐变区域里相邻像素的灰度差异被放大成了可见的跳变。这和图像边缘产生的轮廓不同边缘轮廓是物体与背景之间的真实边界假轮廓是量化误差造成的虚假边界。考试里如果给你一幅平滑渐变图再问你量化级过低会产生什么现象答案就是假轮廓。计算题里还会出现一个公式用来计算存储一幅图像所需的字节数。假设图像有 M 行 N 列灰度级为 2^k那每个像素用 k 比特表示整幅图像的数据量为 M * N * k 比特换算成字节再除以 8。举例一幅 1024 x 1024、256 级灰度的图像数据量就是 1024 * 1024 * 8 比特等于 8 兆比特也就是 1 兆字节。这个简单计算每年都有一定要会。2.4 分辨率的三层含义别再只想到像素说到分辨率很多同学第一反应是像素个数比如 1920 x 1080。但图像处理课上的分辨率至少包含三个层次。空间分辨率指图像中能分辨的最小细节由采样密度决定。灰度级分辨率指灰度级数也就是能把灰度变化细分到什么程度。时间分辨率在视频处理里指单位时间采集的帧数静止图像处理里一般不涉及。考试喜欢在选择题里混用这些概念比如问“降低灰度级分辨率会导致什么”你要知道它影响的是灰度层次不直接影响空间细节所以虽然图像会变差但不会变模糊而是变“生硬”。还有一个容易混淆的点是图像放大缩小重采样。缩小时如果直接丢弃像素会出现锯齿或丢失细节放大时如果直接复制像素会导致块状效应。因此通常会使用插值方法。这部分不用记复杂算法重点理解插值的思想即可。3. 空间域图像增强公式、算子与模板3.1 灰度变换函数看清图像从调整亮度开始灰度变换是最简单的增强手段直接对每个像素的灰度值进行点运算不涉及邻域。基础形式是 g(x, y) T(f(x, y))这里的 T 是一系列变换函数。常用的有线性变换、分段线性变换、对数变换、幂律变换也叫伽马变换。对数变换的公式是 s c * log(1 r)作用是压缩高灰度值、扩展低灰度值适合把暗部细节提亮。幂律变换是 s c * r^γ当 γ 小于1时低灰度区域被扩展图像整体变亮当 γ 大于1时高灰度区域被压缩整体变暗。伽马校正这个概念在很多图像软件里存在本质就是调节 γ 值。考试常考选择题给你几幅图像让你判断分别对应哪种变换记住对数变换对暗部更友好、幂律变换的 γ 控制更灵活即可。分段线性变换里最常考的是对比度拉伸和灰度级分层。对比度拉伸就是把图像的最低灰度和最高灰度映射到一个更宽的范围拉大对比度。灰度级分层则好比地图上的等高线把特定灰度区间标亮用于突出某个灰度范围的物体。这里有个概念叫“比特平面分层”它把 8 比特图像的每个二进制位拆出来变成8幅二值图最高位平面保留了图像的大致轮廓最低位平面看起来几乎就是噪声。如果题目问去除噪声却不影响整体视觉效果较常见的选择是把最低位平面置0再重建图像这种做法能有效减少少量噪声同时基本不破坏主体信息是一个非常经典的“代价与收益”案例。3.2 直方图处理从统计到均衡化的手算全流程直方图是图像处理里最基础也最重要的统计工具横轴是灰度级纵轴是像素个数或概率。直方图能直观反映图像的整体亮度分布。如果直方图集中在低灰度区图像偏暗集中在高灰度区图像偏亮集中在中间窄区间图像对比度低分布很宽则对比度高。直方图均衡化是每个学期必定出现的计算题题型。它的目标是把原始直方图变得尽可能均匀分布从而增强对比度。整体分四步来做。第一步统计原始图像每个灰度级 k 对应的像素个数 n_k计算出概率 p(k) n_k / NN 是总像素数。第二步计算累积分布函数也就是从灰度级 0 到 k 的概率累加和 cdf(k)。第三步用公式 s_k round( (L - 1) * cdf(k) ) 算出新的灰度级L 是灰度级总数256 级灰度时 L - 1 255。第四步把原始灰度 k 映射到新灰度 s_k重新统计新直方图。这里有两个特别容易出错的地方。第一均衡化后的直方图不是绝对平直的因为灰度级被合并了做不到每个灰度级等量像素能做到的是灰度级分布范围更宽。第二累积分布函数计算时一定要用概率的累加而不是直接用像素个数累加尽管像素个数累加之后再除以 N 结果一样但在写上公式时写概率累加更规范。我拿一个 3 比特量化灰度级 0-7、总像素数 64 的例子来跑一遍原始灰度统计概率灰度级 k像素数 n_k概率 p(k)累积概率 cdf(k)映射值 s round(7 * cdf)080.1250.12511100.1560.28122120.1880.4693380.1250.5944470.1090.7035560.0940.7976640.0630.8606790.1411.0007映射后新灰度级分布灰度1有8个像素灰度2有10个灰度3有12个灰度4有8个灰度5有7个灰度6有10个来自原灰度5的6个和原灰度6的4个灰度7有9个。看到没有原来灰度0和1之间可能存在的界限被拉大了暗部和亮部的对比度都得到扩展。考试时题目可能给你像素值矩阵而不是统计表第一步需要自己数出各个灰度级的像素个数。为了避免算错建议先画一个 8 x 8 的表格逐行计数数完后加总验证是不是等于总像素数这个小动作能救回不少步骤分。直方图规定化也叫匹配是均衡化的延伸它的目标不是均匀分布而是把直方图变成某个指定的形状。考试一般只会让你描述思路不会真的要求手算重点记住“先对原图均衡化再对目标直方图均衡化最后利用两个映射关系合成最终映射”的流程即可。3.3 空间滤波基础为什么搞出个模板空间滤波的出发点很简单图像中一个像素的值往往和它周围像素有关。通过一个小模板比如 3 x 3 的矩阵在图像上滑动对每个像素的邻域做某种运算就可以实现平滑、锐化或边缘检测。模板的中心对准当前像素模板里的系数决定了这个邻域如何参与计算。这个操作也叫卷积实际上更严格地说是相关数字图像处理课程里通常不加严格区分公式为 g(x, y) sum( w(a, b) * f(x a, y b) )其中 w 是模板系数f 是原图像灰度。模板越大参与计算的邻域越广图像被处理得越“重”计算量也越大。3.4 平滑滤波对比均值滤波、高斯滤波、中值滤波怎么选平滑滤波器主要是为了让图像变“柔和”抑制噪声。三种最常考的平滑方法放在一起对比最清晰滤波器原理主要作用对椒盐噪声对高斯噪声副作用均值滤波邻域内像素灰度取平均平滑、降噪会淡化但仍受影响有效边缘模糊高斯滤波按高斯函数给邻域像素加权再平均平滑、降噪效果一般更有效且边缘保留优于均值仍会模糊边缘中值滤波取邻域内像素灰度中位数消除孤立噪声点非常有效效果一般细节损失较小均值滤波的公式是 g (1 / m) * sum(f)m 是模板内像素总数。比如 3 x 3 模板就是把9个像素灰度相加除以9。缺点也很明显均值把边缘和细节也一起平均掉了图像会变模糊。高斯滤波是均值滤波的升级版越靠近中心像素的权值越大远离中心的权值越小权重由高斯函数决定。这样在平滑噪声的同时能比均值滤波保留更多边缘信息。二维高斯函数的公式涉及标准差 σσ 越大邻域权值分布越平缓图像越平滑。考试中偶尔会给你 3x3 高斯模板让你计算卷积没必要背一堆小数要理解关键原则模板所有权值求和应等于1这样处理后的图像整体亮度不会偏移。如果题目给你的是整数模板通常需要除以模板权值之和来做归一化别漏了这一步。中值滤波是典型的非线性滤波它不进行加权求和而是把邻域内像素按灰度值排序取中间那个值作为输出。它对椒盐噪声特别有效因为椒盐噪声是黑白极值点排序后会落在序列两端中位数不受它们影响。但中值滤波面对高斯噪声这种处处都有一点偏移的情况就不怎么行因为排完序后中位数仍然带有噪声成分。一句话记忆椒盐噪声用中值高斯噪声用高斯滤波。实操里还有一个容易踩的坑标准均值滤波在图像边缘处没有足够的邻域像素该怎么办常见做法有四种忽略边缘像素输出图像会缩小、补零边缘发黑、扩展边缘复制最外层像素、镜像扩展。考试里如果题目没说明边界处理方式一般默认忽略边缘或补零具体看题目要求。这个点虽然小但常作为选择题的陷阱出现。3.5 锐化滤波与边缘检测微分算子怎么区分锐化的目标是突出图像的边缘和细节。从数学上看灰度变化剧烈的区域对应一阶导数值大或二阶导数过零点。图像是离散的所以用差分来近似微分。最基础的一阶差分是 g_x f(x1, y) - f(x, y)梯度向量的幅度代表边缘强度方向代表边缘朝向。锐化常用的算子有三个Sobel、Prewitt、Laplacian它们各自有固定模板。Sobel 算子有两个方向的模板一个检测水平边缘垂直方向梯度一个检测垂直边缘水平方向梯度。Prewitt 算子和 Sobel 类似只是 Sobel 对中心行/列的权重加倍对噪声稍微更平滑一些。Laplacian 算子是二阶微分算子模板是一个中心为4或-4、上下左右为-1或1的十字结构对噪声非常敏感但它优点是各向同性检测边缘方向不敏感。算子类型模板特点主要缺点适用场景Sobel一阶微分上下/左右权重不对称含平滑定位稍粗最常见抗噪相对好Prewitt一阶微分上下/左右权重对称边缘较粗简单场景Laplacian二阶微分十字模板不分方向对噪声极其敏感需配合平滑使用计算题最常考的是给你一个 3 x 3 区域让你用 Sobel 算水平梯度和垂直梯度然后算梯度幅值。公式通常是 G sqrt(Gx^2 Gy^2)有时为了计算方便也用 |Gx| |Gy| 近似。如果用 Sobel 的 Gx 检测垂直边缘那就需要把模板系数和像素对应相乘再求和。注意Sobel 算子中的 Gx 模板如下[ G_x \begin{bmatrix} -1 0 1 \ -2 0 2 \ -1 0 1 \end{bmatrix} ]它检测的是沿 x 方向水平方向的灰度变化因此主要响应垂直边缘。Gx 模板中心列是0起作用的是左右两列所以它可以找到左右灰度突变的位置。同理Gy 模板检测沿 y 方向的灰度变化主要响应水平边缘。答题时一定要说清楚哪个模板对应哪个方向的边缘这是一个高频扣分点。很多人模板不算错但把“水平边缘”和“垂直边缘”搞反了。此外还有一个概念叫二阶导数过零点。边缘像素位于灰度从暗到亮的变化带上一阶导数在边缘处达到极值二阶导数在边缘处过零从正变负。Laplacian 检测的就是这个过零点。但二阶导数对噪声放大得更厉害所以实际使用时常先做高斯平滑再做 Laplacian这就是 LoGLaplacian of Gaussian算子的思路。如果考试问你“为什么 Laplacian 对噪声敏感”可以从微分放大了高频分量来回答噪声在频域属于高频二阶微分相当于进一步放大高频。4. 频率域图像处理傅里叶变换与滤波4.1 为什么要去频率域看图像频率域方法的核心工具是傅里叶变换。简单理解傅里叶变换可以把一张图像分解成许多不同频率、不同方向、不同幅度的正弦波分量。低频分量代表图像中灰度变化缓慢的区域比如天空、背景、皮肤高频分量对应灰度变化剧烈的区域比如边缘、纹理、噪声。低通滤波就是保留低频、削弱高频结果图像变得平滑模糊高通滤波保留高频、削弱低频结果图像边缘突出整体变暗。很多初学者会在这里产生困惑空间域里可以用模板做模糊和锐化为什么还要绕到频率域去可以从两个角度回答。其一滤波器的设计灵活性不同。空间域的模板设计往往是经验性的想要精确控制保留哪个频段、衰减哪个频段在频率域更直观。其二某些在空间域看起来特别复杂的操作在频率域就是一次乘法。比如去周期噪声可以用带阻滤波器把频谱中对应噪声频率的一个小范围直接砍掉这种操作在空间域很难实现。4.2 傅里叶变换基础概念频谱图、中心化与能量分布二维离散傅里叶变换DFT的公式可以用一句话概括把图像看作许多正弦波的叠加对每个频率分量计算它的幅度和相位。幅度谱显示各频率分量的强弱相位谱保存位置信息。考试一般不要求背公式但要求理解三个结论。第一图像经过傅里叶变换后频谱是对称的所以显示频谱图时常把原点平移到中心这就是频谱中心化。第二图像能量大部分集中在低频区域所以频谱中心亮、四周暗。第三频谱中有一条亮线往往对应图像中的某种方向性纹理或周期结构这条亮线的方向与纹理方向有关。实际处理时有一个非常容易搞混的点数字图像在计算机里是离散数据做傅里叶变换用的是离散傅里叶变换DFT而不是连续傅里叶变换。DFT 计算量很大所以实现时用快速傅里叶变换FFT。考试如果提到 FFT你只要知道它是 DFT 的快速算法即可不考具体实现流程。4.3 三种频率域滤波器详解频率域滤波器的通用流程是先把图像做傅里叶变换得到频谱把频谱乘以滤波器传递函数 H(u, v)再做逆傅里叶变换得到结果。H(u, v) 决定哪些频率被保留、哪些被衰减。理想低通滤波器ILPF的传递函数在截断频率 D0 以内为 1以外为 0。效果很“暴力”会在图像中产生振铃效应也就是边缘附近出现一圈一圈类似水波的伪影。原因是理想滤波器在频率域有一个陡峭的截止边界逆变换回空间域时对应一个无限长的卷积核造成震荡。考试会问“理想低通为什么会有振铃”答案就是频率截止太陡峭。巴特沃斯低通滤波器BLPF的传递函数是平滑过渡的公式可以写成 H 1 / (1 (D / D0)^(2n))n 是阶数。阶数越低过渡越平滑振铃越小阶数越高越接近理想低通。高斯低通滤波器GLPF的过渡最平滑没有振铃但平滑效果相对温和边缘保留得不如巴特沃斯。滤波器类型过渡特点振铃效应平滑效果理想低通截断陡峭明显强但伴随伪影巴特沃斯低通可控过渡小可调常用高斯低通无振铃无温和自然高通滤波是低通的反向操作保留高频、衰减低频。理想高通同样有振铃问题高斯高通则比较温和。高频强调滤波是一种增强高通效果的方法在传递函数中把低频部分保留一点再叠加高通分量公式通常是 H_hfe a b * H_hpa 控制低频保留程度b 控制高频增强程度。这样处理后的图像既保留了整体亮度结构又强化了边缘细节比单纯高通滤波的效果更接近人眼期望。带阻滤波器用于消除特定频率范围的噪声在图像去噪里常用于去除周期性的网纹噪声。带通滤波则相反只保留某个频率范围的成分常用于提取特定纹理。这两种滤波器考得不多但你要能从名字判断带阻是“不要这一段”带通是“只要这一段”。4.4 空间域与频率域的统一视角学完两个域之后一定要能互相翻译。卷积定理说空间域的卷积对应于频率域的乘积。也就是说空间域用一个模板去滑动做卷积等价于在频率域把这个模板的傅里叶变换和图像频谱相乘。反过来也成立。这是连接空间域与频率域的最重要桥梁。考试简答题里如果问“空间域均值滤波和频率域低通滤波有什么联系”你可以这样答均值滤波的模板相当于一个低通滤波器它会衰减高频分量因此在频率域可以实现类似的效果但由于均值模板的傅里叶变换不是理想低通所以它的频率响应会有旁瓣造成的模糊效果和理想低通不完全相同。这样的回答既有原理又有层次比单纯背“都是平滑”要得分多。还要明白一个常见误区空间域的模板尺寸直接影响频率响应的截止频率。模板越大在空间域参与的邻域越大等效的频率域截止频率越低平滑效果越强。这解释了为什么 5x5 均值滤波比 3x3 更模糊。题目如果问“为什么模板变大图像更模糊”从频率域解释是最有说服力的。5. 图像复原与去噪从退化模型到逆滤波5.1 退化模型图像变差不是没有原因的图像复原与增强的区别前面说过增强是主观改善视觉效果复原是客观求取原始图像。复原先要建立退化模型。课程里最常见的模型是 g(x, y) h(x, y) * f(x, y) n(x, y)其中 f 是原始图像h 是退化函数也叫点扩散函数* 表示卷积n 是加性噪声。退化函数可能由运动模糊、大气扰动、光学系统散焦等引起。考试常考的退化类型有三个。运动模糊是最直观的拍照时相机或被摄物体移动导致图像里物体沿着运动方向拖出条状尾迹。散焦模糊是镜头对焦不准造成图像整体变柔、边缘不锐利。大气扰动通常指长距离拍摄时受空气湍流影响产生的随机退化。对于这些退化如果退化函数已知理论上可以用逆滤波来复原。5.2 逆滤波与维纳滤波为什么不能直接恢复逆滤波的思路非常直接在频率域中退化过程是 G H * F N那么只要用 G 除以 H就能得到 F 的估计值。也就是 F_hat G / H。但问题在于H 在有些频率上可能趋近于 0甚至等于 0这时候除法的结果会被噪声主导复原出的图像全是噪声放大的雪花点。换句话说逆滤波对噪声极其敏感尤其当你不知道精确的噪声水平时几乎没法直接用。维纳滤波是逆滤波的改进版它把噪声功率谱和原图像功率谱的比值引入公式在复原和抑噪之间做折中。维纳滤波的传递函数一般写作 W H* / (|H|^2 P_n / P_f)其中 H* 是 H 的共轭P_n 是噪声功率谱P_f 是原始图像功率谱。如果噪声为零维纳滤波就退化成逆滤波所以逆滤波其实是维纳滤波在无噪声情况下的特例。考试不会让你手算维纳滤波但会问“维纳滤波和逆滤波相比有什么优点”标准答法是维纳滤波可以在去除退化影响的同时抑制噪声放大对噪声有更好的鲁棒性。5.3 噪声模型椒盐噪声、高斯噪声与周期噪声噪声模型在去噪和复原里都是一个核心考点。常考的有三种。高斯噪声是最常见的噪声模型幅度服从高斯分布每个像素都受到微小干扰表现为颗粒状纹理。它会影响图像每个部分不分亮暗区域。消除它常用高斯滤波、均值滤波或维纳滤波。椒盐噪声也叫脉冲噪声随机把一些像素变成纯黑或纯白像撒了一把盐和胡椒粉。它的特点是只影响个别像素不影响整体因此用中值滤波效果极好。周期噪声在空间域呈现规律性变化的条纹或网纹在频率域表现为特定频率处的尖峰所以用带阻滤波器最有效。噪声类型空间域表现频率域特征最有效处理方式高斯噪声全面颗粒感全频段都有高斯滤波、维纳滤波椒盐噪声黑白孤立点高频尖峰中值滤波周期噪声规律条纹/网纹离散尖峰带阻滤波这里要注意一个概念均值滤波对高斯噪声有效但会模糊细节中值滤波对高斯噪声效果一般但对椒盐噪声几乎是特效药。如果考题问“图像中存在大量椒盐噪声选择哪种滤波”优先写中值滤波不要写均值滤波。很多选择题就在这里挖坑均值滤波确实能让椒盐噪声点的值变得不那么极端但并不能真正把黑点和白点消除只是把黑点变灰、白点变灰细节也糊了。6. 形态学图像处理结构与运算6.1 形态学基础结构元素决定了处理效果形态学处理通常用于二值图像也可以扩展到灰度图像。它的核心操作只有两个腐蚀和膨胀。腐蚀就是把图像中的亮区域“瘦一圈”膨胀就是把亮区域“胖一圈”。两个操作都依赖一个结构元素通常是一个小矩阵结构元素的形状和大小决定了侵蚀或扩张的程度。结构元素可以理解成一把刷子刷子的形状决定了画出来的痕迹。常用结构元素有十字形、矩形、圆形、线段。比如 3x3 十字形结构元素只考虑上下左右四个方向而方形结构元素考虑周围八个方向。结构元素越大腐蚀或膨胀的效果越明显。6.2 腐蚀、膨胀、开运算、闭运算全解析腐蚀的定义是当结构元素完全位于图像亮区域内时把结构元素的原点位置标记为1否则为0。直观效果就是亮区域的边界向内收缩。如果图像中有两个靠得很近的亮目标腐蚀可能把它们彻底分开。膨胀的定义是只要结构元素与图像亮区域有交集就把结构元素原点位置标记为1效果是亮区域边界向外扩展。膨胀可以连接原本断裂的目标也可以填补小孔。开运算是先腐蚀后膨胀作用是去掉小的亮噪点、断开细的连接、平滑大物体边界。闭运算是先膨胀后腐蚀作用是填充小孔、连接断裂的目标、平滑边界的同时不改变物体面积。这两个复合运算在考试里非常容易混我提供一个记忆方法开运算“开”掉了物体上的小突起让边界变干净闭运算“闭”上了物体里的小孔洞让目标变完整。练习题里常见的一种题型是给定一个二值图像矩阵和结构元素手动画出腐蚀或膨胀的结果。手算时的方法是把结构元素看成一个原点在中心的窗口逐个像素判断是否满足条件。腐蚀要全部覆盖才保留膨胀只要碰着就算。边界处的处理直接影响结果考试里如果没特别说明通常认为图像外的像素背景为0。6.3 形态学边缘检测与常用组合应用形态学操作还可以提取边缘。一种常用方法是用原图减去腐蚀后的图得到的就是物体外边缘。比如 A - erosion(A) 提取的是物体边界A 是二值图像erosion(A) 是腐蚀结果。这个操作利用的是腐蚀使亮区边界内缩相减后剩下的恰好是原边界一圈。同理dilation(A) - A 可以提取外边界周边区域。形态学处理在期末卷子里的另一类大用途是图像预处理。比如先做开运算去掉细小噪点再做闭运算填补目标内部的小孔最后用边缘提取得到轮廓。这种组合题不会让你实际处理大图而是给你小矩阵让你算几轮。熟练之后你会发现形态学计算是最容易拿分的一类题因为它规则明确不涉及复杂的浮点运算只要细心逐像素操作即可。唯一的坑是结构元素原点不一定在中心需要仔细看图。7. 图像分割与边缘检测从像素到目标7.1 图像分割的本质与三大分类图像分割的任务是把图像划分成若干互不重叠的区域每个区域内部具有某种相似性不同区域之间差异明显。分割结果的“好坏”有时候并不唯一同一幅图可以用不同尺度分成不同粒度的区域。期末常考的分割方法大致分三类基于边缘的分割、基于阈值的分割、基于区域的分割。基于边缘的方法依靠梯度、边缘检测算子找到边界然后连接边界形成闭合区域。基于阈值的方法设定一个或多个灰度阈值把像素分成前景和背景。基于区域的方法从种子点开始把相似的邻域像素不断并入区域常见有区域生长和分裂合并。题目经常问“图像分割方法有哪些”列出这三类并各举一例得分率很高。7.2 阈值分割全局阈值、自适应阈值与OTSU阈值分割是最基本的分割方法。最简单的形式是设定一个全局阈值 T灰度大于 T 的像素设为1小于等于 T 的设为0。当目标和背景灰度分布有明显分界时全局阈值很有效。但如果光照不均匀图像不同区域的亮度差异很大一个固定阈值就不够了这时要用自适应阈值比如把图像分成若干小块每个小块分别算阈值。OTSU大津法是考试中综合题常考的一种自动选阈值方法。它的核心思想是选定一个阈值后把像素分成前景和背景两类计算这两类之间的类间方差方差越大说明两类差别越大选择使类间方差最大的那个灰度作为最终阈值。题目如果给你一张小图像的灰度直方图让你用OTSU求最佳阈值一般不会让你穷举所有灰度级而是给几个候选灰度让你比较类间方差。要会算类间方差公式类间方差 前景占比 * 背景占比 * (前景均值 - 背景均值)^2。这个公式要记牢计算量不大但容易在前面算占比时分心出错。7.3 边缘检测的三个步骤与整体流程边缘检测不只是用算子卷积一下就完了完整流程可以分成四步去噪、增强、检测、定位。去噪是为了减少噪声对边缘定位的干扰增强是突出灰度变化大的点检测是设定阈值判断哪些像素算边缘定位是确定边缘的精确位置。考试简答题问“边缘检测的一般步骤”把四步写出来简单解释即可。此外还有一个概念叫非极大值抑制常用于细化边缘。边缘检测算子的响应通常在边缘附近是一段较宽的带非极大值抑制就是在梯度方向上只保留局部最大值点把非最大值置零让边缘变成“细线”。这个术语在试卷里偶尔出现理解它的作用就好。7.4 区域生长从种子点开始长大区域生长是一种典型的基于区域的分割方法。基本流程选一个或多个种子点设定相似性准则从种子出发不断把邻域中满足相似性条件的像素并入区域直到没有新的像素可以加入。相似性准则通常是灰度差小于某个阈值也可以是颜色、纹理相近。种子点选择很关键种子选在不同的地方可能长出不同的区域。如果题目给出一幅小矩阵要求你用区域生长分割那就要注意判断顺序建议从种子开始按四邻域逐步扩展每并入一个像素就更新区域均值再用新均值去判断下一个邻域像素。这种迭代式做法虽然慢但更符合算法本意出题人通常也是这个思路。8. 图像压缩信息冗余与编码8.1 压缩的本质去掉你不需要的信息图像压缩的目标是用更少的比特数表示图像信息。压缩可行是因为图像中存在大量冗余。冗余主要有三种编码冗余、空间冗余、心理视觉冗余。编码冗余指像素灰度级出现的概率不均等对出现概率高的灰度级用短码概率低的用长码就能减少平均码长。空间冗余就是图像中相邻像素具有很强的相似性比如大片的天空蓝色每个像素值几乎一样完全可以预测和差分编码。心理视觉冗余是人类视觉对某些信息不敏感可以去掉而不引起明显质量下降比如对高频细节适度的模糊人眼往往察觉不到这就有损压缩的理论基础。考试中经常把“冗余类型”作为选择题或简答题。题目可能问“为什么图像可以压缩”你就从三类冗余展开来说。如果再问“无损压缩靠的是什么冗余”回答是编码冗余和空间冗余有损压缩则还可以利用心理视觉冗余。8.2 编码效率与哈夫曼编码手算无损压缩的经典算法是哈夫曼编码。它根据符号出现概率构建一棵二叉树概率越大的符号路径越短码字越短。计算步骤是按概率从大到小排序每次取概率最小的两个节点合并成一个新节点新节点概率为两者之和继续参与排序直到只剩一个根节点。然后从根节点出发给左分支标0右分支标1从根到叶子路径上的数字就是该符号的码字。考试中通常会给几个灰度级的概率让你画哈夫曼树并写出每个灰度级的码字。画哈夫曼树有几个常见的坑。第一排序后如果出现概率相同的节点合并顺序不同会导致码字不同但平均码长仍然可能是最优的所以不要纠结于跟参考答案完全一致。第二新节点生成后要重新插入排序队列不要漏掉它。第三码字必须满足前缀性也就是任何一个码字都不是另一个码字的前缀否则解码会出问题。编码效率的计算公式先算平均码长 L_avg sum( p_i * l_i )再算信息熵 H -sum( p_i * log2(p_i) )编码效率是 H / L_avg * 100%。如果平均码长等于信息熵效率就是100%但这通常很难达到。等长编码的效率可能很低哈夫曼编码的目的就是让平均码长尽量接近熵。我举个手算例子。假设四个灰度级概率分别是 0.5、0.25、0.125、0.125。信息熵 H -0.5log2(0.5) -0.25log2(0.25) -0.125log2(0.125)2 0.5 0.5 0.375 0.375 1.75 比特/像素。如果用等长编码需要2比特/像素效率 1.75/2 87.5%。如果构建哈夫曼树0.5编码为01比特0.25编码为102比特0.125编码为1103比特0.125编码为1113比特平均码长 L_avg 0.51 0.252 0.1253 0.1253 1.75 比特/像素效率100%。这说明当概率分布是2的负整数次幂时哈夫曼编码可以达到熵极限。8.3 有损压缩变换编码与JPEG有损压缩的典型代表是JPEG。JPEG 的流程可以总结为几个步骤颜色空间转换、分块通常8x8、离散余弦变换DCT、量化、熵编码。其中最关键的是 DCT 与量化。DCT 把图像块从空间域变换到频率域得到64个频率系数能量集中到低频部分。量化阶段用一个量化表去除人眼不敏感的高频细节高频系数被量化成很多0这就是压缩的主要来源。最后对量化系数做游程编码和哈夫曼编码进一步压缩。考试常问“为什么 JPEG 是有损压缩”标准回答是量化过程会丢弃一部分高频信息这些信息无法完全恢复因此重建图像与原图不等。另一个常考概念是“压缩比”表达式是原始数据量除以压缩后数据量比如 10:1 代表压缩后数据量是原来的 1/10。压缩比越高图像质量下降通常越明显但感知质量取决于具体内容和观看着。还要掌握游程编码RLE。它把相邻的重复值表示成“值 重复次数”比如“AAAAAAABBBB”可以编码成“A7B4”。如果图像中有大片相同灰度区域RLE 压缩效率很高如果图像纹理复杂、相邻像素差异大RLE 反而可能使数据量增大。所以题目问“RLE 适合什么图像”答案是灰度级分布集中、空间冗余大的图像。有损和无损压缩的对比也是简答常客。对比项无损压缩有损压缩信息保持完全可逆不可完全恢复典型算法哈夫曼、游程编码、LZWJPEG、变换编码压缩比较低较高适用场景医学图像、文本、证件图像自然图像、视频、网络传输9. 实操过程期末冲刺的复习与刷题方法9.1 按题型刷题计算题优先建立肌肉记忆期末复习最后一周不建议再从头看课件了而是按题型刷题。计算题刷熟了这些固定套路在考场上就是你最稳的得分点。题型核心算法易错点建议练习数量直方图均衡化累积分布函数映射忘了归一化合并灰度级后忘记重新统计3题空间滤波计算模板卷积/排序取中值忘记模板归一化边界像素处理不一致示例题5-6张图边缘检测Sobel/Prewitt 梯度幅值水平和垂直方向混淆公式用错近似3题形态学计算腐蚀/膨胀逐像素判断结构元素原点位置考虑不周3题哈夫曼编码建树、写码、算平均码长合并顺序混乱概率排序漏项2题刷题时不要只在脑子里算一定要手写步骤。手写有好处一是能暴露你漏掉了归一化或漏了新节点重新排序的问题二是能提高做题速度免得考场上计算到一半卡壳。我刷完一套题会把出错的地方整理成一张“错误提醒卡”考前十分钟扫一眼效果比再看一遍课本好得多。9.2 简答题的万能答题结构现象-原理-公式-代价简答题失分往往是因为答得太浅。很多人只写一句“中值滤波可以去除椒盐噪声”就结束了这在老师眼里只能拿一半分。更完整的答法是用“现象-原理-公式-代价”四段式。以中值滤波为例现象是图像中存在黑白孤立噪点原理是中值滤波取邻域排序后的中间值椒盐噪声是极值排序后必然在序列两端不会影响中位数操作是 g median(f 邻域)代价是对于细节丰富的区域中值滤波可能损失细线等结构并且对高斯噪声效果有限。这样的答案有理有据每点都有对应分。“为什么”类问题比如“为什么高通滤波后的图像整体偏暗”答案也可以套这个结构高通滤波保留亮度突变抑制平缓区域而平缓区域才是图像的主要亮度贡献传递函数 H 在低频处很小尾部直流分量被削弱所以整图平均灰度下降。这种答法不仅有结论还把频率域原理和图像亮度分布联系起来了。9.3 易混淆概念速查表下面这张表是我复习过程中反复整理的考前过一遍可以有效避免概念混淆。易混淆组快速区分要点采样 vs 量化采样取位置量化取值级增强 vs 复原增强是主观改善复原有退化模型均值滤波 vs 中值滤波均值是线性加权中值是非线性取中位数腐蚀 vs 膨胀腐蚀是亮区瘦身膨胀是亮区增胖开运算 vs 闭运算开腐蚀后膨胀去小噪点闭膨胀后腐蚀填小洞空间域卷积 vs 频率域乘法卷积定理两边等价一个对应另一个低通 vs 高通低通保留低频平滑高通保留高频边缘无损压缩 vs 有损压缩无损可逆有损不可逆理想低通 vs 高斯低通理想有振铃高斯无振铃逆滤波 vs 维纳滤波维纳在逆滤波基础上抑制噪声放大9.4 数据结构化整理构建自己的两页纸复习到后期可以试着把所有知识点压缩到两页A4纸。第一页写主干脉络从数字化到增强到分割到压缩每个模块只写三行核心内容和两个公式。第二页写易错点和易混淆概念。压缩的过程本身就是一次深度复习因为你得判断哪些才是核心考点、哪些只是边角料。我自己整理完这两页纸后刷题的正确率提升很明显因为脑子里不再是一堆松散知识点而是一张有层级的地图知道每个公式属于哪条链路、和哪个知识点相邻。10. 常见问题与实战经验10.1 高频难点逐一破解复习和考试中有些问题反复出现且错误率极高。我把它们统一记录下来并附上自己采用的解决办法。“拿到直方图均衡化计算题总是算错怎么办”我踩过最大的坑是忘记把累积概率进行到最后一个灰度级时验证等于1。另一个常见错误是映射公式中把 (L-1) 漏掉导致映射值偏小。解决办法列一张六列的表原始灰度、像素数、概率、累积概率、映射值、新像素数按列填充最后检查所有新灰度级的像素总数等于原总像素数。“如何快速判断一幅图像适用哪种滤波器”看到明显黑白极值点优先想中值滤波看到全面均匀的颗粒感优先想高斯滤波看到周期条纹优先想频域带阻滤波。题目给一张带噪图让你选择合适的滤波方法你除了写滤波名称还要写一句“因为该噪声在频域属于高频/在该频段所以用XX滤波可以保留其他信息”。“Sobel算子的梯度方向老弄反怎么记忆”Gx 模板左右有非零值所以它检测的是水平方向灰度变化响应的是垂直边缘。你可以反过来记哪个方向有变化哪个方向就是梯度方向而你看到的“边缘”是和梯度方向垂直的。Gx 梯度方向是水平方向因此看到的边缘是垂直边缘。这个关系在答题时画一个箭头就能帮助自己理清。“空间域滤波和频率域滤波有什么关系”卷积定理是桥梁。空间域模板和图像卷积等于把模板傅里叶变换后再与图像频谱相乘。空间域均值模板越大对应的低频截止越低图像越模糊。答题时先写公式再解释公式含义最后带一句“这就解释了为什么模板增大后平滑效果增强”逻辑完整。“区域生长分割结果不唯一怎么办”区域生长本身依赖种子点、相似性阈值和邻域定义。不同选择得到不同结果很正常。答题时先写步骤再说明你采用的相似性准则比如灰度差小于等于5最后指出结果受参数影响体现你对方法本质的理解。“带阻滤波器的参数怎么理解”带阻滤波器要设置两个频率一个是最低截止频率和一个最高截止频率或者一个中心频率加带宽。它只削弱这两者之间的频率成分。考题如果给一张有周期网纹的图像问你用什么滤波答“带阻滤波滤除噪声对应频率分量”即可不必死记参数公式。10.2 考场上容易丢分的细节边缘像素的值怎么算如果题目没说明模板越界部分通常按0处理或直接跳过。考试时如果表格边缘有一圈0往往意味着命题人希望你把它当作边界外补充值别忽略。如果题目给的是图像矩阵边界外的值未定义直接忽略不写但在答案里标注“边界像素未计算”反而更稳妥。求梯度幅值用什么近似如果题目给了平方和开方的公式务必按公式算不要直接加绝对值。如果题目要求“简化计算”再使用 |Gx| |Gy|。两种结果不同答题前看清题目要求。图像压缩效率计算时保留几位小数除非题目指定通常保留两位小数即可。但信息熵的中间计算过程建议保留更多小数避免最终结果误差累积。结构元素原点不在中心怎么办如果结构元素是数组会有一个位置标记为原点比如方形矩阵右上角标0。腐蚀和膨胀都以这个原点为锚点来判断不要习惯性地当作中心。做题时先用笔圈出结构元素的原点。10.3 复习时间不够时的取舍建议如果距离考试只剩下两天我的做法会是这样第一天专心搞定直方图均衡化手算、均值/中值/高斯滤波手算、Sobel 边缘检测手算、哈夫曼编码手算这四类计算题每种至少完整写三题。第二天上午过一遍简答题对照表和概念辨析表下午做一份完整的模拟卷只做选择题、填空题和简答题计算题挑两道练手。不管时间多紧张都不要完全放弃形态学计算因为它规则简单、一旦掌握就是白送分。提示计算题练习时最好使用网格纸方便对齐矩阵。直方图均衡化和哈夫曼编码的表格都需要对齐列数据网格纸能省下不少答题卡上画的功夫。10.4 这份笔记还能怎么用这份笔记适合三类场景。第一是期末复习尤其适合考前一周每天过一章搭配自己的课件和作业题使用。第二是课程设计前快速回顾比如要做图像增强或分割的实验时翻到对应章节直接参考公式和流程能减少翻书找公式的时间。第三是准备复试或面试前梳理知识框架用文章开头那张概念网和最后的易混淆表作为口述提纲。如果你发现自己在做某类计算题时特别卡顿问题往往不是计算能力而是对概念的理解不够深入。这时候不要继续盲目刷题回到对应章节把“为什么这么做”读一遍可能比多做三套题更有效。考试不只是考计算更考你对这套从像素到目标的处理链路是否建立了整体认识。把链路弄清楚题目怎么变你都能找到对应的知识点去作答。我个人复习过程中最有价值的一步是最后把整门课压缩成了一张思维导图。不是从课件上抄而是闭卷默写只凭记忆画出各章节之间的关系。第一次默写只能写出七成对照笔记补漏之后那些模糊的知识点就变成了长期记忆。如果你时间充裕强烈建议也这样试一试你会发现考前那种“全都会但说不清”的焦虑会少很多。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/16 16:55:10
语言模型入门:从n-gram到Transformer的演进与实践笔记
2026/10/16 16:55:10
MobileNet深度可分离卷积与倒残差结构原理解析
2026/10/16 16:55:10
OpenCV实现张正友相机标定:20张棋盘图搞定内参与畸变矫正
2026/10/16 18:50:44
speechbrain中文预训练模型:快速上手中文语音转写与调试指南
2026/10/16 18:50:44
人脸识别技术原理与CNN实现:从特征提取到工程落地
2026/10/16 18:50:44
Hive面试高频题实战解析:从执行计划到ACID治理
2026/10/16 18:50:44
MATLAB轴承故障特征频率计算与包络谱对齐实战
2026/10/16 18:50:44
OLT板卡状态与光猫注册故障排查实战笔记
2026/10/16 18:45:43
图像卷积核全解析:从平滑去噪到边缘检测的OpenCV实践
2026/10/16 0:04:49
HCIA-AI V3.5 模拟题库从零搭建:知识点标签、组卷算法与错题分析
2026/10/16 0:04:49
游戏项目Shader清理实战:静态扫描与动态验证双轨并行
2026/10/16 0:04:49
比特币白皮书深度拆解:从双重支付到共识机制的核心设计
2026/10/16 1:17:36
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/16 1:17:35
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/16 1:17:35
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/16 1:17:35
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/16 18:46:48
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/16 18:46:46
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)