Кодирование UnsharpMask без Fourier функций

Я делаю некоторый код обработки изображений в C#, но я не могу пользоваться никакими библиотеками или GNU как код.

Функция UnsharpMask зависит от Гауссовой размытости, которая в свою очередь зависит от преобразований Фурье. Я написал код для всего этого, и вещи работают, но короче говоря, я должен удалить функции FFT. Там какой-либо путь состоит в том, чтобы выполнить нерезкую маску в другом отношении, для которой, возможно, не нужен FFT?

5
задан Jono 18 January 2010 в 15:10
поделиться

3 ответа

Я нашел решение, соответствующее моим потребностям.

Я попробовал несколько быстрых и грязных алгоритмов размытия и обнаружил, что достаточно как Размытие по рамке , так и Размытие по стеку . Stack Blur имеет более чистое размытие, чем Box Blur, и в несколько раз быстрее, чем Gaussian. Так что я могу использовать любой вместо гауссовского.

Теперь я могу избавиться от всего беспорядка в коде БПФ и заменить его чем-то более управляемым. Это решение может быть не для всех, но поскольку UnsharpMask основан на размытии, я не считал его слишком точным с точки зрения науки.

Кстати, размытие по Гауссу в GIMP, похоже, также избегает БПФ.

2
ответ дан 14 December 2019 в 19:13
поделиться

Фурье-преобразование части гауссова размытия - это всего лишь эффективный способ свертки с гауссовым ядром. Это можно сделать, используя прямую свертку с Гауссовым ядром соответствующего стандартного отклонения и размера (ядро нечетного размера примерно в 5-6 раз больше стандартного отклонения).

См. Свертка в Википедии .

3
ответ дан 14 December 2019 в 19:13
поделиться

Я считаю, что даже если вы не можете использовать какие-либо библиотеки или GNU, вы можете посмотреть на их реализацию и Попробуйте воспроизвести аналогичный код для ваших требований?

Список функций OpenCV. Проверьте детали функции здесь, а затем детали реализации в заголовочных файлах. http://opencv.willowgarage.com/documentation/genindex.html

также, если вы заинтересованы в реализации C #, я бы предложил следующее http://aforgenet.com/framework/

0
ответ дан 14 December 2019 в 19:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: