我想使用keras :: image_load加载图像文件。图像存储在公共共享的Google云端硬盘中。我可以获取图像文件的Google云端硬盘ID,但是image_load()会自动在文件路径前添加当前项目目录(C:\ Analysis),因此找不到该文件。
这是一个代表
library(keras)
library(googledrive)
url <- "https://drive.google.com/drive/folders/1hWYi3vG2U547Nb1yTwXqsgKCDhaghL8j" # Path to Google Drive
folder <- drive_get(as_id(url))
# ... authorization steps here ...
file_list <- drive_ls(folder, type= "png") # list png images in folder
file_id <- file_list$id[1] # select first image: file_id = "10KIgEeNovqH9tMnRd-4CKN_9wWD7EJ8O"
# try to load image using Google Drive file id
img <- image_load(as_id(file_id), target_size = c(224, 224))
#Error in py_call_impl(callable, dots$args, dots$keywords) :
# FileNotFoundError: [Errno 2] No such file or directory:
# 'C:\\Analysis\\10KIgEeNovqH9tMnRd-4CKN_9wWD7EJ8O'
# Try to download image using the Google Drive file id
drive_download(as_id(file_id)) # This statement works, so the id is correct
显然,我可以将每个图像下载到本地目录,然后将下载文件的路径传递到image_load()。但是,出于效率目的,我宁愿不这样做。有什么方法可以使image_load()直接处理文件,而无需从Google云端硬盘下载文件?
任何帮助表示赞赏。谢谢。