Halcon 文本文件操作,形态学
一文件的读写
*******************************************************向文本文件写入字符串内容*************************************************************read_image (Image, 'fabrik')threshold (Image, Region, 0, 120)area_center (Region, Area, Row, Column)open_file ('area.txt', 'output', FileHandle)fwrite_string (FileHandle, '面积是:'+Area + ' 像素\n')fwrite_string (FileHandle, 'ROW:'+Row + ' Column'+Column+' \n')close_file (FileHandle)*******************************************************读取文本文件字符串内容*************************************************************open_file ('area.txt', 'input', FileHandle)fread_line (FileHandle, OutLine, IsEOF1)
while (IsEOF1 != 1)fread_line (FileHandle, OutLine, IsEOF1)
endwhileclose_file (FileHandle)
二 获取文件夹下所有的文件路径
get_system('example_dir',HalconExamples)ExampleDir:=HalconExamples+'\\hdevelop'list_files(ExampleDir,['files','recursive'],HalconExamples)
三 判断文件是否存在
dev_close_window()dev_open_window(0,0,512,512,'black',WindowHandle)FileName:='1.jpg'file_exists(FileName,FileExists)if(FileExists)disp_message(WindowHandle,'文件存在','window',12,12,'black', 'true')
elsedisp_message(WindowHandle, '文件不存在', 'window', 12, 12, 'black', 'true')
endif
四 形态学膨胀,腐蚀,开运算,闭运算
膨胀:对边界点进行扩充,填充空洞,使边界向外部扩张的过程。

腐蚀:消除物体边界点,使边界向内部收缩的过程,把小于结构元素的物体去除掉.

开运算:先腐蚀后膨胀的过程称为开运算,作用:去除孤立的小点,毛刺,消除小物体,平滑较大物体边界,同时不改变其面积.


闭运算:
先膨胀后腐蚀的过程是闭运算。作用:填充物体内细小的空洞,连接临近物体,平滑边界,同时不改变其面积。


