簡體   English   中英

R-讀取jpeg時下標超出范圍

[英]R - Subscript out of bounds when reading jpeg

我正在嘗試從文件夾中讀取所有jpg文件,並將其存儲在矢量中。

為簡單起見,我嘗試僅讀取兩個圖像。

首先,我創建一個列表,該列表為我提供了1:2的字符向量。

original_files <- list.files("D:/User/Documents/Folder", pattern="*jpg$", full.name=F)

結果是:

[1] "File1.jpg" "File2.jpg"

然后,我創建一個空列表和一個for循環以讀取所有內容並存儲它們:

empty_list=list()
    for (i in original_files) 
    {
      img <- readJPEG(original_files[[i]])
      empty_list[[i]] <- img
  }

它執行返回以下錯誤的函數:

Error in gabor_ori_files[[i]] : subscript out of bounds

我不太了解為什么收到此消息或如何解決。 我嘗試使用lapply而不是for循環,它也不起作用。

任何幫助將不勝感激。 在此先感謝您的時間。

該錯誤來自您定義for參數的方式。

for (i in original_files)

意味着我應該采用original_files中的值,即“ File1.jpg”“ File2.jpg”。 在第一個循環中,您要

img <- readJPEG(original_files[["File1.jpg"]])

但是,向量中的所有元素都沒有名稱 “ File1.jpg”,它們的均為“ File1.jpg”

避免這種混淆的最好方法是始終循環顯示職位而不是姓名。 為了說詞,使用

for (i in 1:length(original_files))

那應該工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM