Indexed images also require the use of themap output ofimread, which you will find explained in the documentation, along with complete working examples which I only slightly altered for you here:
>> [X,map] = imread('Afternoon Rain.bmp');
>> Y = ind2rgb(X,map);
>> image(Y)
which creates this figure:
You can check if the image is indexed by checking themap output: if it isempty then the image isnot indexed. Alternatively you can use an external program to know if an image is indexed: for example this is the image information thatGIMP shows, the fourth line clearly states that the colorspace of this image is indexed: