今天在制作自己训练集合并且训练的时候,碰见了如下的错:
image_size must contain 3 elements[4]
这是因为训练的数据集中不是所有的图片位深都是三通道的。
写一个脚本查看所有的数据集中所有的数据,列举出不是RGB的图片:
from PIL import Image
import os
path = '/home/seven/cy_folder/data/plane/' #图片目录
for file in os.listdir(path):
extension = file.split('.')[-1]
if extension == 'jpg':
fileLoc = path+file
img = Image.open(fileLoc)
if img.mode != 'RGB':
print(file+', '+img.mode)
然后删除这些图片,可以重新找一些图片添加到训练集中。
这里需要特别注意的一点是不是所有的.jpg
文件都是三通道的。