趋近智
亮度调整是改变图像整体明暗程度,而对比度调整则处理像素强度值之间的差异。可以将对比度视为图像中较暗和较亮区域之间的分离程度。高对比度图像具有显著差异(深黑色、亮白色),而低对比度图像则显得平淡或模糊,像素强度值集中在一起。
调整对比度是一项重要的技术,用于使图像特征更加分明和美观。提高对比度有助于突出在亮度相似区域中可能模糊的细节。降低对比度有时可用于柔化图像,或为强度变化过大的特定分析做准备。
调整对比度最常用的方法是线性变换,通常称为对比度拉伸。与亮度调整相似,这是一种点操作,意味着每个像素的值都根据其原始值独立修改。
核心思想是缩放像素强度与某个参考水平(通常是中等灰度,如8位图像的128)之间的差异。我们将像素值乘以一个因子,通常用alpha (α) 表示,该因子充当增益或斜率。
一个结合了亮度和对比度调整的通用公式如下:
pout=α⋅pin+β
其中:
如果纯粹调整对比度,我们关注 α 因子:
我们可以通过绘制输出像素值与输入像素值的关系图来显示对比度因子 α 的效果。公式 pout=α⋅pin+β 描述了一条直线。这条直线的斜率由 α 决定。斜率越陡,表示对比度越高。
该图显示了不同对比度因子 (α) 如何改变应用于像素值的变换。更陡峭的斜率 (α>1,蓝线) 拉伸强度范围,增加对比度。更平缓的斜率 (0<α<1,橙线) 压缩范围,降低对比度。虚线灰色线表示没有变化 (α=1)。请注意,确切的输出值还取决于亮度偏移 β,并且所示结果是在应用裁剪之前的。
与亮度调整一样,应用对比度变换可能会导致计算出的像素值 (pout) 超出标准图像格式的有效范围(通常8位灰度或彩色通道的有效范围为 [0, 255])。
例如,增加对比度 (α>1) 可能会将原始的暗值推到0以下,或将原始的亮值推到255以上。降低对比度 (α<1) 可能会将整个原始范围映射到 [0, 255] 内的一个更小的子范围。
为了处理这种情况,我们需要对结果进行裁剪或饱和处理。任何低于0的计算值都设置为0,任何高于255的值都设置为255。
pout,裁剪后=max(0,min(255,pout))
这确保了所有最终像素值都保持在可显示的有效范围内。但请注意,裁剪可能导致调整后图像的极暗或极亮区域细节丢失,因为多个不同的输入值可能会映射到相同的输出值(0或255)。
对比度调整,特别是与使用 pout=α⋅pin+β 公式进行的亮度控制结合使用时,提供了一种简单而有效的方法来修改图像的外观,通常作为更复杂的计算机视觉任务前的一个重要预处理步骤。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造