Kết luận chƣơng III

Một phần của tài liệu (LUẬN văn THẠC sĩ) khôi phục ảnh màu bị mờ và nhiễu bằng các bộ lọc có hướng (Trang 66 - 73)

Chƣơng 3 trình bày về việc cài đặt chƣơng trình, xây dựng dữ liệu thực nghiệm khôi phục ảnh màu bị nhiễu bằng các bộ lọc có hƣớng, các quá trình thực nghiệm, kết quả thực nghiệm và các kết quả đánh giá, nhận xét các xử lý từ thực nghiệm. Phƣơng pháp khôi phục ảnh dùng bộ lọc có hƣớng đã đƣợc so sánh với các phƣơng pháp khác trên 3 mẫu ảnh theo các độ nhiễu khác nhau. Đại lƣợng đo độ đồng dạng của ảnh đã đƣợc khôi phục so với ảnh ban đầu đƣợc dùng là PSRN. Kết quả cho thấy khôi phục ảnh dùng bộ lọc có hƣớng cho kết quả ổn đinh và tốt nhất.

KẾT LUẬN

Luận văn đã khảo sát một số thuật toán và thấy rằng hầu hết các kỹ thuật mới nhất đều nhạy với nhiễu ảnh. Luận văn tập trung tìm hiểu một phƣơng pháp giải chập mù ảnh đặc trƣng có tác dụng mạnh với nhiễu so với các phƣơng pháp. Phƣơng pháp này sử dụng lọc hƣớng để giảm nhiễu trong khi giữ đƣợc thông tin theo hƣớng trực giao của chúng. Bằng việc áp dụng một loạt các bộ lọc hƣớng khác nhau nhƣ vậy, thuật toán chỉ ra làm thế nào khôi phục hình chiếu 1d chính xác của kernel theo tất cả các hƣớng, mà thuật toán dùng để ƣớc lƣợng kernel mờ chính xác sử dụng nghịch đảo biến đổi Radon. Thuật toán cũng đƣa ra một kỹ thuật giải chập không mù chống nhiễu mà tạo ra kết quả cuối có chất lƣợng cao. Hiệu quả của phƣơng pháp này đƣợc trình bày trong một số so sánh dựa trên dữ liệu tổng hợp và dữ liệu thực tế. Tuy nhiên trong quá trình thực hiện, với thời gian không có nhiều, năng lực chuyên môn, điều kiện thực nghiệm còn hạn chế, nên việc đánh giá tổng hợp các phƣơng pháp còn khiếm khuyết. Tôi rất mong nhận đƣợc sự đóng góp ý kiến của các Thầy Cô cùng bạn bè đồng nghiệp.

Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn

TÀI LIỆU THAM KHẢO Tiếng Việt

[1] Lƣơng Mạnh Bá, Nguyễn Thanh Thủy (1999). Nhập môn xử lý ảnh số, Nhà xuất bản Khoa học kỹ thuật, Hà Nội.

[2] Đỗ Năng Toàn, Phạm Việt Bình (2007). Giáo trình xử lý ảnh, Nhà xuất bản Đại học Hà nội.

[3] Võ Đức Khánh, Hoàng Kiếm (2007). Giáo trình xử lý ảnh. Nhà xuất bản Đại học Quốc Gia TP Hồ Chí Minh.

[4] Nguyễn Kim Sách (1977). Xử lý ảnh và video số, Nhà xuất bản Khoa học kỹ thuật, Hà Nội.

Tiếng Anh

[5] Buades, C. B., and J.-M. Morel. The staircasing effect in neighborhood filters and its solution. IEEE Transaction on Image Processing, 15(6), 2006.

[6] S. Cho and S. Lee. Fast motion deblurring. SIGGRAPH ASIA, 2009.

[7] S. Cho, J. Wang, and S. Lee. Handling outliers in non-blind image deconvolution. ICCV, 2011.

[8] T. S. Cho, S. Paris, B. K. P. Horn, and W. T. Freeman. Blur kernel estimation using the radon transform. CVPR, 2011.

[9] K. Dabov, A. Foi, V. Katkovnik, and K. Egiazarian. Image denoising by sparse 3d transform-domain collaborative filtering. TIP, 2007.

[10] R. Fergus, B. Singh, A. Hertzmann, S. T. Roweis, and W. T. Freeman. Removing camera shake from a single photograph. SIGGRAPH, 2006.

[11] Goldstein and R. Fattal. Blur-kernel estimation from spectral irregularities. ECCV, 2012.

[12] N. Joshi, R. Szeliski, and D. J. Kriegman. Psf estimation using sharp edge prediction. CVPR, 2008.

