Show HN: An e-ink frame that hears birds and draws them as 1800s illustrations
Show HN: An e-ink frame that hears birds and draws them as 1800s illustrations
fugleramme E-ink bird frame for Raspberry Pi - real-time bird detection by audio, fully local AI, rendered as real, hand-cut 1800s bird illustrations. Sorry about the dirty window - squirrels have been stealing the bird food. NoteStill in early development: expect the odd bug and a few unpolished edges, with plenty more features to come. Live on fugleramme.arnegiacomo.dev running from my kitchen window and displaying the actual birds currently heard in my garden (Bergen, Norway). Hardware, install and operations docs: arnegiacomo.dev/fugleramme
fugleramme 是一款适用于树莓派(Raspberry Pi)的电子墨水屏观鸟相框。它通过音频进行实时鸟类识别,采用完全本地化的 AI,并将识别结果渲染为真实的、手工剪裁的 19 世纪风格鸟类插画。抱歉窗户有点脏——松鼠一直在偷吃鸟食。注意:项目仍处于早期开发阶段,可能会遇到一些小 Bug 或不够完善的地方,未来会有更多功能加入。目前在 fugleramme.arnegiacomo.dev 实时运行,展示着我花园(挪威卑尔根)里当前听到的鸟类。硬件、安装及操作文档请访问:arnegiacomo.dev/fugleramme
How it works BirdNET-Go listens on a mic and handles the classifier. Fugleramme polls its api, matches each species to an illustration, then packs them onto a page, and redraws only when the birds change - on an Inky Impression e-ink panel, and as a web kiosk serving the same view. There’s an admin page that lets you configure what to show, and automatic updates and such. If you already run BirdNET-Go, point the frame at it instead - on the same machine or anywhere else reachable from your network.
工作原理:BirdNET-Go 通过麦克风监听并处理分类任务。Fugleramme 定时轮询其 API,将识别出的物种匹配到对应的插画,将其排版到页面上,并仅在鸟类种类发生变化时进行重绘。该系统支持 Inky Impression 电子墨水屏,并提供网页端展示。后台管理页面允许你配置显示内容、自动更新等。如果你已经运行了 BirdNET-Go,可以直接将相框指向它——无论是在同一台机器上,还是网络中可达的任何其他位置。
TipThe e-ink panel is not required, although it’s recommended for the intended experience. Without one, Fugleramme runs web-only - show the kiosk on a display over HDMI, or open it from any device on the network.
提示:电子墨水屏并非必需,但为了获得最佳体验,建议使用。如果没有屏幕,Fugleramme 仅以网页模式运行——你可以通过 HDMI 将网页展示在显示器上,或者在网络中的任何设备上打开它。
Hardware A Raspberry Pi 5, an Inky Impression 13.3” (Spectra 6), a mic and an A4 frame. Full parts list, recommendations and alternatives: Hardware.
硬件:一台树莓派 5、一块 Inky Impression 13.3 英寸(Spectra 6)屏幕、一个麦克风和一个 A4 相框。完整的零件清单、建议及替代方案请查看:Hardware。
Art Half the point of this project is showing off some amazing public-domain natural-history illustrations. Over 800 cut-outs covering more than 400 species, every one taken from a real plate and hand-curated for this project (no art is AI-generated, though some has been retouched with AI). Each detected species is matched to its illustration, background-removed, and packed onto a textured paper page with the larger birds toward the centre, sized by body mass. An empty window shows a bare perch. The plates are Scandinavian, British and central European, so the Nordics, the British Isles and Germany are best covered. Elsewhere not so much (yet). Broader European and North American coverage is in the works! See Adding artwork for manual cutout steps.
艺术:这个项目的初衷之一是展示一些令人惊叹的公共领域自然历史插画。项目包含超过 800 张剪裁图,涵盖 400 多个物种,每一张都取自真实的图版并由人工精心挑选(没有 AI 生成的艺术作品,尽管部分经过了 AI 修图)。每个识别出的物种都会匹配到对应的插画,去除背景后排版在纹理纸张页面上,体型较大的鸟类位于中心,并根据体重调整大小。当没有鸟类时,屏幕会显示一个空栖木。这些图版主要来自斯堪的纳维亚、英国和中欧,因此北欧、不列颠群岛和德国的覆盖率最好。其他地区目前覆盖较少,但更广泛的欧洲和北美覆盖范围正在开发中!手动剪裁步骤请参阅 Adding artwork。
Inspiration and related projects The look came from a WWF Verdens naturfond poster by Axel Thorenfeldt hanging on my wall, the live-frame idea from AvianVisitors that I saw on Instagram, and the detection from BirdNET-Go - I wanted a version of that poster showing the actual birds in my garden.
灵感与相关项目:视觉风格灵感来源于我墙上挂着的 Axel Thorenfeldt 设计的 WWF(世界自然基金会)海报;实时相框的构思来自我在 Instagram 上看到的 AvianVisitors;识别功能则来自 BirdNET-Go。我想要一个能展示我花园里真实鸟类的海报版本。
Run locally (for development) uv sync # set up venv uv run fugleramme-fake-detector # stand-in BirdNET-Go on :8090 uv run fugleramme-dev # start service on :8080 with hot-reload
本地运行(开发环境):
uv sync # 设置虚拟环境
uv run fugleramme-fake-detector # 在 :8090 端口模拟 BirdNET-Go
uv run fugleramme-dev # 在 :8080 端口启动服务并开启热重载
Install on a Raspberry Pi From the pi (assuming you have the hardware up and running): curl -fsSL https://raw.githubusercontent.com/arnegiacomo/fugleramme/main/install.sh | bash Asks where BirdNET-Go should live and which ports to use, clones the repo, installs the required deps, and starts the frame as a systemd service. NB! Will probably require a reboot on a fresh system. From a blank SD card, see the full install guide.
在树莓派上安装:在树莓派上(假设硬件已连接并运行):
curl -fsSL https://raw.githubusercontent.com/arnegiacomo/fugleramme/main/install.sh | bash
脚本会询问 BirdNET-Go 的位置及端口,克隆仓库,安装依赖,并将相框作为 systemd 服务启动。注意!全新系统可能需要重启。如从空白 SD 卡开始,请参阅完整安装指南。
Run in a container docker run -d -p 8080:8080 -v fugleramme:/data \ -e FUGLERAMME_DETECTOR_URL=http://birdnet.local:8080 \ ghcr.io/arnegiacomo/fugleramme
容器运行:
docker run -d -p 8080:8080 -v fugleramme:/data \ -e FUGLERAMME_DETECTOR_URL=http://birdnet.local:8080 \ ghcr.io/arnegiacomo/fugleramme
Contributing Contributions are very welcome and encouraged - fixes, docs and artwork most of all. Thanks to everyone who has contributed so far ❤️
贡献:非常欢迎并鼓励贡献——尤其是修复 Bug、文档编写和艺术素材。感谢迄今为止所有做出贡献的人 ❤️
License Code: MIT. Detection (BirdNET-Go): CC BY-NC-SA 4.0. Bird images: each style folder carries its own terms and sources. Label fonts: SIL OFL 1.1. Bird sizes: CC BY 4.0. BirdNET scientific-name aliases: CC BY-SA 4.0.
许可:代码采用 MIT 协议。识别功能(BirdNET-Go)采用 CC BY-NC-SA 4.0(仅限非商业用途)。鸟类图片:每个风格文件夹都有各自的条款和来源。标签字体:SIL OFL 1.1。鸟类尺寸数据:CC BY 4.0。BirdNET 学名别名:CC BY-SA 4.0。
Prebuilt frames I’ve built a few of these. If you’d like one rather than building it yourself, please get in touch.
预制相框:我已经制作了一些成品。如果你想要一个现成的而不是自己动手,请与我联系。