ubuntuxu双系统安装+git/g++/vim+pytorch+opencv+yolo+sitl相关学习

这篇具有很好参考价值的文章主要介绍了ubuntuxu双系统安装+git/g++/vim+pytorch+opencv+yolo+sitl相关学习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

multirotor


The first day ——12.10

1.install vmware-workstation and ubuntu

  • swap sources and 换输入法

2.learn git

  • github关联远程仓库

3.install and use Typora

Git

code meaning
mkdir test 创建目录
cd test 进入目录
git init 初始化仓库
ls ;ls -ah 查看目录
touch test.c 新建项目
add 添加到缓存
commit -m “words” 提交到库
log 提交历史
status 查看仓库状态
checkout – file 回到最近修改状态
rm ;rm -rf file 删除
reset+checkout 恢复文件
checkout -b dev 创建分支+切换
merge 合并
branch -a 查看分支
branch -D 删除分支
branch -m 修改分支名
clone 远程仓库关联到本地
push origin branch 修改提交
fetch origin branch 下载远程代码到本地
git merge origin/branch 远程与本地合并

The second day——12.11

1. install and learn g++

  • question 1: unable to install g++(软件包有未依赖的关系)
  • solve :swap sources;

2. c++ printf “hello world”

  • question 2 :unable to edit helloworld.cpp
  • solve :learn vim ( --,-- ; gedit is better )

  • question 3 :unable to compile and run
  • solve :learn g++ about linking cpp files

  • question 4 :push helloworld 文件夹到github 时 error: 源引用规格 helloworld 没有匹配
  • solve :创建本地仓库和分支没有add 文件

  • question 5:本地上传helloworld文件到远程github仓库后,本地修改readme上传git hub出现问题—> git pull 整合远程变更又出现问题—>偏离分支:当本地的分支落后于远程分支时,本地分支又自行修改项目文件生成了新的提交
  • solve : git config pull.rebase false # 合并 + git pull

G++

some command:
command meaning
-o outputfile file.cpp 编译为可执行文件
-c 编译为对象文件
-o outputfile file1.o file2.o 链接对象文件
about .o files and .exe files:

对象文件和可执行文件的主要区别在于链接的程度:对象文件包含了部分链接的代码,而可执行文件包含了完全链接的代码。在一些大型项目中,源代码可能被分割成多个文件,然后分别编译成对象文件,最后再链接成一个可执行文件。这样的做法可以提高编译的效率,因为当某个源文件被修改时,只需要重新编译那个文件,而不需要重新编译整个项目。

g++ -o test1 hello.cpp helloworld.cpp
g++ -c hello.cpp
g++ -c helloworld.cpp
g++ -o test2 hello.o helloworld.o
g++ -o test3 hello.o helloworld.cpp
g++ -o test4 hello.cpp //wrong

vim

默认命令模式

command meaning
ESC 命令模式
gg / G/ 5+G 首行/末行/第五行
yy / p/ dd 复制/粘贴/剪切
u / ctrl + r 撤销/取消撤销
+i / +a 编辑模式
:/ wq/ q! 末行模式/保存退出/强制退出

The third day——12.12

1. install opencv

怎么会有装起来这么麻烦的东西

  1. install cmake
  2. use gedit
  3. install pkg-config
  • question 1 : 装着装着虚拟机就死机了?
  • solve : 强制重启,太智能了我直接执行下一个操作居然帮我帮上个死机没完成的操作自动执行
  • question 2 : 检验时执行 pkg-config opencv --modversion 报错
  • solve : 缺失了opencv.pc这个配置信息文件
    手动创建opencv.pc
cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo touch opencv.pc

添加以下信息

prefix=/usr/local
exec_prefix=${prefix}
includedir=/usr/local/include
libdir=/usr/local/lib

Name: OpenCV
Description: Open Source Computer Vision Library
Version: 4.4.0
Libs: -L${exec_prefix}/lib -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dpm -lopencv_face -lopencv_photo -lopencv_freetype -lopencv_fuzzy -lopencv_hdf -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_optflow -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_dnn -lopencv_plot -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ml -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_flann -lopencv_xobjdetect -lopencv_imgcodecs -lopencv_objdetect -lopencv_xphoto -lopencv_imgproc -lopencv_core
Libs.private: -ldl -lm -lpthread -lrt
Cflags: -I${includedir}
  • question 3:编译时出现 fatal error :opencv2/opencv.hpp:没有那个文件或目录
  • solve : 将/usr/local/include/opencv4/opencv2扔到/usr/local/include/下

  • question 4 :上面的 solve 没有 solve
  • quesiton …
  • sovle :卸载
  • question 5 : 上面的 solve 没有solve

2. learn to use opencv and code to invoke the webcam

3.Abaut the total install of Opencv

main error

  • error 1 :检测opencv版本报错
  • solve :手动创建opencv.pc

  • error 2 : 编译fatal error :opencv2/opencv.hpp:没有那个文件或目录
  • solve :将opencv2文件夹链接到include文件夹下
sudo ln -s /usr/include/opencv4/opencv2 /usr/include/
  • error 3 :上述代码仍无法解决问题
  • solve :代码路径不准确
sudo ln -s /usr/local/include/opencv4/opencv2 /usr/local/include/

  • error 4 : 编译通过生成目标文件,不能生成链接文件 报错 no input files
  • solve :g++用法错误
g++ -o webcam.o      //wrong
g++  webcam.o -o webcam  //wright

ps:百度搜不到解决方案,还得是gpt。
这个错误通常是因为你没有在编译命令中指定要编译的源文件。例如,如果你想编译一个名为hello.cpp的源文件,你应该使用以下命令:

g++ hello.cpp -o hello

