Я читаю чей-то transform.py, и есть код, который действительно смущает меня. Вот оно:
np.concatenate(img_group, axis=2)
однако img_group
- это последовательность <class 'PIL.Image.Image'>
, и я просмотрел документы np.concatenate (), он говорит мне, что: введите описание ссылки здесь
numpy.concatenate ((a1, a2, ...), axis = 0, out = None) Объединить последовательность массивов вдоль существующей оси. Параметры: a1, a2,…: последовательность array_like Массивы должны иметь одинаковую форму, за исключением размера, соответствующего оси (первая по умолчанию).
иЯ пробовал несколько примеров, таких как:
x = Image.open('flows/v_ApplyEyeMakeup_g08_c01/frame/img_00001.jpg').convert('RGB')
y = Image.open('flows/v_ApplyEyeMakeup_g08_c01/frame/img_00002.jpg').convert('RGB')
z = np.concatenate([x,y], axis=2)
, тогда это сработало! z
- это тип numpy.ndarray
, размер которого (240 320,6). Однако <class 'PIL.Image.Image'>
, похоже, не тот тип array
, который необходим для параметров np.concatenate()
, поэтому мне интересно, как он работает?