Halcon算子 binary_threshold、auto_threshold、dyn_threshold

embedded/2025/3/5 21:43:49/
算子适用场景特点
threshold全局对比度高或均匀光照图像固定阈值、速度快
binary_threshold自动计算阈值(基于直方图或Otsu)自动化、但无法处理光照不均匀
dyn_threshold光照不均匀、局部对比度变化动态调整阈值,灵活性强

自动阈值分割  auto_threshold

根据图像的灰度直方图自动确定阈值

使用自动阈值,可以适当滤除一定的边缘干扰

auto_threshold (Image, Regions, Sigma)
  • Image: 输入单通道图像
  • Regions:  输出的区域,每个区域对应一个灰度值区间
  • Sigma: 用于直方图高斯平滑的标准差    默认值:2   Sigma值越大,提取的区域就越少 
read_image (Image1, 'F:/Halcon/‫Image/5-2.png
auto_threshold (Image1, Regions1, 5)
dev_display (Regions1)

 

动态阈值分割  dyn_threshold

使用动态阈值可以有效的对应光照不均匀或背景变化较大(对比度变化)的图像分割问题

dyn_threshold (Image, ImageMean, RegionDynThresh, Offset, LightDark)
  • OrigImage:           原始图像
  • ThresholdImage:    参考图像,通过对原始图像进行平滑滤波等预处理生成
  • RegionDynThresh:    输出的分割区域
  • Offset:                 阈值偏移量;值越大检测越严格;值越小,检测越宽松
  • LightDrak:        提取的目标类型,'light'(更亮区域);'dark'(更暗区域);'equal'(与参考图像相似区域);'not_equal'(差异较大区域)
read_image (Image2, 'photometric_stereo/embossed_01.png')
get_image_size (Image2, Width1, Height1)
dev_open_window_fit_size (0, 0, Width1, Height1, -1, -1, WindowHandle1)
mean_image (Image2, ImageMean, 59, 59)
dyn_threshold (Image2, ImageMean, RegionDynThresh, 10, 'not_equal')

 

直方图去顶阈值  histo_to_thresh

通过平滑直方图提取直方图中的最小值来确定阈值

大白话: 从灰度直方图确定阈值

histo_to_thresh (Histogram, Sigma, MinThresh, MaxThresh)
  • Histogram:  灰度值直方图,可以是绝对直方图或相对直方图
  • Sigma:   用于高斯平滑的Sigma值。默认是2.0   会影响阈值的提取效果,值越大提取区域越少
  • MinThresh:  最小阈值
  • MaxThresh:  最大阈值 
dev_close_window ()
dev_update_off ()
read_image (Image, 'F:/Halcon/‫Image/5-1.png')
get_image_size (Image, Width, Height)
dev_open_window_fit_size (0, 0, Width, Width, -1, -1, WindowHandle)
dev_set_color ('red')
gray_histo (Image, Image, AbsoluteHisto, RelativeHisto)
histo_to_thresh (AbsoluteHisto,5, MinThresh, MaxThresh)
dev_set_colored (12)
threshold (Image, Regions,MinThresh[0],MaxThresh[0])
dev_display (Regions)

 


二值化阈值  binary_threshold

binary_threshold(Image, Region, MinGray, MaxGray, Method)
  • Image:  输入图像,可以是单或多通道
  • Region:  输出的二值图像区域
  • Method:    分割方法
    • ‘max_separability’最大限度的可分性
    • ‘smooth_histo’  直方图平滑
      • max比smooth 速度要快
  • LightDark:  ‘dark’(暗区域);‘light’(亮区域)
  • UsedThreshold:  自动阈值使用的阈值
read_image(Image, 'fabrik')
rgb1_to_gray(Image, GrayImage)
binary_threshold (GrayImage, Region, 'max_separability', 'dark', UsedThreshold)


http://www.ppmy.cn/embedded/170302.html

相关文章

麒麟V10-SP2-x86_64架构系统下通过KVM创建虚拟机及配置虚机的NAT、Bridge两种网络模式全过程

文章目录 一、什么是虚拟化?虚拟化具有哪些优势 二、常见的虚拟化技术1、kvm介绍2、kvm工作原理3、kvm功能 三、安装kvm并启动第一个kvm机器1、环境准备2、安装kvm工具3、启动并设置开机自启 libvirtd 服务4、验证 KVM 模块是否加载5、上传系统镜像到指定目录6、网络…

JWT概念及JAVA使用

前言 JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案 认证方式 认证方式一般有两种 session认证JWT认证 一、session认证 1、步骤 过去,我们都是使用session认证,步骤如下 前端访问登录接口登录接口验证完账号密码没问…

Linux与UDP应用1:翻译软件

UDP应用1:翻译软件 本篇介绍 本篇基于UDP编程接口基本使用中封装的服务器和客户端进行改写,基本功能如下: 从配置文件dict.txt读取到所有的单词和意思客户端向服务端发送英文服务端向客户端发送英文对应的中文意思 配置文件内容 下面的内…

大白话React Hooks(如 useState、useEffect)的使用方法与原理

啥是 React Hooks 在 React 里,以前我们写组件主要用类(class)的方式,写起来有点复杂,尤其是处理状态和副作用的时候。React Hooks 就是 React 16.8 之后推出的新特性,它能让我们不用写类,直接…

211.SpringSecurity:认证、授权概念,自定义数据源认证,验证码认证

目录 一、权限管理概念 1.基本概念 2.常用权限管理解决方案 (1)Shiro (2)Spring Security 二、整体架构 1.认证:Authentication (1)AuthenticationManager (2)Authentication (3)SecurityContextHolder 2.授权:Authorization (1)AccessDecisionManag…

面试常问的压力测试问题

性能测试作为软件开发中的关键环节,确保系统在高负载下仍能高效运行。压力测试作为性能测试的重要类型,旨在通过施加超出正常负载的压力,观察系统在极端条件下的表现。面试中,相关问题常被问及,包括定义、重要性、与负…

计算机毕设JAVA——某高校宿舍管理系统(基于SpringBoot+Vue前后端分离的项目)

文章目录 概要项目演示图片系统架构技术运行环境系统功能简介 概要 网络上许多计算机毕设项目开发前端界面设计复杂、不美观,而且功能结构十分单一,存在很多雷同的项目:不同的项目基本上就是套用固定模板,换个颜色、改个文字&…

大模型的实践应用36-基于AI Agent和通义千问大模型,支持多轮问答的智能问数和数据分析的应用场景

大家好,我是微学AI,今天给大家介绍一下大模型的实践应用36基于AI Agent和通义千问大模型,支持多轮问答的智能问数和数据分析的应用场景。 文章目录 一、整体框架功能概述(一)深度解析多轮对话在数据查询需求确定中的关键作用(二)明确查询相关要素的重要性框架结构(一)…