SLAM視覺十四講: 雙倍內容強化版
作者 | 高翔/ 張濤/ 劉毅/ 顏沁睿 |
---|---|
出版社 | 聯合發行股份有限公司 |
商品描述 | SLAM視覺十四講: 雙倍內容強化版:本書特色SLAM視覺屬於電腦視覺和機器人研究的交叉領域,本書系統介紹SLAM視覺(同時定位與地圖構置)所需的基本知識與核心演算法,既包括 |
作者 | 高翔/ 張濤/ 劉毅/ 顏沁睿 |
---|---|
出版社 | 聯合發行股份有限公司 |
商品描述 | SLAM視覺十四講: 雙倍內容強化版:本書特色SLAM視覺屬於電腦視覺和機器人研究的交叉領域,本書系統介紹SLAM視覺(同時定位與地圖構置)所需的基本知識與核心演算法,既包括 |
內容簡介 本書特色 SLAM視覺屬於電腦視覺和機器人研究的交叉領域,本書系統介紹SLAM視覺(同時定位與地圖構置)所需的基本知識與核心演算法,既包括數學理論基礎,如三維空間的剛體運動、非線性優化;又涵蓋電腦視覺的演算法實現,例如多視圖幾何、回環檢測等。書中提供大量的實例程式碼供讀者學習,從而更深入地掌握內容。 ► 更多的實例 增加一些實驗程式來介紹演算法的原理。本書中的許多程式,除了呼叫函數庫函數,還提供底層的實現。 ► 更深入的內容 主要是從第7講至第12講的部分,重新定義那些容易引起誤解的內容。 ► 更完整的專案項目 在介紹所有必要知識之後,向讀者展現一個完整的SLAM 系統是如何工作的。以精簡的程式實現完整的功能,讀者會獲得一個由幾百行程式實現、有完整前後端的SLAM 系統。 ► 更通俗、簡潔的表達 這是一本好書的標準,作者重新製作部分插圖,清晰簡明的讓讀者更清楚易懂。 內容簡介 這是一本介紹視覺SLAM 的書。 SLAM 是Simultaneous Localization and Mapping 的縮寫,中文譯作「同時定位與地圖型建置」。它是指搭載特定感測器的主體,在沒有環境先驗資訊的情況下,於運動過程中建立環境的模型,同時估計自己的運動。 本書的主題就是SLAM視覺, SLAM 的目的是解決「定位」與「地圖型建置」這兩個問題。也就是說,一邊要估計感測器本身的位置,一邊要建立周圍環境的模型。近年來隨著科技的發展,湧現出了一大批與SLAM 相關的應用點。 本書全面系統地介紹了以視覺感測器為主體的視覺SLAM 技術,詳細地介紹SLAM 的理論背景、系統架構,以及各個模組的主流做法。同時,極其重視實作:本書介紹的所有重要演算法,都將列出可以執行的實際程式,以求加深讀者的了解。並把完整的SLAM 系統分成幾個模組:視覺里程計、後端最佳化、建圖,以及回路檢測。我們將陪著讀者一點點實現這些模組中的核心部分,探討它們在什麼情況下有效,什麼情況下會出問題,並指導大家在自己的機器上執行這些程式。你會接觸到一些必要的數學理論和許多程式設計知識,會用到Eigen、OpenCV、PCL、g2o、Ceres 等函數庫,掌握它們在Linux 作業系統中的使用方法。 全書分為三大部分: 败「數學基礎篇」 第1 講 是預備知識,介紹本書的基本資訊,習題部分主要包含一些自測題。 第2 講 為SLAM 系統概述,介紹一個SLAM 系統由哪些模組成,各模組的實際工作是什麼。實作部分介紹程式設計環境的架設過程及IDE 的使用。 第3 講 介紹3D 空間剛體運動,你將接觸到旋轉矩陣、尤拉角、四元數的相關知識,並且在Eigen 中使用它們。 第4 講介紹李群與李代數。即使你現在不懂李代數為何物,也沒有關係。你將學到李代數的定義和使用方式,然後透過Sophus 操作它們。 第5 講 介紹針孔相機模型及影像在電腦中的表達。你將用OpenCV 調取相機的內外參數。 第6 講 介紹非線性最佳化,包含狀態估計理論基礎、最小平方問題、梯度下降方法。你會完成一個使用Ceres 和g2o 進行曲線擬合的實驗。 败「實作應用篇」 第7 講 為特徵點法的視覺里程計。該講內容比較多,包含特徵分析與比對、對極幾何約束的計算、PnP 和ICP 等。在實作中,你將用這些方法估計兩個影像之間的運動。 第8 講 為直接法的視覺里程計。你將學習光流和直接法的原理,然後實現一個簡單的直接法運動估計。 第9 講 為後端最佳化,主要為對Bundle Adjustment(BA)的深入討論,包含基本的BA,以及如何利用稀疏性加速求解過程。你將用Ceres 和g2o 分別撰寫一個BA 程式。 第10 講 主要介紹後端最佳化中的位姿圖。位姿圖是表達關鍵頁框之間約束的一種更緊湊的形式。我們會介紹SE(3)和Sim(3)的位姿圖,同時你將使用g2o 對一個位姿球進行最佳化。 第11 講 為回路檢測,主要介紹以詞袋方法為主的回路檢測。你將使用DBoW3 撰寫字典訓練程式和回路檢測程式。 第12 講 為地圖型建置。我們會討論如何使用一元進行稠密深度圖的估計(以及這是多麼不可靠),然後討論RGB-D 的稠密地圖型建置過程。你會撰寫極線搜索與塊符合的程式,然後在RGB-D 中遇到點雲地圖和八叉樹地圖的建置問題。 第13 講 是專案實作,你將架設一個二元視覺里程計架構,綜合運用先前學過的知識,實現它的基本功能。在這個過程中,你會碰到一些問題,例如最佳化的必要性、關鍵頁框的選擇等。我們會在Kitti 資料集上測試它的效能,討論一些改進的方法。 第14 講 主要介紹目前的開放原始碼SLAM 方案及未來的發展方向。相信在閱讀了前面的知識之後,你會更容易了解它們的原理,實現自己的新想法。 適合讀者群 機器人技術工程師、對 SLAM 有興趣者,或 SLAM 相關課程科系師生作為教材或自學參考。
作者介紹 高翔 張濤 劉毅 顏沁睿高翔 清華大學自動化系博士,慕尼克工業大學博士後。專注於電腦視覺、定位與建圖、機器學習等,著、譯作有《視覺SLAM十四講:從理論到實踐》、《機器人學中的狀態估計》,在RAS、Auto Robotics、IROS等期刊會議上發表論文。現從事自動駕駛車輛研發工作。 張濤 清華大學自動化系教授。1999年獲清華大學自動化系檢測技術與自動化裝置專業博士學位,2002年獲日本國立佐賀大學工學系研究科系統控制專業博士學位。研究課題包括機器人、航空航太、電腦視覺等。 劉毅 華中科技大學圖像與人工智慧研究所博士。專注於影像處理、三維重建、視覺SLAM,以及感測器融合研究和應用,曾在深圳市大疆創新公司,英特爾中國研究院等單位實習。 顏沁睿 比利時荷語魯汶大學人工智慧碩士,電子工程學士(GroupT)。長期致力於研究人工智慧技術在機器人領域的應用,包括電腦視覺、機器學習和SLAM。現擔任地平線機器人公司智慧駕駛部演算法工程師。
產品目錄 前言 01 | 預備知識 1.1 本書講什麼 1.2 如何使用本書 1.3 風格約定 1.4 致謝和宣告 1.5 習題(基礎自測題) 第一部分 數學基礎 02 | 初識SLAM 2.1 引子:小蘿蔔的實例 2.2 經典視覺SLAM 架構 2.3 SLAM 問題的數學表述 2.4 實作:程式設計基礎 2.5 習題 03 | 3D 空間剛體運動 3.1 旋轉矩陣 3.2 實作:Eigen 3.3 旋轉向量和尤拉角 3.4 四元數 3.5 相似、仿射、射影轉換 3.6 實作:Eigen 幾何模組 3.7 視覺化示範 3.8 習題 04 | 李群與李代數 4.1 李群與李代數基礎 4.2 指數與對數對映 4.3 李代數求導與擾動模型 4.4 實作:Sophus 4.5 相似轉換群與李代數 4.6 小結 4.7 習題 05 | 相機與影像 5.1 相機模型 5.2 影像 5.3 實作:電腦中的影像 5.4 實作:3D 視覺 5.5 習題 06 | 非線性最佳化 6.1 狀態估計問題 6.2 非線性最小平方 6.3 實作:曲線擬合問題 6.4 小結 6.5 習題 第二部分 實踐應用 07 | 視覺里程計1 7.1 特徵點法 7.2 實作:特徵分析和比對 7.3 2D−2D:對極幾何 7.4 實作:對極約束求解相機運動 7.5 三角測量 7.6 實作:三角測量 7.7 3D−2D:PnP 7.8 實作:求解PnP 7.9 3D−3D:ICP 7.10 實作:求解ICP 7.11 小結 7.12 習題 08 | 視覺里程計2 8.1 直接法的引出 8.2 2D光流 8.3 實作:LK 光流 8.4 直接法 8.5 實作:直接法 8.6 習題 09 | 後端1 9.1 概述 9.2 BA與圖最佳化 9.3 實作:Ceres BA 9.4 實作:g2o 求解BA 9.5 小結 9.6 習題 10 | 後端2 10.1 滑動視窗濾波和最佳化 10.2 位姿圖 10.3 實作:位姿圖最佳化 10.4 習題 11 | 回路檢測 11.1 概述 11.2 詞袋模型 11.3 字典 11.4 相似度計算 11.5 實驗分析與評述 11.6 習題 12 | 建圖 12.1 概述 12.2 一元稠密重建 12.3 實作:一元稠密重建 12.4 RGB-D 稠密建圖 12.5 TSDF 地圖和Fusion 系列 12.6 小結 12.7 習題 13 | 實作:設計SLAM 系統 13.1 為什麼要單獨列專案章節 13.2 專案架構 13.3 實現 13.4 實驗效果 13.5 習題 14 | SLAM:現在與未來 14.1 目前的開放原始碼方案 14.2 未來的SLAM 話題 14.3 習題 A | 高斯分佈的性質 A.1 高斯分佈 A.2 高斯分佈的運算 A.3 複合的實例 B | 矩陣求導 B.1 純量函數對向量求導 B.2 向量函數對向量求導 C | ROS 入門 C.1 ROS 是什麼 C.2 ROS 的特點 C.3 如何快速上手ROS
書名 / | SLAM視覺十四講: 雙倍內容強化版 |
---|---|
作者 / | 高翔 張濤 劉毅 顏沁睿 |
簡介 / | SLAM視覺十四講: 雙倍內容強化版:本書特色SLAM視覺屬於電腦視覺和機器人研究的交叉領域,本書系統介紹SLAM視覺(同時定位與地圖構置)所需的基本知識與核心演算法,既包括 |
出版社 / | 聯合發行股份有限公司 |
ISBN13 / | 9789865501044 |
ISBN10 / | 986550104X |
EAN / | 9789865501044 |
誠品26碼 / | 2681825869003 |
頁數 / | 480 |
注音版 / | 否 |
裝訂 / | P:平裝 |
語言 / | 1:中文 繁體 |
尺寸 / | 23X17CM |
級別 / | N:無 |
重量(g) / | 654.8g |
最佳賣點 : SLAM視覺屬於電腦視覺和機器人研究的交叉領域,本書系統介紹SLAM視覺(同時定位與地圖構置)所需的基本知識與核心演算法,既包括數學理論基礎,如三維空間的剛體運動、非線性優化;又涵蓋電腦視...
自序 : 作者序
《視覺SLAM 十四講:從理論到實作》出版已經兩年多。兩年來,這本書經歷了13 次重印,在GitHub 上擁有2500 個星星,也在業界引起了廣泛的關注和討論。大多數讀者評價是正面的,當然,書中也有些地方不夠令人滿意。例如,這本書針對初學者,有些應該深入的地方講得不夠深入;書中的數學符號不夠統一,有些地方容易令讀者產生誤解;專案實作章節內容不夠豐富,介紹較淺,等等。實際上,我在2016 年中期開始創作第1 版,所有文字、圖片和程式都是從零開始準備的,再加上當時在讀博士,也是第一次寫這麼厚的書,錯漏在所難免。2018 年,我在慕尼黑工大給學生講SLAM 課程,期間又累積了一些材料,所以本書從內容上更豐富、更合理。在第1 版的基礎上做了以下改動:
1. 更多的實例。增加了一些實驗程式來介紹演算法的原理。在第1 版中,多數實作程式呼叫了各種函數庫中的內建函數,現在我認為更深入地介紹底層計算會更好,所以本書中的許多程式,除了呼叫函數庫函數,還提供了底層的實現。
2. 更深入的內容。主要是從第7 講至第12 講的部分,同時刪除了一些泛泛而談的邊角料(例如GTSAM 相關內容1)。對第1 版大部分數學公式進行了審查,重新定義了那些容易引起誤解的內容。
1 因數圖最佳化現在已有完整的書籍《機器人感知:因數圖在SLAM 中的應用》,用一小節很難介紹清楚。
3. 更完整的專案項目。將第1 版的第9 講移至第13 講。於是,我們可以在介紹了所有必要知識之後,向大家展現一個完整的SLAM 系統是如何工作的。
相比於第1 版,我在本書的專案中將追求以精簡的程式實現完整的功能,你會獲得一個由幾百行程式實現的、有完整前後端的SLAM 系統。
4. 更通俗、簡潔的表達。我覺得這是一本好書的標準,特別是當介紹一些看起來高深莫測的數學知識時。我重新製作了部分插圖,使它們即使在黑白印刷條件下也能看起來很清楚。
當然,每講前的簡筆劃我是不會改的!
總之,我儘量做到深入淺出,也希望本書能夠給你帶來更加舒適的閱讀體驗。