顯示具有 FHIR 標籤的文章。 顯示所有文章
顯示具有 FHIR 標籤的文章。 顯示所有文章

2026年1月27日 星期二

巨明 CanWellBeing SMART on FHIR 應用系統介紹

巨明 CanWellBeing SMART on FHIR 應用系統介紹

名稱:CanWellBeing SMART on FHIR AI 體組成量測 應用說明文件

本產品為 AI 體組成量測應⽤程式,透過 串接院內醫療影像傳輸系統,擷取腹部 CT 單⼀ L3 切⾯,約 3 秒產出 70+ 項體組成與「肌⾁品質」指標及圖像化報告。現正於成⼤醫院等台南醫學中⼼/醫院進⾏臨床試驗,⽬標以客觀量測⽀持癌症病⼈化療劑量優化與毒性風險分層,協助醫師更精準⽤藥、改善預後並強化追蹤照護;亦可延伸⾄健檢與慢性/代謝性疾病之早期風險評估。

系統非侵入、低風險,結果可標準化回寫 EMR,便於臨床決策與跨科追蹤。技術曾獲國家新創獎及國家精進獎肯定

CanWellBeing 是⼀套 AI 驅動的腹部 CT 體組成分析應⽤程式,專為臨床決策⽀援⽽設計。系統透過 DICOM 介⾯串接院內 PACS,⾃動擷取腹部 CT 之 L3 椎體切⾯,運⽤深度學習演算法於約 3 秒內完成核⼼肌群(腰⼤肌、豎脊肌、腹直肌、腹斜肌)與脂肪組織(⽪下脂肪、內臟脂肪、肌間脂肪)之精準分割,產出超過 70 項量化指標及圖像化報告。 主要功能模組: (⼀)影像分析引擎:採⽤經⼤規模臨床資料訓練之卷積神經網路,⽀援多廠牌 CT 影像格式,具備⾃動品質檢核機制,確保分析結果之穩定性與可重複性。 (⼆)指標運算系統:輸出包含骨骼肌指數(SMI)、肌⾁衰減指數(肌⾁品質指標)、內臟脂肪⾯積、⽪下脂肪⾯積、肌⾁-脂肪比等關鍵參數,並依據年齡、性別提供百分位數與風險分級

SMART on FHIR App 示範影片



使用情境

  1. 使用者使用 Standalone 方式啟動這個系統
  2. 系統將會進行 OAuth2 授權碼取得
  3. 接著需要進行身分驗證
  4. 完成後,就會取得 Access Token
  5. 使用者輸入病歷號,便會到 FHIR Server 上查詢病人基本資料與身高、體重
  6. 使用者選擇或上傳 L3 CT DICOM 影像
  7. 點擊「AI 推論」按鈕,系統會呼叫後端推論服務
  8. 推論完成後,系統會顯示結果:原始 CT 影像、分割覆蓋圖與指標數值表

 




2026年1月26日 星期一

耀瑄科技新創小組介紹

耀瑄科技新創小組介紹

耀瑄科技新創小組|以 FHIR × AI × 大數據,打造新一代醫療數據應用

在醫療數位轉型快速推進的浪潮中,耀瑄科技 新創小組,扮演著「實驗室」與「先鋒部隊」的角色。我們專注於將國際標準、前沿 AI 技術與醫療場域的真實需求結合,讓過去「做不到、很困難、成本太高」的醫療應用,成為可以在臨床落地、可擴展、可複製的系統方案。


2025 年度核心開發成果總覽

2025 年,新創小組以 FHIR × 病人導向 × AI 應用 為主軸,完成了多項已實際運作或進入驗證階段的系統,涵蓋臨床照護、研究、安寧療護與運動科技等領域。

一、FHIR × 病人導向時序圖應用

我們開發了以「病人為核心」的時序圖系統,整合 Encounter、Condition、Observation、Medication、Procedure、ImagingStudy 等 FHIR 資源,將多年就醫紀錄轉化為一眼可理解的時間軸視覺化。 這套應用讓醫師、個管師與研究人員能快速掌握病程演進、治療決策與關鍵轉折點,是 FHIR 在臨床應用層面的代表性成果。

二、SMART on FHIR × 身體組成 AI 分析應用

結合 SMART on FHIR 標準流程 與 AI 影像推論模型,建立一套可從 EHR 啟動的身體組成分析 App。 使用者可上傳 L3 腹部 CT 影像,系統自動完成:

  • 骨骼肌面積、脂肪分布等量化分析
  • 推論結果回寫 FHIR(Observation / ImagingStudy)
  • 以臨床友善的介面呈現結果

此應用已通過沙盒測試,展示了 SMART on FHIR + AI 在醫療影像分析上的實際可行性。

三、AI 臨床試驗與婦產科癌症治療平台

針對婦產科癌症臨床試驗需求,新創小組打造一套整合式平台,涵蓋:

  • 病患基本臨床資料與治療歷程
  • 檢驗數據追蹤與副作用紀錄
  • AI 輔助風險評估與療效觀察

此平台不僅支援研究流程,也讓臨床團隊能在同一系統中完成「照護 × 試驗 × 分析」。

四、安寧 AI 與 FHIR 支援系統

在安寧療護與 PCOC 場景中,我們導入 AI 模型輔助病人狀態分析,並以 FHIR 作為資料交換基礎,支援:

  • 症狀評估與照護指標分析
  • 跨系統資料整合
  • 長期追蹤與決策支援

這是一個將 人文照護 × AI × 標準化資料 結合的重要實踐。

五、運動科技健康管理儀表板

延伸醫療資料整合能力,新創小組也完成運動科技健康管理儀表板,整合生理量測、訓練紀錄與 AI 分析,應用於:

  • 運動員健康監測
  • 表現與風險分析
  • 長期數據視覺化

六、病患篩選第二期系統開發

在既有病患篩選平台基礎上,第二期系統進一步強化:

  • 大規模資料處理效能(Big Data / Elasticsearch)
  • 複雜條件查詢與 Cohort 定義
  • 支援臨床研究與試驗收案需求

這套系統已成為研究單位與臨床團隊的重要工具。


三大技術主軸:AI × FHIR × Big Data

新創小組的研發方向,始終圍繞三個核心能力:

  1. AI 人工智慧

    • 醫療影像分析
    • 臨床決策輔助
    • 風險評估與預測模型
  2. FHIR / SMART on FHIR 標準應用

    • 與院內 HIS / EMR 共存
    • 跨系統資料互通
    • 快速開發可重用的醫療 App
  3. Big Data 大數據平台

    • 高效能資料整合與查詢
    • 支援研究、試驗與管理決策
    • 從資料倉儲走向即時分析

邁向下一步:數據中台與可擴展應用生態

展望未來,新創小組正積極規劃 醫療數據中台 相關應用,目標是:

  • 降低各系統之間的整合成本
  • 讓 AI 與 FHIR 應用可以快速接上資料
  • 形成可複製、可擴展的解決方案架構

數據中台不只是技術專案,而是支撐未來 5–10 年醫療應用創新的核心基礎。


新創小組可提供的服務與業務目標

可提供的服務

  • FHIR / SMART on FHIR 系統設計與開發
  • AI 醫療應用(影像、分析、決策支援)
  • 病人導向視覺化與時序應用
  • 臨床試驗與研究平台建置
  • 大數據平台與病患篩選系統
  • 醫療數據中台規劃與顧問服務

業務與長期目標

  • 協助醫院快速落地國際標準應用
  • 將 AI 從展示階段推進到臨床實用
  • 打造可複製、可規模化的醫療軟體產品
  • 成為醫療單位在 FHIR × AI × 大數據 領域最值得信賴的夥伴

結語

耀瑄科技新創小組不是單純「做系統」,而是專注於 把未來醫療需要的能力,提前做出來。 在 FHIR 成為基礎設施、AI 成為標準工具、大數據成為決策核心的時代,我們希望與更多醫院、研究單位與合作夥伴,一起打造真正改變臨床現場的醫療應用。 




FHIR 工作坊 第二段 動手實作 筆記

FHIR 工作坊 第二段 動手實作 筆記

[耀瑄科技 新創小組]


從零開始把 FHIR 跑起來:

一場「HAPI FHIR Server 動手實作」背後,其實在教你什麼?

這篇文章,整理自一場由 工研院 受 衛生福利部 委託舉辦的 FHIR 工作坊 Hands-on Lab。 表面上它在「教你安裝 HAPI FHIR Server」,但實際上,它在傳遞的是: 一個 FHIR Server 要能「真的被拿來用」,背後需要哪些關鍵元件與正確順序。

本文特別適合:

  • 第一次接觸 FHIR / SMART on FHIR 的醫院資訊人員
  • 正在評估或嘗試 FHIR Server PoC 的醫療新創團隊
  • 曾經「架過 Server,但一直卡在 validation、代碼、IG」的人

一、為什麼工作坊一開始就選 HAPI FHIR Server?

背景脈絡(錄音裡沒講清楚,但這是關鍵)

在 FHIR 生態系中,HAPI FHIR Server 幾乎是學習與 PoC 階段的事實標準,原因不是因為它「最好」,而是因為它:

  • 完整支援 FHIR R4 / R5
  • 有清楚的 RESTful API 實作
  • 內建 Validation、Terminology、IG 支援機制
  • 能快速切換不同資料儲存後端(in-memory / Lucene / Elasticsearch)

👉 換句話說: 這場 Hands-on Lab 的目的,不是教你「怎麼安裝一個 Java 專案」,而是讓你第一次把 FHIR Server 的完整能力「摸過一輪」


二、FHIR Server 的基本架構與運作原理(先把全貌看清楚)

在開始任何安裝前,先用一句話理解 FHIR Server 在做什麼

FHIR Server = 一個懂 FHIR Schema、會驗證資料、能處理醫療術語、並提供 REST API 的資料平台

它通常包含以下幾個核心模組:

FHIR REST API
 ├─ Resource CRUD (Patient / Observation / Condition ...)
 ├─ Validation Engine (Schema + Profile)
 ├─ Terminology Service (CodeSystem / ValueSet)
 ├─ Persistence Layer (資料庫)
 └─ Optional: Search / Index / Analytics

這正是為什麼工作坊後面會一直提到:

  • Validation
  • Terminology
  • IG
  • Backend 切換(Lucene / Elasticsearch)

👉 它們不是附加功能,而是 FHIR Server 的「標準配備」


三、application.yaml:真正控制 FHIR Server 行為的地方

在 Hands-on Lab 中,講者反覆提到 application.yaml,但沒有一次把它講清楚。

application.yaml 是什麼?

它是 HAPI FHIR Server 的行為設定中樞,決定了:

  • 用哪個 FHIR 版本(R4 / R5)
  • 使用哪種資料儲存後端
  • 是否啟用 validation
  • 是否啟用 terminology
  • 是否預先展開 ValueSet(Pre-expand)
  • 是否允許不合法的 Resource 被寫入

為什麼這麼重要?

因為:

你遇到的 80% 問題,其實不是 Resource 寫錯,而是 application.yaml 沒設好


四、資料儲存後端:Lucene vs Elasticsearch(不是效能比較而已)

1️⃣ Lucene backend 是什麼?

  • 內建、免安裝
  • 適合教學、PoC、Lab
  • 啟動快、設定少
  • 搜尋功能完整但不適合大量資料

👉 Hands-on Lab 預設使用 Lucene,是為了降低門檻

2️⃣ Elasticsearch backend 在幹嘛?

  • 適合大量病人資料
  • 搜尋與 aggregation 能力強
  • 常用於「研究平台 / 病患篩選 / cohort discovery」

