Tải bản đầy đủ (.doc) (24 trang)

Chuẩn JPEG - Công nghệ nén ảnh JPEG potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (620.14 KB, 24 trang )

Trường ĐHCN Hà Nội
TRƯỜNG ĐH CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN


BÀI TẬP LỚN XỬ LÝ ẢNH

Đề tài:”Tìm hiểu công nghệ nén ảnh JPEG, chuẩn JPEG
và các loại JPEG. Thử nghiệm trên ứng dụng cụ thể”

Giáo viên hướng dẫn: Lê Thị Thủy
Sinh viên thực hiện:
1. Hoàng Văn Cường
2. Phạm Xuân Đạo
3. Nguyễn Tiến Đạt

Hà Nội,12/2011
1
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Lời mở đầu
Cùng với sự phát triển mạnh mẽ của công nghệ và sự ra đời của Internet thì việc tìm
ra một phương pháp nén ảnh để giảm bớt không gian lưu trữ và chia sẻ một cách dễ dàng
trên mạng nhưng vẫn giữ được tính trung thực của ảnh đang là một yêu cầu cần thiết. Và
đã có rất nhiều phương pháp nén ảnh ra đời đã và đang được ứng dụng như: mã loạt dài
RLE, HUFFMAN, LZW, JPEG và phương pháp nén ảnh JPEG2000. Tất cả đều với một
mục đích chung là làm thế nào để biểu diễn một ảnh với dung lượng ít nhất để có thể tối
thiểu hoá dung lượng kênh truyền và không gian lưu trữ trong khi vẫn giữ được tính
trung thực của ảnh. Và JPEG là một công nghệ ra đời từ lâu nhưng cho đến hiện nay các
ứng dụng của JPEG vẫn được sử dụng trong đời sống. Ta thường gặp các ảnh JPEG khi
duyệt web hay khi tải ảnh, bất cứ trang điện tử nào hầu như cũng đều có sự xuất hiện của


JPEG. Có thể nói JPEG đóng một vai trò quan trọng trong các ứng dụng điện tử ngày
nay.
Với đề tài: “Tìm hiểu công nghệ nén ảnh JPEG, chuẩn JPEG và các loại JPEG. Thử
nghiệm trên ứng dụng cụ thể” dưới sự hướng dẫn của cô Lê Thị Thủy phụ trách bộ môn
xử lý ảnh chúng em đã tìm hiểu và đã hoàn thành đề tài này.
Trong bài làm còn nhiều thiếu sót mong cô giáo và các bạn góp ý để đề tài hoàn thiện
hơn.
Nhóm chúng em xin chân thành cảm ơn
2
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
MỤC LỤC
LỜI MỞ ĐẦU
A. CÔNG NGHỆ NÉN ẢNH JPEG……………………………4
I. Chuẩn JPEG………………………………………… 4
II. Công nghệ nén ảnh JPEG…………………………….5
1. Mã hóa JPEG…………………………………… 6
1.1. Phân khối………………………………… 6
1.2. Mã hóa biến đổi DCT…………………… 8
1.3. Lượng tử hóa……………………………….11
1.4. Mã hóa…………………………………… 13
2. Giải mã JPEG…………………………………….16
III. JPEG………………………………………………… 19
1. JPEG……………………………………………… 19
2. JPEG 2000………………………………………… 19
3. JPEG – LS………………………………………… 19
4. JPEG – XR………………………………………….19
5. JPEG – HDR……………………………………… 20
B. THỬ NGHIỆM ỨNG DỤNG CỤ THỂ…………………… 20
C. KẾT LUẬN……………………………………………………24

A.CÔNG NGHỆ NÉN ẢNH JPEG
I. CHUẨN JPEG
Nguyên lý của phương pháp nén JPEG là: cắt hình ảnh thành từng khối nhỏ, phân tích
tất cả các dữ liệu về màu sắc, độ sáng mà các khối đó chứa bằng các phương trình ma
3
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
trận. Ảnh màu trong không gian RGB( red, green, blue) được chuyển đổi qua hệ YCbCr.
Trong khi thị giác con người lại rất nhạy cảm với hệ Y, ít nhạy cảm hơn nhiều với hệ
Cb,Cr. Dẫn đến hệ thống sẽ nén thành phần Y của ảnh ở mức độ ít hơn nhiều so với Cb
và Cr. kế tiếp là dụng biến đổi Cosin rời rạc, sau nữa là quá trình lượng tử hóa và mã hóa.
Khi giải nén ảnh các bước thực thi sẽ làm ngược lại quá trình nói trên.
Quy trình nén:
• Chuẩn nén JPEG ban đầu phân ảnh ra các khối 8 x 8. Việc xử lý trên các khối dữ
liệu nhỏ này sẽ làm tăng độ chính xác trong tính toán cũng như giảm thiểu được
một phần của tính toán.
• Tiếp đến các khối này qua giai đoạn biến đổi Cosin( DCT ) phép biến đổi Cosine
rời rạc biến đổi thông tin ảnh từ miền không gian sang miền tần số để có thể biểu
diễn dưới dạng gọn hơn.
• Tiếp sau quá trình biến đổi Cosine rời rạc là quá trình lượng tử hóa: quá trình này
làm giảm số lượng bít cần để lưu trữ các hệ số biến đổi bằng việc giảm độ chính
xác của hệ số. ( quá trình mất mát thông tin)
• Tiếp đến là quá trình mã hóa, quá trình này sẽ tách biệt việc xử lý hai thành phần
đặc trưng: thành phần các hệ số một chiều DC đặc trưng cho phần lớn tín hiệu của
ảnh và thành phần các hệ số xoay chiều đặc trưng cho các thông tin chi tiết của
ảnh.
Sau quá trình mã hóa ta sẽ có được dữ liệu ảnh như sau:
Ví dụ dữ liệu ảnh sau nén JPEG:
ff d8 ff e0 00 10 4a 46 49 46 00 01 01 00 00 01 00 01 00 00 ff fe 00 46
76 77 78 79 7a 83 84 85 86 b5 b6 b7 b8 b9 ba c2 03 00 04 ff db 00 43

00 08 06 06 07 06 05 08 07 07 07 09 09 08 0a 0c 14 0d 0c 0b 0b 0c 19 12
4
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
13 0f 14 1d 1a 1f 1e 1d 1a 1c 1c 20 24 2e 27 20 22 2c 23 1c 1c 28 37 29
2c 30 31 34 34 34 1f 27 39 3d 38 32 3c 2e 33 34 32 ff c0 00 0b 08 01 00
01 00 01 01 11 00 ff c4 00 1f 00 00 01 05 01 01 01 01 01 01 00 00 00 00
00 00 00 00 01 02 03 04 05 06 07 08 09 0a 0b ff c4 00 b5 10 00 02 01 03
03 02 04 03 05 05 04 04 00 00 01 7d 01 02 03 00 04 11 05 12 21 31 41 06
13 51 61 07 22 71 14 32 81 91 a1 08 23 42 b1 c1 15 52 d1 f0 24 33 62 72
82 09 0a 16 17 18 19 1a 25 26 27 28 29 2a 34 35 36 37 38 39 3a 43 44 45
46 47 48 49 4a 53 54 55 56 57 58 59 5a 63 64 65 66 67 68 69 6a 73 74 75
76 77 78 79 7a 83 84 85 86 87 88 89 8a 92 93 94 95 96 97 98 99 9a a2 a3
a4 a5 a6 a7 a8 a9 aa b2 b3 b4 b5 b6 b7 b8 b9 ba c2 c3 c4 c5 c6 c7 c8 c9
ca d2 d3 d4 d5 d6 d7 d8 d9 da e1 e2 e3 e4 e5 e6 e7 e8 e9 ea f1 f2 f3 f4
f5 f6 f7 f8 f9 fa ff da 00 08 01 01 00 00 3f 00 xx xx xx xx xx xx xx xx
xx xx xx xx xx xx xx xx xx xx xx xx ff d9
Cấu trúc ảnh JPEG:
Các byte đánh dấu Giải thích
FF D8 Bắt đầu File
FF FE Chú giải có thể không có
FF E0 Byte đánh dấu dữ liệu ứng dụng
FF DB Định nghĩa bảng lượng tử
FF C0 Bắt đầu của Baseline DCT
FF C4 Định nghĩa bảng Huffman
FF DA Bắt đầu dữ liệu ảnh
XX XX Dữ liệu mã hóa
FF D9 Kết thúc ảnh
II. CÔNG NGHỆ NÉN ẢNH JPEG
5

Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
1. Mã hóa JPEG
• Sự chuyển đổi không gian màu:
Trước tiên ảnh được chuyển đổi từ RGB tới một không gian màu khác gọi là
YCbCr. Nó có 3 thành phần Y, Cb,Cr, thành phần Y miêu tả ánh sáng của điểm ảnh,
thành phần Cb và Cr miêu tả “ chrominance”(phân loại thành phần xanh lá cây và
đỏ). Sự chuyển đổi không gian màu YcbCr cho phép nén ảnh lớn nhất và cho ra cùng
một chất lượng ảnh. Tuy nhiên nhiều ảnh JPEG chất lượng cao không áp dụng trường
hợp này và thay vì giữ chúng trong không gian màu RGB, mỗi vùng màu được nén và
lượng tử hóa tách biệt với những giới hạn cùng chất lượng.
• Downsampling:
Mắt người có thể nhìn thấy nhiều chi tiết trong thành phần Y(ánh sáng) hơn
trong Cb(xanh lá cây) và Cr(xanh dương). Từ đó quá trình nén sẽ làm giảm thành
phần Cb và Cr (được gọi là: downsampling” hay “Chroma subsampling”). Tỉ số mà
tại việc lấy mẫu xuống có thể được thực hiên trên LPE 4:4:4( không lấy mẫu xuống),
4:2:2(giảm bớt chia 2 theo hướng nằm ngang), và thường sử dụng I là 4:2:0(giảm bớt
chia theo hướng nằm ngang và đứng). ngưng quá trình lấy mẫu Y, Cb, Cr được sử lý
tách biệt và trong cùng 1 loại. Lấy mẫu xuống thành phần Chroma lưu giữ 33% hoặc
50% không gian được lấy bởi ảnh.
1.1. Phân khối
Sau khi “ subsampling” mỗi kênh phải bị tách ra đặt trong khối 8x8( của
pixel). Nếu như dữ liệu cho mỗi kênh không mô tả được số nguyên của các khối
thì việc giải mã phải làm đầy những vùng còn lại của những khối không đầy đủ
với một số hình thức của dữ liệu giả: làm đầy nền của pixel với màu quy định
(màu đen) tạo ra vùng tối dọc phần nhìn thấy rõ của khung. Cách tốt nhất là làm
đầy pixel bởi sử dụng màu sắc mà nó qui định hệ số DCT của pixel nhìn thấy rõ
tại tần số thấp.
6
Công nghệ nén ảnh JPEG

Trường ĐHCN Hà Nội