[13] N. Joshi, C. L. Zitnicky, R. Szeliskiy, and D. J. Kriegman. Image deblurring and denoising using color priors. CVPR, 2009.

[14] Lin Zhong, Sunghyun Cho, Dimitris Metaxas, Sylvain Paris, Jue Wang, Handling Noise in Single Image Deblurring using Directional Filters, CVPR 2013.

[15] S. Y. Kim, Y. W. Tai, S. J. Kim, M. S. Brown, and Y. Matsushita. Nonlinear camera response functions and image deblurring. CVPR, 2012.

[16] Levin, Y. Weiss, f. Durand, and W. T. Freeman. Understanding and evaluating blind deconvolution algorithms. CVPR, 2009.

[17] Levin, Y. Weiss, f. Durand, and W. T. Freeman. Efficient marginal likelihood optimization in blind deconvolution. CVPR, 2011.

[18] Q. Shan, J. Jia, and A. Agarwala. High-quality motion deblurring from a single image. SIGGRAPH, 2008.

[19] Y. Tai and S. Lin. Motion-aware noise filtering for deblurring of noisy and blurry images. CVPR, 2012.

Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn

PHỤ LỤC: TRÍCH MÃ NGUỒN

Hàm chính xử lý mờ có nhiễu theo hƣớng deconv_orientation, có tham số về nhiễu (sig_noise) và tham số về hƣớng (orientation):

function [k,ex,ssde]=deconv_orientation(y,k_sz1,k_sz2,x,sig_noise,bmp_outname,orientation,edges_ w) %function [k,ex,ssde]=deconv_orientation(y,k_sz1,k_sz2,x,sig_noise,bmp_outname,orientation,edges_ w)

%blind deconvolution on an image, assuming a sparse MOG prior on the %derivatives

%This function solves in the derivatives space, that is, solve for each %derivative independently, without enforcing integrability.

%To approximate the covariance we use the free-energy update rules, %and construct a orientational covariance.

%input arguments: % y- blurred image

% k_sz1,k_sz2- desired kernel size

% x- (optional) original sharp image, for error evaluation. Note: error %is computed up to a small spatial shift since kernel

%reconstruction is invariant to shift.

% sig_noise- (optional) noise std parameter. default 0.01.

% bmp_outname- (optional) output name to write temporary results at %different pyramid levels.

%orientation- should follow orientation

%edges_w- (optional) edges weighting for the *final* deconvolution %process.

%output:

% k-estimated kernel

% ex- estimated latent image

% ssde - error between estimated image and sharp reference. error %is computed after searching for the best shift.

% if ~exist('sig_noise','var') sig_noise=0.01; end if ~exist('bmp_outname','var') bmp_outname=[]; end if ~exist('orientation','var') orientation=0; end if ~exist('x','var') x=[]; end if ~exist('edges_w','var') edges_w=0.0068; end

%set the parameters of our deconvolution problem %(see readme file for description)

sig_noise_v=sig_noise*(1.15.^[10:-1:0]); load MOGparams prob.prior_ivar=ivars; prob.prior_pi=pis; prob.filts(:,:,1)=[-1 1; 0 0]; prob.filts(:,:,2)=[-1 0; 1 0];

Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn ret=0.5^0.5; prob.cycconv=0; prob.covtype='diag'; prob.update_x='conjgrad'; prob.filt_space=1; prob.init_x_every_itr=1; prob.k_prior_ivar=0.01; prob.unconst_k=0; prob.eval_freeeng=0;

%make sure kernel size is odd k_sz1=floor(k_sz1/2)*2+1; k_sz2=floor(k_sz2/2)*2+1; prob.k_sz1=k_sz1; prob.k_sz2=k_sz2; tf=zeros(k_sz1,k_sz2); tf(ceil(k_sz1/2),ceil(k_sz2/2))=1; tf(ceil(k_sz1/2),ceil(k_sz2/2)+1)=1; tf=tf/sum(tf(:)); prob.k=tf; prob.y=y; tic

%here we call the main deconvolution routine, in a coarse to fine scheme [prob1,kListItr]=multires_deconv(prob,ret,sig_noise_v,orientation,bmp_outname); k=prob1.k;

k=k/sum(k(:)); toc

%final non blind deconvolution with the estimated kernel [ex]=deconvSps(y,k,edges_w,70);

if ~isempty(x)

% compute error between estimated image and sharp reference. % error is computed after finding the best shift.

[ssde]=comp_upto_shift(ex,x) else

ssde=[]; end

Một phần của tài liệu (LUẬN văn THẠC sĩ) khôi phục ảnh màu bị mờ và nhiễu bằng các bộ lọc có hướng (Trang 66 - 73)

Tải bản đầy đủ (PDF)

(73 trang)