在这个命令中,hello.cpp是要编译的源文件,-o选项指定了输出文件的名称,hello是输出文件的名称。如果你在命令中没有指定要编译的源文件,编译器就会报“no input files”的错误。确保你在命令中指定了正确的源文件名,并且文件存在于当前工作目录中。


  • error 5 :g++用法正确后报错undefined reference to`cv::VideoCapture::VideoCapture(int, int)’
  • solve :链接时没有包含OpenCV库文件。要解决这个问题,需要在编译命令中包含OpenCV库文件
g++ yourfile.cpp -o yourfile `pkg-config --cflags --libs opencv`

  • error 6 :成功编译成可执行文件,但运行时报错error while loading shared libraries: libopencv_highgui.so.3.4: cannot open shared object file: No such file or directory
  • solve :有几个库找不到,用locate定位这几个库
sudo apt install mlocate
locate libopencv_highgui.so.3.4

找到后添加路径

cd /etc/ld.so.conf.d
sudo vim opencv.conf    //加入路径
sudo ldconfig

  • error 7 : 想不起来还error什么了

The forth day——12.13

//最顺利的一集

1.install anaconda

error :“conda”无法找到命令
solve :导入路径才能使用

sudo gedit ~/.bashrc
export PATH="/home/用户名/anaconda3/bin:$PATH"
source ~/.bashrc

2.create virtul environment

3.install pytorch

Conda

command meaning
conda env list 存在的虚拟环境
conda create -n your_env_name python=x.x 创建虚拟环境
conda activate your_env_nam 进入虚拟环境
conda deactivate env_name 退出虚拟环境
conda remove -n your_env_name --all 删除虚拟环境

The fifth day to The seventhday——12.14-16


1.搭建Ardupilot开发环境

2.启动SITL

-error :运行奇慢无比
Tools/environment_install/install-prereqs-ubuntu.sh-y

solve :挂着下一个晚上,第二天重下

- error:Failed to load module
  1. TRY 1 ://fail
sudo -H pip2 install --upgrade MAVProxy pymavlink future lxml

error :-H无法找到命令与目录
solve :在sudo命令中,-H标志是用来设置HOME环境变量为目标用户的家目录。这个标志是有效的,但是在某些情况下,可能会遇到"-H: 没有那个文件或目录"的错误。这通常是因为系统中的sudoers文件配置问题导致的。
如果遇到了这个问题,可能需要检查一下系统的sudoers文件配置。可以使用visudo命令来编辑sudoers文件,确保其中包含以下内容:

Defaults env_keep += "HOME"       //failed

  1. TRY 2 ://fail
sudo pip2 install --upgrade MAVProxy pymavlink future lxml

error :pip2无法找到命令与目录
solve :

sudo apt-get install python-pip

error: If executing pip with sudo, you may want sudo’s -H flag

sudo chown root /home/gonglai/.cache/pip/http
sudo chown root /home/gonglai/.cache/pip

error :Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade
solve :


  1. TRY 3 ://fail
    From csdn:
    python几个包未安装好,需要删除后重装
pip3 uninstall MAVProxy pymavlink future lxml
sudo -H pip2 install --upgrade MAVProxy pymavlink future lxml

  1. TRY 4 ://fail
    From csdn:
    mavproxy未安装好
sudo apt-get install python3-dev python3-opencv python3-wxgtk4.0 python3-pip python3-matplotlib python3-lxml python-pygame
pip3 install PyYAML mavproxy --user
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc

  1. TRY 5 ://fail
    From csdn:
    更换python版本,旧版本的mavproxy貌似不支持python3
    添加python2到索引,并设置python2为默认的python版本
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --config python

  1. TRY 6 ://fail——>创建虚拟环境后需要重新安装依赖包
Tools/environment_install/install-prereqs-ubuntu.sh-y

创建虚拟环境


  1. TRY 7 ://wrong choice
    重装
    成功

SOLVE:
  1. 创建python=3.9的虚拟环境
  2. 安装依赖包
  3. 找到缺少的python库 opencv-python wxpython matplotlib
- error:·运行几次后报错

运行sim_vehicle.py --map --console出现sim_vehicle.py无法找到文件与目录
Solve:

../Tools/autotest/sim_vehicle.py --frame singlecopter --map --console

The eighth day——12.17


1.安装nvidia和cuda

//fail 虚拟机装不了一点

2.下载yolo5代码和预训练模型

3.安装anaconda后再重启SITL仿真

-error :再次无法打开consolo和map

solve :安装opencv-python,wxpython,matplotlib库

-error :安装wxpython时报错

ERROR: Could not build wheels for wxPython

TRY1 :创建python=3.8的虚拟环境安装//fail ——>
TRY2 :创建python=3.6的虚拟环境安装//fail
TRY3 :安装旧版本的wxpython//fail
TRY4 :创建python=3.9的虚拟环境安装//successful ——>

成功打开console和map


The ninth day——12.18


1. .gitignore

忽略规则优先级
  1. 从命令行中读取可用的忽略规则
  2. 当前目录定义的规则
  3. 父级目录定义的规则,依次递推
  4. $GIT_DIR/info/exclude 文件中定义的规则
  5. core.excludesfile中定义的全局规则
忽略规则匹配语法
空格不匹配任意文件,可作为分隔符,可用反斜杠转义
开头的文件标识 注释,可以使用反斜杠进行转义
! 开头的模式标识否定,该文件将会再次被包含,如果排除了该文件的父级目录,则使用 ! 也不会再次被包含。可以使用反斜杠进行转义
/ 结束的模式只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
/ 开始的模式匹配项目跟目录
如果一个模式不包含斜杠,则它匹配相对于当前 .gitignore 文件路径的内容,如果该模式不在 .gitignore 文件中,则相对于项目根目录
** 匹配多级目录,可在开始,中间,结束
? 通用匹配单个字符
* 通用匹配零个或多个字符
[] 通用匹配单个字符列表
示例:
bin/: 忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
/bin: 忽略根目录下的bin文件
/*.c: 忽略 cat.c,不忽略 build/cat.c
debug/*.obj: 忽略 debug/io.obj,不忽略 debug/common/io.obj 和 tools/debug/io.obj
**/foo: 忽略/foo, a/foo, a/b/foo等
a/**/b: 忽略a/b, a/x/b, a/x/y/b等
!/bin/run.sh: 不忽略 bin 目录下的 run.sh 文件
*.log: 忽略所有 .log 文件
config.php: 忽略当前路径的 config.php 文件
不生效情况
  1. 已纳入版本管理
    solve:删除本地缓存
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
  1. 添加文件被忽略
  • 强制添加
$ git add -f App.class
  • 检查gitignore
$ git check-ignore -v filename.

2. git lfs

LFS作用

Large File Storge,可以帮助我们管理比较大的文件,git lfs对于需要追踪的文件只会保存一个指向该文件的指针,而不是在本地仓库中保存每次提交的版本,节省了本地磁盘空间,缩小了git的传输时间。
它通过将大文件存储在Git仓库之外的服务器上,并使用指向这些文件的指针来跟踪和管理这些文件。这样可以避免Git仓库变得庞大和不稳定。Git LFS支持大文件的版本控制和协作,使得与大型二进制文件(如图像、音频和视频文件等)一起使用Git变得更加灵活和高效。

LFS使用
  • 跟踪大文件
git lfs track "*.zip" 
  • 提交前审核
git lfs ls-files
LFS实际应用
  • 加快克隆速度
    如果克隆包含大量 LFS 文件的仓库,显式使用 git lfs clone 命令可提供更好的性能
  • 加快拉取速度
    git lfs pull 命令批量下载 Git LFS 文件

The tenth day ——12.19


yolov5模型训练

1. 下载数据集
  • 解压.gz文件报错:EOF tar: 归档文件中异常的 EOF
    solve:在windows下安装压缩为rar文件重新上传到网盘
2. 训练数据集
  • 训练过程中killed
    solve:减小BATCH_SIZE ( 每epoch一次训练样本数量 )( 32——>8 );减小epoch数量 ( 100——>10 )
3.测试训练后的权重

ubuntuxu双系统安装+git/g++/vim+pytorch+opencv+yolo+sitl相关学习,git,vim,opencv,YOLO,c++,ubuntu,linuxubuntuxu双系统安装+git/g++/vim+pytorch+opencv+yolo+sitl相关学习,git,vim,opencv,YOLO,c++,ubuntu,linux文章来源地址https://www.toymoban.com/news/detail-768402.html


Break 12.20-12.22


The eleventh day ——12.23

双系统 install ubuntu

  • error 1: file /boot/vmlinuz-linus not found
  • solve :以dd镜像模式写入U盘(推荐是iso镜像

  • error 2 :Ubuntu系统开机异常:ACPI Error:AE_NOT_FOUND
  • solve :——>显卡不能完全支持操作系统中包含的开源驱动程序:在linux那一行最后三个—换成nomodeset;按ctrl+x
  • solve :——>开机f2进入bios ,关闭安全启动模式:Secure Boot:Disable ,关闭独显。

分区 大小
boot/efi 1G
swap 两倍内存
/ 150-200G不少于100G
/home 剩下所有

装完就可以卸载 ubuntu 了

  1. windows删除ubuntu的卷
  2. 删除Ubuntu启动引导项
    ①Win + R 输入cmd打开终端,输入 diskpart 进入磁盘工具
    ②输入 list disk 查看磁盘,输入 select disk 0
    ③输入 list partition ,输入 select partition n (Windows EFI分区,一般为260M)
    ④输入 assign letter=J(分配盘符)
    ⑤管理员模式打开记事本
    ⑥打开 J盘/EFI 文件夹,删除Ubuntu文件夹

到了这里,关于ubuntuxu双系统安装+git/g++/vim+pytorch+opencv+yolo+sitl相关学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu 18.04.5 LTS 解决安装包复杂依赖相关问题解决的主要法则和VIM的安装实录

    Ubuntu 18.04.5 LTS@VMware 安装vim,解决包依赖的冲突: 本文,通过一个很好的实例,诠释了,LINUX系统下,安装一个应用遇到的依赖库问题如何解决的基本方法和思路。同时,用一个实录的实例,展示了三个法则的使用方法,尤其是法则3,一步一步走到很里面,解决了VIM安装的问

    2024年01月21日
    浏览(42)
  • [超详细]基于YOLO&OpenCV的人流量统计监测系统(源码&部署教程)

    [YOLOv7]基于YOLO&Deepsort的人流量统计系统(源码&部署教程)_哔哩哔哩_bilibili (1)获取原始视频帧 (2)利用目标检测器对视频帧中的目标进行检测 (3)将检测到的目标的框中的特征提取出来,该特征包括表观特征(方便特征对比避免ID switch)和运动特征(运动特征方 便卡尔

    2024年02月04日
    浏览(39)
  • ubuntu18.04复现yolo v8环境配置之CUDA与pytorch版本问题以及多CUDA版本安装及切换

    最近在复现yolo v8的程序,特记录一下过程 环境:ubuntu18.04+ros melodic 小知识:GPU并行计算能力高于CPU—B站UP主说的 Ubuntu可以安装多个版本的CUDA。如果某个程序的Pyorch需要不同版本的CUDA,不必删除之前的CUDA,可以实现多版本的CUDA切换 一、查看当前PyTorch使用的CUDA版本: 注意

    2024年02月11日
    浏览(51)
  • anaconda+pytorch+opencv安装及环境配置

    下载地址:进入anaconda官网,Anaconda | The World\\\'s Most Popular Data Science Platform 下载完成后点击安装就可以,具体操作如下:      第一个选项建议也勾选上,会在系统自动配置anaconda的环境。 安装结束后,查看自己电脑环境变量是否配置成功,右击此电脑=》属性=》高级系统设置

    2024年02月15日
    浏览(52)
  • 计算机毕业设计:python无人机目标识别+目标跟踪检测系统(OpenCV+YOLO实现) (包含文档+源码+部署教程)

    [毕业设计]2023-2024年最新最全计算机专业毕设选题推荐汇总 Python项目——毕业设计选题参考 2023年 - 2024年 最新计算机毕业设计 本科 选题大全 汇总 感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人 。 p

    2024年04月28日
    浏览(52)
  • Pixhawk无人机-ArduPilot 软件SITL仿真模拟飞行(SITL+Mission Planner结合)

    本文的目的是将SITL仿真结合Missionplanner地面站,之后再探索SITL仿真结合QGC地面站。 Pixhawk无人机扩展教程(7)—SITL+MP/QGC运行教程中指出,QGC地面站是安装在与SITL仿真软件一起的笔记本电脑上的,而MP地面站是安装在另外一台笔记本电脑上的。因此要注意连接IP地址的区别。 当

    2024年02月12日
    浏览(103)
  • ubuntu20.04下安装,运行关于opencv的Python程序相关库

    最初对ubuntu20.04以及opencv和python运行环境一窍不通,折磨了好几天,虚拟机重建了好几次,各个帖子的方法都跑遍了。最后终于装上,记录一下,免得搞忘。 先总结下之前的问题:推测之前的问题都在于我先入为主安装了vscode上的Python,但其实ubuntu20.04他是自带了Python3.8.10的

    2024年02月13日
    浏览(38)
  • 【pytorch】目标检测:YOLO的基本原理与YOLO系列的网络结构

    利用深度学习进行目标检测的算法可分为两类:two-stage和one-stage。two-stage类的算法,是基于Region Proposal的,它包括R-CNN,Fast R-CNN, Faster R-CNN;one-stage类的算法仅仅使用一个CNN网络直接预测不同目标的类别与位置,它包括YOLO系列算法、SSD算法。two-stage类算法精度高,但速度慢,

    2024年02月12日
    浏览(44)
  • Linux:vim的相关知识

      目录 vim 是一个较为常见的编译文件的命令操作。 三种模式的区分的作用如下: 命令模式: 插入模式: 进入插入模式的标志:左下角有INSERT 底行模式: 命令模式的常见命令:   底行模式常见命令:  注意事项:vim的临时文件 sudoers的配置  如何在sudoers配置文件中添加个

    2024年01月24日
    浏览(31)
  • QT安装OpenCv步骤流程及相关问题(基于Windows下的QT Creator编程)

       QT里安装OpenCV环境过程比较复杂,如果网友们想要在QT里做OpenCV的开发,就需要耐心的跟着我列出来的操作步骤一步一步去安装环境,其中包含我在安装环境时遇到的坑,都已经在步骤中帮大家罗列出来,如有不懂的网友,可以评论或者私信我即可! 1、Qt软件 2、CMake 3、

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包