Pascal Content数据集

如果您想使用Pascal Context数据集,请安装Detail,然后运行以下命令将注释转换为正确的格式。

1.安装Detail

进入项目终端

#即 这是在我自己的项目下直接进行克隆操作:
git clone https://github.com/zhanghang1989/detail-api.git $PASCAL_CTX
# 获得detail_api 

若是出现下面的问题可以手动下载detail-api的压缩包文件到项目中,再进行解压.

我的就是git时候出了问题,然后手动下载的,服务器有时候也不稳定。

5、进行detail_api文件夹的PythonAPI中

cd 你的路径/PythonAPI

然后python setup.py install 

可能没有Cython

直接用pip install Cython

再跑python setup.py install

2.格式转换

Pascal Context的训练和验证集可以从这里下

要从原始数据集中分离训练和验证集,您可以从此处下载trainval_merged. json。下载链接https://codalabuser.blob.core.windows.net/public/trainval_merged.json

python tools/convert_datasets/pascal_context.py data/VOCdevkit data/VOCdevkit/VOC2010/trainval_merged.json

其中pascal_context.py如下

# Copyright (c) OpenMMLab. All rights reserved.
import argparse
import os.path as osp
from functools import partialimport mmcv
import numpy as np
from detail import Detail
from PIL import Image_mapping = np.sort(np.array([0, 2, 259, 260, 415, 324, 9, 258, 144, 18, 19, 22, 23, 397, 25, 284,158, 159, 416, 33, 162, 420, 454, 295, 296, 427, 44, 45, 46, 308, 59,440, 445, 31, 232, 65, 354, 424, 68, 326, 72, 458, 34, 207, 80, 355,85, 347, 220, 349, 360, 98, 187, 104, 105, 366, 189, 368, 113, 115]))
_key = np.array(range(len(_mapping))).astype('uint8')def generate_labels(img_id, detail, out_dir):def _class_to_index(mask, _mapping, _key):# assert the valuesvalues = np.unique(mask)for i in range(len(values)):assert (values[i] in _mapping)index = np.digitize(mask.ravel(), _mapping, right=True)return _key[index].reshape(mask.shape)mask = Image.fromarray(_class_to_index(detail.getMask(img_id), _mapping=_mapping, _key=_key))filename = img_id['file_name']mask.save(osp.join(out_dir, filename.replace('jpg', 'png')))return osp.splitext(osp.basename(filename))[0]def parse_args():parser = argparse.ArgumentParser(description='Convert PASCAL VOC annotations to mmsegmentation format')parser.add_argument('devkit_path', help='pascal voc devkit path')parser.add_argument('json_path', help='annoation json filepath')parser.add_argument('-o', '--out_dir', help='output path')args = parser.parse_args()return argsdef main():args = parse_args()devkit_path = args.devkit_pathif args.out_dir is None:out_dir = osp.join(devkit_path, 'VOC2010', 'SegmentationClassContext')else:out_dir = args.out_dirjson_path = args.json_pathmmcv.mkdir_or_exist(out_dir)img_dir = osp.join(devkit_path, 'VOC2010', 'JPEGImages')train_detail = Detail(json_path, img_dir, 'train')train_ids = train_detail.getImgs()val_detail = Detail(json_path, img_dir, 'val')val_ids = val_detail.getImgs()mmcv.mkdir_or_exist(osp.join(devkit_path, 'VOC2010/ImageSets/SegmentationContext'))train_list = mmcv.track_progress(partial(generate_labels, detail=train_detail, out_dir=out_dir),train_ids)with open(osp.join(devkit_path, 'VOC2010/ImageSets/SegmentationContext','train.txt'), 'w') as f:f.writelines(line + '\n' for line in sorted(train_list))val_list = mmcv.track_progress(partial(generate_labels, detail=val_detail, out_dir=out_dir), val_ids)with open(osp.join(devkit_path, 'VOC2010/ImageSets/SegmentationContext','val.txt'), 'w') as f:f.writelines(line + '\n' for line in sorted(val_list))print('Done!')if __name__ == '__main__':main()

已经在转换啦,慢慢等待就好,可以干点其他的,或者浅休息一下。

two years later...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/8106.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

美联储官员卡什卡利:判断通胀是否停滞为时尚早,利率可能维持较长时间

美联储明尼阿波利斯联邦储备银行行长尼尔卡什卡利近日表示,美联储需要更多数据才能判断通胀是否已经停滞不前,现在就断言通胀进展已经停滞还为时过早。卡什卡利的言论表明,美联储在通胀方面保持谨慎态度,同时强调利率政策可能维持…

连通“数据”,让制造变“聪明”

说起数据智能,你第一时间想到的是什么呢?是科技感十足的智慧城市?还是炫酷的人工智能景象? 数据作为企业的战略资产越来越受到重视,从最初的数据协助业务协同,转化为数据驱动业务,数据驱动运营…

命名空间、C++的输入输出、缺省参数(默认参数)、函数重载

🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,linux 🔥座右铭:“不要等到什么都没有了…

【数据库原理及应用】期末复习汇总高校期末真题试卷06

试卷 一、选择题 1. ________是长期存储在计算机内的有组织,可共享的数据集合. A.数据库管理系统 B.数据库系统 C.数据库 D.文件组织 1. 有12个实体类型,并且它们之间存在15个不同的二元联系,其中4个是1:1联系类型,5…

如何恢复回收站中被删除的文件?3个恢复策略,实测有用!

