Как добиться недвоичного («мягкого») расширения с помощью OpenCV и Numpy?Python

Программы на Python
Anonymous
Как добиться недвоичного («мягкого») расширения с помощью OpenCV и Numpy?

Сообщение Anonymous »

Мне нужна операция, которую я бы назвал «мягким расширением».
Если стандартное расширение OpenCV с использованием двоичного ядра работает примерно так:

Код: Выделить всё

dst(x, y) = max src(x + i, y + j) for i, j if kernel[i, j]
Тогда «мягкое расширение» будет работать так:

Код: Выделить всё

dst(x, y) = max src(x + i, y + j) * kernel(i, j)
Итак, это похоже на использование 2D-фильтра, но с агрегатором max вместо sum.
Мне нужно решение для работы с большими (например, 40x40) гауссовыми ядрами.
Просматривая API OpenCV, я не вижу ничего, поддерживающего это. Расширение рассматривает каждое ядро ​​как двоичное. Я не вижу других фильтров, использующих агрегацию мин/макс...
Я мог бы реализовать это с помощью Cython и numpy, но я надеялся найти что-то уже созданное, протестированное и оптимизирован.

Подробнее здесь: https://stackoverflow.com/questions/788 ... v-or-numpy

Вернуться в «Python»