TOP
0
0
【簡體曬書節】 單本79折,5本7折,優惠只到5/31,點擊此處看更多!
增強現實:必知必會的工具與方法(簡體書)
滿額折

增強現實:必知必會的工具與方法(簡體書)

商品資訊

人民幣定價:59 元
定價
:NT$ 354 元
優惠價
87308
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:9 點
相關商品
商品簡介
作者簡介
目次
書摘/試閱

商品簡介

國內首本增強現實類專著,系統講解增強現實的編程環境、實用工具、核心技術和基本原理;圖文并茂、實例豐富,全面講解Processing、Blender、Arduino、Flash等工具以及jMonkeyEngine、FLARManager、ARMonkeyKit、Android版NyARToolkit等多個用于創建增強現實的第三方庫和工具集,可操作性強,無編程經驗亦可掌握。
第1章涵蓋增強現實的概念,一些實用庫的介紹,以及標記的創建方法。第2章對適用于非程序員的Processing編程環境、編程的基礎知識做了適當介紹。第3章利用開源的3D建模和動畫軟件Blender介紹了建模和紋理貼圖基礎知識。第4章繼續講解如何創建增強現實應用所需的帶紋理的、低多邊形動畫角色。第5章講解了Processing中的3D編程,前述創建的3D動畫角色的作用。第6章利用前面章節所學內容以及Processing中專門用于實現增強現實的第三方庫,帶你走進增強現實的世界。第7章介紹Arduino微控制器和用于物理計算的編程環境,學習如何創建可接收來自非視頻通道的真實世界的數據的增強現實應用。第8章介紹ActionScript和FLARManager來實現基于瀏覽器的增強現實應用,把你的增強現實創意變成基于Flash的瀏覽器增強現實應用。第9章介紹如何利用ARMonkeyKit(基于開源的jMonkeyEngine)進行3D增強現實快速原型開發。第10章講解如何安裝用于Android系統的NyARToolKit開發環境,以及如何在Android移動設備上運行增強現實應用。附錄給出Blender 2.49環境到Blender 2.58的轉換,以及書中用到的3D文件格式摘要和導出格式。

作者簡介

Tony Mullen,博士,在計算機圖形和編程方面造詣頗深。任教于日本東京的津田塾大學,精通Python編程以及Blender建模和動畫,著有《IntroducingCharacterAnimationwithBlender》,《3DforiPhoneAppswithBlenderandSIO2》、《MasteringBlender》、《Bounce,Tumble,andSplash!:SimulatingthePhysicalWorldwithBlender3D》、《BlenderStudioProjects:DigitalMovie-Making》。他還是漫畫家、插畫家、作家、合作導演,擔當多個短片的首席動畫師,包括屢獲殊榮的紀實定格電影《GustavBraustacheandtheAuto-Debilitator》(2007)。

