簡體   English   中英

Matlab imageset方法讀取順序和圖像名稱?

[英]Matlab imageset method order of read and name of image?

%% Load images from folder

% Use imageSet to manage images stored in multiple folders
imset = imageSet('pet_images','recursive');
% Preallocate arrays with fixed size for prediction
imageSize = cnnModel.net.normalization.imageSize;
trainingImages = zeros([imageSize sum([imset(:).Count])],'single');

% Load and resize images for prediction
for ii = 1:numel(imset)
    for jj = 1:imset(ii).Count
        imshow(read(imset(ii),jj)); 
        trainingImages(:,:,:,jj) = imresize(single(read(imset(ii),jj)),imageSize(1:2));

    end
end

我想從目錄中讀取圖像。 但這給了我一些圖像錯誤。

Assignment has fewer non-singleton rhs dimensions than non-singleton subscripts
  • 我使用斷點來查找哪個圖像有問題。 當它給出錯誤時,我捕獲圖像的索引並顯示該圖像。

  • 我從該目錄中找到該圖像。 它的順序為1061(根據名稱順序),但jj的值為1012。

我有三個問題。

  1. 為什么會出現此錯誤? ((錯誤)圖像的分辨率:(263x380))
  2. 為了找到圖像,我檢查了圖像和相同類型的貓。 在for循環中,我可以獲取此圖像的名稱嗎?
  3. imageset讀取目錄時,根據其讀取內容(名稱,類型,日期等)的方式是什么? 為什么行號(1061)和索引(1012)不匹配?
  1. 如果圖像是灰度圖像,則會產生錯誤。
    因為訓練圖像需要rgb圖像。
  2. 獲取圖片名稱,可以使用下面的代碼;

     imshow(read(imset(ii),jj)); a = select(imset(ii),jj); str = cellstr(a(1,1).ImageLocation); title(str); 
  3. 因為imageset按字母順序排序,但是方式(名稱)不同。

    • 目錄順序:img1,img2,img3,... img9,img10,img11 ... img20,...
    • imageSet讀取順序:img1,img2,img3,... img9,img10,img20 ... img21,...

暫無
暫無

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

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