2017-01-12 32 views
-2

可視化LabelMe數據庫LabelMe數據庫可以從http://www.cs.toronto.edu/~norouzi/research/mlh/data/LabelMe_gist.mat如何利用Matlab

下載但是,還有另一個鏈路http://labelme.csail.mit.edu/Release3.0/ 該網頁有一個工具箱,但我找不到任何數據庫下載。所以,我想知道是否可以使用具有以下字段的LabelMe_gist.mat。字段names包含圖像的標籤,並且img可能包含圖像。如何顯示培訓和測試圖像?我使用(IMG) 錯誤imread> parse_inputs(線486) 文件名或URL參數必須是一個字符串試圖

IM = imread。

錯誤imread(線336) [文件名,fmt_s,extraArgs,MSG] = parse_inputs(varargin {:});

但肯定這不是方法。請幫助

load LabelMe_gist.mat; 
load('LabelMe_gist.mat', 'img') 

picture

+0

'imread'是用於從文件中讀取圖像。既然你有一個圖像(四維uint8),請嘗試'imshow'來看它。 – Florian

+0

@Florian:我不知道當爲這個數據集使用'imshow()'時要傳遞什麼參數。 'img'字段的信息表明它是4D類型的。一個imgae怎麼可能是四維的? – SKM

回答

0

因爲我們沒有從您的文章什麼樣的數據,這是我繼續下載了它的主意。原來,img是大小爲32x32(RGB)的22019圖像的集合。這就是爲什麼img是一個32 x 32 x 3 x 22019變量。因此,第i圖像是可訪問經由imshow(img(:,:,:,i));

這裏是所有這些的動畫(按下Ctrl + C中斷):

for iImage = 1:size(img,4) 
    figure(1);clf; 
    imshow(img(:,:,:,iImage)); 
    drawnow; 
end 
+0

謝謝你的回覆。輸出的圖像非常小,很難被看到。所以,我試圖放大原始圖像5倍的第10個圖像(說)'I =(img(:,:,:,10)); J = imresize(I,5); imshow(J)'但輸出非常模糊。可以做些什麼,以便顯示器可以很大。 – SKM

+0

不是,圖像是32乘32像素,這就是你所得到的。我想默認情況下,'imresize'會默認使用雙立方插值(這可能看起來很模糊以獲得極大的放大倍數),您可能想使用'J = imresize(I,5,'nearest');'以獲得更真實的視圖數據中實際存在的內容。 – Florian