, поэтому у меня есть изображения в формате (ширина, высота, канал). Мой оригинальный канал в RGB. Поэтому я загружаю изображения в оттенках серого
for r, d, file in tqdm(os.walk(path)):
for i in tqdm(file):
if i[0:2]=="01":
dist_one.append(cv2.imread(os.path.join(path,i),cv2.IMREAD_GRAYSCALE))
else:
dist_two.append(cv2.imread(os.path.join(path,i),cv2.IMREAD_GRAYSCALE))
Предположим, изображения имеют форму (187, 187). Поэтому я добавляю канал, используя код
g = np.expand_dims(dist_one[0], axis=0)
Но это разрывает изображения, когда я пытаюсь построить изображение.
TypeError Traceback (последний вызов последнего) в () 1 импортировать matplotlib.pyplot как plt 2 ----> 3 plt.imshow (dist_one [0], cmap = 'grey') 4 plt.show () 5 кадров / usr / local / lib / python3 .6 / dist-packages / matplotlib / image.py в set_data (self, A) 688 или self._A.ndim == 3 и self._A.shape [-1] в [3, 4]): 689 поднять TypeError ("Неверный" shape {} для данных изображения "-> 690
.format (self._A.shape)) 691 692, если self._A.ndim == 3: TypeError: Неверная форма (1, 187, 187) для данных изображения
Но это работает, когда канал ставится последним. g = np.expand_dims(dist_one[0], axis=-1).
В чем причина этого? Мне нужен канал в первую очередь для pytorch. Или я должен тренировать модель с разбитыми изображениями?