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+~

相关推荐
一刻钟.1 天前
C#高级语法之线程与任务
开发语言·c#
weixin_307779131 天前
C#实现两个DocumentDB实例之间同步数据
开发语言·数据库·c#·云计算
foundbug9991 天前
基于C#的OPC DA客户端实现源码解析
开发语言·c#
Crazy Struggle1 天前
.NET 中如何快速实现 List 集合去重?
c#·.net
xb11321 天前
C#生产者-消费者模式
开发语言·c#
今晚打老虎z1 天前
解决SQL Server 安装运行时针对宿主机内存不足2GB的场景
sqlserver·c#
Traced back1 天前
# C# WinForms 数据库清理系统基础知识与避坑指南
开发语言·数据库·c#
我要打打代码1 天前
关于C#线程 任务
开发语言·数据库·c#
Traced back1 天前
# C# 基础语法完全指南
开发语言·c#
大黄说说1 天前
TensorRTSharp 实战指南:用 C# 驱动 GPU,实现毫秒级 AI 推理
开发语言·人工智能·c#