Ответы пользователя по тегу Qt
  • Работа со звуком С++ как?

    "а что из себя представляет звук"

    В "математическом" смысле? Функция вида amplitude(t) = f(t) :-)

    "Стандартное" представление?
    - Берем отрезок этого нашего t (например - 1 минуту)
    - делим на конечное число моментов : t_i = (1 / f) * i, где t_i - i-й момент времени, i - номер, f - частота дискретизации
    - сохраняем значения амплитуд в эти моменты (amplitude_i = amplitude(t_i))
    - ну и разумеется - представляем эти значения как n-битоное число (напрнимер - 24 бита).

    "Превратить звуковую дорожку в график"
    А смотря какой. Если речь о осцилограмме - то просто юзаем значения амплитуд (ну, может - применим какую-нибудь простую функцию к ним. От линейного значения к логарифмическому, например, перейдём). Как минимум - можно ещё представить как спектрограмму (которые часто применяют). Если вкратце - поделить на интервалы, каждый из которых - описывается отдельной функцией, и представить её, например, как сумму синусоид (man преобразование фурье).

    "чистить его"
    Опять же - ЕМНИП, в основном работаем с амплитудами (условно - вычиаем из зашумленного сигнала amplitude(t) + noise(t) компонент noise(t)) или спектром (да, условно - посчитали спектр, затем занизили/завысили часть частот (т.е. коофициенты у соответсвующих синусоид)) и снова сгенерировали звук. Но - это уже тянет на целую предметную область, так что я бы сперва осилил первую часть сообщения.

    "попробовать научить нейронную сеть распознавать некоторые слова"
    Опять же - целая отдельная область. Я не знаю, какие сейчас юзают подходы - но без предварительного поиска я бы сделал подобное (впрочем, такой сети явно потребуется дохера данных для обучения, я же почти не использую специфических знаний о проблеме) :
    - представил запись как набор спектрограмм
    - поделил их на соответсвующие отдельным звукам
    - скормил маркированные данные сетке

    "RGB"
    Не всегда, кстати. Есть же всякие CMYK и прочее. Но, насколько я знаю - значения в одной схеме можно привести к другой, да.
    Ответ написан
    Комментировать