摘要:為了提高人體經絡模型的活性,文章基于AR技術與智能問答技術設計并實現了可智能交互的AR人體經絡模型。首先,構建3D人體模型并標注經絡穴位;其次,利用Unity的AR Foundation技術實現人體模型在現實環境中的虛擬投放;再次,實現用戶與人體模型經絡穴位的交互,使用者可以查看經絡穴位的視頻、圖片等多模態信息;最后,構建知識圖譜,訓練意圖識別的BERT模型,實現與人體模型的智能問答交互。實驗結果表明,該模型顯著提升了經絡學習和診斷的效率,為中醫藥教育提供了新的技術手段。
關鍵詞:人體經絡;AR技術;知識圖譜;智能問答
中圖分類號:TP391 文獻標識碼:A
文章編號:1009-3044(2025)04-0072-04 開放科學(資源服務) 標識碼(OSID) :
0 引言
經絡學說是《黃帝內經》中的主要內容,也是指導中醫各科的理論核心。中醫理論科學內涵、中醫臨床療效、中醫診療方法以及中西醫結合理論等研究都離不開經絡理論。傳統的經絡研究依賴于二維圖譜和靜態模型,難以直觀地展示其復雜的空間結構和動態變化,需要借助現代醫學的技術手段和方法來提高疾病的診斷和治療水平。增強現實(Augmented Reality,AR) 技術是一種實時計算影像的位置和角度并疊加相應圖像的技術,可以將虛擬世界融合到現實世界中,同時支持互動[1]。AR Foundation 是Unity 構建的AR開發平臺,為廣大用戶提供了一種與平臺無關的AR開發環境[2]。引入AR技術可以將抽象的經絡系統以三維立體可交互的形式呈現,為解決傳統經絡研究的不足提供了新途徑。同時,引入智能問答技術使人體經絡模型更具智能性。本研究旨在利用AR技術與智能問答技術,設計并實現一個可智能交互的AR人體經絡模型,提升人體經絡模型的活性。
1 公眾對于智能人體經絡模型的需求
1.1 現有人體經絡模型無法滿足需求
國家高度重視中醫藥發展,出臺了一系列政策鼓勵中醫藥的傳承與創新發展。2023年2月10日,國務院辦公廳關于印發中醫藥振興發展重大工程實施方案的通知[3]指出:“遵循中醫藥自身發展規律,充分利用現代科學成果和技術方法,鞏固和發揚中醫藥特色優勢,推進中醫藥現代化、產業化,推動中醫藥走向世界。”關于開展健康中國行動中醫藥健康促進專項活動的通知[4]指出,“加大小兒推拿健康知識普及,讓家長了解小兒推拿適應癥和注意事項,傳授推廣易于家長操作的捏脊、按揉足三里等方法?!苯浗j腧穴理論是中醫藥理論的重要組成部分,幾千年來一直參與指導中醫臨床實踐[5]。在日常針灸推拿研究中,經絡學說內容深奧,理論性較強,人體經絡的分布非常復雜,且內連臟腑、外連筋肉皮膚,不宜直觀觀察。然而,目前大多數關于經絡的研究采用穴位繪圖及文字描述等方式講解穴位知識,缺少立體形象,無法準確、生動、高效地展示相關經絡位置及關聯關系,不利于研究者掌握具體經絡位置及相關療效知識,嚴重影響經絡相關知識的學習與研究效率。
1.2 可智能交互人體經絡模型
為積極響應國家政策,弘揚中醫藥文化,促進中醫數字化,本研究旨在設計并實現一款可智能交互的AR人體經絡模型。該模型為立體生動的3D人體模型,能夠在任意現實場景中虛擬投放,支持縮放、旋轉等操作;模型上的經絡穴位支持選擇性展示和點擊操作,當某穴位被點擊時將高亮顯示,并向用戶呈現其多模態資源;模型還支持智能問答式交互。模型精準、直觀地展示人體經絡穴位,結合智能交互功能,為用戶帶來虛擬場景中的沉浸式學習體驗。
2 系統架構
該系統實現可智能交互的3D人體經絡模型,交互主要體現在三個方面:一是3D人體模型可以隨處投放并可放大、縮小、旋轉;二是3D人體模型上的經絡穴位可控制顯示與隱藏,可點擊并獲得語音、視頻等多模態資源;三是可以與3D模型進行問答式交互。需要實現的功能包括3D人體模型構建、基于AR技術的3D模型投放與控制、經絡穴位的顯示與交互控制、經絡穴位知識的多模態資源管理、常見疾病的推拿與中草藥貼敷治療相關知識的知識圖譜構建、基于知識圖譜的智能問答等。系統總體架構如圖1所示,分為基礎層、服務層與應用層。基礎層包括基礎工具、開發語言、關系數據庫、圖數據庫、AR相關的庫、人工智能模型等;服務層包括3D人體模型構建、AR交互、經絡穴位知識管理、知識圖譜構建、BERT模型訓練、智能問答以及文字語音互轉等服務;應用層包括基于AR的3D人體模型、與人體模型的經絡穴位交互功能以及智能問答交互功能。
3 核心模塊設計與實現
3.1 可交互AR 人體模型構建
用Blender工具構建3D人體模型,并將該模型嵌入Unity引擎,結合AR Foundation框架實現3D人體模型在虛擬環境投放,用戶通過觸摸操作與3D模型進行直觀地交互,包括縮放和旋轉等功能,操作流程如圖2所示。
利用AR技術投放3D人體模型時,應用程序首先打開手機攝像頭對準預投放人體模型的現實場景,用戶在屏幕上點擊場景中的平面后,系統獲取觸摸信息并檢測該觸摸點是否在AR平面上。如果觸摸點在平面上且尚未生成模型,系統將調用Instantiate()方法在平面上生成一個新的3D模型,并利用Transform.Ro?tate()方法進行角度對齊,以確保模型正確展示。生成模型的關鍵代碼如下:
var touch = Input.GetTouch(0);
//檢測觸摸點是否在平面上,是否已有模型
if ((spawnedObject == 1) amp;amp; mRaycastManager.Raycast(touch.position, Hits, TrackableType.PlaneWith?inPolygon | TrackableType.PlaneWithinBounds))
{
var hitPose = Hits[0].pose;
//實例化模型
spawnedObject = Instantiate(spawnPrefab, hitPose.position, hitPose.rotation);
//角度對齊
spawnedObject. transform. Rotate(new Vector3(0,mAngle, 0));
}
模型縮放操作,用戶使用兩根手指觸摸屏幕并滑動,系統計算滑動前后兩根手指之間的坐標變化值,并根據坐標變化值計算模型的坐標系縮放值。改變Transform.localScale屬性值便可實現模型的縮放。關鍵代碼如下:
if (spawnedObject != 1)
{
//獲得觸摸點的信息,計算坐標變化值
Touch touchZero = Input.GetTouch(0);
Touch touchOne = Input.GetTouch(1);
Vector2 touchZeroPrevPos = touchZero.position -touchZero.deltaPosition;
Vector2 touchOnePrevPos = touchOne. position -touchOne.deltaPosition;
float prevTouchDeltaMag = (touchZeroPrevPos -touchOnePrevPos).magnitude;
float touchDeltaMag = (touchZero. position -touchOne.position).magnitude;
//計算坐標系縮放值
float deltaMagnitudeDiff = touchDeltaMag - prev?TouchDeltaMag;
float pinchAmount = deltaMagnitudeDiff * mZoom?Speed * Time.deltaTime;
//模型縮放
spawnedObject. transform. localScale += new Vec?tor3(pinchAmount, pinchAmount, pinchAmount);
}
模型旋轉操作,當用戶用一根手指在屏幕上滑動時,系統識別手指移動,計算旋轉的歐拉角,調用Transform.Rotate()方法實現模型在本地空間實時旋轉。關鍵代碼如下:
3.2 與人體模型的經絡穴位交互
用戶可以控制3D人體模型中經絡穴位的顯示與隱藏,也可以調出某一穴位的語音、視頻、圖片等多模態資源。操作流程如圖3所示。
系統生成模型后,界面左側顯示經絡列表。當系統檢測到經絡列表上某經絡被點擊時,自動在界面右側顯示該經絡的穴位列表,方便用戶進一步操作。同時,在模型上顯示該經絡穴位,通過改變人體模型上相應經絡穴位位置的材質顏色來控制該經絡穴位的顯示與隱藏。
當用戶點擊穴位列表中任意穴位時,系統自動改變人體模型上對應穴位位置的材質顏色,實現對所選穴位的高亮顯示。通過這種顯著的視覺效果,用戶能夠輕松定位并識別特定穴位的精確位置。同時,系統通過Unity的UI系統與文本組件在屏幕下方彈出該穴位相關的文本信息,包括穴位的名稱、功能、主治病癥等關鍵信息。除文本信息外,系統還顯示“語音”與“視頻”按鈕,用戶可以選擇語音方式聽取穴位詳細信息,或進一步觀看視頻資源。
用戶點擊“語音”按鈕時,系統調用第三方文本轉語音接口將穴位詳細信息轉化為語音進行播報。這一功能由Unity的AudioSource組件完成,不僅保證了語音的流暢播放,還使用戶在學習時無須分心閱讀大量文字內容,提供了便捷性和沉浸感。
用戶點擊“視頻”按鈕時,系統將通過HTTP接口調取該穴位相關的教學視頻,如穴位定位視頻、穴位功效視頻等,并通過VideoPlayer組件控制視頻的播放與暫停功能。
圖片與視頻信息通過Web服務器管理,其訪問路徑以及經絡穴位的文本介紹等信息存儲在數據庫中,并封裝成HTTP接口供Unity的相關控件調用。文本圖片信息、語音播報結合視頻播放,進一步幫助用戶深入理解該穴位在實際應用中的操作方法與效果。
多媒體資源的呈現為用戶提供了豐富的學習資源,使中醫經絡學習更加直觀、便捷且生動。用戶能夠在視覺、聽覺和互動的多重體驗中獲得多感官交互,更加高效地掌握經絡和穴位的實際應用知識。交互效果如圖4所示。
3.3 問答式交互
本研究采用知識圖譜與BERT模型相結合的技術實現智能問答,以提高人體經絡模型交互的智能性。首先構建經絡穴位、疾病推拿、中草藥貼敷等相關數據的知識圖譜及問題意圖識別的BERT模型,然后基于知識圖譜與意圖識別模型實現智能問答。
3.3.1 知識圖譜構建
采用圖數據庫存儲知識圖譜能有效處理復雜的關系問題。Neo4j數據庫是應用最廣泛的醫學知識圖譜存儲圖數據庫[7]。三元組是知識圖譜的基本構筑單元,其基本形式為“實體-關系-實體”或“實體-屬性- 屬性值”。實體是知識圖譜中的基本元素,關系用來描述兩個實體之間的聯系,而屬性則用來刻畫實體內部的特征[7]。知識圖譜的構建步驟如下。
1) 整理數據:通過爬蟲與人工整理相結合的方式整理數據,數據包括經絡穴位信息、疾病的穴位推拿信息以及中草藥敷貼信息,數據來源于權威網站以及教材、書籍文獻等。
2) 提取三元組:從整理的數據中抽取三元組,涵蓋疾病與癥狀、穴位與推拿技法、推拿技法與病證、方劑與草藥、方劑與病證、草藥與病證等。首先,用Ex?cel表格整理“實體-屬性-屬性值”類型的三元組,第一列為實體名,其他列為屬性值。例如,推拿技法“開天門”有技法概要、取穴部位、手法、手法圖解等屬性。不同實體因其屬性數量與名稱不同需要用不同的Ex?cel表格存儲。然后,使用三列的Excel表格整理“實體-關系-實體”類型的三元組,第一列是實體名稱,第二列是關系名稱,第三列是實體名稱。例如:“補脾經”-主治-“消化不良”,其中補脾經是推拿技法,消化不良是病證,兩者是主治關系。
3) 構建知識圖譜:使用Python讀取Excel表格數據,利用Py2neo庫中的方法操作Neo4j圖數據庫批量創建實體節點以及實體之間的聯系。
3.3.2 BERT 模型構建
智能問答的意圖識別是一個分類問題,本研究使用BERT模型對意圖進行分類,從而實現用戶意圖的識別。BERT模型擁有雙向Transformer的多層編碼器結構,在處理自然語言任務時展現出強大的表達和上下文理解能力。BERT模型訓練過程如下。
1) 構造數據集:采用自動生成的方式構造數據集,每條數據包含問題及其對應的意圖類型。意圖類型來自三元組中的關系名稱和屬性名稱,通過總結關系和屬性的各種可能問題模板,采用主題詞填充方式自動生成相應問題。
2) 編寫代碼:模型類包括初始化函數、模型加載函數、數據加載函數、模型訓練函數、模型評估函數等。在初始化函數中加載BERT模型中的分詞器方法為BertTokenizer.from_pretrained('bert-base-chinese'),模型為專門用于序列分類任務的BertForSequence?Classification模型。模型訓練函數中優化器為torch.optim.Adam,學習率設定為1e-5,交叉熵損失函數為nn.CrossEntropyLoss()。
3) 模型訓練:將數據集分為兩部分,80%為訓練數據集,20%為測試數據集。訓練模型的batch_size 值為8、num_workers值為0、shuffle值為true。
4) 模型評估:通過torch.argmax()獲取預測結果,然后將預測結果與真實標簽進行比較,計算正確預測的樣本比例,得到準確率。最終訓練出的模型準確率達到96.45%。用Flask 框架將訓練好的模型封裝為HTTP接口供智能問答調用。
3.3.3 智能問答流程
在問答式交互中,關鍵步驟如下。
1) 獲取用戶問題:用戶通過文本或語音方式輸入經絡穴位、推拿以及中草藥貼敷相關問題。如果是語音輸入,系統調用第三方接口將語音轉換為文本。
2) 主題識別:使用Python的Jieba庫對用戶的問句進行分詞,遍歷分詞結果向量檢索主題詞庫,檢索成功則主題識別完成。
3) 意圖識別:調用預先訓練好的BERT 模型的HTTP接口進行分類識別。
4) 答案生成:系統根據識別的意圖,選擇相應意圖類型的Neo4j數據庫查詢語句模板,替換其中的主題與意圖,生成Neo4j查詢語句,從Neo4j數據庫中篩選出正確的數據。將數據填入對應問題類型的答案模板,生成最終的文本答案。如果是語音播報模式,則通過語音技術將文本答案用語音播報輸出。
智能問答能精準理解用戶意圖并準確獲取答案,賦予人體模型“活性”,使用戶能夠快速精準地獲取中醫經絡穴位知識。
4 結束語
在國家大力支持中醫藥文化傳承創新發展及“健康中國”建設的背景下,融合現代AR技術與智能問答技術的可智能交互人體經絡模型為中醫文化的傳承與發展注入新的動力。AR技術的融入實現了模型的真實場景虛擬投放與縮放旋轉操作,以及模型上穴位的顯示控制,增強了人體模型投放與交互的靈活性。結合穴位的多模態資源,為用戶提供沉浸式體驗;智能問答交互進一步提高模型的活性,為用戶提供生成式體驗。本研究將在智能問答準確度的提升、大模型的融入以及經絡穴位與五臟六腑的療效關系可視化方面繼續探索。
參考文獻:
[1] 洪滔,李慶媛,吳志輝,等.VR/AR技術在中醫藥高校教學和實踐中的探討[J].江西中醫藥大學學報,2023,35(1):94-97.
[2] 汪祥春.AR開發權威指南:基于AR Foundation[M].北京:人民郵電出版社,2020.
[3] 國務院辦公廳.國務院辦公廳關于印發“十四五”中醫藥發展規劃的通知[EB/OL]. [2022-06-30]. https://www. gov. cn/gongbao/content/2022/content_5686029.htm.
[4] 規劃發展與信息化司.關于開展健康中國行動中醫藥健康促進專項活動的通知[EB/OL].[2022-10-21].http://www.nhc.gov. cn/guihuaxxs/s7788/202209/4da23a81906b4a0fa343dcc701c3c694.shtml.
[5] 張建斌.經絡理論的斷代研究與學術軌跡考察[J].南京中醫藥大學學報,2021,37(6):801-806,811.
[6] 李世琪,張浩,刁宇峰.基于醫療知識圖譜的問答系統研究[J].內蒙古民族大學學報(自然科學版),2024,39(5):68-73.
[7] 史政一,呂君可,黃弘.基于Neo4j的城市地下管道信息知識圖譜構建研究[J].中國安全生產科學技術,2024,20(6):5-10.
【通聯編輯:謝媛媛】
基金項目:湖南省教育廳科學研究項目:AR 智能人體經絡儀關鍵技術研究(項目編號:23C0160) ;省級大學生創新創業訓練計劃項目:AR 智能人體經絡儀的設計與實現(項目編號:S202310541134)