SLAM十四講CH8代碼

来源:https://www.cnblogs.com/FALCONYU/archive/2022/11/19/16905756.html
-Advertisement-
Play Games

在SLAM十四講的代碼編譯過程中direct_method.cpp和optical_flow.cpp有CV_GRAY2BGR語句的報錯 這是因為CV_GRAY2BGR是opencv2的用法,而slambook2的的cmakelist.txt中opencv的庫用的是opencv4, 因此要將CV_GR ...


在SLAM十四講的代碼編譯過程中direct_method.cppoptical_flow.cppCV_GRAY2BGR語句的報錯
這是因為CV_GRAY2BGR是opencv2的用法,而slambook2的的cmakelist.txt中opencv的庫用的是opencv4,
因此要將CV_GRAY2BGR改為cv::COLOR_BGR2GRAY,這是用來將彩色圖轉換灰度圖的,之後就可以順利編譯
但是編譯之後,在運行代碼的時候會出現英文報錯,意思是輸入的圖片通道數無效,(核心已轉儲)
這是因為在slambook2的ch8中提供的圖片本身就是單通道的灰度圖,不需要進行轉換,因此只需要將相應的代碼
註釋,再修改一下就好了。修改如下:
兩個cpp文件中的有關彩色圖轉換的代碼都需要修改,否則都會報錯。
// cv::cvtColor(img2, img2_CV, cv::COLOR_BGR2GRAY);註釋掉這句
img2.copyTo(img2_CV); 直接將輸入的圖像拷貝給img2

另外圖片路徑問題,由於再編譯的時候我們會習慣mkdir一個build文件夾,編譯到這個文件夾里,因此再運行時
可以將direct_method和optical_flow複製到ch8文件里,然後運行,或者在代碼里將圖片路徑的代碼修改一下
例如:string left_file = "./left.png";改為string left_file = "../left.png";


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • # 1.函數 # 函數就是將一段具有獨特功能的代碼段整合到一個整體並命名 # 在需要的位置調用這個名稱即可完成對應的需求 # 函數的作用:封裝代碼(方便管理),實現代碼重用 print('1.函數作用') name_list = ['小明', '小剛'] # 列表 print(len(name_li ...
  • 不知道大家的電腦桌面一般用的什麼類型的壁紙? 早上來上班,打開電腦,被漂亮的桌面壁紙所吸引,年底將近,這又是哪個地方的節日? 才曉得,原來這是泰國第二大城市清邁的“天燈節”,把🏮送上天空是對神靈的尊敬,代表著擺脫厄運,祈求好運 燈籠通常是由宣紙製成,把點燃的蠟燭固定在中心。火能產生足夠的熱量使燈籠 ...
  • 使用類模板實現STL Vector,點擊查看代碼 #include <iostream> using namespace std; template<typename T> class MyVector { public: //構造函數 MyVector<T>(int size = 10) { T ...
  • 1、Erlnag安裝 1.1、 安裝Erlang版本要求 Erlang安裝需要對應各自的版本 http://www.rabbitmq.com/which-erlang.html 1.2、 Erlang安裝 1、目錄準備 cd /usr/local/src/ mkdir rabbitmq cd rab ...
  • 1、依賴 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> 2、rabbitmq鏈接配置 spring: r ...
  • class位元組碼文件結構 | 類型 | 名稱 | 說明 | 長度 | 數量 | | | | | | | | u4 | magic | 魔數,識別Class文件格式 | 4個位元組 | 1 | | u2 | minor_version | 副版本號(小版本) | 2個位元組 | 1 | | u2 | ma ...
  • JZ73翻轉單詞序列 描述 牛客最近來了一個新員工Fish,每天早晨總是會拿著一本英文雜誌,寫些句子在本子上。同事Cat對Fish寫的內容頗感興趣,有一天他向Fish借來翻看,但卻讀不懂它的意思。例如,“nowcoder. a am I”。後來才意識到,這家伙原來把句子單詞的順序翻轉了,正確的句子應 ...
  • 1.面向對象&面向過程 面向過程思想 步驟清晰簡單,第一步做什麼,第二步做什麼.... 面向過程適合處理一些簡單的問題。 面向對象思想 物以類聚,在思考問題解決方案時會先將問題進行分類,然後對這些分類的問題進行深入思考。最後才是對問題的實現細節進行面向過程的思考。 面向對象適合對大型項目的構建,對復 ...
