☰
Docker部署Fugleramme:无树莓派也能在家庭服务器上跑起鸟类识别相框的完整指南
2026/9/27 15:01:21 网站建设 项目流程

Docker部署Fugleramme:无树莓派也能在家庭服务器上跑起鸟类识别相框的完整指南

【免费下载链接】fuglerammeBird frame for Raspberry Pi - real-time bird detection by audio, fully local AI, rendered as real, hand-cut 1800s bird illustrations. On an e-ink panel, a TV, or any screen.项目地址: https://gitcode.com/gh_mirrors/fu/fugleramme

Fugleramme是一款开源的鸟类识别相框:它通过麦克风实时收听鸟鸣,用本地 AI(BirdNET-Go)识别物种,再把每只鸟渲染成 19 世纪手绘博物插画,拼成一幅会"生长"的鸟类海报。而借助 Docker 部署,你不需要树莓派和电子墨水屏——一台装了 Docker 的家庭服务器加一个 USB 麦克风,就能在电视、显示器或手机上看到自家花园此刻有哪些鸟 🐦

Fugleramme 的工作原理:两个容器各司其职

整个系统由两部分组成,Docker 部署时对应两个容器:

组件职责端口
BirdNET-Go监听麦克风,音频识别鸟类,存储检测记录8090(仪表盘)
Fugleramme轮询 BirdNET-Go 的 API,把识别结果渲染成插画页面8080(页面)/ 8080/admin(管理页)

鸟一被听到,Fugleramme 就把它匹配到对应插画,按体型大小摆上"纸张",页面只在有新鸟时重绘:

前提条件:一台 Linux 主机 + 一个 USB 麦克风

在开始前,请确认你的家庭服务器满足以下条件:

  • ✅ 已安装 Docker(支持docker compose命令)
  • ✅ 一个 USB 麦克风(指向窗外效果最佳)
  • ✅ 系统必须是Linux——麦克风通过/dev/snd进入容器,Docker Desktop(macOS/Windows)无法捕获宿主机音频
  • ✅ 8080 与 8090 端口空闲

💡 没有树莓派完全可以:官方镜像是纯 Web 模式,不提供电子墨水屏驱动。想要墨水屏相框才是树莓派的主场。

快速开始:一条命令启动鸟类识别相框

克隆仓库,进入examples/目录(内含现成的 examples/docker-compose.yml),即可同时拉起两个容器:

git clone https://gitcode.com/gh_mirrors/fu/fugleramme cd fugleramme/examples docker compose up -d

启动后访问:

  • http://<服务器IP>:8080/—— 鸟类识别相框页面
  • http://<服务器IP>:8080/admin—— 管理页(设置模式、分辨率、语言等)
  • http://<服务器IP>:8090—— BirdNET-Go 仪表盘(配置麦克风与位置)

该 compose 文件把日志和 HLS 片段放进内存(tmpfs),避免撑爆硬盘;检测数据持久化在birdnet-data卷中,这个卷一定要保留。

配置麦克风与地理位置:识别准不准的关键

打开 BirdNET-Go 仪表盘(:8090)完成两步设置,详见官方配置文档:

1. 添加声卡(必做):进入 Settings → Audio,添加你的 USB 麦克风,声音就进来了。

2. 设置你的位置(强烈建议):填入准确经纬度,识别器会据此过滤掉当地不可能出现的物种,显著减少误报(比如把摩托车听成海鹦)。

项目还内置了一份调好的检测参数模板 detector/config/config.yaml.template:更高的阈值、范围过滤、假阳性过滤等级 2,在"漏报"和"乱报"之间取得了不错的平衡。

已有 BirdNET-Go?只部署相框容器

如果你家里已经跑着 BirdNET-Go,就只需要 Fugleramme 一个容器,用环境变量指向它:

services: fugleramme: image: ghcr.io/arnegiacomo/fugleramme:latest environment: FUGLERAMME_DETECTOR_URL: http://birdnet.local:8080 TZ: Europe/Oslo ports: - "8080:8080" volumes: - fugleramme:/data restart: unless-stopped volumes: fugleramme:

⚠️ 注意:容器内的127.0.0.1指的是容器自己。请填主机的名称、IP,或同一个 Docker 网络中 BirdNET-Go 的容器名。

环境变量预置:不点管理页也能定制画面

管理页上的每个设置都能用FUGLERAMME_<名称>环境变量在启动时"播种",常用项:

变量作用示例
FUGLERAMME_MODE显示模式collage/latest/arrival
FUGLERAMME_WEB_RESOLUTION网页渲染分辨率720p/1080p/1440p/4K
FUGLERAMME_WEB_ASPECT画面比例16:9/4:3
FUGLERAMME_LOOKBACK_HOURS拼贴回看时长24(0 为全部时间)
FUGLERAMME_PRIMARY_LANGUAGE鸟名语言nb、en或sci
FUGLERAMME_ADMIN_PASSWORD管理页密码建议设置

⚠️ 这些变量只是播种而非覆盖:一旦你在管理页保存过某项设置,对应变量就会失效。想要重新播种,删掉/data卷即可(检测记录不受影响,仅重置设置)。完整变量清单见容器文档。

画面投到哪台屏幕上:电视、壁纸都支持

Fugleramme 通过 HTTP 输出画面,任何设备都能当"相框",详见显示方案文档:

  • 电视/显示器:用浏览器全屏打开:8080即可;
  • 三星 The Frame 画框电视:有社区项目可在 Art Mode 下推送拼贴画,客厅里和真画作混挂毫无违和感;

  • macOS 壁纸/屏保:用 examples/wallpaper-macos.sh 定期抓取渲染页面作为桌面背景,锁屏画面同样惊艳;

更新与日常维护

容器化部署的更新非常简单——镜像被"替换"而非原地升级,数据卷不受影响:

docker compose pull && docker compose up -d

管理页的 System 选项卡发现新版本时会提醒你。得益于 Dockerfile 的分层设计(165 MB 的鸟类插画按首字母拆成多个层),更新只会拉取变化的部分,几百 KB 起步。想要全自动,可搭配 Watchtower 定时检查更新。

镜像标签策略:latest跟随每次发布;0.20只在次版本内打补丁;0.20.1完全固定不变。

常见问题排查

🔍 页面空白或提示检测器不可达:确认 BirdNET-Go 容器在跑(docker ps),检查管理页 Detector 选项卡里的地址,点Test connection查看连通状态。检测器短暂离线时相框会保留上一页画面,看起来像"没动静"。

🎙️ 有声音但识别不到鸟:问题在 BirdNET-Go 一侧——打开:8090检查声卡是否选对。

🔐 管理页忘密码:docker compose exec fugleramme sed ...修改卷内/data/settings.json的admin_password字段即可,详见故障排查文档。

🌐 只显示拉丁文学名:鸟名来自 BirdNET-Go 的本地化词库,需要在 Detector 选项卡填写其密码(OIDC 暂不支持)。


📌回顾:一台 Linux 家庭服务器 + USB 麦克风 + 三条命令,你就能拥有这只"会生长的鸟鸣相框"。Fugleramme 完全本地运行、零云依赖,识别结果以 19 世纪博物插画的姿态挂上你家任何一块屏幕——下一次窗外有鸟叫时,画面会自己更新。

【免费下载链接】fuglerammeBird frame for Raspberry Pi - real-time bird detection by audio, fully local AI, rendered as real, hand-cut 1800s bird illustrations. On an e-ink panel, a TV, or any screen.项目地址: https://gitcode.com/gh_mirrors/fu/fugleramme

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询