Рамка, которая рисует птиц по звуку

Fugleramme — это e-ink рамка для Raspberry Pi с распознаванием птиц в реальном времени по аудио, полностью локальным ИИ и отрисовкой результатов в виде подлинных иллюстраций XIX века. Проект опубликован норвежским разработчиком Арне Джакомо Мунте-Каасом на GitHub и уже привлёк широкое внимание сообщества Hacker News. Живая демонстрация доступна на fugleramme.arnegiacomo.dev — рамка стоит на кухонном окне автора в Бергене (Норвегия) и показывает птиц, которых слышит прямо сейчас.


Как это работает

BirdNET-Go непрерывно слушает микрофон и использует классификатор BirdNET для определения видов по их голосам — всё это работает локально на Raspberry Pi, без обращения к облаку или интернету.

Fugleramme опрашивает API BirdNET-Go, сопоставляет каждый вид с иллюстрацией, компонует их на странице и перерисовывает экран только при изменении состава птиц. Отображение происходит на e-ink панели Inky Impression, а параллельно запускается веб-киоск с той же картинкой.


graph LR
    A[🎙️ Микрофон] --> B[BirdNET-Go\nклассификатор]
    B --> C[Fugleramme API poll]
    C --> D{Птицы\nизменились?}
    D -- Да --> E[Компоновка\nиллюстраций]
    E --> F[🖼️ E-ink панель\n+ веб-киоск]
    D -- Нет --> C


Железо и сборка

Рекомендуемая сборка: Raspberry Pi 5 с 2 ГБ RAM, Pimoroni Inky Impression 13.3" (Spectra 6) e-ink панель и USB-микрофон (автор использует Boya BY-M3).

Панель имеет разрешение 1600 × 1200 пикселей и физически соответствует формату A4 — она напрямую вставляется в стандартную рамку IKEA RÖDALM с Raspberry Pi сзади. Важная деталь: рекомендуется оставить заднюю стенку открытой и установить активный кулер, так как инференс BirdNET работает непрерывно и хорошо греет Pi.

ℹ E-ink не обязателен
E-ink панель не является обязательной, хотя и рекомендуется для задуманного опыта. Без неё Fugleramme работает только как веб-приложение — можно показать киоск на дисплее через HDMI или открыть с любого устройства в сети.
КомпонентРекомендуемый вариантПримечание
ОдноплатникRaspberry Pi 5 (2 ГБ)Pi 4 тоже работает
E-ink дисплейPimoroni Inky Impression 13.3"Spectra 6, 1600×1200
МикрофонBoya BY-M3 (USB)Главный фактор качества распознавания
РамкаIKEA RÖDALM 21×30 (A4)Панель входит без доработок
ОхлаждениеАктивный кулерОбязательно при постоянной работе

Иллюстрации XIX века — вручную

«Половина смысла этого проекта — продемонстрировать удивительные иллюстрации из области естественной истории, находящиеся в открытом доступе.»

Коллекция насчитывает более 800 вырезок, охватывающих свыше 400 видов — каждая взята с реальной таблицы и отобрана вручную (никакое искусство не создано ИИ, хотя часть была ретуширована с его помощью).

Каждый определённый вид сопоставляется со своей иллюстрацией: фон удаляется, птицы компонуются на текстурированной странице — более крупные ближе к центру, размер определяется массой тела. Пластины происходят из скандинавских, британских и центральноевропейских источников; по словам автора, более широкое европейское и североамериканское покрытие уже в разработке.

💡 Качество распознавания
Микрофон важнее, чем сам Raspberry Pi: качество детекции зависит главным образом от микрофона, его расположения и количества птиц в вашем районе.

Установка

Установка на Raspberry Pi выполняется одной командой:

curl -fsSL https://raw.githubusercontent.com/arnegiacomo/fugleramme/main/install.sh | bash

Скрипт спросит, где должен жить BirdNET-Go и какие порты использовать, склонирует репозиторий, установит зависимости и запустит фрейм как systemd-сервис.

Для запуска через Docker:

docker run -d -p 8080:8080 -v fugleramme:/data \
  -e FUGLERAMME_DETECTOR_URL=http://birdnet.local:8080 \
  ghcr.io/arnegiacomo/fugleramme
📝 Уже используете BirdNET-Go?
Если BirdNET-Go уже запущен, достаточно направить Fugleramme на него — на той же машине или на любой другой, доступной из вашей сети. Перестраивать всё с нуля не нужно.

Контекст и значение

BirdNET-Go — это self-hosted решение с локальным инференсом 24/7: оно принимает аудиовход со звуковой карты или сетевые аудиопотоки, запускает многомодельную классификацию и отображает результаты в быстром веб-интерфейсе. Поскольку BirdNET-Go уже поддерживает геолокационное обнаружение, несколько источников аудио, разные языки и IoT-интеграции, Fugleramme может сосредоточиться исключительно на презентационной стороне.

Фugleramme — часть растущей экосистемы edge AI (локального ИИ) для натуралистов-любителей. Проект полностью open-source (код — MIT), а автор приветствует вклад сообщества: исправления, документацию и новые вырезки птиц. Проект ещё находится на раннем этапе разработки — возможны баги и шероховатости, но впереди ещё много запланированных функций.