Изображение как звук
Published: 2015-09-03 00:00:00

---
title: "Изображение как звук"
date: "2015-09-03"
canonical_url: "https://medium.com/%D0%B7%D0%B2%D1%83%D0%BA%D0%B8-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D1%8B/%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BA%D0%B0%D0%BA-%D0%B7%D0%B2%D1%83%D0%BA-378fdb9d0201"
---

А что будет если над изображением применить не обычные фильтры или спецэффекты из фотошопа, а аудио эффекты из звукового редактора, например, эхо, реверберация, эквалайзер, увеличить низкие или верхние частоты. Может быть интересно. Но как это сделать? Располагайтесь по-удобнее, сейчас на ваших глазах будет происходить магия преобразования форматов данных.

# Матчасть

Чтобы применять над изображением фильтры аудио, нужно уметь сохранять и открывать изображения как звуковые файлы. Напрямую это сделать невозможно. Но в таких программах как Gimp и Audacity есть возможность работать с так называемыми сырыми данными без заголовков.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/563fhrnu9rzw8pi1svrk.png)
<figcaption>Магическая последовательность ffd8ff означает, что это jpeg.</figcaption>

Обычно в заголовках всегда описан формат данных, чтобы программы могли понимать как интерпретировать бинарные данные из полезной нагрузки. Если же мы сохраним только данные из полезной нагрузки, то получим сырые данные без заголовка(raw), которые можно интерпретировать как угодно.

Чтобы сохранить картинку в формате raw, откроем ее в gimp и экспортируем как Raw Image Data с расширением .data. Выберем режим сохранения RGB Planar, т.е. в файле сначала будет идти значения яркостей пикселей канала Red, далее Green и Blue.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/72ml0czv3uke1q4iuty4.png)

В Audacity импортируем .data файл. Кодирование выбираем U-Law, без учёта байтового порядка, одноканальный режим.

# Басы

Начнем с простого эффекта — увеличим басы в картинке.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/9xfamigwqqeidva0o0yz.jpeg)
<figcaption>Исходное изображение</figcaption>

Применим увеличение басов.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hjq5kjw3htv003g17do3.jpeg)
<figcaption>Увеличенные басы</figcaption>

# Эхо

Эхо-эффект — один или несколько сигналов задержанные во времени с затуханием добавляются к существующему сигналу. Интересно посмотреть как это выглядит. Выставим время задержки 2 секунды и коэффициент затухания 0.3.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/0z8gubnemmtxwpl7kcif.jpeg)
<figcaption>Исходное изображение</figcaption>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/3ec2hmkaeoyz0hxv6ls0.jpeg)
<figcaption>Эффект Эхо</figcaption>

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/e1gw2l0nduhw28t1xf6b.jpeg)
<figcaption>Эффект Эхо</figcaption>

# Реверберация

Реверберация — это процесс постепенного уменьшения интенсивности звука при его многократных отражениях.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/o0jg8fnbli3lwkys3ekm.jpeg)
<figcaption>Эффект реверберации</figcaption>

Есть еще куча всяких разных звуковых эффектов. А еще можно по-разному сохранять в raw-формат данные — planar RGB, просто RGB, RGB с альфа каналом, режим BMP. Можно по-другому импортировать raw-данные в звуковой редактор. В общем экспериментировать можно очень много. В следующих постах этой серии я покажу, что бывает в случае ошибки экспортирования, как сжатие влияет на данные и другие интересные опыты.

[Следующий пост](https://medium.com/%D0%B7%D0%B2%D1%83%D0%BA%D0%B8-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D1%8B/%D0%BD%D0%B0%D0%B3%D0%BB%D1%8F%D0%B4%D0%BD%D0%B0%D1%8F-%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0-%D1%81%D0%B8%D0%B3%D0%BD%D0%B0%D0%BB%D0%BE%D0%B2-c5a313765e04)