Miêu tả hàm truyền cosine
8x8 ảnh nhỏ trình bầy trong mặt xám 8bit
Việc phân ảnh ra các khối 8x8 đem lại nhiều thuận lợi trong quy trình. Nó
giúp cho công đoạn biến đổi nhanh hai chiều cho các khối 8x8 hiệu quả hơn, biến
đổi Cosine cho các khối có cùng kích cỡ có thể giảm được một phần các tính toán
chung. Ngoài ra biến đổi Cosine đối với các khối có kích thước nhỏ sẽ làm tăng
độ chính xác khi tính toán với số dấu phẩy tĩnh, giảm thiểu sai số do làm tròn sinh
ra.
Mặt khác, do các điểm ảnh hàng xóm có độ tương quan cao hơn do đó phép biến
đổi Cosine cho từng khối nhỏ sẽ tập trung năng lượng thấp trong các khối nên chỉ
tạo ra mất mát thông tin cục bộ giúp nâng cao chất lượng ảnh.
1.2. Mã hóa biến đổi DCT
7
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Mã hóa sử dụng biến đổi có 2 cách thường được sử dụng là biến đổi fourier và
biến đổi Cosin. Ở đây chuẩn JPEG sử dụng biến đổi Cosin mà không dùng biến
đổi fourier là do: phép biến đổi Cosin tạo ra khối dữ liệu dễ nén hơn:
• Các hệ số là các hệ số thực dẫn đến khối lượng chỉ bằng 1/2 so với số
phức
• Phép biến đổi Cosin tập trung năng lượng của khối ảnh vào 1 hệ số tương
ứng với vùng tần số thấp. Dẫn đến có thể cho các hệ số vùng tần số cao về
gần 0 và bằng 0 mà ảnh hưởng không đáng kể đến chất lượng ảnh.
Mỗi thành phần (Y,Cb,Cr) của mỗi khối 8x8 được chuyển đến vùng tần số sử
dụng biến đổi Cosine rời rạc 2-D(DCT). Nguyên tắc chính của phương pháp mã
hóa này là biến đổi tập các giá trị pixel của ảnh trong miền không gian sang một
tập các giá trị khác trong miền tần số sao cho các hệ số trong tập giá trị mới này
có tương quan giữa các điểm ảnh gần nhau nhỏ hơn.

Phép biến đổi Cosin rời rạc một chiều được định nghĩa bởi:
phép biến đổi cosin hai chiều:
Biến đổi là một công đoạn lớn trong các phương pháp nén sử dụng phép
biến đổi. Nhiệm vụ của công đoạn biến đổi là tập trung năng lượng vào một số ít
các hệ số biến đổi. công thức biến đổi cho mỗi khối:
Trong đó:
8
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội


Mỗi khối 64 điểm ảnh sau biến đổi DCT thuận sẽ nhận được 64 hệ số
thực. mỗi hệ số này có chứa một trong 64 thành phần tần số không gian hai chiều.
Hệ số với tần số bằng không theo cả hai hướng ( tương ứng với k1 và k2 bằng 0)
được gọi là hệ số một chiều DC, hệ số này chính là giá trị trung bình của 64 điểm
ảnh trong khối. 63 hệ số còn lại gọi là các hệ số xoay chiều AC. Hệ số một chiều
DC tập trung phần lớn năng lượng của ảnh.
8x8 bit ảnh nhỏ
Sau khi trừ mỗi phần tử cho 128
9
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Sau khi lấy DCT và nhóm các số nguyên gần nhất
Giá trị lớn nhất ở đầu gốc trái gọi là hệ số DC, 63 giá trị còn lại gọi là hệ
số AC. Biến đổi Cosine rời rạc làm tăng kích cỡ ảnh.
Thuật toán biến đổi nhanh Cosine hai chiều cho mỗi khối trong trường
hợp này sẽ bao gồm 16 phép biến đổi nhanh Cosin một chiều. đầu tiên người ta
biến đổi nhanh Cosin một chiều cho các dãy điểm ảnh trên mỗi hàng. Lần lượt
thực hiện cho 8 hàng. Sau đó đem biến đổi nhanh Cosin một chiều theo từng cột
của ma trận vừa thu được sau 8 phép biến đổi trên. Cũng lẩn lượt thực hiện cho 8