增強現實(Augmented Reality,AR)這個術語描述的是向實時媒體中融入虛擬內容和數據所需的各種技術。增強現實的理念就是在實時媒體中盡可能無縫地融入并不真實存在的東西,以此來增強顯示用戶周圍的世界。這個增強可以是任意形式的,可以在實時場景上覆蓋一條文本數據,也可以把完整的、交互性的3D圖形場景融入真實世界。
增強現實的實現主要依靠兩種硬件。一種是能夠采集真實世界的信息的硬件,采集的信息包括影像數據、位置數據、方向數據,以及可能的其他形式的數據。另一種是在重現實時媒體時能夠融入虛擬內容的硬件,并且要能夠以一種有意義的、有用的方式來融入虛擬內容。
隨著近年來智能手機的普及,現在幾乎每個人的手機上都有令人激動的增強現實功能。這導致人們對于移動平臺和一般平臺上的增強現實開發的興趣呈爆炸式增長。隨著筆記本電腦和臺式機上的網絡攝像頭的廣泛使用,用于營銷和創造性用途的基于瀏覽器的增強現實開始走向繁榮。低成本攝像頭和顯示器也使人們能夠低廉、便捷地建立起實時的增強現實裝置,就像樂高(LEGO)公司在他們的一次精彩的基于增強現實的市場營銷活動中所做的一樣。在這次活動中,增強現實裝置安置在玩具店中,當客戶把玩具箱子對準攝像頭時就能夠在顯示器中看到完全融入實時攝像頭視頻中的完整3D模型。
增強現實有多個重要的種類,并且每個種類自身又是一個寬泛的主題。當前關于手機增強現實的書籍主要關注利用移動設備的位置(GPS)和方向(加速計)數據來向真實場景添加注釋或者融入內容的增強現實。這些應用知道你的智能手機上的攝像頭觀察的是什么,因為它們知道你的方位,以及智能手機正面對哪一個方向。基于這些數據,就可以把由集中式服務或者其他用戶已上傳的注釋覆蓋到你的攝像頭場景上。
另一個增強現實方式是使用由攝像頭捕獲的實際圖像內容來確定攝像頭觀察的是什么,該技術被稱為計算機視覺(computer vision)。計算機會處理每個視頻幀的每個像素,評估在時間和空間上該像素與相鄰的像素之間的關系,并識別圖案。此外,當前計算機視覺技術還包括精確的面部識別算法、識別視頻中的活動物體,以及識別熟悉的標記(marker)或者使用一個非常強大的算法識別出特定的視覺圖案的能力(以一種健壯的方式)。
基于計算機視覺的增強現實技術既可以用于移動設備,又可以用于非移動設備。它既能夠用來增強基于位置和方向的增強現實方法,又能夠用來創建不會以任何方式依賴某個特定位置的增強現實應用。計算機視覺算法能夠用來識別包裝材料、產品、衣服、藝術品,或者在其他環境中的很多圖案。
本書關注基于計算機視覺的增強現實的技術和工具。除在營銷活動及其類似情況中的潛在用途之外,基于計算機視覺的增強現實是非常有趣的,并且在我看來還與魔術有點類似。這就是促使我開始研究這個主題并最終寫下本書的原因。我想當前只是對于這個技術的創造性的探索之初,我熱切地渴望看到人們對于這一技術進行深入探索。這也是本書更傾向于那些喜歡探索各種可能性的、有創造力的人的原因,這些人還沒有在軟件方面陷得太深。
為了達到這些目的,我試圖保持討論的技術能夠盡可能簡單易懂。這就是為什么本書大部分內容是關于Processing編程環境的原因。Processing可能是用于創建視覺、交互程序的最容易理解的一個編程環境。Processing是開源跨平臺的,是專門根據設計師和創意人士的需求設計開發的,即為那些沒有必要成為一個高度熟練的程序員的人開發的。Processing有一條比較平緩的學習曲線,盡管簡單但非常強大。除了學習Processing中的編程基礎知識外,你將會學到怎樣使用開源3D應用Blender來創建3D動畫內容。本書的這一部分是完全可選的。如果你想繼續學習其他章節而不想自己制作,那么可以下載本書提供的3D內容文件。
為了使本書盡可能容易理解,我也會講解基于標記的增強現實技術。標記是為增強現實系統提供容易識別的可打印圖案參考點。由于需要使用真實世界中的標記,基于標記的增強現實技術有一些明確的限制。有一種無標記增強現實技術(markerless AR)可以實現一些匪夷所思的事情。無標記增強現實系統能夠參考一個視頻流中的其他可識別特征來創建增強現實環境。例如,一個無標記增強現實系統可能不需要明確的打印標記就能識別出人臉或者其他物體。
現在的問題是,我所知道的可用的無標記增強現實技術對于非程序員來說并不容易理解。與此相反,我認為若一個基于標記的增強現實工具庫的變體則會好很多。這種情況肯定會在將來得到改善。
寫作目的
本書的寫作目的是全面介紹用于創建基于計算機視覺和標記的增強現實內容的一些最方便、可用的工具。在做這些時,一定量的編程是不可避免的,但是編程不是本書的主要目的。本書將教會你如何使用各種各樣的工具,其中每種工具都有不同的功能和優勢。雖然有重疊部分,但是每種工具都有一些不同的編程技巧。為了充分利用這些工具,你需要繼續深入學習你所選擇的編程環境。市面上有很多講解Java或者ActionScript 3D編程的書籍供你參考。
相反,本書將會給予你創建增強現實應用并在計算機(可能是Android移動設備)上運行的機會,并教會你關于創建增強現實作品的基礎知識。基于增強現實技術,你就可以快速地創建一個交互性的增強現實應用。一些章節會較多地涉及需要實際操作的編程活動,而另一些章節可能更多的只是提供對技術的粗略一瞥。你不需要編程技巧就能看懂本書的內容,但是如果你想要深入學習其中的一些主題,那么就需要有一定的編程經驗。
基本上,本書的目的就是要激勵你這樣做。本書可以使你具有以各種設置創建增強現實應用的潛力。可能基于物理計算的增強現實應用的潛力讓你印象深刻;可能你將深入學習Arduino和Processing環境;可能你會有創建一個基于Flash的增強現實游戲的偉大想法;可能你會一頭扎進ActionScript的學習中;或者可能本書會激勵你深入學習Android 3D開發。無論何種情況,本書的目的是幫你邁出第一步,而不是最后一步。
讀者對象
本書的主旨并不是關于怎么創建精良的、部署就緒的軟件,而是以盡可能快速和簡單的方式去試驗和演示增強現實應用。出于這個原因,本書的主要目標讀者是那些有創造力的,渴望探索增強現實的潛力的人,他們會創造帶有融合了虛擬和現實場景的、有趣的、交互性的應用。本書會有意避免講解需要特定編程經驗的內容。即使你沒有任何編程經驗,也能看懂并做一些有趣的事情。
這并不意味著本書對于專業的、經驗豐富的開發者來說一點用處都沒有。本書對于有經驗的開發者的價值主要在于本書所介紹的有趣的技術和庫。對于具有Java或者ActionScript編程經驗的人來說,本書可以作為他們進入增強現實世界的跳板。你可能學不到很多你本來不知道的編程知識,但是你將會學到怎么把自己的增強現實創意變成現實。本書所涉及主題的廣度使得即使你是一個擁有豐富經驗的開發者,也能為你帶來有趣的、富有靈感的新東西。
雖然在本書的描述中,我試圖避免對于編程經驗的假設,但事實是編程是本書所涉及的一切知識的核心。你所擁有的任何編程經驗,即使是不同的編程語言,也會非常有用。對于面向對象編程概念的理解將會非常有助于你對本書的理解,并且我確實認為理解本書的內容理所當然地需要一個基本的編程知識水平。如果你還不理解“for”循環的概念,那么你將會發現本書中的很多內容對你來說都是非常神秘的。
對于在本書中討論的一些技術來說,編程技巧是你繼續深入并創建你自己的內容的前提。例如,如果你不了解Java,那么你根本無法創建自己的Android增強現實應用。本書的目的是循序漸進地介紹某個環境下的增強現實潛力,而不是深入地講解編程技術。
總之,本書面向的是那些對基于計算機視覺和標記的增強現實技術有興趣,但又不知道從何學起的人。你能從本書中收獲多少取決于你在本書上花費了多少精力。
本書主要內容
以下是對本書主要內容的簡單介紹。
第1章 增強現實入門 概述了增強現實的概念并概括性地介紹了要在本書后續章節中詳細講解的庫。該章還介紹了標記的創建,這個主題與后續所有章節都有關。
第2章 Processing概述 對Processing編程環境做了一個由淺入深的、適合非程序員理解的介紹,并在2D圖形示例中講解了Processing編程的基礎知識。
第3章 Blender建模和紋理貼圖基礎 使用開源的3D建模和動畫軟件Blender簡要地介紹了建模和紋理貼圖。
第4章 創建一個低多邊形動畫角色 第3章的基礎上繼續講解創建增強現實應用要使用的紋理低多邊形動畫角色。
第5章 Processing中的3D編程 繼續講解Processing,以介紹3D編程以及第4章中創建的3D動畫角色的作用。
第6章 增強現實與Processing 會利用前面章節中所學到的知識,并通過介紹Processing中專門用于實現增強現實的第三方庫,以帶你進入增強現實的世界。
第7章 與物理世界交互 會介紹Arduino微控制器和用于物理計算的編程環境。你將會學習怎么創建一個能夠接收來自非視頻通道的真實世界的數據的增強現實應用。
第8章 用ActionScript和FLARManager實現基于瀏覽器的增強現實應用 講解如何使用FLARManager工具集把增強現實創意變成在線版。FLARManager工具集用來創建基于Flash的瀏覽器增強現實應用。
第9章 用jMonkeyEngine進行增強現實原型設計 介紹ARMonkeyKit。它是一個基于開源的jMonkeyEngine的用于3D增強現實快速原型開發的強大工具。
第10章 安裝Android版NyARToolKit開發環境 講解如何安裝用于Android系統的NyARToolKit開發環境,以及怎么在Android移動設備上運行增強現實應用。
附錄A 從Blender 2.49到Blender 2.58 教你怎么把在第3章和第4章學到的Blender 2.49的建模、紋理貼圖和動畫概念運用到Blender 2.58中。
附錄B 文件格式和導出 提供了本書中用到的3D文件格式的簡明摘要,還講解了如何以恰當的格式將內容導出到工作環境中。

