View Full Version : Thuật toán nén dữ liệu
Các bạn giúp mình về thuật toán nén dữ liệu (như BMP,MPG) cao nhất.
Free4Fun
02-02-2005, 16:28
Chào bạn,
Cách đây 6 tháng, tôi có làm 1 đề tài về nén ảnh (gồm cả nén dữ liệu bằng Java) có gỏi code lên Planet-source-code.com. Bạn vào đây xem thửu có dùng được gì không.
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=4640&lngWId=2
Hope this helps
TDH
thanks a lot!:D
Có rất nhiều thuật toán về nén dữ lịêu bạn chỉ tui một số đi.Thanks!!
Nhưng cái nèo best !!
Bạn cho code c/c++ nha,tui mù java
Free4Fun
03-02-2005, 09:07
vậy bạn nghiên cứu lý thuyết về nén dữ liệu đi. bạn sẽ thấy không có thuật toán nào là hoàn hảo đâu. Với mỗi loại dữ liệu thì 1 thuật toán sẽ tối ưu hoặc không:
Chăng hạn bạn cần nén dữ liệu có 50 bit '1' và 50 bit '0' khi đó RLE là hiệu quả vì cần lưu số 50-50 là xong. Nhưng nếu dùng Huffman và LZW sẽ không hiệu quả vì phải lưu cây mã hóa kèm theo (Huffman) hoặc từ điển (LZW). Ngược lại nếu mã hóa 100 dữ liệu toìan các bít '0' và '1' ngẫu nhiên thì chưa chắc RLE hiệu quả vì có khi còn làm cho file nén 'phình' to hơn.
Vì vậy tôi có 1 gợi ý là bạn nên theo cách của Winzip, rar. Hình như (tôi không chắc lắm vì có lần đọc lướt trên mạng) các chương trình đó có 2 giai đoạn: tiền xử lý tức là đánh giá hiệu quả các giải thuật rồi quyết định chọn giải thuât tối ưu, sau đó mới đến giai đoạn nén thực sự.
Tôi không tự viết code cho các thuật toán nén= c/c++ nhưng thực sự nó không khác Java lắm đâu. Hãy vô Google và search = khóa compression algorithms bạn sẽ có vô số tài liệu và cả code tham khảo (đọc cả 3 đời chưa hết :-)
Chúc bạn thành công
TDH
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.