Most likely you are confusing bits per pixel with bits per color.
The .BMP file header contains the bits per pixel, which is exactly the information that imfinfo returns: in fact the imfinfo help clearly states that the BitDepth gives "Number of bits per pixel." But given that each pixel is divided into three colors, each color plane of that image only uses 8 bits (24 / 3 = 8). This is explained in the imread help. It is also explained here
"Graphics file formats store RGB images as 24-bit images, where the red, green, and blue components are 8 bits each."
When you use imread to import an image it will automatically select the most appropriate numeric class, which for an RGB image are the bits per pixel divided by three, returned as three pages of an array.
As an 8-bit unsigned integer of size MxNx3 is exactly correct for a 24 bit RGB image.
Best Answer