首页 > 其他分享 >sam代码解读之将mask画在图像上

sam代码解读之将mask画在图像上

时间:2023-07-19 16:00:28浏览次数:37  
标签:segmentation False sam mask random anns 图像 sorted

先看看代码

def show_anns(anns):
    if len(anns) == 0: #anns是个mask列表,里面包含很多mask,每个mask又是一个dict,里面有segmentation,area等
        return
    sorted_anns = sorted(anns, key=(lambda x: x['area']), reverse=True) # 根据area排序
    ax = plt.gca() # 此时的plt已经将原图作为背景图了
    ax.set_autoscale_on(False) # 取消自动缩放

    img = np.ones((sorted_anns[0]['segmentation'].shape[0], sorted_anns[0]['segmentation'].shape[1], 4)) #弄个画布,元素都是1,四个通道,rgb和透明度
    img[:,:,3] = 0 # 最后一个透明度设为0,先不显示
    for ann in sorted_anns: # 先遍历每个mask
        m = ann['segmentation'] #取每个分割结果
        color_mask = np.concatenate([np.random.random(3), [0.35]]) # 为每个maks设置显示颜色,np.random.random(3)表示随机rgb,0.35表示透明度
        img[m] = color_mask # 被分割的每个点都设置为color_mask
    ax.imshow(img) # 在背景图的基础上直接覆盖分割图

 注:ann['segmentation']表示分割的结果,一个二维数据,尺寸为图像的w×h,被分割的位置使用True表示,未被分割的位置使用False表示,所以表现为[[False, False,False,...],[False,False,False,...],...]

标签:segmentation,False,sam,mask,random,anns,图像,sorted
From: https://www.cnblogs.com/chentiao/p/17565845.html

相关文章

  • Ubuntu 22.04 Samba 安装和配置
    安装安装sudoaptinstallsamba检查服务状态systemctlstatussmbd--no-pager-l检查是否启用(开机自启动)systemctlis-enabledsmbd#enableitifinactivesystemctlenablesmbd配置(可选)添加用户sudousermod-aGsambashare[username]设置密码sudosmb......
  • umask
    umask显示或设置创建文件的权限掩码。概要umask[-p][-S][mode]主要用途显示当前的文件权限掩码。通过八进制数的方式设置创建文件的权限掩码。通过符号组合的方式设置创建文件的权限掩码。参数mode(可选):八进制数或符号组合。选项-p:当没有参数时指定该选项,执行产生......
  • coc仓库--从内存中读取图像
    从内存中读取图像1.源码voidcreateMatFromMem(FILE*file,cv::Mat*mat){uchar*mem_pic=newuchar[6268932/sizeof(uchar)];longsize=0;fread(mem_pic,sizeof(uchar),6268932/sizeof(uchar),file);pclose(file);cv::_InputArraypic_a......
  • 图像隐写术
    图像隐写术本文为图像的隐写提供了一种思路。还有更多的思路,这里不做讲述。项目源代码在:jeefies/jimg-ivs中。目录图像隐写术原理实现Canvas近似处理读入处理其实吧原理利用了像素近似用肉眼难以察觉的前提(这就是为什么jpeg会存在……以及png图片会原滋原味的保留像素......
  • SAM(segment-anything导出onnx模型报错unsupported onnx opset version:17)
    问题导出samonnx模型时,报错!版本:torch=1.12.0;onnx=1.14.0UnsupportedONNXopsetversion:17 解决方案将scripts/export_onnx_model.py中的onnxopset的默认值(default=17)从“17”改为“11” 修改default为“11” 修改完毕后,再运行:  ......
  • python如何保存多个折线的图像
    Python如何保存多个折线的图像引言在数据分析和可视化的过程中,我们经常需要绘制多个折线图来比较不同数据集之间的趋势。Python提供了许多强大的库来进行数据可视化,比如Matplotlib和Seaborn。本文将介绍如何使用Matplotlib来保存多个折线图像。实际问题假设我们有两个数据集:A和......
  • 铃狐sama的竞赛复习(持续更新)
    铃狐sama的竞赛复习计划目录铃狐sama的竞赛复习计划dfs,bfs的整体复习题目来源可如下:null数论复习,以下还要求掌握原理,暂时放在最后一起复习,记忆深刻一点gcd熟练掌握exgcd必须要求熟练背诵phi欧拉函数必须要求熟练背诵欧拉筛法必须要求熟练背诵卷积要求再进行熟练掌握整数分块要求......
  • 比Meta「分割一切AI」更全能!港科大版图像分割AI来了:实现更强粒度和语义功能
    前言 比Meta“分割一切”的SAM更全能的图像分割AI,来了!本文转载自量子位仅用于学术分享,若侵权请联系删除欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。CV各大方向专栏与各个部署框架最全教程整理【CV技术指南】CV全栈指导......
  • ON1 HDR 2023 - HDR图像处理mac软件
    ON1HDR2023是一款强大的高动态范围(HDR)图像处理软件,专为摄影师和图像爱好者设计。它提供了一系列功能和工具,使用户能够创建出令人惊叹的HDR照片。→→↓↓载ON1HDR2023mac版 强大的HDR合成:ON1HDR2023采用先进的图像处理算法,能够将多个曝光不同的照片(如曝光正常、曝......
  • ON1 Photo RAW 2023 - mac摄影RAW图像处理软件
    ON1PhotoRAW2023是一款功能强大的专业级照片编辑和管理软件,为摄影师提供了广泛的工具和功能,以实现他们的创意愿景。→→↓↓载ON1PhotoRAW2023mac版 简介和界面:ON1PhotoRAW2023是一款基于订阅模型的跨平台照片编辑软件,适用于Mac和Windows系统。它采用了直观的用......