diff --git a/README.md b/README.md index 45cc3896a887f2a2f3894b7ccd65b70f974bde97..9e9c0e3b77057ec4a1e32db97854ce4173b2f179 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,352 @@ -# sample-data-repo +@[TOC] +# ubuntu如何查看版本信息? +[小菜鸟安装Ubuntu18.04系统探险指南(适合新手入门)](https://blog.csdn.net/weixin_44991673/article/details/105554748?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162133224916780269873023%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=162133224916780269873023&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_v2~rank_v29-1-105554748.nonecase&utm_term=ubuntu) +Q:我有一台崭新的电脑,安装好双系统之后,如何查看自己的版本呢? +A:打开终端输入 `cat /proc/version `即可查看我们的版本号 +```bash +user@user-B460MPOWER:~$ cat /proc/version +Linux version 5.3.0-28-generic (buildd@lcy01-amd64-009) (gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)) #30~18.04.1-Ubuntu SMP Fri Jan 17 06:14:09 UTC 2020 +``` +![在这里插入图片描述](https://img-blog.csdnimg.cn/2021051810532313.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) + +# 安装CMake +官网适合自己电脑的版本: [https://cmake.org/download/](https://cmake.org/download/) +CMake官网教程连接:[https://cmake.org/cmake/help/latest/guide/tutorial/index.html](https://cmake.org/cmake/help/latest/guide/tutorial/index.html) +CMake安装后续步骤:[https://blog.51cto.com/speakingbaicai/1087432](https://blog.51cto.com/speakingbaicai/1087432) +执行`./bootstrap`时候报错, + +```bash +--------------------------------------------- +Error when bootstrapping CMake: +Cannot find a C++ compiler that supports both C++11 and the specified C++ flags. +Please specify one using environment variable CXX. +The C++ flags are "". +They can be changed using the environment variable CXXFLAGS. +See cmake_bootstrap.log for compilers attempted. +--------------------------------------------- +``` +参考链接:[http://bbs.keinsci.com/thread-11819-1-1.html](http://bbs.keinsci.com/thread-11819-1-1.html) +==提示说是g++版本低,没有解决这个问题== + +```bash +user@user-B460MPOWER:~/thirdLibrary/cmake/cmake-3.20.2$ ./bootstrap +--------------------------------------------- +CMake 3.20.2, Copyright 2000-2021 Kitware, Inc. and Contributors +C compiler on this system is: cc +--------------------------------------------- +Error when bootstrapping CMake: +Cannot find a C++ compiler that supports both C++11 and the specified C++ flags. +Please specify one using environment variable CXX. +The C++ flags are "". +They can be changed using the environment variable CXXFLAGS. +See cmake_bootstrap.log for compilers attempted. +--------------------------------------------- +Log of errors: /home/user/thirdLibrary/cmake/cmake-3.20.2/Bootstrap.cmk/cmake_bootstrap.log +--------------------------------------------- + +``` +更换安装方式,现在版本`cmake version 3.10.2` + +```bash +sudo apt install cmake +``` + +```bash +user@user-B460MPOWER:~$ cmake -version +cmake version 3.10.2 + +CMake suite maintained and supported by Kitware (kitware.com/cmake). +``` + +# 安装CLion +官网下载:[https://www.jetbrains.com/clion/](https://www.jetbrains.com/clion/) +安装包进行解压,在`bin`文件目录下打开终端,运行`./clion.sh`脚本文件,然后把破解补丁放入打开的CLion界面。 +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210518111750733.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) +破解补丁下载:链接: [https://pan.baidu.com/s/1hlrLKZiLWNLhV7I8kXEaRw](https://pan.baidu.com/s/1hlrLKZiLWNLhV7I8kXEaRw) 提取码: 6vic +Clion调试代码简介 视频链接 +链接:[https://pan.baidu.com/s/1RI5BbHvP2EtWamd1J0SRUQ](https://pan.baidu.com/s/1RI5BbHvP2EtWamd1J0SRUQ) 密码:ovba +# 安装Eigen库 +# 安装openCV +ubuntu16.04 安装opencv 步骤和错误解决:[https://blog.csdn.net/weixin_41896508/article/details/80795239](https://blog.csdn.net/weixin_41896508/article/details/80795239) + +```bash +$ cd ~/opencv +$ mkdir build +$ cd build +$ cmake -D CMAKE_BUILD_TYPE=Release –D CMAKE_INSTALL_PREFIX=/usr/local .. +$ make –j8 +$ sudo make install +``` +==opencv编译卡在 IPPICV: Download: ippicv_2019_lnx_intel64_general_20180723.tgz== +opencv 解决ippicv下载问题,离线:ippicv_2019_lnx_intel64_general_20180723.tgz +[https://blog.csdn.net/weixin_45250844/article/details/102159059](https://blog.csdn.net/weixin_45250844/article/details/102159059) +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210518144241363.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center)最后成功界面: +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210518144825110.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center)![在这里插入图片描述](https://img-blog.csdnimg.cn/20210518151258723.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) +# 安装Ceres +出现问题: +```bash +-- Detected Ceres version: 2.0.0 from /home/user/thirdLibrary/ceres/ceres-solver/include/ceres/version.h +-- Detected available Ceres threading models: [CXX_THREADS, OPENMP, NO_THREADS] +-- Building with C++14 +-- Found Eigen version 3.3.4: /usr/include/eigen3 +-- Enabling use of Eigen as a sparse linear algebra library. +-- A library with BLAS API found. +-- Found LAPACK library: /usr/lib/x86_64-linux-gnu/liblapack.so;/usr/lib/x86_64-linux-gnu/libblas.so +-- A library with BLAS API found. +-- Found AMD headers in: /usr/include/suitesparse +-- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so +-- Found CAMD headers in: /usr/include/suitesparse +-- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so +-- Found COLAMD headers in: /usr/include/suitesparse +-- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so +-- Found CCOLAMD headers in: /usr/include/suitesparse +-- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so +-- Found CHOLMOD headers in: /usr/include/suitesparse +-- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so +-- Found SUITESPARSEQR headers in: /usr/include/suitesparse +-- Found SUITESPARSEQR library: /usr/lib/x86_64-linux-gnu/libspqr.so +-- Found Intel Thread Building Blocks (TBB) library (2017.0 / 9107) include location: /usr/include. Assuming SuiteSparseQR was compiled with TBB. +-- Found SUITESPARSE_CONFIG headers in: /usr/include/suitesparse +-- Found SUITESPARSE_CONFIG library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so +-- Found LIBRT library: /usr/lib/x86_64-linux-gnu/librt.so +-- Adding librt: /usr/lib/x86_64-linux-gnu/librt.so to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing). +-- Did not find METIS library (optional SuiteSparse dependency) +-- Found SuiteSparse 5.1.2, building with SuiteSparse. +-- Found CXSparse version: 3.1.9, building with CXSparse. +-- Building without Apple's Accelerate sparse support. +-- Use of gflags disabled - no tests or tools will be built! +-- No preference for use of exported glog CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported glog CMake configuration if available. +-- Failed to find installed glog CMake configuration, searching for glog build directories exported with CMake. +-- Failed to find an installed/exported CMake configuration for glog, will perform search for installed glog components. +-- Failed to find glog - Could not find glog include directory, set GLOG_INCLUDE_DIR to directory containing glog/logging.h +CMake Error at CMakeLists.txt:432 (message): + Can't find Google Log (glog). Please set either: glog_DIR (newer CMake + built versions of glog) or GLOG_INCLUDE_DIR & GLOG_LIBRARY or enable + MINIGLOG option to use minimal glog implementation. + + +-- Configuring incomplete, errors occurred! +See also "/home/user/thirdLibrary/ceres/ceres-solver/build/CMakeFiles/CMakeOutput.log". +See also "/home/user/thirdLibrary/ceres/ceres-solver/build/CMakeFiles/CMakeError.log". + +``` +我们先根据官网信息把依赖的东西安装好再编译:[http://ceres-solver.org/installation.html](http://ceres-solver.org/installation.html) + +```bash +# CMake +sudo apt-get install cmake +# google-glog + gflags +sudo apt-get install libgoogle-glog-dev libgflags-dev +# BLAS & LAPACK +sudo apt-get install libatlas-base-dev +# Eigen3 +sudo apt-get install libeigen3-dev +# SuiteSparse and CXSparse (optional) +sudo apt-get install libsuitesparse-dev + +tar zxf ceres-solver-2.0.0.tar.gz +mkdir ceres-bin +cd ceres-bin +cmake ../ceres-solver-2.0.0 +make -j3 +make test +# Optionally install Ceres, it can also be exported using CMake which +# allows Ceres to be used without requiring installation, see the documentation +# for the EXPORT_BUILD_DIR option for more information. +make install +``` +在运行例子时出现 + +```bash +user@user-B460MPOWER:~/thirdLibrary/ceres/ceres-solver/ceres-bin/bin$ ./simple_bundle_adjuster ../ceres-solver/data/problem-16-22106-pre.txt +ERROR: unable to open file ../ceres-solver/data/problem-16-22106-pre.txt +段错误 (核心已转储) +``` +我们安装的文件位置不同,所以要写在不同的路径上面 + +```bash +./simple_bundle_adjuster /home/user/thirdLibrary/ceres/ceres-solver/data/problem-16-22106-pre.txt +``` +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210518202249805.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) + +# 安装ROS +先设置软件仓库:[https://help.ubuntu.com/community/Repositories/Ubuntu](https://help.ubuntu.com/community/Repositories/Ubuntu) +再在官网上下载ROS[http://wiki.ros.org/melodic/Installation/Ubuntu](http://wiki.ros.org/melodic/Installation/Ubuntu),要和自己的系统版本相对应 +Ubuntu18.04下安装ROS:[https://blog.csdn.net/haiyinshushe/article/details/84256137](https://blog.csdn.net/haiyinshushe/article/details/84256137) +软件仓库的问题不是很明白为什么?[https://help.ubuntu.com/community/Repositories/Ubuntu](https://help.ubuntu.com/community/Repositories/Ubuntu) + +还有一篇参考文献:[https://m.linuxidc.com/Linux/2010-04/25744.htm](https://m.linuxidc.com/Linux/2010-04/25744.htm) + +```bash +user@user-B460MPOWER:~$ sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list' +[sudo] user 的密码: +user@user-B460MPOWER:~$ sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 +Executing: /tmp/apt-key-gpghome.E1P9vgw442/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 +gpg: 密钥 F42ED6FBAB17C654:公钥“Open Robotics ”已导入 +gpg: 合计被处理的数量:1 +gpg: 已导入:1 +user@user-B460MPOWER:~$ sudo apt install ros-melodic-desktop-full +正在读取软件包列表... 完成 +正在分析软件包的依赖关系树 +正在读取状态信息... 完成 +E: 无法定位软件包 ros-melodic-desktop-full +user@user-B460MPOWER:~$ sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list' +user@user-B460MPOWER:~$ sudo apt-get update +获取:1 http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease [4,680 B] +获取:2 http://mirrors.ustc.edu.cn/ros/ubuntu bionic/main amd64 Packages [756 kB] +错误:2 http://mirrors.ustc.edu.cn/ros/ubuntu bionic/main amd64 Packages + 文件尺寸不符(755768 != 755589)。您使用的镜像正在同步中? [IP: 202.141.160.110 80] + Hashes of expected file: + - Filesize:755589 [weak] + - SHA256:8b22dcaa6bf1406f852f10c1ccf8e8856857698a34ff18c41e44df54049e895e + - SHA1:99d9bdde30d23acfe55a7b651ad058d332e5c1fc [weak] + - MD5Sum:22d120a1341089964c3115dc13d9954d [weak] + Release file created at: Tue, 27 Apr 2021 12:52:49 +0000 +获取:3 http://mirrors.ustc.edu.cn/ros/ubuntu bionic/main i386 Packages [26.3 kB] +获取:26 http://cn.archive.ubuntu.com/ubuntu bionic-backports/main Sources [5,440 B] +已下载 13.0 MB,耗时 1分 22秒 (158 kB/s) +正在读取软件包列表... 完成 +E: 无法下载 http://mirrors.ustc.edu.cn/ros/ubuntu/dists/bionic/main/binary-amd64/Packages.gz 文件尺寸不符(755768 != 755589)。您使用的镜像正在同步中? [IP: 202.141.160.110 80] + Hashes of expected file: + - Filesize:755589 [weak] + - SHA256:8b22dcaa6bf1406f852f10c1ccf8e8856857698a34ff18c41e44df54049e895e + - SHA1:99d9bdde30d23acfe55a7b651ad058d332e5c1fc [weak] + - MD5Sum:22d120a1341089964c3115dc13d9954d [weak] + Release file created at: Tue, 27 Apr 2021 12:52:49 +0000 +E: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。 +user@user-B460MPOWER:~$ sudo apt install ros-melodic-desktop-full +正在读取软件包列表... 完成 +正在分析软件包的依赖关系树 +正在读取状态信息... 完成 +E: 无法定位软件包 ros-melodic-desktop-full +user@user-B460MPOWER:~$ + +``` + +==出现 E: 无法定位软件包 ros-melodic-desktop-full== +```bash +user@user-B460MPOWER:~$ sudo apt install ros-melodic-desktop-full +正在读取软件包列表... 完成 +正在分析软件包的依赖关系树 +正在读取状态信息... 完成 +E: 无法定位软件包 ros-melodic-desktop-full +``` +更改镜像源还是无法定位。 +[ubuntu 下安装ROS失败的解决方法总结](https://www.jianshu.com/p/a2a9103501c8) +参照下面的链接可以进行下一步 了 +[Ubuntu18.04.1安装ROS('E:无法定位软件包')](https://blog.csdn.net/haiyinshushe/article/details/84256137) +只要更新那一步骤出错,我们就无法在下一步安装时定位到软件包。 +```bash +E: 无法下载 http://mirrors.ustc.edu.cn/ros/ubuntu/dists/bionic/main/binary-amd64/Packages.gz 文件尺寸不符(755768 != 755589)。您使用的镜像正在同步中? [IP: 202.141.160.110 80] + Hashes of expected file: + - Filesize:755589 [weak] + - SHA256:8b22dcaa6bf1406f852f10c1ccf8e8856857698a34ff18c41e44df54049e895e + - SHA1:99d9bdde30d23acfe55a7b651ad058d332e5c1fc [weak] + - MD5Sum:22d120a1341089964c3115dc13d9954d [weak] + Release file created at: Tue, 27 Apr 2021 12:52:49 +0000 +E: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。 +user@user-B460MPOWER:~$ sudo apt-get install ros-melodic-desktop-full +正在读取软件包列表... 完成 +正在分析软件包的依赖关系树 +正在读取状态信息... 完成 +E: 无法定位软件包 ros-melodic-desktop-full +user@user-B460MPOWER:~$ +``` +[W: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。](https://blog.csdn.net/qq_36063562/article/details/94888843) + +使用官网太慢 +[ubuntu18.04下为ros-melodic添加清华源加快下载速度](https://blog.csdn.net/weixin_43059285/article/details/108014783) + +两者速度对比一下 + +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210518180146441.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) +[sudo rosdep init 找不到命令解决办法](https://blog.csdn.net/weixin_43958086/article/details/108277651) + +```bash + sudo apt install python-rosdep2 -y +``` + +> Q:为什么我的代码比别人多了个-y? +> A:因为这些代码基本上复制执行就是要安装的,省去你一会还要输入y+回车的时间 + +```bash +user@user-B460MPOWER:~$ export | grep ROS +declare -x ROS_DISTRO="melodic" +declare -x ROS_ETC_DIR="/opt/ros/melodic/etc/ros" +declare -x ROS_MASTER_URI="http://localhost:11311" +declare -x ROS_PACKAGE_PATH="/opt/ros/melodic/share" +declare -x ROS_PYTHON_VERSION="2" +declare -x ROS_ROOT="/opt/ros/melodic/share/ros" +declare -x ROS_VERSION="1" +``` + +# ORB-SLAM +[ORB-SLAM2的安装与运行](https://blog.csdn.net/learning_tortosie/article/details/79881165) + +==fatal: 过早的文件结束符(EOF)== +```bash +user@user-B460MPOWER:~/github$ git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git ORB_SLAM3 +正克隆到 'ORB_SLAM3'... +remote: Enumerating objects: 800, done. +remote: Counting objects: 100% (74/74), done. +remote: Compressing objects: 100% (72/72), done. +error: RPC failed; curl 18 transfer closed with outstanding read data remaining +fatal: The remote end hung up unexpectedly +fatal: 过早的文件结束符(EOF) +fatal: index-pack 失败 +``` +# 安装VINS + +```bash +git clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.git +``` + +```c + sudo apt-get install ros-melodic-cv-bridge ros-melodic-tf ros-melodic-message-filters ros-melodic-image-transport +``` +==根据`readme.md`进行编译,记得18。04 对应melodic,16.04对应kinetic +最开始写错版本的时候会在home隐藏文件里面添加kinetic,所以我们在home文件下`Ctril+H`显示隐藏文件,打开`.bashrc` 把最后几行和kinetic相关的东西删掉就好。== +```bash +user@user-B460MPOWER:~/github/catkin_ws$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc +user@user-B460MPOWER:~/github/catkin_ws$ source ~/.bashrc +bash: /opt/ros/kinetic/setup.bash: 没有那个文件或目录 +bash: /opt/ros/kinetic/setup.bash: 没有那个文件或目录 +bash: /opt/ros/kinetic/setup.bash: 没有那个文件或目录 +user@user-B460MPOWER:~/github/catkin_ws$ catkin_init_workspace +Creating symlink "/home/user/github/catkin_ws/CMakeLists.txt" pointing to "/opt/ros/melodic/share/catkin/cmake/toplevel.cmake" +user@user-B460MPOWER:~/github/catkin_ws$ cd src +user@user-B460MPOWER:~/github/catkin_ws/src$ echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc +user@user-B460MPOWER:~/github/catkin_ws/src$ source ~/.bashrc +bash: /opt/ros/kinetic/setup.bash: 没有那个文件或目录 +bash: /opt/ros/kinetic/setup.bash: 没有那个文件或目录 +bash: /opt/ros/kinetic/setup.bash: 没有那个文件或目录 +user@user-B460MPOWER:~/github/catkin_ws/src$ catkin_init_workspace +Creating symlink "/home/user/github/catkin_ws/src/CMakeLists.txt" pointing to "/opt/ros/melodic/share/catkin/cmake/toplevel.cmake" +user@user-B460MPOWER:~/github/catkin_ws/src$ cd .. +user@user-B460MPOWER:~/github/catkin_ws$ catkin_make +Base path: /home/user/github/catkin_ws +Source space: /home/user/github/catkin_ws/src +Build space: /home/user/github/catkin_ws/build +Devel space: /home/user/github/catkin_ws/devel +Install space: /home/user/github/catkin_ws/install + +``` + +![在这里插入图片描述](https://img-blog.csdnimg.cn/2021051909315158.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) + +```bash +roslaunch ar_demo 3dm_bag.launch +roslaunch ar_demo ar_rviz.launch +rosbag play /home/user/github/dataset/ar_box.bag +``` +在运行roslaunch一步时候发现: +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210519094803170.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) +```bash +RLException: [3dm_bag.launch] is neither a launch file in package [ar_demo] nor is [ar_demo] a launch file name +The traceback for the exception was written to the log file +``` +这是因为没有`source devel/setup.bash`的缘故,记得roslaunch文件要分三个终端运行,每次运行前都要有`source devel/setup.bash` + +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210519101234815.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center) +![在这里插入图片描述](https://img-blog.csdnimg.cn/20210519101234770.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDk5MTY3Mw==,size_16,color_FFFFFF,t_70#pic_center)