Spaces:
Sleeping
Sleeping
File size: 2,983 Bytes
cc6c6c0 b330ba9 df481df b330ba9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | ---
title: Bird Detection
emoji: 🦀
colorFrom: purple
colorTo: pink
sdk: gradio
sdk_version: 5.23.3
app_file: app.py
pinned: false
---
# 🐦 台灣常見鳥類偵測系統
一個以 YOLO 模型為基礎,搭配 Gradio UI 介面,支援 **圖片、影片、網路攝影機** 鳥類偵測的互動式應用系統。
偵測結果將自動搜尋 YouTube 生態影片並產生 QR Code,可直接觀看鳥類相關影片。
---
## 🚀 功能介紹
- 📸 圖片上傳即時鳥類辨識
- 🎞️ 影片檔偵測與即時標註
- 🔴 YouTube 直播偵測(可選)
- 📷 即時攝影機串流偵測(可選)
- 🔎 自動搜尋對應 YouTube 生態影片
- 🧾 自動產生影片 QR Code 嵌入
---
## 🧠 模型資訊
- 使用模型:`YOLOv8`(ultralytics)
- 訓練資料:187 種台灣常見鳥類
- 欄位來源:`multibird_dataset.yaml`
- 欲替換模型請放置於 `best.pt`
---
## 📦 安裝套件需求
```bash
pip install -r requirements.txt
```
### 其他建議安裝(支援 YouTube 串流):
```bash
pip install streamlink youtube-dl
```
---
## 🖼️ 使用方式
### 1. 執行主程式
```bash
python app.py
```
預設啟動在 `http://localhost:7860`
你也可以使用 `gradio` 參數將其公開,例如透過:
```python
demo.launch(share=True, server_name="0.0.0.0", pwa=True)
```
### 2. 操作流程
| 模式 | 說明 |
|------|------|
| 📷 圖片偵測 | 上傳圖片即可自動辨識鳥種並產生影片連結與 QR Code |
| 🎞️ 影片偵測 | 上傳影片後進行即時物件偵測與視覺化 |
---
## 🌐 API & 金鑰設定
請設置環境變數以使用 YouTube Data API:
```bash
export YOUTUBE_API_KEY=你的金鑰
```
或在 `.env` 中設置。
---
## 📁 專案結構
```
.
├── app.py # 主程式
├── best.pt # 訓練好的 YOLO 模型
├── multibird_dataset.yaml # 分類類別名稱
├── requirements.txt # 套件需求
├── results/ # 偵測結果輸出影片
└── assets/ # 圖片與 QR Code
```
---
## 📱 PWA 支援
本系統已支援 Progressive Web App(PWA),可在手機或瀏覽器中:
- 加入主畫面
- 離線瀏覽 Gradio 頁面框架(UI 顯示)
---
## 🧩 已知問題
- 若 Hugging Face Space 出現未更新、無法 build 的情況,請點選 **Restart Space**。
- YouTube 串流須視 `streamlink/youtube-dl` 是否正確安裝,或 API 金鑰授權。
---
## 🔗 技術整合
- [Ultralytics YOLOv11](https://docs.ultralytics.com/)
- [Gradio](https://gradio.app/)
- [YouTube Data API](https://developers.google.com/youtube/v3)
- [Hugging Face Spaces](https://huggingface.co/spaces)
- [Streamlink](https://streamlink.github.io/)
- [QRCode](https://pypi.org/project/qrcode/)
--
## 🧠 補充:常見鳥類中英對照
預載 `bird_chinese_names` 包含 187 台灣鳥種,會自動將 YOLO 偵測結果轉換為中文後搜尋 YouTube。
|