PCO FLIM 頻域螢光壽命成像系統的 Python 控制套件。
剛收到這台相機:
1. 閲讀使用手冊 → docs/USAGE.md
2. 硬體安裝 → USAGE.md §1
3. 軟體安裝 → USAGE.md §2
4. 第一張影像 → USAGE.md §3
5. FLIM 實驗 → USAGE.md §5
還沒有相機:
1. pip install -e .
2. 離線參數規劃 → USAGE.md §4
3. 影像排列順序 → IMAGE_ORDER.md
from pco_flim import FLIMCamera
with FLIMCamera() as cam:
cam.print_info() # 顯示相機資訊
cam.set_exposure(0.01) # 10 ms 曝光
cam.set_flim_4phase(20e6) # 20 MHz, 4 盳位 FLIM
images = cam.capture(4) # 擷取 4 張盳位影像
# Phasor 分析
g, s = cam.compute_phasor(images)
tau_phi, tau_mod = cam.compute_lifetime_from_phasor(g, s, 20e6)
print(f"螢光壽命: {tau_phi.mean():.2f} ns")
# 1. 建立虛擬環境
python -m venv venv
# .\venv\Scripts\activate # Windows
# 2. 安裝依賴與套件
pip install -r requirements.txt
pip install -e .
| 項目 |
說明 |
指令 |
| 匯入套件 |
無需相機即可匯入 |
python -c "from pco_flim import *" |
| 查看參數常數 |
SDK 常數一覽 |
python -c "from pco_flim import PHASE_4; print(PHASE_4)" |
| 查看參數模板 |
5 種實驗設定 |
from pco_flim.presets import FLIM_4PHASE_DEFAULT |
| 查詢影像順序 |
SDK 順序 vs 升冪重排 |
from pco_flim import describe_order |
| 計算最佳頻率 |
根據 τ 計算 f_opt |
from pco_flim.phasor import calculate_optimal_frequency |
| 撰寫實驗腳本 |
接相機前先寫好 |
見 USAGE.md §4.3 |
| 排列順序展示 |
用合成資料模擬 |
python examples/00_reorder_demo.py |
| 連線相機 |
需 USB 連接 |
接上相機後執行 |
src/pco_flim/ ← 核心套件
├── camera.py FLIMCamera 類別
├── constants.py SDK 常數
├── phasor.py Phasor / 壽命計算
├── reorder.py 盳位序列重排
└── presets.py 常用參數模板
examples/ ← 範例腳本(可執行)
├── 00_reorder_demo.py 排列順序展示(無相機可執行)
├── 01_basic_capture.py 基本連線與快拍
├── 02_flim_4phase.py 4 盳位 FLIM + Phasor
├── 03_flim_live_view.py 即時預覽 (OpenCV)
├── 04_modulation_sweep.py 頻率掃描校準
└── 05_save_tiff.py TIFF 儲存 + Metadata
docs/ ← 文件
├── USAGE.md 使用手冊(從開箱到進階)
├── IMAGE_ORDER.md 影像排列順序對照表
├── API.md API 手冊
└── ARCHITECTURE.md 架構概覽
# 1. 先看排列順序(無相機可執行)
python examples/00_reorder_demo.py
# 2. 連線測試 + 第一張影像
python examples/01_basic_capture.py
# 3. 即時預覽
python examples/03_flim_live_view.py
# 4. 第一次 FLIM 擷取
python examples/02_flim_4phase.py
# 5. 校準(需標準片)
python examples/04_modulation_sweep.py
# 6. 資料儲存
python examples/05_save_tiff.py
| 文件 |
適用對象 |
內容 |
| 使用手冊 |
所有使用者 |
硬體安裝、軟體安裝、第一張影像、故障排除 |
| 參數手冊 |
FLIM 使用者 |
所有相機參數的含義、範圍、選擇建議 |
| 影像排列順序 |
FLIM 使用者 |
SDK §2.16.11 對照表、重排演算法 |
| API 手冊 |
開發者 |
類別、方法、參數參考 |
| 架構概覽 |
開發者 |
設計原則、資料流、分層結構 |
| 部署報告 |
部署者 |
部署到新機器的步驟 |
| 套件 |
用途 |
必要 |
pco |
PCO 相機 SDK(含驅動 DLL) |
是 |
numpy |
陣列運算 |
是 |
opencv-python |
即時預覽 / TIFF I/O |
是 |
matplotlib |
繪圖 |
是 |
tifffile |
進階 TIFF 儲存 + Metadata |
選配 |
MIT