У меня есть это изображение:
Я пытаюсь сфокусировать фон, чтобы определить края изображения. Какие методы доступны мне (либо на пробел / частота)?
Я пробовал следующее:
kernel = np.array([[-1,-1,-1], [-1,9,-1], [-1,-1,-1]])
im = cv2.filter2D(equ, -1, kernel)
Это выводит это изображение:
Я также поиграл с центральным значением, но без положительного результата.
Я тоже пробовал это:
psf = np.ones((5, 5)) / 25
equ = convolve2d(equ, psf, 'same')
deconvolved = restoration.wiener(equ, psf, 1, clip=False)
plt.imshow(deconvolved, cmap='gray')
Без заметных изменений изображения.
Любая помощь по этому поводу приветствуется!
Обновлено:
Вот код, который я взял из здесь:
psf = np.ones((5, 5)) / 25
equ = convolve2d(equ, psf, 'same')
deconvolved, _ = restoration.unsupervised_wiener(equ, psf)
plt.imshow(deconvolved, cmap='gray')
и вот результат:
«Это выводит это изображение» - и оно действительно менее размытое, поэтому миссия выполнена. Компьютер не может волшебным образом добавить детали, которых нет на исходном изображении.
Дело в том, что он у меня по заданию из университета ... это моя задача De-blurring (de-noising) of the image by application of a suitable filter (either on space/frequency filed) and experiment with different choices and provide comments.
@ usr2564301 Действительно, вы правы, но в качестве следующего шага мне нужно выполнить обнаружение краев, и менее размытое изображение, на мой взгляд, будет работать хуже, чем исходное.
Ах, вы должны редактировать свой вопрос и добавить к нему причина. Я не имею в виду то, что это задание в университете - нам все равно, - но потому, что вам это нужно в качестве входных данных для следующего шага, обнаружения края.
вы можете попробовать изменить размер изображения несколько раз. Размытые объекты должны быть «резкими» в более низких масштабах (но, очевидно, с низкой детализацией). Только убедитесь, что при создании вашей «масштабной космической пирамиды» не добавляется никакого дополнительного размытия.
@Micka: вы правы, но в данном случае это изображение настолько размыто, что даже уменьшение в линейный коэффициент 8 не дает хороших краев (а изображение микроскопическое). А для уменьшения в любом случае необходимо применить некоторую фильтрацию нижних частот, потому что изображение зашумленное.






Удаление размытия изображений (к сожалению) довольно сложно, причина этого в том, что размытие устраняет шум, поэтому есть несколько (зашумленных) изображений, которые будут давать одно и то же изображение, когда вы его размываете. Это означает, что для компьютера не существует простого способа «выбрать», какое из шумных изображений при удалении размытия. Из-за этого удаление размытия часто приводит к появлению зашумленных изображений.
Теперь вы можете спросить, как фотографы делают это на самом деле. На самом деле они не размывают изображения, а повышают их резкость (что немного отличается). Когда вы увеличиваете резкость изображения, вы увеличиваете контраст около границ, чтобы выделить их (вот почему вы иногда видите ореол вокруг границ на изображениях, которые были слишком сильно увеличены).
В вашем случае вы хотите удалить размытие (и нет ядра свертки, которое позволило бы вам это сделать). Чтобы сделать это правильно, вам нужно знать, какой процесс в первую очередь размыл изображение (то есть если вы не хотите тратить тысячи долларов на специальное программное обеспечение или у вас нет степени магистра по математике или астрономии). .
Если вы все еще хотите это сделать, я бы порекомендовал поискать деконволюцию, а если вы не знаете процесс размытия, слепую деконволюцию. В скимейже есть несколько (грубых) функций, которые могут помочь (http://scikit-image.org/docs/stable/auto_examples/filters/plot_resturation.html#sphx-glr-auto-examples-filters-plot-resturation-py).
Наконец, последняя ссылка в Jax Briggs кажется полезной, но я бы не скрестил пальцы для волшебных результатов.
Спасибо за ответ! Я уже изучал это, но в результате получал странные белые изображения (некоторые черные пиксели). Я отправлю код и полученное изображение в качестве редактирования
Если вы хотите сфокусировать фон, способ Только - сделать снимок с фоном в фокусе. Все те телепрограммы, в которых они улучшаются в цифровом виде, чтобы извлекать четкие детали номерных знаков, лиц и т. д. Из размытых изображений или изображений с низким разрешением ... на самом деле невозможно. Вы можете интерполировать детали и создать наиболее подходящее решение, но вы не можете добавить детали, которых нет в самом начале.