ifstream是操作檔案的輸入流類。
建立乙個讀取檔案的fassociation物件。
ifstream::open的宣告為:
void open (const char* filename, ios_base::openmode mode = ios_base::in);
需要乙個char *型的指標,strassociationfilename.c_str()的作用是轉換為乙個和c語言類似的字串型別。
如果檔案為空,則fassociation.eof()返回為true,迴圈結束。
getline(fassociation,s);的作用是從fassociation檔案流中獲取一行資料賦值給string類的物件s。
接著按照順序依次對時間t,rgb圖srgb,depth圖sd賦值。
同時將其push入對應的容器中。
void loadimages(const string &strassociationfilename, vector&vstrimagefilenamesrgb,
vector&vstrimagefilenamesd, vector&vtimestamps)
{ ifstream fassociation;
fassociation.open(strassociationfilename.c_str());
while(!fassociation.eof())
{string s;
getline(fassociation,s);
if(!s.empty())
{stringstream ss;
ss << s;
double t;
用資料集跑ORB SLAM2
執行環境是ubuntu16.04 step1.step2.按照上面 依次安裝pangolin opencv eigen3 dbow2和g2o。step3.進入到orb slam2 master資料夾下 cd orb slam2 masterstep4.chmod x build.sh build.s...
ORB SLAM2執行自己的資料集
coding utf 8 import os import cv2 import numpy as np defgetname num strtmp strres while num 10 num num 10 n len strtmp for i in range 0,5 n strres str...
安裝跑通ORB SLAM2資料集
步驟 1 安裝pangolin,主要用於互動顯示 2 安裝opencv,主要用於影象處理 3 安裝eigen3 v3.2.0,主要用於g2o,注意安裝完之後,sudo cp rf usr local include eigen3 usr include 4 編譯g2o 5 編譯dbow2 6 不要去...