कोड-एक्साइटेड लीनियर प्रेडिक्शन: Difference between revisions
(Created page with "{{Short description|Speech coding algorithm}} {{No footnotes|date=May 2022}} कोड-एक्साइटेड लीनियर प्रेडिक्शन (सीई...") |
No edit summary |
||
(7 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{Short description|Speech coding algorithm}} | {{Short description|Speech coding algorithm}} | ||
'''कोड-एक्साइटेड लीनियर प्रेडिक्शन''' (सीईएलपी) लीनियर प्रेडिक्टिव कोडिंग स्पीच कोडिंग एल्गोरिदम है जिसे मूल रूप से 1985 में मैनफ्रेड आर. श्रोएडर और बिष्णु एस. अटल द्वारा प्रस्तावित किया गया था। उस समय, यह उपस्थित कम बिट-रेट एल्गोरिदम की तुलना में अधिक उत्तम गुणवत्ता प्रदान करता था, जैसे कि [[अवशिष्ट-उत्साहित रैखिक भविष्यवाणी|रेसीड्यूल-एक्साइटेड लीनियर प्रेडिक्शन]] (आरईएलपी) और [[रैखिक भविष्य कहनेवाला कोडिंग|लीनियर प्रेडिक्टिव कोडिंग]] (एलपीसी) [[ वोकोडर्स |वोकोडर्स]] (उदाहरण के लिए, [[एफएस-1015]]) है। बीजगणितीय सीईएलपी, [[आराम से CELP|रिलैक्स्ड सीईएलपी]], [[कम-विलंब सीईएलपी]] और [[वेक्टर योग उत्साहित रैखिक भविष्यवाणी|वेक्टर सम एक्साइटेड लीनियर प्रेडिक्शन]] जैसे इसके वेरिएंट के साथ, यह वर्तमान में सबसे व्यापक रूप से उपयोग किया जाने वाला [[भाषण कोडिंग|स्पीच कोडिंग]] एल्गोरिदम है। इसका उपयोग एमपीईजी-4 ऑडियो स्पीच कोडिंग में भी किया जाता है। सीईएलपी सामान्यतः एल्गोरिदम के वर्ग के लिए सामान्य शब्द के रूप में उपयोग किया जाता है, न कि किसी विशेष कोडेक के लिए उपयोग किया जाता है। | |||
कोड-एक्साइटेड लीनियर प्रेडिक्शन (सीईएलपी) | |||
==पृष्ठभूमि== | ==पृष्ठभूमि== | ||
सीईएलपी एल्गोरिथ्म चार मुख्य विचारों पर आधारित है: | |||
* [[रैखिक भविष्यवाणी]] (एलपी) के माध्यम से | * [[रैखिक भविष्यवाणी|लीनियर प्रेडिक्शन]] (एलपी) के माध्यम से स्पीच प्रोडक्शन के सोर्स-फ़िल्टर मॉडल का उपयोग करना (टेक्स्टबुक स्पीच कोडिंग एल्गोरिदम देखें)। | ||
* एलपी मॉडल के इनपुट (उत्तेजना) के रूप में | * एलपी मॉडल के इनपुट (उत्तेजना) के रूप में अनुकूली और निश्चित कोडबुक का उपयोग करना। | ||
* अवधारणात्मक रूप से | * अवधारणात्मक रूप से वेटेड डोमेन में क्लोज्ड-लूप में परिक्षण करना। | ||
* [[वेक्टर परिमाणीकरण]] (वीक्यू) | * [[वेक्टर परिमाणीकरण]] (वीक्यू) प्रारम्भ करना। | ||
1983 में श्रोएडर और अटल द्वारा सिम्युलेटेड मूल एल्गोरिदम को [[क्रे-1]] सुपरकंप्यूटर पर चलाने पर | 1983 में श्रोएडर और अटल द्वारा सिम्युलेटेड मूल एल्गोरिदम को [[क्रे-1]] सुपरकंप्यूटर पर चलाने पर स्पीच के 1 सेकंड को एनकोड करने के लिए 150 सेकंड की आवश्यकता होती थी। तब से, कोडबुक को प्रारम्भ करने के अधिक कुशल विधियों और कंप्यूटिंग क्षमताओं के सुधार ने मोबाइल फोन जैसे एम्बेडेड उपकरणों में एल्गोरिदम को चलाना संभव बना दिया है। | ||
== | ==सीईएलपी डिकोडर== | ||
[[File:Celp decoder.svg|300px|thumb|चित्र 1: सीईएलपी डिकोडर]]सीईएलपी की | [[File:Celp decoder.svg|300px|thumb|चित्र 1: सीईएलपी डिकोडर]]सीईएलपी की काम्प्लेक्स एन्कोडिंग प्रक्रिया की परिक्षण करने से पहले हम यहां डिकोडर का परिचय देते हैं। चित्र 1 सामान्य सीईएलपी डिकोडर का वर्णन करता है। उत्तेजना निश्चित (a.k.a. स्टोकेस्टिक या इनोवेशन) और अनुकूली (a.k.a. पिच) कोडबुक से योगदान को जोड़कर उत्पन्न होती है: | ||
:<math>e[n]=e_f[n]+e_a[n]\,</math> | :<math>e[n]=e_f[n]+e_a[n]\,</math> | ||
जहाँ <math>e_{f}[n]</math> निश्चित (a.k.a. स्टोकेस्टिक या इनोवेशन) कोडबुक योगदान है और <math>e_{a}[n]</math> अनुकूली ([[पिच (संगीत)|पिच]]) कोडबुक योगदान है। निश्चित कोडबुक वेक्टर परिमाणीकरण शब्दकोश है जो कोडेक में (स्पष्ट रूप से या स्पष्ट रूप से) हार्ड-कोडित है। यह कोडबुक बीजगणितीय ([[एसीईएलपी]]) हो सकती है या स्पष्ट रूप से संग्रहीत की जा सकती है (उदाहरण के लिए [[स्पीक्स]])। अनुकूली कोडबुक में प्रविष्टियों में उत्तेजना के विलंबित संस्करण सम्मिलित हैं। इससे आवधिक संकेतों, जैसे वोइस साउंड को कुशलतापूर्वक कोड करना संभव हो जाता है। | |||
उत्तेजना को आकार देने वाले फ़िल्टर में फॉर्म का | उत्तेजना को आकार देने वाले फ़िल्टर में फॉर्म का ऑल-पोल मॉडल <math>1/A(z)</math> होता है, जहाँ <math>A(z)</math> इसे प्रेडिक्शन फ़िल्टर कहा जाता है और इसे लीनियर प्रेडिक्शन (लेविंसन-डर्बिन एल्गोरिदम) का उपयोग करके प्राप्त किया जाता है। ऑल-पोल फ़िल्टर का उपयोग किया जाता है क्योंकि यह ह्यूमन वोकल पथ का उत्तम प्रतिनिधित्व करता है और क्योंकि इसकी गणना करना सरल है। | ||
== | ==सीईएलपी एनकोडर== | ||
सीईएलपी के पीछे मुख्य सिद्धांत को विश्लेषण-दर-संश्लेषण (एबीएस) कहा जाता है और इसका | सीईएलपी के पीछे मुख्य सिद्धांत को विश्लेषण-दर-संश्लेषण (एबीएस) कहा जाता है और इसका तात्पर्य है कि एन्कोडिंग (विश्लेषण) क्लोज्ड लूप में डिकोडेड (संश्लेषण) सिग्नल को अवधारणात्मक रूप से अनुकूलित करके किया जाता है। सिद्धांत रूप में, सबसे उत्तम सीईएलपी स्ट्रीम सभी संभावित बिट संयोजनों को परिक्षण करके और सबसे उत्तम साउंड डिकोडेड सिग्नल उत्पन्न करने वाले को चयन करके तैयार किया जाएगा। यह स्पष्ट रूप से दो कारणों से व्यवहार में संभव नहीं है: आवश्यक काम्प्लेक्स वर्तमान में उपलब्ध किसी भी हार्डवेयर से परे है और "सर्वोत्तम साउंड" चयन पैरामीटर का तात्पर्य ह्यूमन लिसनर से है। | ||
सीमित कंप्यूटिंग संसाधनों का उपयोग करके वास्तविक समय एन्कोडिंग प्राप्त करने के लिए, सीईएलपी | सीमित कंप्यूटिंग संसाधनों का उपयोग करके वास्तविक समय एन्कोडिंग प्राप्त करने के लिए, सीईएलपी परिक्षण को सरल अवधारणात्मक वेट फ़ंक्शन का उपयोग करके छोटी, अधिक प्रबंधनीय, अनुक्रमिक परिक्षण में विभाजित किया गया है। सामान्यतः, एन्कोडिंग निम्नलिखित क्रम में की जाती है: | ||
* लीनियर प्रेडिक्टिव कोडिंग (एलपीसी) की गणना और मात्रा निर्धारित की जाती है, | * लीनियर प्रेडिक्टिव कोडिंग (एलपीसी) की गणना और मात्रा निर्धारित की जाती है, सामान्यतः [[रेखा वर्णक्रमीय जोड़े|लाइन स्पेक्ट्रल पेयर्स]] (एलएसपी) के रूप में है। | ||
* अनुकूली (पिच) कोडबुक | * अनुकूली (पिच) कोडबुक का परिक्षण किया जाता है और उसका योगदान हटा दिया जाता है। | ||
* निश्चित (नवाचार) कोडबुक | * निश्चित (नवाचार) कोडबुक का परिक्षण किया जाता है। | ||
=== | ===नॉइज़ वेटिंग=== | ||
अधिकांश (यदि सभी नहीं) आधुनिक ऑडियो कोडेक्स [[मनो]] | अधिकांश (यदि सभी नहीं) आधुनिक ऑडियो कोडेक्स [[मनो|कोडिंग]] नॉइज़ को आकार देने का प्रयास करते हैं जिससे यह प्रायः आवृत्ति क्षेत्रों में दिखाई दे जहां इअर इसको ज्ञात नहीं कर सकते है। उदाहरण के लिए, इअर स्पेक्ट्रम के उन भागों में नॉइज़ के प्रति अधिक सहनशील होते है जो तीव्र होते हैं और इसके विपरीत होते हैं। इसीलिए सरल द्विघात एरर को कम करने के अतिरिक्त, सीईएलपी अवधारणात्मक रूप से वेटेड डोमेन के लिए एरर को कम करता है। वेटिंग फ़िल्टर W(z) सामान्यतः [[बैंडविड्थ विस्तार]] के उपयोग से एलपीसी फ़िल्टर से प्राप्त होता है: | ||
:<math>W(z) = \frac{A(z/\gamma_1)}{A(z/\gamma_2)}</math> | :<math>W(z) = \frac{A(z/\gamma_1)}{A(z/\gamma_2)}</math> | ||
जहाँ <math>\gamma_1 > \gamma_2</math> | |||
==यह भी देखें== | ==यह भी देखें== | ||
* [[एमपीईजी-4 भाग 3]] (एमपीईजी-4 ऑडियो ऑब्जेक्ट प्रकार के रूप में सीईएलपी) | * [[एमपीईजी-4 भाग 3]] (एमपीईजी-4 ऑडियो ऑब्जेक्ट प्रकार के रूप में सीईएलपी) | ||
* G.728 - कम-विलंब कोड | * G.728 - कम-विलंब कोड एक्साइटेड लीनियर प्रेडिक्शन का उपयोग करके 16 kbit/s पर स्पीच की कोडिंग | ||
* G.718 - दो-चरण कोडिंग संरचना में बैंड (50-6400 Hz) के लिए निचली दो परतों के लिए | * G.718 - दो-चरण कोडिंग संरचना में बैंड (50-6400 Hz) के लिए निचली दो परतों के लिए सीईएलपी का उपयोग करता है | ||
* G.729.1 - तीन-चरण कोडिंग संरचना में निचले बैंड (50-4000 Hz) के लिए | * G.729.1 - तीन-चरण कोडिंग संरचना में निचले बैंड (50-4000 Hz) के लिए सीईएलपी कोडिंग का उपयोग करता है | ||
* [[ऑडियो कोडिंग प्रारूपों की तुलना]] | * [[ऑडियो कोडिंग प्रारूपों की तुलना]] | ||
* [[CELT]] | * [[CELT|सीईएलटी]] संबंधित ऑडियो कोडेक है जो सीईएलपी से कुछ विचार उधार लेता है। | ||
==संदर्भ== | ==संदर्भ== | ||
* B.S. Atal, "The History of Linear Prediction," ''IEEE Signal Processing Magazine'', vol. 23, no. 2, March 2006, pp. 154–161. | * B.S. Atal, "The History of Linear Prediction," ''IEEE Signal Processing Magazine'', vol. 23, no. 2, March 2006, pp. 154–161. | ||
* M. R. Schroeder and B. S. Atal, "Code-excited linear prediction ( | * M. R. Schroeder and B. S. Atal, "Code-excited linear prediction (सीईएलपी): high-quality speech at very low bit rates," in ''Proceedings of the IEEE [[International Conference on Acoustics, Speech, and Signal Processing]]'' (ICASSP), vol. 10, pp. 937–940, 1985. | ||
Line 51: | Line 50: | ||
* This article is based on a [http://people.xiph.org/~jm/papers/speex_lca2006.pdf paper] presented at [http://linux.conf.au/ Linux.Conf.Au] | * This article is based on a [http://people.xiph.org/~jm/papers/speex_lca2006.pdf paper] presented at [http://linux.conf.au/ Linux.Conf.Au] | ||
* Some parts based on the [[Speex]] codec [https://www.speex.org/docs/ manual] | * Some parts based on the [[Speex]] codec [https://www.speex.org/docs/ manual] | ||
* [http://www.speech.cs.cmu.edu/comp.speech/Section3/Software/celp-3.2a.html reference implementations] of | * [http://www.speech.cs.cmu.edu/comp.speech/Section3/Software/celp-3.2a.html reference implementations] of सीईएलपी 1016A (सीईएलपी 3.2a) and LPC 10e. | ||
* [https://web.archive.org/web/20090602220112/http://www.otolith.com/otolith/olt/lpc.html Linear Predictive Coding (LPC)] | * [https://web.archive.org/web/20090602220112/http://www.otolith.com/otolith/olt/lpc.html Linear Predictive Coding (LPC)] | ||
Line 57: | Line 56: | ||
=== चयनित रीडिंग === | === चयनित रीडिंग === | ||
* [https://www.speex.org/docs/manual/speex-manual/node9.html | * [https://www.speex.org/docs/manual/speex-manual/node9.html सीईएलपी कोडिंग का परिचय] | ||
* [https://cnx.org/content/m10482/latest/ वाक् प्रसंस्करण: एलपीसी विश्लेषण और संश्लेषण का सिद्धांत] | * [https://cnx.org/content/m10482/latest/ वाक् प्रसंस्करण: एलपीसी विश्लेषण और संश्लेषण का सिद्धांत] | ||
[[Category:Collapse templates]] | |||
[[Category: | |||
[[Category:Created On 26/07/2023]] | [[Category:Created On 26/07/2023]] | ||
[[Category:Data compression]] | |||
[[Category:Lua-based templates]] | |||
[[Category:Machine Translated Page]] | |||
[[Category:Navigational boxes| ]] | |||
[[Category:Navigational boxes without horizontal lists]] | |||
[[Category:Pages with script errors]] | |||
[[Category:Short description with empty Wikidata description]] | |||
[[Category:Sidebars with styles needing conversion]] | |||
[[Category:Template documentation pages|Documentation/doc]] | |||
[[Category:Templates Vigyan Ready]] | |||
[[Category:Templates that add a tracking category]] | |||
[[Category:Templates that generate short descriptions]] | |||
[[Category:Templates using TemplateData]] |
Latest revision as of 11:30, 12 August 2023
कोड-एक्साइटेड लीनियर प्रेडिक्शन (सीईएलपी) लीनियर प्रेडिक्टिव कोडिंग स्पीच कोडिंग एल्गोरिदम है जिसे मूल रूप से 1985 में मैनफ्रेड आर. श्रोएडर और बिष्णु एस. अटल द्वारा प्रस्तावित किया गया था। उस समय, यह उपस्थित कम बिट-रेट एल्गोरिदम की तुलना में अधिक उत्तम गुणवत्ता प्रदान करता था, जैसे कि रेसीड्यूल-एक्साइटेड लीनियर प्रेडिक्शन (आरईएलपी) और लीनियर प्रेडिक्टिव कोडिंग (एलपीसी) वोकोडर्स (उदाहरण के लिए, एफएस-1015) है। बीजगणितीय सीईएलपी, रिलैक्स्ड सीईएलपी, कम-विलंब सीईएलपी और वेक्टर सम एक्साइटेड लीनियर प्रेडिक्शन जैसे इसके वेरिएंट के साथ, यह वर्तमान में सबसे व्यापक रूप से उपयोग किया जाने वाला स्पीच कोडिंग एल्गोरिदम है। इसका उपयोग एमपीईजी-4 ऑडियो स्पीच कोडिंग में भी किया जाता है। सीईएलपी सामान्यतः एल्गोरिदम के वर्ग के लिए सामान्य शब्द के रूप में उपयोग किया जाता है, न कि किसी विशेष कोडेक के लिए उपयोग किया जाता है।
पृष्ठभूमि
सीईएलपी एल्गोरिथ्म चार मुख्य विचारों पर आधारित है:
- लीनियर प्रेडिक्शन (एलपी) के माध्यम से स्पीच प्रोडक्शन के सोर्स-फ़िल्टर मॉडल का उपयोग करना (टेक्स्टबुक स्पीच कोडिंग एल्गोरिदम देखें)।
- एलपी मॉडल के इनपुट (उत्तेजना) के रूप में अनुकूली और निश्चित कोडबुक का उपयोग करना।
- अवधारणात्मक रूप से वेटेड डोमेन में क्लोज्ड-लूप में परिक्षण करना।
- वेक्टर परिमाणीकरण (वीक्यू) प्रारम्भ करना।
1983 में श्रोएडर और अटल द्वारा सिम्युलेटेड मूल एल्गोरिदम को क्रे-1 सुपरकंप्यूटर पर चलाने पर स्पीच के 1 सेकंड को एनकोड करने के लिए 150 सेकंड की आवश्यकता होती थी। तब से, कोडबुक को प्रारम्भ करने के अधिक कुशल विधियों और कंप्यूटिंग क्षमताओं के सुधार ने मोबाइल फोन जैसे एम्बेडेड उपकरणों में एल्गोरिदम को चलाना संभव बना दिया है।
सीईएलपी डिकोडर
सीईएलपी की काम्प्लेक्स एन्कोडिंग प्रक्रिया की परिक्षण करने से पहले हम यहां डिकोडर का परिचय देते हैं। चित्र 1 सामान्य सीईएलपी डिकोडर का वर्णन करता है। उत्तेजना निश्चित (a.k.a. स्टोकेस्टिक या इनोवेशन) और अनुकूली (a.k.a. पिच) कोडबुक से योगदान को जोड़कर उत्पन्न होती है:
जहाँ निश्चित (a.k.a. स्टोकेस्टिक या इनोवेशन) कोडबुक योगदान है और अनुकूली (पिच) कोडबुक योगदान है। निश्चित कोडबुक वेक्टर परिमाणीकरण शब्दकोश है जो कोडेक में (स्पष्ट रूप से या स्पष्ट रूप से) हार्ड-कोडित है। यह कोडबुक बीजगणितीय (एसीईएलपी) हो सकती है या स्पष्ट रूप से संग्रहीत की जा सकती है (उदाहरण के लिए स्पीक्स)। अनुकूली कोडबुक में प्रविष्टियों में उत्तेजना के विलंबित संस्करण सम्मिलित हैं। इससे आवधिक संकेतों, जैसे वोइस साउंड को कुशलतापूर्वक कोड करना संभव हो जाता है।
उत्तेजना को आकार देने वाले फ़िल्टर में फॉर्म का ऑल-पोल मॉडल होता है, जहाँ इसे प्रेडिक्शन फ़िल्टर कहा जाता है और इसे लीनियर प्रेडिक्शन (लेविंसन-डर्बिन एल्गोरिदम) का उपयोग करके प्राप्त किया जाता है। ऑल-पोल फ़िल्टर का उपयोग किया जाता है क्योंकि यह ह्यूमन वोकल पथ का उत्तम प्रतिनिधित्व करता है और क्योंकि इसकी गणना करना सरल है।
सीईएलपी एनकोडर
सीईएलपी के पीछे मुख्य सिद्धांत को विश्लेषण-दर-संश्लेषण (एबीएस) कहा जाता है और इसका तात्पर्य है कि एन्कोडिंग (विश्लेषण) क्लोज्ड लूप में डिकोडेड (संश्लेषण) सिग्नल को अवधारणात्मक रूप से अनुकूलित करके किया जाता है। सिद्धांत रूप में, सबसे उत्तम सीईएलपी स्ट्रीम सभी संभावित बिट संयोजनों को परिक्षण करके और सबसे उत्तम साउंड डिकोडेड सिग्नल उत्पन्न करने वाले को चयन करके तैयार किया जाएगा। यह स्पष्ट रूप से दो कारणों से व्यवहार में संभव नहीं है: आवश्यक काम्प्लेक्स वर्तमान में उपलब्ध किसी भी हार्डवेयर से परे है और "सर्वोत्तम साउंड" चयन पैरामीटर का तात्पर्य ह्यूमन लिसनर से है।
सीमित कंप्यूटिंग संसाधनों का उपयोग करके वास्तविक समय एन्कोडिंग प्राप्त करने के लिए, सीईएलपी परिक्षण को सरल अवधारणात्मक वेट फ़ंक्शन का उपयोग करके छोटी, अधिक प्रबंधनीय, अनुक्रमिक परिक्षण में विभाजित किया गया है। सामान्यतः, एन्कोडिंग निम्नलिखित क्रम में की जाती है:
- लीनियर प्रेडिक्टिव कोडिंग (एलपीसी) की गणना और मात्रा निर्धारित की जाती है, सामान्यतः लाइन स्पेक्ट्रल पेयर्स (एलएसपी) के रूप में है।
- अनुकूली (पिच) कोडबुक का परिक्षण किया जाता है और उसका योगदान हटा दिया जाता है।
- निश्चित (नवाचार) कोडबुक का परिक्षण किया जाता है।
नॉइज़ वेटिंग
अधिकांश (यदि सभी नहीं) आधुनिक ऑडियो कोडेक्स कोडिंग नॉइज़ को आकार देने का प्रयास करते हैं जिससे यह प्रायः आवृत्ति क्षेत्रों में दिखाई दे जहां इअर इसको ज्ञात नहीं कर सकते है। उदाहरण के लिए, इअर स्पेक्ट्रम के उन भागों में नॉइज़ के प्रति अधिक सहनशील होते है जो तीव्र होते हैं और इसके विपरीत होते हैं। इसीलिए सरल द्विघात एरर को कम करने के अतिरिक्त, सीईएलपी अवधारणात्मक रूप से वेटेड डोमेन के लिए एरर को कम करता है। वेटिंग फ़िल्टर W(z) सामान्यतः बैंडविड्थ विस्तार के उपयोग से एलपीसी फ़िल्टर से प्राप्त होता है:
जहाँ
यह भी देखें
- एमपीईजी-4 भाग 3 (एमपीईजी-4 ऑडियो ऑब्जेक्ट प्रकार के रूप में सीईएलपी)
- G.728 - कम-विलंब कोड एक्साइटेड लीनियर प्रेडिक्शन का उपयोग करके 16 kbit/s पर स्पीच की कोडिंग
- G.718 - दो-चरण कोडिंग संरचना में बैंड (50-6400 Hz) के लिए निचली दो परतों के लिए सीईएलपी का उपयोग करता है
- G.729.1 - तीन-चरण कोडिंग संरचना में निचले बैंड (50-4000 Hz) के लिए सीईएलपी कोडिंग का उपयोग करता है
- ऑडियो कोडिंग प्रारूपों की तुलना
- सीईएलटी संबंधित ऑडियो कोडेक है जो सीईएलपी से कुछ विचार उधार लेता है।
संदर्भ
- B.S. Atal, "The History of Linear Prediction," IEEE Signal Processing Magazine, vol. 23, no. 2, March 2006, pp. 154–161.
- M. R. Schroeder and B. S. Atal, "Code-excited linear prediction (सीईएलपी): high-quality speech at very low bit rates," in Proceedings of the IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), vol. 10, pp. 937–940, 1985.
बाहरी संबंध
- This article is based on a paper presented at Linux.Conf.Au
- Some parts based on the Speex codec manual
- reference implementations of सीईएलपी 1016A (सीईएलपी 3.2a) and LPC 10e.
- Linear Predictive Coding (LPC)