当前位置: 首页 > news >正文

cv_connection (像halcon一样对区域进行打散)

主题:

分享一个自己用opencv写的小方法,

可以像halcon的connection算子一样,

对cv2.threshold得到的region进行打散,

并返回一个打散后的不相连的region的列表。

代码如下

def cv_connection(region):# he的拓扑信息为  后一个轮廓的索引,前一个轮廓的索引,第一个子轮廓的索引,父轮廓的索引contours0, he = cv2.findContours(region, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE)father = he[..., 3][0]connection_region = []for index in range(len(contours0)):mask = np.zeros_like(region, dtype=np.uint8)if father[index] < 0:       #就是-1mask0 = cv2.drawContours(mask, contours0, index, [255, 255, 255], -1)childs = np.where(father == index)[0]for child in childs:mask_child = np.zeros_like(region, dtype=np.uint8)mask_child0 = cv2.drawContours(mask_child, contours0, child, [255, 255, 255], -1)mask0 = mask0 - mask_child0connection_region.append(mask0)return connection_region

http://www.dtcms.com/a/183098.html

相关文章:

  • Markdown—LaTeX 数学公式
  • PCB设计实践(十二)PCB设计电容选型:功能、材质、规则
  • 数据结构与算法分析实验12 实现二叉查找树
  • 问题及解决01-面板无法随着窗口的放大而放大
  • 【论文阅读】Efficient and secure federated learning against backdoor attacks
  • Client 和 Server 的关系理解
  • 【AI智能推荐系统】第七篇:跨领域推荐系统的技术突破与应用场景
  • AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月10日第73弹
  • 如何避免在CMD中分段发送问题导致大模型多段回复的问题?
  • 解密数据结构之位图和布隆过滤器
  • 【Redis进阶】持久化
  • 每日算法刷题Day1 5.9:leetcode数组3道题,用时1h
  • [6-2] 定时器定时中断定时器外部时钟 江协科技学习笔记(41个知识点)
  • (四)毛子整洁架构(Presentation层/Authentiacation)
  • 问题解决思路:numpy:DLL load failed
  • QSFP+、QSFP28、QSFP-DD接口分别实现40G、100G、200G/400G以太网接口
  • AUTODL Chatglm2 langchain 部署大模型聊天助手
  • 《用MATLAB玩转游戏开发:从零开始打造你的数字乐园》基础篇(2D图形交互)-《打砖块:向量反射与实时物理模拟》MATLAB教程
  • 【数据结构与算法】图的基本概念与遍历
  • 离线化 Service Worker
  • yocto的大致工作流程
  • [SV]等待32个instance的某一个信号的pulse,该怎么写?
  • 【LeetCode 热题 100】215. 数组中的第K个最大元素(Python 快速选择详解)
  • 探索C++内存管理
  • UE5 PCG学习笔记
  • 初等数论--莫比乌斯反演
  • 【数据结构入门训练DAY-30】数的划分
  • STM32F103单片机在不需要使用 JTAG 调试接口的情况下,释放引脚给其他功能使用。
  • React Hooks 精要:从入门到精通的进阶之路
  • TWAS、GWAS、FUSION