日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

深蓝学院《从零开始手写VIO》作业七

發布時間:2025/3/20 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深蓝学院《从零开始手写VIO》作业七 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

深藍學院《從零開始手寫VIO》作業七

  • 深藍學院《從零開始手寫VIO》作業七

深藍學院《從零開始手寫VIO》作業七

將第二講中的仿真數據(視覺特征,imu數據)接入VINS系統,并運行出軌跡結果

第一步:將IMU數據傳入VINS系統
這部分的代碼實現在run_euroc.cpp中的PubSimImuData部分,如下:

void PubSimImuData() {string sImu_data_file = sConfig_path + "imu_pose_noise.txt"; cout << "1 PubImuData start sImu_data_file: " << sImu_data_file << endl;ifstream fsImu;fsImu.open(sImu_data_file.c_str());if (!fsImu.is_open()){cerr << "Failed to open imu file! " << sImu_data_file << endl;return;}std::string sImu_line;double dStampNSec = 0.0;double tmp;Vector3d vAcc;Vector3d vGyr;while (std::getline(fsImu, sImu_line) && !sImu_line.empty()) // read imu data{std::istringstream ssImuData(sImu_line);ssImuData >> dStampNSec;for(int i=0;i<7;i++)ssImuData>>tmp; ssImuData>>vGyr.x() >> vGyr.y() >> vGyr.z() >> vAcc.x() >> vAcc.y() >> vAcc.z(); pSystem->PubImuData(dStampNSec, vGyr, vAcc);usleep(5000*nDelayTimes);}fsImu.close(); }

第二步:將特征數據傳入VINS系統
讀入特征數據的代碼實現在run_euroc.cpp中的PubSimImageData部分,如下:

void PubSimImageData() {string sImage_file = sConfig_path + "cam_pose.txt"; //包含時間戳的文件cout << "1 PubImageData start sImage_file: " << sImage_file << endl;ifstream fsImage;fsImage.open(sImage_file.c_str());if (!fsImage.is_open()){cerr << "Failed to open image file! " << sImage_file << endl;return;}std::string sImage_line;double dStampNSec;string sImgFileName;int n=0;while (std::getline(fsImage, sImage_line) && !sImage_line.empty()){std::istringstream ssImgData(sImage_line);ssImgData >> dStampNSec; //讀入時間戳cout<<"cam time: "<<fixed<<dStampNSec<<endl;string all_points_file_name = sPointData_path + "all_points_" + to_string(n)+ ".txt"; //第n個相機對應的觀測數據的文件名cout<<"points_file: "<<all_points_file_name<<endl;pSystem->PubSimImageData(dStampNSec, all_points_file_name);usleep(50000*nDelayTimes);n++;}fsImage.close(); }

第三步:修改System.cpp
通過函數loadPointData傳入double時間戳和string文件名,如下:

TicToc t_r;//trackerData[0].readImage(img, dStampSec);trackerData[0].loadPointData(points_file_name,dStampSec);

第四步:修改feature_tracker.cpp
由于沒有圖像,并且所有的特征點都在每一個相機中被成功跟蹤,所以就不用光流函數追蹤。直接讀入當前時刻相機對應的觀測值并存入forw_pts即可,并將每個特征點的track_cnt++。對于初始時刻,由于cur_pts是空的,需要對該時刻的相機觀測值forw_pts進行初始化,將該時刻相機對特征點的觀測值(像素坐標)存入n_pts中,然后調用函數addPoints來完成forw_pts,ids,track_cnt的初始化。最后,將forw_pts賦值給cur_pts。并通過函數undistoredSimPoints來計算像素點的速度,如下:

void FeatureTracker::undistortedSimPoints() {cur_un_pts.clear();cur_un_pts_map.clear();//cv::undistortPoints(cur_pts, un_pts, K, cv::Mat());for (unsigned int i = 0; i < cur_pts.size(); i++){Eigen::Vector2d a(cur_pts[i].x, cur_pts[i].y);cur_un_pts.push_back(cv::Point2f(cur_pts[i].x,cur_pts[i].y));cur_un_pts_map.insert(make_pair(ids[i], cv::Point2f(cur_pts[i].x,cur_pts[i].y)));//printf("cur pts id %d %f %f", ids[i], cur_un_pts[i].x, cur_un_pts[i].y);}// caculate points velocityif (!prev_un_pts_map.empty()){double dt = cur_time - prev_time;pts_velocity.clear();for (unsigned int i = 0; i < cur_un_pts.size(); i++){if (ids[i] != -1){std::map<int, cv::Point2f>::iterator it;it = prev_un_pts_map.find(ids[i]);if (it != prev_un_pts_map.end()){double v_x = (cur_un_pts[i].x - it->second.x) / dt;double v_y = (cur_un_pts[i].y - it->second.y) / dt;pts_velocity.push_back(cv::Point2f(v_x, v_y));}elsepts_velocity.push_back(cv::Point2f(0, 0));}else{pts_velocity.push_back(cv::Point2f(0, 0));}}}else{for (unsigned int i = 0; i < cur_pts.size(); i++){pts_velocity.push_back(cv::Point2f(0, 0));}}prev_un_pts_map = cur_un_pts_map; }

實驗結果
(1)無噪聲仿真數據



(2)有噪聲數據




其中加速度計的bias隨機游走的方差為0.0001,高斯噪聲的方差為0.019; 陀螺儀的bias隨機游走的方差為為1e-5,高斯噪聲的方差為0.015

(3)實驗結果對比
a. 帶噪聲數據




b.不帶噪聲數據


結論:帶噪聲的數據比不帶噪聲的數據效果聲好。

總結

以上是生活随笔為你收集整理的深蓝学院《从零开始手写VIO》作业七的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久五月网 | 精品一区二区三区四区 | 99国产精品自拍 | 国产吃瓜黑料一区二区 | 精品国自产在线观看 | 性歌舞团一区二区三区视频 | 伊人久久久久久久久久久久久 | 成人毛片18女人 | 男操女视频网站 | 欧美一区二区人人喊爽 | 在线v| 国内少妇精品 | 日韩国产高清在线 | 亚洲精品乱码久久久久久久 | va在线视频| 免费看美女隐私网站 | 国产成人av影院 | 欧美一级色图 | 天天干天天操天天操 | 免费观看已满十八岁 | 国产aⅴ爽av久久久久成人 | 欧美日韩八区 | 91在线看视频 | 亚洲天堂中文在线 | japanese21ⅹxx日本 | 中文字幕一区二区三区人妻在线视频 | 日本免费在线观看视频 | 国产女人高潮时对白 | 午夜免费福利网站 | 六月婷婷网 | 亚洲射图 | 国产免费无码一区二区视频 | 最近日韩中文字幕中文 | 欧美日韩国产综合网 | 三级视频网 | 国产精品拍拍 | 亚洲人吸女人奶水 | 精品一二三四区 | 日本美女操 | 91视频一区 | 黑帮大佬和我的三百六十五天 | 国产社区在线 | 国产又粗又猛又爽又黄的视频在线观看动漫 | 色噜噜色综合 | 伊人自拍视频 | 激情网五月天 | 国产精品久久久影院 | 亚洲h在线观看 | 国产精品久久久网站 | 一区二区免费在线播放 | 91视频在线免费看 | 国产欧美精品一区二区在线播放 | 91精品久久久久久 | 69久久久久 | 国产一区二区三区中文字幕 | 久久久久久网址 | 国精产品一区一区三区免费视频 | 成人av中文字幕 | 欧美69影院 | 日韩欧美中文在线观看 | 91色漫| 深爱开心激情 | 综合伊人 | 青青视频在线免费观看 | 韩国伦理中文字幕 | av中文在线观看 | 日韩一区免费观看 | 国产一级做a爰片久久毛片男男 | 琪琪成人 | 一区二区视频网站 | 女人扒开腿让男人捅爽 | 国产富婆一区二区三区 | www.天天干.com | 亚洲永久免费观看 | 熟女毛毛多熟妇人妻aⅴ在线毛片 | 神马午夜dy888 | 国产精品视频免费看 | 泰国午夜理伦三级 | 在线免费看av的网站 | 精品一区二区三区免费毛片爱 | 91丝袜国产在线观看 | 嫩草天堂 | 欧美a免费| 久久新| 日韩av影片在线观看 | 波多野结衣电影免费观看 | 99久久国产热无码精品免费 | 青少年xxxxx性开放hg | 久久看片 | 蜜臀久久精品久久久久久酒店 | 在线观看一区视频 | 免费观看成人鲁鲁鲁鲁鲁视频 | 黄色视屏在线播放 | 男人的天堂黄色 | 向着小小的花蕾绽放 | 日本免费不卡视频 | 国产视频一区二区三区在线 | 天堂av网址 | 成年人免费在线视频 |