qq_24966011 2018-10-14 01:52 采纳率: 0%
浏览 5125
已结题

TypeError: a bytes-like object is required, not '_io.TextIOWrapper' 想把标签和图片变成pickle

报出这个错误,很是费解。。求大神解救
import tensorflow as tf
import os
import numpy as np
from PIL import Image
import pickle

img_path='./flower_photos'
img_size=224

def read_image(img_path):
imgs=[]
labels=[]
num=0
for i in os.listdir(img_path):
if os.path.isdir(os.path.join(img_path,i)):
# print(i)
for j in os.listdir(os.path.join(img_path,i)):
path=os.path.join(img_path,i)+'/'+j
# print(path)
img=Image.open(path)
img=img.resize((img_size,img_size))
img_ndarray=np.asarray(img,dtype='float32')
imgs.append(np.ndarray.flatten(img_ndarray))
num+=1
if i=='daisy':
labels.append(0)
elif i=='dandelion':
labels.append(1)
elif i=='roses':
labels.append(2)
elif i=='sunflowers':
labels.append(3)
elif i=='tulips':
labels.append(4)
# print(imgs)
# print(labels)
# print('一共%d个图片',num)
return imgs,labels,num
def generate_imgpickle(img_path,outfile):
write_file=open(outfile,'wb')
imgs,labels,num=read_image(img_path)
print(imgs,labels,num)
pickle.dump(imgs[0:num],labels[0:num],write_file,-1)
write_file.close()
def load_imgpickle(outfile):
reader=open(outfile)
data=pickle.loads(reader)
print(reader)
reader.close()

if name=='__main__':
generate_imgpickle(img_path,'trainimg.pickle')
load_imgpickle('trainimg.pickle')

  • 写回答

1条回答 默认 最新

  • devmiao 2018-10-14 03:40
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名