Hình ảnh có 2 loại : Do máy tính tạo ra (Graphical) Hình ảnh đã được số hóa Hình ảnh được biểu diễn bởi ma trận 2 chiều bao gồm các thành phần được gọi là các pexil Hình ảnh do chương trình(phần mềm) tạo ra tốn ít bộ nhớ hơn so với hình ảnh tương ứng được biểu diễn bởi ma trận điểm
Trang 1ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN : MẠNG VÀ TRUYỀN THÔNG
BÀI BÁO CÁO : MULTIMEDIA Image compression
Giáo viên hướng dẫn : Nguyễn Thị Mai Phương
Nhóm 17: Trần Văn Thanh
Trần Văn Thịnh
1
Trang 2Image Compression
3.4.1 Graphics Interchange format(GIF)
3.4.2 Tagged image file format(TIFF)
3.4.3 Digitized documents
3.4.4 Digitized pictures
3.4.5 JPEG2
Trang 4Image Compression(cont.)
Khi truyền các hình ảnh do trương trình tạo ra thì sẽ được biểu diễn theo định dạng của chương trình đó và sử dụng thuật toán nén tương ứng
ví dụ : jpeg thuật toán nén ảnh jpeg
Có nhiều thuật toán nén khác nhau nhưng chủ yếu sử dụng 2 phương
án
+ Dựa trên sự kết hợp của mã hóa vi sai và mã hóa thống kê
+ Dựa trên sự biến đổi ,phép tính vi phân và mã hóa vi sai và được phát triển để nén các hình ảnh bitonal và ảnh màu
4
Trang 53.4.1 Graphics Interchange format(GIF)
Định dạng ảnh GIF thì được sử dụng rộng dãi trên Internet cho việc biểu diễn và nén các ảnh Graphical
Màu sắc của ảnh bao gồm 24 bit 8 bit Red, 8 bit Green, 8 bit Blue
Biểu diễn được 256 màu từ 224 màu
5
Trang 63.4.1 Graphics Interchange format(GIF) cont.
Dữ liệu nén được chia làm 4 nhóm (Figure 3.10) ,đầu tiên là 1/8 tổng số
dữ liệu được nén,1/4 và cuối cùng là ½ 6
Trang 73.4.1 Graphics Interchange format(GIF) cont.
Bảng màu liên quan tới toàn bộ ảnh gọi là Golbal color table
Bảng màu được gửi qua mạng cùng với dữ liệu nén và một số thông tin khác Local color table
Nén ảnh thực chất là nén text bằng cách mở rộng bảng màu 1 cách tự động
Tuy nhiên trong GIF thay vì mỗi mục trong bảng màu là 24bit để tiết kiệm bộ nhớ chỉ sử dụng 8 bit chỉ số của bảng màu cơ bản 256 màu
7
Trang 83.4.1 Graphics Interchange format(GIF) cont.
Nếu chúng ta giới hạn mỗi mục trong bảng là 24bit biểu diễn 1 chuỗi 3 giá trị điểm ảnh trong bảng mở rộng
Thông thường bảng màu chứa 256 mục ban đầu là 512 mục
GIF cho phép 1 hình ảnh được lưu trữ và truyền trên mạng trong chế
độ xen kẽ
Điều này có lợi khi truyền hình ảnh qua 2 kênh có tốc độ thấp
GIF sử dụng mã hóa : LZW coding
GIF nén không mất mát thông tin 8
Trang 93.4.1 Graphics Interchange format(GIF) cont.
LZW coding
http://www.dspguide.com/ch27/5.htm9
Trang 103.4.2 Tagged image file format(TIFF).
10
Sử dụng rộng rãi ,sử dụng 48 bít để biểu diễn 16 bits Red, 16 bits Green, 16 bits Blue
Dự định để truyền cả hình ảnh và tài liệu đã được số hóa
Do đó dữ liệu được lưu trữ và truyền theo 1 số định dạng khác nhau
Mỗi định dạng sử dụng code number khác nhau
LZW-compression có code number là 5(nén ảnh)
Số hóa tài liệu code number là :2,3,4
Trang 113.4.3 Digitized documents
Trong 2.4.3 đã thảo luận về máy quét trong máy fax để số hóa các ảnh bitonal
Nguyên tắc quét của máy quét là:từ trái qua phải ,từ trên xuống dưới
Chỉ sử dụng 1 bít để biểu diễn 1 điểm ảnh
+ 0 trắng
+ 1 đen
Với độ phân giải xấp xỉ 8 điểm ảnh /mm luồng bits không bị nén
Trong hầu hết các trường hợp dữ liệu được truyền qua moden và PSTN
tốc độ thấp tốn thời gian
11
Trang 123.4.3 Digitized documents (cont.)
Tổ chức ITU-T đưa ra 4 chuẩn
+ T2(Group 1) hiện nay ít được sử dụng
Trang 143.4.3 Digitized documents (cont.)
Kỹ thuật overscaning được sử dụng nghĩa là tất cả các dòng bắt đầu với ít nhất 1 bit trắng Bên nhận biết rằng codeword đầu tiên luôn luôn liên quan tới màu trắng rồi thì nó sẽ thay thế giữa màu trắng or màu đen sử dụng 2 bảng termination-codes table và make-up codes table gọi là : modified Huffman codes
Nếu không có giao thức check lỗi trong PSTN ,khi sảy ra lỗi trên đường truyền bên nhận sẽ bắt đầu dịch các codeword trong ranh giới các bit bị lỗi bên nhận sẽ bất đồng bộ không thể giải mã
Để cho phép đồng bộ lại kết thúc mỗi dòng chèn thêm mã EOL(end of line)
6 EOL liên tiếp chỉ ra EOP(end of page)14
Trang 153.4.3 Digitized documents (cont.)
Mỗi dòng quét được mã hóa 1 độc lập One-dimensinal coding
One-dimensinal coding làm việc tốt nếu tài liệu chỉ chứa ký tự và bản vẽ
negative compression ratio : số bít được gửi đi khi nén lớn hơn số bits khi không nén
Vì nhưng lý do trên mã hóa T6(Group 4) được định nghĩa.Nó là tùy chọn trong Group 3(máy fax) nhưng lại là bắt buộc trong Group4
Khi hỗ trợ các máy trong Group 3 ,EOL code thêm vào cuối của mỗi dòng
+ Nếu là bít 1 dòng tiếp theo Group 3
+ Nếu là bít 0 dòng tiếp theo Group 415
Trang 163.4.3 Digitized documents (cont.)
Ký tự 0 và 1 đó được gọi là modified – modified READ(MMR) coding hoặc two-dimensional coding (2D)
Mã hóa MMR liên quan tới mã hóa vi sai với 1 dòng đã được xác định bằng việc so sánh nội dung của 1 dòng gọi là : coding Line(CL)
Liên quan tới ngay dòng trước nó thì gọi là : Reference line (RL)
16
Trang 173.4.3 Digitized documents (cont.)
Có 3 chế độ của mã hóa vi sai :
+ Pass mode
+ Vertical mode
+ Horizontal mode17
Trang 19 Dùng nén two-deminsional để giảm thời gian truyền
Hầu hết các phương pháp nén ảnh đều dựa trên tiêu chuẩn quốc tế
19
Trang 20đa phương tiện
Các giai đoạn nén ảnh : 5 giai đoạn
1 Image/Block Preparation (chuẩn bị hình ảnh, khối)
2 Forward DCT (Chuyển tiếp DTC)
3 Quantization (Lượng tử hoá)
4 Entropy Encoding ( mã hóa Entropy)
5 Frame Building (xây dựng khung hình)20
Trang 223.4.5 JPEG(cont.)
Dùng ma trận 2 chiều để biểu diễn hình ảnh
Trong trường hợp ảnh đơn sắc chỉ sử dụng 1 ma trận 2 chiều để thiết lập 8 bit giá trị mức xám
22
Trang 243.4.5 JPEG(cont.)
Một khi file hình ảnh gốc được lựa chọn và chuẩn bị tập hợp các giá trị được nén riêng biệt bằng cách sử dụng DCT.Nó thì tốn thời gian vì vậy mỗi ma trận đầu tiên được chia 1 tập các ma trận nhỏ hơn (8x8) gọi là ma trận phụ
Hình 3.15b :block preparation24
Trang 2525
Trang 263.4.5 JPEG(cont.)
26
Trang 27= 17) hoặc cả hai (x = 17 cho y = l7) gọi là hệ số AC
Đối với j = 0 chỉ có hệ số tần số quét ngang có mặt gia tăng tần số cho i
= 17
Đối với i = 0, chỉ có hệ số tần số quét dọc có mặt tăng tần số cho j
= 17
27
Trang 283.4.5 JPEG(cont.)
28
Trang 293.4.5 JPEG(cont.)
3 Quantization: lượng tử hóa
Mắt phản ứng chủ yếu để các DC và các thành phần tần số thấp hơn và thay đổi theo tần số không gian do ngưỡng giá trị sử dụng khác nhau cho mỗi tổng số 64 hệ số DCT
Lượng tử hoá là quá trình làm giảm tầm quan trọng của quá trình DC
Lượng tử hoá làm giảm tầm quan trọng của DC và các hệ số AC để giảm băng thông
Các tính toán của các hệ số lượng liên quan đến việc phân chia các hệ
số của một yếu tố bình thường và làm tròn hệ số giá trị số nguyên gần nhất.JPEG đạt tiêu chuẩn bao gồm hai bảng lượng tử mặc định hoặc tùy chỉnh Nói chung, tăng cường độ với tần số không gian ngày càng tăng hệ
số DC trong ma trận là lớn nhất của các hệ số tần số cao hơn không(khai thác trong giai đoạn mã hóa dữ liệu Entropy sau đây.)
29
Trang 303.4.5 JPEG(cont.)
Chúng ta có thể suy từ những con số quantization error tối đa là cộng hoặc trừ 50% của giá trị ngưỡng được
30
Trang 313.4.5 JPEG(cont.)
Tính toán của một tập hợp các lượng tử hóa DCT31
Trang 333.4.5 JPEG(cont.)
Các thuật toán mã hóa dữ liệu Entropy hoạt động trên ma trận 1 chiều giá
một véc tơ Tuy nhiên, sản lượng của lượng tử là 2-D.Vì vậy, các giá trị được đại diện trong các hình thức của một đơn kích thước véc tơ
Ngoài ra, tất các hệ số tần số cao trong một trình tự để làm cho hình thức đại diện thích hợp cho nén
Đầu tiên là sự khác biệt giữa mã hóa, mà được áp dụng cho các hệ số DC
33
Trang 343.4.5 JPEG(cont.)
34
Thứ hai là chạy dài mã hóa, được áp dụng cho các giá trị còn lại trong các vector
có các hệ số AC.
Trang 353.4.5 JPEG(cont.)
Differential encoding :
Các giá trị khác biệt đầu tiên luôn luôn được mã hóa tương đối bằng không Các giá trị khác biệt này sau đó được mã hóa trong các hình thức (SSS, giá trị)
+ SSS trường cho biết số bit cần thiết để mã hóa các giá trị
+ Lĩnh vực giá trị các bit thực tế đại diện cho các giá trị
Các quy tắc được sử dụng để mã hóa mỗi giá trị được tóm tắt:
35
Trang 363.4.5 JPEG(cont.)
36
Trang 383.4.5 JPEG(cont.)
38
Trang 393.4.5 JPEG(cont.)
Huffman encoding :
Nén có thể được thu được bằng cách thay thế chuỗi dàichữ số nhị phân của một chuỗi của codewords ngắn hơn nhiều, (tương đối tần số xuất hiện)
Huffman là thuật toán mã hóa
Đối với sự khác biệt giữa hệ số DC mã hóa trong khối,bit trong lĩnh vực SSS không được gửi dưới dạng nhị phân unsigned
39
Trang 403.4.5 JPEG(cont.)
40
Trang 413.4.5 JPEG(cont.)
Điều này được thực hiện để các bit trong lĩnh vực SSS41
Trang 423.4.5 JPEG(cont.)
42
Trang 433.4.5 JPEG(cont.)
Giải thích ví dụ 3.8 sau
Các lĩnh vực SSS sau đó được sử dụng để xác định số bit trong giá trị lĩnh vực thời gian dài và sau khi đọc và giải mã đó, lặp đi lặp lại quá trình cho đến khi từ mã EOB nhận được các hệ số còn lại là tất cả các số không
Bởi vì việc sử dụng các codewords chiều dài thay đổi khác nhau các bộ phận của giai đoạn mã hóa dữ liệu ngẫu nhiên
43
Trang 443.4.5 JPEG(cont.)
44
Trang 453.4.5 JPEG(cont.)
5 Frame Building :
Frame Header :
+ Chiều rộng và chiều cao của hình ảnh bằng pixel
+ Số lượng và loại của các thành phần được sử dụng để đại diện cho hình ảnh (CLUB, RGB, YCbCr)
+ Số hóa dữ liệu định dạng được sử dụng: (4:2:2,4; 2, 0, vv)
Scan Header :
+ Danh tính của các thành phần (RGB vv)
Số lượng bit được sử dụng để số hóa mỗi thành phần
Bảng lượng tử hóa các giá trị được sử dụng để mã hóa mỗithành phần
45
Trang 463.4.5 JPEG(cont.)
46
Trang 473.4.5 JPEG(cont.)
Trang 48Thanks for watching!
48