目次

譯者序
前言

第1章 增強現實入門
1.1 什么是增強現實
1.1.1 增強現實簡史
1.1.2 增強現實應用
1.1.3 原型法的創新性
1.2 相關的工具和技術
1.2.1 ARToolKit
1.2.2 用BuildAR創建快速模型
1.2.3 DART
1.2.4 無標記增強現實與PTAM
1.3 增強現實的必需元素
1.3.1 獲得軟件
1.3.2 Java世界
1.3.3 外設硬件
1.3.4 標記
1.3.5 其他有用物品

第2章 Processing概述
2.1 Processing編程環境
2.1.1 安裝和運行Processing
2.1.2 
第一個Processing程序
2.1.3 交互模式
2.2 在Processing中繪圖
2.2.1 原始形狀
2.2.2 使用HSB顏色
2.2.3 簡單的三角函數
2.2.4 綜合利用
2.3 使用類

第3章 Blender建模和紋理貼圖基礎
3.1 使用Blender建模
3.1.1 應該使用Blender的哪個版本
3.1.2 在Blender 2.49中創建一個簡單的外星人模型
3.2 烘焙一個平滑的環境光遮蔽紋理貼圖
3.3 使用GIMP創建一個完整的紋理貼圖

第4章 創建一個低多邊形動畫角色
4.1 為低多邊形外星人模型施加紋理貼圖
4.2 為這個外星人模型綁定骨骼
4.3 為一個簡單的行走循環創建關鍵幀

