Trọng tâm của luận văn này là tìm hiểu các vấn đề liên quan đến việc khôi phục ảnh màu hỏng do bị mờ và nhiễu, nghiên cứu một số thuật toán khôi phục ảnh màu bị mờ và nhiễu và tập trung
Trang 1LỜI CẢM ƠN
Trên thực tế không có thành công nào mà không gắn liền với những
sự hỗ trợ, giúp đỡ trong suốt thời gian từ khi bắt đầu học tập tại trường đến nay, em đã nhận được rất nhiều sự quan tâm, giúp đỡ của quý Thầy Cô Khoa phòng đào tạo Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên đã cùng với tri thức và tâm huyết của mình để truyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường, và luôn luôn tạo mọi điều kiện tốt nhất cho chúng em trong suốt quá trình học Em xin chân thành cảm ơn quý Thầy Cô và Ban lãnh đạo nhà trường!
Với lòng biết ơn sâu sắc nhất em xin gửi lời cảm ơn tới TS Đào Nam Anh, Khoa Công nghệ Thông tin – Đại học Điện Lực, là cán bộ trực tiếp hướng dẫn khoa học cho em Thầy đã dành nhiều thời gian cho việc hướng dẫn em cách nghiên cứu, đọc tài liệu, cài đặt các thuật toán và giúp
đỡ em trong việc xây dựng chương trình, em xin chân thành cảm ơn Thầy!
Và cuối cùng em xin bày tỏ lòng chân thành và biết ơn tới lãnh đạo khoa Công nghệ Thông tin trường Đại học Kinh doanh và Công nghệ Hà Nội cùng bạn bè đồng nghiệp đã luôn ở bên cạnh những lúc em khó khăn
và tạo điều kiện thuận lợi giúp em hoàn thành luận văn
Hà Nội, Ngày 01 tháng 6 năm 2015 Học viên
Trần Xuân Trường
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan luận văn là kết quả nghiên cứu của tôi, không sao chép của ai Nội dung luận văn có tham khảo và sử dụng các tài liệu liên quan, các thông tin trong tài liệu được đăng tải trên các tạp chí và các trang website theo danh mục tài liệu của luận văn
Tác giả luận văn
Trần Xuân Trường
Trang 3MỤC LỤC
LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
MỤC LỤC iii
DANH MỤC CÁC THUẬT NGỮ, CÁC TỪ VIẾT TẮT v
DANH MỤC HÌNH VẼ vi
CHƯƠNG I MÔ HÌNH ẢNH BỊ MỜ VÀ NHIỄU 3
1.1 Xử lý ảnh và mô hình biểu diễn ảnh 3
1.1.1 Ảnh và điểm ảnh 4
1.1.2 Mức xám của ảnh 5
1.1.3 Các lân cận của điểm ảnh 5
1.1.4 Các mối liên kết điểm ảnh 8
1.1.5 Đo khoảng cách giữa các điểm ảnh 8
1.2 Các phép toán hình thái học cơ bản 9
1.2.1 Định nghĩa phép giãn (Dilation) 9
1.2.2 Định nghĩa phép co (Erosion) 9
1.2.3 Định nghĩa phép mở (Open) 10
1.2.4 Định nghĩa phép đóng (Close) 10
1.3 Mờ ảnh 11
1.3.1 Mờ trung bình (Average Blur) 11
1.3.2 Mờ do chuyển động (Motion Blur) 11
1.3.3 Mờ Gaussian 12
1.3.4 Mờ ngoài tiêu cự 13
1.4 Nhiễu ảnh 13
1.4.1 Nhiễu cộng 14
1.4.2 Nhiễu nhân 14
1.4.3 Nhiễu xung 14
1.4.4 Tiêu chí đánh giá tỉ lệ nhiễu, so sánh với ảnh gốc 14
1.5 Mờ ảnh và nhiễu ảnh 15
1.6 Một số phương pháp khôi phục ảnh cơ bản 15
1.6.1 Phương pháp Fourier nghịch đảo 15
1.6.2 Phương pháp Wavelets 17
Trang 41.6.3 Phương pháp dùng nhân nhỏ 17
1.6.4 Phương pháp Quick Pixon 18
1.6.5 Phương pháp lọc Wiener 19
1.6.6 Phương pháp thống kê 20
1.7 Kết luận chương I 21
CHƯƠNG II KHÔI PHỤC ẢNH MÀU BỊ MỜ VÀ NHIỄU, GIỮ CẠNH 22
2.1 Khôi phục ảnh dùng bộ lọc có hướng 22
2.1.1 Bước tiền xử lý khử mờ 23
2.1.2 Xây dựng bộ lọc có hướng 25
2.1.3 Tìm bộ lọc có hướng ước lượng kernel nhiễu 26
2.1.4 Khử nhiễu sau khi có bộ lọc ước lượng nhiễu 29
2.1.5 So sánh với một số thuật toán 30
2.2 Một số phương pháp khác 31
2.2.1 Khôi phục ảnh dùng Tổng biến thể 31
2.2.2 Khôi phục ảnh dùng phương pháp Richardson-Lucy 33
2.2.3 Khôi phục ảnh dùng phương pháp Picard 34
2.2.4 Khôi phục ảnh dùng Maximum Entropy 37
2.2.5 Khôi phục ảnh dùng TV và phép lặp Bregman 38
2.3 Kết luận chương 2 41
CHƯƠNG III CÀI ĐẶT THỬ NGHIỆM 42
3.1 Môi trường cài đặt 42
3.2 Kết quả thực nghiệm 42
3.3 So sánh 56
3.4 Kết luận chương III 57
KẾT LUẬN 58
TÀI LIỆU THAM KHẢO 59
PHỤ LỤC: TRÍCH MÃ NGUỒN 61
Trang 5DANH MỤC CÁC THUẬT NGỮ, CÁC TỪ VIẾT TẮT
Trang 6DANH MỤC HÌNH VẼ
Hình 1-1: Khôi phục ảnh 3
Hình 1-2: Lân cận các điểm ảnh có tọa độ (x, y) 6
Hình 1-3: Đường 8 nối 4 điểm 7
Hình 1-4: Mờ trung bình (Average Blur) 11
Hình 1-5: Mờ do chuyển động (Motion Blur) 12
Hình 1-6: Mờ Gaussian 12
Hình 1-7: Mờ ngoài tiêu cự 13
Hình 1-8: Bên trái - ảnh gốc, bên phải ảnh nhiễu cộng 14
Hình 1-9: Bên trái trên - ảnh gốc, bên trái dưới - ảnh nhiễu, bên phải ảnh - nhiễu nhân 14
Hình 1-10: Fourier nghịch đảo 16
Hình 1-11: Khôi phục ảnh dùng Phép chập Fourier 16
Hình 1-12: Wavelets – Các sóng nhỏ 17
Hình 1-13: Khôi phục ảnh bằng phương pháp Quick Pixon 19
Hình 1-14: Khôi phục ảnh bằng phương pháp lọc Wiener bên trái là ảnh gốc, bên phải là ảnh được khôi phục 20
Hình 1-15: Khôi phục ảnh bằng phương pháp thống kê bên trái là ảnh gốc, bên phải là ảnh được khôi phục 21
Hình 2-1: Thuật toán khôi phục ảnh mờ và nhiễu dùng bộ lọc có hướng 28
Hình 2-2: Khôi phục ảnh dùng tổng biến thể bên trái là ảnh gốc, bên phải là ảnh được khôi phục 33
Hình 2-3: Khôi phục ảnh Richardson – Lucy bên trái là ảnh gốc, bên phải là ảnh được khôi phục 34
Hình 2-4: Khôi phục ảnh dùng phương pháp Picard bên trái là ảnh gốc, bên phải là ảnh được khôi phục 36
Trang 7Hình 2-5: Khôi phục ảnh dùng phương pháp Maximum Entropy bên trên là ảnh gốc, bên dưới là ảnh được khôi phục 37Hình 2-6: Khôi phục ảnh dùng phương pháp của Lin và cộng sự bên trái là ảnh gốc, bên phải là ảnh được khôi phục 38Hình 2-7: Khôi phục ảnh dùng phương pháp Fish và cộng sự 39Hình 2-8: Khôi phục ảnh dùng phương pháp Osher và Rudin 39Hình 2-9: Khôi phục ảnh dùng phương pháp Chan và cộng sự bên trái là ảnh gốc, bên phải là ảnh được khôi phục 40Hình 2-10: Khôi phục ảnh dùng phương pháp của You, Kaveh, Chan và Wong bên trái là ảnh gốc, bên phải là ảnh được khôi phục 41Hình 3-1: Khôi phục ảnh dùng phương pháp lọc có hướng bên trên là ảnh gốc, bên phải là kênh lọc, bên dưới là ảnh được khôi phục 43Hình 3-2: Ảnh gốc có dạng texture rừng cây bị mờ do chuyển động 44Hình 3-3: Ảnh gốc có dạng texture các đám mây bị mờ do chuyển động 45Hình 3-4: Ảnh gốc có dạng cấu trúc vân vỏ sò bị mờ do chuyển động 46Hình 3-5: Ảnh gốc có sự tham gia của nhiều người chuyển động 47Hình 3-6: Ảnh gốc có sự tham gia của máy xúc hoạt động 48Hình 3-7: Ảnh gốc là khung cảnh có kiến trúc của một nhà máy, bị mờ do chuyển động 49Hình 3-8: Ảnh gốc là khung cảnh có kiến trúc cầu, bị mờ do chuyển động 50Hình 3-9: Ảnh gốc là khung cảnh dạng kiến trúc các công trình xây dựng, bị
mờ do chuyển động 51Hình 3-10: Ảnh gốc có sự tham gia của nhiều máy xúc hoạt động 52Hình 3-11: Ảnh gốc có sự tham gia của một tàu biển đang chạy 53Hình 3-12: Ảnh gốc có sự tham gia của nhiều tàu biển đang chạy nhiều
hướng 54Hình 3-13: Ảnh gốc là các cột bị rung, nhiễu do chuyển động 55
Trang 8LỜI MỞ ĐẦU
Lĩnh vực toán ứng dụng đã phát triển rất nhiều trong thế kỷ qua Với sự sẵn có của thiết bị máy tính giá thành hạ trong những năm gần đây, toán ứng dụng đã mở rộng sang nhiều lĩnh vực liên quan Trong số này có ngành sinh học và vật lý, khoa học vật liệu, và tính toán hình học Lĩnh vực phân tích số được phát triển cho các vấn
đề ngoài toán học Phân tích số có nhiều chủ đề thú vị như tìm đường cong kỹ thuật phù hợp, phân tích sự phù hợp và sự khác biệt, và các giải pháp phương trình vi phân Ngoài ra còn có các hệ thống tuyến tính và giá trị đặc trưng, cũng như các phương pháp tối ưu và các thuật toán tổ hợp Một trong những lĩnh vực liên quan có sự phát triển nhanh gần đây là lĩnh vực xử lý ảnh Với sự gia tăng của máy ảnh kỹ thuật số, máy quét, và ảnh kỹ thuật số, các phương pháp tốt xử lý ảnh càng trở nên cần thiết
Khôi phục ảnh màu bị mờ và nhiễu là quá trình xây dựng lại các bộ phận bị nhòe, bị nhiễu hoặc xuống cấp của ảnh và video Trong trường hợp một bức tranh có giá trị, nhiệm vụ này sẽ được thực hiện bởi một nghệ sĩ có tay nghề cao phục hồi tranh Trong thế giới công nghệ thông tin, khôi phục ảnh màu bị nhiễu đề cập đến việc áp dụng các thuật toán phức tạp để khôi phục lại các phần ảnh ban đầu, trước khi
bị nhiễu
Trọng tâm của luận văn này là tìm hiểu các vấn đề liên quan đến việc khôi phục ảnh màu hỏng do bị mờ và nhiễu, nghiên cứu một số thuật toán khôi phục ảnh màu bị mờ và nhiễu và tập trung tìm hiểu thuật toán sử dụng các bộ lọc có hướng để tạo ra ảnh ban đầu Trong đó, các bộ lọc được áp dụng vào các hướng khác nhau theo các đánh giá về hướng nhiễu của từng phần của ảnh Thuật toán sẽ được thực nghiệm với chương trình sử dụng ngôn ngữ Matlab
Ngoài phần mở đầu và kết luận, luận văn được chia làm 3 chương, luận văn có các chương như sau:
Trang 9Chương 1: Mô hình ảnh bị mờ và nhiễu Trình bày các vấn đề đặt ra cần giải quyết trong bài toán khôi phục ảnh màu bị mờ và nhiễu
Chương 2: Khôi phục ảnh màu bị mờ và nhiễu, giữ cạnh
Các hướng tiếp cận chính xử lý nhiễu ảnh và khôi phục phần ảnh bị mờ và nhiễu Trình bày một số phương pháp, phân tích thuật toán khôi phục ảnh màu bị mờ
và nhiễu bằng cách áp dụng các bộ lọc có hướng theo các đánh giá về hướng của từng phần của ảnh Phương pháp này dựa trên kết quả quan sát thực nghiệm: áp dụng các
bộ lọc tần số thấp làm giảm nhiễu ảnh, nhưng hầu như không ảnh hưởng đến thông tin ở tần số cao, trong đó có các thông tin ảnh bị mờ Thuật toán đầu tiên đánh giá hướng của các kênh nhiễu cục bộ Từ đó khôi phục nhiễu theo hướng cục bộ đã tìm được
Chương 3: Thực nghiệm và đánh giá
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ị mờ và 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
Trang 10CHƯƠNG I MÔ HÌNH ẢNH BỊ MỜ VÀ NHIỄU
1.1 Xử lý ảnh và mô hình biểu diễn ảnh
Lĩnh vực xử lý ảnh rất rộng và có nhiều ứng dụng thực tiễn Một số lĩnh vực ứng dụng xử lý ảnh phổ biến là phục hồi ảnh, nén ảnh, và phân vùng ảnh Một lĩnh vực xử lý ảnh khác là phục hồi ảnh Trong phục hồi ảnh, ảnh bị biến dạng được phục hồi về hình thức ban đầu của nó Sự biến dạng này thường được gây ra do nhiễu khi truyền dữ liệu, hiệu chuẩn ống kính, chuyển động của máy ảnh, hay tuổi ảnh gốc Ví
dụ ảnh chụp trong điều kiện thiếu ánh sáng là một loại thách thức Vì ánh sáng càng ít thì cần nhiều thời gian để ngắm – và nếu không có chân máy thì camera sẽ dễ bị rung
và tạo ra ảnh mờ Khi tăng độ nhạy ánh sáng của camera, nghĩa là sử dụng ISO cao hơn, có thể làm giảm thời gian ngắm, nhưng lại có mức nhiễu cao hơn, dẫn đến nhiều bức ảnh bị mờ và nhiễu
Hình 1-1: Khôi phục ảnh Một dạng phục hồi ảnh khác là khôi phục các vùng bị mất trong ảnh Các vùng
bị mất có thể do tuổi của ảnh, hoặc một phần đối tượng trong ảnh bị che khuất Tuy nhiên luận văn này chỉ tập trung vào vấn đề phục hồi ảnh bị mờ và nhiễu
Trang 111.1.1 Ảnh và điểm ảnh
Ảnh có thể xem là tập hợp các điểm ảnh và mỗi điểm ảnh được xem như là đặc trưng cường độ sáng, độ xám hay một dấu hiệu nào đó tại một vị trí nào đó của đối tượng trong không gian và nó có thể xem như một hàm n biến P(c1, c2, , cn) Do đó, ảnh trong xử lý ảnh có thể xem như ảnh n chiều
Ảnh có thể được biểu diễn dưới dạng một ma trận 2 chiều, mỗi phần tử của ma trận tương ứng với một điểm ảnh Mỗi phần tử này được gọi là một pixel (picture element)
Ảnh có thể được định nghĩa là một hàm 2 chiều f(x, y), trong đó x và y là các tọa
độ trong không gian (spatial) hoặc mặt phẳng (plane), và độ lớn (amplitude) của hàm
f được gọi là độ sáng (intensity) hay độ xám (gray level) của ảnh tại điểm đó Các dạng ảnh gồm 2 loại ảnh màu và ảnh xám Ảnh màu là ảnh tại mỗi điểm là cấu trúc gồm nhiều kênh màu khác nhau
Ảnh có thể được mô tả phương trình vi phân từng phần (Partial differential equation -PDE):
, (x y dxdy
Sử dụng mô hình PDE này, cần tìm cực tiểu của hàm năng lượng Hàm năng lượng sử dụng trung bình tổng các biến thể với mục đích để tìm tối thiểu số lượng các
Trang 12dao động trong ảnh u qua cực tiểu của hàm này Ngoài ra cần đặt một số điều kiện
ràng buộc để có được lời giải gần với ảnh được quan sát, vừa khôi phục ảnh vừa giữ được các nét cạnh của ảnh
1.1.2 Mức xám của ảnh
Một điểm ảnh (pixel) có hai đặc trưng cơ bản là vị trí (x, y) của điểm ảnh và độ xám của nó Dưới đây chúng ta xem xét một số khái niệm và thuật ngữ thường dùng trong xử lý ảnh
Định nghĩa: Mức xám của điểm ảnh là cường độ sáng của nó được gán bằng
giá trị số tại điểm đó
Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (Mức 256 là
mức phổ dụng Lý do: từ kỹ thuật máy tính dùng 1 byte (8 bit) để biểu diễn mức xám: Mức xám dùng 1 byte biểu diễn: 28=256 mức, tức là từ 0 đến 255)
Ảnh đen trắng: là ảnh có hai màu đen, trắng (không chứa màu khác) với mức
xám ở các điểm ảnh có thể khác nhau
Ảnh nhị phân: ảnh chỉ có 2 mức đen trắng phân biệt tức dùng 1 bit mô tả 2
mức khác nhau Nói cách khác: mỗi điểm ảnh của ảnh nhị phân chỉ có thể là 0 hoặc 1
Ảnh màu: trong khuôn khổ lý thuyết ba màu (Red, Blue, Green) để tạo nên thế
giới màu, người ta thường dùng 3 byte để mô tả mức màu, khi đó các giá trị màu:
28*3=224≈ 16,7 triệu màu
1.1.3 Các lân cận của điểm ảnh
Để có căn cứ kiểm tra quan hệ mới này người ta định ra một tập giá trị tham chiếu mà các điểm ảnh gọi là lân cận phải có giá trị cùng thuộc về tập đó Ví dụ với một ảnh nhị phân ta có thể đặt V={1}, có nghĩa là ta xét các điểm lân cận với giá trị tham chiếu là 1 (cường độ điểm ảnh đã gọi là lân cận với nhau thì phải cùng có giá trị 1) Trong ảnh đa mức xám, ta có thể đặt V chứa nhiều giá trị hơn như V={ a >= 200
& a <= 255 } Cho p có tọa độ (x, y)
Trang 13Một ảnh số giả sử được biểu diễn bằng hàm f(x, y) Tập con của điểm ảnh S; cặp điểm ảnh có quan hệ với nhau có kí hiệu là p, q Chúng ta nêu một số khái niệm [1]:
Các lân cận của điểm ảnh (image neightbor)
Giả sử có điểm ảnh p tại tọa độ (x, y), p có 4 điểm lân cận gần nhất theo chiều đứng và ngang (coi như lân cận 4 hướng: đông, tây, nam, bắc)
Hình 1-2: Lân cận các điểm ảnh có tọa độ (x, y)
Các lân cận chéo: Các điểm lân cận chéo Np(p) (coi như lân cận chéo là 4
hướng: Đông – Nam, Đông – Bắc, Tây – Nam, Tây – Bắc)
Np(p) = {(x+1, y+1); (x+1, y-1); (x-1, y+1); (x-1, y-1) } Tập kết hợp: N8(p) = N4(p) + Np(p) là tập hợp 8 lân cận của điểm p
Đường: một đường nối 2 điểm p (x0, y0) với điểm q (xn, yn) là một tập tuần tự các điểm ảnh có tọa độ lần lượt là (x0, y0), (x1, y1), (x2, y2), , (xn, yn) trong đó:
Hai điểm liền kề (xi, yi), (xi-1, yi-1) với (1 <= i <= n) có quan hệ lân cận, tùy theo loại quan hệ lân cận được xem xét mà ta có các loại đường 4 (4 Path), đường 8 (8 Path) hay đường M (M Path)
n được gọi là độ dài của đường
Nếu hai điểm đầu và cuối của đường trùng nhau, (x0, y0) = (xn, yn) thì ta gọi đó
là đường khép kín (Closed Path)
Trang 14Hình 1-3: Đường 8 nối 4 điểm
Chú ý: Nếu (x, y) nằm ở biên mép ảnh; một số điểm sẽ nằm ngoài ảnh
Kết nối: Gọi S là một nhóm, tập các điểm ảnh nào đó trong một hình (S có thể là toàn
Các vùng không lân cận (not adjacent) thì gọi là disjoint
Cũng tương tự như với điểm ảnh việc xét vùng lân cận cũng cần sự chỉ định kiểu 4, 8 hay M
Đường bao (boundary)
Là tập các điểm có quan hệ liên kết với điểm nằm trong tập bù của vùng R
Trang 15 Sự khác biệt giữa đường bao và cạnh (edge) nằm ở chổ, trong khi đường bao là đường khép kín (closed path) bao quanh vùng (region) với một ý nghĩa toàn cục thì viền hay cạnh lại được xem xét là tập hợp những điểm ảnh mà tại đó xảy ra sự biến động về giá trị cường độ, mang tính cục bộ
1.1.4 Các mối liên kết điểm ảnh
Các mối liên kết được sử dụng để xác định giới hạn (Boundaries) của đối tượng vật thể hoặc xác định vùng trong một ảnh Một liên kết được đặc trưng bởi tính liền kề giữa các điểm và mức xám của chúng
Giả sử V là tập hợp các giá trị mức xám Một ảnh có các giá trị cường độ sáng
từ thang mức xám từ 32 đến 64 được mô tả như sau:
1.1.5 Đo khoảng cách giữa các điểm ảnh
Định nghĩa: Khoảng cách D(p, q) giữa hai điểm ảnh p tọa độ (x, y), q tọa độ
(s, t) là hàm khoảng cách (Distance):
1 D(p, q) ≥ 0 (Với D(p, q) = 0, nếu và chỉ nếu p = q)
2 D(p, q) = D(q, p)
3 D(p, z) ≤ D(p, q) + D(q, z); z là một điểm khác bất kỳ
Khoảng cách Euclide: Khoảng cách Euclide giữa hai điểm ảnh p(x, y) và q(s,
t) được định nghĩa như sau:
) , (p q
] ) ( ) [(x s y t ( 1-5)
Trang 16Khoảng cách khối: Khoảng cách D4(p, q) được gọi là khoảng cách khối đồ thị (City Block Distance) và được xác định như sau:
|
|
|
| ) , (
Giá trị khoảng cách giữa các điểm ảnh r: giá trị bán kính r giữa các điểm ảnh từ tâm đến tâm điểm ảnh q khác Ví dụ: Màn hình CGA 12” (12”*2.54cm = 30,48cm = 3048mm) độ phân giải 320*200; tỷ lệ 4/3(chiều dài/chiều rộng) Theo định nghĩa của Pitago, ta có đường chéo tỷ lệ là 5 phần (5/4/3: đường chéo/ Chiều dài/ chiều rộng màn hình); khi đó độ dài thật là 305/244/183 chiều rộng mà hình là 183mm ứng với màn hình CGA 200 điểm ảnh theo chiều dọc Như vậy, khoảng cách điểm ảnh lân cận của CGA 12” là ≈ 1mm
Khoảng cách D8(p, q) còn gọi là khoảng cách bàn cờ (Chess – Board Distance) giữa điểm ảnh p, q được xác định như sau:
D8(p,q) max(| x s |, | y t |) ( 1-7)
1.2 Các phép hình thái học cơ bản
Hình thái có nghĩa là cấu trúc hay topology của đối tượng, là một cách để mô tả đối tượng ảnh số Hai phép toán hình thái cơ bản là: phép giãn (Dilation) và phép co (Erosion)
Các phép toán này được định nghĩa như sau: Giả thiết ta có đối tượng X và phần tử cấu trúc (mẫu) B trong không gian Euclide hai chiều Kí hiệu Bx là dịch chuyển của B tới
vị trí x
1.2.1 Định nghĩa phép giãn (Dilation)
Phép giãn của X theo mẫu B là hợp của tất cả các B x với x thuộc X Ta có:
X x x B B
Trang 170 0
0
0 0 0
0 0
0 0
x x x
x x
x x
x x x
x x x
x x x x
x x x
x x x x x
x x x x
00
00
00000
0000
000
0
00
00
x x
x x x
00000
00xx0
0xx00
xx000
1.2.4 Định nghĩa phép đóng (Close)
Phép đóng của X theo cấu trúc B là tập hợp các điểm của ảnh X sau khi đã giãn nở
và co liên tiếp theo B Ta có:
0xxx0
00xx0
xxxxx
xxxx0
B = x
Trang 18Có một số mô hình ảnh mờ như sau:
1.3.1 Mờ trung bình (Average Blur)
Mờ trung bình là một trong số các công cụ để loại bỏ nhiễu và các sạn trong ảnh Mờ trung bình được sử dụng khi nhiễu có trong toàn ảnh
Mờ trung bình được phân bổ theo chiều ngang, hoặc theo chiều dọc, hoặc theo hình tròn với một bán kính R
Khi đó các điểm ảnh lân cận trong vòng tròn bán kính R được dùng để thực hiện phép mờ trung bình: 2 2
y + x
= R
Hình 1-4: Mờ trung bình (Average Blur)
1.3.2 Mờ do chuyển động (Motion Blur)
Khi vật thể và máy quay có sự chuyển động khi chụp hình, mờ do chuyển động
có thể xảy ra Đó có thể là dạng vệt trượt, hoặc dạng tròn, cũng có thể là thay đổi độ lớn, và kết hợp các dạng trên Khi làm ảnh bị mờ dạng này, ảnh sẽ tạo ra cảm giác vật thể đang chuyển động theo một hướng nhất định
Trang 19Hình 1-5: Mờ do chuyển động (Motion Blur)
Hình 1-6: Mờ Gaussian
Trang 20Một nhân tố chính liên quan đến việc khôi phục ảnh đó là nhiễu do lỗi Dữ liệu
quan sát được D i có chứa dữ liệu dự kiến M i cộng với lỗi N i:
bổ thống kê gốc thường gặp là Gaussian hoặc dạng phân bổ Poisson
Trên thực tế tồn tại nhiều loại nhiễu, tuy nhiên thường có ba loại nhiễu chính: Nhiễu cộng, nhiễu nhân và nhiễu xung
Trang 211.4.1 Nhiễu cộng
- N i – Nhiễu cộng
- Nhiễu cộng thường phân bố khắp ảnh
Hình 1-8: Bên trái - ảnh gốc, bên phải ảnh nhiễu cộng
1.4.2 Nhiễu nhân
- H – Nhiễu nhân
Hình 1-9: Bên trái trên - ảnh gốc, bên trái dưới - ảnh nhiễu, bên phải ảnh - nhiễu nhân
1.4.3 Nhiễu xung
- Nhiễu xung: thường gây đột biến tại một số điểm ảnh
1.4.4 Tiêu chí đánh giá tỉ lệ nhiễu, so sánh với ảnh gốc
Từ phương trình (1.5) tính được số dư:
Trang 22Giải pháp của bài toán khôi phục ảnh có thể chấp nhận được nếu có số dư phù hợp với sự phân bổ thống kê nhiễu Nếu các số dư khác đáng kể so với sự phân bổ thống kê gốc thì giải pháp đó sai
1.5 Mờ ảnh và nhiễu ảnh
Một ảnh có thể đồng thời bị mờ theo mô hình (1.4) và bị nhiễu theo mô hình (1.5) Đây là bài toán khôi phục ảnh tổng hợp tương đối phức tạp đòi hỏi nhiều thời gian tính toán
1.6 Một số phương pháp khôi phục ảnh cơ bản
Việc khôi phục ảnh là rất khó bởi sự thay đổi bất thường đáng kể trong ảnh như thay đổi nhỏ trong dữ liệu ảnh có thể mờ Sự thay đổi bất thường của nhiễu có thể gây ra sự nhầm lẫn với tín hiệu thực Đã có nhiều nghiên cứu ứng dụng tìm các giải pháp khôi phục ảnh bị mờ và nhiễu bằng cách tìm ra toán tử chập nghịch đảo (phép chập) và tìm ra ảnh ban đầu trước khi bị mờ và nhiễu Sau đây là một số các giải pháp
đó
1.6.1 Phương pháp Fourier nghịch đảo
) (
~ / ) (
~ ) (
~
k P k M k
Trang 23Hình 1-10: Fourier nghịch đảo Phép chập Fourier (Fourier nghịch đảo) là một trong những phương pháp lâu đời nhất và là phương pháp thuộc loại nhanh nhất Sử dụng một biến đặc thù của phép chập Fourier có thể làm giảm nhiễu
Biến này có thể được tính toán một cách hiệu quả nhờ sử dụng các biến đổi Fourier nhanh Nhưng kỹ thuật Phép chập Fourier bị phá vỡ khi có độ nhiễu cao Độ nhiễu trong dữ liệu được khuếch đại đáng kể bởi phép chập và tạo ra các đối tượng giả Mặt khác, các hàm Fourier chỉ áp dụng toàn ảnh, và không áp dụng địa phương được
Hình 1-11: Khôi phục ảnh dùng Phép chập Fourier
Trang 241.6.2 Phương pháp Wavelets
Các sóng nhỏ (wavelets) phát hiện bởi Daubechies (1988) hỗ trợ tốt cho tính toán địa phương Các sóng nhỏ phải đáp ứng 3 điều kiện sau:
- Các sóng nhỏ tạo thành một tập hợp trực giao, tập này cho phép chuyển đổi
dễ dàng giữa các lĩnh vực không gian và giá trị
- Các sóng nhỏ là những chuyển đổi bất biến, nghĩa là các hàm sóng có thể được sử dụng vào các phần khác nhau của ảnh
- Các sóng nhỏ không đổi về qui mô, nghĩa là chúng tạo thành một giản đồ trong đó các hàm với bước sóng lớn hơn là phiên bản qui mô lớn của các hàm với bước sóng ngắn hơn
Ba yêu cầu này rất quan trọng mà việc chuyển đổi sóng của n điểm dữ liệu và nghịch đảo của nó có thể được tính với chi phí tính toán O (n log 2 n), giống như biến
đổi Fourier nhanh Các sóng nhỏ có thể dùng để loại bỏ nhiễu cũng như loại bỏ mờ
Hình 1-12: Wavelets – Các sóng nhỏ
1.6.3 Phương pháp dùng nhân nhỏ
Các biến đổi Fourier nhanh, thực hiện chập rất hiệu quả khi được sử dụng trên các máy tính nhưng đòi hỏi dữ liệu đầy đủ phải được thu thập trước khi tính toán Đây là một bất lợi lớn khi xử lý quét ảnh video vì thời gian để thu thập một khung dữ liệu toàn bộ thường vượt quá thời gian tính toán Các chập dạng ống (Pipeline
Trang 25convolution) dữ liệu thực hiện hiệu quả hơn bằng cách gộp các kỹ thuật một cách song song, ngay cả khi phần nhân chỉ chiếm một vài phần trăm diện tích khung
Các kỹ thuật ống (Pipeline) có thể được sử dụng trong khôi phục ảnh bằng cách viết các phép chập như là bởi hàm điểm phản ứng nghịch đảo H-1:
D H
Phương trình này tương đương với Phép chập Fourier (1.7) Nhưng H-1 mở rộng trên toàn bộ mảng, thậm chí nếu H là một nhân nhỏ (chỉ chứa một vài điểm ảnh) Khi
đó ta có thể tìm một nhân nghịch đảo xấp xỉ G H-1
Tuy nhiên, G cũng có thể được thiết kế để ngăn chặn các thành phần mức k của
H-1 để hạn chế vành đai do gián đoạn sắc nét trong dữ liệu, do đó giảm các đối tượng ảnh được tạo ra bởi các phương pháp Fourier
1.6.4 Phương pháp Quick Pixon
Phương pháp Pixon là một cách khác để giảm nhiễu Đây là một kỹ thuật lặp hạn chế, làm mịn của ảnh theo một cách thích nghi không gian Một dạng khác nhanh hơn là phương pháp Quick Pixon, đây là phương pháp áp dụng tương tự như việc làm mịn Pixon vào dữ liệu thay vì các mô hình ảnh Việc làm mịn này có thể được thực hiện một lần trên các dữ liệu đầu vào, sau đó dữ liệu có thể được phép chập bằng cách sử dụng phương pháp Fourier hoặc small – kernel phép chập
Phương pháp Quick Pixon, mặc dù không mạnh như phương pháp Pixon đầy
đủ nhưng thường các kết quả trong các ảnh đã được khôi phục gần tốt như những kết quả trong phương pháp Pixon đầy đủ Ưu điểm của phương pháp Pixon nhanh là tốc
độ của nó Bởi vì phương pháp này là không lặp và chủ yếu gồm có các convolution và các phép chập, việc tính toán có thể được thực hiện theo kiểu ống bằng cách sử dụng Small – kernel convolution Điều này cho phép ta xây dựng một phần cứng chuyên dùng
để xử lý các vạch quét video trong thời gian thực theo tỉ lệ video tối đa có sẵn
Trang 26Hình 1-13: Khôi phục ảnh bằng phương pháp Quick Pixon bên trái là ảnh gốc, bên phải là ảnh được khôi phục
1.6.5 Phương pháp lọc Wiener
Phương pháp cải thiện tỷ lệ tín hiệu – nhiễu phụ thuộc k là lọc tuyến tính, phương pháp này có một lịch sử lâu dài trong lĩnh vực xử lý tín hiệu và đã được áp dụng trong nhiều lĩnh vực của khoa học và kỹ thuật Biến đổi Fourier của dữ liệu )
(
~
k
D được nhân bởi một bộ lọc phụ thuộc k, (k), và kết quả được chuyển ngược trở
lại để cung cấp dữ liệu đã lọc Lọc tuyến tính là một công cụ hữu ích đặc biệt trong phép chập, bởi vì lọc có thể được kết hợp với Phép chập Fourier (phương trình 1.4)
để đưa ra toán tử chập nghịch đảo đã được lọc:
) (
~( )
~ ) ( ) (
~
k H
k D k k
Lọc tối ưu là lọc mà giảm thiểu sự khác biệt giữa các dữ liệu nhiễu đã lọc và tín hiệu đúng, lọc đó được gọi là lọc Wiener, được thể hiện trong không gian Fourier như sau:
2
2 0 2
2 0
2 0
| ) (
~
|
| ) (
~
|
| ) (
~
|
| ) (
~
|
| ) (
~
| )
(
k D
k D k
N k
D
k D
|D k là khả năng ảnh dự kiến (còn được gọi là mật
độ ảnh) của nhiễu và tín hiệu đúng Tổng của chúng xuất hiện trong mẫu số của phương trình 1.10, là khả năng nguồn của dữ liệu nhiễu 2
| ) (
~
|D k , bởi vì tín hiệu và
Trang 27nhiễu theo định nghĩa về mặt thống kê là độc lập Vì vậy khả năng nguồn của chúng tăng lên tại vị trí góc vuông góc Ta giới thiệu thêm tham số β vào phương trình 1.10
để cho phép người sử dụng điều chỉnh tính lan của bộ lọc
2 2
0
2 0
| ) (
~
|
| ) (
~
|
| ) (
~
| )
(
k N k
D
k D k
Lọc Wiener chuẩn khi β = 1
Hình 1-14: Khôi phục ảnh bằng phương pháp lọc Wiener bên trái là ảnh gốc, bên phải
là ảnh được khôi phục
1.6.6 Phương pháp thống kê
Phương pháp định nghĩa tập các mô hình tiềm năng của ảnh Sau đó, với sự giúp đỡ của thông tin thống kê, ta lựa chọn trong số các mô hình này lấy một mô hình làm phù hợp nhất với dữ liệu về mặt thống kê
Có ba thành phần dữ liệu phù hợp Đầu tiên, phải có một thủ tục phù hợp để tìm mô hình của ảnh Việc này được thực hiện bằng cách giảm thiểu một chức năng giá trị, thường là thêm vào các ràng buộc Thứ hai, phải có kiểm tra tính chất của phù hợp – tốt nhất nên có nhiều test – để xác định xem các phần dư thu được có phù hợp với sự phân bổ thống kê gốc Thứ ba, ước tính các lỗi còn lại trong mô hình của ảnh
Trang 28Hình 1-15: Khôi phục ảnh bằng phương pháp thống kê bên trái là ảnh gốc, bên phải
- Hiệu suất được cải thiện đáng kể khi chiến lược hạn chế ảnh được cho phép
để thích ứng với các điều kiện khác nhau trên ảnh Chương 1 đã trình bày các mô hình mờ ảnh và nhiễu ảnh
Nếu ta thực hiện được việc giảm tối thiểu độ phức tạp của ảnh và tạo ra các phần dư có thể chấp nhận được về mặt thống kê thì ảnh đã được khôi phục là ảnh đáng tin cậy nhất có thể có Chương 1 đã trình bày một số giải pháp xử lý mờ ảnh hoặc nhiễu ảnh
Trang 29CHƯƠNG II KHÔI PHỤC ẢNH MÀU BỊ MỜ VÀ NHIỄU,
GIỮ CẠNH
Chương 1 luận văn đã đề cập một số phương pháp khôi phục ảnh mờ và nhiễu Nhiều phương pháp khử được mờ và nhiễu, song các cạnh hay các đường nét không còn được rõ Chương 2 đề cập đến một số thuật toán khôi phục ảnh mờ và nhiễu, đồng thời giữ được cạnh
2.1 Khôi phục ảnh dùng bộ lọc có hướng
Thuật toán của Lin Zhong và các cộng sự [14] ước lượng kernel mờ chính xác
từ một ảnh mờ và nhiễu Phương pháp gồm các bước giải mờ và giải nhiễu Thuật toán dùng các bộ lọc giải nhiễu và thủ tục giải mờ theo cách thức sao cho kernel được ước lượng không bị ảnh hưởng bởi các bộ lọc nhiễu
Phương pháp này được rút ra từ việc quan sát rằng: nếu áp dụng một bộ lọc tuyến tính truyền thấp có hướng vào ảnh đầu vào, nó có thể tạo ra độ nhiễu lớn, trong khi nội dung, bao gồm thông tin chính bị mờ, ở với hướng trực giao không bị ảnh hưởng Thuật toán sử dụng tính chất này để ước lượng các hình chiếu 1D của kernel
mờ tới các hướng trực giao của các bộ lọc này Những hình chiếu này, được gọi là
biến đổi Radon, sẽ không bị ảnh hưởng bởi việc áp dụng các bộ lọc truyền thấp có
hướng vào ảnh đầu vào, ngoại trừ việc giảm nhiễu
Dựa trên sự quan sát này, thuật toán áp dụng một loạt các bộ lọc truyền thấp có hướng ở các hướng khác nhau, và đánh giá một lớp các hình chiếu kernel từ từng ảnh Việc này tạo ra một ước lượng chính xác về biến đổi Radon Cuối cùng, thuật toán xây dựng lại kernel mờ sử dụng biến đổi ngẫu nhiên nghịch đảo Một khi thu được kernel tốt, thuật toán kết hợp việc lọc nhiễu trong quá trình giải chập cuối cùng để giảm nhiễu và thu được ảnh ngầm chất lượng cao
Trang 302.1.1 Bước tiền xử lý khử mờ
Trong giải mờ ảnh, ảnh đầu vào mờ và nhiễu b được biểu diễn dạng:
,
n k
trong đó l, k và n biểu diễn ảnh nét, kernel mờ, và độ nhiễu thêm vào, * là toán
tử chập Giải l và k từ ảnh đầu vào b là một vấn đề khó, và độ nhiễu thêm vào n làm
vấn đề này trở nên khó hơn
Giả thiết l được biết trước, phương pháp thông thường để giải k là
)}
(
||
*{||
)(b' n L
b L Lk
Trong đó k và b là vector tương ứng hình thành từ k và b, và L là ma trận hình
thành từ l Thuật toán cũng giới thiệu ảnh mở không nhiễu b’ = b – n Thuật toán ước lượng lỗi tương qua của k ứng với độ nhiễu trong b sử dụng số điều kiện của hệ tuyến
tính, đó là
) (
||
) (
||
/
||
) (
||
) (
)
'
' 1 1
L L k L
L L
L b
L n L
b L L L n
L L L b
e
k
T T
T T T
Trang 31sẽ thấy, lợi ích của việc giảm độ nhiễu thường không đáng so với những vật thể được tạo ra bởi việc thay đổi thông tin
Để minh hoạ điều này, trước tiên thuật toán xét phương pháp giảm nhiễu đơn giản, làm mịn Gaussian Chập với Gaussian Gg giảm mức nhiễu Tuy nhiên ước lượng kernel sẽ trở thành
,
||
)
* (
*
||
min arg
||
*
* )
* (
||
min arg
||
*
||
min arg
2
2 2
g g
k
g g
k
g g
k g
G k k
G k
k l G n k l
k G
b k
g g g
mờ của kernel thực k Hơn nữa, do Gg là bộ lọc truyền thấp, tần số cao của k bị mất
và việc khôi phục nó chúng từ kg sẽ rất khó, nếu có thể khôi phục Kết quả này đến từ việc giảm nhiễu ban đầu và độc lập với phương pháp ước lượng kernel
Mặc dù nhiều phương pháp giảm nhiễu tinh vi hơn giữ tần số cao tốt hơn, việc giảm nhiễu vẫn là một vấn đề mở mà vẫn chưa có giải pháp hoàn hảo Do không thu được thông tin nào về kernel mờ trong các vùng cố định của ảnh mờ, các cạnh là nguồn thông tin chính hướng thuật toán giảm mờ tường minh hoặc ngầm định Thậm chí một sự giảm nhỏ được đưa ra bởi các kỹ thuật giải nhiễu hiện đại nhất cũng có ảnh hưởng mạnh vào các kết quả
Trong thuật toán này, áp dụng bộ lọc song phương, bình quân không cục bộ để kiểm tra ảnh có 5% nhiễu, nghĩa là độ phân bổ nhiễu chuẩn 0.05 khi phạm vi mật độ
là [0,1], và sau đó sử dụng phương pháp của Cho và Lee để ước lượng kernel mờ Kernel được ước lượng không chính xác do hiệu ứng phụ của việc giảm nhiễu
Phương pháp mới đây của Tai và Lin trước tiên áp dụng gói giải nhiễu thương mại có sẵn vào ảnh đầu vào, sau đó lặp áp dụng bộ lọc bình quân không cục bộ phát hiện chuyển động và giải mờ để làm mới kết quả Mặc dù đã thêm vào xử lý đặc biệt
Trang 32trong quá trình đó, cả gói giải nhiễu thương mại và bộ lọc bình quân không cục bộ vẫn có ảnh hưởng tiêu cực đối với việc ước lượng kernel như đã nêu trên
2.1.2 Xây dựng bộ lọc có hướng
Mục này trình bày các bộ lọc có hướng có thể áp dụng cho ảnh khử mờ, đồng
thời làm giảm độ nhiễu của nó Ta xét bộ lọc có hướng f θ:
)
f
t t
w , trong đó f điều khiển độ rộng của bộ lọc
Kernel ảnh hưởng tới bộ lọc Với cùng tham số giống (2-20), kernel được ước lượng cho bộ lọc b = b * f là
) cos(
Trang 33Do đó hình chiếu của kernel k dọc theo hướng chiếu là
)()(
*)()(
ra
2.1.3 Tìm bộ lọc có hướng ước lượng kernel nhiễu
Dựa vào phân tích ở trên, thuật toán áp dụng mờ có hướng f, ước lượng kernel
mờ được kết hợp k, và sau đó chiếu nó dọc theo cùng hướng của bộ lọc để thu được biến đổi Radon tương ứng Thuật toán lặp lại quá trình này để thu được một tập các hình chiếu Cuối cùng thuật toán tính toán kernel 2D sử dụng nghịch đảo biến đổi
Ưu điểm của giải pháp này là nó giảm nhiễu rất tốt khi áp dụng f, trong khi
vẫn giữ nguyên biến đổi Radon đã tính Tuy nhiên, thuật toán giả thiết rằng ảnh ẩn l
được biết khi ước lượng kernel mờ Trong thực tế thì không phải như vậy, và thậm chí với các kỹ thuật ước lượng hiện đại nhất, khôi phục k từ b, là ảnh mờ chập với một mờ có hướng thêm vào, vẫn được coi là một thách thức Bộ lọc thêm vào có xu hướng làm các cạnh gần kề chạm nhau, mà dẫn đến các lỗi trong kernel được ước lượng
Thuật toán khôi phục ảnh mờ và nhiễu dùng bộ lọc có hướng
Đầu vào: Kim tự tháp f(b0); b1, bn tạo từ ảnh gốc b mờ và nhiễu bằng quá trình giảm kích thước, b0 = b
Kết quả: kênh mờ k0 và ảnh đã khử mờ và nhiễu l0
Bước 1: Áp dụng (2-19) để tính ki và li cho bi,i = n 1
Bước 2: Tăng kích thước l1 để có l0
Trang 34Bước 3: Lặp
Bước 4: Áp dụng bộ lọc có hướng Nf cho ảnh b0 cho từng hướng i = 1 Nf,
Bước 5: Với mỗi ảnh b0, sử dụng l0 để đánh giá k0
Bước 6: Với mỗi k, tính R0 theo (2-25)
Bước 7: Tính lại k0 từ R0 sử dụng biến đổi Radon
Bước 8: Cập nhật l0 từ k0
Bước 9: Đến khi k0 không đổi
Bước 10: Với kênh k0 cuối cùng, tính b0
Với một kernel ước lượng đáng tin hơn, Thuật toán sử dụng khung giải chập
mù đa tỉ lệ thường được dùng trong các phướng pháp trước Thuật toán tạo ra một kim tự tháp ảnh của ảnh đầu vào b là {b0, b1, ,bn}, trong đó b0 là phân giải ban đầu,
và ước lượng kernel mờ theo dạng từ dưới lên từ bn đến b0 Do nhiễu đã được loại bỏ rất nhiều bằng việc thu nhỏ kích thước ảnh, Thuật toán áp dụng một phương pháp sẵn
có của Cho và Lee để ước lượng kernel mờ k i và ảnh ngầm l i từ lớp b n tới b 1 Chỉ với lớp phân giải đầy đủ b0, Thuật toán áp dụng lọc hướng f, và sau đó ước lượng kernel
sử dụng kỹ thuật giải chập mạnh được mô tả trong phần sau
Quá trình này được mô tả trong Thuật toán
Các bước 4 đến 7 được minh hoạ trong hình 2-1
Trang 35Hình 2-1: Thuật toán khôi phục ảnh mờ và nhiễu dùng bộ lọc có hướng
Đặc biệt, trong bước 5, mặc dù mỗi ảnh được lọc b bị mờ nghiêm trọng với bộ lọc thêm vào, ảnh ngầm l0, được khởi tạo từ quá trình đa tỉ lệ, khá là rõ và nét, cho phép thuật toán ước lượng k là
k arg min k || 0 ||2 ( ( 2-11) Trong đó là toán tử gradient Quá trình rất mạnh với nhiễu do b là ảnh được lọc truyền thấp Trong bước 8, phép giải chập không mù được áp dụng để cập nhật l0 dựa trên k0 Tuy nhiên, các phương pháp hiện có không hoạt động tốt trong trường hợp này vì thuật toán cần ước lượng l0 rõ từ ảnh nhiễu b0, và kết quả của các phương pháp trước nghiêng về hướng không chính xác
Để tạo ra l0 không nhiễu, thuật toán giảm tối thiểu hàm năng lượng sau nhằm vào việc hạn chế các ảnh hưởng của nhiễu trên kết quả:
2 0 2 2 1 0
1 2 0
||k b u ( 2-12)