# -*- coding: utf-8 -*-
import oss2
import io
from PIL import Image
import os
import cv2
import tensorflow as tf
# 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
auth = oss2.Auth('sb', 'sb')
# yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
# 填写Bucket名称。
endpoint = 'oss-cn-shanghai.aliyuncs.com'
bucket = oss2.Bucket(auth, 'oss-cn-shanghai.aliyuncs.com', 'sb')
# bucket.get_object的返回值是一个类文件对象(File-Like Object),同时也是一个可迭代对象(Iterable)。
# 填写Object的完整路径。Object完整路径中不能包含Bucket名称。
index_file = 'train/test.txt'
# object_stream = bucket.get_object('facetrain/test.txt')
_indices = bucket.get_object(index_file).read().decode().splitlines()
print(type(_indices))
datalist = []
labellist = []
for file in _indices:
pathlist = file.split(" ")
filepath = 'facetrain'+'/'+ pathlist[0]+'/'+pathlist[1]
img_str = bucket.get_object(filepath)
img_buf = io.BytesIO()
img_buf.write(img_str.read())
img_buf.seek(0)
img = Image.open(img_buf).convert('RGB')
img_buf.close()
label = pathlist[0][0]
datalist.append(img)
labellist.append(img)