Orange Data Mining × Assay imaging

Orange Assay Widgets

三個把檢測盤照片變成資料、擬合劑量反應曲線的 widgets——微孔盤讀取、 咖啡環讀取、3PL/4PL 曲線擬合(EC50 / LOD)。影像核心重用 coffee-ring-analyzer, 結果與其 Streamlit/手機/CLI 版一致。全程拖拉、免寫程式。

Overview

三個 Widgets,一條龍的檢測分析

安裝後 Orange 工具箱會多一個 Assay 分類。輸出都是一般 Orange 資料表,可接 Data Table、散佈圖、PCA、以及 orange-spectra 的 PLS-DA。

Microplate Reader

讀微孔盤照片(6–384 孔)成每孔一列的表:平均亮度或閾值面積,附 A1…H12 孔位。

Coffee-Ring Reader

量化點樣(咖啡環)盤:逐格面積/強度、除以 blank、平均重複列 → 濃度/比值表。

Dose-Response Fit

對任何濃度/訊號表擬合 3PL/4PL 邏輯曲線,回報 EC50、LOD、R²,並疊曲線於資料點。

Workflow

典型工作流

Microplate Reader ─wells──┐ ├──► Dose-Response Fit ──► EC50 / LOD / 曲線 Coffee-Ring Reader ─cells─┘ (也可接 PCA · PLS-DA · Data Table)

Dose-Response Fit 是共用 widget:兩個 reader 的輸出、或你已在試算表裡的 比色法/ELISA 數據都能接。

Install

安裝

可在 Windows、macOS(Apple 晶片與 Intel)、Linux 執行——純 Python (numpy / scipy / matplotlib / Pillow / Orange3)。

A. 桌面版 App

Options ▸ Add-ons… ▸ Add more… 輸入 orange-assay → 打勾 → OK → 重啟。 macOS 到 orangedatamining.com 下載 Mac 版 .dmg

B. pip 版 Orange

pip install orange-assay
python -m Orange.canvas
繁中 Windows 若 Add-ons 崩潰UnicodeDecodeError: 'cp950' codec…): 改用命令列 "…\Programs\Orange\python.exe" -m pip install orange-assay 再重開 Orange, 或設環境變數 PYTHONUTF8=1。詳見 orange-spectra FAQ

重啟後工具箱出現 Assay 分類(3 個 widgets)。每個 widget 左上角有 「ℹ 說明」盒子,選取後按 F1 會開對應說明頁。

Widget guide

Widget 逐一教學

Microplate Reader — 微孔盤讀取

輸出:Wells(每孔一列:value, row, col;孔位 meta 如 A1)
  1. Choose plate image… 選盤面照片。
  2. Format(6/12/24/48/96/384);規則網格自動疊上。
  3. Measure:mean(平均亮度,最穩)、thresholded count / intensity(需選閾值法:Otsu / manual / per-well Otsu)。
  4. Border margin 修盤緣;Row fill 調小避免上下鄰孔互擾。
  5. Wells 接 Data Table,或把孔對應到濃度後接 Dose-Response Fit
井位是規則網格,最穩是先量 mean,再視需要用閾值量面積。

Coffee-Ring Reader — 咖啡環讀取

輸出:Cells(正規化:concentration, ratio, se, col;未正規化:逐格 value)
  1. 選點樣/咖啡環盤照片。
  2. Rows(重複列)與 Columns第 0 欄=blank);可勾 Auto-detect grid 從亮點自動抓格。
  3. Measure:count 或 intensity;Threshold:manual(預設 0.43)/ Otsu / per-cell Otsu。
  4. Divide by blank:每格除以同列第 0 欄、平均重複列;Concentrations 填第 1 欄起的濃度。
  5. Cells 接 Dose-Response Fit 求 EC50 / LOD。
重現 coffee-ring-analyzer:ITU-R 601 灰階、integral-image 逐格量測、blank 正規化——與 Streamlit/手機/CLI 版一致。預設格點與濃度即該專案的 thrombin assay 設定。

Dose-Response Fit — 劑量反應曲線

輸入:任何含濃度+訊號兩數值欄的 Table 輸出:Fit summary、Fitted curve
  1. ConcentrationSignal 欄;濃度跨數量級時勾 log10
  2. Model:3PL(y = L/(1+e−k(x−x₀)))或 4PL(含下/上漸近線)。
  3. EC50(=拐點 x₀)、LOD(訊號超過基線+3σ 的濃度)、
  4. Fit summary 接 Data Table;Fitted curve 可疊圖或匯出。
共用 widget:Microplate / Coffee-Ring Reader 的輸出、或任何比色法/ELISA 數據都能接。
FAQ

常見問題

支援哪些影像格式?

PNG / JPG / TIFF / BMP(用 Pillow 讀取)。彩色會以 ITU-R 601 luma 轉灰階。

為什麼比值出現 inf 或 NaN?

Coffee-Ring 的 blank(第 0 欄)量到 0(例如閾值太高、blank 沒有訊號)→ 除以 0。 降低 manual threshold、或確認第 0 欄真的有 blank 點樣。

EC50 / LOD 單位是什麼?

與你輸入的濃度同單位。若勾了 log10,widget 會把結果轉回線性濃度顯示。

可以接到 orange-spectra 的 widgets 嗎?

可以——輸出是一般 Orange 資料表,可接 PLS-DA、PCA、Data Table 等。兩個套件互補。