谷歌合作:如何循环浏览文件夹中的图像?



我已经将大量.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')

最新更新