halcon图像增强之分段灰度拉伸2

前言

在图像去噪以后,图像经常变得模糊,图像对比度减小,为了增强图像对比度,我们可以指定需要拉伸的灰度范围来对感兴趣的灰度进行拉伸,同时也可以将被拉伸的灰度拉伸到指定的灰度范围。

1、分段灰度拉伸原理

该算子通过指定一个源灰度区间 [Min, Max],将该区间线性拉伸到指定的输出范围[DstMin, DstMax] 。在此区间之外的像素,其灰度值会被剪切为输出范围的最小值或最大值[DstMin, DstMax]。

基本公式:

scale_image_range(Image, ScaledImage,[Min, DstMin],[Max, DstMax])

其内部执行的操作等效于以下逻辑:

剪切:将图像中所有小于 Min 的像素值设为DstMin(输出最小值),所有大于 Max 的像素值设为DstMax(输出最大值)。

线性映射:将灰度值在 [Min, Max] 区间内的像素,线性映射到 [DstMin, DstMax]的范围。

2、halcon算子应用

csharp 复制代码
dev_open_file_dialog ('read_image', 'default', 'default', Selection)
read_image (Image, Selection)
scale_image_range (Image, ImageScaled1, [100,0], [200,50])

灰度拉伸scale_image_max算子总共有4个参数,如下:

第1个参数是输入图像

第2参数是灰度拉伸后的输出图像

第3个参数是被拉伸的最小灰度以及拉伸后输出的最小值

第4参数是被拉伸的最大灰度以及拉伸后输出的最大值

3、图像处理后效果

1)处理前

2)处理后

上面的代码将灰度处于100到200的图像拉伸到0到50,对于灰度小于100的直接置为0,对于灰度大于200的直接置为50

马工撰写的年入30万+C#上位机项目实战必备教程(点击下方链接即可访问文章目录)

1、《C#串口通信从入门到精通》

2、《C#与PLC通信从入门到精通 》

3、《C# Modbus通信从入门到精通》

4、《C#Socket通信从入门到精通 》

5、《C# MES通信从入门到精通》

6、《winform控件从入门到精通》

7、《C#操作MySql数据库从入门到精通》

以上教程CSDN订阅已超过2000+~

相关推荐
xiaogutou11217 小时前
2026年历史课件PPT模板选购指南:教师备课效率与精度的平衡方案
开发语言·c#
amuzhichuang9 小时前
阿姆智创15.6寸触摸工控一体机,机器视觉与SMT产线智能控制,源头工厂ODM定制方案
机器视觉·工控一体机·smt自动化产线
Eiceblue10 小时前
使用 C# 将 Excel 转换为 Markdown 表格(含批量转换示例)
开发语言·c#·excel
不会编程的懒洋洋12 小时前
WPF XAML+布局+控件
xml·开发语言·c#·视觉检测·wpf·机器视觉·视图
唐青枫12 小时前
别再层层传参了!C#.NET AsyncLocal 异步上下文透传实战
c#·.net
明如正午13 小时前
【C#】托管调试助手 “PInvokeStackImbalance“:的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。
c#
Eiceblue14 小时前
C# 如何实现 Word 转 Excel ?分享两种实用方法
c#·word·excel
天才少女爱迪生14 小时前
word格式规范检测+自动修改【python】
python·c#·word
用户37215742613515 小时前
如何使用 C# 转换 PowerPoint 为 HTML:完整指南
c#
软泡芙15 小时前
【C# 】各种等待大全:从入门到精通
开发语言·c#·log4j