cột. ma trận cuối cùng sẽ là ma trận hệ số biến đổi của khối tượng ứng. giải thuật
biến đổi nhanh được mô tả như sau:
Trên thực tế nếu cài đặt thuật toán nhanh tổng quoát thì chúng ta phải sử
dụng nhiều vòng lặp, nhiều phép so sánh và số lượng phép toán mà máy cần thực
hiện thực tế nhiều hơn thuật toán thông thường. Qua thử nghiệm cài đặt cả 2 thuật
toán trên và cho chạy trên cùng một ảnh thì thuật toán thông thường thường nhanh
hơn so với thuật toán FCT. Vì vậy người ta vẫn thường sử dụng thuật toán thông
thường. Một nguyên nhân nữa là vì phép biến đổi chỉ thực hiện trên các khối ảnh
8x8 nên độ phức tạp của thuật toán không phải là điều quyết định trong tốc độ
tính toán.
1.3. Lượng tử hóa
Khối lượng tử hóa trong sơ đồ nén đóng vai trò quan trọng và quyết định
tỷ lệ nén của chuẩn nén JPEG, nhiệm vụ chính của công đoạn này là mã hóa ma
trận đầu vào sau biến đổi DCT thành các giá trị mức xám đặc trưng cho các
cường độ sáng của ảnh. Đầu vào của khối lượng tử hóa là các ma trận hệ số biến
đổi Cosin của các khối điểm ảnh.
Sau khi thực hiện biến đối DCT, 64 hệ số sẽ được lượng tử hoá dựa trên
một bảng lượng tử gồm 64 phần tử Q(u,v) với 0≤u, v≤7. Bảng này được định
10
Công nghệ nén ảnh JPEG
16
2C
2
1
2
1
2
1
-1
-1

-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
C
4
C
4
C
4
C
4
Dịch chuyển bít
X(0)
X(1)
X(2)
X(7)
X(3)
X(4)

X(5)
X(6)








8
2C
5
8
2C
5
8
2C
5
16
2C
9
16
2C
13
16
2C
Trường ĐHCN Hà Nội
nghĩa bởi từng ứng dụng cụ thể. Các phần tử trong bảng lượng tử có giá trị từ 1
đến 255 được gọi là các bước nhảy cho các hệ số DCT. Quá trình lượng tử được

coi như là việc chia các hệ số DCT cho bước nhảy lượng tử tương ứng, kết quả
này sau đó sẽ được làm tròn xuống số nguyên gần nhất. Công thức (3) thể hiện
việc lượng tử với F(u,v) là các hệ số DCT, F
Q
(u,v) là các hệ số sau lượng tử, các
hệ số này sẽ được đưa vào bộ mã hoá Entropy.
Ở giai đoạn này người ta sử dụng một bảng lượng tử hóa Q(u,v) tùy thuộc
vào từng mục đích hay từng ứng dụng cụ thể người ta có thể sử dụng các bảng
lượng tử khá nhau.
Giả sử ở đây ta dùng bảng lượng tử Q(u,v) được định nghĩa như sau:
Sử dụng bảng lượng tử Q(u,v) này ta thực hiện với ma trận DCT ở trên:
Vd: round round -26
Ta được kết quả:
11
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Kết thúc quá trình lượng tử hóa ta được ma trận hệ số, ma trận hệ số này
chính là đầu vào của bước mã hóa.
Nhận xét: với phương pháp lượng tử hóa ta có thể sử dụng lượng tử hóa
đều, khi đó tất cả các hệ số sau quá trình DCT đều được chia chung cho một hệ
số. Song với ảnh, phần tần số thấp chứa nhiều thông tin hơn phần tần số cao vì
vậy để đạt độ nén cao ta có thể dùng nhiều bit để lưu giữ các giá trị thành phần
tần số thấp và dùng ít bit hơn để lưu trữ hệ số tần số cao. Điều này dẫn tới việc
thiết kế một bảng lượng tử với các hệ số khác nhau.
Một bảng lượng tử hóa tốt cần phải có các tính chất sau:
• Giá trị Q(m,n) có thể nhỏ nhất bằng 2. Khi đó các hệ số X(m,n) sau
khi được làm tròn tới số nguyên gần nhất có thể chứa trong 1 byte
• Hệ số X(0,0) là trung bình của ô ảnh vì thế không được để sai lệch
quá nhiều
Khi ảnh là ảnh đồ họa thì có các vùng lớn giá trị điểm ảnh như nhau nên

