OpenCV: эффективная разность гауссовских

Я пытаюсь реализоватьРазница гассов (DoG), для конкретного случая обнаружения края. Как следует из названия алгоритма, он на самом деле довольно прост:

Mat g1, g2, result;
Mat img = imread("test.png", CV_LOAD_IMAGE_COLOR); 
GaussianBlur(img, g1, Size(1,1), 0);
GaussianBlur(img, g2, Size(3,3), 0);
result = g1 - g2;

Однако у меня есть ощущение, что это можно сделать более эффективно. Может ли это быть сделано за меньшее количество проходов по данным?

ВопросВот научил меня разделить фильтры, но яЯ слишком много новичка в обработке изображений, чтобы понять, как применять их в этом случае.

Кто-нибудь может дать мне несколько советов о том, как можно оптимизировать это?

Ответы на вопрос(2)

Ваш ответ на вопрос