संशोधित हफ़मैन कोडिंग

From alpha
Jump to navigation Jump to search

संशोधित हफ़मैन कोडिंग का उपयोग फैक्स मशीनों में ब्लैक-ऑन-व्हाइट छवियों (बिटमैप्स) को एन्कोड करने के लिए किया जाता है। यह रन-लेंथ एन्कोडिंग में दोहराव वाले डेटा की कोडिंग के साथ हफमैन कोडिंग के वेरिएबल-लेंथ कोड को जोड़ती है।

बुनियादी हफ़मैन कोडिंग उन फ़ाइलों को संपीड़ित करने का एक तरीका प्रदान करती है जिनमें बहुत अधिक दोहराए जाने वाले डेटा होते हैं, जैसे पाठ वाली फ़ाइल, जहां वर्णमाला के अक्षर दोहराए जाने वाले ऑब्जेक्ट होते हैं। हालाँकि, एक एकल स्कैन लाइन में केवल दो प्रकार के तत्व होते हैं – सफेद पिक्सेल और काले पिक्सेल – जिसे सीधे 0 और 1 के रूप में दर्शाया जा सकता है। केवल दो प्रतीकों की यह वर्णमाला हफ़मैन कोडिंग को सीधे लागू करने के लिए बहुत छोटी है। लेकिन अगर हम पहली बार रन-लेंथ एन्कोडिंग का उपयोग करते हैं, तो हमारे पास एन्कोड करने के लिए अधिक ऑब्जेक्ट हो सकते हैं। यहां रन-लेंथ एन्कोडिंग पर आलेख से लिया गया एक उदाहरण दिया गया है:

एक काल्पनिक स्कैन लाइन, जिसमें B एक काले पिक्सेल का प्रतिनिधित्व करता है और W सफेद का प्रतिनिधित्व करता है, इस प्रकार पढ़ सकता है:

wwwwwwwwwwwwwwwwwwwwww

उपरोक्त काल्पनिक स्कैन लाइन पर लागू रन-लेंथ एन्कोडिंग (आरएलई) डेटा संपीड़न एल्गोरिदम के साथ, इसे निम्नानुसार प्रस्तुत किया जा सकता है:

12W1B12W3B24W1B14W

यहां हम देखते हैं कि हमारे पास सफेद और काले दो वस्तुओं के अलावा, कई अलग-अलग संख्याएं हैं। ये संख्याएँ उपयोग करने के लिए बहुत सारी अतिरिक्त वस्तुएँ प्रदान करती हैं, इसलिए आकार को और भी कम करने के लिए हफ़मैन कोडिंग को सीधे उपरोक्त अनुक्रम पर लागू किया जा सकता है।

यह भी देखें

  • फैक्स#संपीड़न

बाहरी संबंध

  • "Modified Huffman coding from UNESCO". Archived from the original on 2002-06-28.