các hệ số AC=0. Còn những ô chứa biên thì giá trị AC khá lớn. Q(m,n) nên lấy
nhỏ để độ nén vẫn cao và đường biên không bị nhòe.
1.4. Mã hóa
Đầu vào của quá trình mã hóa người ta chia tách biệt ra hai thành phần để xử
lý. Với thành phần các hệ số 1 chiều DC người ta mã hóa hệ số theo phương pháp
biến đổi xung mã ( DPCM). Còn với thành phần xoay chiều AC người ta sẽ sắp
xếp lại theo phương pháp Zigzag và nén theo mã loạt dài.
• Xử lý AC
Thành phần các hệ số xoay chiều chứa các thông tin chi tiết của ảnh. Để
nâng cao hiệu quả nén cho mỗi hệ số trong một khối người ta xếp lại chúng theo
thứ tự Zigzag. Có thể hình dung hình Zigzag như bảng sau:
12
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Tác dụng của sắp xếp lại theo thứ tự Zigzag là tạo ra nhiều loạt hệ số
giống nhau. Chúng ta biết rằng năng lượng của khối hệ số giảm dần từ góc trên
bên trái xuống góc dưới bên phải nên việc sắp xếp lại các hệ số theo thứ tự Zigzag
sẽ tạo điều kiện cho các hệ số xấp xỉ nhau( cùng mức lượng tử) nẳm trên một
dòng. Thông thường các hệ số tương ứng với tần số cao phần lớn có giá trị bằng
0, dẫn đến khi chuyển theo phương pháp Zigzag ta sẽ có nhiều dãy hệ số 0 liên
tiếp nhau.Mỗi khối Zigzag này được mã hóa theo phương pháp RLE. Cuối mỗi
khối đầu ra của RLE ta đặt dấu kết thúc khối EOB( End Of Block)
Sau bước lượng tử hóa ta đã có ma trận:
Chuỗi Zigzag cho các hệ số lượng tử hóa này:
-26 -3 0 -3 -2 -6 2 -4 1 -4 1 1 5 1 2 -1 1 -1 2 0 0 0 0 0 -1 -1 EOB
Tiếp đến là mã hóa AC theo mã loạt dài:
(0,-3);(1,-3);(0,-2);(0,-6);(0,2);(0,-4);(0,1);(0,-4);(0,1);(0,1);(0,5);
(0,1);(0,2);(0,-1)
(0,1);(0,-1);(0,2);(5,-1);(0,-1);EOB
Thành phần AC này được xử lý theo quy trình:

13
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Bước chạy của mã được xác định là số chữ số 0 đứng trước mã:
(0,3): bước chạy 0; (1,3): bước chạy 1…vv.
Loại được xác định theo bảng hệ số DC ( dùng chung):
Sau đó các thành phần AC được phân loại theo bảng mã để tìm mã Huffman
tương ứng.
Bảng phân loại có thể sử dụng chung với DC:
Ví dụ:
(0,-3): -3 thuộc loại 2.
Từ bước chạy và loại ta sử dụng bảng sau để tìm mã huffman tương ứng:
14
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Ví dụ:
( 0,3): bước chạy 0 và loại 2 tương ứng với mã: 01.
Mã nhị phân của 3: 011
Mã cho toàn bộ (0,3) : 01 011.
Tương tự ta sẽ có toàn bộ mã cho các hệ số AC.
• Xử lý thành phần DC
Thành phần các hệ số một chiều chứa phần lớn năng lượng tín hiệu hình ảnh.
Thực tế các hệ số DC của các khối liên tiếp nhau thường giống nhau hoặc sai khác
nhau chút ít. Vì vậy thay vì phải mã hóa một giá trị lớn như vậy người ta chỉ mã hóa
hệ số DC của khối đầu tiên, còn hệ số DC của các khối tiếp theo thì chỉ mã hóa độ
lệch so với hệ số khối trước nó.
Sơ đồ mã hóa DC:
15
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội

