क्यों जेपीईजी संपीड़न पूरी छवि में असतत कोसाइन परिवर्तन लागू करने के बजाय 8x8 ब्लॉक द्वारा छवि को संसाधित करता है?क्यों जेपीईजी संपीड़न 8x8 ब्लॉक द्वारा छवि को संसाधित करता है?
उत्तर
क्योंकि, यह "हमेशा के लिए" डीकोड करने के लिए ले जाएगा। मुझे अब पूरी तरह याद नहीं है, लेकिन मुझे लगता है कि आपको कम से कम गुणांक की आवश्यकता है क्योंकि ब्लॉक में पिक्सल हैं। यदि आप पूरी छवि को एक ब्लॉक के रूप में कोड करते हैं तो मुझे लगता है कि आपको प्रत्येक पिक्सेल के लिए, सभी डीसीटी गुणांक के माध्यम से पुन: प्रयास करना होगा।
मैं बड़ी ओ गणनाओं में बहुत अच्छा नहीं हूं लेकिन मुझे लगता है कि जटिलता ओ ("हमेशा के लिए") होगी। ;-)
आधुनिक वीडियो कोडेक्स के लिए मुझे लगता है कि उन्होंने इसके बजाय 16x16 ब्लॉक का उपयोग शुरू कर दिया है।
यदि आपको हर पुनरावृत्ति पर हर चीज पर पुनरावृत्ति करने की आवश्यकता है, तो हे (एन^2), "हमेशा के लिए" नहीं, जो ओ (एन!) है। – Triang3l
8 एक्स 8 अन्य आकारों के साथ कई प्रयोगों के बाद चुना गया था।
प्रयोगों के निष्कर्ष हैं: 1. 8 एक्स 8 से अधिक आकार के किसी भी matrices गणितीय परिचालन (जैसे परिवर्तन आदि ..) करना मुश्किल है या हार्डवेयर द्वारा समर्थित नहीं है या लंबे समय तक लेते हैं। 2. 8 एक्स 8 से कम आकार के किसी भी matrices के पास पाइपलाइन के साथ जारी रखने के लिए पर्याप्त जानकारी नहीं है। इसके परिणामस्वरूप संपीड़ित छवि की खराब गुणवत्ता होती है।
पढ़ें, अपने ब्लॉग, http://nboddula.blogspot.com/2013/05/image-compression-how-jpeg-works.html
- 1. जेपीईजी संपीड़न अनुपात
- 2. आगे के लिए लाइब्रेरी (लापरवाही) जेपीईजी-संपीड़न
- 3. छवि संपीड़न - आईफोन एसडीके
- 4. Console.In.ReadLineAsync ब्लॉक क्यों करता है?
- 5. आईई 7 सिर्फ छवि/जेपीईजी की बजाय माइम-प्रकार की छवि/पीजेपीईजी निर्दिष्ट क्यों करता है?
- 6. छवि/पीजेपीईजी और छवि/जेपीईजी
- 7. वीडियो संपीड़न: असतत कोसाइन परिवर्तन क्या है?
- 8. कैसे preg_match_all() स्ट्रिंग को संसाधित करता है?
- 9. पाइथन सिग्नल को कैसे संसाधित करता है?
- 10. पर्ल सांख्यिकी :: आर खाली साजिश छवि उत्पन्न करता है (जेपीईजी)
- 11. छवि का उपयोग क्यों करता है: इनलाइन लेकिन इनलाइन-ब्लॉक तत्व की तरह व्यवहार करता है
- 12. क्यों जावा इमेजियो जेपीईजी रंगों को flattens
- 13. क्या जेपीईजी की तुलना में तेज़ हानिकारक संपीड़न है?
- 14. बड़े जेपीईजी/पीएनजी छवि अनुक्रम लूपिंग
- 15. जेपीईजी छवि को संपीड़ित नहीं कर सकता है और इसे स्क्रीन पर दिखाया जा सकता है
- 16. जावा का इनपुटस्ट्रीम.क्लोज़() ब्लॉक क्यों करता है?
- 17. जांचें कि छवि एक जेपीईजी
- 18. एक जेपीईजी छवि को कैसे साफ़ करें?
- 19. ईमेल संदेश स्रोत से जेपीईजी को जेपीईजी
- 20. जेपीईजी संपीड़न के लिए बिटरेट निर्दिष्ट कैसे करें?
- 21. पंक्तियों द्वारा डेटा फ्रेम को कैसे विभाजित करें, और फिर ब्लॉक को संसाधित करें?
- 22. सफारी जीजेआईपी संपीड़न क्यों स्वीकार नहीं करता है?
- 23. क्यों WaitForSingleObject (INVALID_HANDLE_VALUE, अनंत) को ब्लॉक करता है?
- 24. इतने लंबे समय तक HttpWebRequest GetResponse ब्लॉक क्यों करता है?
- 25. क्या मैं जेपीईजी बनाते समय जावा के इमेजवाइटर द्वारा उपयोग किए गए संपीड़न एल्गोरिदम को बदल सकता हूं?
- 26. यह जावास्क्रिप्ट ब्लॉक Node.js में क्यों करता है?
- 27. ब्लॉक स्तर तत्व छवि में से अधिक क्यों है?
- 28. जेपीईजी छवियों को फिर से एन्कोडिंग एक बेवकूफ ऑपरेशन है?
- 29. मेरे लिए gzip संपीड़न धीमा क्यों है?
- 30. क्या बाइनरीफॉर्मेटर कोई संपीड़न लागू करता है?
पर विचार करें कि डीसीटी कम आवृत्ति सामग्री के साथ नहीं बल्कि चिकनी क्षेत्रों संपीड़ित करने में अच्छा है, लेकिन उच्च आवृत्ति सामग्री क्षेत्रों संपीड़ित करने पर काफी बुरा। –
समान प्रश्न: http://stackoverflow.com/questions/11147666/why-do-image-compression-algorithms-process-the-image-by-sub-blocks/11147696#11147696 –
पहले समान प्रश्न: http: // stackoverflow.com/questions/74892/is-there-a-quality-file-size-or-other-benefit-to-jpeg-sizes-being-multiples-of –