matlab读取图片的异常表现

在对人脸图片进行对齐时,发现有两张人脸图片一直检测不到人脸,但这两张图片中的人脸明明很好检测(证件照),经过

排查,最终发现问题所在:图片的格式不对。

img = imread("**.jpg")

[m,n,c] = size(img)

排查发现,c=1,但图片明明是彩色的,使用imfinfo(\'*.jpg\')发现一张图片是PNG格式的。但此方法并不一直有效,比如imfinfo另一张图片,输出的

信息为空,不知道到底是什么格式的图片。正确的处理姿势(将图片转为RGB格式的图片即可):

[I, map] = imread(‘*.jpg’)

X1RGB = ind2rgb(X1, map1);

参考:https://www.mathworks.com/matlabcentral/answers/66255-reading-png-file-problem-with-colors