
Линейное предиктивное кодирование (ЛПК, англ. Linear predictive coding, LPC) — это метод, применяемый преимущественно в обработке аудиосигналов[англ.] и речи[англ.] для представления огибающей спектра цифрового речевого сигнала в сжатом виде используя данные линейной предсказательной модели[англ.][1][2].
ЛПК является наиболее распространённым методом кодирования речи[англ.] и синтеза речи. Это мощная техника анализа речи и эффективный метод кодирования высококачественной речи при низком битрейте.
Обзор
правитьВ основе ЛПК лежит предположение, что речевой сигнал генерируется своего рода вибратором на конце трубки (для звонких звуков), с периодически добавляемыми шипящими и взрывными звуками (для глухих звуков, таких как свистящие и взрывные согласные). Хотя эта модель голосового тракта типа «источник-фильтр»[англ.] может показаться упрощённой, она на самом деле довольно точно отражает реальный процесс производства речи. Голосовая щель[англ.] (пространство между голосовыми связками) создаёт вибрацию, которая характеризуется своей интенсивностью (громкостью) и частотой (высотой тона). Речевой тракт (горло и рот) образует трубку, которая характеризуется своими резонансами. Эти резонансы порождают форманты, или усиленные частотные полосы в производимом звуке. Шипение и взрывы генерируются действием языка, губ и горла во время произнесения свистящих и взрывных согласных[3]:Введение.
ЛПК анализирует речевой сигнал путём выделения формант, удаляя их влияние из сигнала и оценивая интенсивность и частоту оставшегося звука. Процесс удаления формант называется обратной фильтрацией, а остаточный сигнал после вычитания отфильтрованной модели — остатком.
Числовые характеристики интенсивности и частоты звука, формант и остаточного сигнала могут быть сохранены или переданы. ЛПК синтезирует звуковой сигнал в обратном порядке — параметры звука и остаток используются для создания исходного сигнала, а форманты используются для создания фильтра (представляющего речевой тракт), и исходный сигнал пропускается через этот фильтр, в результате чего получается речь.
Поскольку речевые сигналы изменяются во времени, этот процесс выполняется на коротких фрагментах речевого сигнала, называемых кадрами. Обычно 30–50 кадров в секунду обеспечивают разборчивую речь при хорошем сжатии.
Ранняя история
правитьЛинейное предсказание (оценка сигналов) берёт свое начало как минимум в 1940-х годах, когда Норберт Винер разработал математическую теорию для расчёта оптимальных фильтров и предикторов для обнаружения сигналов, скрытых в шуме[4][5]. Вскоре после того, как Клод Шеннон создал общую теорию кодирования, над предиктивным кодированием работали Катлер, К. Чапин[англ.][6], Бернард Оливер[7] и Генри К. Харрисон[8]. В 1955 году Питер Элиас[англ.] опубликовал две статьи о предиктивном кодировании сигналов[9].
Линейные предикторы применили к анализу речи независимо Фумитада Итакура[англ.] из Нагойского университета и Сюдзо Сайто из Nippon Telegraph and Telephone в 1966 году, а в 1967 году они были применены Бишну С. Аталом[англ.], Манфредом Шрёдером и Джоном Бургом. Итакура и Сайто описали статистический подход, основанный на оценке максимального правдоподобия. Атал и Шрёдер описали подход на основе адаптивного линейного предиктора. Бург изложил подход, основанный на принципе максимальной энтропии[англ.][5][10][11][12].
В 1969 году, Итакура и Сайто представили метод, основанный на частичной корреляции[англ.] (PARCOR), Глен Каллер[англ.] предложил кодирование речи в реальном времени, а Бишну С. Атал[англ.] представил кодер речи на основе ЛПК на ежегодном собрании Акустического общества Америки. В 1971 году компания Philco-Ford[англ.] продемонстрировала работающий в реальном времени ЛПК, использующий 16-битную аппаратуру. Было продано четыре таких устройства[13]. Технологию ЛПК усовершенствовал Бишну Атал и Манфред Шрёдер в 1970-х –1980-х годах[13]. В 1978 году Атал и Вишванат с соавторами из BBN[англ.] разработали первый алгоритм ЛПК с переменной скоростью[13]. В том же году Атал и Манфред Шрёдер в Bell Labs предложили речевой кодек ЛПК под названием «адаптивное предиктивное кодирование»[англ.], который использовал алгоритм психоакустического кодирования, эксплуатирующий свойства маскировки человеческого уха[14][15]. Это впоследствии стало основой для техники перцептуального кодирования[англ.], используемой в формате сжатия аудиоданных MP3, представленном в 1993 году[14]. Кодирование на основе линейного предсказания и кодового возбуждения (CELP) было разработано Шрёдером и Аталом в 1985 году[16].
ЛПК является базовой технологией IP-телефонии (англ. voice-over-IP, VoIP)[13]. В 1972 году Боб Кан из DARPA с Джимом Форджи из Лаборатории Линкольна и Дэйв Уолден из BBN Technologies[англ.][a] начали первые разработки в пакетированной речи, что, в конечном счёте, привело к технологии IP-телефонии. В 1973 году, согласно неофициальной истории Лаборатории Линкольна, Эд Хофстеттер впервые реализовал ЛПК со скоростью 2400 бит/с. В 1974 году между Каллер-Харрисоном и Лабораторией Линкольна по сети ARPANET была осуществлена первая двусторонняя пакетная речевая связь с использованием ЛПК в реальном времени на скорости 3500 бит/с.
Представления коэффициентов ЛПК
правитьЛПК часто применяется для передачи информации о спектральной огибающей, поэтому он должен быть устойчив к ошибкам передачи. Прямая передача коэффициентов фильтра (определение коэффициентов см. в статье Линейное предсказание) нежелательна, так как они очень чувствительны к ошибкам. Иными словами, очень небольшая ошибка может исказить весь спектр, или, что еще хуже, небольшая ошибка может сделать фильтр предсказания нестабильным.
Существуют более совершенные представления, такие как логарифм отношения площади[англ.] (англ. log-area ratio , LAR)[b], разложение на линейные спектральные пары[англ.] (англ. line spectral pairs, LSP)[3] и коэффициенты отражения. Из них особую популярность приобрело разложение LSP, поскольку оно обеспечивает стабильность предиктора, а спектральные ошибки локальны при небольших отклонениях коэффициентов.
Приложения
правитьЛПК является наиболее распространённым методом в кодировании[англ.] и синтезе речи[17]. Оно обычно применяется для анализа и повторного синтеза речи. ЛПК используется телефонными компаниями для сжатия голоса, например, в стандарте GSM. ЛПК также находит применение в защищённой[англ.] беспроводной связи, где голос необходимо оцифровать, зашифровать и передать по узкому голосовому каналу. Ранним примером такого использования является система Navajo I[англ.] правительства США.
Синтез на основе ЛПК может быть использован для создания вокодеров, где музыкальные инструменты служат сигналом возбуждения для изменяющегося во времени фильтра, полученного из речи певца. Этот подход довольно популярен в электронной музыке. Пол Лански[англ.] создал известное произведение компьютерной музыки «notjustmoreidlechatter»[c] с использованием линейного предиктивного кодирования[18]. В популярной обучающей игрушке Speak & Spell[англ.][d] 1980-х годов применялось ЛПК 10-го порядка
ЛПК предикторы используются в Shorten[англ.], MPEG-4 ALS[англ.], FLAC, аудиокодеке SILK и других кодеках сжатия аудио без потерь.
ЛПК также привлекло внимание как инструмент для тонального анализа скрипок и других струнных музыкальных инструментов[19].
См. также
править- Информационный критерий Акаике
- Сжатие данных
- Кодирование на основе линейного предсказания (CELP)
- FS-1015[англ.]
- FS-1016[англ.]
- Обобщённое фильтрование[англ.]
- Линейное предсказание
- Оценка высоты основного тона[англ.]
- Кодирование с искажённым линейным прогнозированием[англ.]
Примечания
править- ↑ RTX BBN Technologies (изначально Bolt, Beranek and Newman, Inc., затем Raytheon BBN Technologies) — американская исследовательская и разработческая компания, базирующаяся в Кембридже, штат Массачусетс, США
- ↑ log-area ratio (LAR) равны натуральному логарифму отношения площадей смежных секций в трубном эквиваленте голосового тракта без потерь, имеющем ту же передаточную функцию
- ↑ Notjustmoreidlechatter — Not just more idle chatter, в переводе: это не просто очередная пустая болтовня
- ↑ Speak & Spell — Говорите и произносите по буквам
- ↑ Deng, O'Shaughnessy, 2003, с. 41–48.
- ↑ Beigi, 2011.
- ↑ 1 2 Степаненко Дмитрий Александрович. Моделирование голосового сигнала. — Раздел 3.2 Линейные спектральные пары и их свойства.
- ↑ Atal, 2006, с. 154–161.
- ↑ 1 2 Sasahira, Hashimoto, 1995.
- ↑ C. C. Cutler, "Differential quantization of communication signals", US 2605361, published 1952-07-29
- ↑ Oliver, 1952, с. 724–750.
- ↑ Harrison, 1952, с. 764–783.
- ↑ Elias, 1955, с. 16–33.
- ↑ Saito, Itakura, 1967.
- ↑ Atal, Schroeder, 1967.
- ↑ Burg, 1967.
- ↑ 1 2 3 4 Gray, 2010, с. 203–303.
- ↑ 1 2 Schroeder, 2014, с. 388.
- ↑ Atal, Schroeder, 1978, с. 573–576.
- ↑ Schroeder, Atal, 1985, с. 937–940.
- ↑ Gupta, 2016, с. 805–810 (806).
- ↑ Lansky, Paul. More Than Idle Chatter. Дата обращения: 2 июня 2024. Архивировано 24 декабря 2017 года.
- ↑ Tai, Chung, 2012.
Литература
править- Speech processing: a dynamic and optimization-oriented approach. — Marcel Dekker, 2003. — ISBN 978-0-8247-4040-5.
- Fundamentals of Speaker Recognition. — Berlin: Springer-Verlag, 2011. — ISBN 978-0-387-77591-3.
- B.S. Atal (2006). The history of linear prediction. IEEE Signal Processing Magazine. 23 (2): 154—161. Bibcode:2006ISPM...23..154A. doi:10.1109/MSP.2006.1598091. S2CID 15601493.
- Voice pitch changing by Linear Predictive Coding Method to keep the Singer's Personal Timbre. — Michigan Publishing, 1995.
- B. M. Oliver. Efficient coding // The Bell System Technical Journal. — Nokia Bell Labs, 1952. — Т. 31, вып. 4. — doi:10.1002/j.1538-7305.1952.tb01403.x. — Bibcode:1952BSTJ...31..724O.
- H. C. Harrison. Experiments with linear prediction in television // Bell System Technical Journal. — 1952. — Т. 31, вып. 4. — С. 764–783. — doi:10.1002/j.1538-7305.1952.tb01405.x. — Bibcode:1952BSTJ...31..764H.
- P. Elias. Predictive coding I, II // IRE Trans. Inform. Theory. — 1955. — Т. IT-1 no. 1. — С. 16–24, 24–33.
- S. Saito, F. Itakura. Theoretical consideration of the statistical optimum recognition of the spectral density of speech // J. Acoust. Soc. Jpn.. — 1967. — Январь.
- Atal B.S., Schroeder M.R. Predictive coding of speech // Conf. Communications and Proc. — 1967.
- J.P. Burg. Maximum Entropy Spectral Analysis // Proceedings of 37th Meeting, Society of Exploration Geophysics, Oklahoma City. — 1967.
- Robert M. Gray. A History of Realtime Digital Speech on Packet Networks: Part II of Linear Predictive Coding and the Internet Protocol // Found. Trends Signal Process.. — 2010. — Т. 3, вып. 4. — ISSN 1932-8346. — doi:10.1561/2000000036. Архивировано 9 октября 2022 года.
- Schroeder Manfred R. Bell Laboratories // Acoustics, Information, and Communication: Memorial Volume in Honor of Manfred R. Schroeder. — Springer, 2014. — ISBN 9783319056609.
- Atal B., Schroeder M. Predictive coding of speech signals and subjective error criteria // ICASSP '78. IEEE International Conference on Acoustics, Speech, and Signal Processing. — 1978. — Т. 3. — doi:10.1109/ICASSP.1978.1170564.
- Manfred R.Schroeder, Bishnu S. Atal. Code-excited linear prediction(CELP): High-quality speech at very low bit rates // ICASSP '85. IEEE International Conference on Acoustics, Speech, and Signal Processing. — 1985. — Т. 10. — doi:10.1109/ICASSP.1985.1168147.
- Shipra Gupta. Application of MFCC in Text Independent Speaker Recognition // International Journal of Advanced Research in Computer Science and Software Engineering. — 2016. — Май (т. 6, вып. 5). — ISSN 2277-128X. Архивировано из оригинала 18 октября 2019 года.
- Hwan-Ching Tai, Dai-Ting Chung. Stradivari Violins Exhibit Formant Frequencies Resembling Vowels Produced by Females // Savart Journal. — 2012. — Июнь (т. 1, вып. 2). Архивировано из оригинала 3 декабря 2013 года.
Литература для дальнейшего чтения
править- Синтез речи по методу линейного предикатного кодирования (ЛПК). Дата обращения: 22 марта 2026.
- O'Shaughnessy D. Linear predictive coding // IEEE Potentials. — 1988. — Т. 7, вып. 1. — С. 29–32. — doi:10.1109/45.1890. — Bibcode:1988IPot....7a..29O.
- Bundy Alan, Wallen Lincoln. Linear Predictive Coding // Catalogue of Artificial Intelligence Tools. — 1984. — С. 61. — (Symbolic Computation). — ISBN 978-3-540-13938-6. — doi:10.1007/978-3-642-96868-6_123.
- Amro El-Jaroudi. Linear Predictive Coding // Wiley Encyclopedia of Telecommunications. — 2003. — ISBN 978-0471219286. — doi:10.1002/0471219282.eot155.