專利名稱:海量多道神經(jīng)信息綜合處理系統(tǒng)及其控制方法
技術領域:
本發(fā)明涉及神經(jīng)電生理信息數(shù)據(jù)處理領域。尤其涉及一種操作多通道神經(jīng)電生理數(shù)據(jù)的 組件化綜合處理系統(tǒng)及其控制方法。
背景技術:
在神經(jīng)信息處理領域,研究人員面對的信息一般具有(1)海量的數(shù)據(jù)大小;(2)復 雜的數(shù)據(jù)定義;(3)靈活的數(shù)據(jù)處理方法等特征。 一次典型的神經(jīng)電生理實驗可產(chǎn)生大于2 G字節(jié)的實驗數(shù)據(jù),此實驗數(shù)據(jù)通常包含多個通道的時變的神經(jīng)電信號。根據(jù)實驗目的,數(shù) 據(jù)的具體定義往往是復雜多變的,例通道數(shù)目的動態(tài)變化、刺激參數(shù)的指定等。同時,對 實驗數(shù)據(jù)的處理流程體現(xiàn)出靈活多變的特征。根據(jù)實驗數(shù)據(jù)的時空特性,數(shù)據(jù)處理流程需要 指派不同算法。算法須滿足動態(tài)增加、刪除、修改的需求。此外,由于神經(jīng)電生理信息數(shù)據(jù) 量龐大,研究人員對各批次數(shù)據(jù)需要分別指派不同運算,并根據(jù)運算結果進行后續(xù)分析,這 對數(shù)據(jù)處理初步結果的即時可視化提出了迫切需求。此外,科學研究的最終成果需要產(chǎn)生印 刷質量的結果圖,例如線圖、框圖、餅圖等。因此可視化結果必須滿足科研刊物出版要求( 如大小、灰度、清晰度等)。然而,現(xiàn)有組件無法滿足上述實驗數(shù)據(jù)的處理要求。
在目前神經(jīng)電生理實驗數(shù)據(jù)處理過程中,數(shù)據(jù)采集、存儲、處理和可視化過程一般是由 各自分立的軟件完成,缺乏統(tǒng)一的工作流管理和控制框架。并且,(1)數(shù)據(jù)采集對具體硬 件和操作系統(tǒng)環(huán)境高度依賴;(2)數(shù)據(jù)讀寫對廠商定義的具體文件格式高度依賴,并且在 存儲管理上缺乏對數(shù)據(jù)文件描述的索引和搜索;(3)數(shù)據(jù)處理缺乏定制性,僅能按照指定 的順序運行現(xiàn)有的處理算法,算法邏輯的新增和修改十分困難;(4)缺少一種批量處理符 合指定條件數(shù)據(jù)的自動化機制;(5)數(shù)據(jù)可視化與數(shù)據(jù)處理被硬編碼,無法增加新的繪制 方法或修改已有的方法,并且可視化結果與出版要求差距大,無法直接用于出版。
神經(jīng)電生理研究是一個從(1)實驗設計;(2)實驗數(shù)據(jù)產(chǎn)生、分析、處理;(3)根 據(jù)已有結果修正實驗設計;(4)獲得最終實驗結果等的完整流程。現(xiàn)有各階段分別由分立軟件完成,這提出了兩個問題(1)如何保證各軟件間高效可靠的數(shù)據(jù)交換;(2)如何從 全局角度保存實驗處理和分析流程,便于重現(xiàn)實驗步驟,提高計算機輔助實驗設計和分析的 效率。因此,需要一種適用于神經(jīng)電生理研究的組件化并且可擴展的綜合處理系統(tǒng)。
發(fā)明內(nèi)容
針對上述技術問題,本發(fā)明提出一種海量多道神經(jīng)信息綜合處理系統(tǒng)及其控制方法,實 現(xiàn)神經(jīng)信息的采集、處理、可視化三個過程的整合和批處理,并確保處理過程中數(shù)據(jù)流和控 制流的一致性和可再現(xiàn)性。
為解決上述技術問題,本發(fā)明提出的一種海量多道神經(jīng)信息綜合處理系統(tǒng),其特征在于 ,包括腳本驅動控制組件、數(shù)據(jù)獲取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件;
所述腳本驅動控制組件,用于提供用戶交互控制界面,所述用戶交互控制界面接受用戶 指令,生成腳本命令;所述腳本驅動控制組件解釋腳本命令,調(diào)用所述數(shù)據(jù)獲取操縱組件、 數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件執(zhí)行相應任務,并向用戶反饋處理結果;
所述數(shù)據(jù)獲取操縱組件,連接腳本驅動控制組件、神經(jīng)電生理實驗系統(tǒng)、數(shù)據(jù)讀寫系統(tǒng) ,用于接受腳本驅動控制組件發(fā)出的數(shù)據(jù)獲取操縱請求,驅動所述神經(jīng)電生理實驗系統(tǒng)動作 ,并接收所述神經(jīng)電生理實驗系統(tǒng)的返回數(shù)據(jù);或者,控制所述數(shù)據(jù)讀寫系統(tǒng)進行數(shù)據(jù)讀寫 ;然后,向腳本驅動控制組件返回處理結果;
所述數(shù)據(jù)分析處理組件,連接腳本驅動控制組件,用于接受腳本驅動控制組件發(fā)起的數(shù) 據(jù)分析處理請求,調(diào)用各種數(shù)據(jù)分析處理算法對神經(jīng)電生理信息數(shù)據(jù)分析處理,將歷史的分 析處理算法及其數(shù)據(jù)保存在數(shù)據(jù)文件中,并向腳本驅動控制組件返回處理結果;
所述數(shù)據(jù)可視化處理組件,用于接受腳本驅動控制組件發(fā)起的可視化處理請求,調(diào)用各 種數(shù)據(jù)可視化處理算法對神經(jīng)電生理信息數(shù)據(jù)進行可視化處理,將歷史的可視化處理算法及 其數(shù)據(jù)保存在數(shù)據(jù)文件中,并向腳本驅動控制組件返回處理結果。
優(yōu)選的,所述腳本驅動控制組件包括命令行交互和腳本文件接口單元,系統(tǒng)指令解析 單元,用戶指令解析單元,任務執(zhí)行時間規(guī)劃單元,任務狀態(tài)保存和監(jiān)控單元,任務執(zhí)行接 口單元,
所述命令行交互和腳本文件接口單元,用于接收用戶命令,并識別用戶命令中的工作規(guī) 劃指令,將所述工作規(guī)劃指令提交至所述任務執(zhí)行時間規(guī)劃單元;將用戶命令中的非工作規(guī) 劃指令提交至所述系統(tǒng)指令解析單元;并接收所述系統(tǒng)指令解析單元返回的非工作規(guī)劃指令
9,識別為用戶指令提交至所述用戶指令解析單元;
所述系統(tǒng)指令解析單元,用于識別非工作規(guī)劃指令中的系統(tǒng)指令,將所述系統(tǒng)指令生成 系統(tǒng)指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;并將其不能識別的非工作規(guī)劃指令返 回所述命令行交互和腳本文件接口單元;
所述用戶指令解析單元,用于接受所述命令行交互和腳本文件接口單元提交的用戶指令 ,生成用戶指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;
所述任務執(zhí)行時間規(guī)劃單元,用于根據(jù)所述工作規(guī)劃指令對所述系統(tǒng)指令系統(tǒng)調(diào)用、用 戶指令系統(tǒng)調(diào)用進行優(yōu)先順序安排,生成任務執(zhí)行流,并提交至任務狀態(tài)保存和監(jiān)控單元;
所述任務狀態(tài)保存和監(jiān)控單元,用于管理和調(diào)用任務執(zhí)行接口 ,
所述任務執(zhí)行接口,用于執(zhí)行所述系統(tǒng)指令系統(tǒng)調(diào)用、用戶指令系統(tǒng)調(diào)用,控制所述數(shù) 據(jù)獲取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件執(zhí)行任務。
優(yōu)選的,所述數(shù)據(jù)獲取操縱組件包括數(shù)據(jù)請求和數(shù)據(jù)交換接口單元,硬件請求代理層 單元,硬件控制組件,文件請求代理層單元,文件協(xié)議組件,數(shù)據(jù)庫組件;
所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元,用于接收腳本驅動控制組件發(fā)起的數(shù)據(jù)處理請求, 判斷所述數(shù)據(jù)處理請求的目標類型為神經(jīng)電生理實驗操作還是數(shù)據(jù)讀寫操作?若為神經(jīng)電生 理實驗操作請求,則調(diào)用所述硬件請求代理層單元;若為數(shù)據(jù)讀寫操作請求,調(diào)用文件請求 代理層單元,最終向所述腳本驅動控制組件返回結果;
所述硬件請求代理層單元,用于根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用所 述硬件控制組件,
所述硬件控制組件連接包括所述神經(jīng)電生理數(shù)據(jù)采集裝置、神經(jīng)電生理刺激輸出裝置的 神經(jīng)電生理實驗系統(tǒng),用于驅動包括所述神經(jīng)電生理數(shù)據(jù)采集裝置、神經(jīng)電生理刺激輸出裝 置動作,根據(jù)所述神經(jīng)電生理實驗系統(tǒng)的輸出結果向所述硬件請求代理層單元返回包括數(shù)據(jù) 及狀態(tài)字的處理結果;
所述文件請求代理層單元,用于根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用數(shù) 據(jù)庫組件或所述文件協(xié)議組件,
所述數(shù)據(jù)庫組件,用于根據(jù)所述文件請求代理層單元的包含文件特征査詢的SQL字串的 數(shù)據(jù)査詢和/或寫入請求,調(diào)用數(shù)據(jù)庫執(zhí)行査詢指令或者調(diào)用所述文件協(xié)議組件,并向所述 數(shù)據(jù)請求和數(shù)據(jù)交換接口單元返回包括數(shù)據(jù)及狀態(tài)字的文件操作結果;
所述文件協(xié)議組件,用于直接調(diào)用文件存儲設備進行文件儲存處理,并向其自身的調(diào)用 者返回結果。優(yōu)選的,所述數(shù)據(jù)分析處理組件包括處理請求解釋與結果反饋接口,數(shù)據(jù)輸入層組件, 處理算法托管層組件,運算結果輸出接口,處理算法執(zhí)行單元;
所述處理請求解釋與結果反饋接口,用于接收所述腳本驅動控制組件發(fā)起的數(shù)據(jù)分析處 理請求,調(diào)用所述數(shù)據(jù)輸入層組件,處理算法托管層組件進行處理,并向所述腳本驅動控制 組件返回處理結果;
所述數(shù)據(jù)輸入層組件,用于接收所述處理請求解釋與結果反饋接口發(fā)出的數(shù)據(jù)流對象, 將所述數(shù)據(jù)流對象提交所述處理算法單元進行處理,
所述處理算法托管層組件,用于接收所述處理請求解釋與結果反饋接口發(fā)出的指令流對 象,調(diào)用所述處理算法單元進行處理,
所述處理算法執(zhí)行單元,用于根據(jù)所述數(shù)據(jù)流對象、指令流對象進行運算處理,運算處 理結束后向所述算法托管層組件返回運行狀態(tài)字,運算結果數(shù)據(jù)通過所述運算結果輸出接口 輸出;
所述運算結果輸出接口,接受來自所述處理算法執(zhí)行單元的輸出結果,并向所述處理請 求解釋與結果反饋接口返回。
優(yōu)選的,所述數(shù)據(jù)可視化處理組件包括可視化請求與結果傳送接口,可視化方法執(zhí)行單
元,
所述可視化請求與結果傳送接口用于接收來自腳本驅動控制組件發(fā)起的數(shù)據(jù)可視化請求 ,調(diào)用所述可視化方法執(zhí)行單元,并向腳本驅動控制組件返回結果;
所述可視化方法執(zhí)行單元,用于根據(jù)所述數(shù)據(jù)可視化請求執(zhí)行結果圖形的繪制,和/或 將圖形存儲在文件系統(tǒng)和/或數(shù)據(jù)庫中,并將圖形向可視化請求與結果傳送接口返回結果。
本發(fā)明同時還提出了一種海量多道神經(jīng)信息綜合處理系統(tǒng)的控制方法,包括以下步驟
裝載所述腳本驅動控制組件;
運行所述腳本驅動控制組件;
從人機交互界面輸入命令行腳本;
所述腳本驅動控制組件解析所述命令行腳本,生成工作指令序列;
所述腳本驅動控制組件順序執(zhí)行所述工作指令序列,并對每條所述工作指令賦予狀態(tài)對
象;
當某工作指令調(diào)用所述數(shù)據(jù)獲取操縱組件時,所述數(shù)據(jù)獲取操縱組件根據(jù)所述工作指令 調(diào)用,驅動所述神經(jīng)電生理實驗系統(tǒng)動作,并接收所述神經(jīng)電生理實驗系統(tǒng)的返回數(shù)據(jù);或 者,控制所述數(shù)據(jù)讀寫系統(tǒng)進行數(shù)據(jù)讀寫;然后,向腳本驅動控制組件返回處理結果;當某工作指令調(diào)用所述數(shù)據(jù)分析處理組件時,所述數(shù)據(jù)分析處理組件調(diào)用各種數(shù)據(jù)分析 處理算法對神經(jīng)電生理信息數(shù)據(jù)分析處理,向腳本驅動控制組件返回處理結果,并提交歷史 的分析處理算法及其數(shù)據(jù);
當某工作指令調(diào)用所述數(shù)據(jù)可視化處理組件時,所述數(shù)據(jù)可視化處理組件調(diào)用各種數(shù)據(jù) 可視化處理算法對神經(jīng)電生理信息數(shù)據(jù)進行可視化處理,向腳本驅動控制組件返回處理結果 ,并提交歷史的可視化處理算法及其數(shù)據(jù);
繼續(xù)執(zhí)行下一條工作指令,直至工作指令序列中的所有指令執(zhí)行完畢。
作為優(yōu)選方案,所述裝載腳本驅動控制組件包括以下步驟
裝載所述命令行交互和腳本文件接口單元,
裝載所述系統(tǒng)指令解析單元、用戶指令解析單元,
裝載所述任務執(zhí)行時間規(guī)劃單元,
裝載所述任務狀態(tài)保存和監(jiān)控單元,
裝載所述任務執(zhí)行接口單元。
同樣作為優(yōu)選方案,所述腳本驅動控制組件解析所述命令行腳本,生成工作指令序列, 包括以下步驟
所述命令行交互和腳本文件接口單元接收用戶命令, 識別用戶命令是否為工作規(guī)劃指令?
若是工作規(guī)劃指令,則將工作規(guī)劃指令提交至所述任務執(zhí)行時間規(guī)劃單元;
若非工作規(guī)劃指令,則將非工作規(guī)劃指令提交至所述系統(tǒng)指令解析單元;所述系統(tǒng)指令 解析單元接收并識別非工作規(guī)劃指令,判斷是否為系統(tǒng)指令?若是系統(tǒng)指令,則將所述系統(tǒng) 指令生成系統(tǒng)指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;
若非系統(tǒng)指令,則將非系統(tǒng)指令返回所述命令行交互和腳本文件接口單元;命令行交互 和腳本文件接口單元將非系統(tǒng)指令識別為用戶指令提交至所述用戶指令解析單元;所述用戶 指令解析單元將用戶指令生成用戶指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;
所述任務執(zhí)行時間規(guī)劃單元根據(jù)所述工作規(guī)劃指令對所述系統(tǒng)指令系統(tǒng)調(diào)用、用戶指令 系統(tǒng)調(diào)用進行優(yōu)先順序安排,生成任務執(zhí)行流,并提交至任務狀態(tài)保存和監(jiān)控單元;
所述任務狀態(tài)保存和監(jiān)控單元管理和調(diào)用任務執(zhí)行接口 ,
所述任務執(zhí)行接口執(zhí)行所述系統(tǒng)指令系統(tǒng)調(diào)用、用戶指令系統(tǒng)調(diào)用,控制所述數(shù)據(jù)獲取 操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件執(zhí)行任務。
同樣作為優(yōu)選方案,所述數(shù)據(jù)獲取操縱組件根據(jù)所述工作指令調(diào)用,驅動所述神經(jīng)電生理實驗系統(tǒng)動作,并接收所述神經(jīng)電生理實驗系統(tǒng)的返回數(shù)據(jù);或者,控制所述數(shù)據(jù)讀寫系 統(tǒng)進行數(shù)據(jù)讀寫;然后,向腳本驅動控制組件返回處理結果,包括以下步驟
所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元接收腳本驅動控制組件發(fā)起的數(shù)據(jù)處理請求, 判斷所述數(shù)據(jù)請求數(shù)據(jù)處理請求的目標類型為神經(jīng)電生理實驗系統(tǒng)操作還是數(shù)據(jù)讀寫操
作?
若為神經(jīng)電生理實驗系統(tǒng)操作請求,則調(diào)用所述硬件請求代理層單元,所述硬件請求代 理層單元根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用所述硬件控制組件,所述硬件 控制組件驅動包括所述神經(jīng)電生理數(shù)據(jù)采集裝置、神經(jīng)電生理刺激輸出裝置的神經(jīng)電生理實 驗系統(tǒng)動作并采集其輸出數(shù)據(jù),向所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元返回包括數(shù)據(jù)及狀態(tài)字 的處理結果,
所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元向所述腳本驅動控制組件返回結果狀態(tài)字,并提交檢 測到的數(shù)據(jù);
若為數(shù)據(jù)讀寫操作請求,則調(diào)用所述文件請求代理層單元,所述文件請求代理層單元根 據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用所述文件協(xié)議組件或調(diào)用所述數(shù)據(jù)庫組件
抓若調(diào)用所述文件協(xié)議組件,則所述文件協(xié)議組件調(diào)用文件存儲設備,所述文件存儲設 備進行文件儲存處理,然后向所述文件協(xié)議組件返回處理結果,所述文件協(xié)議組件向所述文 件請求代理層單元返回處理結果;
抓若調(diào)用所述數(shù)據(jù)庫組件,則數(shù)據(jù)庫組件根據(jù)所述文件請求代理層單元的包含文件特征 査詢的SQL字串的數(shù)據(jù)査詢和/或寫入請求,調(diào)用數(shù)據(jù)庫執(zhí)行査詢指令,并向所述文件請求代 理層單元返回處理結果,所述文件請求代理層單元向所述文件請求代理層單元返回處理結果
所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元向所述腳本驅動控制組件返回結果。 同樣作為優(yōu)選方案,所述數(shù)據(jù)分析處理組件調(diào)用各種數(shù)據(jù)分析處理算法對神經(jīng)電生理信
息數(shù)據(jù)分析處理,向腳本驅動控制組件返回處理結果,并提交歷史的分析處理算法及其數(shù)據(jù)
,包括以下步驟
所述處理請求解釋與結果反饋接口接收所述腳本驅動控制組件發(fā)起的數(shù)據(jù)分析處理請求 ,將所述數(shù)據(jù)分析處理請求解析為包括算法指令流對象、數(shù)據(jù)流對象;
所述數(shù)據(jù)輸入層組件接收所述處理請求解釋與結果反饋接口發(fā)出的數(shù)據(jù)流對象, 所述處理算法托管層接收所述處理請求解釋與結果反饋接口發(fā)出的算法指令流對象,所述算法托管層向所述處理算法執(zhí)行單元査詢,能否處理該算法指令流對象?若是,則 所述處理算法執(zhí)行單元調(diào)用該算法指令流對象對應的具體算法處理從所述數(shù)據(jù)輸入層組件獲 得數(shù)據(jù)流對象,運算結果數(shù)據(jù)返回所述運算結果輸出接口;所述運算結果輸出接口接受來自 所述處理算法執(zhí)行單元的輸出結果,并向所述處理請求解釋與結果反饋接口返回;
否則,向所述算法托管層組件返回"算法不存在"狀態(tài)字,所述算法托管層組件向所述 處理請求解釋與結果反饋接口返回狀態(tài)字;
所述處理請求解釋與結果反饋接口向所述腳本驅動控制組件返回處理結果。
同樣作為優(yōu)選方案,所述數(shù)據(jù)可視化處理組件調(diào)用各種數(shù)據(jù)可視化處理算法對神經(jīng)電生 理信息數(shù)據(jù)進行可視化處理,向腳本驅動控制組件返回處理結果,并提交歷史的可視化處理 算法及其數(shù)據(jù),包括以下步驟
所述可視化請求與結果傳送接口用于接收來自所述腳本驅動控制組件發(fā)起的數(shù)據(jù)可視化 請求,
調(diào)用所述可視化方法執(zhí)行單元,
所述可視化方法執(zhí)行單元執(zhí)行結果圖形的繪制,并向所述可視化請求與結果傳送接口返 回執(zhí)行結果;
所述可視化請求與結果傳送接口向所述腳本驅動控制組件返回結果。 基于上述技術方案,本發(fā)明具有下述整體性能特點
(1) 將多通道神經(jīng)信息采集、處理、可視化過程進行組件化集成融合,建立了統(tǒng)一服 務接口,允許各種具體方法在運行時動態(tài)掛接到三大服務接口上。
(2) 本系統(tǒng)建立了一套可擴展的神經(jīng)信息處理指令集,用于操縱數(shù)據(jù),調(diào)用數(shù)據(jù)處理 算法,啟動不同的可視化方法并輸出。該指令集包括預定義的系統(tǒng)指令和用戶自定義指令兩 部分。系統(tǒng)指令包括對命令流的控制指令和內(nèi)置指令。內(nèi)置指令包括硬件操作指令和內(nèi)置算 法的調(diào)用指令。通過可擴展的指令存儲和調(diào)用機制,用戶可自行編寫算法或掛接外部動態(tài)鏈 接庫,擴展自定義指令集。
(3) 提供了一個可供腳本驅動的處理界面,用于接受并執(zhí)行神經(jīng)信息處理指令集;操 縱神經(jīng)電生理硬件。腳本驅動包含兩層含義, 一方面,腳本內(nèi)容是一系列依次執(zhí)行的神經(jīng)信 息處理指令集,神經(jīng)信息處理界面接受這些指令,執(zhí)行并給以用戶反饋;另一方面,腳本的 輸入和執(zhí)行可以是交互式的依次輸入,也可以是讀入存儲為文件形式的腳本文件,自動解釋 執(zhí)行。通過實施上述技術方案,本發(fā)明能夠達到下列有益效果
(1) 使神經(jīng)信息處理的全過程能夠在一個統(tǒng)一的框架內(nèi)完成。
(2) 能夠在腳本的控制下,批量自動化的完成海量多通道神經(jīng)信息的處理過程,并給 出可視化結果。
(3) 能夠將神經(jīng)電生理信息數(shù)據(jù)處理的流程保存在存儲介質中,提高了數(shù)據(jù)處理的可 重復性和可控性。
(4) 將硬件控制與數(shù)據(jù)處理相結合,能夠根據(jù)神經(jīng)電生理信息數(shù)據(jù)的處理結果,控制 硬件運行,動態(tài)的修改實驗方案。
(5) 通過統(tǒng)一的接口,能夠動態(tài)的擴展處理和可視化算法。
圖l是依照本發(fā)明的一個實施例
圖2是依照本發(fā)明的一個實施例
圖3是依照本發(fā)明的一個實施例
圖4是依照本發(fā)明的一個實施例
圖5是依照本發(fā)明的一個實施例
圖6是依照本發(fā)明的一個實施例 和數(shù)據(jù)流的關系的一種示例。
圖7是依照本發(fā)明的一個實施例 視化方法與數(shù)據(jù)對象相結合的流程圖。
具體實施方案
首先參考圖l,框圖依照本發(fā)明的一個實施例示出了一個可擴展的海量多道神經(jīng)信息綜 合處理系統(tǒng)100。系統(tǒng)100包括但不限于數(shù)據(jù)獲取操縱組件101、數(shù)據(jù)分析處理組件102、數(shù) 據(jù)可視化處理組件103、腳本驅動控制組件104。在一個實施例中,系統(tǒng)100是由一個或多個 組件(如數(shù)據(jù)獲取操縱組件IOI、數(shù)據(jù)分析處理組件102、數(shù)據(jù)可視化處理組件103、腳本 驅動控制組件104)構成的軟件系統(tǒng)。在另一實施例中,系統(tǒng)100是由包括本發(fā)明的實施例的
,顯示出示例系統(tǒng)的整體框圖。
,顯示出數(shù)據(jù)獲取接口層的內(nèi)部運行框圖。
,顯示出數(shù)據(jù)處理接口層的內(nèi)部運行框圖。
,顯示出數(shù)據(jù)可視化接口層的內(nèi)部運行框圖。
,顯示出腳本驅動用戶界面的內(nèi)部運行框圖。
,顯示出系統(tǒng)中指令的執(zhí)行流程,并同時顯示出指令流
,顯示出在一個數(shù)據(jù)對象的生命周期中,各種算法與可
15一個或多個應用和/或軟件系統(tǒng)和電生理硬件系統(tǒng)構成的集成軟件應用系統(tǒng),如多通道神經(jīng) 電生理實驗系統(tǒng)。
數(shù)據(jù)獲取操縱組件101、數(shù)據(jù)分析處理組件102、數(shù)據(jù)可視化處理組件103是各對應服務 的服務接口,是對應服務提供者組件與系統(tǒng)交互的唯一接口,是腳本內(nèi)包含的神經(jīng)信息處理 指令集的內(nèi)部執(zhí)行接口。
圖l中,腳本驅動控制組件104和數(shù)據(jù)獲取操縱組件101間存在數(shù)據(jù)請求和返回的指令和 數(shù)據(jù)流105。指令和數(shù)據(jù)流105中包括,來自腳本驅動控制組件104向數(shù)據(jù)獲取操縱組件101發(fā) 起的數(shù)據(jù)請求指令和/或相應的上傳數(shù)據(jù)流以及數(shù)據(jù)獲取操縱組件101處理后返回的下載數(shù)據(jù) 流。數(shù)據(jù)請求指令包括但不限于對數(shù)據(jù)文件內(nèi)包含的數(shù)據(jù)流的請求、對數(shù)據(jù)流的存儲請求 、對神經(jīng)電生理信號采集硬件的數(shù)據(jù)采集請求、對神經(jīng)電生理刺激硬件的刺激波形輸出請求 等。
圖2示例了一個實施例中,數(shù)據(jù)獲取操縱組件101內(nèi)部的組件關系框圖。數(shù)據(jù)獲取操縱組 件101的主要功能是與硬件和存儲介質交互,完成數(shù)據(jù)寫入和讀出請求。來自腳本驅動控制 組件104的數(shù)據(jù)請求指令105被提交到數(shù)據(jù)請求和數(shù)據(jù)交換接口單元201。數(shù)據(jù)請求和數(shù)據(jù)交 換接口單元201對數(shù)據(jù)請求指令進行分析,判斷其數(shù)據(jù)請求的目標類型。若數(shù)據(jù)請求指令帶 有硬件操作標識符,數(shù)據(jù)請求解釋和數(shù)據(jù)交換接口201則將該指令和/或上傳數(shù)據(jù)流作為一個 硬件指令工作對象21 l傳入硬件請求代理層單元202 。
硬件請求代理層單元202具有兩大功能。 一方面,它是數(shù)據(jù)請求指令的抽象層。硬件的 數(shù)據(jù)請求指令包括但不限于數(shù)據(jù)采集卡開始采集、停止采集、電生理刺激器刺激模式選擇 、刺激程序上傳、刺激數(shù)據(jù)流的指定、開始刺激、停止刺激等。這些硬件請求指令包含在數(shù) 據(jù)請求指令流105中,并封裝為硬件指令工作對象211的一部分。硬件請求代理層單元202接 受工作對象211中的硬件請求指令,并根據(jù)硬件操作標識符中的硬件類型和型號調(diào)用不同硬 件控制組件204。在一個實施例中,硬件類型包括采集設備(如數(shù)據(jù)采集硬件207)和刺激輸 出設備(如電刺激硬件208)。硬件型號是指具體的設備型號,不同的設備型號對應了不同 的硬件控制組件204。另一方面,硬件請求代理層單元202是各個硬件控制組件204的服務宿 主。硬件控制組件204面向具體的硬件,將硬件請求代理層單元202轉發(fā)的硬件請求指令213 轉換成對應硬件驅動程序接口的控制字,操縱具體硬件工作。
在一個具體的實施例中,進行硬件操作時,指令和數(shù)據(jù)流105中的上傳數(shù)據(jù)流封裝為硬 件指令工作對象211的另一部分,并通過硬件控制組件204提交給具體的硬件驅動程序。對于數(shù)據(jù)采集硬件207,該硬件不處理上傳數(shù)據(jù)流,但能夠返回一個連續(xù)的數(shù)據(jù)流,該 數(shù)據(jù)流將作為硬件請求指令213的結果返回,并轉換成硬件指令工作對象211的一部分返回數(shù) 據(jù)請求解釋和數(shù)據(jù)交換接口201,最終作為指令和數(shù)據(jù)流105中返回的數(shù)據(jù)流。同時,硬件控 制組件應當根據(jù)操作的成功與否返回一個狀態(tài)字,該狀態(tài)字也作為硬件請求指令213的結果 返回,同屬于硬件指令工作對象211的一部分,最終作為指令和數(shù)據(jù)流105中返回的指令執(zhí)行 狀態(tài)字。
在一個具體的實施例中,對于電刺激硬件208,該硬件將上傳數(shù)據(jù)流視為刺激程序,但 沒有數(shù)據(jù)流返回,僅有指令執(zhí)行狀態(tài)字返回數(shù)據(jù)請求解釋和數(shù)據(jù)交換接口201,并最終作為 指令和數(shù)據(jù)流105中返回的指令執(zhí)行狀態(tài)字。這種情況下,指令和數(shù)據(jù)流105中返回的數(shù)據(jù)流 為空。
若數(shù)據(jù)請求指令不帶有硬件操作標示符,則數(shù)據(jù)請求解釋和數(shù)據(jù)交換接口201將該指令 和/或上傳數(shù)據(jù)流包裝為存儲系統(tǒng)工作對象212的一部分提交到文件請求代理層單元203。
文件請求代理層單元203是解釋從腳本驅動控制組件104中傳遞來的文件相關的數(shù)據(jù)請求 指令的最終解釋者。文件相關的數(shù)據(jù)請求指令可包括但不限于包含文件具體存儲位置的數(shù) 據(jù)請求指令、包含文件特征査詢的SQL字串的數(shù)據(jù)請求指令、包含文件具體存儲位置和文件 特征的數(shù)據(jù)讀寫指令。對于包含文件具體存儲位置的數(shù)據(jù)請求指令,文件請求代理層單元 203根據(jù)數(shù)據(jù)請求指令中的文件類型標識符,向不同的文件協(xié)議組件206發(fā)出文件請求214。 文件協(xié)議組件206直接向文件存儲設施209 (如硬盤存儲器)請求文件,并按照不同的文件 格式協(xié)議解釋文件數(shù)據(jù),將數(shù)據(jù)流作為文件請求214的結果返回給文件請求代理層單元203, 并作為存儲系統(tǒng)工作對象212的一部分返回數(shù)據(jù)請求解釋和數(shù)據(jù)交換接口201,最終作為指令 和數(shù)據(jù)流105中返回的數(shù)據(jù)流。同時,文件協(xié)議組件206應當根據(jù)文件訪問的成功與否返回一 個狀態(tài)字,該狀態(tài)字也作為文件請求214的結果返回,同屬于存儲系統(tǒng)工作對象212的一部分 ,最終作為指令和數(shù)據(jù)流105中返回的指令執(zhí)行狀態(tài)字。
對于包含文件特征査詢的SQL字串的數(shù)據(jù)請求指令,文件請求代理層單元203設置數(shù)據(jù)庫 請求215中的査詢條目狀態(tài)字為真,并將執(zhí)行語句設置為該SQL字串,最后把數(shù)據(jù)庫請求215 提交給數(shù)據(jù)庫組件205。包含文件特征査詢的SQL字串的數(shù)據(jù)請求指令可包括但不限于根據(jù) 文件命名規(guī)則進行的査詢、根據(jù)文件所對應的特征信息,例如數(shù)據(jù)的元信息,包括實驗日期 、實驗操作人、實驗類型、實驗目的、數(shù)據(jù)處理所使用的算法類型等數(shù)據(jù)文件的附加信息, 這些信息不是數(shù)據(jù)本身,但它們能夠唯一的將數(shù)據(jù)產(chǎn)生的附屬情況描述出來。進行査詢時, 數(shù)據(jù)庫組件205將SQL請求提交給數(shù)據(jù)庫程序210。若査詢得到空結果,則數(shù)據(jù)庫組件205將把數(shù)據(jù)庫請求215的返回結果設置査詢失敗狀態(tài)字。相應的,文件請求代理層單元203接受到此 失敗狀態(tài)字后,設置存儲系統(tǒng)工作對象212的狀態(tài)字為失敗,并設置212的數(shù)據(jù)流為空,狀態(tài) 字和數(shù)據(jù)流最終作為指令和數(shù)據(jù)流105的執(zhí)行結果返回。若査詢得到l個或多個文件條目,數(shù) 據(jù)庫組件205將數(shù)據(jù)庫査詢結果和査詢成功狀態(tài)字作為數(shù)據(jù)庫請求215的結果一并返回給文件 請求代理層單元203。數(shù)據(jù)庫査詢結果包括文件代理請求層203獲取到文件條目名稱后,按照 "包含文件具體存儲位置的數(shù)據(jù)請求指令"的執(zhí)行方法,向文件協(xié)議組件206發(fā)起請求,這 將得到兩個結果文件請求狀態(tài)字和文件請求數(shù)據(jù)流。文件代理請求層203將文件請求狀態(tài) 字、數(shù)據(jù)庫査詢請求狀態(tài)字和文件請求數(shù)據(jù)流一并作為存儲系統(tǒng)工作對象212的執(zhí)行結果返 回數(shù)據(jù)請求解釋和數(shù)據(jù)交換接口201,最終作為指令和數(shù)據(jù)流105的執(zhí)行結果返回。
對于包含文件具體存儲位置和文件特征的數(shù)據(jù)讀寫指令,文件請求代理層單元203設置 數(shù)據(jù)庫請求215中的添加條目狀態(tài)字為真,并將執(zhí)行語句設置成文件特征字串。最后把數(shù)據(jù) 庫請求215提交給數(shù)據(jù)庫組件205。數(shù)據(jù)庫組件205首先根據(jù)數(shù)據(jù)庫請求215中的文件特征關鍵 詞,向數(shù)據(jù)庫程序210査詢是否存在同樣的索引條目。若已經(jīng)存在,則數(shù)據(jù)庫組件205將把數(shù) 據(jù)庫請求215的返回結果設置添加失敗狀態(tài)字。相應的,文件請求代理層單元203接受到此失 敗狀態(tài)字后,設置存儲系統(tǒng)工作對象212的狀態(tài)字為失敗,并設置212的數(shù)據(jù)流為空,狀態(tài)字 和數(shù)據(jù)流最終作為指令和數(shù)據(jù)流105的執(zhí)行結果返回。若數(shù)據(jù)庫中不存在同樣的索引條目, 則數(shù)據(jù)庫組件205將把詞條文件特征存儲到數(shù)據(jù)庫中,并根據(jù)數(shù)據(jù)庫程序210實際的運行結果 返回數(shù)據(jù)庫寫入執(zhí)行狀態(tài)。在向數(shù)據(jù)庫組件205發(fā)出請求的同時,文件請求代理層單元203將 包含在存儲系統(tǒng)工作對象212中的上傳數(shù)據(jù)流和文件具體存儲位置提交給文件協(xié)議組件206。 文件協(xié)議組件206將數(shù)據(jù)流寫入磁盤文件,并返回文件寫入執(zhí)行狀態(tài)。文件寫入執(zhí)行狀態(tài)和 數(shù)據(jù)庫寫入執(zhí)行狀態(tài)被作為存儲系統(tǒng)工作對象212的狀態(tài)字返回數(shù)據(jù)請求和數(shù)據(jù)交換接口單 元201,最終作為指令和數(shù)據(jù)流105的執(zhí)行結果返回。
圖3示例了一個實施例中,數(shù)據(jù)分析處理組件102的內(nèi)部的組件關系框圖。數(shù)據(jù)處理組件 的主要功能是, 一方面對各種數(shù)據(jù)處理算法暴露系統(tǒng)的應用程序編程接口,使這些算法掛接 到神經(jīng)信息處理的工作流程中;另一方面,對腳本驅動控制組件104提交現(xiàn)有算法的列表供 用戶調(diào)用。本發(fā)明的一個具體實施例中,數(shù)據(jù)與數(shù)據(jù)處理算法是松散耦合的,這定義為用 戶可根據(jù)需求動態(tài)地將各種數(shù)據(jù)處理算法掛接到數(shù)據(jù)流上進行處理。同時數(shù)據(jù)流經(jīng)的處理算 法被作為數(shù)據(jù)的處理歷史保存在數(shù)據(jù)文件的特征表中。
來自腳本驅動控制組件104的處理請求指令106被提交到處理請求解釋與結果反饋接口 301 。處理請求解釋與結果反饋接口301將來自腳本驅動控制組件104的數(shù)據(jù)流作為內(nèi)部數(shù)據(jù)流工作對象306提交到數(shù)據(jù)輸入層組件302,將指令流作為內(nèi)部指令流工作對象307提交到處 理算法托管層組件303。
數(shù)據(jù)輸入層組件302可對數(shù)據(jù)進行必要的緩存,并向具體的處理算法執(zhí)行單元305提供數(shù) 據(jù)請求通道309,數(shù)據(jù)請求通道309對處理算法執(zhí)行單元305屏蔽了數(shù)據(jù)獲取的細節(jié),僅暴露 出數(shù)據(jù)的本質屬性,例如通道號、采集時間軸、事件信息等。處理算法執(zhí)行單元305運行 時可以隨時通過數(shù)據(jù)請求通道309向數(shù)據(jù)輸入層組件302獲取數(shù)據(jù)。在一個具體的實施例中, 一個處理算法執(zhí)行單元305可能需要多個數(shù)據(jù)流。對于多個數(shù)據(jù)流的情況,數(shù)據(jù)流的數(shù)目應 當由用戶在腳本驅動控制組件104中給出,處理請求指令106中已經(jīng)包含有指向所需數(shù)據(jù)流的 地址。數(shù)據(jù)輸入層組件302不發(fā)起新的數(shù)據(jù)請求。需要說明的是,數(shù)據(jù)輸入層組件302的職責 是對處理算法執(zhí)行單元305提供數(shù)據(jù)流,因此并不限制在其他的實施例中,數(shù)據(jù)輸入層組件 302也能發(fā)起新的數(shù)據(jù)請求。
處理算法托管層組件303是處理算法執(zhí)行單元305與系統(tǒng)100交互的關鍵。在一個實施例 中,可能存在N個具體的處理算法組件305,這些算法依照預先定義的格式存儲在指定的文件 系統(tǒng)位置中。系統(tǒng)100啟動時,處理算法托管層對指定的文件系統(tǒng)位置進行掃描,獲取各處 理算法組件305的文件位置和調(diào)用格式。在其他的實施例中,可通過其他方式將處理算法注 冊到處理算法托管層組件303。
腳本驅動控制組件104將處理請求提交到處理請求與結果反饋接口301后,該接口將處理 請求中的算法指令進一步提交到處理算法托管層組件303。處理算法托管層組件303査詢已注 冊的算法程序,査詢成功則調(diào)用該處理算法,并將控制權交由該算法,否則返回"算法不存 在"狀態(tài)字。
處理算法執(zhí)行單元305在得到處理算法托管層組件303轉交的控制權后,通過數(shù)據(jù)層302 獲得輸入的計算數(shù)據(jù);處理算法運行結束,將向處理算法托管層組件303返回運行狀態(tài)字( 如成功、失敗、失敗代碼、失敗原因),運算結果通過運算結果輸出接口304輸出。運算 結果輸出接口304—方面接受來自處理算法的輸出結果311,并對該結果進行可能的緩存(例 如可緩存在磁盤文件中,也可緩存在內(nèi)存指定的區(qū)域中);另一方面,結果層304向處理 請求解釋與結果反饋接口301提供一個操作運算結果的指針308。處理請求解釋與結果反饋接 口301將處理算法執(zhí)行單元305運行狀態(tài)字與操作結果指針308—并作為處理請求指令106的運 行結果返回腳本驅動控制組件104。
針對某個具體的算法305,數(shù)據(jù)分析處理組件102能夠支持其的各種不同語言實現(xiàn)。在一 個實施例中,算法305可以使用C/C+H吾言編寫并編譯成可執(zhí)行程序,最終由處理算法托管層組件303調(diào)用。在另一個實施例中,算法305可以使用工程計算語言(如Matlab)編寫,并在 托管環(huán)境中運行,同時為處理算法托管層組件303所調(diào)用。在其他的實施例中,遵循算法托 管層的函數(shù)定義的各種利用其它腳本語言(如Python)編寫的算法或可執(zhí)行程序同樣能夠注 冊到處理算法托管層組件303中,并借助腳本驅動控制組件104被用戶執(zhí)行。
圖4示例了一個實施例中,數(shù)據(jù)可視化處理組件103的內(nèi)部的組件關系框圖。數(shù)據(jù)可視化 處理組件103的主要功能是, 一方面對各種數(shù)據(jù)可視化算法暴露系統(tǒng)的應用程序編程接口 , 使這些可視化方法掛接到神經(jīng)信息處理的工作流程中;另一方面,對腳本驅動控制組件104
提交現(xiàn)有可視化方法的列表供用戶調(diào)用。本發(fā)明的一個具體實施例中,數(shù)據(jù)處理結果與數(shù)據(jù) 可視化方法同樣是松散耦合的,這定義為用戶可根據(jù)需求動態(tài)地將各種數(shù)據(jù)可視化方法掛 接到數(shù)據(jù)流上進行處理。同時數(shù)據(jù)流經(jīng)的可視化方法被作為數(shù)據(jù)的處理歷史保存在數(shù)據(jù)文件 的特征表中。
來自腳本驅動控制組件104的數(shù)據(jù)可視化請求107被提交到可視化請求與結果傳送接口 401。數(shù)據(jù)可視化請求107包括可視化指令和需要可視化的數(shù)據(jù)流。每一個可視化指令對應著 一個可視化方法執(zhí)行單元402。在一個實施例中,可能存在N個具體的可視化方法執(zhí)行單元 402,這些組件依照預先定義的格式存儲在指定的文件系統(tǒng)位置中。系統(tǒng)100啟動時,可視化 請求與結果傳送接口401對指定的文件系統(tǒng)位置進行掃描,獲取各可視化方法執(zhí)行單元402的 文件位置和調(diào)用格式。在其他的實施例中,可通過其他方式將可視化方法402注冊到可視化 請求與結果傳送接口401。
來自可視化請求與結果傳送接口的指令參數(shù)和數(shù)據(jù)流403提交給可視化方法執(zhí)行單元402 后,可視化方法執(zhí)行單元402完成對結果圖形的繪制,可以將圖形存儲在用戶指定的文件路 徑下,也可以向可視化請求與結果傳送接口返回一個圖形句柄,便于將圖形與原始數(shù)據(jù)一并 存儲在數(shù)據(jù)庫中。
在一個實施例中,可視化方法執(zhí)行單元402可以用不同的程序語言實現(xiàn)。數(shù)據(jù)可視化處 理組件103可以將對可視化方法執(zhí)行單元402的請求轉換成對[/〔++語言的可執(zhí)行程序的帶參 數(shù)調(diào)用,以及各種工程計算語言(如Matlab)和腳本語言(如Python、 Lua等)。
圖5中示例了一個實施例中,腳本驅動控制組件104的內(nèi)部的組件關系框圖。腳本驅動控 制組件104的主要功能包括首先,腳本驅動控制組件104是系統(tǒng)100與用戶交互的界面。用 戶給出的所有指令均以腳本命令的形式向腳本驅動控制組件104發(fā)出,腳本驅動控制組件104 執(zhí)行命令并向用戶給出反饋;其次,腳本驅動控制組件104是系統(tǒng)內(nèi)部工作流指派的關鍵。 神經(jīng)信息處理流程有嚴格的時間順序,腳本交互指令能夠根據(jù)用戶給定的指令,規(guī)劃指令的
20運行時間和處理器分配,支持多處理器的并行計算;第三,針對神經(jīng)信息運算耗時長,可能 長時間無人值守的特點,腳本驅動控制組件104對指令執(zhí)行過程監(jiān)控,在運行每一條指令前
都保存了環(huán)境狀態(tài),某一條指令的失敗或系統(tǒng)ioo的意外崩潰不影響整個工作流的繼續(xù)執(zhí)行 ,系統(tǒng)ioo能夠從某條指令的中斷處恢復執(zhí)行。
命令行交互和腳本文件接口501是命令解釋和結果反饋的外殼,它接受兩種形式的運行 方式。(1)交互方式。用戶一次輸入一條命令,系統(tǒng)根據(jù)具體命令的執(zhí)行情況立即給出反 饋;(2)腳本解釋器。各種神經(jīng)處理命令以腳本文件的方式存儲在文件系統(tǒng)中,用戶一次 性提交,系統(tǒng)執(zhí)行完成后給出反饋。指令集包括系統(tǒng)指令解析單元502和用戶指令解析單元 503。系統(tǒng)指令解析單元502是具體實施例中實現(xiàn)命令行交互和腳本文件接口501所使用的程 序語言內(nèi)嵌的各種指令和接口。 一個實施例中,使用Python語言編寫命令行交互和腳本文件 接口501,則系統(tǒng)指令集則包括Python語言的所有關鍵字。用戶指令解析單元503是在數(shù)據(jù)獲 取操縱組件101、數(shù)據(jù)分析處理組件102、數(shù)據(jù)可視化處理組件103中定義的各個具體程序的 映射。系統(tǒng)指令解析單元502隨命令行接口501在啟動時初始化。系統(tǒng)啟動時,由數(shù)據(jù)分析處 理組件102中的處理算法托管層組件303和數(shù)據(jù)可視化處理組件103中的可視化請求與結果傳 送接口401掃描各種處理算法,完成用戶指令解析單元503的初始化。
命令行交互和腳本文件接口501的指令調(diào)用(包括系統(tǒng)指令請求507和用戶指令請求509 )首先通過系統(tǒng)指令解析單元502和用戶指令解析單元503的解析,轉變成系統(tǒng)調(diào)用,進入任 務執(zhí)行時間規(guī)劃單元504。在任務執(zhí)行時間規(guī)劃單元504中,系統(tǒng)指令調(diào)用510的執(zhí)行優(yōu)先順 序高于用戶指令調(diào)用511的優(yōu)先順序。命令行交互和腳本文件接口501與任務執(zhí)行時間規(guī)劃單 元504間存在工作規(guī)劃指令流508,工作規(guī)劃指令流中包括命令行交互接口501發(fā)起的執(zhí)行優(yōu) 先序調(diào)整指令、工作流開始、暫停和終止指令。任務執(zhí)行時間規(guī)劃單元504根據(jù)指令的優(yōu)先 順序安排指令執(zhí)行,優(yōu)先順序相同的指令若不存在互斥狀態(tài)字,則指令被安排到多個處理單 元上同時執(zhí)行。
指令流經(jīng)過任務執(zhí)行時間規(guī)劃單元504后,轉換為具體的執(zhí)行流512,進入任務狀態(tài)保存 和監(jiān)控單元505。執(zhí)行流512中的每一個指令在任務狀態(tài)保存和監(jiān)控層中被賦予了唯一的狀態(tài) 對象。帶有狀態(tài)對象的指令對象513被提交到任務執(zhí)行接口單元506,并同時記錄在日志文件 中,任務執(zhí)行接口單元506分別調(diào)用數(shù)據(jù)獲取操縱組件101、數(shù)據(jù)分析處理組件102、數(shù)據(jù)可 視化處理組件103完成工作。數(shù)據(jù)獲取操縱組件IOI、數(shù)據(jù)分析處理組件102、數(shù)據(jù)可視化處 理組件103執(zhí)行后產(chǎn)生的數(shù)據(jù)流和狀態(tài)字返回到任務執(zhí)行接口單元506后,存儲在每條指令對 應的狀態(tài)對象中,并在日志文件中記錄一個狀態(tài)字。日志文件中,沒有記錄的指令對象被視
21為沒有被執(zhí)行過的指令,僅有指令記錄沒有執(zhí)行狀態(tài)字的指令對象被視為執(zhí)行過程中發(fā)生意 外錯誤的指令,執(zhí)行狀態(tài)字為失敗的指令記錄被視為執(zhí)行中因條件未滿足或參數(shù)錯誤自行退 出的指令。任務狀態(tài)保存和監(jiān)控單元505在每次運行一個指令前,均對日志進行檢査,發(fā)現(xiàn) 沒有執(zhí)行成功狀態(tài)字的指令后,將對任務執(zhí)行時間規(guī)劃單元504發(fā)起重新調(diào)度請求,保證命 令的再次執(zhí)行。
下面結合圖6和一個實施例對本發(fā)明的指令執(zhí)行流程做進一步的說明。在本發(fā)明中,系 統(tǒng)100依靠用戶輸入的腳本驅動。用戶在腳本交互界面104中輸入腳本指令。該指令首先通過 系統(tǒng)指令集和用戶指令集轉換為內(nèi)部指令序列,這些內(nèi)部指令序列按照任務時間段規(guī)劃504 依次執(zhí)行的順序過程定義為指令流。指令序列的執(zhí)行將伴隨著數(shù)據(jù)對象的創(chuàng)建、修改、保存 過程。指令序列的執(zhí)行中,任務狀態(tài)保存和監(jiān)控組件505將定期對執(zhí)行狀態(tài)輪詢,并存儲每 一步的執(zhí)行狀態(tài)。指令序列執(zhí)行結束,將數(shù)據(jù)流的執(zhí)行結果取出并加上自身的執(zhí)行狀態(tài)字作 為指令執(zhí)行結果。
數(shù)據(jù)對象應指令的執(zhí)行請求而創(chuàng)建,數(shù)據(jù)對象創(chuàng)建時需要的數(shù)據(jù)來源可包括但不限于數(shù) 據(jù)采集硬件對象207、電刺激硬件對象208、文件存儲對象209、數(shù)據(jù)庫對象210。數(shù)據(jù)對象創(chuàng) 建后,應指令的執(zhí)行請求而不斷變動,其中包含的數(shù)據(jù)發(fā)生修改。當指令執(zhí)行完成后,數(shù)據(jù) 對象可保存在文件存儲對象209和數(shù)據(jù)庫對象210中,作為永久的數(shù)據(jù)讀寫;也可保存在電刺 激硬件對象208中,作為電生理刺激器的控制信號。
結合圖7和一個實施例,對數(shù)據(jù)流和算法、可視化方法的動態(tài)結合過程做進一步的說明 。將數(shù)據(jù)對象創(chuàng)建、處理、保存和析構的全過程定義為數(shù)據(jù)對象的生命周期,多個數(shù)據(jù)對象 并行或串行的被創(chuàng)建、修改、保存和析構的過程可視為一個數(shù)據(jù)流。在一個數(shù)據(jù)對象中,當 數(shù)據(jù)對象被創(chuàng)建時,將自動產(chǎn)生數(shù)據(jù)副本O,其中包含著該數(shù)據(jù)對象的所有數(shù)據(jù)。通過腳本 指令,能夠將系統(tǒng)中任一處理算法與數(shù)據(jù)副本相結合。數(shù)據(jù)副本中的數(shù)據(jù)作為處理算法的輸 入,處理算法的輸出將自動的創(chuàng)建新的數(shù)據(jù)副本。在一個具體的實施例中,數(shù)據(jù)副本與數(shù)據(jù) 對象是無差別的,數(shù)據(jù)副本的創(chuàng)建等同于新數(shù)據(jù)對象的創(chuàng)建。在另一方具體的實施例中,數(shù) 據(jù)對象內(nèi)部可包含多個數(shù)據(jù)副本,僅當指令顯式地要求創(chuàng)建新的數(shù)據(jù)對象時才創(chuàng)建。本發(fā)明 并不具體的限定兩種或更多種數(shù)據(jù)對象和數(shù)據(jù)副本的相互關系。通過腳本指令,能夠將系統(tǒng) 中任一處理算法與數(shù)據(jù)副本相結合,數(shù)據(jù)副本中的數(shù)據(jù)作為可視化方法的輸入。可視化方法 將返回繪圖句柄進行屏幕或文件中的繪制,也可將繪圖數(shù)據(jù)返回數(shù)據(jù)對象,與數(shù)據(jù)副本一同 存儲。本發(fā)明中,數(shù)據(jù)對象中保存著處理算法和可視化方法的序列,g卩對于數(shù)據(jù)副本l而 言,數(shù)據(jù)對象將保存著產(chǎn)生數(shù)據(jù)副本l的處理算法l的相關執(zhí)行序列信息。這是因為,數(shù)據(jù)副
22本1可以通過處理算法1對數(shù)據(jù)副本0的再次運行來重復獲得,只要依次保存每次處理算法的
相應信息,就能夠重現(xiàn)整個數(shù)據(jù)流。對于可視化方法序列,數(shù)據(jù)對象將為數(shù)據(jù)副本o保存可 視化方法l的相關執(zhí)行序列信息。這是因為,只要通過在數(shù)據(jù)副本o上重復執(zhí)行可視化方法i
的執(zhí)行序列,就能重現(xiàn)相關的可視化結果。本發(fā)明通過上述方法,保證了數(shù)據(jù)處理和數(shù)據(jù)可
視化過程中的高度可重復性。
鑒于以上內(nèi)容,可以看到,實現(xiàn)了本發(fā)明的若干目標并獲得了其他有利結果。 當依據(jù)此處所描述的方法和技術來編程時,本發(fā)明也包括計算機和電生理硬件本身。為
說明起見,操作系統(tǒng)和其他可執(zhí)行程序組件此處被示為離散的框,但本領域一般技術人員可
以意識到,這些程序和組件在不同的時刻主流在計算機的不同存儲組件中,并有計算機的數(shù)
據(jù)處理器來執(zhí)行。盡管此處結合了包括通用計算機和神經(jīng)電生理數(shù)據(jù)采集硬件207、電刺激 硬件208的示例性計算系統(tǒng)環(huán)境來描述。然而本發(fā)明可用眾多其他通用或專用計算環(huán)境操作 ,示例中提供的計算系統(tǒng)環(huán)境并不旨在對本發(fā)明的使用范圍或功能提出任何局限。此外,該 計算系統(tǒng)環(huán)境不應當被解釋為對示例性操作環(huán)境中所示組件的任一個或其組合具有任何依賴 性或要求。適用于本發(fā)明的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括但不限于,個人計 算機、服務器計算機、多處理系統(tǒng)、基于微處理器的系統(tǒng)、網(wǎng)絡PC、小型機、大型機、包括 任一上述系統(tǒng)或設備的分布式計算環(huán)境等等。
本發(fā)明可在一個或多個計算機或其他設備執(zhí)行的程序模塊等計算機可執(zhí)行指令的一般上 下文環(huán)境中描述。 一般地,程序模塊包括但不限于,例程、程序、對象、組件、數(shù)據(jù)結構等 等,它們執(zhí)行特定的任務或實現(xiàn)特定的抽象數(shù)據(jù)類型。本發(fā)明也可以在分布式計算環(huán)境中實 踐。當在分布式計算環(huán)境中時,任務通過通信網(wǎng)絡連接的遠程處理設備來執(zhí)行,程序模塊可 以位于包括存儲器的本地和遠程計算機存儲介質中。
軟件體系結構環(huán)境中的接口層包括軟件模塊、組件、代碼部分、或其他計算機可執(zhí)行指 令序列。接口包括例如訪問第二模塊來代表第一模塊執(zhí)行計算任務的第一模塊。在一個示 例中,第一和第二模塊可以是由操作系統(tǒng)提供的應用程序編程接口、組件對象模型接口、進 程間通信接口以及可擴展標記語言元數(shù)據(jù)交換格式接口 (如,用于Web服務通信時)。接口 可以是例如.Net Frameworks、 Java、 0++中的緊耦合的同步實現(xiàn)?;蛘叱酥?,接口也可 以是例如Web服務中的松耦合的異步實現(xiàn)。 一般地,接口包括以下特征的任一組合緊耦合 的、松耦合的、同步和異步的。此外,接口可以符合標準協(xié)議、專有協(xié)議、或標準和專有協(xié) 議的任何組合。此處所描述的接口可以都是單個接口的一部分,或者可以被實現(xiàn)為單獨的接 口或其中的任何組合。接口可以本地或遠程地執(zhí)行以提供功能。此外,接口可包括比此處所示或所描述的更多或更少的功能。
此處所示且描述的方法的執(zhí)行或實現(xiàn)順序不是必要的,除非另外指定。S卩,方法的元素 可以用任何順序來執(zhí)行,除非另外指定,且方法可包括比此處所揭示的更多或更少的元素。 可以認為,在另一元素之前、與其同時或之后執(zhí)行或實現(xiàn)特定元素是在本發(fā)明的范圍之內(nèi)。
當介紹本發(fā)明或其實施例的元素時,冠詞"一"、"一個"、"該"和"所述"是指存 在一個或多個元素。"包括"、"包含"、"具有"旨在包含性的,且意味著除所列出的元 素之外還可以有其他元素。
由于可在不脫離本發(fā)明的范圍的情況下在上述產(chǎn)品和方法中做出各種改變,因此包含在 上述說明書并在附圖中示出的所有內(nèi)容都應當被解釋為說明性而非限制性的。
最后所應說明的是,以上具體實施方式
僅用以說明本發(fā)明的技術方案而非限制,盡管參照較 佳實施例對本發(fā)明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發(fā)明的技術 方案進行修改或者等同替換,而不脫離本發(fā)明技術方案的精神和范圍,其均應涵蓋在本發(fā)明 的權利要求范圍當中。
權利要求
1.一種海量多道神經(jīng)信息綜合處理系統(tǒng),其特征在于,包括腳本驅動控制組件、數(shù)據(jù)獲取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件;所述腳本驅動控制組件,用于提供用戶交互控制界面,所述用戶交互控制界面接受用戶指令,生成腳本命令;所述腳本驅動控制組件解釋腳本命令,調(diào)用所述數(shù)據(jù)獲取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件執(zhí)行相應任務,并向用戶反饋處理結果;所述數(shù)據(jù)獲取操縱組件,連接腳本驅動控制組件、神經(jīng)電生理實驗系統(tǒng)、數(shù)據(jù)讀寫系統(tǒng),用于接受腳本驅動控制組件發(fā)出的數(shù)據(jù)獲取操縱請求,驅動所述神經(jīng)電生理實驗系統(tǒng)動作,并接收所述神經(jīng)電生理實驗系統(tǒng)的返回數(shù)據(jù);或者,控制所述數(shù)據(jù)讀寫系統(tǒng)進行數(shù)據(jù)讀寫;然后,向腳本驅動控制組件返回處理結果;所述數(shù)據(jù)分析處理組件,連接腳本驅動控制組件,用于接受腳本驅動控制組件發(fā)起的數(shù)據(jù)分析處理請求,調(diào)用各種數(shù)據(jù)分析處理算法對神經(jīng)電生理信息數(shù)據(jù)分析處理,將歷史的分析處理算法及其數(shù)據(jù)保存在數(shù)據(jù)文件中,并向腳本驅動控制組件返回處理結果;所述數(shù)據(jù)可視化處理組件,用于接受腳本驅動控制組件發(fā)起的可視化處理請求,調(diào)用各種數(shù)據(jù)可視化處理算法對神經(jīng)電生理信息數(shù)據(jù)進行可視化處理,將歷史的可視化處理算法及其數(shù)據(jù)保存在數(shù)據(jù)文件中,并向腳本驅動控制組件返回處理結果。
2.根據(jù)權利要求l所述的海量多道神經(jīng)信息綜合處理系統(tǒng),其特征在 于,所述腳本驅動控制組件包括命令行交互和腳本文件接口單元,系統(tǒng)指令解析單元,用 戶指令解析單元,任務執(zhí)行時間規(guī)劃單元,任務狀態(tài)保存和監(jiān)控單元,任務執(zhí)行接口單元,所述命令行交互和腳本文件接口單元,用于接收用戶命令,并識別用戶命令中的工作 規(guī)劃指令,將所述工作規(guī)劃指令提交至所述任務執(zhí)行時間規(guī)劃單元;將用戶命令中的非工作 規(guī)劃指令提交至所述系統(tǒng)指令解析單元;并接收所述系統(tǒng)指令解析單元返回的非工作規(guī)劃指 令,識別為用戶指令提交至所述用戶指令解析單元;所述系統(tǒng)指令解析單元,用于識別非工作規(guī)劃指令中的系統(tǒng)指令,將所述系統(tǒng)指令生 成系統(tǒng)指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;并將其不能識別的非工作規(guī)劃指令返回所述命令行交互和腳本文件接口單元;所述用戶指令解析單元,用于接受所述命令行交互和腳本文件接口單元提交的用戶指 令,生成用戶指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;所述任務執(zhí)行時間規(guī)劃單元,用于根據(jù)所述工作規(guī)劃指令對所述系統(tǒng)指令系統(tǒng)調(diào)用、 用戶指令系統(tǒng)調(diào)用進行優(yōu)先順序安排,生成任務執(zhí)行流,并提交至任務狀態(tài)保存和監(jiān)控單元所述任務狀態(tài)保存和監(jiān)控單元,用于管理和調(diào)用任務執(zhí)行接口 ,所述任務執(zhí)行接口,用于執(zhí)行所述系統(tǒng)指令系統(tǒng)調(diào)用、用戶指令系統(tǒng)調(diào)用,控制所述 數(shù)據(jù)獲取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件執(zhí)行任務。
3.根據(jù)權利要求2所述的海量多道神經(jīng)信息綜合處理系統(tǒng),其特征在 于,所述數(shù)據(jù)獲取操縱組件包括數(shù)據(jù)請求和數(shù)據(jù)交換接口單元,硬件請求代理層單元,硬 件控制組件,文件請求代理層單元,文件協(xié)議組件,數(shù)據(jù)庫組件;所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元,用于接收腳本驅動控制組件發(fā)起的數(shù)據(jù)處理請求 ,判斷所述數(shù)據(jù)處理請求的目標類型為神經(jīng)電生理實驗操作還是數(shù)據(jù)讀寫操作?若為神經(jīng)電 生理實驗操作請求,則調(diào)用所述硬件請求代理層單元;若為數(shù)據(jù)讀寫操作請求,調(diào)用文件請 求代理層單元,最終向所述腳本驅動控制組件返回結果;所述硬件請求代理層單元,用于根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用 所述硬件控制組件,所述硬件控制組件連接包括所述神經(jīng)電生理數(shù)據(jù)采集裝置、神經(jīng)電生理刺激輸出裝置 的神經(jīng)電生理實驗系統(tǒng),用于驅動包括所述神經(jīng)電生理數(shù)據(jù)采集裝置、神經(jīng)電生理刺激輸出 裝置動作,根據(jù)所述神經(jīng)電生理實驗系統(tǒng)的輸出結果向所述硬件請求代理層單元返回包括數(shù) 據(jù)及狀態(tài)字的處理結果;所述文件請求代理層單元,用于根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用 數(shù)據(jù)庫組件或所述文件協(xié)議組件,所述數(shù)據(jù)庫組件,用于根據(jù)所述文件請求代理層單元的包含文件特征査詢的SQL字串的 數(shù)據(jù)査詢和/或寫入請求,調(diào)用數(shù)據(jù)庫執(zhí)行査詢指令或者調(diào)用所述文件協(xié)議組件,并向所述 數(shù)據(jù)請求和數(shù)據(jù)交換接口單元返回包括數(shù)據(jù)及狀態(tài)字的文件操作結果;所述文件協(xié)議組件,用于直接調(diào)用文件讀寫設備進行文件讀寫處理,并向其自身的調(diào) 用者返回結果。
4 根據(jù)權利要求3所述的海量多道神經(jīng)信息綜合處理系統(tǒng),其特征在 于,所述數(shù)據(jù)分析處理組件包括處理請求解釋與結果反饋接口,數(shù)據(jù)輸入層組件,處理算法 托管層組件,運算結果輸出接口,處理算法執(zhí)行單元;所述處理請求解釋與結果反饋接口,用于接收所述腳本驅動控制組件發(fā)起的數(shù)據(jù)分析 處理請求,調(diào)用所述數(shù)據(jù)輸入層組件,處理算法托管層組件進行處理,并向所述腳本驅動控 制組件返回處理結果;所述數(shù)據(jù)輸入層組件,用于接收所述處理請求解釋與結果反饋接口發(fā)出的數(shù)據(jù)流對象 ,將所述數(shù)據(jù)流對象提交所述處理算法單元進行處理,所述處理算法托管層組件,用于接收所述處理請求解釋與結果反饋接口發(fā)出的指令流 對象,調(diào)用所述處理算法單元進行處理,所述處理算法執(zhí)行單元,用于根據(jù)所述數(shù)據(jù)流對象、指令流對象進行運算處理,運算 處理結束后向所述算法托管層組件返回運行狀態(tài)字,運算結果數(shù)據(jù)通過所述運算結果輸出接 口輸出;所述運算結果輸出接口,接受來自所述處理算法執(zhí)行單元的輸出結果,并向所述處理 請求解釋與結果反饋接口返回。
5 根據(jù)權利要求4所述的海量多道神經(jīng)信息綜合處理系統(tǒng),其特征在 于,所述數(shù)據(jù)可視化處理組件包括可視化請求與結果傳送接口,可視化方法執(zhí)行單元,所述可視化請求與結果傳送接口用于接收來自腳本驅動控制組件發(fā)起的數(shù)據(jù)可視化請 求,調(diào)用所述可視化方法執(zhí)行單元,并向腳本驅動控制組件返回結果;所述可視化方法執(zhí)行單元,用于根據(jù)所述數(shù)據(jù)可視化請求執(zhí)行結果圖形的繪制,和/或 將圖形存儲在文件系統(tǒng)和/或數(shù)據(jù)庫中,并將圖形向可視化請求與結果傳送接口返回結果。
6 一種根據(jù)權利要求5所述的海量多道神經(jīng)信息綜合處理系統(tǒng)的控制 方法,其特征在于包括以下步驟 裝載所述腳本驅動控制組件; 運行所述腳本驅動控制組件; 從人機交互界面輸入命令行腳本;所述腳本驅動控制組件解析所述命令行腳本,生成工作指令序列;所述腳本驅動控制組件順序執(zhí)行所述工作指令序列,并對每條所述工作指令賦予狀態(tài)對象;當某工作指令調(diào)用所述數(shù)據(jù)獲取操縱組件時,所述數(shù)據(jù)獲取操縱組件根據(jù)所述工作指 令調(diào)用,驅動所述神經(jīng)電生理實驗系統(tǒng)動作,并接收所述神經(jīng)電生理實驗系統(tǒng)的返回數(shù)據(jù); 或者,控制所述數(shù)據(jù)讀寫系統(tǒng)進行數(shù)據(jù)讀寫;然后,向腳本驅動控制組件返回處理結果;當某工作指令調(diào)用所述數(shù)據(jù)分析處理組件時,所述數(shù)據(jù)分析處理組件調(diào)用各種數(shù)據(jù)分 析處理算法對神經(jīng)電生理信息數(shù)據(jù)分析處理,向腳本驅動控制組件返回處理結果,并提交歷 史的分析處理算法及其數(shù)據(jù);當某工作指令調(diào)用所述數(shù)據(jù)可視化處理組件時,所述數(shù)據(jù)可視化處理組件調(diào)用各種數(shù) 據(jù)可視化處理算法對神經(jīng)電生理信息數(shù)據(jù)進行可視化處理,向腳本驅動控制組件返回處理結 果,并提交歷史的可視化處理算法及其數(shù)據(jù);繼續(xù)執(zhí)行下一條工作指令,直至工作指令序列中的所有指令執(zhí)行完畢。
7.根據(jù)權利要求6所述的海量多道神經(jīng)信息綜合處理系統(tǒng)的控制方法 ,其特征在于,所述裝載腳本驅動控制組件包括以下步驟 裝載所述命令行交互和腳本文件接口單元, 裝載所述系統(tǒng)指令解析單元、用戶指令解析單元, 裝載所述任務執(zhí)行時間規(guī)劃單元, 裝載所述任務狀態(tài)保存和監(jiān)控單元, 裝載所述任務執(zhí)行接口單元。
8.根據(jù)權利要求7所述的海量多道神經(jīng)信息綜合處理系統(tǒng)的控制方法 ,其特征在于,所述腳本驅動控制組件解析所述命令行腳本,生成工作指令序列,包括以下 步驟所述命令行交互和腳本文件接口單元接收用戶命令, 識別用戶命令是否為工作規(guī)劃指令?若是工作規(guī)劃指令,則將工作規(guī)劃指令提交至所述任務執(zhí)行時間規(guī)劃單元; 若非工作規(guī)劃指令,則將非工作規(guī)劃指令提交至所述系統(tǒng)指令解析單元;所述系統(tǒng)指 令解析單元接收并識別非工作規(guī)劃指令,判斷是否為系統(tǒng)指令?若是系統(tǒng)指令,則將所述系統(tǒng)指令生成系統(tǒng)指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;若非系統(tǒng)指令,則將非系統(tǒng)指令返回所述命令行交互和腳本文件接口單元;命令行交互和腳本文件接口單元將非系統(tǒng)指令識別為用戶指令提交至所述用戶指令解析單元;所述用 戶指令解析單元將用戶指令生成用戶指令系統(tǒng)調(diào)用提交至所述任務執(zhí)行時間規(guī)劃單元;所述任務執(zhí)行時間規(guī)劃單元根據(jù)所述工作規(guī)劃指令對所述系統(tǒng)指令系統(tǒng)調(diào)用、用戶指 令系統(tǒng)調(diào)用進行優(yōu)先順序安排,生成任務執(zhí)行流,并提交至任務狀態(tài)保存和監(jiān)控單元;所述任務狀態(tài)保存和監(jiān)控單元管理和調(diào)用任務執(zhí)行接口 ,所述任務執(zhí)行接口執(zhí)行所述系統(tǒng)指令系統(tǒng)調(diào)用、用戶指令系統(tǒng)調(diào)用,控制所述數(shù)據(jù)獲 取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件執(zhí)行任務。
9.根據(jù)權利要求8所述的海量多道神經(jīng)信息綜合處理系統(tǒng)的控制方法 ,其特征在于,所述數(shù)據(jù)獲取操縱組件根據(jù)所述工作指令調(diào)用,驅動所述神經(jīng)電生理實驗系 統(tǒng)動作,并接收所述神經(jīng)電生理實驗系統(tǒng)的返回數(shù)據(jù);或者,控制所述數(shù)據(jù)讀寫系統(tǒng)進行數(shù) 據(jù)讀寫;然后,向腳本驅動控制組件返回處理結果,包括以下步驟所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元接收腳本驅動控制組件發(fā)起的數(shù)據(jù)處理請求, 判斷所述數(shù)據(jù)請求數(shù)據(jù)處理請求的目標類型為神經(jīng)電生理實驗系統(tǒng)操作還是數(shù)據(jù)讀寫 操作?若為神經(jīng)電生理實驗系統(tǒng)操作請求,則調(diào)用所述硬件請求代理層單元,所述硬件請求 代理層單元根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用所述硬件控制組件,所述硬 件控制組件驅動包括所述神經(jīng)電生理數(shù)據(jù)采集裝置、神經(jīng)電生理刺激輸出裝置的神經(jīng)電生理 實驗系統(tǒng)動作并采集其輸出數(shù)據(jù),向所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元返回包括數(shù)據(jù)及狀態(tài) 字的處理結果,所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元向所述腳本驅動控制組件返回結果狀態(tài)字,并提交 檢測到的數(shù)據(jù);若為數(shù)據(jù)讀寫操作請求,則調(diào)用所述文件請求代理層單元,所述文件請求代理層單元 根據(jù)所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元的指令,調(diào)用所述文件協(xié)議組件或調(diào)用所述數(shù)據(jù)庫組 件抓若調(diào)用所述文件協(xié)議組件,則所述文件協(xié)議組件調(diào)用文件存儲設備,所述文件存儲 設備進行文件儲存處理,然后向所述文件協(xié)議組件返回處理結果,所述文件協(xié)議組件向所述 文件請求代理層單元返回處理結果;抓若調(diào)用所述數(shù)據(jù)庫組件,則數(shù)據(jù)庫組件根據(jù)所述文件請求代理層單元的包含文件特 征査詢的SQL字串的數(shù)據(jù)査詢和/或寫入請求,調(diào)用數(shù)據(jù)庫執(zhí)行査詢指令,并向所述文件請求代理層單元返回處理結果,所述文件請求代理層單元向所述文件請求代理層單元返回處理結 果;所述數(shù)據(jù)請求和數(shù)據(jù)交換接口單元向所述腳本驅動控制組件返回結果。
10.根據(jù)權利要求9所述的海量多道神經(jīng)信息綜合處理系統(tǒng)的控制方 法,其特征在于,所述數(shù)據(jù)分析處理組件調(diào)用各種數(shù)據(jù)分析處理算法對神經(jīng)電生理信息數(shù)據(jù) 分析處理,向腳本驅動控制組件返回處理結果,并提交歷史的分析處理算法及其數(shù)據(jù),包括 以下步驟所述處理請求解釋與結果反饋接口接收所述腳本驅動控制組件發(fā)起的數(shù)據(jù)分析處理請求,將所述數(shù)據(jù)分析處理請求解析為包括算法指令流對象、數(shù)據(jù)流對象;所述數(shù)據(jù)輸入層組件接收所述處理請求解釋與結果反饋接口發(fā)出的數(shù)據(jù)流對象, 所述處理算法托管層接收所述處理請求解釋與結果反饋接口發(fā)出的算法指令流對象, 所述算法托管層向所述處理算法執(zhí)行單元査詢,能否處理該算法指令流對象?若是, 則所述處理算法執(zhí)行單元調(diào)用該算法指令流對象對應的具體算法處理從所述數(shù)據(jù)輸入層組件 獲得數(shù)據(jù)流對象,運算結果數(shù)據(jù)返回所述運算結果輸出接口;所述運算結果輸出接口接受來 自所述處理算法執(zhí)行單元的輸出結果,并向所述處理請求解釋與結果反饋接口返回;否則,向所述算法托管層組件返回"算法不存在"狀態(tài)字,所述算法托管層組件向所 述處理請求解釋與結果反饋接口返回狀態(tài)字;所述處理請求解釋與結果反饋接口向所述腳本驅動控制組件返回處理結果。
11.根據(jù)權利要求io所述的海量多道神經(jīng)信息綜合處理系統(tǒng)的控制方法,其特征在于,所述數(shù)據(jù)可視化處理組件調(diào)用各種數(shù)據(jù)可視化處理算法對神經(jīng)電生理信息 數(shù)據(jù)進行可視化處理,向腳本驅動控制組件返回處理結果,并提交歷史的可視化處理算法及 其數(shù)據(jù),包括以下步驟所述可視化請求與結果傳送接口用于接收來自所述腳本驅動控制組件發(fā)起的數(shù)據(jù)可視 化請求,調(diào)用所述可視化方法執(zhí)行單元,所述可視化方法執(zhí)行單元執(zhí)行結果圖形的繪制,并向所述可視化請求與結果傳送接口 返回執(zhí)行結果;所述可視化請求與結果傳送接口向所述腳本驅動控制組件返回結果。
全文摘要
本發(fā)明涉及神經(jīng)電生理信息數(shù)據(jù)處理領域,它提出了一種海量多道神經(jīng)信息綜合處理系統(tǒng),包括腳本驅動控制組件、數(shù)據(jù)獲取操縱組件、數(shù)據(jù)分析處理組件、數(shù)據(jù)可視化處理組件。它將多通道神經(jīng)信息采集、處理、可視化過程進行組件化集成建立了統(tǒng)一服務接口,能夠在腳本的控制下,批量自動化的完成海量多通道神經(jīng)信息的處理過程,并給出可視化結果。同時,將神經(jīng)電生理信息數(shù)據(jù)處理的流程保存在存儲介質中,提高了數(shù)據(jù)處理的可重復性和可控性。本發(fā)明還具有的有益效果包括將硬件控制與數(shù)據(jù)處理相結合,根據(jù)神經(jīng)電生理信息數(shù)據(jù)的處理結果,控制硬件運行,動態(tài)的修改實驗方案;通過統(tǒng)一的接口,能夠動態(tài)的擴展處理和可視化算法。
文檔編號G06F19/00GK101561850SQ20091030310
公開日2009年10月21日 申請日期2009年6月10日 優(yōu)先權日2009年6月10日
發(fā)明者李向寧, 蒲江波, 駱清銘 申請人:華中科技大學