Trong lĩnh vực công nghệ thông tin, Nén thông tin (tiếng Anh: Data compression) là quá trình chuyển đổi định dạng dữ liệu sao cho sử dụng ít bit hơn so với dữ liệu gốc. Tùy thuộc vào việc dữ liệu có bị thay đổi sau khi giải nén hay không, có hai loại nén chính: Nén không mất dữ liệu (lossless) và nén có mất dữ liệu (lossy). Nén mất dữ liệu giảm số lượng bit bằng cách loại bỏ các thông tin không cần thiết.
Nén thông tin rất quan trọng vì giúp tiết kiệm tài nguyên và giảm dung lượng lưu trữ cũng như băng thông truyền tải. Tuy nhiên, dữ liệu nén cần phải được giải nén, điều này đòi hỏi phần cứng và xử lý thêm.
Nén không mất dữ liệu
Các thuật toán nén không mất dữ liệu thường dựa trên việc khai thác sự dư thừa trong dữ liệu và giữ lại tất cả các thông tin mà không bị mất mát. Nén không mất dữ liệu có thể thực hiện được vì tất cả các dữ liệu thực tế đều có yếu tố dư thừa. Ví dụ, một bức ảnh có thể có các vùng màu sắc giống nhau trải dài trên nhiều pixel. Thay vì ghi từng pixel như đỏ, đỏ, đỏ..., dữ liệu có thể được lưu trữ dưới dạng 279 điểm ảnh đỏ liên tiếp. Đây là một ví dụ về mã hóa độ dài chuỗi (run-length encoding); ngoài ra còn nhiều thuật toán khác.
Dựa trên cách áp dụng thuật toán nén, người ta phân loại các phương pháp nén như sau:
- Nén tập tin: Đây là phương pháp nén truyền thống, trong đó thuật toán nén được áp dụng cho từng tập tin riêng lẻ. Tuy nhiên, nếu có hai tập tin giống nhau, chúng vẫn được nén và lưu trữ hai lần. Chỉ các byte trùng lặp trong một tập tin mới được loại bỏ để giảm kích thước. Tùy thuộc vào dữ liệu, nhưng thường khả năng giảm kích thước sau khi nén chỉ từ 2-3 lần.
- Nén loại bỏ trùng lặp giữa các tập tin: Phương pháp này áp dụng thuật toán nén cho nhiều tập tin, trong đó các tập tin giống nhau chỉ được lưu trữ một lần. Ví dụ, nếu một email có tập tin đính kèm được gửi cho 1000 người, chỉ một bản đính kèm được lưu trữ, giúp giảm dung lượng lưu trữ đáng kể. Thông thường, phương pháp này có thể giảm từ 5-10 lần so với dữ liệu gốc.
- Nén loại bỏ trùng lặp ở mức con tập tin: Đây là phương pháp kết hợp giữa nén tập tin và loại bỏ trùng lặp.
Nén có mất dữ liệu
Các chuẩn nén tín hiệu số bao gồm các chuẩn sau:
Chuẩn MJPEG:
Đây là một trong những chuẩn nén video cổ xưa nhất vẫn còn được sử dụng. MJPEG (Morgan JPEG) chủ yếu được áp dụng trong các thiết bị DVR giá rẻ và chất lượng thấp. Chuẩn này không chỉ cho hình ảnh chất lượng kém, mà còn tiêu tốn nhiều tài nguyên xử lý, yêu cầu dung lượng lưu trữ lớn, và dễ gây lỗi trong quá trình truyền tải.
Chuẩn MPEG2:
Chuẩn MPEG đã được phổ biến rộng rãi trong hơn một thập kỷ qua. Tuy nhiên, kích thước tệp tin của chuẩn này lớn hơn so với các chuẩn mới hơn, điều này có thể gây khó khăn trong việc truyền tải dữ liệu.
Trong MPEG-2, nội dung được tạo ra từ nhiều nguồn khác nhau như video động, đồ họa, văn bản… và được kết hợp thành chuỗi các khung hình phẳng. Mỗi khung hình, bao gồm các đối tượng như người, đồ vật, âm thanh, và nền khung hình, được chia thành các phần tử ảnh pixel và xử lý đồng thời, tương tự như cách con người cảm nhận qua các giác quan. Những pixel này được mã hóa như thể chúng đều là phần tử ảnh video động. Quá trình giải mã ở phía người dùng không gặp khó khăn vì nó diễn ra ngược lại với mã hóa. Do đó, MPEG-2 có thể xem như một công cụ hiển thị tĩnh, và nếu một nhà truyền thông phát lại chương trình của nhà truyền thông khác, logo của nhà sản xuất không thể bị xóa. Với MPEG-2, bạn có thể thêm các phần tử đồ họa và văn bản vào chương trình hiển thị cuối cùng (theo phương thức chồng lớp), nhưng không thể loại bỏ các phần tử này khỏi chương trình gốc.
Chuẩn MPEG-4:
MPEG-4 là tiêu chuẩn được thiết kế cho các ứng dụng đa phương tiện. Nó đã trở thành một chuẩn quan trọng trong nén video cho truyền hình số, đồ họa, video tương tác hai chiều như trò chơi và hội nghị video, cũng như các ứng dụng multimedia tương tác hai chiều như Web và phân phối video qua truyền hình cáp hoặc Internet. MPEG-4 giúp giải quyết vấn đề về dung lượng lưu trữ và băng thông của đường truyền video, đồng thời kết hợp cả hai yếu tố này.
Với MPEG-4, mỗi đối tượng trong một khung hình có thể được mô tả, mã hóa và truyền tải độc lập trong các luồng ES (Elementary Stream) khác nhau. Nhờ vào việc tách riêng và xử lý các đối tượng như âm nhạc, âm thanh, đồ vật, hay các đối tượng video như con người, động vật và nền khung hình, người dùng có thể loại bỏ các đối tượng không mong muốn khỏi khung hình. Quá trình tổ hợp lại khung hình chỉ diễn ra sau khi các đối tượng đã được giải mã.
H.264
H.264 (MPEG-4 AVC hay MPEG-4 phần 10) là chuẩn nén video tiên tiến nhất hiện nay. Chuẩn này cung cấp chất lượng hình ảnh tối ưu với dung lượng file nhỏ hơn so với các chuẩn nén khác. H.264 cũng được sử dụng rộng rãi trong video độ phân giải cao (HD).
Chú thích
Các liên kết bên ngoài
Những lĩnh vực chính của khoa học máy tính |
|---|
Chuyên ngành chính của Tin học |
|---|
Nén dữ liệu Multimedia và các Định dạng chứa |
|---|
Phần mềm nén dữ liệu |
|---|
