前提:你有一些disp(视差)图,例如我是在“”/home/lj/workspace/open-npy/img_d/”文件夹下有disp_1.bmp、disp_2.bmp、disp_3.bmp、disp_4.bmp四张视差图,来制作disp_re_1.npy、disp_re_2.npy、disp_re_3.npy、disp_re_4.npy深度信息的numpy格式压缩文件
视差图转深度信息就不在此赘述了,只需将
cl_depth = 7.2413060526743269e4/cl_disp/1000
中的相机内参调为自己对应的即可
import numpy as np
from PIL import Image
list1=[]
list2=[]
list3=[]
def make_npy():
global list1,list2,list3
im = Image.open(image_path)
width, height = im.size
for i in range (0,height):
for j in range (0,width):
cl_disp = im.getpixel((j,i))
if cl_disp==0:
cl_depth=0
else:
cl_depth = 7.2413060526743269e4/cl_disp/1000
list1.append(cl_depth)
list2.append(list1)
list1=[]
list3.append(list2)
list2=[]
d_info=np.array(list3)
list3=[]
return d_info
if __name__ == '__main__':
for k in range (0,4):
image_path = "/home/lj/workspace/open-npy/img_d/disp_{}.bmp".format(k)
depth_info=make_npy()
np.save("/home/lj/workspace/open-npy/img_d/disp_re_{}.npy".format(k),depth_info)
print "saved successful!"