“刚刚一不小心把回收站清空了,大家有什么好用的方法可以帮我恢复回收站中删除的文件吗?快帮帮我吧!” 在使用电脑的过程中,我们有时可能会不小心将重要的文件或文件夹删除到回收站,并且随后可能进一步从回收站中彻底删…

羊大师分析,为什么羊奶是孩子的理想饮品?

羊大师分析,为什么羊奶是孩子的理想饮品? 羊奶,作为一种传统的营养饮品,近年来逐渐受到家长们的青睐,成为孩子们的理想饮品。那么,羊大师将为大家讲解,为什么羊奶能够赢得如此多的赞誉&#xf…

Redis 源码安装(CentOS 单机)

序言 本文给大家介绍如何在 CentOS 上,通过 Redis 源码单机部署 Redis 服务。 一、部署流程 通过官网下载源码 # 下载源码 wget https://download.redis.io/redis-stable.tar.gz# 解压源码包 tar -xzvf redis-stable.tar.gz在 linux 中执行以下命令,安…

Unity3D DOTween

简单介绍一下 DOTween 插件的使用。 导入插件 先到 Asset Store 获取 DOTween 插件,然后在 Package Manager 的 My Assets 中搜索,下载并导入插件。 导入后,会自动弹出一个窗口,提示需要先对插件进行配置。 点击上图中的按钮&am…

深度解析互联网医疗源码:视频问诊APP开发技术剖析

视频问诊APP作为在线医疗其中的重要一环,正在改变人们就医的方式。今天,我将为大家详解互联网医疗源码,探讨视频问诊APP开发技术,揭示其背后的原理和关键技术。 一、视频问诊APP的基本功能 视频问诊APP作为一种新型的医疗服务平台…

使用 OpenCV 创建视频(74)

返回:OpenCV系列文章目录(持续更新中......) 上一篇:OpenCV 库来捕获和处理视频输入和相似度测量(73) 下一篇:OpenCV使用 Kinect 和其他兼容 OpenNI 的深度传感器(75) 目标 每当您使用视频源时,您最终可能希望将图像处理结果保…

【Verilog】big_small_cnt

通用大小计数器 timescale 1ns / 1ps // // Company: // Engineer: wengf // Create Date: // Design Name: // Module Name: big_small_cnt // Project Name: // Target Devices: // Tool Versions: // Description: // Dependencies: // Revision: // Revision 0…

“人工智能+”推进新质生产力发展论坛暨工作室实践实训基地授牌仪式圆满结束

4月27日,由江西财经大学现代经济管理学院主办的“人工智能”推进新质生产力发展论坛暨“江财现经管泰迪数智技术”校企工作室实践实训基地授牌仪式在江西财经大学现代经济管理学院共青城校区举行,学院院长王金海,副院长丁美东,副院…

项目解决方案:多台poe摄像机接到3台NVR上,如何进行统一管理

目录 一、概述 二、建设目标及需求 三、设计依据与设计原则 1、先进性与适用性 2、经济性与实用性 3、可靠性与安全性 4、开放性 5、可扩充性 6、追求最优化的系统设备配置 7、提高监管力度与综合管理水平 四、建设方案设计 (一)系统方案设计…

【牛客】[HNOI2003]激光炸弹

原题链接:登录—专业IT笔试面试备考平台_牛客网 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 二维前缀和板题。 注意从(1,1)开始存即可,所以每次输入x,y之后,要x,y。 因为m的范围最大为…

气膜体育馆内部的采光效果如何?—轻空间

气膜体育馆内部的采光效果如何?这是许多人对这种创新建筑的一个关键关注点。 首先,气膜体育馆的采光性非常好。阳光透过屋顶时以漫射光的方式进入室内,这种透射方式使得室内的光线柔和而均匀。从内部观察,整个屋顶就像一个连续的明…

西安银行效益口碑双降:不良率连增,新董事长梁邦海能否救火?

撰稿|行星 来源|贝多财经 近日,西安银行(SH:600928)方面终于传来了新任掌门人的音讯。该行在2023年财报中正式宣布,董事会选举梁邦海为董事长,在监管部门核准梁邦海的任职资格后,梁邦海将不再担任该行行长…

ShowMeAI | 这是我们知道的,关于〖Suno 〗和〖AI音乐〗的一切

👀日报&周刊合集 | 🎡生产力工具与行业应用大全 | 🧡 点赞关注评论拜托啦! Suno 是一款AI音乐创作工具,可以通过提示词和设置生成一段音乐,而且可以包含歌词和人声 (这非常难得)。在经历了两年探索之后…

Python | Leetcode Python题解之第76题最小覆盖子串

题目: 题解: class Solution:def minWindow(self, s: str, t: str) -> str:ans_left, ans_right -1, len(s)left 0cnt_s Counter() # s 子串字母的出现次数cnt_t Counter(t) # t 中字母的出现次数less len(cnt_t) # 有 less 种字母的出现次数…

python入门demo实例-个人信息收集页面

dd 今天是python入门day2,先看一下本案例demo的样子吧~ 资源下载: python案例demo个人信息收集页面实现资源-CSDN文库 实现上述界面需要pythonhtml实现,需通过在Web浏览器的地址栏中输入 http://127.0.0.1:5000/打开界面,127.0.…

云密码机的定义与特点

云密码机,作为云计算环境中保障数据安全的关键设备,其重要性不言而喻。它基于虚拟化技术,通过提供高性能的数据加解密、密钥管理等服务,确保云上数据的安全与隐私。下面,安策科技将从云密码机的定义、特点、应用场景以…