依賴庫:Ceres-solver-2.0.0安裝

依賴庫:Ceres-solver-2.0.0安裝

  • 前言
  • 安裝ceres-solver-2.0.0
  • 驗證

前言

Ceres Solver是谷歌開源的C++非線性優化庫,能夠解決有約束或無約束條件下的非線性最小二乘問題。2010年之后大量的運用在谷歌的產品開發中,尤其在谷歌開源的cartographer中被大量的使用。

ceres可以在Linux,Windows,macOS,Andrioid,IOS系統進行安裝使用

ceres被命名是由于高斯使用了最小二乘方法成功的預測了繞行至太陽背后的小行星ceres的位置。

Ceres Solver 官網:http://ceres-solver.org/
github:https://github.com/ceres-solver/ceres-solver

本篇博客在 ubuntu 20.04 環境下安裝 Ceres-solver-2.0.0

安裝ceres-solver-2.0.0

先安裝ceres依賴

sudo apt-get install cmake
sudo apt-get install libgoogle-glog-dev libgflags-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libeigen3-dev

下載ceres-solver-2.0.0

git clone https://github.com/ceres-solver/ceres-solver # 這樣是安裝最新版本
git clone -b 2.0.0 https://github.com/ceres-solver/ceres-solver.git  #安裝指定版本

在這里插入圖片描述
下載完成后形成該文件

然后進行編譯

cd ceres-solver
mkdir build
cd build
cmake ..

成功后提示

– Build the examples.
– Configuring done
– Generating done
– Build files have been written to: /home/jk-jone/ceres-solver/build

在這里插入圖片描述
然后再進行make

make -j4

成功后顯示:

[ 99%] Built target ba_iterschur_suitesparse_clusttri_user_test
[100%] Linking CXX executable …/…/…/bin/ba_sparsecholesky_suitesparse_user_threads_test
[100%] Built target ba_sparsecholesky_suitesparse_user_threads_test

在這里插入圖片描述
最后進行安裝

sudo make install

成功后顯示 :

– Installing: /usr/local/include/ceres/internal/config.h
– Installing: /usr/local/include/ceres/internal/export.h
– Installing: /usr/local/lib/cmake/Ceres/CeresTargets.cmake
– Installing: /usr/local/lib/cmake/Ceres/CeresTargets-release.cmake
– Installing: /usr/local/lib/cmake/Ceres/CeresConfig.cmake
– Installing: /usr/local/lib/cmake/Ceres/CeresConfigVersion.cmake
– Installing: /usr/local/lib/cmake/Ceres/FindGlog.cmake

在這里插入圖片描述
至此Ceres-solver-2.0.0安裝完畢

驗證

在build的文件夾下 生成的bin文件夾下 有個 simple_bundle_adjuster 的運行文件
在這里插入圖片描述
在ceres-slover文件夾下的data文件夾中有個 problem-16-22106-pre.txt 數據文件
在這里插入圖片描述
可用用這兩個文件進行安裝是否成功的驗證

在終端運行

cd ceres-solver/build
bin/simple_bundle_adjuster ../data/problem-16-22106-pre.txt

在這里插入圖片描述
終端出現上面的求解過程與結構,說明安裝正常。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/160195.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/160195.shtml
英文地址,請注明出處:http://en.pswp.cn/news/160195.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

圖像分類單張圖片預測準確率達到百分之百

在圖像分類任務中,針對單個圖片得到100%的準確率是有可能但極其罕見的,并且不代表模型在整個測試集上也能達到100%的準確率。 ??針對單個圖片獲得100%準確率的情況可能包括以下幾種情形: 圖片本身特殊性: 如果測試集中的某張圖片在訓練集中…

【python基礎(1)】變量和簡單數據類型

文章目錄 一. 變量的命名和使用二. 字符串1. 修改字符串的大小寫2. 在字符串中使用變量3. 使用制表符或換行符來添加空白4. 刪除空白 三. 數1. 整數2. 浮點數3. 整數和浮點數4. 數中的下劃線5. 同時給多個變量賦值6. 常量 三. 注釋四. Python之禪 一. 變量的命名和使用 變量規…

各種LLM數據集包括SFT數據集

各種LLM數據集包括SFT數據集 數集介紹和 hf上的名字對話數據生成方法交通領域數據集SFT 的解釋數集介紹和 hf上的名字 通用預訓練數據集 SFT datasets SFT 數據集 50萬條中文ChatGPT指令Belle數據集:BelleGroup/train_0.5M_CN 100萬條中文ChatGPT指令Belle數據集:BelleGrou…

C++學習 --stack

目錄 1, 什么是stack 2, 創建stack 2-1, 標準數據類型 2-2, 自定義數據類型 2-3, 其他創建方式 3, 操作stack 3-1, 賦值 3-2, 插入元素(push) 3-3, 查詢元素 3…

Linux的簡單使用

Linux命令使用技巧 Tab鍵自動補全連續兩次Tab鍵,給出操作提示使用上下箭頭快速調出曾經使用過的命令使用clear命令或者Ctrll快捷鍵實現清屏Linux的常用命令 命令作用詳細說明ls [-al] [dir]顯示指定目錄下的內容 -a 顯示所有文件及目錄 (. 開頭的隱藏文件也會列出) …

sonar對webgoat進行靜態掃描

