張星 奚欣陽 謝敏 王道彥 李新宇 陳康


摘要:針對目前市場上電子書泛濫,古籍內容枯燥幾乎無人閱讀的現狀,該文提出一種3D擬真書的設計與實現方案。該方案運用相關3D 前沿技術,并以攝像頭的動態手勢識別以及計算機全息圖像的實時生成兩項技術作為突破口,將unity作為數據處理中心和中轉平臺,調用百度、微信等API來更好地實現和完善古籍3D擬真書設計。此設計具有廣泛的應用前景且還含有較大的提升空間。
關鍵詞:全息圖像;古籍;文物;手勢識別;語音交互 ;翻譯
中圖分類號:TP311? ? 文獻標識碼:A
文章編號:1009-3044(2019)17-0095-02
開放科學(資源服務)標識碼(OSID):
在互聯網+背景下,許多傳統出版單位紛紛進行轉型,將大量的實體書轉換成電子書,對諸多古籍進行了數字化處理。但對于書籍的處理目前也僅僅只局限于數字化,這種模式的局限隨著3D全息、虛擬現實與增強現實等技術的橫空出世被進一步放大。用戶的視角及其體驗感在隨著科技的發展被分別逐步地放大與細化,電子書已經滿足不了人們對于書籍內容生動化、細致化、動態化的精致需求。因此為了更加貼合大眾需求,結合時代與科技特點,設計了3D擬真書。
1 結構流程圖與實現方案綜述
1.1? 3D擬真書的結構流程圖
1.2 實現方案綜述
1)我們選用內嵌10個椎形3D全息膜的環形展柜來作為展示的載體,將展柜分成10個部分,每一個部分與中央處理器中的unity project項目連接。每個柜臺會配有相應的耳機等接收信息設備,保證不受外界干擾,且能有效進行實時數據傳輸,從而形成信息的閉合回路。
2)在unity中新建3D擬真書project,建立3D書籍模型,通過古籍掃描儀獲得書籍內容圖片并將其作為3D書籍書頁貼圖。將每張page標明序號,方便進行程序編寫。
3)通過申請微信API,下載SDK文件,提供應用程序編程接口并在相應的文檔中寫入注冊接口與授權接口,使得微信與unity projec能夠相互調用。用戶通過掃描相應的微信二維碼,登錄微信程序界面,其中含有書籍選擇、翻譯界面調用等相應功能。
4)架設一臺普通攝像頭,與讀取視頻軟件VFW相連接,將拍攝的RGB圖像轉換成HSV圖像,再經過去噪與HOG特征提取,關鍵幀提取進行手勢匹配,實現動態手勢識別。
5)在unity中,將3D書籍翻頁動畫切分成四個分屏,設置四個攝像頭,精確計算四個坐標,經過全息膜反射,使其在相同屏幕上的同一個位置實現重合
2 關鍵技術使用與優化
2.1 動態手勢識別
手勢識別是目前人機交互領域的研究熱點之一。[1]由于3D擬真書是投放在復雜環境下進行使用,干擾信息多種多樣,因此如何防干擾,優化識別效果是實現動態手勢識別的關鍵所在。
人體膚色在空間中具有聚類特征,會在顏色空間中形成小的聚簇,與其他物體區別較大,常用來進行手勢分割。普通攝像頭拍攝的圖像是RGB模式的,不利于膚色分割,而在HSV或者HSI空間中,人體膚色特征最明顯,因此需要轉換到HSI或者HSV模式來進行分割。我們選擇與人體感知色彩一致HSV空間模式。
大家所認同的歸一化RGB空間到HSV空間的映射過程如下:
除了物體所帶來的干擾外,在拍攝過程會有一些比較復雜的背景或者電子噪聲出現且分布不均勻,導致捕獲的圖像背景復雜且有很多孔洞,需要進行去噪處理。在這種情況下,可以采用非線性去除噪聲的方法—中值濾波。中值濾波技術能夠在一定條件下克服線性濾波器等帶來的圖像細節模糊,而且對濾除脈沖干擾及圖像掃描噪聲最為有效。除此之外,我們還可以采用形態學以及其他方法去修復小面積的孔洞或減少干擾的出現,進而完善圖像。
我們采用了人為地在用戶后面設置了一塊弧形的黑色擋板的方法,用于降噪和防止他人手部對手勢識別發生干擾,并且劃定攝像頭識別范圍,消除一些不必要的干擾,提升動態手勢識別效果。
2.2 全息圖像生成
全息圖像生成分為兩個步驟,第一步在計算機內制作3D全息視頻源,第二步利用相關設備將圖像展示出來。
在unity 所制作的3D翻頁動畫中拖入四個攝像機,呈十字狀,且相互到目標的距離保持相同,計算好攝像機坐標并分別設置在模型前面、背面、左側、右側四個方位。進一步計算四個攝像機的屏幕坐標,確保四個方向的照射畫面能正確顯示在同一個屏幕上,實現四分屏的效果。為了能夠使得四個方位的畫面重疊,還需要調整好攝像頭的深度。
進入動畫的時間配置選項中,修改時間,點擊進入關鍵幀模式,修改時間軸,將四個關鍵幀旋轉90度。[3]接著將四個攝像頭內容批量導出,并進行批處理渲染操作,遵照你想要的效果,添加四個攝像頭,調整好路徑及名稱。最后進行內容合成,形成完整的全息動畫。
目前我們選用的是應用幻影成像原理的投影方法,能夠有效節省成本且操作便捷。幻影成像是利用45度光學反射原理實現的懸空幻想效果[4],幻影成像系統同樣是基于“實景造型”和“幻影”的光學成像結合,將所拍攝的影像(人、物)投射到布景箱中的主體模型景觀中,演示故事的發展過程[5],即將四個攝像機中的畫面內容投射到錐形的倒金字塔中,實現畫面重疊。
椎形倒金字塔是將四張大小合適的3D全息膜,裁剪并拼湊而成的。這種方法簡單易操作,且所營造的效果也很好,完全可以因地制宜。如果客觀條件允許,可以使用空氣投影的方式,即使用噴霧設備產生大量人造霧,結合空氣流動學原理而制造出來平面霧屏,利用的是海市蜃樓的原理,在效果上會更令人驚嘆。[6]
2.3 翻譯與模型調用
在設計3D擬真書時,我們考慮到古籍的文字為文言文,又鑒于用戶的學歷與知識儲備等因素,因此在3D擬真書中建立了翻譯系統。 用戶在翻看書籍時若對相關文字有疑惑,可通過動態手勢實現文字貼圖與解釋貼圖切換。為了使3D擬真書在運行時更穩定,更迅速,我們調用百度翻譯來進行實時翻譯。具體步驟如下:
① 申請百度翻譯API獲得相關代碼信息
② 在VS2010中新建一個應用程序,使其構造出一個較為簡單的百度翻譯界 面,在窗體主體上添加兩個richTextBox按鈕,一個是輸入未翻譯的文言文,另一個則是輸出翻譯之后的白話文。在添加兩個button按鈕,即button1執行翻譯功能,button2實現語音朗讀功能。如果要實現語音朗讀的功能,則要新建項目TTS[7](從文本到語音(Text To Speech)),繼續添加引用System.Speech等,編寫相應代碼實現語音朗讀功能。
③ 建立一個含有百度翻譯API的DLL文件
④ 將DLL文件調用命令寫入代碼中。在上面所提到的按鈕button1和button2,在它們的單擊事件中分別寫入含有百度翻譯API的DLL文件的調用代碼和引用System.Speechd的TTS。
我們調查了在市場上的具有相同功能的產品,并結合實際制作的3D書籍模型,發現存在這樣的一個問題:書頁上的內容貼圖會因為比例、軟件等原因,展示出來較為模糊。
經過團隊討論后,提供了兩種解決思路:
① 在獲得內容圖片后,用PS等修圖軟件對圖像進行進一步處理,將圖片矢量化,防止圖片出現鋸齒狀。作為貼圖后,在unity中,找到Materials,修改相應貼圖的inspector中的一些選項。
② 在文字翻譯基礎上,申請百度Rest Api, 使用百度語音識別和語音合成,在unity中實現語音交互。通過語音交互,將文言文解釋轉變成語音形式,傳遞給用戶。
3 未來展望
通過查閱大量資料、市場調研、咨詢專業人士等過程,3D擬真書的設計與實現方案在邏輯及理論上已具備較高的嚴密性。在技術層面,也綜合利用3D全息、3D建模等前沿技術去實現,具有較高的可操作性,最終可實現手勢翻動全息書籍的效果。
但是目前3D擬真書的設計與實現依然處于較為簡單的層次,在很多地方仍舊不夠完善,如在書籍內容方面較為生硬,人機交互較少等。
我希望在未來能夠實現三種模式:書籍模式、動漫模式、游戲模式。書籍模式為目前我們設計的方案,也是最基礎的方案。而動漫模式可以實現看書就像看電影的效果,并且可以進行一定程度的語音交互,能夠更大程度地去幫助用戶理解與記憶書中的內容。游戲模式則是把書籍中的知識融會貫通,使用 AR(AugmentedReality)/VR(Virtual Reality)等前沿技術,搭建游戲場景,將現代科技與古代文明相結合,解決古籍展示推廣中的關鍵問題。并且這三種模式可以讓用戶自由選擇,真正實現娛教結合。
3D擬真書未來不僅僅可以用于書籍的展示,同樣也可以用于文物的展示。自《國家寶藏》這一檔節目開播以來,社會上反響劇烈。人們在節假日期間爭相去各大博物館觀看文物,且都是人滿為患。如果將3D擬真書用于文物展示,則可以減少擁擠程度,不僅能幫助老年人節省體力(即使不去各個展廳奔走,一樣可以全方位地觀賞文物)而且能夠幫助人們提前做好計劃,避免不必要的時間浪費。對于各大博物館而言,可以大幅度地減少文物復制地成本,避免文物復制地風險。
本文中的3D擬真書設計與實現方案,不僅具有良好的應用前景,而且可操作性很高,實現成本低。
參考文獻:
[1] Nasiri M,Mosavi M R,Mirzakuchaki S.Infrared dim small target detection with high reliability using saliency map fusion [J].IET Image Processing,2016,10(7):524-533.
【通聯編輯:聞翔軍】