NYU-V2数据集预处理
时间:2018-12-19
本文章向大家介绍NYU-V2数据集预处理,主要包括NYU-V2数据集预处理使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
我下载的是带标签的NYUV2数据集,下载写来的格式是.mat
原图,深度图,labels的提取方式参考此博客
提取各类名称保存为txt
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
import scipy.io as sio
import h5py
import os
from PIL import Image
f=h5py.File("./nyu_depth_v2_labeled.mat")
ft = open('names.txt', 'w+')
#print(f["names"].shape) #打印查看类别个数,共894类
for j in range (893):
name = f["names"][0][j]
obj = f[name]
strr = "".join(chr(i) for i in obj[:])
ft.write(strr + '\n')
ft.close()
提取原图images(RGB图)
import numpy as np
import matplotlib.pyplot as plt
import scipy.io as sio
import h5py
import os
f=h5py.File("./nyu_depth_v2_labeled.mat")
images=f["images"]
images=np.array(images)
path_converted='./nyu_images'
if not os.path.isdir(path_converted):
os.makedirs(path_converted)
from PIL import Image
images_number=[]
for i in range(len(images)):
print(i)
images_number.append(images[i])
a=np.array(images_number[i])
# print len(img)
#img=img.reshape(3,480,640)
# print img.shape
r = Image.fromarray(a[0]).convert('L')
g = Image.fromarray(a[1]).convert('L')
b = Image.fromarray(a[2]).convert('L')
img = Image.merge("RGB", (r, g, b))
img = img.transpose(Image.ROTATE_270)
# plt.imshow(img)
# plt.axis('off')
# plt.show()
iconpath='./nyu_images/'+str(i)+'.jpg'
img.save(iconpath,optimize=True)
提取深度图(depth map)
import numpy as np
import matplotlib.pyplot as plt
import scipy.io as sio
import h5py
import os
from PIL import Image
f=h5py.File("./nyu_depth_v2_labeled.mat")
depths=f["depths"]
depths=np.array(depths)
path_converted='./nyu_depths/'
if not os.path.isdir(path_converted):
os.makedirs(path_converted)
max=depths.max()
print (depths.shape)
print (depths.max())
print (depths.min())
depths=depths/max*255
depths=depths.transpose((0,2,1))
print (depths.max())
print (depths.min())
for i in range(len(depths)):
print (str(i)+'.png')
depths_img=Image.fromarray(np.uint8(depths[i]))
depths_img=depths_img.transpose(Image.FLIP_LEFT_RIGHT)
iconpath = path_converted + str(i) + '.png'
depths_img.save(iconpath, 'PNG', optimize=True)
提取labels
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
import scipy.io as sio
import h5py
import os
from PIL import Image
f=h5py.File("./nyu_depth_v2_labeled.mat")
labels=f["labels"]
labels=np.array(labels)
path_converted='./nyu_labels'
if not os.path.isdir(path_converted):
os.makedirs(path_converted)
labels_number=[]
for i in range(len(labels)):
labels_number.append(labels[i])
labels_0=np.array(labels_number[i])
#print labels_0.shape
print (type(labels_0))
label_img=Image.fromarray(np.uint8(labels_number[i]))
#label_img = label_img.rotate(270)
label_img = label_img.transpose(Image.ROTATE_270)
iconpath='./nyu_labels/'+str(i)+'.png'
label_img.save(iconpath, 'PNG', optimize=True)
- 自定义(修改)WordPress管理后台界面的字体样式
- Sql Server 2005 ROW_NUMBER 函数实现分页
- Http协议中的数据传送之多重表单提交--multipart/form-data
- 另类大数据:中国有嘻哈的rapper们都在唱些什么?
- jquery属性值选择器
- sqlserver 2000/2005 Ambiguous column error错误解决办法
- jquery 层级选择器
- Twitter发布基于组件的轻量级JavaScript框架——Flight
- jquery的基本选择器
- WordPress 路径相关函数总结(一):站点路径相关函数
- 修复Visual Studio 2010 SP1的Toolbox导致的VS不可用
- 破解Excel 密码保护
- 配置Subversion
- WordPress 路径相关函数总结(二):主题路径相关函数
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- GlassFish 目录穿越漏洞测试过程
- 安装CDH7.1.1
- GIT-SHELL 沙盒绕过(CVE-2017-8386)
- Azkaban-2.5.0-部署与常见案例
- 无字母数字webshell之提高篇
- Sqoop-1.4.7-部署与常见案例
- Hbase-2.0.0_01_安装部署
- 前端黑魔法之远程控制地址栏
- 攻击LNMP架构Web应用的几个小Tricks
- Hbase-2.0.0_02_常用操作
- phpjiami 数种解密方法
- Hbase-2.0.0_03_Hbase数据模型
- ELK-elasticsearch-6.3.2部署
- Real World CTF 2018 bookhub 总结
- python http.server open redirect vulnerability