2013-08-27 3 views
7

MatLab을 처음 사용합니다. 주변을 놀고 도움말 가이드를 통해 읽었지만 나는이 상황을 해결할 수없는 것 같습니다.Matlab에서 이미지 떨림 제거

enter image description here

나는 가우시안 알고리즘을 사용하여 노이즈를 제거 하였다. 그것은 성공적 이었지만 이미지를 깨끗하게 처리하지 못했습니다. 리차드슨 - 루시 디 블러 링 알고리즘을 사용해 보았지만 작동하지 않습니다. 어떤 생각이든 어떻게 해결할 수 있습니까? 사전에 Thnx.

여기까지 제가 한 것입니다. = 21킬로바이트 화상 사이즈 = 264 나 메디안 필터를 사용했을 때, 난이 출력을 가지고 X 126

img = imread('car_plate.jpg') 
subplot(331); 
imshow(img), title('Original Image') 

PSF = fspecial('gaussian',15,15); 
blur = imfilter(img,PSF,'replicate'); 
subplot(332);imshow(blur);title('Filter image'); 

motion_noise = fspecial('disk', 7); 

luc1 = deconvlucy(img,motion_noise); 
subplot(333); imshow(luc1); 
title('Disk and Lucy'); 

LEN = 9; THETA = 1; 
motion_noise2 = fspecial('motion', LEN, THETA); 


luc2 = deconvlucy(blur,motion_noise2); 
subplot(334); imshow(luc2); 
title('Motion and Lucy'); 

medfilt2
예상 입력 숫자를 사용하여 오류하는

화상 사이즈 , 2 차원 적이어야한다. medfilt2에

오류> parse_inputs (라인 106)
validateattributes (a, { ', 숫자'논리 '} {'2D ','실제 '} mfilename,'A ', 1);

medfilt2 (줄 48)의 오류
[a, mn, padopt] = parse_inputs (varargin {:});

a1q21 (2 행)의 오류
J = medfilt2 (img);

내 현재 결과는 다음과 같습니다.

enter image description here

+0

입력 이미지의 노이즈는 "소금 후추"노이즈처럼 보입니다. [median filter] (http://www.mathworks.com/help/images/ref/medfilt2.html)를 사용하여 제거하십시오. – Shai

+0

@shai Thnx. 필자는 중간 값 필터를 사용해 보았습니다. 문제는 이미지가 2-D로되어 있지 않고 강사가 어쨌든 이미지를 변환 할 필요가 없다고 말했습니다. 그녀가 나에게 말한 것은 리차드슨 - 루시 디 블러 링 알고리즘을 사용해야한다는 것뿐이었습니다. – Harvin

+0

"이미지가 2-D가 아닙니다"라는 것은 무엇을 의미합니까? 각 채널을 중간 값으로 필터링하고 다시 조합 할 수 있습니다. 결과를 비교해보십시오. – Shai

답변

4

당신은 (필 박스가 나쁜 선택이다) 당신의 debluring 알고리즘에 대한 잘못된 점 확산 함수를 사용하고 있습니다. 최상의 결과를 얻으려면 중간 값 필터를 사용하여 S & P 노이즈를 제거한 다음 가우스 커널을 사용하여 흐리게 처리하십시오. 이미지가 강하게 방향이 흐려지는 것처럼 보이지 않으므로 모션 흐리게 처리를 건너 뛸 것입니다. 최상의 결과를 얻으려면 선명 효과 필터의 시그마를 사용해야합니다.

img = imread('car_plate.jpg') 
subplot(331); 
imshow(img), title('Original Image') 

blur = medfilt2(img,[3 3]); 
subplot(332);imshow(blur);title('Filter image'); 

deblurSigma = 10; %Adjust this to get the most visually pleasing results 
motion_noise = fspecial('gaussian', 15,deblurSigma); 
luc1 = deconvlucy(img,motion_noise); 
subplot(333); imshow(luc1); 
title('Disk and Lucy');