import cv2
import numpy as np
import os
import random
from PIL import Image
import matplotlib.pyplot as plt
# 将mask绘制在原图
def draw_image(im, ms, brg, opacity):
image_mask = im.copy()
contours, _ = cv2.findContours(ms, cv2.RETR_TREE, cv2.CHAIN_APPROX_NONE) # 查找轮廓
image_mask = cv2.drawContours(image_mask, contours, -1, (0, 255, 0), 2) # 绘制边界
image_mask = cv2.fillPoly(image_mask, contours, color=brg) # 填充
img_bgr = cv2.addWeighted(im, opacity, image_mask, 1 - opacity, 0)
return im, ms, img_bgr
def main(imagePath, labelPath, bgr, opacity):
image = np.array(Image.open(imagePath).convert('RGB'))
label = np.array(Image.open(labelPath).convert('L'))
a, b, c = draw_image(image, label, bgr, opacity)
plt.figure(figsize=(12, 8))
for index, i in enumerate((a, b, c)):
plt.subplot(1, 3, index + 1)
plt.imshow(i)
plt.savefig('./result.png')
# plt.show()
if __name__ == '__main__':
root = './data/train/images'
images_path = [os.path.join(root, i) for i in os.listdir(root)]
r = random.randint(0, len(images_path) - 1)
img_path = images_path[r] # 随机取出一张图片
mask_path = img_path.replace('images', 'masks').replace('.jpg', '.png')
# opacity 越小,掩膜效果越深
main(imagePath=img_path, labelPath=mask_path, bgr=(0, 0, 255), opacity=0.5)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
深度学习数据集:人体腹部多脏器器官语义分割 标签信息: 1. 脾脏 2. 右肾 3. 左肾 4. 胆囊 5. 食道 6. 肝脏 7. 胃 8. 主动脉 9. 下腔静脉 10. 门静脉和脾静脉 11. 胰腺 12 右肾上腺 13 左肾上腺【具体的标签类别可以在classes文本中查看】 运行show脚本即可查看gt在images上的掩膜结果,数据做了对比度拉伸等图像增广 数据集介绍:分为训练集、验证集 训练集个数:900 张左右的图像数据和对应mask图像 验证集个数:200 张左右的图像数据和对应mask图像 网络分割可以参考:https://blog.csdn.net/qq_44886601/category_12102735.html
资源推荐
资源详情
资源评论
收起资源包目录
深度学习数据集:人体腹部多脏器器官语义分割 (2000个子文件)
img0033_69.jpg 101KB
img0033_70.jpg 101KB
img0033_68.jpg 101KB
img0033_65.jpg 101KB
img0033_62.jpg 100KB
img0033_60.jpg 100KB
img0033_61.jpg 100KB
img0033_63.jpg 99KB
img0033_71.jpg 99KB
img0033_64.jpg 99KB
img0033_66.jpg 99KB
img0033_67.jpg 99KB
img0010_78.jpg 99KB
img0010_79.jpg 98KB
img0010_80.jpg 98KB
img0033_72.jpg 98KB
img0010_81.jpg 97KB
img0010_82.jpg 97KB
img0010_83.jpg 97KB
img0033_74.jpg 94KB
img0007_88.jpg 93KB
img0010_86.jpg 93KB
img0007_90.jpg 92KB
img0007_91.jpg 91KB
img0007_93.jpg 91KB
img0007_92.jpg 91KB
img0007_98.jpg 90KB
img0007_99.jpg 90KB
img0007_100.jpg 90KB
img0010_89.jpg 90KB
img0007_94.jpg 90KB
img0010_90.jpg 90KB
img0007_101.jpg 89KB
img0007_97.jpg 89KB
img0007_95.jpg 89KB
img0007_96.jpg 89KB
img0010_126.jpg 89KB
img0007_103.jpg 88KB
img0007_105.jpg 88KB
img0007_104.jpg 88KB
img0036_131.jpg 87KB
img0007_106.jpg 87KB
img0036_129.jpg 87KB
img0010_123.jpg 87KB
img0038_65.jpg 87KB
img0036_132.jpg 87KB
img0038_68.jpg 86KB
img0023_76.jpg 86KB
img0038_67.jpg 86KB
img0023_77.jpg 86KB
img0007_107.jpg 86KB
img0036_134.jpg 86KB
img0036_133.jpg 86KB
img0038_66.jpg 86KB
img0023_75.jpg 86KB
img0036_127.jpg 86KB
img0010_105.jpg 86KB
img0036_135.jpg 85KB
img0010_128.jpg 85KB
img0010_122.jpg 85KB
img0036_141.jpg 85KB
img0036_126.jpg 85KB
img0036_117.jpg 85KB
img0023_74.jpg 85KB
img0038_69.jpg 85KB
img0010_129.jpg 85KB
img0007_108.jpg 85KB
img0036_140.jpg 85KB
img0036_137.jpg 85KB
img0036_118.jpg 85KB
img0010_103.jpg 85KB
img0033_77.jpg 85KB
img0036_138.jpg 85KB
img0036_136.jpg 85KB
img0036_124.jpg 85KB
img0036_125.jpg 84KB
img0036_116.jpg 84KB
img0036_119.jpg 84KB
img0036_144.jpg 84KB
img0036_147.jpg 84KB
img0010_94.jpg 84KB
img0036_149.jpg 84KB
img0023_78.jpg 84KB
img0007_109.jpg 84KB
img0036_139.jpg 84KB
img0023_73.jpg 84KB
img0036_122.jpg 84KB
img0036_146.jpg 84KB
img0010_106.jpg 84KB
img0036_115.jpg 84KB
img0010_96.jpg 84KB
img0007_110.jpg 83KB
img0023_69.jpg 83KB
img0010_101.jpg 83KB
img0010_121.jpg 83KB
img0036_151.jpg 83KB
img0038_70.jpg 83KB
img0010_107.jpg 83KB
img0023_66.jpg 83KB
img0023_68.jpg 83KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
听风吹等浪起
- 粉丝: 1w+
- 资源: 1931
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- iPhone 16是苹果公司在2024年发布的一款重要手机产品,以下是关于iPhone 16的详细介绍: 一、发布与售价 发布
- 深入理解JavaScript中的深拷贝与浅拷贝:实现方法与应用场景
- STD20N06T4-VB一款N-Channel沟道TO252的MOSFET晶体管参数介绍与应用说明
- 黑群晖ds3622 7.1安装
- 在单片机编程中,延时函数是非常基础且常用的功能,用于在程序中产生一定的时间延迟 不同的单片机(如8051、AVR、PIC、STM
- 如何在C++中实现代码性能分析工具集
- openwrt 初学者大礼包
- 串口协议-涂鸦 IoT 开发平台-涂鸦 IoT 开发平台.pdf
- js代码分割js代码分割
- 单片机编程中,延时函数是非常常用的,尤其是在没有操作系统(如RTOS)支持的情况下,用于控制程序的执行速度或等待某些外部事件 延
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功