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[:,:]

0 ответов

Другие вопросы по тегам