一周排行
    -Advertisement-
    Play Games
  • 概述:本文代碼示例演示瞭如何在WPF中使用LiveCharts庫創建動態條形圖。通過創建數據模型、ViewModel和在XAML中使用`CartesianChart`控制項,你可以輕鬆實現圖表的數據綁定和動態更新。我將通過清晰的步驟指南包括詳細的中文註釋,幫助你快速理解並應用這一功能。 先上效果: 在 ...
  • openGauss(GaussDB ) openGauss是一款全面友好開放,攜手伙伴共同打造的企業級開源關係型資料庫。openGauss採用木蘭寬鬆許可證v2發行,提供面向多核架構的極致性能、全鏈路的業務、數據安全、基於AI的調優和高效運維的能力。openGauss深度融合華為在資料庫領域多年的研 ...
  • openGauss(GaussDB ) openGauss是一款全面友好開放,攜手伙伴共同打造的企業級開源關係型資料庫。openGauss採用木蘭寬鬆許可證v2發行,提供面向多核架構的極致性能、全鏈路的業務、數據安全、基於AI的調優和高效運維的能力。openGauss深度融合華為在資料庫領域多年的研 ...
  • 概述:本示例演示了在WPF應用程式中實現多語言支持的詳細步驟。通過資源字典和數據綁定,以及使用語言管理器類,應用程式能夠在運行時動態切換語言。這種方法使得多語言支持更加靈活,便於維護,同時提供清晰的代碼結構。 在WPF中實現多語言的一種常見方法是使用資源字典和數據綁定。以下是一個詳細的步驟和示例源代 ...
  • 描述(做一個簡單的記錄): 事件(event)的本質是一個委托;(聲明一個事件: public event TestDelegate eventTest;) 委托(delegate)可以理解為一個符合某種簽名的方法類型;比如:TestDelegate委托的返回數據類型為string,參數為 int和 ...
  • 1、AOT適合場景 Aot適合工具類型的項目使用,優點禁止反編 ,第一次啟動快,業務型項目或者反射多的項目不適合用AOT AOT更新記錄: 實實在在經過實踐的AOT ORM 5.1.4.117 +支持AOT 5.1.4.123 +支持CodeFirst和非同步方法 5.1.4.129-preview1 ...
  • 總說周知,UWP 是運行在沙盒裡面的,所有許可權都有嚴格限制,和沙盒外交互也需要特殊的通道,所以從根本杜絕了 UWP 毒瘤的存在。但是實際上 UWP 只是一個應用模型,本身是沒有什麼許可權管理的,許可權管理全靠 App Container 沙盒控制,如果我們脫離了這個沙盒,UWP 就會放飛自我了。那麼有沒... ...
  • 目錄條款17:讓介面容易被正確使用,不易被誤用(Make interfaces easy to use correctly and hard to use incorrectly)限制類型和值規定能做和不能做的事提供行為一致的介面條款19:設計class猶如設計type(Treat class de ...
  • title: 從零開始:Django項目的創建與配置指南 date: 2024/5/2 18:29:33 updated: 2024/5/2 18:29:33 categories: 後端開發 tags: Django WebDev Python ORM Security Deployment Op ...
  • 1、BOM對象 BOM:Broswer object model,即瀏覽器提供我們開發者在javascript用於操作瀏覽器的對象。 1.1、window對象 視窗方法 // BOM Browser object model 瀏覽器對象模型 // js中最大的一個對象.整個瀏覽器視窗出現的所有東西都 ...