Halcon图像增强算子(直方图均衡化等)

简介: Halcon图像增强算子(直方图均衡化等)

Halcon中增强图像的对比度也是预处理中的一环,主要有如下方式:


1. 灰度变换


a. scale_image

    原理:可以理解为用一个模板扫描图像中的每一个像素,模板中像素最大值和最小值的差作为模板中心像素点的值。

    作用:拉开图像的对比度,让图像中黑的地方更黑,亮的地方更亮。


    scale_image: g’ := g * Mult + Add g为当前的灰度值,Mult 为所乘的系数,Add为加的偏移值,由公式可以看出用      scale_image来处理图像是个线性变化,会让黑的地方更黑,亮的地方更亮。


b. scale_image_max:将灰度值拉伸到0-255


2. 增强图像对比度


a. emphasize


  增强图像的高频区域(边缘和拐角),使图像看起来更清晰。


 res := round((orig - mean) * Factor) + orig


b. illuminate


   增强图像的高频区域(边缘和拐角),使图像看起来更清晰.


   new = round ( (val - mean) * Factor + orig )


3. 直方图均衡化


a. equ_histo_image


  增强图像的对比度,采用直方图的方式


4.灰度图像形态学

a. gray_opening


   结构元素在图像中滑,灰度值最高的值作为新值,有使图像变亮的作用。 

b.equ_histo_image


 结构元素在图像中滑,灰度值最低的值作为新值,有使图像变暗的作用。 

c. gray_range_rect


 用一个矩形结构元素在图像中滑动,新值 = (矩形中最大的)灰度值-(矩形中最大的)最小的灰度值

5.非线性灰度变换


log_image


pow_image

****对图像进行线性灰度变换*******
dev_clear_window ()
dev_close_window ()
read_image (Image, 'D:/org_R.jpg')
get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
*灰度转化
rgb1_to_gray (Image, GrayImage)
GrayImage_1:= GrayImage
***********************************************************************
*计算图像的灰度值分布
gray_histo (GrayImage, GrayImage, AbsoluteHisto, RelativeHisto)
*获得灰度直方图
gen_region_histo (Region, AbsoluteHisto, 255, 255, 1)
***********************************************************************
dev_close_window ()
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (Image)
************************************************************************
*直方图均衡化
equ_histo_image (GrayImage_1, ImageEquHisto)
gray_histo (Region, ImageEquHisto, AbsoluteHisto1, RelativeHisto1)
*获得灰度直方图
gen_region_histo (Region1, AbsoluteHisto1, 255, 255, 1)
************************************************************************
*增强图像的高频区域(边缘和拐角),使图像看起来更清晰
illuminate (GrayImage_1, ImageIlluminate, Width, Height, 1)
*增强图像的高频区域(边缘和拐角),使图像看起来更清晰
emphasize (GrayImage_1, ImageEmphasize, Width, Height, 1)
*灰度变换
scale_image (GrayImage_1, ImageScaled, 0.9, 10)




---


推荐阅读


https://blog.csdn.net/weixin_43197380/article/details/91129854


相关文章
|
6月前
halcon的灰度变换(图像增强)
halcon的灰度变换(图像增强)
369 1
|
算法 数据可视化
Halcon边缘检测和线条检测(1),文章含自适应/动态二值化等算子
Halcon边缘检测和线条检测(1),文章含自适应/动态二值化等算子
1596 0
|
6月前
halcon算子模板匹配(一)基于形状的模板匹配
halcon算子模板匹配(一)基于形状的模板匹配
881 0
|
3月前
|
计算机视觉
【图像处理】 Halcon 实现图像亚像素边缘检测
如何在Halcon软件中实现图像亚像素边缘检测,包括读取图片、图像阈值化、边界提取、区域扩张、亚像素边缘提取、轮廓拟合和彩色绘图等步骤,并提供了相应的Halcon代码实现和检测效果展示。
97 2
|
5月前
|
算法 C语言 计算机视觉
图像处理之图像快速插值放缩算法
图像处理之图像快速插值放缩算法
35 0
|
6月前
|
算法 计算机视觉
OpenCV高斯差分技术实现图像边缘检测
OpenCV高斯差分技术实现图像边缘检测
|
6月前
|
计算机视觉
[Halcon&图像] 图像增强算子汇总
[Halcon&图像] 图像增强算子汇总
274 1
|
6月前
|
算法 计算机视觉
[Halcon&图像] 图像滤波算法原理
[Halcon&图像] 图像滤波算法原理
228 1
|
6月前
|
大数据 计算机视觉
Halcon 学习笔记三:形态学
Halcon 学习笔记三:形态学
236 0
|
6月前
|
算法
[Halcon&图像] 图像阈值分割算法汇总
[Halcon&图像] 图像阈值分割算法汇总
186 0