Можно металлом стекло покрывать не обязательно в вакууме, а например в растворе, как раз под действием электрического тока (при наличии предварительного нанесения на стекло прозрачного электрода). :-)
Можно еще так:
Бинаризировать, сделать автокроп, нарисовать черный прямоугольник по центру с размером сторон чуть меньше размера кропнутой картинки. Далее connected-components. Центроиды будут координатами углов листа.
Ага, а потом сохраняете в jpeg... и получаете не 3 цвета, а множество.
Еще преобразование rgb2ycrcb вносит свои погрешности.
Вобщем jpeg это lossy формат, и не стоит ожидать от него точности.
А разве ваш результат будет валидным ndarray? Какой будет shape?
Можно развернуть массив в 1d, удалить nanы и собрать в какой-то 3d.
Заменить на нули, например, можно так:
a[np.where(np.isnan(a))]=0
Александр, еще надо создать слой, на котором крупным красным кеглем написать "Нужно получить!"
:-)
Я бы без выделения и удаления делал, просто наложение слоев с подбором режима наложения вместо "Обычные" типа "Умножения"
Есть предположение, что вы забыли перевести a и b из строк в числа int, float. С оператором + это прокатывает, а с - нет.
какого типа a и b? нет ли опечатки: русская "с"