Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 72 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
72
Dung lượng
0,93 MB
Nội dung
ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh . ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 1 MỞ ĐẦU Ngày nay, cùng với sự phát triển không ngừng của khoa học và công nghệ thì máy tính đóng vai trò ngày càng quan trọng và không thể thiếu trong cuộc sống xã hội loài người. Việc trao đổi thông tin của con người trong tất cả các ngành, các lĩnh vực của đời sống ngày càng trở nên cần thiết cùng với sự ra đời và phát triển của mạng Internet. Xử lý ảnh là một ngành khoa học còn tương đối mới mẻ so với nhiều ngành khoa học khác như ng nó đang được tập trung nghiên cứu và phát triển vì những ứng dụng thực tiễn của nó trong nhiều ngành , lĩnh vực khác nhau. Trong đó “Nén ảnh” là một phần của xử lý ảnh có ứng dụng to lớn trong truyền thông và trong lưu trữ, đã có rất nhiều phươngphápnénảnh được ra đời và không ngừng được cải tiến để ngày càng hoàn thiện đem lại hiệu quả nén cao và cho chất lượng ảnhtốt nh ất. Trong đồántốtnghiệp “TÌM HIỂUMỘTSỐPHƯƠNGPHÁPNÉN ẢNH” được sự hướng dẫn của PGS .TS . Ngô Quốc Tạo em đã đi sâu nghiên cứu mộtsốphươngphápnénảnh phổ biến như : mã loạt dài RLE, HUFFMAN, LZW, JPEG và phươngphápnénảnh JPEG2000 dựa trên biến đổi Wavelet với những đặc tính vượt trội so với các chuẩn nén trước đó đem lại hiệu quả nén cao , cho ảnhnén chất lượng t ốt và nhiều những ưu điểm khác mà các chuẩn nén trước đó không thể có. Nội dung đồántốtnghiệp bao gồm các phần chính như : chương một giới thiệu tổng quan về xử lý ảnh, mục đích chương này là giới thiệu mộtsố khái niệm cần biết về ảnhsố và xử lý ảnh số. Chương hai sẽ giới thiệu mộtsốphươngphápnénảnh và cách phân loại các phươngphápnén ảnh. Chương ba sẽ giới thiệu về chương trình thử nghiệm và kết quả đạt đựơc ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 2 của chương trình. Cuối cùng sẽ là phần kết luận đánh giá kết quả nghiên cứu thu được và hướng phát triển của đề tài. CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ NÉNẢNH I.1.Giới thiệu về ảnhsố và xử lý ảnh số: I.1.1.Ảnh số: Ảnh có thể biểu diễn dưới dạng tín hiệu tương tự hoặc tín hiệu số. Trong biểu diễn số của các ảnh đa mức xám, mộtảnh được biểu diễn dưới dạng một ma trận hai chiều. Mỗi phần tử của ma trận biểu diễn cho mức xám hay cường độ của ảnhtại vị trí đó. Mỗi phần tử trong ma trận được gọi là một phần tử ảnh, thông thường kí hiệu là PEL (Picture Element) hoặc là điểm ảnh (Pixel). - Với ảnh đa cấp xám: Nếu dùng 8 bit (1 byte) để biểu diễn mức xám, thì số các mức xám có thể biểu diễn được là 2 8 hay 256. Mỗi mức xám được biểu diễn dưới dạng là mộtsố nguyên nằm trong khoảng từ 0 đến 255, với mức 0 biểu diễn cho mức cường độ đen nhất và 255 biểu diễn cho mức cường độ sáng nhất. - Với ảnh màu: Cách biểu diễn cũng tương tự như với ảnh đen trắng, chỉ khác là các sốtại mỗi phần tử c ủa ma trận biểu diễn cho ba màu riêng rẽ gồm: đỏ (red), lục (green) và lam (blue). Để biểu diễn cho một điểm ảnhĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 3 màu cần 24 bit, 24 bit này được chia thành ba khoảng 8 bit. Mỗi khoảng này biểu diễn cho cường độ sáng của một trong các màu chính. Hình 1.1 Biểu diễn của một mức xám của ảnh số. I.1.2.Xử lý ảnh số: Xử lý ảnh là một khoa học mặc dù còn tương đối mới so với nhiều ngành khoa học khác ,nhất là trên quy mô công nghiệp. Xử lý ảnhsố có rất nhiều ứng dụng như làm nổi các ảnh trong y học, khôi phục lại ảnhdo tác động của khí quyển trong thiên văn học, tăng cường độ phân giải của ảnh truyền hình mà không cần thay đổi cấu trúc bên trong của hệ thống chuyển tả i, nénảnh trong khi truyền đi xa hoặc lưu trữ. Các giai đoạn chính trong xử lý ảnh có thể được mô tả trong hình sau: Độ sáng trung bình trong mỗi hình chữ nhật = giá trị một điểm ảnh. Pixel or PEL CAMERA SENSOR Thu nhận ảnhSố Phân tích ảnh Hệ quyết định Nhận dạng Lưu t rữ Lưu ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 4 I.2.Mục đích và sự cần thiết của “ nénảnh ”: Nénảnh là một kỹ thuật mã hoá các ảnhsố hoá nhằm giảm số lượng các bit dữ liệu cần thiết để biểu diễn ảnh. Mục đích là giảm đi những chi phí trong việc lưu trữ ảnh và chi phí thời gian để truyền ảnh đi xa trong truyền thông nhưng vẫn đảm bảo được chất lượng của ảnh. Nénảnh thực hiện được là do mộ t thực tế: thông tin trong bức ảnh không phải là ngẫu nhiên mà có trật tự , tổ chức.Vì thế nếu bóc tách được tính trật tự, cấu trúc đó thì sẽ biết phần thông tin nào quan trọng nhất trong bức ảnh để biểu diễn và truyền đi với số lượng ít bit hơn so với ảnh gốc mà vẫn đảm bảo tính đầy đủ của thông tin.Ở bên nhận quá trình giải mã sẽ tổ chức, s ắp xếp lại được bức ảnh xấp xỉ gần chính xác so với ảnh gốc nhưng vẫn thỏa mãn chất lượng yêu cầu. Dưới đây là ví dụ về lưu trữ ảnhsố và truyền đi xa với đường truyền 9600 baud (9600 bps) để thấy rõ sự cần thiết của việc nén ảnh: • Ảnh đa cấp xám hay ảnh 256 màu có kích thước 800 x 600, 8 bit/điểm ảnh, cần 3.840.000 bit lưu trữ và mất 6.67 phút để truyền. • Ảnh màu RGB (24 bit/điểm ảnh ) cùng độ phân giải như vậy cần hơn 10 triệu bit để lưu trữ và 20 phút để truyền. • Một phim âm bản có kích thước 24 × 36 mm (35 mm) chia bằng các khoảng cách nhau 12 àm, vào khoảng 3000 × 2000 điểm, 8 bit / pixel, yêu cầu 48 triệu bit cho lưu giữ ảnh và 83 phút để truyền. Qua ví dụ trên ta thấy nhiều vấn đề trong việc lưu trữ và truyền tảiảnhsố hoá. Nénảnh có nhiều ứng dụng trong thực tế như : truyền các văn bản ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 5 đồ hoạ qua đường điện thoại (Fax), nénảnh trong y tế và truyền hình cáp….Chính sự ứng dụng trong nhiều lĩnh vực của nénảnh cùng với sự tiến bộ trong lĩnh vực vi điện tử dẫn đến sự ra đời các chuẩn nén ảnh. Nénảnh đạt được bằng cách loại bỏ các phần dư thừa trong ảnh đã được số hoá. Dư thừa có thể là dư th ừa thông tin về không gian, dư thừa về cấp xám hay dư thừa về thời gian: • Dư thừa thông tin về không gian : trong một bức ảnh luôn tồn tại sự tương quan giữa các điểm ảnh cạnh nhau. • Dư thừa thông tin về cấp xám :là dư thừa dựa vào sự tương quan giữa các màu sắc cạnh nhau. • Dư thừa thông tin về thời gian : Trong một chuỗi ảnh video, tồn tại sự tương quan giữa các điểm ảnh của các frame khác nhau . I.3.Các khái niệm cơ bản: • Pixel (picture element) : phần tử ảnhẢnh trong thực tế là mộtảnh liên tục về không gian và về giá trị độ sáng. Để có thể xử lý ảnh bằng máy tính cần thiết phải tiến hành số hoá ảnh. Như vậy mộtảnh là một tập hợp các pixel. Mỗi pixel là gồm một cặp toạ độ x, y và màu. Cặp toạ độ x,y tạo nênđộ phân giải (resolution). Màn hình máy tính có nhiều loại với độ phân giải khác nhau: 320 x 200, 640x350, 800x600, 1024x768,… • Mức xám (Graylevel) Mức xám là kết quả sự mã hoá tương ứng của mỗi cường độ sáng của mỗi điểm ảnh với một giá trị số – kết quả của quá trình lượng hoá . • Dữ liệuĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 6 Trong một bài toán, dữ liệu bao gồm một tập các phần tử cơ sở mà ta gọi là dữ liệu nguyên tử. Nó có thể là một chữ số, một ký tự, . nhưng cũng có thể là một con số, một từ, . điều đó phụ thuộc vào từng bài toán. • Nén dữ liệuNén dữ liệu là quả trình giảm dung lượng thông tin “dư thừa” trong dữ liệu gốc và làm cho lượng thông tin thu được sau nén thường nhỏ hơn dữ liệu gốc rất nhiều. Do vậy, tiết kiệm được bộ nhớ và giảm thời gian trao đổi dữ liệu trên mạng thông tin mà lại cho phép chúng ta khôi phục lại dữ liệu ban đầu. • Tỷ lệ nén Tỷ lệ nén là một trong các đặc trưng quan trọng của mọi phươngpháp nén. Tỷ lệ nén được định nghĩa như sau: Tỷ lệ nén = 1/r*% với r là tỷ sốnén được định nghĩa: r = kích thước dữ liệu gốc / kích thước dữ liệu nén. Như vậy hiệu suất nén = (1- tỷ lệ nén)*100%. Đối vơi ảnh tĩnh, kích thước chính là số bit biểu diễn toàn bộ bức ảnh. Đối với ảnh video, kích thước chính là số bit để biểu diễn một khung hình video (video frame). ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 7 CHƯƠNG II: CÁC PHƯƠNGPHÁPNÉNẢNH II.1.Cách phân loại các phươngphápnén ảnh: II.1.1.Cách phân loại dựa vào nguyên lý nén: Nén bảo toàn thông tin (losses compression): bao gồm các phươngphápnén mà sau khi giải nén sẽ thu đựơc chính xác dữ liệu gốc.Tuy nhiên nén bảo toàn thông tin chỉ đạt hiệu quả nhỏ so với phươngphápnén không bảo toàn thông tin. Nén không bảo toàn thông tin (lossy compression): bao gồm các phươngphápnén sau khi giải nén sẽ không thu được dữ liệu như bản gốc. Các phươngpháp này được gọi là “tâm lý thị giác” đó là lợi dụng tính chất của mắt người chấp nhận mộtsố vặn xoắn trong ảnh khi khôi phục lại.Phương pháp này luôn đem lại hiệu quả cao do loại bỏ đi những thông tin dư thừa không cần thiết. II.1.2. Cách phân loại dựa vào cách thức thực hiện nén: ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 8 Phươngpháp không gian (Spatial Data Compression ): các phươngpháp này thực hiện nén bằng cách tác động trực tiếp lên việc lấy mẫu của ảnh trong miền không gian. Phươngpháp sử dụng biến đổi (Transform Coding): gồm các phươngpháp tác động lên sự biến đổi của ảnh gốc chứ không tác động trực tiếp. II.1.3.Cách phân loại dựa vào lý thuyết mã hoá: Các phươngphápnén thế hệ thứ nhất: gồm các phươngpháp có mức độ tính toán đơn giản như lấy mẫu , gán từ mã,…. Các phươngphápnén thế hệ thứ hai: gồm các phươngpháp dựa vào mức độ bão hoà của tỷ lệ nén bằng cách sử dụng các phép toán tổ hợp đầu ra một cách hợp lý hoặc sử dụng biểu diễn ảnh như : phươngpháp kim tự tháp Laplace, phươngpháp d ựa vào vùng gia tăng, phươngpháp tách hợp. II.1.4.Quá trình nén và giải nén : Gồm 2 công đoạn : Nén : dữ liệu gốc qua bộ mã hoá dữ liệu , bộ mã hoá này thực hiện nén dữ liệu đến một mức thích hợp cho việc lưu trữ và truyền dẫn thông tin. Quá trình này sẽ thực hiện việc loại bỏ hay cắt bớt những dư thừa của ảnh để thu được thông tin cần thiết nhưng vẫn đảm bảo được chất lượ ng ảnh. Giải nén : dữ liệunén đi qua bộ giải mã dữ liệu, bộ giải mã sẽ thực hiện giải nén để thu được dữ liệu gốc ban đầu.Việc giải nén này thường phải dựa vào các thông tin đi kém theo dữ liệunén ,tuỳ thuộc vào kiểu nén hay phươngphápnén mà dữ liệu giải nén được có hoàn toàn giống với dữ liệu gốc ban đầu hay không. ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Sinh viên thực hiện : Tạ Minh Thắng CT 702 Trang : 9 Tóm lại quá trình nén và giải nén dữ liệu có thể mô tả một cách tóm tắt theo sơđồ dưới đây: Hình 2.1 : Quá trình nén và giải nén II.2.Phương pháp mã hoá độ dài loạt RLE: Mã hoá theo độ dài loạt RLE (Run Length Encoding) là mộtphươngphápnénảnh dựa trên sự cắt bớt các dư thừa về không gian (một vài hình ảnh có vùng màu lớn không đổi đặc biệt đối với ảnh nhị phân). Loạt được định nghĩa là dãy các phần tử điểm ảnh (pixel) liên tiếp có cùng chung một giá trị. II.2.1.Nguyên tắc : Nguyên tắc của phươngpháp này là phát hiện một loạt các điểm ảnh lặp lại liên tiếp, ví dụ :110000000000000011 .Ta thấy điểm ảnh có giá trị 0 xuất hiện nhiều lần liên tiếp thay vì phải lưu trữ toàn bộ các điểm ảnh có giá trị 0 ta chỉ cần lưu trữ chúng bằng cách sử dụng các cặp (độ dài loạt, giá trị). Ví dụ: Cho một chuỗi nguồn d : d =5 5 5 5 5 5 5 5 5 5 19 19 19 19 19 0 0 0 0 0 0 0 23 23 23 23 23 23 23 23 Ta sẽ có chuỗi mới : (10 5) (5 19) (7 0) (8 23) Tỷ sốnén = 20/ 8 = 2.5 Quá trình nén Quá trình giải nén Dữ liệu ố Dữ liệu [...]... 063524 9 Sinh viên thực hiện : Tạ Minh Thắng CT 702 20 1 8 Trang : ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Hình 2.3 : Quá trình tạo cây nhị phân Ta có cây mã Huffman tương ứng như sau : 0 1 Sinh viên thực hiện : Tạ Minh Thắng CT 702 21 0 Trang : Đồántốtnghiệp Tìm hiểumộtsốphươngphápnénảnh Bảng từ mã gán cho các kí tự số như sau: Kí tự Mã 0 1 6 001 3 011 5 0001 2 0100 4 00000 1 01010... 31 Trang : Đồántốtnghiệp Tìm hiểumộtsốphươngphápnénảnh • Giải nén dữ liệu bằng LZW: Giải thuật giải nén gần như ngược với giải thuật nén Với giải thuật nén, một từ mã ứng với một chuỗi sẽ được ghi ra tệp khi chuỗi ghép bởi chuỗi trên với ký tự vừa đọc chưa có mặt trong từ điển Người ta cũng cập nhật ngay vào từ điển từ mã ứng với chuỗi tạo bởi chuỗi cũ với ký tự vừa đọc Ký tự này đồng thời... CT 702 25 Trang : Đồántốtnghiệp Tìm hiểumộtsốphươngphápnénảnh return true; } II.4 .Phương pháp mã hoá LZW: Khái niệm nén từ điển được Jocob Lempe và Abraham Ziv đưa ra lần đầu tiên năm 1977 sau đó phát triển thành một họ giải thuật nén từ điển LZ Năm 1984 Welch đã cải tiến giải thuật LZ thành giải thuật mới hiệu quả hơn và được đặt tên là LZW ( Lempe – Ziv - Welch) Phươngpháp này xây dựng... từ điển Sinh viên thực hiện : Tạ Minh Thắng CT 702 27 Trang : Đồántốtnghiệp • Tìm hiểumộtsốphươngphápnénảnh Từ mã thứ 257 chứa mã kết thúc thông tin (EOI - End Of Information) Thông thường một file ảnh GIF có thể chứa nhiều mảnh ảnh, mỗi mảnh ảnh này sẽ được mã hoá riêng Chương trình giải mã sẽ lặp đi lặp lại thao tác giải mã từng ảnh cho đến khi gặp mã kết thúc thông tin thì dừng lại • Các.. .Đồ ántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Đối với ảnh đen trắng chỉ sử dụng 1 bit để biểu diễn 1 điểm ảnh thì phươngpháp này tỏ ra rất hiệu quả, ta thấy điều đó qua ví dụ sau : Cho một chuỗi nguồn d: 000000000000000111111111100000000001111111111000000000000000 Ta có chuỗi mới : (15, 10, 10, 10, 15) Tỷ sốnén = 60 bit / (5*4 bit) = 3 ( chỉ sử dụng... thực hiện : Tạ Minh Thắng CT 702 16 Trang : Đồántốtnghiệp Tìm hiểumộtsốphươngphápnénảnh } if ((SecondByte % 2) == 1) if (!fil.get(ch)) return FALSE; } } else { for (BYTE i = 0; i < FirstByte; i++) pDest[paddedwidth * y + x++] = SecondByte; } } return FALSE; } II.3 .Phương pháp mã hoá Huffman: II.3.1 Nguyên tắc: Phươngpháp mã hoá Huffman là phươngpháp dựa vào mô hình thống kê Người ta tính... lại Người ta cũng phải dựa vào bảng mã tạo ra trong giai đoạn nén (bảng này được lưu trữ trong cấu trúc đầu của tệp nén cùng với dữ liệu nén) Ví dụ: Một tệp bất kỳ có tần suất xuất hiện của các kí tự số như bảng sau Ký tự Tần suất 0 1532 Sinh viên thực hiện : Tạ Minh Thắng CT 702 18 Trang : ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh 1 152 2 323 3 412 4 226 5 385 6 602 7 92 8 112 9 87 Bảng... tương quan này để có được hiệu quả nén cao , bằng việc áp dụng e(i) = d(i) –d(i-1) sẽ thu được : 5 2 2 2 2 5 10 10 10 10 -3 5 5 5 5 5 5 5 5 5 Áp dụng phươngphápnén loạt dài ta dễ dàng thu được : (5 1)( 2 4)(5 1)(10 5)(-3 1)(5 9) II.2.2.Thuật toán: Thuật toán như sau : Sinh viên thực hiện : Tạ Minh Thắng CT 702 11 Trang : ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh • Tiến hành duyệt trên từng... vào từ điển giải nén • Hàm AddToDictionary() : Hàm làm chức năng cập nhật mẫu mới vào phần tử tiếp theo trong từ điển Nếu từ điển đã đầy nó sẽ gửi ra mã xoá CC và gọi đến hàm InitDictionary() để khởi tạo lại từ điển II.4.3 .Một số thủ tục chương trình : Sinh viên thực hiện : Tạ Minh Thắng CT 702 33 Trang : ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh • Chương trình nénphươngpháp LZW : BOOL... nén = 14 / 28 = 0.2 Sinh viên thực hiện : Tạ Minh Thắng CT 702 10 Trang : ĐồántốtnghiệpTìmhiểumộtsốphươngphápnénảnh Như vậy chuỗi sau khi mã hoá đã lớn hơn nhiều chuỗi nguồn ban đầu Dođó cần phươngpháp cải tiến để xử lý những trường hợp như trên tránh làm mở rộng chuỗi dữ liệu nguồn nghĩa là chỉ mã hoá độ dài loạt dữ liệu lặp lại Người ta đã đưa ra cách đó là thêm kí tự tiền tố vào trước . Đồ án tốt nghiệp Tìm hiểu một số phương pháp nén ảnh . Đồ án tốt nghiệp Tìm hiểu một số phương pháp nén ảnh Sinh viên thực hiện. cường độ sáng của mỗi điểm ảnh với một giá trị số – kết quả của quá trình lượng hoá . • Dữ liệu Đồ án tốt nghiệp Tìm hiểu một số phương pháp nén ảnh Sinh