👉 錄音裡提到 Elasticsearch,其實是在暗示:

當你真的要「上線用」時,後端一定會換


五、Terminology 是什麼?為什麼不裝,後面全都會卡?

Terminology ≠ 單純代碼表

在 FHIR 世界中,Terminology Service 負責:

  • 管理 CodeSystem(ICD-10、LOINC、SNOMED CT)
  • 管理 ValueSet
  • 檢查 coding 是否合法
  • 支援 validation 與 decision logic

如果沒有 Terminology:

  • Observation.code 你怎麼知道填的 LOINC 合不合法?
  • Profile 裡的 binding 根本無法驗證

👉 這也是為什麼講者強調順序:

一定要先裝好 ICD-10 / LOINC / SNOMED CT,才能裝 IG


六、Pre-expand ValueSet:為什麼效能突然差很多?

這是 Hands-on Lab 中「只被輕描淡寫帶過,但實務超重要」的一段。

什麼是 Pre-expand?

  • 把 ValueSet 中可能的代碼 事先展開並快取
  • 換取 validation 與查詢時的速度

為什麼重要?

  • 沒 pre-expand → validation 很慢
  • 大型 IG(例如 TW Core)幾乎一定要開

👉 這也是為什麼很多人第一次驗證 Resource 時會覺得:

「怎麼這麼慢?是不是 server 壞了?」


七、FHIR Schema 與 Validation:你到底在驗證什麼?

兩層驗證,常被混在一起

1️⃣ FHIR Schema Validation

  • Resource 結構是否正確
  • 欄位型別是否符合(string / date / CodeableConcept)

2️⃣ Profile Validation

  • 是否符合 TW Core IG 的約束
  • 必填欄位有沒有填
  • coding 是否符合 binding 的 ValueSet
  • Reference 是否指向正確 Resource/Profile

👉 Hands-on Lab 的重點不是「送資料成功」,而是:

你是否看得懂 validation error 在說什麼


八、為什麼「一定要先裝 TW Core IG」?

IG(Implementation Guide)在這裡扮演什麼角色?

TW Core IG 定義了:

  • 台灣情境下「應該怎麼用 FHIR」
  • Patient / Observation / Encounter 的必要欄位
  • 身分證、病歷號、機構結構的建議做法
  • 常用代碼的 binding 規則

正確順序(這是 Hands-on Lab 真正想教的)

  1. 安裝 HAPI FHIR Server
  2. 啟用 Terminology
  3. 安裝 ICD-10 / LOINC / SNOMED CT
  4. 設定 Pre-expand
  5. 安裝 TW Core IG
  6. 開始送 Resource
  7. 讀懂 Validation 結果

👉 順序錯,後面一定全錯


九、FHIR RESTful API:你其實已經會用了,只是不知道名字

最後,工作坊會帶大家實際呼叫 API,例如:

  • POST /Patient
  • POST /Observation
  • GET /Patient?_id=123
  • POST /Bundle

這些不是什麼特別 API,而是:

FHIR RESTful API = 標準化的醫療資料 CRUD

你會的 HTTP、JSON、REST,全都可以直接用上。


以下為你提供的這份 FHIR 工作坊 Hands-on Lab 文件(來源:hackmd.io/@medstandard/Byv5yOhB-g) 的 簡明摘要與做法整理,保留必要步驟與重點概念,但不涵蓋細節指令或完整設定内容,適合入門者快速理解與實作參考:


簡潔版:FHIR Server 安裝與實作總覽

本工作坊旨在讓開發者能 動手安裝、設定與測試符合臺灣 FHIR 標準(TW Core IG)的 HAPI FHIR Server 實例,並透過相關工具與流程建立開發能力。


1) 必備軟體與環境準備

在開始實作之前,請先在您的開發機或 VM 上安裝與準備:

  • Visual Studio Code 或其他編輯器
  • Docker / Docker Desktop / Podman
  • Docker Compose
  • Git
  • Postman(用於 API 測試)

