我已经将大量.jpg图像从我的谷歌云端硬盘复制到谷歌Colab每个谷歌Colab: 如何从我的谷歌云端硬盘读取数据?
local_download_path = os.path.expanduser('~/data')
try:
os.makedirs(local_download_path)
except: pass
# 2. Auto-iterate using the query syntax
# https://developers.google.com/drive/v2/web/search-parameters
file_list = drive.ListFile(
{'q': "'1SooKSw8M4ACbznKjnNrYvJ5wxuqJ-YCk' in parents"}).GetList()
for f in file_list:
# 3. Create & download by id.
print('title: %s, id: %s' % (f['title'], f['id']))
fname = os.path.join(local_download_path, f['title'])
print('downloading to {}'.format(fname))
f_ = drive.CreateFile({'id': f['id']})
f_.GetContentFile(fname)
此操作已完成,因此所有图像文件都应位于data
文件夹中。我现在如何实际访问这些文件?我想遍历data
文件夹中所有.jpg类型的文件。
一种替代方法是使用已经实现的操作系统库。
# Just needed in case you'd like to append it to an array
data = []
for filename in os.listdir(local_download_path):
if filename.endswith("jpg"):
# Your code comes here such as
print(filename)
data.append(filename)
获取所有文件并转换为 numpy 数组
import cv2
import glob
path = "/content/bb/*.*"
for file in glob.glob(path):
print(file)
a= cv2.imread(file)
print(a)
将数据下载到local_download_path
后,您可以 使用glob.glob
按扩展名获取文件:
import glob
images = glob.glob(local_download_path + '/*.jpg')