2.4.2.1. Tỷ số nén
Tỷ số nén ảnh là một số đo dung lượng (DL) của ảnh gốc (ảnh chưa nén) chia cho dung lượng ảnh đã được nén (hay mã hóa) và được kí hiệu là Cr (Compression Ratio):
( 𝑛 𝑛 𝑛) ( 𝑛 𝑛 𝑛) (2.1) Đối với phần lớn các giải pháp nén ảnh cho màn hình tinh thể lỏng sử dụng phương pháp mã hóa khối ảnh, có nghĩa là ảnh được chia ra theo các khối bằng nhau rồi lần lượt mã hóa từng khối theo thứ tự, với đầu vào bằng nhau sẽ luôn tạo đầu ra là dòng bit dữ liệu đã được mã hóa có kích thước giống nhau, vì thế tỷ số nén còn được tính bởi công thức:
( 𝑛 𝑛) ( 𝑛 𝑛) (2.1 c) Ví dụ: Trên một ti-vi LCD chuẩn full HD, thì ảnh khung hình của nó sẽ là một ảnh màu có kích thước 1920×1080 với 3 kênh màu RGB-24bit. Khi được áp dụng giải pháp nén theo khối với kích thước khối là 32×4 sẽ được chia ra làm 16200 khối. Giả sử mỗi khối đầu vào sẽ được nén lại với 512bit dữ liệu mã hóa, thì tỷ số nén sẽ được tính là:
( ) ( )
Trong một số trường hợp, khi mà kích thước của ảnh khung hình không phải là bội số của kích thước khối ảnh (block), thì người ta thường sử dụng phương án bổ sung thêm các dòng ảnh hoặc cột ảnh (hoặc cả hai) để sau đó ảnh có thể chia thành các khối đồng kích thước.
2.4.2.2. Chất lƣợng nén - Các độ đo sai số
Để đánh giá sự khác biệt của ảnh khôi phục sau khi nén so với ảnh gốc qua một đại lượng đo lường thể hiện bằng một con số, giúp dễ dàng đánh giá và so sánh đối chiếu, người ta thường sử dụng một số độ đo sau:
Sai số trung bình bình phương (Mean Squared Error -MSE)
Tỷ số tín hiệu mức đỉnh /nhiễu (Peak Signal-to-Noise Ratio - PSNR)
Gọi 𝐹 và 𝐹 lần lượt là các ma trận dữ liệu ảnh gốc và dữ liệu ảnh khôi phục sau khi nén. Trong không gian màu RGB ảnh được biểu diễn bởi ba ảnh đơn sắc tương ứng với ba thành phần màu Red, Green và Blue, vì vậy 𝐹 (𝐹 𝐹 𝐹 ) và 𝐹 (𝐹 𝐹 𝐹 ) trong đó
mỗi thành phần là một ma trận hai chiều có kích thước M dòng và N cột tương ứng với kích thước của ảnh. Gọi L là giá trị mức đỉnh của tín hiệu ảnh, với ảnh màu RGB-24bit hay 8bit cho mỗi kênh màu thì L = 28 – 1 = 255. Các độ đo MSE và PSNR cho mỗi thành phần ảnh đơn sắc cũng như ảnh màu RGB được tính theo các công thức sau:
( ∑ ∑ (𝐹 ( 𝑛) − 𝐹 ( 𝑛)) ) (2.2) ( ∑ ∑ (𝐹 ( 𝑛) − 𝐹 ( 𝑛)) ) (2.3) ( ∑ ∑ (𝐹 ( 𝑛) − 𝐹 ( 𝑛)) ) (2.4) ( ) (2.5) ( ) (2.6) ( ) (2.7) ( ) (2.8) ( ) (2.9)
Trong hai độ đo trên, độ đo PSNR được sử dụng phổ biến hơn cả trong lĩnh vực nén ảnh nhờ tính dễ hiểu và dễ so sánh hợp lý của nó so với MSE. Có thể nói độ đo PSNR được sử dụng trong hầu hết các đánh giá khoa học về chất lượng nén ảnh. Có thể lý giải điều này qua đồ thị biến thiên của PSNR theo MSE như Hình 2.11 dưới đây:
Hình 2.11. Đồ thị biến thiên của PSNR theo MSE (với L=255).
Có thể nói PSNR chính là một phiên bản đảo chiều của MSE và kéo giãn những giá trị MSE rất bé (hay ứng với ảnh nén chất lượng cao, hình đẹp) ra trên một khoảng rộng để dễ bề so sánh đánh giá, và ngược lại những giá trị MSE lớn (hay ứng với ảnh nén chất lượng
0 2000 4000 6000 8000 0 20 40 60 80 100 MSE P S N R ( d B ) PSNR function
thấp, hình xấu) sẽ được nén lại trên một khoảng hẹp. Theo các chuyên gia, với thang đo PSNR thì ảnh khoảng từ 30dB trở lên có thể xem là có chất lượng; dưới 30dB, chất lượng tương đối thấp.
2.4.3. Mối tƣơng quan giữa chất lƣợng nén và chất lƣợng ảnh hiển thị trên màn hình tinh thể lỏng
Để thấy được sự tác động của những sai số khi nén ảnh lên chất lượng hình ảnh hiển thị trên màn hình tinh thể lỏng chúng ta hãy xem xét trên một thành phần tín hiệu màu R trong 3 tín hiệu màu RGB của ảnh, và tại thời gian t. Với ký hiệu dữ liệu hình ảnh tại thời điểm t và (t-1) ứng với thành phần màu R là các ma trận dữ liệu được biểu diễn dưới dạng hàm tín hiệu số ( 𝑛) và ( 𝑛), trong đó m và n xác định tọa độ của điểm ảnh trên khung hình, và R xác định thành phần màu. Theo cơ chế hoạt động của hệ thống overdrive có áp dụng kỹ thuật nén ảnh (Hình 2.7), thì ảnh khung hình tại thời điểm (t-1) là
( 𝑛) được nén (tất nhiên là cùng với các kênh màu còn lại) rồi ghi lên vùng bộ nhớ
khung hình, và đến thời điểm t sẽ thực hiện giải nén để thu được ̂ ( 𝑛). Mối liên hệ giữa ( 𝑛) và ̂ ( 𝑛) được xác định qua công thức:
̂ ( 𝑛) ( 𝑛) ( 𝑛) (2.10)
với ( 𝑛) là sai số phát sinh do mã hóa trên thành phần màu R của ảnh.
Xét tại một điểm ảnh ( 𝑛 ) bất kỳ trên màn hình trên kênh màu R. Đến thời điểm t điểm ảnh này cần phải chuyển đổi từ mức ( 𝑛 ) lên mức ( 𝑛 ). Vậy giá trị chênh lệch để tham chiếu tăng ngưỡng điện áp sẽ là:
( 𝑛 ) ( 𝑛 ) − ( 𝑛 ) (2.11)
Nhưng trên thực tế, hệ thống sẽ hoạt động theo cơ chế tham chiếu bộ nhớ nên sẽ chỉ có được giá trị khôi phục ̂ ( 𝑛 ), và nó sẽ điều khiển để chuyển đổi từ mức
̂ ( 𝑛 ) lên mức ( 𝑛 ), giá trị chênh lệch tham chiếu để tăng áp là:
( 𝑛 ) ( 𝑛 ) − ̂ ( 𝑛 ) (2.12)
Giá trị xác định theo công thức (2.12) sẽ là cơ sở để tham chiếu đến ngưỡng điện áp tăng tốc.
Từ (2.10), (2.11) và (2.12) chúng ta có:
( 𝑛 ) ( 𝑛 ) − ( 𝑛 ) (2.13)
Nếu ( 𝑛 ) : thì độ chênh lệch tham chiếu để điều khiển tăng tốc sẽ là
( 𝑛 ) ( 𝑛 ), là một giá trị chính nên màn hình sẽ được
điều khiển tăng áp chính xác. Dẫn đến hiển thị điểm ảnh chuẩn xác.
Nếu ( 𝑛 ) : thì độ chênh lệch tham chiếu để điều khiển tăng tốc sẽ là ( 𝑛 ) ( 𝑛 ) − , là một giá trị sai lệch nên tất yếu sẽ dẫn đến điện áp tham chiếu sai lệch, làm cho điểm ảnh trên màn hình không hiển thị chính xác giá trị điểm ảnh ( 𝑛 ) như mong muốn.
Từ đó chúng ta có thể kết luận rằng, mọi khác biệt giữa ảnh gốc và ảnh khôi phục (hay chính là sai số mã hóa) sẽ tác động gián tiếp lên hình ảnh hiển thị trên màn hình tinh thể lỏng thông qua hệ thống overdrive, và nó làm suy giảm chất lượng hình ảnh hiển thị trên màn hình. Sự suy giảm này sẽ tác động trực tiếp lên cảm nhận của người xem thông qua thị giác, vì vậy chúng ta cần xem xét chất lượng nén không chỉ qua các đại lượng đo lường như MSE hay PSNR mà còn phải xem xét đến các hiện tượng mà ảnh nén có thể mắc phải như hiệu ứng nhiễu khối (blocking effect), hiện tượng rung động (vibration) tại một cường độ mức xám cố định, hay hiện tượng các đường nét có tính giả tạo (false contours) vốn không được xem xét đánh giá đúng mức trong các đại lượng đo lường MSE hay PSNR.
2.4.4. Một số yêu cầu đặc trƣng và tiêu chí đánh giá hệ thống nén ảnh cho màn hình tinh thể lỏng
2.4.4.1. Một số yêu cầu đặc trƣng của hệ thống nén ảnh cho màn hình tinh thể lỏng
Sau đây chúng tôi xin liệt kê một số yêu cầu đặc trưng đối với một giải pháp nén ảnh áp dụng cho màn hình tinh thể lỏng:
1. Đảm bảo tỷ số nén cố định: giải pháp nén phải đạt được tỷ số nén có cố định, để từ đó xác định được chính xác dung lượng bộ nhớ cần thiết kế cho hệ thống ovedrive. Bởi vậy phương pháp nén dữ liệu ảnh cho màn hình tinh thể lỏng thường dùng mã hóa với từ mã có độ dài cố định (fixed-length/uniform-length codeword).
2. Độ phức tạp tính toán hay kiến trúc thực thi ở mức chấp nhận đƣợc và đảm bảo xử lý thời gian thực: độ phức tạp tính toán (hay kiến trúc thực thi) của giải pháp nén phải ở một mức độ vừa phải xem xét trong mối liên hệ với tỷ số nén và chất lượng ảnh đạt được. Bởi nếu độ phức tạp tính toán quá cao sẽ đòi hỏi phải được xử lý bởi các bộ xử lý mạnh (High-Powered Processors), mà một bộ xử lý như vậy sẽ có giá thành cao, làm cho bài toán mất tính khả thi về mặt kinh tế. Theo các nhận định của chuyên gia, để đảm bảo khả năng thực thi theo thời gian thực một cách
giản tiện, thì thuật toán xử lý nên ở dạng tuyến tính, tránh sử dụng các phương pháp lặp với số lần không xác định hay số bước lặp lớn.
3. Chất lƣợng ảnh cao - Hạn chế các hiệu ứng tiêu cực về mặt thị giác: Chất lượng ảnh khôi phục phải ở mức cao để tránh hiện tượng hệ thống overdrive hoạt động quá sai lệch làm ảnh hưởng lớn đến chất lượng hình ảnh hiển thị trên màn hình, sẽ khiến sản phẩm khó được người tiêu dùng chấp nhận. Chất lượng ảnh khôi phục không chỉ phải đạt chất lượng cao theo các thang đo chất lượng ảnh như MSE hay PSNR, mà còn phải hạn chế được các hiệu ứng tiêu cực về mặt thị giác như hiệu ứng nhiễu khối (blocking effect), hiện tượng rung động hay lay động (vibration effect) của vùng ảnh không hoặc rất ít thay đổi, hay hiện tượng giả tạo (false contours) các đường nét trong ảnh. Các hiệu ứng tiêu cực này tuy không làm suy giảm đáng kể chất lượng ảnh khi đánh giá theo các độ đo MSE hay PSNR, song chúng lại mang lại cảm giác khó chịu khi quan sát bằng thị giác một khi nó tác động lên hình ảnh hiển thị trên màn hình tinh thể lỏng thông qua cơ chế overdrive, khiến người tiêu dùng khó có thể chấp nhận. Trong luận án này, một vài tiêu chuẩn khách quan (objective) có thể gắn với tiêu chuẩn thị giác chủ quan (subjective) như SSIM [32], sẽ không được đề cập đến. Lý do chính là những tiêu chuẩn này phải được cục bộ hóa một cách đặc biệt vào từng vùng trong ảnh. Một đánh giá mang tính toàn cục cho nguyên một khung hình sẽ không định nổi sự khác biệt.
4. Kích thƣớc bộ đệm dòng (line-buffer): Là thành phần đầu tiên trong mô hình của một hệ thống nén ảnh áp dụng cho overdrive (Hình 2.10). Khi xem xét tỷ số nén cần được đặt trong mối tương quan với bộ đệm dòng, bởi đây là thành phần khá đắt đỏ trong thiết kế phần cứng. Nên một giải pháp nén có đạt được tỷ số nén cao song lại đòi hỏi kích thước bộ đệm dòng lớn sẽ làm giảm đi một phần tính hiệu quả.
Hiện nay, ngưỡng tỷ số nén mà các giải pháp nén ảnh tiên tiến áp dụng cho màn hình tinh thể lỏng đạt được là Cr = 6:1. Nếu tăng tỷ số nén lên các mức giá trị cao hơn như 8:1 hay 12:1 thì các giải pháp hiện tại cho chất lượng ảnh quá thấp nên không thể đáp ứng được yêu cầu. Từ thực tế đó, luận án này sẽ tập trung nghiên cứu cải thiện hai đặc trưng chính yếu trong bốn đặc trưng nêu trên đó là: (1). Cải thiện chất lượng nén - Hạn chế các hiệu ứng tiêu cực về mặt thị giác như nhiễu khối hay hiện tượng giả tạo của các đường nét trong ảnh (false contours); (2). Cải thiện độ phức tạp tính toán hay kiến trúc thực thi của giải pháp nén nhằm mang đến khả năng thực thi trên một phần cứng đơn giản.
2.4.4.2. Một số tiêu chí đánh giá giải pháp nén ảnh cho màn hình tinh thể lỏng
Để đánh giá giải pháp nén ảnh cho hệ thống overdrive của màn hình tinh thể lỏng, chúng tôi dựa trên 3 tiêu chí cơ bản là: Chất lượng ảnh, tỷ số nén, và cuối cùng là độ phức
tạp tính toán được xem xét trong mối liên hệ với yêu cầu kiến trúc thực thi.
1. Chất lƣợng ảnh nén: Như đã được đề cập trong mục 2.4.3, chất lượng ảnh nén (cách gọi vắn tắt của chất lượng ảnh khôi phục sau quá trình nén và giải nén) ảnh hưởng gián tiếp đến chất lượng hình ảnh hiện thị trên màn hình, vì vậy chất lượng ảnh nén được xem xét không chỉ qua giá trị số đo chất lượng ảnh như MSE hay PSNR (công thức (2.5) và(2.9)), mà còn phải được xem xét đến các triệu chứng mà ảnh nén có thể mắc phải như hiệu ứng nhiễu khối (blocking effect), hiện tượng rung động (vibration) tại một cường độ mức xám cố định, hay hiện tượng giả tạo của các đường nét trong ảnh (false contours) vốn không được đánh giá hiệu quả và đúng mức trong các đại lượng đo lường như MSE hay PSNR, song lại rất nhạy cảm với mắt người, dễ khiến cho người tiêu dùng có những đánh giá tiêu cực về chất lượng hiển thị hình ảnh của màn hình tinh thể lỏng.
2. Tỷ số nén:là một trong những yếu tố quan trọng chủ chốt để đánh giá hiệu năng của một giải pháp nén ảnh áp dụng cho màn hình tinh thể lỏng, bởi nó tác động trực tiếp lên giá thành sản phẩm hệ thống overdrive thông qua mức độ cải thiện dung lượng và tốc độ truyền tải của bộ nhớ khung hình. Hiển nhiên là một giải pháp nén cho tỷ số nén cao chưa hẳn là một giải pháp tối ưu, giải pháp đó có thể sẽ không có tính thực tiễn nếu chất lượng ảnh mà nó mang lại quá thấp khiến đa số người tiêu dùng không chấp nhận cho dù giá thành có rẻ hơn đáng kể đi chăng nữa. Bên cạnh đó tỷ số nén đạt được còn phải xem xét trong mối tương quan với độ phức tạp của kiến trúc thực thi, bởi khiến trúc thực thi càng phức tạp (hay yêu cầu càng cao về hiệu năng tính toán) thì giá thành của hệ thống nén càng đội lên cao, làm giảm đi tỷ suất cải thiện về giá thành trên tổng thể.
3. Độ phức tạp tính toán và kiến trúc thực thi: Khái niệm độ phức tạp tính toán trong bài toán nén ảnh áp dụng cho màn hình tinh thể lỏng nhằm giảm giá thành sản phẩm sẽ có những đặc điểm khác so với cách đánh giá độ phức tạp tính toán cho các thuật giải thông thường, vốn có mục tiêu là tiết kiệm thời gian thực hiện chương trình phần mềm. Ở đây các giải pháp nén ảnh phải được triển khai trong môi trường hệ nhúng trên thiết bị màn hình. Vì vậy, độ phức tạp tính toán ở đây không chỉ được đánh giá đơn thuần trên số lượng phép toán cần thực hiện, mà các khía cạnh khác như: yêu cầu xử lý tuần tự hay song song, yêu cầu về kiến trúc và xung nhịp của bộ xử lý để đảm bảo khả năng xử lý thời gian thực cũng là những yếu tố quan trọng trên thực tiễn. Lấy một ví dụ minh họa về vấn đề này: Cho hai giải pháp nén A và B với giả thiết rằng chúng có số phép toán và quy trình xử lý gần như nhau, ngoại trừ giải pháp A yêu cầu một số phép tính toán phải được xử lý trên dữ liệu nguyên 32
bit, trong khi giải pháp B chỉ yêu cầu thực hiện trên dữ liệu nguyên 8 bit, và chất lượng ảnh nén là xấp xỉ nhau cùng với tỷ số nén ngang nhau. Từ giả thiết đó có thể dễ dàng nhận thấy, hệ thống xử lý nén của giải pháp A phải được trang bị vi xử lý 32 bit với giá thành đắt hơn khi so sánh với vi xử lý 8 bit cần trang bị cho giải pháp B. Kết quả là giá thành hệ thống overdrive trang bị giải pháp nén A đắt hơn so với hệ thống overdrive trang bị giải pháp B trong khi chất lượng là xấp xỉ nhau.
Từ đó, trong đánh giá về độ phức tạp tính toán luận án luôn xem xét trên cả ba khía cạnh: số phép toán, khiến trúc thực hiện là tuần tự hay song song, và yếu tố cuối cùng là định dạng dữ liệu cho các phép toán cần thực hiện trên kiến trúc vi xử lý nguyên hay thực và độ rộng bit.
2.5. Một số cơ sở lý thuyết trong nén ảnh
Mục tiêu chính của nén ảnh là để biểu diễn một hình ảnh với càng ít bit càng tốt trong khi vẫn đảm bảo yêu cầu về mức độ chất lượng và tính dễ hiểu cho các ứng dụng nhất định [16]. Mô hình khái quát của một bộ mã hóa ảnh có ba thành phần, như thể hiện trong Hình 2.9.
Thành phần đầu tiên và quan trọng nhất là phép biến đổi (transformation) thực hiện biến đổi dữ liệu hình ảnh vào một miền không gian (domain) nào đó sao cho thích hợp với quá trình lượng tử hóa và mã hóa entropy, nhằm hướng đến hiệu năng nén cao nhất có thể. Về bản chất, thành phần này sẽ quyết định chính xác những gì được mã hoá. Ví dụ một hình ảnh có thể được biến đổi sang một miền không gian khác như biến đổi Fourier hay