建議環境配備: CPU 8 核、記憶體 16GB(若安裝完整術語庫與 IG 建議 32GB),硬碟空間 >100GB。


2) 安裝 HAPI FHIR Server(主要應用)

主要流程

  1. Clone HAPI FHIR Server Starter 專案 把官方 starter repo 下載到本機。

  2. 修改組態檔(application.yaml) 啟動下列功能以支援驗證與查詢:

    • 允許上傳 Implementation Guide(IG Runtime Upload)
    • 啟用 Request Validation
    • 啟用搜尋及 Lucene backend
    • 啟用 Pre-expand ValueSet 等功能
  3. Docker Compose 建置與啟動 執行建置與啟動命令,並觀察 Server 日誌以確認啟動成功。

  4. 觀察啟動狀況 使用 docker compose logs -f … 觀察 FHIR Server 是否已完全啟動。


3) 安裝 Terminology(術語庫)

FHIR 的術語是醫療資料一致性的核心,因此需要安裝下列 CodeSystem / ValueSet

  • ICD-10(診斷碼)
  • LOINC(檢驗碼)
  • SNOMED CT(臨床概念)

安裝重點

完成一個 CodeSystem 之後,請等日誌顯示處理完成才開始下一個;尤其 LOINC 與 SNOMED CT 安裝時間較長。


4) 使用 VS Code 加入 FHIR Schema 支援

為了在撰寫 FHIR JSON 時獲得 IntelliSense 與 schema 驗證,可以:

  1. 下載 FHIR Schema JSON(例如 FHIR R4 的 fhir.schema.json
  2. 透過 VS Code 設定讓 .fhir.json 檔案套用 schema
  3. 在資源編輯時自動顯示欄位提示與結構規則

5) 使用 FHIR REST API 進行 CRUD

可利用 Postman 或其他 HTTP client:

  • POST / PUT 新增 Resource
  • GET 查詢 Resource
  • PUT 更新 Resource
  • DELETE 移除 Resource
  • 使用 $expand 對 ValueSet 進行擴展測試

6) 安裝 TW Core IG(臺灣核心 Implementation Guide)

TW Core IG 提供臺灣場景下的 FHIR Profile 與約束規範。建議安裝流程為:

  1. 確定 Terminology(ICD-10/LOINC/SNOMED CT)已全部安裝完成
  2. 解壓 TW Core IG 套件(ZIP)
  3. 執行 IG 建立與上傳腳本(如 ig.sh / upload_ig.sh
  4. 在 Server 上完成 IG 套件的部署

注意:TW Core IG 依賴已存在的 Terminology,若先裝 IG、後裝術語,可能導致驗證錯誤。


7) 驗證 Resource 是否符合 TW Core 規範

安裝完 IG 之後,可以利用 FHIR Server 提供的 $validate Operation:

  • 呼叫 POST …/$validate 並帶入要驗證的 Resource JSON
  • 查看驗證結果是否符合 Profile 規範

這一步是確認資料是否真正 “符合標準”,而非只是能寫入。


8) 其他補充注意事項(概念性)

Terminology 與 ValueSet 擴展

要讓 FHIR Server 正確進行代碼查驗與 ValueSet 擴展($expand),必須:

  • 啟用 Lucene backend 或 Elasticsearch
  • 在 application.yaml 設定 pre_expand_value_sets 等相關選項
  • 避免安裝過程中未完成就進行查詢

在 VS Code 使用 JSON Schema

透過 schema 配置,可以提高 JSON 編輯正確性,降低因結構錯誤而造成的 API 驗證失敗。


十、小結:這場 Hands-on Lab 真正想教你的三件事

1️⃣ FHIR Server 不是資料庫,是一套「有規則的醫療資料平台」 2️⃣ Validation 與 Terminology 是核心,不是選配 3️⃣ IG(尤其是 TW Core)是讓你「真的能互通」的關鍵