У меня есть изображение RGB, и я пытаюсь найти, находится ли это изображение в фокусе или не в фокусе. Вначале я сделал 2D FFT, но когда я построил радиальный спектр, не было четкого различия между изображениями, которые находятся в фокусе, и изображениями, которые не в фокусе. Мне сказали использовать производные изображений, но когда я рисую этот новый спектр, результаты не выглядят так, как я ожидал. Поскольку она является частью более крупной программы, я пишу псевдокод здесь, это не полная программаИзображение производное и FFT-Matlab
%read the file and the part of the image I am working on
file='test1.jp2'
image_part=imread(file,'PixelRegion',{[xpixmin xpixmax],[ypixmin ypixmax]});
%derivatives
dx=diff(double(image_part),1,1);
dy=diff(double(image_part),1,2);
........
created tapers with Slepian sequences (dpss), multiplied with dx and dy and
then new outcome is tap_dx,tap_dy
.......
%FFT
fft2_dx=fft2(tap_dx)
fft2_dy=fft2(tap_dy)
%magnitude and fftshift
fft2_abs_dx=fftshift(abs(fft2_dx))
fft2_abs_dy=fftshift(abs(fft2_dy))
%to take the radial spectrum average the Fourier spectrum over the different
frequencies(fr)
avg_dx=mean(fft2_abs_dx(fr))
avg_dy=mean(fft2_abs_dy(fr))
plot(fr,avg_dx+avg_dy)
Прежде, чем я сделал производное радиальный участок начинается от точки максимума, а затем спускается в монотонном путь к минимальному значению. Когда я рисую производную, хотя радиальный график начинается с максимальной точки, затем переходит в точку минимума, а затем снова увеличивается, что кажется неправильным. Кто-нибудь пытался найти, находится ли изображение в фокусе или не в фокусе, используя эту технику. Я не нашел для этого ссылок.
Цель проекта - не корректировать фокус изображения, но выяснить, находится ли изображение вне фокуса и отклонить его автоматическим способом.
Спасибо заранее.
Хороший ответ. Просто чтобы добавить к вашему объяснению, [эта страница] (http://yuzhikov.com/articles/BlurrImagesRestoration1.htm) имеет отличную демонстрацию этих операций, включая слепую деконволюцию, с кодом MATLAB. См. Также [этот пост MathWorks] (http://blogs.mathworks.com/steve/2007/08/13/image-deblurring-introduction/). – chappjc
Да, это отличная ссылка. Существует немало ресурсов Matlab для решения этой проблемы и других приложений обработки изображений.Я просто не понимаю подход к градиенту изображения, который не решает для расфокусировки. –
Похоже, что кто-то сделал предложение о манжете, не имея большого знания домена. – chappjc