九月五日凌晨開的倉,九月六日晚上最後一次 push,然後作者就沒再出現。但星數還在漲:2,872(香港時間 9 月 10 日 12:08)→ 2,979(同日 18:18,兩次都是 API 實查)。
一句話結論:Human Atlas 是一個把 BodyParts3D 人體資料搬進瀏覽器的開源 3D 解剖檢視器,「2,234 個可點選部位」經查屬實;但那 2,234 個 mesh 只對應 1,674 個不重複名稱,而且 722 個 fork 有九成從沒加過一行程式碼。
以下每個數字都是 2026 年 9 月 10 日直接向 GitHub API 和倉庫原始檔查的。開源專案的自述通常不說謊,但會挑著說。
Human Atlas 到底是什麼?
一個網頁版的 3D 人體解剖檢視器。打開瀏覽器就能轉動一具成年男性模型,點任何一塊骨頭、肌肉或血管,它會告訴你名字;也可以按系統開關圖層,或把整具身體「炸開」成零件平鋪出來看。不用安裝、不用註冊、不用 API key。
作者是 GitHub 使用者 ashemag,倉庫在這裡,線上示範站在這裡(查核當下回應 HTTP 200)。技術棧是 React + Three.js + TypeScript,程式碼 280,686 bytes。
| 項目 | 實查值(2026-09-10) |
|---|---|
| 星數 / fork / watcher | 2,979 / 722 / 17 |
| 建立時間(UTC) | 2026-09-05 00:24:43 |
| 最後 push(UTC) | 2026-09-06 23:35:06(之後靜止 4 天) |
| commit 總數 / 貢獻者 | 8 個 / 1 人 |
| 倉庫體積 | 104,115 KB(約 104 MB) |
| 授權 | 程式碼 MIT;解剖資料 CC BY 4.0 |
先把最反直覺的一格講清楚:8 個 commit,1 個人,47 小時。這不是團隊維護半年的專案,是一個人週末做完就丟上去的東西。接下來每一項查核都要放在這個前提下看。
「2,234 個部位」這個數字經得起查嗎?
經得起,這是本次查核最乾淨的一格。倉庫裡有一個 public/models/atlas.json(1.3 MB),是整個檢視器的清單檔。下載下來數,結果和 README 宣稱的完全對得上:
| README 宣稱 | atlas.json 實數 | 對不對得上 |
|---|---|---|
| 2,234 individually selectable meshes | parts 陣列長度 = 2,234 | ✅ 一致 |
| 3,432 named concepts | concepts 陣列長度 = 3,432 | ✅ 一致 |
| 2,288,268 triangles | triangles = 2,288,268 | ✅ 一致 |
| 15 anatomical systems | 不重複 system 值 = 15 | ✅ 一致 |
| 約 33 MB 壓縮幾何 | 15 個 .gz 合計 32,956,129 bytes | ✅ 一致 |
而且是逐格對。把 2,234 個 part 各自的 indexCount 加起來除以 3,得到 2,288,268,和檔頭自己寫的 triangles 一個數字不差。宣告值和明細值互相咬得住,這在隨手開的倉庫裡不常見。
順帶挖到一個 README 沒寫的數字:sourceTriangles = 6,681,030。原始幾何被簡化掉 65.75% 才塞得進瀏覽器,誤差上限設在每個結構 0.2%。這是它跑得動的真正原因。
那為什麼 2,234 個 mesh 只有 1,674 個名字?
因為「一個可點選的 mesh」不等於「一個人體部位」。這是整篇最容易被誤讀的地方,README 其實有講,只是講得很輕。
- 不重複的
name:1,674 個(另外 560 個 mesh 和別人同名) - 不重複的 FMA
conceptId:1,659 個 - 有 231 個名字重複出現,牽涉 791 個 mesh(佔全部的 35.4%)
最誇張的是「Middle cardiac vein」(心中靜脈),在資料檔裡出現 14 次,因為一條血管在原始資料裡本來就被切成很多段。所以「2,234 個部位逐件點得到」是對的,「人體有 2,234 個部位」是錯的。
還有一件事:接近一半是血管
把 2,234 個 mesh 按系統分類,分佈嚴重傾斜:
| 系統 | mesh 數 | 佔比 |
|---|---|---|
| 動脈 arterial | 639 | 28.6% |
| 靜脈 venous | 404 | 18.1% |
| 肌肉 muscular | 402 | 18.0% |
| 骨骼 skeletal | 296 | 13.2% |
| 神經 nervous | 139 | 6.2% |
| 呼吸 respiratory | 119 | 5.3% |
| 消化 digestive | 97 | 4.3% |
| 其餘 8 個系統合計 | 138 | 6.2% |
動脈加靜脈合計 1,043 個 mesh,佔 46.7%,接近一半的「部位」其實是血管。另一端,淋巴只有 3 個 mesh、內分泌 4 個、皮膚 5 個、泌尿 6 個。想拿它教內分泌或淋巴,這份資料撐不起來。這不是作者偷工,是上游 BodyParts3D 本來就長這樣,但下載前值得先知道。
722 個 fork,是不是代表很多人在改它?
不是,這是本次查核差距最大的一項。fork 對 star 的比例是 24.2%,遠高過一般工具型倉庫,表面上像是「大量開發者在做二次開發」。但把 fork 清單抓下來逐個比對,故事完全不同。
判斷方法很簡單:GitHub 幫你 fork 的時候,會把上游當下的 pushed_at 一併複製過去。所以只要 fork 的 pushed_at 還停在上游那個時間點(2026-09-06 23:35:06),就代表這個 fork 從建立到現在一個 commit 都沒有加過。
| fork 抽樣 | 數量 | 佔比 |
|---|---|---|
| 抽樣總數(最新 3 頁) | 300 | — |
pushed_at ≦ 上游最後 push(沒動過) | 270 | 90.0% |
pushed_at > 上游最後 push(有自己的 commit) | 30 | 10.0% |
| 自己拿到 ≥1 顆星的 fork | 6 | 2.0% |
十個 fork 裡有九個是原封不動的複本。真正動過的只有 30 個,而且從體積變化(104,115 KB → 110,000 KB 上下)看,多半是加了自己的資產或部署設定。這和站上先前用同一套方法拆過的fork 對 star 比例是同一個形狀:fork 數量量到的是「想留一份」的人,不是「在改它」的人。
更說明問題的是:21 個 PR,0 個被合併
順著查 pull request,數字更直接:
- PR 總數 21 個:17 個開著、4 個被關掉
- 被合併的:0 個
- issue 12 個全部開著,其中 10 個一則留言都沒有
README 最後一行寫著「Issues and pull requests are welcome」。但從 9 月 6 日最後一次 push 到查核當下,作者沒有合併任何 PR,也沒有回覆大部分 issue。這不是批評,一個人週末做的東西突然收到 2,979 顆星和 21 個 PR,本來就處理不了。但要把它當成「有人在維護的專案」拿去用,這格數字得先看。
女性模型去了哪裡?
被作者在專案公開的同一天拿掉了,而且時間點記錄得很清楚。
八個 commit 的訊息連起來就是完整的時間線:
| UTC 時間 | commit 訊息 |
|---|---|
| 2026-09-05 00:24:42 | Build Human Atlas with male and female anatomy in a limestone studio |
| 2026-09-05 10:03:13 | Modernize anatomy studio and improve exploded-part inspection |
| 2026-09-05 12:29:46 | Publish male-only Human Atlas as open source |
| 2026-09-06 23:35:01 | Restore Human Atlas title(最後一個 commit) |
第一個 commit 是「男性和女性」,12 小時後變成「僅男性公開為開源」。現在 atlas.json 的 sex 欄位只剩一個值:male。
作者沒有隱瞞。public/ATTRIBUTION.md 有一整節「Historical assets (not included in the current release)」,寫明被移除的是 HuBMAP 女性參考器官組(888 個 mesh、1,073 個節點,同樣 CC BY 4.0),但沒有解釋原因。
社群顯然很在意。查核當下,有 3 個 issue/PR 在要求把女性模型加回來,其中 PR #217「Restore female anatomy mode」在 9 月 8 日被關掉,沒有合併,另外兩個從 9 月 6 日開到現在還沒有回覆。
需要女性解剖資料的話,這個倉庫目前給不了你。ATTRIBUTION.md 留了 HuBMAP 原始資料的 DOI 和下載連結,那條路還在,但要自己接。
授權可以商用嗎?資料是不是偷來的?
可以商用,資料也不是偷來的,這一格作者處理得比大部分同類專案好。倉庫是雙層授權:程式碼 MIT,解剖資料走 CC BY 4.0。而 ATTRIBUTION.md 主動交代了一個很容易踩的坑:BodyParts3D 舊版 OBJ 檔註解寫的是 CC BY-SA 2.1 日本(相同方式分享,有傳染性),照舊條款走整個衍生專案都得跟著 SA。
作者的說法是:官方資料庫現行授權已改成 CC BY 4.0,取代那段舊註解。這句話值得自己查,所以筆者直接開了日本生命科學資料庫中心(DBCLS)官方授權頁:頁面在這裡,標明「Last updated : 2025/02/27」,授權條款確實是 Creative Commons Attribution 4.0 International,並明文允許重新散布與製作衍生資料庫。作者說的是對的。
所以你只要做一件事:散布時保留出處聲明「BodyParts3D, © The Database Center for Life Science licensed under CC Attribution 4.0 International」。沒有 SA 傳染,可以閉源、可以商用。
你現在就可以怎麼用它?
三種用法,都不需要付錢。
- 只想看:直接開
human-atlas-seven.vercel.app,轉動、點選、開關系統圖層、拉「炸開」滑桿。手機也能用,作者有做窄螢幕版面。 - 想在本機跑:需要 Node.js 22.13 以上。
git clone後npm ci、npm run dev,打開 localhost:3016。倉庫有 104 MB,clone 會慢一點。 - 想部署自己的版本:倉庫附了
vercel.json,在 Vercel 匯入為 Vite 專案就會自動建置並輸出到dist/,任何靜態主機也接得住。
想換資料重建幾何也可以:convert-anatomy.py → optimize-anatomy.mjs → compress-models.mjs,另有兩支 validate-*.mjs 做驗證。
跟其他開源人體資料比,它強在哪?
同類的開源 3D 解剖資料不多,能直接在瀏覽器打開的更少:
| 專案 | 星數/狀態(2026-09-10 實查) | 特點 | 限制 |
|---|---|---|---|
| Human Atlas | 2,979 星,最後 push 2026-09-06 | 開瀏覽器就能用,2,234 個 mesh 可點選,MIT + CC BY 4.0 | 僅男性,作者 4 天未回應,0 PR 合併 |
| Z-Anatomy(LluisV) | 386 星,最後 push 2024-12-25 | Unity 專案,解剖覆蓋更完整、有多語標註 | 要裝 Unity/桌面版,授權標示為 NOASSERTION |
| BodyParts3D 原始資料 | 非 GitHub 專案,官方授權頁 2025-02-27 更新 | 上游權威來源,OBJ + 概念關聯表齊全 | 只有原始檔,沒有檢視器,要自己寫轉檔 |
| HuBMAP 女性參考器官組 v1.5 | 2023 發布,CC BY 4.0 | 補得上女性解剖這一塊,888 個 mesh | GLB 單檔,同樣沒有現成檢視器 |
結論很直接:Human Atlas 贏在「零摩擦」,不是贏在資料完整度。它把一份存在十幾年的公開資料做成點開就能用的東西,這件事值 2,979 顆星,但它沒有讓那份資料變得更完整。
那 #283 這個編號又是怎麼回事?
這是查核過程最後一個意外,也是值得學起來的陷阱。最新一個 PR 的編號是 #283,看到這個數字很容易推論「這專案收過 283 個 PR」。但 API 把所有 issue 和 PR(含已關閉)全部撈出來,只有 33 條:12 個 issue + 21 個 PR。而倉庫自己回報的 open_issues_count = 29,正好等於 12 + 17,數字咬得住。
那中間 250 個編號去哪了?筆者抽驗 9 個不在清單上的編號(#20、#50、#100、#150、#200、#230、#250、#270、#280),全部回 404;同時抽驗 4 個清單上有的編號(#1、#5、#217、#283),全部回 200。編號確實是斷的,不是查詢方式有問題。
至於為什麼斷,API 不會告訴你。可能是被刪除,也可能是被 GitHub 的濫用偵測隱藏。能確定的只有一件事:最大編號是 283,實際存在的是 33。這和站上拆過的同一個倉庫兩個星數、以及星數掉了 1,117 顆是同一類問題:編號不是筆數,徽章不是事實。
常見問題
Human Atlas 可以用在商業產品裡嗎?
可以。程式碼是 MIT,解剖資料是 CC BY 4.0,兩者都允許商用與閉源衍生。唯一義務是散布時保留 BodyParts3D 與 DBCLS 的出處聲明。
它可以拿來做醫療診斷或手術規劃嗎?
不行。README 與 ATTRIBUTION 都寫明這是教育用途,不是臨床工具。資料來自單一成年男性參考解剖(以 TARO MRI 為基礎),不代表個體差異。
為什麼 Human Atlas 只有男性模型?
最初的 commit 同時含男女,但作者在公開為開源時(2026-09-05 12:29 UTC)改成僅男性,未說明原因。ATTRIBUTION.md 保留了女性資料(HuBMAP v1.5)的來源與 DOI,但 3 個要求恢復的 issue/PR 都還沒被接受。
2,234 個部位是不是等於人體有 2,234 個結構?
不是。2,234 是可獨立點選的 mesh 數,其中只有 1,674 個不重複名稱、1,659 個不重複 FMA 概念;同一條血管常被切成十幾段,各算一個 mesh。
現在下載安全嗎?作者還在維護嗎?
程式碼可以用,線上示範站也正常運作。但從 2026-09-06 起沒有新 commit,21 個 PR 沒有一個被合併,12 個 issue 有 10 個零回覆。需要長期相依的話,建議 fork 一份自己維護。
查完之後,這個專案值不值得你花時間?
值得,但要用對期待。它的資料檔內部一致、授權處理乾淨、上游出處交代得比很多商業產品清楚,作者甚至主動提醒了 CC BY-SA 舊註解這個坑。這些都是自己查得出來的加分項。
問題也一樣清楚:僅男性、近一半部位是血管、淋巴和內分泌幾乎是空的、作者停在第 47 小時、21 個 PR 沒有一個進得去。
2,979 顆星量到的是「這個東西做得很順手」,不是「這個東西被維護得很好」。兩件事在 GitHub 上長得一模一樣,只有把資料檔和 API 打開才分得出來。
這是本站第五次用同一套方法拆倉庫,前幾次分別拆過一個量化交易倉庫和兩個 AI 大廠的數學證明倉庫。每次結論都不一樣,但方法一樣:先數,再說。
※ 本文所有 GitHub 數據、檔案內容與授權條款皆為 2026 年 9 月 10 日實查,開源專案變動極快,閱讀時請以倉庫當下狀態為準。Human Atlas 與 BodyParts3D 均為教育用途資料,非醫療診斷或臨床工具,任何健康問題請諮詢合資格醫護人員。本文不構成任何投資或醫療建議。





發佈留言