使用halcon处理射线图像,对高能区域和低能区域分割处理感兴趣区域,筛选区域下的灰度值区间范围。

图像灰度值为16位深度图。

* 读取灰度图像
read_image (Image, '/123.tif')** 获取图像尺寸
get_image_size (Image, Width, Height)* 分割图像为左右两部分(高能量和低能量区域)
gen_rectangle1 (LeftROI, 0, 0, Height-1, Width/2-1)
gen_rectangle1 (RightROI, 0, Width/2, Height-1, Width-1)* 提取左右区域图像
reduce_domain (Image, LeftROI, LeftImage)
reduce_domain (Image, RightROI, RightImage)* 预处理 - 增强对比度
emphasize (LeftImage, LeftEnhanced, 7, 7, 1.0)
emphasize (RightImage, RightEnhanced, 7, 7, 1.0)* 中值滤波去噪
median_image (LeftEnhanced, LeftFiltered, 'circle', 2, 'mirrored')
median_image (RightEnhanced, RightFiltered, 'circle', 2, 'mirrored')* 阈值分割提取矿石区域
threshold (LeftFiltered, LeftRegions, 50, 43055)
threshold (RightFiltered, RightRegions, 50, 43055)* 形态学处理去除小噪点
connection (LeftRegions, LeftConnected)
connection (RightRegions, RightConnected)
select_shape (LeftConnected, LeftOres, 'area', 'and', 500, 9999999)
select_shape (RightConnected, RightOres, 'area', 'and', 500, 9999999)* 计算每个矿石区域的灰度特征
* 高能量矿石区域分析
count_obj (LeftOres, NumLeftOres)
for i := 1 to NumLeftOres by 1select_obj (LeftOres, SingleOre1, i)* 计算区域的平均灰度值intensity (SingleOre1, LeftFiltered, MeanIntensity1, Deviation1)min_max_gray (SingleOre1, LeftFiltered, 0, Min1, Max1, Range1)* 根据灰度值分类if (MeanIntensity1 > 180)Class := 'High-grade ore'Color := 'blue'elseif (MeanIntensity1 > 120)Class := 'Medium-grade ore'Color := 'yellow'elseClass := 'Low-grade ore'Color := 'red'endif* 获取区域边界框smallest_rectangle1 (SingleOre1, Row1, Col1, Row2, Col2)gen_rectangle1 (Rectangle1, Row1, Col1, Row2, Col2)* 显示结果dev_set_color (Color)dev_display (SingleOre1)endfor* 低能量矿石区域分析
count_obj (RightOres, NumRightOres)
for j := 1 to NumRightOres by 1select_obj (RightOres, SingleOre2, j)* 计算区域的平均灰度值intensity (SingleOre2, RightFiltered, MeanIntensity2, Deviation2)min_max_gray (SingleOre2, RightFiltered, 0, Min2, Max2, Range2)* 根据灰度值分类(使用不同的阈值)if (MeanIntensity2 > 150)Class := 'High-grade ore'Color := 'green'elseif (MeanIntensity2 > 90)Class := 'Medium-grade ore'Color := 'yellow'elseClass := 'Low-grade ore'Color := 'red'endif* 获取区域边界框smallest_rectangle1 (SingleOre2, Row1, Col1, Row2, Col2)gen_rectangle1 (Rectangle2, Row1, Col1, Row2, Col2)* 显示结果dev_set_color (Color)dev_display (SingleOre2)endforstop()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/915809.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/915809.shtml
英文地址,请注明出处:http://en.pswp.cn/news/915809.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle From查看弹性域设置

打开弹性与设置:【应用开发员->弹性域->说明性->段】打开后界面如下: 把光标定位到标题,然后点击“手电筒”搜索名称(名称就是你要查询的那个弹性域的名称)我这里就是搜索“附加题头信息”&#xff0…

git初始流程

对于一个新项目,从 Git 仓库拉取 test_tool 分支并进行后续修改提交的完整流程如下: 一、首次拉取项目(克隆仓库并切换分支)克隆远程仓库到本地 打开终端(或 PyCharm 的 Terminal),进入你想存放…

emuelec模拟器 ,s905盒子树莓派街机游戏

EmuELEC支持的盒子类型相当广泛,主要包括使用以下芯片方案的机顶盒等设备: S905系列及其变体:如S905、S905D、S905L、S905M、S905X、S905X2、S905X3、S905X4、S905W、S905Y等。 S912:这也是EmuELEC支持的一个常见芯片方案。 S922x…

Ansible部署

Ansible部署 一、部署环境及前置操作 1、测试环境 注:主机复用原测试环境,主机hostname根据需求调整 硬件环境:N100 x86主机 Proxmox系统 软件环境:Ubuntu 22.04.3 LTS 软件版本:redis-7.4.0.tar.gz 主机环境:主机IP …

智慧教室:科技赋能,奏响个性化学习新乐章

在传统教育模式中,课堂互动的局限性犹如一道无形的枷锁,束缚着学生主动学习的热情与能力。课堂上,往往是教师单向的知识输出,仅有少数学生能获得发言机会,大部分学生只能被动聆听,逐渐在枯燥的学习氛围中丧…

Android埋点实现方案深度分析

埋码是数据驱动业务决策、产品优化、用户行为分析的核心基础,其实现方案的优劣直接影响数据的准确性、完整性、实时性、可维护性以及开发效率。 以下从多个维度对主流方案进行剖析: 一、核心目标与挑战目标: 精准采集: 在用户触发…

万界星空科技铜线/漆包线行业智能化MES系统解决方案

万界星空科技针对铜线及漆包线行业开发的智能化MES系统,专门解决该行业原材料管理复杂、工艺控制严、质量追溯困难等核心痛点。该系统通过数字化手段实现生产全流程的可视化与精准控制,助力企业提升生产效率、降低运营成本并增强市场竞争力。一、行业专属…

