python 轮廓 获取环形区域

目录

效果图:

代码:


效果图:

代码:

python 复制代码
import cv2
import numpy as np

# 读取图像
image = cv2.imread(r'E:\project\jijia\tools_jijia\img_tools\ground_mask.jpg', cv2.IMREAD_GRAYSCALE)
# 二值化图像
# 二值化图像
_, binary = cv2.threshold(image, 127, 255, cv2.THRESH_BINARY)

# 检测轮廓
contours, _ = cv2.findContours(binary, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

# 创建一个空白图像来绘制轮廓
contour_image = np.zeros_like(image)

# 绘制原始轮廓
cv2.drawContours(contour_image, contours, -1, (255, 255, 255), 1)

# 创建一个核,用于腐蚀操作。核的大小为 21x21,以获得20个像素的腐蚀效果
kernel = np.ones((21, 21), np.uint8)

# 对二值图像进行腐蚀操作
eroded_image = cv2.erode(binary, kernel, iterations=1)

# 再次检测腐蚀后的轮廓
eroded_contours, _ = cv2.findContours(eroded_image, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

# 创建一个空白图像来绘制腐蚀后的轮廓
eroded_contour_image = np.zeros_like(image)

# 绘制腐蚀后的轮廓
cv2.drawContours(eroded_contour_image, eroded_contours, -1, (255, 255, 255), 1)

# 将两个轮廓之间的区域涂成白色
filled_image = np.zeros_like(image)
cv2.drawContours(filled_image, contours, -1, (255, 255, 255), thickness=cv2.FILLED)
cv2.drawContours(filled_image, eroded_contours, -1, (0, 0, 0), thickness=cv2.FILLED)  # 填充内部区域为黑色

# 显示结果
cv2.imshow('Original Contours', contour_image)
cv2.imshow('Eroded Contours', eroded_contour_image)
cv2.imshow('Filled Contours', filled_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
相关推荐
喵手7 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_944934737 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
啊森要自信7 小时前
CANN ops-cv:面向计算机视觉的 AI 硬件端高效算子库核心架构与开发逻辑
人工智能·计算机视觉·架构·cann
helloworldandy7 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
肖永威8 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ9 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha9 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy9 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
喵手9 小时前
Python爬虫实战:构建各地统计局数据发布板块的自动化索引爬虫(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集数据csv导出·采集各地统计局数据发布数据·统计局数据采集
天天爱吃肉821810 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车