第5章 Processing中的3D編程
5.1 P3D和OpenGL環境
5.1.1 3D基本原件
5.1.2 使用OpenGL
5.2 使用OBJ文件
5.2.1 使用OBJLoader
5.2.2 OBJ繪圖模式
5.2.3 探究OBJ文件
5.3 使用OBJ數組的簡單動畫

第6章 增強現實與Processing
6.1 NyAR4psg庫
6.2 充分利用示例代碼
6.3 使用多個標記來控制變換

第7章 與物理世界交互
7.1 使用Arduino來做物理計算
7.1.1 Arduino微控制器
7.1.2 所需的其他硬件
7.1.3 制作一個增強現實玩具天平
7.2 傳感器和電路
7.3 Arduino與Processing之間的通信
7.3.1 Arduino和串口監視器
7.3.2 Processing草案的代碼

第8章 用ActionScript和FLAR-Manager實現基于瀏覽器的增強現實應用
8.1 用于ActionScript的FLARManager增強現實工具集
8.2 配置并運行FLARManager
8.2.1 安裝FLARManager
8.2.2 在Flash Builder中建立工程
8.2.3 在FlashDevelop中建立工程
8.2.4 學習FLARManager的示例
8.3 創建你自己的工程
8.3.1 創建一個新的示例
8.3.2 3D內容的導出和導入
8.3.3 創建Collada文件
8.3.4 添加交互性
8.3.5 FLARManager的自定義標記
8.3.6 故障排除和更多信息
8.3.7 完整的代碼

第9章 用jMonkeyEngine進行增強 現實原型設計
9.1 jMonkeyEngine和ARMonkeyKit的介紹
9.1.1 版本和區別
9.1.2 關于操作系統
9.1.3 準備工作
9.1.4 安裝ARMonkeyKit
9.2 探索學習ARMonkeyKit框架
9.2.1 一個加載OBJ模型的示例
9.2.2 場景圖和節點
9.2.3 學習代碼
9.2.4 其他的功能
9.3 開發者的想法

第10章 安裝Android版
NyARToolkit開發環境
10.1 Android和Android SDK
10.1.1 你需要什么
10.1.2 在Eclipse中安裝Android SDK
10.1.3 創建一個虛擬設備
10.2 Android版NyARToolkit
10.2.1 導入并運行這個工程
10.2.2 設置你的設備
10.3 Android平臺的進一步學習
10.3.1 Android版NyARToolkit的3D資源
10.3.2 學習資源

附錄A 從Blender 2.49到Blender 2.58
附錄B 文件格式和導出

書摘/試閱

第1章
增強現實入門
增強現實(Augmented Reality,AR)是交互設計的一個令人興奮的領域,在增強現實中虛擬內容可以無縫地整合到真實場景的顯示中。隨著可產生有趣的增強現實效果的個人移動設備的興起,增強現實的巨大潛能開始被發掘出來。本章的目的是幫助你熟悉那些實現增強現實試驗和探索所必需的術語、工具和技術。
在本章中,你將學習下面的主題:
什么是增強現實
相關的工具和技術
增強現實的必需元素
1.1 什么是增強現實
術語“增強現實”描述的是一個技術組合,即向真實視頻顯示中實時融入計算機生成內容的技術。習慣上,增強現實與虛擬現實(Virtual Reality,VR)是不同的概念,虛擬現實是指創建完整的、身臨其境的3D環境,而增強現實是指使用各種硬件技術來創建一個基于真實世界的、帶注解的或者“增強的”復合場景。
……

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 308
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區