svv писал(а):
(чем не усреднение?), то была бы возможна такая оптимизация: сначала обработать столбцы фильтром
, затем строки фильтром
.
Во блин! А я до этого тоже допер! Только я соответствующей терминологии не знаю.
Поэтому смогу объяснить простым языком
То есть вместо
делается 2 итерации:
сначала
, а потом
. Это равносильно общей формуле
, где
, но очень мало (т.е. мы добавили в сумму не только смежные ячейки, но и смежные по диагонали, но с очень маленьким весом). Если я правильно угадал смысл задачи, это изменение формулы должно быть несущественно.
Параметры
нужно подобрать (в частности
), но за
операций. Тогда каждую матрицу можно пересчитать, выделяя не
, а всего
новых переменных (в 1-й части пересчитываются отдельно строки - нужно помнить 2 старых значения + еще одно, в второй части - столбцы - итого
присваиваний, что, конечно, хуже). Можете попробовать. Сильно хуже точно не будет. Код будет тоже не сильно сложный.