Giả sử DC1=40; DC2=25; delta=15. So với bảng phân loại đã đề cập ta có delta
ứng loại 4: 110. Giá trị delta= 1111. Dẫn đến mã của DC2: 110 1111
Tương tự với các giá trị DC khác.
Chuyển các giá trị đã mã hóa ra tệp:
Khi mã hóa các hệ số của biến đổi Cosin ta cần đến 2 bản mã Huffman, một cho
hệ số AC một cho DC. Các bảng này phải lưu vào phần thông tin của tệp. Còn phần dữ
liệu của tệp sẽ lần lượt lưu các dãy bit của các khối 64 hệ số theo nguyên tắc:
• Lưu dãy bit của hệ số DC
• Tiếp theo lưu dãy bit của các hệ số AC ( bao gồm cả dấu hiệu kết thúc khối)
2. Giải mã JPEG
Thực chất quá trình giải mã hiển thị ảnh là quá trình ngược của mã hóa
JPEG.
Sơ đồ mã hóa và giải mã JPEG
Để có thể giải nén được, chúng ta phải ghi lại thông tin như: kích thước
ảnh, kích thước khối, ma trận T, độ lệch tiêu chuẩn, các mức tạo lại, hai bảng mã
Huffman, kích thước khối nén một chiều, kích thước khối nén xoay chiều… và
ghi nối tiếp vào hai file nén của hai thành phần hệ số.
16
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Quá trình được bắt đầu với công đoạn giải mã Entropy, sau quá trình này
ta được ma trận 8x8. Lấy ma trận hệ số DCT ( sau khi cộng hệ số DC khác):
Quá trình giải lượng tử ở phía bộ giải mã được thực hiên ngược lại. Các hệ
số sau bộ giải mã entropy sẽ nhân với các bước nhảy trong bảng lượng tử (bảng
lượng tử được đặt trong phần header của ảnh JPEG). Kết quả này sau đó sẽ được
đưa vào biến đổi DCT ngược.
Kết quả sau giải mã lượng tử
Nó gần giống với ma trận hệ số DCT nguyên thủy cho nửa trên phía trái.
Tiếp đến là quá trình biến đổi ngược DCT, áp dụng công thức biến đổi ngược cho
khối 8x 8:


17
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội

Cho ta kết quả:
Cộng 128 tới mỗi “ entry”:
Đây là những ảnh nhỏ không bị nén và có thể so sánh với ảnh nhỏ nguyên
thủy, ảnh giải nén có sự khác nhau rất ít :
ảnh gốc
18
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
ảnh sau giải nén
III. CÁC LOẠI JPEG
1. JPEG
JPEG ( Joint Photographic Experts Group): là một trong những
phương pháp nén ảnh hiệu quả, có tỷ lệ nén ảnh tới vài chục lần. Tuy
nhiên ảnh sau khi giải nén sẽ khác với ảnh ban đầu. Chất lượng ảnh bị suy
giảm sau khi giải nén. Sự suy giảm này tăng dần theo hệ số nén. Tuy nhiên
sự mất mát thông tin này là có thể chấp nhận được và việc loại bỏ những
thông tin không cần thiết được dựa trên những nghiên cứu về hệ nhãn thị
của mắt người.
2. JPEG 2000
JPEG 2000 là một tiêu chuẩn nén hình ảnh và hệ thống mã hóa. Nó
được tạo bởi ủy ban Joint Photographic Experts Group vào năm 2000 với
mục đích thay thế cho biến đổi cosin rời rạc ban đầu – nền tảng của tiêu
chuẩn JPEG ( được tạo ra năm 1992) với một phương pháp thiết kế mới
dựa trên phương pháp wavelet. Tiêu chuẩn có phần mở rộng là .jp2
( ISO/IEC 15444-1) và .jpx ( ISO/IEC 15444-2)

