numpy - имеет дело с неизвестной формой ndarray (изображения RGB/ оттенки серого)
Я хочу написать функцию, которая накладывает меньшее изображение small
(ndarray) на большом изображении big
, Проблема в том, что эти изображения могут быть любой комбинацией RGB shape = (H, W, 3)
или оттенки серого shape = (h, w)
Это значит, что для каждого случая мне приходится писать разные коды.
Случай 1 - большое изображение RGB, маленькое изображение в оттенках серого:
big[0:h, 0:w, :] = small[:,:,:]
Случай 2 - большое изображение в оттенках серого, маленькое изображение в оттенках серого:
big[0:h, 0:w] = small[:,:]
так далее...
Есть ли краткий ярлык, чтобы сказать что-то вроде
big[0:h, 0:w, 'if there is axis here, take :, otherwise ignore it'] = small[:,:]