Git 完全手册:从入门到团队协作实战(3)

Hello大家好&#xff01;很高兴我们又见面啦&#xff01;给生活添点passion&#xff0c;开始今天的编程之路&#xff01; 我的博客&#xff1a;<但凡. 我的专栏&#xff1a;《编程之路》、《数据结构与算法之美》、《C修炼之路》、《Linux修炼&#xff1a;终端之内 洞悉真理…

使用Docker搭建SearXNG搜索引擎

1、安装Docker# 安装Docker https://docs.docker.com/get-docker/# 安装Docker Compose https://docs.docker.com/compose/install/# CentOS安装Docker https://mp.weixin.qq.com/s/nHNPbCmdQs3E5x1QBP-ueA2、安装SearXNG详见&#xff1a; https://docs.searxng.org/admin/inst…

基于pi/4-QPSK扩频解扩和gardner环定时同步的通信系统matlab性能仿真

目录 1.引言 2.算法仿真效果演示 3.数据集格式或算法参数简介 4.算法涉及理论知识概要 4.1 π/4-QPSK 4.2 直接序列扩频与解扩 4.3 Gardner环定时同步 5.参考文献 6.完整算法代码文件获得 1.引言 π/4-QPSK是一种特殊的QPSK调制方式&#xff0c;其相邻符号间的相位跳变…

CGA老年人能力评估师:提升老年生活质量

一、CGA老年人能力评估师是提升老年生活质量的“导航者” 老年生活质量的提升&#xff0c;始于对老年人真实需求的精准把握。CGA老年人能力评估师正是这样一群“导航者”&#xff0c;他们运用CGA老年综合评估系统&#xff0c;深入了解老年人在生理、心理、社会参与等方面的状况…

开源的大语言模型(LLM)应用开发平台Dify

概述Dify 是一个开源的大语言模型&#xff08;LLM&#xff09;应用开发平台&#xff0c;结合了后端即服务&#xff08;Backend-as-a-Service&#xff09;和 LLMOps 的理念&#xff0c;旨在帮助开发者快速构建生产级的生成式 AI 应用。它通过直观的界面、强大的功能和灵活的部署…

RAG(检索增强生成)里的文档管理

RAG&#xff08;检索增强生成&#xff09;是结合检索与生成式 AI 的技术框架。核心逻辑是先从外部知识库精准检索相关信息&#xff0c;再将其作为上下文输入大模型生成回答。技术上依赖检索引擎&#xff08;如向量数据库、BM25&#xff09;、大语言模型&#xff08;如 GPT、LLa…

床上肢体康复机器人的机械结构设计cad【7张】三维图+设计说明书

摘要 近年来&#xff0c;随着人口老龄化问题的加重&#xff0c;常年卧床的老年人数增多&#xff0c;同时因为各种疾病的原因&#xff0c;患肢体功能障碍的人数也在增加。严重影响着患者的生活质量&#xff0c;同时给社会和家庭增加了很多麻烦。他们迫切希望尽快康复&#xff0c…

主要分布在背侧海马体(dHPC)CA1区域(dCA1)的时间细胞对NLP中的深层语义分析的积极影响和启示

时间细胞&#xff08;time cells&#xff09;作为海马体CA1区域中编码时间信息的神经元&#xff0c;其工作机制对自然语言处理&#xff08;NLP&#xff09;中的深层语义分析具有多方面的启示。这些神经元通过整合时空信息、动态竞争机制和序列编码能力&#xff0c;为解决NLP中语…

数字ic后端设计从入门到精通12(含fusion compiler, tcl教学)全定制设计进阶

标准单元库中几种时序单元介绍 C2MOS触发器C2MOS触发器的工作分为两个阶段&#xff1a; 1&#xff09;φ0&#xff08;φ1&#xff09;时&#xff0c;第一个三态驱动器导通&#xff08;三态门主要体现在&#xff0c;此时主级处于求值模式。同时从级处在高阻抗模式&#xff0c;即…

Qt调试技巧与常见错误解决方法

一、调试工具与环境配置 1.1 Qt Creator调试器集成 Qt Creator内置GDB/Lldb调试器&#xff0c;支持断点、单步执行、变量监视等功能。 启动调试&#xff1a;按F5或点击"Debug"按钮断点设置&#xff1a;在代码行号旁点击添加断点调试工具栏&#xff1a;包含继续、暂停…

VRRP技术(虚拟路由器冗余协议)

1. VRRP的概念及应用场景&#xff08;优先级数值越大&#xff0c;越优先&#xff09;VRRP&#xff08;虚拟路由器冗余协议&#xff09;是 IETF&#xff08;互联网工程任务组&#xff09;提出的一种容错协议&#xff0c;主要用于解决局域网中网关单点故障的问题。VRRP 通过把多个…

《每日AI-人工智能-编程日报》--2025年7月23日

介绍&#xff1a;AI&#xff1a;阿里开源通义千问 AI 编程大模型 Qwen3-Coder&#xff1a;7 月 23 日清晨&#xff0c;阿里开源全新的通义千问 AI 编程大模型 Qwen3-Coder&#xff0c;编程能力登顶全球开源模型阵营&#xff0c;并超越 GPT4.1 等闭源模型&#xff0c;比肩全球最…

网安-JWT

认证的方式&#xff1a;sessioncookie、jwt、tokenSession认证机制需要配合Cookie才能实现。由于 Cookie默认不支持跨域访问 &#xff0c;所以&#xff0c;当涉及到前端跨域请求后端接口的时候&#xff0c;需要做 很多额外的配置&#xff0c;才能实现跨域Session认证。JWT(英文…