Halcon实现工业图像软件平场的简单算法
2017-04-12 18:42
1871 查看
WHY平场
工业视觉系统经常会遇上这样一个问题:光场中光源不均匀,导致图像在横向坐标上呈现出区域性黑白变化,如下图:可以明显看出,图像的中间区域出现了比较严重的暗区。
当然这幅图片不是一个完整的光场区域, 只是光场中若干相机中的一个拍摄出的效果。
对于这种情况,一般而言,现有的工业相机一般都提供一个“平场校正”的功能。一般需要采用一张很均匀的无纹理白色材料作为校正模板,对不均匀的光场进行校正。其原理是通过调整相机内部曝光参数来改达到均匀光场的目的。
但是这种方法对于大幅面光场的校正非常困难,通常无法找到大幅面平整的白色无纹理材料。这个时候,需要通过一些软件的方法来进行处理。
平场的简单逻辑就是:黑的地方变白点,白的地方变黑点,拉平。
所以需要计算一下
1. 横向每坐标位置的背景灰度或者说平均灰度
2. 将原图减去这个平均灰度图像
3. 再对得到的图像做一次灰度标准化
以上的逻辑通过下面一个简单的halcon程序即可实现。
open_file_dialog ('read_image', 'default', 'default', Selection) read_image (Image, Selection) get_image_size (Image, Width, Height) mean_image (Image, ImageMean, 20, Height) sub_image (Image, ImageMean, ImageSub, 1, 128)
得到的处理结果如下图所示:
请注意:软件平场可能会使得图像中细节纹理的对比度下降,这是在决定是否采用平场之前必须考虑的问题,因为光学平场和软件平场对于对比度的保留是完全不同的。
相关文章推荐
- 图像基本处理算法的简单实现(三)
- 图像基本处理算法的简单实现(一)
- 二进制图像压缩算法,2005IEEE一篇文章的实现及简单改进算法
- 图像基本处理算法的简单实现(一)
- 图像基本处理算法的简单实现(三)
- 简单探讨可牛影像软件中具有肤质保留功能的磨皮算法及其实现细节。
- 图像基本处理算法的简单实现(二)
- 图像基本处理算法的简单实现(一) 推荐
- 图像基本处理算法的简单实现(一)
- 简单探讨可牛影像软件中具有肤质保留功能的磨皮算法及其实现细节。
- 简单探讨可牛影像软件中具有肤质保留功能的磨皮算法及其实现细节
- 图像基本处理算法的简单实现(三)
- 图像基本处理算法的简单实现(一)
- 图像基本处理算法的简单实现(二)
- 图像基本处理算法的简单实现(二)
- SSE图像算法优化系列八:自然饱和度(Vibrance)算法的模拟实现及其SSE优化(附源码,可作为SSE图像入门,Vibrance算法也可用于简单的肤色调整)。
- MUSICA(多尺度图像对比度增强)算法的VC实现-2[r]
- APIHOOK之杀毒软件的简单实现
- 病毒及流氓软件自我复制的简单实现(C#)
- MUSICA(多尺度图像对比度增强)算法的简要原理及VC实现-1[r]