Các loại ảnh JPEG JPEG lũy tiến JPEG không tổn hao Báo cáo bài tập lớn truyền thông đa phương tiện
Trang 1ìm hiểu các loại ảnh JPEG
iáo viên hướng dẫn: PGS.TS Nguyễn Thị Hoàng Lan
Sinh viên thực hiện:
Nguyễn Văn Hòa 20081020 TTM-K53 Nguyễn Khánh Hưng 20081279 TTM-K53
Lê Bá Huy 20081131 TTM-K53 Nguyễn Lê Hoài Nam 20081819 TTM-K53 Thân Văn Quang 20082082 TTM-K53 Trần Văn Toàn 20082715 TTM-K53 Nguyễn Hoàng Việt 20083139 TTM-K53 Trần Minh Hải 20086357 SPKT-K53
4/2012
Trang 2A MỞ ẦU 4
B DU 5
I iới thiệu chung về chuẩn JPE 5
1 Giới thiệu chung 5
1.1 JPEG là gì ? 5
1.2 Ưu nhược điểm của phương pháp nén ảnh JPEG 6
2 Các loại JPEG 7
2.1 JPEG (1992) 7
2.2 LS-JPEG (Lossness JPEG) 8
2.3 JPEGSearch 10
2.4 JPEGXR 11
II ỹ thuật nén ảnh JPE 11
1 Giới thiệu chung về kỹ thuật nén ảnh 11
2 Phương pháp nén ảnh JPEG lũy tiến(JPEG progressive) 15
2.1 Sơ đồ khối 15
2.2 Phân tích sơ đồ khối 16
2.2.1 Biến đổi DCT 16
2.2.2 Lượng tử hóa 18
2.2.3 Quét zig-zag 19
2.2.4 Mã hóa thành phần DC 20
2.2.5 Mã hóa thành phần AC 22
2.2.6 Giải nén 23
2.3 Giải thích mục đích 24
Trang 32.4 Đặc điểm của nén JPEG lũy tiến 25
3 Phương pháp nén ảnh JPEG không tổn hao(JPEG Lossless) 26
3.1 Khái niệm 26
3.2 Các phương pháp 26
3.2.1 Phương pháp mã hóa độ dài loạt RLE 26
3.2.2 Phương pháp mã hóa Huffman 28
3.2.3 Phương pháp mã hóa Lemple – Ziv 32
3.2.4 Phương pháp mã dự đoán 33
III Ứng dụng của các loại JPE 35
IV hử nghiệm nén ảnh JPE và so sánh 36
1 Môi trường công cụ 36
2 Thử nghiệm kết quả và so sánh 37
C Ế LUẬ 41
L ỆU M Ả 42
P Â Ô V Ệ 43
Trang 4A MỞ ẦU
Cùng với sự phát triển mạnh mẽ của máy tính và sự ra đời của Internet thì việc tìm một phương pháp nén ảnh để giảm bớt không gian lưu trữ thông tin và truyền thông tin trên mạng nhanh chóng đang là một yêu cầu cần thiết Trong những năm gần đây, có rất nhiều các phương pháp đã và đang được nghiên cứu rộng rãi để thực hiện việc nén ảnh 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 trong những phương pháp nén ảnh khá hiệu quả.Trong đề tài này chúng ta nghiên
cứu về : “ Các loại ảnh JPE ”
Trang 5B DU
I iới thiệu chung về chuẩn JPE
1 iới thiệu chung
1.1 JPEG là gì ?
JPEG viết tắt của Joint Photographic Experts Group là tên của một nhóm nghiên cứu đã phát minh ra chuẩn này, từ năm 1986 nhóm nghiên cứu đã đưa ra chuẩn nén ảnh JPEG và đến năm 1994 JPEG được khẳng định với tiêu chuẩn ISO 10918-1 JPEG là định dạng nén ảnh có tổn thất, mặc dù có sự thay đổi của các biến thể nhưng nó vẫn giữ được nguyên lý của chuẩn nén cơ bản JPEG (các định dạng
mở rộng khác như jpg, jpeg, jpe, jfif và jif)
JPEG được sử dụng để lưu trữ ảnh và truyền qua mạng Internet (World Wide Web) Định dạng nén JPEG được sử dụng trong tất cả máy ảnh kỹ thuật số có kích thước rất nhỏ nên thường chụp được nhiều ảnh trên một thẻ nhớ, JPEG dễ hiển thị trên màn hình, ảnh có thể chuyển nhanh qua thư điện tử (dung lượng từ 300KB đến 700KB), ảnh JPEG chất lượng cao có dung lượng khoảng vài MB hay lớn hơn, khuyết điểm chính của ảnh JPEG là ảnh có chất lượng thấp, ảnh thường bị suy giảm nếu so với ảnh gốc
Công nghệ nén ảnh JPEG là một trong những công nghệ nén ảnh hiệu quả, cho phép làm việc với các ảnh có nhiều màu và kích cỡ lớn Tỷ lệ nén ảnh đạt mức
so sánh tới vài chục lần Tuy nhiên được cái này phải mất cái khác, đó là quy luật
bù trừ tự nhiên
Thông thường các ảnh màu hiện nay dùng 8 bit (1 byte) hay 256 màu thay cho từng mức cường độ của các màu đỏ, xanh lá cây và xanh da trời Như thế mỗi điểm của ảnh cần 3 byte để lưu mã màu, và lượng byte một ảnh màu này chiếm gấp
24 lần ảnh trắng đen cùng cỡ Với những ảnh này các phương pháp nén ảnh như IFF (Image File Format) theo phương pháp RLE (Run Length Encoding) không mang lại hiệu quả vì hệ số nén chỉ đạt tới 2:1 hay 3:1 (tất nhiên là kết quả nén theo phương pháp RLE phụ thuộc vào cụ thể từng loại ảnh, ví dụ như kết quả rất tốt với
Trang 6các loại ảnh ít đổi màu) Ưu điểm cao của phương pháp này là ảnh đã nén sau khi giải nén sẽ trùng khớp với ảnh ban đầu Một số phương pháp nén khác không để mất thông tin như của Lempel - Ziv - Welch (LZW) có thể cho hệ số nén tới 6:1 Nhưng như thế vẫn chưa thật đáp ứng yêu cầu đòi hỏi thực tế
Phương pháp nén ảnh theo thuẩn JPEG có thể đạt hệ số nén tới 80:1 hay lớn hơn, nhưng phải chịu mất thông tin (ảnh sau khi giải nén khác với ảnh ban đầu), lượng thông tin mất mát tăng dần theo hệ số nén Tuy nhiên sự mất mát thông tin này không bị làm một cách cẩu thả JPEG tiến hành sửa đổi thông tin ảnh khi nén sao cho ảnh mới gần giống như ảnh cũ, khiến phần đông mọi người không nhận thấy sự khác biệt Và bạn hoàn toàn có thể quản lý sự mất mát này bằng cách hạn chế hệ số nén Như thế người dùng có thể cân nhắc giữa cái lợi của việc tiết kiệm bộ nhớ và mức độ mất thông tin của ảnh, để chọn phương án thích hợp
1.2 u nhược điểm của phương pháp nén ảnh JPE
u điểm
JPEG cho phép nén ảnh với tỉ số nén lên đến 80:1 hoặc cao hơn, hiển thị các hình ảnh đầy đủ màu hơn (full-colour) cho định dạng di động mà kích thước file lại nhỏ hơn.JPEG cũng được sử dụng rất nhiều trên Web Lợi ích chính của chúng là chúng có thể hiển thị các hình ảnh với màu chính xác true-colour (chúng có thể lên đến 16 triệu màu), điều đó cho phép chúng được sử dụng tốt nhất cho các hình ảnh chụp và hình ảnh minh họa có số lượng màu lớn
hược điểm
Nhược điểm chính của định dạng JPEG là chúng được nén bằng thuật toán lossy (mất dữ liệu) Điều này có nghĩa rằng hình ảnh của bạn sẽ bị mất một số chi tiết khi chuyển sang định dạng JPEG Đường bao giữa các khối màu có thể xuất hiện nhiều điểm mờ, và các vùng sẽ mất sự rõ nét, tỉ số nén càng cao thì sự mất mát thông tin trên ảnh JPEG càng lớn Nói một cách khác, định dạng JPEG thực hiện bảo quản tất cả thông tin màu trong hình ảnh đó, tuy nhiên với các hình ảnh chất lượng màu cao high-colour như hình ảnh chụp thì điều này sẽ không hề hấn gì.Các ảnh JPEG không thể làm trong suốt hoặc chuyển động - trong trường hợp này bạn
sẽ sử dụng định dạng GIF (hoặc định dạng PNG để tạo trong suốt)
Trang 7Giai đoạn tiếp theo là biến đổi những vùng thể hiện dùng biến đổi cosin rời rạc (thông thường là những vùng 8x8 pixel) Khi đó thông tin về 64 pixel ban đầu sẽ biến đổi thành ma trận có 64 hệ số thể hiện "thực trạng" các pixel Điều quan trọng
là ở đây hệ số đầu tiên có khả năng thể hiện "thực trạng" cao nhất, khả năng đó giảm rất nhanh với các hệ số khác Nói cách khác thì lượng thông tin của 64 pixel tập trung chủ yếu ở một số hệ số ma trận theo biến đổi trên Trong giai đoạn này có
sự mất mát thông tin, bởi không có biến đổi ngược chính xác Nhưng lượng thông tin bị mất này chưa đáng kể so với giai đoạn tiếp theo Ma trận nhận được sau biến đổi cosin rời rạc được lược bớt sự khác nhau giữa các hệ số Đây chính là lúc mất nhiều thông tin vì người ta sẽ vứt bỏ những thay đổi nhỏ của các hệ số Như thế khi giải nén ảnh đã nén bạn sẽ có được những tham số khác của các pixel Các biến đổi trên áp dụng cho thành phần U và V của ảnh với mực độ cao hơn so với Y (mất nhiều thông tin của U và V hơn) Sau đó thì áp dụng phương pháp mã hóa của Huffman: Phân tích dãy số, các phần tử lặp lại nhiều được mã hóa bằng ký hiệu ngắn (marker) Khi giải nén ảnh người ta chỉ việc làm lại các bước trên theo quá trình ngược lại cùng với các biến đổi ngược
Trang 8Vì phương pháp này thực hiện với các vùng ảnh (thông thường là 8 x 8 pixel) nên hay xuất hiện sự mất mát thông tin trên vùng biên của các vùng (block) này Hiện nay người ta đã giải quyết vấn đề này bằng cách làm trơn ảnh sau khi bung nén để che lấp sự khác biệt của biên giới giữa các block Một hệ nén ảnh theo chuẩn JPEG cùng algorithm làm trơn ảnh đã được công ty ASDG đưa ra trong hệ Art Department Professional
2.2 LS-JPEG (Lossness JPEG)
LS-JPEG được phát triển như sự bổ sung muộn màng cho JPEG vào năm
1993, bằng cách sử dụng một kỹ thuật khác nhau từ tiêu chuẩn JPEG cũ Nó sử dụng 1 hệ thống dự báo được sắp xếp dựa trên ba điểm lân cận (upper, left and upper-left) và entropy mã hóa dựa trên các lỗi dự báo
Không giống như chế độ mất dự liệu dựa trên DCT, các quá trình mã hóa không mất mát thông tin dựa trên mô hình tiên đoán mã đơn giản gọi là chuyển mã xung vi sai (Differential Pulse Code Modulation-DPCM) Đây là một mô hình dự đoán các giá trị mẫu từ các mẫu lân cận đã được mã hóa trong hình ảnh Hầu hết các
dự đoán lấy trung bình của các mẫu ngay lập tức ở bên trên và bên trái của mẫu mục tiêu DPCM mã hóa sự khác biệt giữa các mẫu dự đoán thay vì mỗi mẫu mã hóa độc lập.Sự khác biệt từ một trong những mẫu tiếp theo thường là gần bằng không
Các bước chính của chế độ hoạt động không giảm chất lượng được mô tả trong hình 2
Trang 9Trong quá trình này, dự báo các kết hợp tối đa ba mẫu lân cận tại A, B, và C
được thể hiện trong hình 3 để dự báo giá trị của mẫu tại vị trí dán nhãn của X
Ba mẫu láng giềng phải được đã được dự đoán mẫu Bất kỳ một trong những
dự đoán cho thấy trong bảng dưới đây có thể được sử dụng để ước tính mẫu đặt tại
Bất kỳ một trong tám dự đoán được liệt kê trong bảng có thể được sử dụng Lưu ý
rằng các lựa chọn 1, 2, và 3 được dự đoán một chiều và lựa chọn 4, 5, 6, và 7 được
dự đoán hai chiều Giá trị lựa chọn đầu tiên trong bảng, bằng không, chỉ được sử
dụng để mã hóa khác biệt ở chế độ phân cấp hoạt động Một khi tất cả các mẫu
được dự đoán, sự khác biệt giữa các mẫu có thể được lấy và entropy-mã hóa trong
một thời trang không giảm chất lượng bằng cách sử dụng mã hóa Huffman hoặc mã
số học
Trang 10Thuật toán LoCo-I
Cốt lõi của LS-JPEG dựa trên các thuật toán I Trong thuật toán
LoCo-I, cạnh được phát hiện ban đầu của các cạnh theo chiều ngang hoặc chiều dọc bằng cách kiểm tra các điểm ảnh lân cận của điểm ảnh X hiện thời như trong hình 3.Các điểm ảnh có nhãn B được sử dụng trong trường hợp của cạnh thẳng đứng trong khi điểm có nhãn A sử dụng trong trưởng hợp cạnh của cạnh nằm ngang.Điều dự đoán đơn giản này được gọi là phát hiện cạnh trung vị(Median Edge Dectection-MED) hay dự đoán LoCo-I(LoCo-I predictor)
Điểm ảnh X được dự đoán bằng LoCo-I predictor theo tiêu chí sau đây:
Ba dự đoán đơn giản được chọn theo các điều kiện:(1) nó có khuynh hướng nhận B trong trường hợp tồn tại cạnh dọc trái của X,(2) A trong trường hợp cạnh nằm ngang ở phía trên, hoặc (3) A+B-C nếu không có cạnh nào được phát hiện
2.3 JPEGSearch
Ngày nay, nhiều định dạng siêu dữ liệu khác nhau tồn tại để mô tả hình ảnh nhưng vẫn còn nhiều vấn đề trong khả năng tương tác.Trong bối cảnh đó,trọng tâm chính của JPEGSearch là cung cấp một khả năng tương tác tốt hơn trong tìm kiếm hình ảnh Phiên bản hiện tại của dự án JPSearch được chia thành 5 phần chính Phần 1 đã được đã được hoàn thành: Nó mô tả cấu trúc tổng thể của JPSearch, một tập hợp lớn các trường hợp và phác thảo một kho phục hồi hình ảnh và các thành phần của nó
Phần 2: Đăng ký, nhận dạng, và quản lý các siêu dữ liệu lược đồ(Registration, Identification, and Management of Metadata Schema): cố gắng vượt qua những rắc rối trong mô hình siêu dữ liệu
Phần 3:Định dạng Truy vấn JPSearch(JPSearch Query Format): cung cấp một giao thức thông báo chuẩn để khôi phục hình ảnh
Trang 11Là 1 định dạng hình ảnh cung cấp 1 số cải tiến so với JPEG
- Khả năng nén tốt hơn: JPEG XR định dạng tập tin hỗ trợ tỷ lệ nén cao hơn so với JPEG để mã hóa một hình ảnh với chất lượng tương đương
- Hỗ trợ cấu trúc lát(Tile structure support)
- Chất lượng màu tốt hơn và hỗ trợ High Dynamic Range (HDR) imaging
- Hỗ trợ bản đồ trong suốt(Transparency map support)
- Giảm bớt vùng nén ảnh(Compressed-domain image modification)
- Hỗ trợ siêu dữ liệu(Metadata support)
II ỹ thuật nén ảnh JPE
1 iới thiệu chung về kỹ thuật nén ảnh
Các kỹ thuật nén ảnh hướng tới việc giải quyết bài toán giảm khối lượng thông tin cần thiết để mô tả ảnh số Nền tảng của quá trình nén là loại bỏ dư thừa có trong tín hiệu Phương pháp nén hiệu quả nhất thường sử dụng các biến đổi toán học để biến ma trận các điểm ảnh trong không gian hai chiều sang một không gian hai chiều khác, nơi mức độ tương quan giữa các hệ số biến đổi mới nhỏ hơn Như chúng ta biết, độ dư thừa trong tín hiệu ảnh số phụ thuộc vào mức độ tương quan giữa các điểm ảnh, độ tương quan lớn thì độ dư thừa cũng lớn
Phân loại các phương pháp nén ảnh:
Phân loại theo nguyên lý nén
- Nén không tổn hao (Lossless data reduction)
- Nén có tổn hao (Loss data reduction)
Phân loại theo cách thực hiện nén
- Phương pháp không gian (Spatial Data Compression): các phương pháp nén bằng cách tác động trực tiếp lên điểm ảnh
Trang 12- Phương pháp sử dụng biến đổi (Transform Coding): phương pháp nén sử dụng các phép biến đổi không gian, quá trình nén được thực hiện bằng cách tác động lên ảnh biến đổi
Dư thừa trong dữ liệu
Độ dư thừa số liệu là vấn đề trung tâm trong nén ảnh số Độ dư thừa được xác định như sau: nếu và là lượng số liệu trong hai tập hợp số liệu cùng được dùng để biễu diễn lượng thông tin cho trước thì độ dư thừa số liệu tương đối của tập số liệu thứ nhất so với tập số liệu thứ hai có thể được định nghĩa như sau:
= Số bit nén/Số điểm Trong lý thuyết nén ảnh số có thể phân biệt ba loại dư thừa số liệu khác nhau
- Dư thừa trong pixel (Interpixel Redundancy)
- Dư thừa tâm sinh lý
Trang 13 iêu chí đánh giá chất lượng hình ảnh
Quá trình nén ảnh thường đi đôi với việc ảnh nén bị biến dạng so với ảnh gốc
Vì vậy, cần xác định tiêu chí và phương pháp đánh giá một cách khách quan lượng thông tin về ảnh đã bị mất đi sau khi nén Có thể đánh giá mức độ sai số giữa hai ảnh thông qua mức sai lệch trung bình bình phương – RMS (Root Mean Square)
giữa hai ảnh là:
Sai số trung bình nình phương được tính theo công thức:
Thông thường, khi giá trị RMS thấp, chất lượng ảnh nén sẽ tốt Tuy nhiên, trong một số trường hợp chất lượng hình ảnh nén không nhất thiết phải tỷ lệ thuận với giá trị RMS Một phương pháp đánh giá chất lượng ảnh nén khác dựa trên tỷ lệ tín hiệu/nhiễu được tính theo công thức sau:
SNR (Signal to Noise Ratio) - tỷ lệ tín hiệu/ nhiễu
Mô hình hệ thống nén dữ liệu
Hình 5: Sơ đồ hệ thống nén tín h ệu
Trang 14Hệ thống truyền dẫn sử dụng các phương pháp nén tín hiệu khác nhau có thể được mô tả bằng sơ đồ khối như hình trên Các thành phần quan trọng nhất trong hệ thống là bộ mã hóa và giải mã
ộ mã hóa nguồn và giải mã nguồn
Bộ mã hóa nguồn thực hiện quá trình loại bỏ các thành phần dư thừa trong ảnh gốc Thông thường, bộ mã hóa nguồn có cấu trúc như trên hình sau:
Hình 6: Sơ đồ b mã hóa nguồn
Bộ chuyển đổi
Thường dùng các phép biến đổi không gian để chuyển ảnh trong không gian thực sang một không gian khác, nơi các hệ số chuyển đổi có mức độ tương quan thấp hơn Kết quả nhận được là ma trận các hệ số biến đổi
Bộ lượng tử hóa
Sử dụng phương pháp lượng tử không đồng đều nhằm triệt tiêu các hệ số biến đổi có năng lượng thấp hoặc đóng vai trò không quan trọng khi khôi phục ảnh Quá trình lượng tử không có tính thuận nghịch: ảnh khôi phục
sẽ bị biến dạng so với ảnh gốc
Bộ mã hóa
Gán một từ mã (một dòng bit nhị phân) cho một mức lượng tử
Cấu trúc bộ giải mã nguồn
Hình 7: Sơ đồ b g ả mã nguồn
Bộ giải mã: Thực hiện giải mã tín hiệu nhận được để cho ra ma trận các
hệ số của ảnh biến đổi
Trang 15 Bộ chuyển đổi: Thực hiện biến đổi nghịch (so với quá trình biến đổi ở
bộ mã hóa) để khôi phục lại ảnh số ban đầu
ộ mã hóa và giải mã kênh
Khi truyền tín hiệu qua kênh truyền có nhiễu, để làm giảm ảnh hưởng của nhiễu tới tín hiệu người ta thường sử dụng các phương pháp mã bằng cách thêm một số thông tin dư thừa vào chuỗi tín hiệu cần truyền đi Tùy thuộc vào phương pháp mã hóa, tại phía thu, sau khi giải mã kênh, chúng ta có thể phát hiện được lỗi trong chuỗi tín hiệu vừa nhận được (do nhiễu kênh gây ra) hoặc có thể đồng thời thực hiện sửa các lỗi đó
2 Phương pháp nén ảnh JPE lũy tiến(JPEG progressive)
Khai triển DCT là kỹ thuật then chốt trong JPEG vì nó cho phép nén ảnh với chất lượng tốt nhất tại tốc độ bit thấp, giải thuật chuyển đổi nhanh và dễ dàng thực hiện bằng phần cứng
2.1 Sơ đồ khối
Hình 8: Sơ đồ khố b mã hóa ảnh theo JPEG
Trước khi đưa tới bộ chuyển đối DCT, ảnh màu gốc phải được phân tích thành các ảnh đơn sắc và được số hóa theo một trong những tiêu chuẩn hiện hành
Trang 16Ảnh chói (Y) và hai màu đơn sắc UV (chuẩn PL) hoặc IQ (chuẩn NTSC) được chia thành các block 8*8 và đưa tới bộ chuyển đổi DCT Kích thước các block là 8*8 được chọn bởi 2 lý do: (1) các công trình nghiên cứu cho thấy hàm tương quan giữa các điểm ảnh suy giảm rất nhanh khi khoảng cách giữa các pixel vượt quá 8; (2) kích thước 8*8 tiện lợi cho việc tính toán và thiết kế phần cứng
Bộ chuyển đổi DCT biến đổi ma trận ảnh 8*8 thành ma trận hệ số
DCT sẽ được lượng tử hóa dựa trên các bảng lượng tử Tín hiệu chói và tín hiệu màu sẽ được lượng tử theo các bảng lượng tử khác nhau Ma trận hệ số DCT nhận
DC) của mỗi block được đưa tới bộ mã hóa vi sai (DPCM) Các hệ số khác (thành phần AC) trong từng block được đọc ra theo trình tự zigzag và đưa tới bộ mã hóa loạt dài (RLC) Cuối cùng chuỗi dữ liệu từ hai bộ mã hóa DPCM và RLC được mã hóa một lần nữa bằng mã Entropy Dữ liệu nén cùng các bảng mã và bảng lượng tử được kết hợp lại thành file ảnh nén theo chuẩn JPEG
Sau đây, chúng ta sẽ phân tích từng khâu trong quá trình nén ảnh JPEG lũy tiến
2.2 Phân tích sơ đồ khối
2.2.1 iến đổi D
Công đoạn đầu tiên của quá trình nén theo JPEG là biến đổi cosin rời rạc DCT (Discrete Cosine Transform) DCT biến đổi dữ liệu từ miền không gian sang miền tần số DCT được sử dụng tương đối rộng rãi vì nó có đặc tính "gói" năng lượng tốt, biến đổi DCT cho kết quả là các số thực, ngoài ra có các thuật toán nhanh để thực hiện biến đổi này
Biến đổi DCT được thực hiện trong phạm vi các khối 8×8 mẫu tín hiệu chói Y
và các khối tương ứng của tín hiệu hiệu màu (UV hoặc IQ)
Trang 17Biến đổi DCT hai chiều (2-D) được dùng cho các khối ảnh có kích thước 8×8 Quá trình biến đổi thuận DCT (Forward DCT) dùng trong tiêu chuẩn JPEG được định nghĩa như sau:
(3.1) Trong đó:
– các mẫu của ảnh gốc trong block 8*8 pixel
- các hệ số của khối DCT 8*8
Phương trình trên là kết quả của hai phương trình DCT một chiều, một cho tần số ngang và một cho tần số dọc Trong ma trận hệ số DCT hai chiều, hệ số thứ nhất F(0,0) bằng giá trị trung bình của các điểm ảnh trong block 8*8
(3.2)
Các hệ số nằm ở các dòng dưới thành phần một chiều, đặc trưng cho các tần
số cao hơn của tín hiệu theo chiều dọc Các hệ số nằm ở các cột bên phải của thành phần một chiều đặc trưng cho các tần số cao hơn theo chiều ngang Hệ số F(0,7) là thành phần có tần số cao nhất theo chiều ngang của block ảnh 8×8, và hệ số F(7,0) đặc trưng cho thành phần có tần số cao nhất theo chiều dọc Còn các hệ số khác ứng với những phối hợp khác nhau của các tần số theo chiều dọc và chiều ngang
Phép biến đổi DCT hai chiều là biến đổi đối xứng và biến đổi nghịch cho phép tái tạo lại các giá trị mẫu f(j,k) trên cơ sở các hệ số F(u,v) theo công thức sau:
(3.2)
Trang 18Bản thân phép biến đổi DCT không nén được dữ liệu, từ 64 mẫu ta nhận được 64 hệ số Trong các hệ số DCT, thành phần DC thường có giá trị lớn nhất, các
hệ số nằm kề nó ứng với tần số thấp có giá trị nhỏ hơn, các hệ số còn lại ứng với tần
số cao thường có giá trị rất nhỏ
Trên hình vẽ 9 là một ví dụ minh họa quá trình biến đổi DCT hai chiều cho một block 8×8 điểm ảnh (chói) được trích ra từ một ảnh thực Thành phần chói Y sau khi số hóa sẽ có biên độ các mẫu nằm trong khoảng 0-255, các mẫu của thành phần màu CR,CB có biên độ cực đại là ±128 Để có thể sử dụng một bộ mã hóa DCT cho cả tín hiệu chói và màu, tín hiệu Y được dịch mức xuống dưới bằng cách trừ 128 từ mỗi giá trị pixel trong block 8x8 Ở bộ giải mã DCT, giá trị này sẽ được cộng thêm vào các giá trị chói sau khi giải nén Giá trị hệ số DC của khối DCT dao
Trang 19JPEG sử dụng phương pháp lượng tử không đồng đều, các hệ số có tần số thấp được chia cho các giá trị nhỏ, các hệ số ứng với tần số cao được chia cho các giá trị lớn hơn, kết quả sẽ được làm tròn (bỏ đi các phần thập phân):
Trên hình 9 mô tả quá trình biến đổi DCT: ảnh gốc (a), ma trận hệ số DCT trước (b)
và sau khi lượng tử hóa (d) bằng cách chia cho bảng lượng tử Q(u,v) (c)
2.2.3 Quét zig-zag
thành chuỗi số một chiều Trong kỹ thuật JPEG sử dụng phương pháp đọc theo đường zig-zag Việc đọc 64 hệ số của khối 8*8 pixel theo đường zig-zag (hình 3.1.3) làm tăng tối đa độ dài của chuỗi các giá trị 0 liên tiếp Như vậy hiệu quả nén khi dùng mã RLC sẽ tăng
Hình 10: Quét zig-zag các hệ số lượng tử hóa DCT
Trang 20lượng bít cần thiết để mã hóa thành phần DC có thể lên tới 11
Sơ đồ khối bộ mã hóa thành phần DC
Hình 11: Sơ đồ b mã hóa th nh phần DC
Hệ số DC của các block DCT được lần lượt đưa tới bộ DPCM Thành phần sai
số giữa hai hệ số DC lien tiếp sẽ được mã hóa trong bộ mã Huffman Quá trình mã hóa Huffman được thực hiện cho thành phần DC như sau: 1- Dò tìm trong bảng phân loại để tìm “loại” của giá trị ∆DC ( “loại” chính là chiều dài từ mã dùng để
mã hóa thành phần ∆DC); 2 – Dùng bảng mã Huffman cho thành phần DC để tìm ra
từ mã cho “loại” ∆DC tìm được ở bước 1; 3 – Mã hóa nhị phân giá trị ∆DC; 4 – Ghép các từ mã Huffman và giá trị nhị phân của ∆DC để có được từ mã cho thành phần DC
Trên hình 12 và 13 là các bảng tra cần thiết để thực hiện mã hóa thành phần
DC
Trang 21
ình 12: Bảng phân loạ các hệ số AC v DC
ình 13:Bảng mã uffman cho th nh phần DC
ình 14: Block hệ số DCT cần được mã hóa
Ví dụ: Thành phần DC trong block trên hình 14 có giá trị =15 Giả sử thành