MatLAB загружает изображение и показывает его правильно

Я пытаюсь загрузить изображение и показать его в MATLAB. Некоторое время назад он работал на моем другом компьютере, но на этом компьютере изображение выглядит совершенно неправильно, и я не знаю, почему.

Заранее спасибо за помощь.

Это изображение, которое я загружаю: https://dl.dropboxusercontent.com/u/13524574/%281%29.png

Вот как это показывает MatLAB: https://dl.dropboxusercontent.com/u/13524574/WrongImage.png

Вот мой код:

function main()

    workingDir = 'E:\MASTERS\MatLAB\FullVideo_R_OF_HOF\Images';
    S4A = zeros(360,640,3,256);

    %getting 256 frames of the images
    for ii = 1:256 
        S4A(:,:,:,ii)  = imread(fullfile(workingDir,'S4A',strcat('(',int2str(ii),').png')));
    end

    %showing first frame only
    imshow(S4A(:,:,:,1));

end

person Conrad    schedule 06.05.2014    source источник


Ответы (1)


Я не совсем уверен, что там происходит со всеми этими индексами, но я думаю, что смогу предложить альтернативу. Ознакомьтесь с третьим абзацем документации, здесь, для получения информации о возвращаемом значении. . Я предлагаю использовать массив ячеек для ясности.

function main()

    workingDir = 'E:\MASTERS\MatLAB\FullVideo_R_OF_HOF\Images';
    S4A = zeros(360,640,3,256);

    %getting 256 frames of the images
    for ii = 1:256 
        A{ii}  = imread(fullfile(workingDir,'S4A',strcat('(',int2str(ii),').png')));
    end

    %showing first frame only
    imshow(A{1});

end
person Justin Fletcher    schedule 06.05.2014
comment
Чудесно! Это также немного более надежный способ хранения данных и доступа к ним. Документация находится здесь. Кроме того, я вижу, что вы новенький, добро пожаловать! Если это то, что вы ищете, вы можете нажать на галочку рядом с вопросом, чтобы принять мой ответ. Спасибо! - person Justin Fletcher; 06.05.2014