halcon求图像灰度最大值和最小值——min_max_gray

前言

我们在图像处理中有时候需要求图像的最小灰度和最大灰度,本文就来介绍如何实现。

1、halcon算子应用

csharp 复制代码
dev_clear_window()
gen_image_const (Image, 'byte', 3, 3)
get_image_size (Image, Width, Height)
for rowIndex := 1 to Height by 1
    for columnIndex := 1 to Width by 1
        if(rowIndex=1 and columnIndex=1)
             set_grayval (Image, rowIndex-1, columnIndex-1,1)
        endif
        if(rowIndex=1 and columnIndex=2)
             set_grayval (Image, rowIndex-1, columnIndex-1,2)
        endif
        if(rowIndex=1 and columnIndex=3)
             set_grayval (Image, rowIndex-1, columnIndex-1,30)
        endif
        if(rowIndex=2 and columnIndex=1)
             set_grayval (Image, rowIndex-1, columnIndex-1,100)
        endif
        if(rowIndex=2 and columnIndex=2)
             set_grayval (Image, rowIndex-1, columnIndex-1,150)
        endif
        if(rowIndex=2 and columnIndex=3)
             set_grayval (Image, rowIndex-1, columnIndex-1,190)
        endif
        if(rowIndex=3 and columnIndex=1)
             set_grayval (Image, rowIndex-1, columnIndex-1,210)
        endif
        if(rowIndex=3 and columnIndex=2)
             set_grayval (Image, rowIndex-1, columnIndex-1,225)
        endif
        if(rowIndex=3 and columnIndex=3)
             set_grayval (Image, rowIndex-1, columnIndex-1,250)
        endif
    endfor
endfor

threshold (Image, Region, 0, 255)
min_max_gray (Region, Image, 20, Min, Max, Range)

min_max_gray算子用于计算图像最小灰度和最大灰度,该算子有6的参数

参数1是指定计算的区域范围

参数2是输入图像

参数3是截断百分比,取值范围 用于控制从灰度直方图两端移除的像素比例,比如上面的代码的图像总共有9个像素,参数3是20,则灰度直方图两边需要移除的像素个数是9*20%=1.8个像素,4舍5入,需要移除2个像素,灰度直方图中像素从小到大的排列是1、2、30、100、150、190、210、225、250,移除掉灰度小的一边的2个像素1、2,移除掉灰度大的一边的2个像素225、250,所以最终得到的灰度最小值是30,灰度最大值210,灰度范围是210-30=180.

参数4是灰度最小值,参考参数3中描述的计算方式

参数5是灰度最大值,参考参数3中描述的计算方式

参数6是灰度范围,参考参数3中描述的计算方式

2、算子应用后效果


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

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

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

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

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

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

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

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

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

相关推荐
西南胶带の池上桜2 小时前
支持pytorch的模型学习环境创建流程(长期更新)
人工智能·pytorch·学习
DCS_Cloud2 小时前
技术解析 | SpaSEG:基于无监督CNN的空间转录组多任务分析框架
人工智能·神经网络·cnn
星诺算法备案2 小时前
算法备案材料:明晰材料逻辑,构建安全合规的算法体系
人工智能·算法·推荐算法·备案
andyguo2 小时前
深入解析 Open-AutoGLM:AI 驱动的手机 Agent 及其在移动应用测试领域的实战应用(含清晰格式化命令行与运行 Demo)
人工智能·智能手机
paradoxjun2 小时前
训练一个通用且高效的YOLO-pose人体关键点检测模型
目标检测·计算机视觉·人体姿态估计·人体关键点检测·yolo-pose
hans汉斯2 小时前
【软件工程与应用】基于大数据的应急救援云平台构建应用研究
大数据·数据库·人工智能·物联网·系统架构·云计算·汉斯出版社
智源研究院官方账号2 小时前
智源开源 Reason-RFT:用强化学习重塑视觉推理,突破 VLM 泛化瓶颈
人工智能
serve the people2 小时前
tensorflow 零基础吃透:RaggedTensor 的重载运算符
人工智能·tensorflow·neo4j
JoannaJuanCV2 小时前
自动驾驶—CARLA仿真(2)入门指南
人工智能·机器学习·自动驾驶·carla