安裝sonar并配置 docker安裝sonarqube,sonarQube靜態代碼掃描 - Joson6350 - 博客園 (cnblogs.com) 對webgoat進行sonar掃描 掃描結果 bugs Change this condition so that it does not always evaluate to "false" 意思是這里的else if語句不會執行…

“我,24歲,年薪20萬”:選對了行業究竟多重要?

那些在職場上順風順水,按部就班拿到高薪的人都有什么特點? 今天的主人公Flee告訴我,是穩。 在她的故事里,我看到一個“別人家的姑娘”,是怎樣在職場上穩步晉升,大學畢業僅2年,就拿到18.6K月薪&a…

「go查漏補缺」命名規則以及 GROM 結構體的應用

概述: 在學習GORM過程中,總是在調用結構體和文件導入這里出錯,所以整理了以下文檔用于梳理變量/結構體命名規則和import導入的知識點 一、變量/結構體命名規則 變量/結構體都遵守同樣的命名規則:可見性由首字母大小寫決定 大寫…

單一職責原則 (Single Responsibility Principle)

定義: 單一職責原則指一個類應該僅有一個引起它變化的原因。這個原則強調一個類應該只負責一個功能領域中的相應職責,或者可以理解為一個類應該只有一個改變的原因。 解決的問題: 降低類的復雜度,一個類只負責一項任務會更加清…

2022年12月 Scratch(二級)真題解析#中國電子學會#全國青少年軟件編程等級考試

Scratch等級考試(1~4級)全部真題?點這里 一、單選題(共25題,每題2分,共50分) 第1題 一個骰子,從3個不同角度看過去的點數如圖所示,請問5的對面是什么點數?(?) A:1 B:3 C:4 D:6 答案:A 根據圖三,用右手定則,大拇指朝上指向6所對的方向,其余四指握起來…

目標檢測框存在內嵌情況分析與解決

這里寫目錄標題 問題描述原因分析與解決方法:后續及思考參考文檔 問題描述 目標檢測模型輸出的檢測框存在內嵌情況。 原因分析與解決方法: 根據經驗,第一感覺是后處理nms部分出了問題。來看下對應的代碼: static float CalcIou…

通過對比 入庫申請->入庫審核流程 與 直接入庫 代碼實現,解決前者誤修改stock_info表is_in=1或2數據的bug

入庫申請->入庫審核流程&#xff1a; 提交按鍵定義位置&#xff1a;src\views\purchase\rurchase\RurchaseAdd.vue <a-button click"handleSubmit" type"primary" :loading"loading">確認物品已入庫</a-button> <template&…

二、類與對象(二)

8 this指針 8.1 this指針的引入 我們先來定義一個日期的類Date&#xff1a; #include <iostream> using namespace std; class Date { public:void Init(int year, int month, int day){_year year;_month month;_day day;}void Print(){cout << _year <&l…

Python BDD之Behave測試報告

behave 本身的測試報告 behave 本身提供了四種報告格式&#xff1a; pretty&#xff1a;這是默認的報告格式&#xff0c;提供顏色化的文本輸出&#xff0c;每個測試步驟的結果都會詳細列出。plain&#xff1a;這也是一種文本格式的報告&#xff0c;但沒有顏色&#xff0c;并且…

電動汽車充放電V2G模型MATLAB代碼

微?關注“電氣仔推送”獲得資料&#xff08;專享優惠&#xff09; 主要內容&#xff1a; 本程序主要建立電動汽車充放電V2G模型&#xff0c;采用粒子群算法&#xff0c;在保證電動汽車用戶出行需求的前提下&#xff0c;為了使工作區域電動汽車盡可能多的消納供給商場基礎負荷…

【辦公常識】寫好的代碼如何上傳?使用svn commit

首先找到對應的目錄 找到文件之后點擊SVN Commit

五大資源之Service(可以固定IP)

Service可以看作是一組同類Pod對外訪問接口,借助Service應用可以方便的實現服務發現與負載均衡 創建集群內部可以訪問Service #暴露Service(也創建在了namespace dev下) [root@master ~]# kubectl expose deployment(pod控制器) nginx --name=svc-nginx1 --type=Cluste…

基于原子軌道搜索算法優化概率神經網絡PNN的分類預測 - 附代碼

基于原子軌道搜索算法優化概率神經網絡PNN的分類預測 - 附代碼 文章目錄 基于原子軌道搜索算法優化概率神經網絡PNN的分類預測 - 附代碼1.PNN網絡概述2.變壓器故障診街系統相關背景2.1 模型建立 3.基于原子軌道搜索優化的PNN網絡5.測試結果6.參考文獻7.Matlab代碼 摘要&#xf…

mysql 中 varchar 和 text 的區別

varchar 數據類型 如何理解 varchar(50) varchar(50) 中的 50 在 mysql5.0 及以上默認是存儲的字符數&#xff0c;5.0 以下&#xff0c;默認是字節長度。 varchar 占據的存儲空間 varchar 占據的存儲空間大概有以下幾部分組成&#xff1a; varchar 類型用來存儲【實際字符…

Python入門教學——輸入任意長度的int整型一維數組

使用python輸入一個任意長度的整型一維數組&#xff1a; nums input("請輸入整數數組&#xff0c;用空格分隔&#xff1a; ") nums [int(i) for i in nums.split( )] # 將每個數轉換為整型后輸出 運行結果&#xff1a; 【注】如果不強制轉換類型&#xff0c;數字…