*读取图像
read_image(Image,'fabrik')*阈值图像
threshold(Image,Region,128,255)*连通处理
connection(Region,ConnectedRegions)*根据面积过滤
select_shape(ConnectedRegions,SelectedRegions,'area','and',8000,9000)*用矩形结构元素膨胀
dilation_rectangle1(SelectedRegions,RegionDilation1,3,3)*用圆形结构元素腐蚀
dilation_circle(SelectedRegions,RegionDilation2,2.5)*用矩形结构元素腐蚀
erosion_rectangle1(SelectedRegions,RegionDilation1,3,3)*用圆形结构元素腐蚀
erosion_circle(SelectedRegions,RegionErosion2,2.5)* 用矩形结构元素开运算
opening_rectangle1 (SelectedRegions, RegionOpening1, 10, 10)* 用圆形结构元素开运算
opening_circle (SelectedRegions, RegionOpening2, 2.5)*用矩形结构元素闭运算
closing_rectangle1 (SelectedRegions, RegionClosing1, 10, 10)*用圆形结构元素闭运算
closing_circle (SelectedRegions, RegionClosing2, 3.5)
相关文章:
Halcon 文本文件操作,形态学
一文件的读写 *******************************************************向文本文件写入字符串内容*************************************************************read_image (Image, fabrik)threshold (Image, Region, 0, 120)area_center (Region, Area, Row, Column)open_…...
【鸿蒙】稍微理解一下Stage模型
鸿蒙的Stage模型是HarmonyOS多端统一的应用开发框架中的一个核心概念,用于描述应用的界面层次结构和组件之间的关系。下面将详细解析Stage模型的主要组成部分和特点: 模型组成: UIAbility组件:这是应用中负责绘制用户界面的组件&a…...
毕业答辩制作PPT【攻略】
毕业答辩制作PPT【攻略】 前言版权毕业答辩制作PPT【攻略】一、WPS AI 15天免费会员二、AI文档生成PPT三、修改完善PPT 最后 前言 2024-06-14 23:43:05 以下内容源自《【攻略】》 仅供学习交流使用 版权 禁止其他平台发布时删除以下此话 本文首次发布于CSDN平台 作者是CSDN…...
深入解析npm install --save-dev:开发依赖管理的艺术
npm(Node Package Manager)是JavaScript编程语言的包管理器,用于管理项目中的依赖关系。在开发过程中,合理地管理依赖是保证项目可维护性和可扩展性的关键。npm install命令是npm中最常用的命令之一,而--save-dev参数则…...
福布斯 AI 50 榜单中唯一开源向量数据库:Weaviate
本篇文章,聊聊福布斯全球网站前俩月发布的 2023 AI 50 榜单中的唯一一个开源的向量数据库:Weaviate。 它在数据持久化和容错性上表现非常好、支持混合搜索、支持水平扩展,同时又保持了轻量化。官方主打做 AI 时代的原生数据库,减…...
信息学奥赛初赛天天练-38-CSP-J2021阅读程序-约数个数、约数和、埃氏筛法、欧拉筛法筛素数应用
PDF文档公众号回复关键字:20240628 2021 CSP-J 阅读程序3 1阅读程序(判断题1.5分 选择题3分 共计40分 ) 01 #include<stdio.h> 02 using namespace std; 03 04 #define n 100000 05 #define N n1 06 07 int m; 08 int a[N],b[N],c[N],d[N]; 09 int f[N],g[N]; 10 11 …...
第100+13步 ChatGPT学习:R实现决策树分类
基于R 4.2.2版本演示 一、写在前面 有不少大佬问做机器学习分类能不能用R语言,不想学Python咯。 答曰:可!用GPT或者Kimi转一下就得了呗。 加上最近也没啥内容写了,就帮各位搬运一下吧。 二、R代码实现决策树分类 (…...
Hi3861 OpenHarmony嵌入式应用入门--LiteOS MessageQueue
CMSIS 2.0接口中的消息(Message)功能主要涉及到实时操作系统(RTOS)中的线程间通信。在CMSIS 2.0标准中,消息通常是通过消息队列(MessageQueue)来进行处理的,以实现不同线程之间的信息…...
ffmpeg编码图象时报错Invalid buffer size, packet size * < expected frame_size *
使用ffmpeg将单个yuv文件编码转为jpg或其他图像格式时,报错: Truncating packet of size 11985408 to 3585 [rawvideo 0x1bd5390] Packet corrupt (stream 0, dts 1). image_3264_2448_0.yuv: corrupt input packet in stream 0 [rawvideo 0x1bd7c60…...
解决类重复的问题
1.针对AndroidX 类重复问题 解决办法: android.useAndroidXtrue android.enableJetifiertrue2.引用其他sdk出现类重复的问题解决办法:configurations {all { // You should exclude one of them not both of themexclude group: "com.enmoli"…...
使用 shell 脚本 统计app冷启动耗时
下面是一个 shell 脚本,它使用 参数将包名称作为参数--app,识别相应应用程序进程的 PID,使用 终止该进程adb shell kill,最后使用 重新启动该应用程序adb shell am start: #!/bin/bash# Check if package name is pro…...
使用容器部署redis_设置配置文件映射到本地_设置存储数据映射到本地_并开发java应用_连接redis---分布式云原生部署架构搭建011
可以看到java应用的部署过程,首先我们要准备一个java应用,并且我们,用docker,安装一个redis 首先我们去start.spring.io 去生成一个简单的web项目,然后用idea打开 选择以后下载 放在这里,然后我们去安装redis 在公共仓库中找到redis . 可以看到它里面介绍说把数据放到了/dat…...
第五节:如何使用其他注解方式从IOC中获取bean(自学Spring boot 3.x的第一天)
大家好,我是网创有方,上节我们实践了通过Bean方式声明Bean配置。咱们这节通过Component和ComponentScan方式实现一个同样功能。这节实现的效果是从IOC中加载Bean对象,并且将Bean的属性打印到控制台。 第一步:创建pojo实体类studen…...
Paragon NTFS与Tuxera NTFS有何区别 Mac NTFS 磁盘读写工具选哪个好
macOS系统虽然以稳定、安全系数高等优点著称,但因其封闭性,不能对NTFS格式磁盘写入数据常被人们诟病。优质的解决方案是使用磁盘管理软件Paragon NTFS for Mac(点击获取激活码)和Tuxera NTFS(点击获取激活码࿰…...
EtherCAT主站IGH-- 2 -- IGH之coe_emerg_ring.h/c文件解析
EtherCAT主站IGH-- 2 -- IGH之coe_emerg_ring.h/c文件解析 0 预览一 该文件功能coe_emerg_ring.c 文件功能函数预览 二 函数功能介绍coe_emerg_ring.c 中主要函数的作用1. ec_coe_emerg_ring_init2. ec_coe_emerg_ring_clear3. ec_coe_emerg_ring_size4. ec_coe_emerg_ring_pus…...
psensor 的手势功能
psensor 的手势功能的移植过程 有时间再来写下...
使用 nvm 管理 Node 版本及 pnpm 安装
文章目录 GithubWindows 环境Mac/Linux 使用脚本进行安装或更新Mac/Linux 环境变量nvm 常用命令npm 常用命令npm 安装 pnpmNode 历史版本 Github https://github.com/nvm-sh/nvm Windows 环境 https://nvm.uihtm.com/nvm.html Mac/Linux 使用脚本进行安装或更新 curl -o- …...
uni-appx使用form表单页面初始化报错
因为UniFormSubmitEvent的类型时 e-->detail-->value,然后没有了具体值。所以页面初始化的时候 不能直接从value取值,会报错找不到 所以form表单里的数据我们要设置成一个对象来存放 这个问题的关键在于第22行代码 取值: 不能按照点的方式取值 …...
TiDB-从0到1-数据导出导入
TiDB从0到1系列 TiDB-从0到1-体系结构TiDB-从0到1-分布式存储TiDB-从0到1-分布式事务TiDB-从0到1-MVCCTiDB-从0到1-部署篇TiDB-从0到1-配置篇TiDB-从0到1-集群扩缩容 一、数据导出 TiDB中通过Dumpling来实现数据导出,与MySQL中的mysqldump类似,其属于…...
动手学深度学习(Pytorch版)代码实践 -卷积神经网络-16自定义层
16自定义层 import torch import torch.nn.functional as F from torch import nnclass CenteredLayer(nn.Module):def __init__(self):super().__init__()#从其输入中减去均值#X.mean() 计算的是整个张量的均值#希望计算特定维度上的均值,可以传递 dim 参数。#例如…...
3步搞定浏览器脚本:Greasy Fork小白也能懂的终极指南
3步搞定浏览器脚本:Greasy Fork小白也能懂的终极指南 【免费下载链接】greasyfork An online repository of user scripts. 项目地址: https://gitcode.com/gh_mirrors/gr/greasyfork 你是否厌倦了网页上烦人的广告?想要自动填充表单、一键下载视…...
PDE建模技术在油水两相流及离散裂缝模型中的应用:深入探讨Comsol石油工程中的关键概念
comsol石油工程 pde油水两相流 pde油水离散裂缝两相流概念模型附赠视频讲解和推导过程 采用PDE建模当油和水在岩石孔隙里掐架石油工程里最头疼的问题之一就是油水两相流。想象一下,地下的油像挤牙膏一样被水推着走,结果要么水窜得太快把油路截断…...
如何用OBS Multi RTMP插件实现一键多平台直播:终极免费解决方案
如何用OBS Multi RTMP插件实现一键多平台直播:终极免费解决方案 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 你是否曾经梦想过在YouTube、Twitch和Bilibili等平台上同时直…...
UIImage命名检查黑科技:用Runtime拦截空字符串导致的CUICatalog崩溃
UIImage命名检查黑科技:用Runtime拦截空字符串导致的CUICatalog崩溃 在iOS开发中,图片资源管理看似简单,却暗藏玄机。当团队规模扩大、项目复杂度上升时,一个被忽视的空字符串可能引发连锁反应——[UIImage imageNamed:"&quo…...
小米AX3000路由器SSH解锁实战全解析
小米AX3000路由器SSH解锁实战全解析 【免费下载链接】unlock-redmi-ax3000 Scripts for getting Redmi AX3000 (aka. AX6) SSH access. 项目地址: https://gitcode.com/gh_mirrors/un/unlock-redmi-ax3000 一、风险预警:解锁前的关键认知 识别解锁风险场景 …...
AI小剧场:OpenClaw+nanobot镜像多角色对话生成
AI小剧场:OpenClawnanobot镜像多角色对话生成 1. 为什么需要AI辅助剧本创作 作为一个业余编剧爱好者,我经常遇到创作瓶颈——当需要构建多角色对话场景时,很难同时兼顾不同角色的立场连贯性和语言风格差异。传统写作工具只能提供单向输出&a…...
GMSL GUI实战:利用EOM眼图与Link Margin优化高速链路设计
1. GMSL高速链路设计的核心挑战 在车载摄像头、工业视觉等需要长距离传输高清视频的场景中,GMSL(千兆多媒体串行链路)技术凭借其高带宽和抗干扰能力成为首选方案。但当我第一次尝试设计6Gbps的GMSL3链路时,信号完整性问题就像个隐…...
3个维度掌握Seed-VC:零样本语音转换工具实战指南
3个维度掌握Seed-VC:零样本语音转换工具实战指南 【免费下载链接】seed-vc zero-shot voice conversion & singing voice conversion, with real-time support 项目地址: https://gitcode.com/GitHub_Trending/se/seed-vc 语音转换技术正经历从"训练…...
3分钟掌握AI工作流:Awesome-Dify-Workflow全功能实战指南
3分钟掌握AI工作流:Awesome-Dify-Workflow全功能实战指南 【免费下载链接】Awesome-Dify-Workflow 分享一些好用的 Dify DSL 工作流程,自用、学习两相宜。 Sharing some Dify workflows. 项目地址: https://gitcode.com/GitHub_Trending/aw/Awesome-Di…...
ArcGIS Pro 3.0 气象数据处理实战:如何从365天的nc文件中提取单日降水数据
ArcGIS Pro 3.0 气象数据处理实战:从365天nc文件中精准提取单日降水数据 气象数据作为地理信息科学中的重要组成部分,其处理效率直接影响研究进度和成果质量。在众多气象数据格式中,NetCDF(.nc)因其结构化存储和多维数…...