3. JPEG - LS
JPEG LS (Lossless JPEG) được bổ sung năm 1993 vào tiêu chuẩn
JPEG của Joint Photographic Experts Group cho phép nén ảnh dạng
lossless. Bằng cách sử dụng một kĩ thuật hoàn toàn khác tiêu chuẩn nén
JPEG tổn hao, nó sử dụng một chương trình dự đoán dựa trên 3 điểm gần
nhất ( phía trên, bên trái và phía trên bên trái), mã hóa dữ liệu nhẫu nhiên
được sử dụng trên các lỗi dự đoán. Nó trở nên phổ biến trong các hình ảnh
y tế và được sử dụng trong DNG (Digital Negative – là một đinh dạng của
Adobe sử dụng trong ảnh kĩ thuật số) và một số máy ảnh kĩ thuật số để
nén ảnh thô nếu không thì nó không được phổ biến như hiện nay.
4. JPEG - XR
JPEG XR ( một đinh dạng mở rộng của JPEG) là tiêu chuẩn nén
hình ảnh và định dạng cho tệp tin hình ảnh được chụp liên tục, dựa trên
công nghệ ban đầu được phát triển và cấp bằng sáng chế cho Microsoft
HD Photo (trước là Windows Media Photo). Nó hỗ trợ cả nén lossy và
lossless, và là định dạng phổ biến cho các tài liệu Ecma-388 Open XML
Paper Specification ( OpenXPS). Nó hỗ trợ các định dạng có sẵn trong
Adobe Flash Player 11.0, Adobe AIR 3.0, Windows Imaging
19
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Component, .NET Framework 3.0, Windows Vista, Windows 7, Internet
Explorer 9, và một số sản phảm khác.
5. JPEG-HDR
JPEG-HDR ( JPEG – High Dynamic Range) là một đinh dạng mở
rộng của tiêu chuẩn JPEG cho phép lưu trữ hình ảnh ở độ năng động cao.
B. THỬ NGHIỆM ỨNG DỤNG CỤ THỂ
Ảnh gốc (124kb)
20
Công nghệ nén ảnh JPEG

Trường ĐHCN Hà Nội
Ảnh nén 1:10 (49,1kb)
Ảnh nén 1:50 (9,43kb)
21
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Ảnh nén 1:80 (5,96kb)
Ảnh nén 1:100 (4,79kb)
22
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
Ảnh nén 1:200 (2,25kb)
Ảnh nén 1:300 (1,89kb)
23
Công nghệ nén ảnh JPEG
Trường ĐHCN Hà Nội
C. KẾT LUẬN
Công nghệ nén ảnh JPEG là một phương pháp nén ảnh vô cùng hiệu quả.
Trong sự phát triển của công nghệ thông tin và Internet thì JPEG là một công cụ rất
hữu hiệu trong việc truyền thông tin và lưu trữ thông tin. Trong quá trình phát triển,
JPEG ngày càng được cải tiến để khắc phục những nhược điểm của mình để trở
thành định dạng ảnh phổ biến nhất trên thế giới. Tuy nhiên, vì JPEG là chuẩn không
bảo toàn bởi thông tin về ảnh sẽ bị thay đổi khi nó bị mã hóa nhiều lần. Vì vậy mà
các chuyên gia trên thế giới đã bắt đầu nghiên cứu các định dạng ảnh thừa kế những
ưu điểm của JPEG mà hạn chế được sự mất mát thông tin. Có thẻ kể đến định dạng
Web do google phát triển. Và chúng ta cùng chờ đợi nhiều định dạng ảnh khác hiệu
quả hơn ra đời trong tương lai gần.
TÀI LIỆU THAM KHẢO
Nhập môn xử lý ảnh số - ĐHBK Hà Nội
Xử lý âm thanh hình ảnh (2004)*

Các tài liệu trên Internet : Wikipedia

/>Sử dụng phần mềm nén ảnh để thử nghiệm ứng dụng: Advanced JPEG
Compressor 2011.9.1.98
24
Công nghệ nén ảnh JPEG

×