在Colab笔记本中无法打开Google Drive的文件夹,尽管路径是正确的
我在跟着一个教程 a tutorial 学习如何构建图像识别模型。我想在Google Colab中实现它,并从Google Drive导入images文件夹,因为我需要与其他人分享笔记本,并且希望他们在运行笔记本时不需要下载文件,也不需要每次运行时手动修改路径。到目前为止,它是这样的:
!pip install tensorflow keras split-folders opencv-python
import splitfolders
from google.colab import drive
drive.mount('/gdrive')
%cd /gdrive
input_folder = "/content/drive/MyDrive/dataset"
output_folder = "/content/drive/MyDrive/image-recognition"
split_ratio = (0.8, 0.1, 0.1)
splitfolders.ratio(
input_folder,
output= output_folder,
seed = 500, #para que cada ves que de dividan las imgs se haga de la misma forma
ratio = split_ratio,
group_prefix = None
)
其中“input folder”只是我正在使用的图片所在的文件夹,而“output folder”是一个用于整理图片的空文件夹。然而,当我执行到splitfolders函数时,出现了以下错误:
---------------------------------------------------------------------------
OSError Traceback (most recent call last)
/tmp/ipykernel_18929/1078962740.py in <cell line: 0>()
1 split_ratio = (0.8, 0.1, 0.1)
2
----> 3 splitfolders.ratio(
4 input_folder,
5 output= output_folder,
3 frames
/usr/lib/python3.12/pathlib.py in stat(self, follow_symlinks)
838 os.stat() does.
839 """
--> 840 return os.stat(self, follow_symlinks=follow_symlinks)
841
842 def lstat(self):
OSError: [Errno 107] Transport endpoint is not connected: '/content/drive/MyDrive/dataset'
尽管路径 '/content/drive/MyDrive/dataset' 是从“files -> dataset -> copy path”复制粘贴来的。这里有一个免费的图片数据集链接,方便大家复现我的问题:link 我已经尝试了其他将文件挂载到Colab笔记本的方法,但这个似乎是唯一能实现我目标的方法。
解决方案
你用这行 drive.mount('/gdrive') 把Google Drive挂载到了 '/gdrive',而你的input和 output路径是从 '/content/drive' 读取的。
为了解决这个问题,请将input_folder和 output_folder路径改为与挂载点匹配:
input_folder = "/gdrive/MyDrive/dataset"
output_folder = "/gdrive/MyDrive/image-recognition"
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。