python图片、向量相关处理
访问文件夹下的图片
for root, dirs, files in os.walk(dir):
if len(dirs)==0:
lable=root[12:]
for file in files:
img=io.imread(root+’/’+file)
#imgarr=img.flatten() #转化成向量
img=img.ravel()
#矩阵按行转化成向量
img.reshape(6,order=’C’)
#矩阵按列转化成向量
img.reshape(6,order=’F’)
#改变图片矩阵的大小
img=transform.resize(img,(w,h))
#list中添加图片向量
imgs.append(img)
#将lable及对应索引存入一个文件
labletxt=open(“../data/lable.txt”,’a’)
labletxt.write(str(i)+’ ‘+lable+’\n’)
i=i+1
zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压)
#结果为双中括号,例[[132.36055, 132.43315, 132.50566, ……134.09851, 134.17006]]
map(list, zip(*data))
#结果为单中括号,例[132.36055, 132.43315, 132.50566, ……134.09851, 134.17006]
map(list, zip(*data))[0]