呂智涵, 蘇天赟
(1. 中國科學院深圳先進技術研究院,廣東 深圳 518055;2. 國家海洋局第一海洋研究所,山東 青島 266061)
基于粒子系統(tǒng)的大分子三維常規(guī)表達可視化
呂智涵1, 蘇天赟2
(1. 中國科學院深圳先進技術研究院,廣東 深圳 518055;2. 國家海洋局第一海洋研究所,山東 青島 266061)
隨著眾包成為大數(shù)據(jù)問題的流行解決方案,虛擬社區(qū)逐漸被應用到科學研究中,并借助手機交互,人們在追求高質(zhì)量渲染的同時也開始探索渲染方法的普適性。本文研究一種蛋白質(zhì)大分子三維可視化方法,該方法通過粒子系統(tǒng)管理大量原子,改進著色方法減少每個原子渲染時間,可以表達甘草和范德華模型,二級結(jié)構(gòu)等常規(guī)表達。選取從 103至105尺度的分子作為用例,與流行方法比較靜止和交互時的效率,均具有更高效率,更適于移動平臺。對分子結(jié)構(gòu)進行域分解優(yōu)化,進一步提高交互性能。成果發(fā)布至手機,可流暢運行。
分子可視化;虛擬科學社區(qū);虛擬世界;大數(shù)據(jù);粒子系統(tǒng);常規(guī)表達;OpenGL es2.0
目前國內(nèi)外生物學領域的研究迫切需要對大分子結(jié)構(gòu),組織網(wǎng)絡或者甚至器官和組織體[1-3]等龐大而復雜的系統(tǒng)進行可視化的工具。
以平面圖片表達分子結(jié)構(gòu)的可視化方式容易引起誤差[4],而新的基于虛擬現(xiàn)實技術的可視化方法使得科學家能夠有效的與分子結(jié)構(gòu)互動。虛擬現(xiàn)實技術可以解決分享、組織和注釋分子結(jié)構(gòu)可視化問題,并促進科學家間高效協(xié)作。高性能協(xié)同虛擬環(huán)境提供了解決方案[5],但推廣應用卻是挑戰(zhàn)。在大數(shù)據(jù)(Bigdata)挑戰(zhàn)的背景下,眾包(Crowdsourcing)逐漸流行,并已表現(xiàn)出實用價值[6]。該方法在參與科學,生物學和計算機科學相結(jié)合的虛擬科學社區(qū)領域廣受關注,有可能因此取得巨大進展[7,8]。
虛擬科學社區(qū)可以作為一個教育平臺[9]和社會,行為,經(jīng)濟等學術領域的研究平臺[10]。此外,科學的項目啟動源于普通民眾的調(diào)查[11],虛擬科學社區(qū)可以完成特定的調(diào)查任務,并用來解決科學問題,最近被用來預測蛋白質(zhì)折疊[12]并產(chǎn)生顯著成效[13]。隨著手機等輕量級設備計算能力的增強,手機設備上的虛擬科學社區(qū)逐漸顯現(xiàn)出巨大潛力。對于生命科學的社區(qū),瓶頸之一是蛋白質(zhì)大分子的三維可視化技術。
蛋白質(zhì)大分子三維可視化方法發(fā)展的主要目標,就是通過改進現(xiàn)存的渲染技術去克服巨大結(jié)構(gòu)等表達限制。有很多不同類型的分子表達存在,分子表達從最簡單的空間填充和范德華球到分子表面表達定義更復雜的大分子的整體形狀[14]。在這兩個極端情況下,可以定義常規(guī)分子表達如球棒,甘草或者范德華表達,或者生物聚合物的主鍵結(jié)構(gòu)。其中最流行的是基于線(例如球棍和甘草)和基于色帶(二級結(jié)構(gòu))的模型,“因為他們以簡單的可視化形式呈現(xiàn)出每個分子的重要結(jié)構(gòu)屬性”[15]。本文方法對球棍,甘草和范德華模型,二級結(jié)構(gòu)分別進行表達。
最古老常用的結(jié)構(gòu)表達例如球棒,范德華(也稱空間填充或Cpk)或甘草等簡單的分子表達屬于常規(guī)表達,首先通過簡單的線去連接原子(簡化甘草模型)或者基于更復雜的圓柱和球的模型(球棒,空間填充和甘草模型)。迄今為止甘草表達一般被三角球面和圓柱形表面實現(xiàn)。該方法的主要局限性在于渲染巨大的集合時要創(chuàng)建大量的三角面,例如,創(chuàng)建一個平滑的球,至少要大約300個三角面,因為包括視野外的所有三角面都渲染,所以影響了性能。即使用最新圖形硬件渲染如此龐大的三角面數(shù)量速度也會有延遲。
隨著可編程圖形卡的開發(fā),誕生了運行于GPU的光線投射/光線追蹤新技術。首先創(chuàng)建一個粗略的三角信封,然后用可編程圖形管道精確的定義解析表面。采用這種方法,可以實時的表達面向任何縮放級別的像素精確精度的大量的球和圓柱體。
GPU 光線投射首次用于分子表達由 Toledo和Levy在2004年實現(xiàn),該方法已在VMD分子瀏覽器中實現(xiàn)[16]。與此同時,Bajaj等的TexMol方案也使用基于GPU技術[17]的二級結(jié)構(gòu)表達。2006年,這種方法被Sigg等[18]和Tarini等[19]擴展,以表達帶有特殊光效的巨大分子并強化圖形預測能力。2007年,Lampe等使用面向空間填充或球棒模型的 GPU光線投射技術表達一個二級結(jié)構(gòu)來可視化大分子的動態(tài)變化[20]。這些例子基于 GPU的表現(xiàn)改善了實時性和可交互操作。D.S.Goodsell描述了幾種技術使得分子可以向細胞尺度可視化過渡[21]。Chavent開發(fā)了HyperBalls分子表達方法[22],實現(xiàn)高質(zhì)量的Raycasting,用立方體和平行六面體分別生成信封進而渲染為原子和鍵,以雙曲面代替圓柱體來表達鍵連接球,可以表達分子鍵的漸進演變。
浙江大學CAD&CG國家重點實驗室對蛋白質(zhì)分子三維數(shù)據(jù)場的特征抽取和可視化進行研究[23],成功從數(shù)據(jù)場中抽取蛋白質(zhì)進行分析[24],并成功地觀察到HIV-1蛋白酶分子中隱藏的水分子排出通道[25]。廈門大學固體表面物理化學國家重點實驗室[26]在網(wǎng)頁上對三維分子進行了實現(xiàn)并用于網(wǎng)絡教學。
隨著圖形卡技術的快速發(fā)展分子表達逐漸細化品質(zhì)提升,而針對手機顯卡等輕量級設備的渲染技術卻并沒有隨之發(fā)展。以HyperBalls為例,盡管其獨特動態(tài)效果可以逼真的模擬分子動態(tài)效果,但是依賴于昂貴的 GPU顯卡,曾以iPhone4s和 HTX one作為樣機分別測試了 IOS系統(tǒng)和android系統(tǒng)下的OpenGL ES2.0框架下的HyperBall實現(xiàn),均無法直接支持效果,且運行效率極低。
本文所介紹的方法以降低光照實時效果為代價,以粒子系統(tǒng)管理大量信封,實現(xiàn)適用于手機等普適設備。
對 PDB文件進行分析以提取原子信息,包括原子類型,殘留物名稱,殘留ID和坐標。分子的拓撲結(jié)構(gòu)由原子間的距離創(chuàng)造鍵的算法構(gòu)建。
網(wǎng)格圖形以大量三角面表達平滑球,因此不適合實時渲染分子。本文使用一個總是面向垂直屏幕的平面的正方形(僅由兩個三角組成)表達單一的原子。將一個圖像粘貼到這個正方形內(nèi),稱作點精靈,也稱廣告牌 (Billboard)。這個方法可以有效的顯示很多相似的圖像。在虛擬世界中,該方法通常用來描述涉及很多小粒子的虛擬效果,例如:火,煙,云,雪,沙,等。這些粒子的總和稱為粒子系統(tǒng)。在每個粒子系統(tǒng)正方形粒子中粘貼球形圖像可以表達原子,如圖1所示。
圖 1左為球形表示原子點精靈創(chuàng)建過程示意。步驟A創(chuàng)建朝向垂直于屏幕的方向的正方形作為信封。步驟 B在正方形平面上粘貼球形圖像。步驟C表示了3D點精靈在屏幕上的可視化。對于步驟 A、C,P 表示屏幕平面;左邊是屏幕上的結(jié)果,右邊是3D空間中的圖形。其中步驟B中的球形粘貼過程由改進的Alpha混合著色器算法實現(xiàn)。由于蛋白質(zhì)分子表達的默認使用固定的幾種顏色抽象表達有限的原子類型,比如紅色代表氧,綠色代表碳,所以,直接對RGB 3個通道的值進行賦值,以此替換原算法中以灰度與顏色矩陣相乘的過程,使時間復雜度由O(n^3)降低到O(n)。實踐中由于多次使用if語句,且顏色矩陣中n僅為3,所以在測量小分子時,效率并未有顯著提升,而當分子尺寸提升到5萬以上時,效率較大提升。著色步驟如下:
1) 選擇紋理源為綠色靜態(tài) Hyperballs截圖,RGB值為(Ro, Go, Bo),其中 Ro=0,0<Go<=255, Bo=0,如步驟B中左側(cè)綠色球形圖像;
2) 判定目標顏色,逐像素對 RGB通道分別賦值,如表1所示。
表1 RGB替換表
圖1右上為以線段表示鍵點精靈的創(chuàng)建。兩球半徑分別為R1和R2,球膨脹系數(shù)為S1,鍵膨脹系數(shù)為S2,則鍵點精靈的為兩底寬為D1=R1*S1*S2 和D2=R1*S1*S2 (0<S1<=2, 0<S2<=2)的等腰矩形,矩形高H為兩原子圓心的空間距離。顏色為由球1到球2的漸變色,由Alpha混合著色器生成。當S1=0.2,S2=2的時候為甘草模型。當S1=0.2,S2=2的時候為甘草模型。當S1=1,S2=0.4的時候為球棒模型。當S1=1,S2=0的時候為范德華模型。
圖 1右下為以粒子系統(tǒng)渲染的 PDBID為3AFA的分子的球棒模型,原子數(shù) 12003,鍵數(shù)12809。小窗口內(nèi)為分子的局部細節(jié)。
對比試驗分為3步:(1) 選取簡單分子作為測試用例評估不同的方法;(2) 進一步選擇一系列原子數(shù)從103到105的分子結(jié)構(gòu)作為測試案例,以選擇最有效的方法;(3) 以勻速旋轉(zhuǎn)模擬交互移動時的速率測試。
測試用機為 Mac Pro,配置為雙核 Intel Xeon 3 GHz 處理器,8 GB內(nèi)存,NVIDIA GTX 285顯卡,操作系統(tǒng)64位Mac OS X 10.6。
測試1 以分子ferrocytochrome C, PDB ID:1KX2作為測試用例對比幾種實現(xiàn)方法。該蛋白質(zhì)由1249個原子和1113個鍵組成,是普通尺寸的PDB文件。
我們對4個渲染原子的方法評估:粒子系統(tǒng)、三角面球、三角面立方體和HyperBalls球。我們也測試 3種顯示鍵的方法:立方體、線段和HyperBoloids雙曲面。如圖2所示,表示3D粒子系統(tǒng)是顯示球的方法中最高效的。其次是三角立方體,比 3D粒子系統(tǒng)慢 8倍,之后是HyperBalls實現(xiàn)的球和三角面球。
圖1 原子與鍵的點精靈粒子系統(tǒng)創(chuàng)建
在原子上附加渲染鍵并沒有改變這個排序,但是,可以觀察到顯示性能顯著下降。對于粒子系統(tǒng),顯示刷新率下降了5倍,而對于其他方法下降近2倍。當使用HyperBoloids或線來渲染鍵時該值對于粒子系統(tǒng)減少了超過 10倍。對于HyperBalls和三角面球表達,加入線或HyperBoloids將顯示速度減少3倍。對于粒子系統(tǒng)的巨幅變化可以解釋為其原本高效率渲染球,而對鍵的渲染添加了其他的圖形方法限制了效率。其他方法的性能變化是由于當鍵添加的時候頂點數(shù)量接近2倍。在用于渲染鍵的圖形基元中,線段是最高效的,立方體和雙曲面鍵的性能略低。
對于實時交互操作,若FPS低于10幀則會有交互延遲。圖2表示添加鍵后的所有方法的運行性能以及它們間的細微差別。根據(jù)所選方法不同,圖形基元的三角型和頂點的數(shù)目會有顯著變化,并直接影響顯示效率。繪制這些元素的函數(shù)的調(diào)用次數(shù)是另一個重要的瓶頸,調(diào)用越少效率越高(表2分別對幾種方法渲染分子的三角面,定點數(shù)目和繪制次數(shù)進行統(tǒng)計)。總體的渲染性能取決于渲染窗口大小和內(nèi)置圖形硬件性能。
圖2 性能對比
表2 幾種方法渲染1×k2分子的三角面,頂點的數(shù)目和繪制次數(shù)
測試 2 選擇粒子系統(tǒng),三角面球和HyperBalls方法,以一個尺寸從1200到100000個原子的分子集來評估他們的效率限制,如表3所示(表3為測試所采用的分子集合)。這個實驗以球形原子表達巨大分子結(jié)構(gòu),目的是渲染最大數(shù)量的原子來評估這些方法的真實性能。如圖3所示,首先評估靜態(tài)分子的顯示率,見圖3左。粒子系統(tǒng)的性能顯然優(yōu)于另外兩種方法。甚至對于由10萬個原子組成的ATP合酶(PDBID為3OAA)等超大分子,幀速率仍然很高。HyperBalls球的結(jié)果是從幾個分子到幾千個原子的分子:超過10000個原子時FPS值接近10幀。三角面球渲染效率略低于 HyperBalls球,可流暢顯示約6000個原子。
測試3 通過對粒子系統(tǒng)球測量當分子被操作時的 FPS值分析了用戶交互對于顯示性能的影響。為仿真用戶操作,以固定速率自動旋轉(zhuǎn)分子來模擬用戶移動,結(jié)果見圖3右。旋轉(zhuǎn)式移動對于HyperBalls球,立方體或者三角面球的性能基本沒有影響,而對于粒子系統(tǒng)有顯著的影響。隨分子變大影響更明顯,這可以解釋為所有粒子的深度排序更加耗時。
表3 評估性能所用的一系列分子
圖3 測試效率限制
為擬補該問題,將分子結(jié)構(gòu)分解為 64個空間塊來實現(xiàn)域分解,如圖4所示。每塊由一個獨立的粒子系統(tǒng)表示。域之間以坐標軸方向排序,且以每個域為對象進行視錐篩選和遮擋剔除。該方法為大分子改進效率并且讓用戶可以交互操作50000個原子的分子。若不進行域分解,則交互渲染超過 15000個原子將會引起速度顯著下降。
圖4 域分解
蛋白質(zhì)分子的二級結(jié)構(gòu)只選取α-碳原子,如圖 5所示。對所選 α-碳原子得坐標以 Hamilton差值計算出平滑的坐標集,分別以粒子系統(tǒng)和Hyperballs方法渲染。選取測試用例1kx1,由7130個原子,7033個鍵組成。以粒子系統(tǒng)實現(xiàn)的幀率為 65FPS,以 Hyperball+Hyperstick實現(xiàn)的幀率為8FPS。
圖5 二級結(jié)構(gòu)
靜電勢可視化通常表示為等值面或是沿著磁力線的顆粒動畫,如圖6所示。靜電勢格網(wǎng)由APBS[27]計算得到的靜電電位網(wǎng)格梯度矢量場的粒子平流計算得到,然后生成 OpenDX格式文件,并可以為等值面可視化讀取,從BioBlender[28]預處理生成描述了每個磁力線的動畫的點坐標的JSON文件來表達磁力線。
圖6 靜電勢
磁力線坐標加載到內(nèi)存中后,通過Hamilton差值計算出平滑曲線坐標,使用粒子系統(tǒng)重建靜電勢,并著色器渲染一條描繪粒子運動的虛線,這個著色器根據(jù)一個定時器來實現(xiàn)沿著磁場線的正弦函數(shù)的動畫。表示靜電勢顆粒的粒子的顏色,寬度,長度和速度可以更改。
分子表面可以從Chimera[29],VMD[16]等分子建模程序?qū)С鰹閛bj格式的三維三角網(wǎng)格。面重建后通過著色器對表面渲染簡單光照和均勻顏色來突出立體感,以襯托靜電勢路徑。
在iPhone3GS上分別實現(xiàn)了基于粒子系統(tǒng)和Hyperballs的三維分子?;贖yperballs的實現(xiàn)運行效率很低,用戶交互延遲很明顯,沒有實用價值,而且需要對OpenGL ES2.0的支持;而基于粒子系統(tǒng)的實現(xiàn)運行流暢。
本文研究一種適用于手機等輕量級交互設備的蛋白質(zhì)大分子渲染方法,該法基于粒子系統(tǒng),可以表達球棒,甘草,范德華模型,二級結(jié)構(gòu),靜電勢。經(jīng)測試該法運行效率更高,更適合手機等計算性能較低,屏幕較小對顯示質(zhì)量要求略低的設備。這種方法將為以虛擬科學社區(qū)為主要交流平臺的眾包提供面向手機設備的基礎可視化方案。
致謝 感謝法國國家科學研究中心UPR9080實驗室主任Marc Baaden博士為本文提供的指導意見和對項目順利實施給予的幫助。
[1]O'Donoghue S I, Goodsell D S, Frangakis A S, et al.Visualization of macromolecular structures [J]. Nat Methods, 2010, 7:42-55.
[2]Gehlenborg N, O'Donoghue S I, Baliga N S, et al.Visualization of omics data for systems biology [J].Nat Methods, 2010, 7:56-68.
[3]Walter T, Shattuck D W, Baldock R, et al. Visualization of image data from cells to organisms [J]. Nat Methods,2010, 7:26-41.
[4]Ottino J M. Is a picture worth 1,000 words [J]. Nature,2003, 421:474-476.
[5]Kolatkar A, Kenndey K, Halabuk D, et al. C-ME:a 3D community-based, real-time collaboration tool for scientific research and training [J]. PLoS One 2008:3.
[6]Sansom C. The power of many [J]. Nat Biotechnol,2011, 29:201-203.
[7]Kawrykow A, Roumanis G, Kam A, et al. Phylo:a citizen science approach for improving multiple sequence alignment [J]. PLoS ONE, 2012, 7:31-32.
[8]Eiben C B, Siegel J B, Bale J B, et al. Increased Diels-Alderase activity through backbone remodeling guided by Foldit players [J]. Nat Biotechnol, 2012, 30:190-192.
[9]Mayo M J, Video games:a route to large-scale STEM education [J]. Science, 2009, 323:79-82.
[10]Bainbridge W S. The scientific research potential of virtual worlds [J]. Science, 2007, 317:472-476.
[11]Bonetta L. New citizens for the life sciences [J]. Cell,2009, 138:1043-1045.
[12]Cooper S, Khatib F, Treuille A, et al. Predicting protein structures with a multiplayer online game [J].Nature, 2010, 466:756-760.
[13]Khatib F, DiMaio F, Foldit C G, et al. Crystal structure of a monomeric retroviral protease solved by protein folding game players [J]. Nat Struct Mol Biol, 2011, 18:1175-1177.
[14]Edelsbrunner H. Discrete & computational geometry [J].1999, 21(1), 87-115.
[15]Goodsell D S. Structure [J]. 2005, 13(3):347-354.
[16]Humphrey W, Dalke A, Schulten K. VMD:visual molecular dynamics [J]. J Mol Graph, 1996, 14:33-38, 27-38.
[17]Bajaj C, Djeu P, Siddavanahalli V, et al. TexMol:Interactive visual exploration of large flexible multi-component molecular complexes [C]//Proceedings of the conference on Visualization '04,2004:243-250.
[18]Sigg C, Weyrich T, Botsch M, et al. 'GPU-based ray-casting of quadratic surfaces' [C]//Eds.,Eurographics Symposium on Point-Based Graphics.
[19]Tarini M, Cignoni P, Montani C. Ambient occlusion and edge cueing to enhance real time molecular visualization [J]. IEEE Trans Vis Comput Graph,2006, 12:1237-1244.
[20]Daae L O, Viola I, Reuter N, et al. Two-level approach to efficient visualization of protein dynamics [J]. IEEE Trans Vis Comput Graph, 2007,13:1616-1623.
[21]Goodsell D S. Visual methods from atoms to cells [J].Structure, 2005, 13:347-354.
[22]Chavent M, Vanel A, Tek A, et al. GPU-accelerated atom and dynamic bond visualization using hyperballs:a unified algorithm for balls, sticks, and hyperboloids [J]. J Comput Chem, 2011, 32:2924-2935.
[23]汪 莉, 萬華根, 彭群生. 基于分子力學的蛋白質(zhì)分子場可視化[C]//中國計算機圖形學進展2008-第七屆中國計算機圖形學大會論文集. 2008.
[24]張 濤, 陳 為, 謝利廣, 等. 基于三維數(shù)據(jù)場拓撲抽取的蛋白質(zhì)結(jié)構(gòu)分析[J]. 軟件學報, 2006, 17:120-125.
[25]韓 瑋, 汪 莉, 陳 為, 等. 面向大分子的三維數(shù)據(jù)場特征分析與可視化[J]. 軟件學報, 2006, 17:103-109.
[26]陳明旦, 劉建文, 焦毓才, 等. Web 上的三維分子結(jié)構(gòu)模擬[J]. 廈門大學學報(自然科學版). 2003,42(2):175-179.
[27]Baker N A. Electrostatics of Nanosystems:application to microtubules and the ribosome [J]. Proceedings of the National Academy of Sciences, 2001, 98:10037-10041.
[28]Andrei R, Callieri M, Zini M, et al. Intuitive representation of surface properties of biomolecules using BioBlender [J]. BMC Bioinformatics ,2012, 13(4):16.
[29]Pettersen E, Goddard T, Huang C. UCSF Chimera—a visualization system for exploratory research and analysis [J]. Journal of computational chemistry,2004, 25(13):1605-12.
3D Visualization of Macromolecular Conventional Expression Based on Particle System
Lü Zhihan1, Su Tianyun2
( 1. Chinese Academy of Science(CAS) Shenzhen Institutes of Advanced Technology, Shenzhen Guangdong 518055, China;2. The First Institute of Oceanography, SOA, Qingdao Shandong 266061, China )
The crowd sourcing is becoming a popular solution to big data problems, and virtual community is gradually applied to scientific research. People also begin to pursue the high-quality rendering as well the universal rendering methods. This paper studies a protein macromolecules 3D visualization method, which is to manage the large number of atoms by the particle system, so as to reduce the rendering time of each atom by improving the coloration method, thus it can express Licorice and Van der Waals model, the secondary structure and some other conventional expressions.Taking molecules from the 103to105scale as application examples, comparison of the static and interactive efficiency between the particle system method and the popular method shows that the former has better performances in both aspects. The domain decomposition of the molecular structure is optimized, and the interactive performance is improved apparently. The results can run smoothly when being published to the iPhone
molecular visualization; virtual science community; virtual world; big data;particle system; conventional expression; OpenGL es2.0
TP 391
A
2095-302X (2013)04-0119-07
2013-01-09;定稿日期:2013-01-30
國家自然面上項目,城市增強現(xiàn)實及搜索應用關鍵技術(61070147);文化部科技創(chuàng)新項目,基于增強現(xiàn)實的文物多維展示 系統(tǒng)平臺研究(16-2012);深圳市科創(chuàng)委基礎研究計劃,基于格子玻爾茲曼方法的多視點建模技術研究(JC201105190951A)
呂智涵(1984-),男,山東青島人,博士,助理研究員,主要研究方向為普適虛擬現(xiàn)實,普適增強現(xiàn)實。E-mail:lvzhihan@gmail.com
蘇天赟(1977-),男,山東青島人,博士,副研究員,主要研究方向為維空間數(shù)據(jù)管理和多維可視化。E-mail:sutiany@fio.org.cn