阴影校正

阴影校正模块可对光照不均匀图像进行光照校正,弱化光照阴影的影响。

本节内容包含:

模块原理

阴影校正是一种计算“输入和背景的差值”图像的算法,同时可选择屏蔽指定方向的纹理背景。下图示例中屏蔽了Y方向的栅线纹理。

图 1 阴影校正效果

该模块的算法工作流程如下:

图 2 算法工作流程
背景图计算

采用均值滤波方式计算背景图。

  • 当方向为X方向时,滤波窗口尺寸为(kernel_size,1)。

  • 当方向为Y方向时,滤波窗口尺寸为(1,kernel_size)。

  • 当方向为XY方向时,滤波窗口尺寸为(kernel_size, kernel_size)。

此处的变量kernel_size表示滤波核尺寸,可通过下文参数配置中提及的滤波尺寸配置。

差值图计算
  • 当目标图像灰度值大于背景灰度值,需降低亮噪声。此时差值图像逐像素计算公式如下:

    图 3 计算公式(目标图像灰度值大于背景)
  • 当目标图像灰度值小于背景灰度值,需降低暗噪声。此时差值图像逐像素计算公式如下:

    图 4 计算公式(目标图像灰度值小于背景)

以上两个公式中:

  • Dst(i,j)表示结果图像第i行j列的像素点的灰度值。

  • src(i,j)表示原图像第i行j列像素点的灰度值。

  • back(i,j)表示背景图第i行j列像素点的灰度值。

  • gain表示增益;noise表示噪声;offset表示亮度校正补偿。

此处的变量gain、noise和offset,分别可通过下文参数配置中提及的增益/噪声亮度校正补偿配置。

使用方法

阴影校正模块对其在流程中的前后序模块无特定要求,符合图像处理逻辑即可。

以下应用示例中,通过阴影校正将光照不均匀且带有字符的图片进行阴影校正,再将校正后图像输出给DL字符识别识别字符。

图 5 应用示例:字符检测
图 6 字符图像阴影校正效果

参数配置

以下仅介绍该模块的运行参数详情。通过配置运行参数,可定义当前模块如何处理输入的数据。

说明:
表 1 运行参数

参数

描述

滤波尺寸

滤波核的大小,取值范围1~50。滤波核越大滤波越平滑

增益

增强前景目标,取值范围0~100

亮度校正补偿

对图像整体灰度水平进行调整,取值越高图片整体灰度越高,取值范围0~255

噪声

干扰像素灰度阈值,取值范围0~255。灰度值低于该值的像素点,其灰度值将被置为0

方向

包括“X”、“Y”以及“XY”3种方向,表示滤波核的方向

模块结果

该模块输出结果中各项参数详情,请参见阴影校正模块的输出结果