Nén và Lượng tử hóa Dữ liệu Ảnh trong Xử lý Ảnh Số

MỤC LỤC

Bài tập 13.2

  • Tính độ dài từ trung bình từ kích thớc file ra. So sánh với độ dài từ đã đợc tính bằng chơng trình

    Bạn sẽ cần đến file này để kiểm tra chơng trình giải mã, chơng trình này sẽ đ- ợc trình bày sau. Lặp lại các bớc sau đây cho tới khi chiều dài flength > true_length {.

    Huffman

    Flength là một số đếm của các để so sánh với chiều dài thực sự của file. Dịch chuyển bit dấu lớn nhất của ch đến vị trí bít dấu nhỏ nhất của ch.

    Bài tập 13.3

      Bài tập 13.4

          4cos 5

          Vì vậy, tín hiệu ra từ các bớc cuối cùng của các thao tác bớm có thể tính dới dạng các hệ số của FCT nh trong hình 13.7. Nếu chúng ta sắp xếp lại vị trí của các giá trị bít dùng dịch chuyển bít, chúng ta rút ra tín hiệu ra nh hình (13.8). Có rất nhiều bớc (các thao tác bớm, dịch chuyển bít, và cộng truy hồi) bây giờ có thể nằm trong một bớc trong hình 13.10.

          Chơng trình dùng một bảng tra cứu để chứa các giá trị cosin, một bảng cho dịch chuyển bit.

          Hình 13.6 Bớm cuối cùng trong FCT.
          Hình 13.6 Bớm cuối cùng trong FCT.

          Bài tập13.5

          Chơng trình 13.5 “FCT2D.C“ 2-D FCT các khối ảnh (ngời dùng tự xác định kÝch thíc)

          Thay vì lập lại cả một chơng trình để tính biến đổi ngợc FCT, chúng ta sẽ dùng lu. Kết quả của thuật toán biến đổi ngợc của lu đồ FCT cho trong hình 13.12. Từ l- u đồ của hình 13.11 biến đổi ngợc của FCT có thể phát triển bình thờng từ FCT tiến.

          Hình 13.10 Biểu đồ chuyển đổi cosin nhanh.
          Hình 13.10 Biểu đồ chuyển đổi cosin nhanh.

          Bài tập 13.6

          Sự phóng to và sự thu nhỏ của các ảnh

          Một trong các ứng dụng của FCT là thay đổi kích thớc của ảnh, bao gồm sự phóng to và sự thu nhỏ ảnh. Chúng ta sẽ chấp nhận rằng một ảnh phóng to dùng FCT thì sẽ không có gì khác so với một ảnh phóng to dùng FFT, trong đó ta dùng các thuộc tính vốn có của FFT của ảnh. Toàn bộ ý tởng là ta sẽ chia tần số lấy mẫu bên trong với 2 và nh vậy sẽ tăng gấp đôi khoảng cách tần số.

          Khi FCT của một khối giảm rất nhanh kể từ điểm tần số (0,0), chúng ta có thể nhân đôi khoảng cách tần số bằng cách thêm vào các điểm 0. Điều này làm cho chúng ta giảm đợc một nửa tần số lấy mẫu bên trong và tăng gấp đôi kích thớc của ảnh. Vì vậy trong tơng lai, kỹ thuật truyền hình phải sử dụng kỹ thuật ảnh số, thì tính chất này có thể giúp cho ta tạo ra.

          Sự thu nhỏ thực hiện bằng cách bớt đi các giá trị của tÇn sè cao. Chơng trình này yêu cầu FCT của một ảnh và kích thớc của các khối trên ảnh gốc.

          Bài tập 13.7

          • Thay đổi chơng trình trên cho ảnh thu nhỏ

            Cái mà chúng ta cần làm trong trờng hợp này là biến đổi từ một tập hợp các dấu phẩy động sang một tập hợp các bít nhị phân và ngợc lại. Biểu vì biến đổi ngợc của lợng tử hoá là biến đổi từ nhiều vào một, nên quá trình này không thể tiến hành một cách thông thờng đợc. Tuy nhiên các giải thuật này đợc phát triển một các trọn vẹn trong một báo cáo cha đợc xuất bản của Lloyd vào năm 1957 và đ- ợc Max kiểm nghiệm vào năm 1960.

            Trong phần báo cáo xuất bản sau đó của Lloyd xuất bản vào năm 1982 đã cho thấy có rất nhiều ứng dụng rất thú vị của phơng pháp này. Biểu thức (13.50) và biểu thức (13.51) đa ra phơng pháp xác định các mức lấy mẫu và các mức khôi phục dùng cho cả phơng pháp của Lloyd-Max hoặc là phơng pháp Lloyd. Trong phần này tôi sẽ cung cấp cho bạn một thuật toán dựa trên thuật toán Lloyd-Max nhng có các chi tiết cụ thể hơn.

            Lựa chọn đầu tiên là số bit bạn muốn xây dựng cho mức l ợng tử, lựa chọn thứ hai là lựa chọn về các mức phân bố (phân bố Gauss, phân bố đồng. đều, hoặc phân bố Laplace), và thứ ba cũng là lựa chọn cuối cùng là lựa chon trong khi tính biểu thức trong ngoặc của g(r0). Còn cho phân bố Laplace, khi dùng tăng giá trị của biểu thức trong ngoặc sẽ không gặp một khó khăn nào việc tạo mã 6 bit.

            Hình 13.14 Lợng tử hoá.
            Hình 13.14 Lợng tử hoá.

            Bài tập 13.8

            Phơng pháp Lloyd Lloyd cũng đa ra một phơng pháp thứ hai cho phép xác định các mức lợng tử mà ông gọi là phơng pháp Lloyd I. Phơng pháp này có nhiều u điểm

            Bài tập 13.10

            • So sánh thời gian tính toán khi dùng giải thuật Lloyd-Max và khi dùng giải thuËt Lloyd

              Chúng ta sẽ cho tất cả các hệ số với các phân bố xuất hiện giống nhau, với giá trị trung bình và chuẩn của độ lệch cho bởi à = 0 và σ = 1. Nếu hệ số (0, 0) hay còn gọi là thành phần một chiều DC biểu diễn cho giá trị trung bình của độ sáng của một khối, chúng ta không thể bỏ điểm này đi đợc. Có thể nhận thấy là các chi tiết có độ lệch lớn hơn độ lệch chuẩn thì mang nhiều tin tức hơn các chi tiết có độ lệch ít hơn độ lệch chuẩn.

              Điều này phụ thuộc vào mức độ mà chúng ta muốn nén ảnh và phụ thuộc vào bao nhiêu các chi tiết bị mất trên ảnh mà chúng ta có thể chấp nhận đợc. (Chú ý là độ lệch chuẩn và trung bình có thể tính trong một dải thông của ảnh dùng biểu thức sau cho σ:. ở đây xi biểu diễn các giá trị cho một trong các hệ số). Hàm phân bố Laplace cung cấp một xấp xỉ tốt hơn cho phân bố của các hệ số chia nh chúng ta thấy ở phần dới đây.

              Phần này chứa thông tin về các mức chia và các mức một chiều bị cắt bớt và tập hợp các giá trị AC cho các hệ số giữ lại. Phần này không chứa thông tin về các giá trị bị loại bỏ, nếu chúng ta coi rằng nó có giá trị 0 và ma trận vùng chỉ ra vị trí của nó trong khối.

              Chơng trình 13.11 “QUANTIZE.C“ Chơng trình cho lợng tử hoá và nén kết quả của biến đổi FCT

              ‘image1q.dc’ là file chứa thông tin về các hệ số một chiều bị cắt bớt của một loạt các khối. ‘image1q.ac’ file chứa một loạt các lợng tử cho các hệ số AC của một loạt các khối. Tên file chứa biến đổi cosin của một ảnh bị nén, và kích thớc của khối dùng trong FCT.

              Lợng tử 4 bit Laplace cho bạn một kết quả có thể chấp nhận đợc, nh là một kinh nghiệm cho bạn. Các phân số nhỏ hơn hay mức thấp hơn các mức lợng tử gây nên một sai số cao hơn khi khôi phục lại ảnh. Để trả lời, bạn cho tên file không có phần mở rộng nh đã nói trớc đây.

              Block size, image size, number of quantization levels, zonal sampling matrix, standard deviations & means, reconstruction levels. Trớc khi bạn dùng chơng trình 13.11 bạn cần thiết kế lợng tử hoá Lloyd-Max nh các bớc trong bài tập 13.8.

              Bài tập 13.11

              Chạy chơng trình mã hoá Huffman trên “KarenQ.AC”

              Giá trị này chứng tỏ rằng 83.75 phần trăm kích thớc của ảnh gốc đã đợc nén lại. Bạn có thể giảm kích thớc của file chứa các điểm DC một chút dùng RLC. Nếu bạn trả lời “y” để tính dữ liệu lợc đồ mức xám cho các khối AC (chỉ các dứ liệu còn giữ lại), bạn sẽ có đợc file dữ liệu dùng để in ra.

              Kết quả dữ liệu lợc đồ mức xám của ảnh “KARENFCT.IMG” cho trong hình 13.19. Lợc đồ mức xám này biểu diễn phân bố Laplace nh tôi đã đề cập ở phần đầu cuốn sách này.

              Bài tập 13.12

              Chơng trình 13.12 “QUANCHK.C“ Chơng trình hiện thị các khối lợng tử hoá

              Thuật toán khôi phục lợng tử hoá đợc mô tả bởi chơng trình C sau đây. The output file can be used as input to IFCT2D.EXE to obtain the original image.*/.

              Bài tập 13.13

              Bài tập 13.14

                Một thuật toán dựa trên giả thiết một nửa quãng cho thiết kế một ma trận xác. Tăng θ bằng một giá trị cố định, và lặp lại các bơc từ bớc 4 đến bớc 6, cho đến khi “Error” đạt đến giá trị thích hợp. Chơng trình này đòi hỏi FCT của ảnh nh là một giá trị đầu vào, và số các khối đợc dùng.

                Hội tụ nhanh cho trong trờng hợp này, đợc coi nh là một bài tập để bạn có kinh nghiệm.

                Bài tập 13.15

                  So sánh các kết quả việc khôi phục các ảnh dùng phơng pháp trớc và phơng pháp này với 0.5 bpp, 1 bpp và 1.5 bpp. Nguyên nhân chủ đề này liên quan nhiều đến công nghiệp và các lĩnh vực nghiên cứu công nghiệp. Tuy nhiên, tôi không nói đến tất cả các phơng pháp viết về lĩnh vực này nh lợng tử hoá.

                  Những phơng pháp tôi đề cập đến trong chơng này là những phơng pháp đợc sử dụng rộng rãi. Những độc giả quan tâm đến những thông tin hơn nữa có thể tìm kiếm và tham khảo những sách và báo đề cập đến chủ đề này. Có nhiều chuẩn trong việc nén ảnh; đặc biệt là chuẩn đợc đợc JPEG (Joint Photographic Experts Group) đề xuất đang bắt đầu áp dụng trong một số ứng dụng.

                  Hệ số chuyển đổi đợc tiêu chuẩn hoá bằng cách áp dụng một mảng do ngời sử dụng định nghĩa nó đợc định trớc cho tất cả các khối. Để nén một ảnh màu, JPEG đề xuất rằng mỗi thành phần đợc mã hoá một cách.

                  Bảng 13.12  Phân bố bit cho karen.img. (a) 1 bpp; (b) 0.5 bpp.
                  Bảng 13.12 Phân bố bit cho karen.img. (a) 1 bpp; (b) 0.5 bpp.