open_vins 安装(ubuntu18.04 opencv3.2.0)

这篇具有很好参考价值的文章主要介绍了open_vins 安装(ubuntu18.04 opencv3.2.0)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

openvins官网

Getting Started » Installation Guide (ROS1 and ROS2) | OpenVINS

Ubuntu 18.04 ROS 1 Melodic (uses OpenCV 3.2)

这里他指的是ros1 melodic,他们用的opencv3.2测试过。

open_vins 官方给的组合Ubuntu 18.04 ROS 1 Melodic (uses OpenCV 3.2)

Ubuntu 18.04   opencv 3.2.0   

我本机是3.4.8其实,别人的博客用的3.4.6,肯定是没限定,但是你得踩坑。

opencv默认没有aruco

SourceURL:file:///home/hqw/openvins.docx

openvins官网

Getting Started » Installation Guide (ROS1 and ROS2) | OpenVINS

Ubuntu 18.04 ROS 1 Melodic (uses OpenCV 3.2)

这里他指的是ros1 melodic,他们用的opencv3.2测试过。

open_vins 官方给的组合Ubuntu 18.04 ROS 1 Melodic (uses OpenCV 3.2)

Ubuntu 18.04   opencv 3.2.0   

我本机是3.4.8其实,别人的博客用的3.4.6,肯定是没限定,但是你得踩坑。

opencv默认没有aruco

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

opencv参考命令

git clone https://github.com/opencv/opencv/git clone https://github.com/opencv/opencv_contrib/mkdir opencv/build/cd opencv/build/cmake -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules ..make -j8sudo make install

实际根据需求去git找的release,没用官方这个命令。

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

ubuntu18.04安装运行OpenVINS_openvins运行-CSDN博客

这个博客也是3.2

指定一个独立目录

$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv320 -D E

各种报错

可选错误——CUDA报错

CMake Error at cmake/OpenCVCompilerOptions.cmake:21 (else):

  A duplicate ELSE command was found inside an IF block.

Call Stack (most recent call first):

  CMakeLists.txt:495 (include)

这种问题很简单了,直接打开cmake/OpenCVCompilerOptions.cmake:21 ,找到21行,他就是多了一行多余的endif,直接删除掉就好了

# else() # message(STATUS "Looking for ccache - not found")

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.

Please set them or make sure they are set and tested correctly in the CMake files:

CUDA_nppi_LIBRARY (ADVANCED)

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

因为本机安装过cuda

解决方法:

第一步:在  opencv-3.2.0/cmake  文件夹下找到  FindCUDA.cmake 文件,对其进行修改

cd /home/zqzy/software/opencv-3.2.0/cmake

/home/hqw/hqw_opt/opencv/cmake/FindCUDA.cmake

sudo gedit FindCUDA.cmake

1)找到行

find_cuda_helper_libs(nppi)

改为

  find_cuda_helper_libs(nppial)

  find_cuda_helper_libs(nppicc)

  find_cuda_helper_libs(nppicom)

  find_cuda_helper_libs(nppidei)

  find_cuda_helper_libs(nppif)

  find_cuda_helper_libs(nppig)

  find_cuda_helper_libs(nppim)

  find_cuda_helper_libs(nppist)

  find_cuda_helper_libs(nppisu)

  find_cuda_helper_libs(nppitc)

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

上边那一对就是,但是需要把下边这个替换了?(-- CUDA detected: 11.4

)其实这一步我的版本不必(下边是5.5),按需操作

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

2)找到行

set(CUDA_npp_LIBRARY "${CUDA_nppc_LIBRARY};${CUDA_nppi_LIBRARY};${CUDA_npps_LIBRARY}")

改为

set(CUDA_npp_LIBRARY "${CUDA_nppc_LIBRARY};${CUDA_nppial_LIBRARY};${CUDA_nppicc_LIBRARY};${CUDA_nppicom_LIBRARY};${CUDA_nppidei_LIBRARY};${CUDA_nppif_LIBRARY};${CUDA_nppig_LIBRARY};${CUDA_nppim_LIBRARY};${CUDA_nppist_LIBRARY};${CUDA_nppisu_LIBRARY};${CUDA_nppitc_LIBRARY};${CUDA_npps_LIBRARY}")

3)找到行

unset(CUDA_nppi_LIBRARY CACHE)

改为

unset(CUDA_nppial_LIBRARY CACHE)

unset(CUDA_nppicc_LIBRARY CACHE)

unset(CUDA_nppicom_LIBRARY CACHE)

unset(CUDA_nppidei_LIBRARY CACHE)

unset(CUDA_nppif_LIBRARY CACHE)

unset(CUDA_nppig_LIBRARY CACHE)

unset(CUDA_nppim_LIBRARY CACHE)

unset(CUDA_nppist_LIBRARY CACHE)

unset(CUDA_nppisu_LIBRARY CACHE)

unset(CUDA_nppitc_LIBRARY CACHE)

第二步:  在  opencv-3.2.0/cmake  文件夹下找到文件  OpenCVDetectCUDA.cmake,对其进行修改

cd /home/zqzy/software/opencv-3.2.0/cmake

sudo gedit OpenCVDetectCUDA.cmake

  修改以下几行

 ...

  set(__cuda_arch_ptx "")

  if(CUDA_GENERATION STREQUAL "Fermi")

    set(__cuda_arch_bin "2.0")

  elseif(CUDA_GENERATION STREQUAL "Kepler")

    set(__cuda_arch_bin "3.0 3.5 3.7")

  ...

改为

  ...

  set(__cuda_arch_ptx "")

  if(CUDA_GENERATION STREQUAL "Kepler")

    set(__cuda_arch_bin "3.0 3.5 3.7")

  elseif(CUDA_GENERATION STREQUAL "Maxwell")

    set(__cuda_arch_bin "5.0 5.2")

  ...

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

第三步: Cuda9或者Cuda10及以后的版本 中有一个单独的halffloat(cuda_fp16.h)头文件,也应该被包括在opencv的目录里

将头文件cuda_fp16.h添加至 opencv/modules/cudev/include/opencv2/cudev/common.hpp

cd /home/zqzy/software/opencv-3.2.0/modules/cudev/include/opencv2/cudev

sudo gedit common.hpp

即在common.hpp中添加

#include <cuda_fp16.h>

重新生成即可

最后都试了,不行,不知道本机环境什么情况,毕竟不是我新装的机器,docker、cuda、ros、opencv

不带cuda

$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF   ..

undefined reference to `cblas_sgemm

缺库

sudo apt-get install libopenblas-dev

$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF  -DCMAKE_EXE_LINKER_FLAGS=-lcblas   ..

make -j8

sudo make install

$ ls /usr/local/opencv320/

bin  include  lib  share

Release 3.2.0 · opencv/opencv_contrib · GitHub

忘了带contrib和aruco,删除/usr/local/opencv320,重装

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF  -DCMAKE_EXE_LINKER_FLAGS=-lcblas -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.2.0   ..

opencv编译不过

fatal error: linux/videodev.h: No such file or directory

sudo apt-get install libv4l-dev sudo ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h

fatal error: sys/videoio.h: No such file or directory

其实是/modules/没写进去

$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF  -DCMAKE_EXE_LINKER_FLAGS=-lcblas -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.2.0/modules/   ..

-- Configuring done

-- Generating done

-- Build files have been written to: /home/hqw/hqw_opt/opencv-3.2.0/build

配置成功

编译失败

 fatal error: LAPACKE_H_PATH-NOTFOUND/lapacke.h: No such file or directory #include “LAPACKE_H_PATH-NOTFOUND/lapacke.h”

sudo apt-get install liblapacke-dev checkinstall

修改出现问题的文件,例如我的文件是opencv-3.2.0/build/opencv_lapack.h

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

将第二行中的#include"LAPACKE_H_PATH-NOTFOUND/lapacke.h" 修改为#include"lapacke.h"即可

报错

fatal error: unsupported/Eigen/MatrixFunctions: No such file or directory

首先确保Eigen已经安装了,然后找到Eigen所在的路径。我的在/usr/include/eigen3这里

然后将报错的文件中的下面句子

include <unsupported/Eigen/MatrixFunctions>

改成

include </usr/include/eigen3/unsupported/Eigen/MatrixFunctions>

// #include <unsupported/Eigen/MatrixFunctions>

#include </usr/include/eigen3/unsupported/Eigen/MatrixFunctions>

编译成功

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

安装

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

看到openvins引用新编译的opencv库,新的是3.2.0,默认是3.4.8,虽然我没替换3.4.8,制定了/usr/local/opencv320/,但是执行了make install。。。。

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

被install以后被自动找到直接就编译成功了,如果找不到就改一下cmakelists.txt

open_vins 安装(ubuntu18.04 opencv3.2.0),ROS,机器人,SLAM,算法

opencv参考命令

git clone https://github.com/opencv/opencv/git clone https://github.com/opencv/opencv_contrib/mkdir opencv/build/cd opencv/build/cmake -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules ..make -j8sudo make install

实际根据需求去git找的release,没用官方这个命令。

ubuntu18.04安装运行OpenVINS_openvins运行-CSDN博客

这个博客也是3.2

指定一个独立目录

$ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv320 -D E

各种报错

CMake Error at cmake/OpenCVCompilerOptions.cmake:21 (else):

  A duplicate ELSE command was found inside an IF block.

Call Stack (most recent call first):

  CMakeLists.txt:495 (include)

这种问题很简单了,直接打开cmake/OpenCVCompilerOptions.cmake:21 ,找到21行,他就是多了一行多余的endif,直接删除掉就好了

# else() # message(STATUS "Looking for ccache - not found")

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.

Please set them or make sure they are set and tested correctly in the CMake files:

CUDA_nppi_LIBRARY (ADVANCED)

因为本机安装过cuda

解决方法:

第一步:在  opencv-3.2.0/cmake  文件夹下找到  FindCUDA.cmake 文件,对其进行修改

cd /home/zqzy/software/opencv-3.2.0/cmake

/home/hqw/hqw_opt/opencv/cmake/FindCUDA.cmake

sudo gedit FindCUDA.cmake

1)找到行

find_cuda_helper_libs(nppi)

改为

  find_cuda_helper_libs(nppial)

  find_cuda_helper_libs(nppicc)

  find_cuda_helper_libs(nppicom)

  find_cuda_helper_libs(nppidei)

  find_cuda_helper_libs(nppif)

  find_cuda_helper_libs(nppig)

  find_cuda_helper_libs(nppim)

  find_cuda_helper_libs(nppist)

  find_cuda_helper_libs(nppisu)

  find_cuda_helper_libs(nppitc)

上边那一对就是,但是需要把下边这个替换了?(-- CUDA detected: 11.4

)其实这一步我的版本不必(下边是5.5),按需操作

2)找到行

set(CUDA_npp_LIBRARY "${CUDA_nppc_LIBRARY};${CUDA_nppi_LIBRARY};${CUDA_npps_LIBRARY}")

改为

set(CUDA_npp_LIBRARY "${CUDA_nppc_LIBRARY};${CUDA_nppial_LIBRARY};${CUDA_nppicc_LIBRARY};${CUDA_nppicom_LIBRARY};${CUDA_nppidei_LIBRARY};${CUDA_nppif_LIBRARY};${CUDA_nppig_LIBRARY};${CUDA_nppim_LIBRARY};${CUDA_nppist_LIBRARY};${CUDA_nppisu_LIBRARY};${CUDA_nppitc_LIBRARY};${CUDA_npps_LIBRARY}")

3)找到行

unset(CUDA_nppi_LIBRARY CACHE)

改为

unset(CUDA_nppial_LIBRARY CACHE)

unset(CUDA_nppicc_LIBRARY CACHE)

unset(CUDA_nppicom_LIBRARY CACHE)

unset(CUDA_nppidei_LIBRARY CACHE)

unset(CUDA_nppif_LIBRARY CACHE)

unset(CUDA_nppig_LIBRARY CACHE)

unset(CUDA_nppim_LIBRARY CACHE)

unset(CUDA_nppist_LIBRARY CACHE)

unset(CUDA_nppisu_LIBRARY CACHE)

unset(CUDA_nppitc_LIBRARY CACHE)

第二步:  在  opencv-3.2.0/cmake  文件夹下找到文件  OpenCVDetectCUDA.cmake,对其进行修改

cd /home/zqzy/software/opencv-3.2.0/cmake

sudo gedit OpenCVDetectCUDA.cmake

  修改以下几行

 ...

  set(__cuda_arch_ptx "")

  if(CUDA_GENERATION STREQUAL "Fermi")

    set(__cuda_arch_bin "2.0")

  elseif(CUDA_GENERATION STREQUAL "Kepler")

    set(__cuda_arch_bin "3.0 3.5 3.7")

  ...

改为

  ...

  set(__cuda_arch_ptx "")

  if(CUDA_GENERATION STREQUAL "Kepler")

    set(__cuda_arch_bin "3.0 3.5 3.7")

  elseif(CUDA_GENERATION STREQUAL "Maxwell")

    set(__cuda_arch_bin "5.0 5.2")

  ...

第三步: Cuda9或者Cuda10及以后的版本 中有一个单独的halffloat(cuda_fp16.h)头文件,也应该被包括在opencv的目录里

将头文件cuda_fp16.h添加至 opencv/modules/cudev/include/opencv2/cudev/common.hpp

cd /home/zqzy/software/opencv-3.2.0/modules/cudev/include/opencv2/cudev

sudo gedit common.hpp

即在common.hpp中添加

#include <cuda_fp16.h>

重新生成即可

最后都试了,不行,不知道本机环境什么情况,毕竟不是我新装的机器,docker、cuda、ros、opencv

不带cuda

$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF   ..

undefined reference to `cblas_sgemm

缺库

sudo apt-get install libopenblas-dev

$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF  -DCMAKE_EXE_LINKER_FLAGS=-lcblas   ..

make -j8

sudo make install

$ ls /usr/local/opencv320/

bin  include  lib  share

Release 3.2.0 · opencv/opencv_contrib · GitHub

忘了带contrib和aruco,删除/usr/local/opencv320,重装

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF  -DCMAKE_EXE_LINKER_FLAGS=-lcblas -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.2.0   ..

opencv编译不过

fatal error: linux/videodev.h: No such file or directory

sudo apt-get install libv4l-dev sudo ln -s /usr/include/libv4l1-videodev.h /usr/include/linux/videodev.h

fatal error: sys/videoio.h: No such file or directory

其实是/modules/没写进去

$ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/opencv320  -DWITH_CUDA=OFF  -DCMAKE_EXE_LINKER_FLAGS=-lcblas -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.2.0/modules/   ..

-- Configuring done

-- Generating done

-- Build files have been written to: /home/hqw/hqw_opt/opencv-3.2.0/build

配置成功

编译失败

 fatal error: LAPACKE_H_PATH-NOTFOUND/lapacke.h: No such file or directory #include “LAPACKE_H_PATH-NOTFOUND/lapacke.h”

sudo apt-get install liblapacke-dev checkinstall

修改出现问题的文件,例如我的文件是opencv-3.2.0/build/opencv_lapack.h



将第二行中的#include"LAPACKE_H_PATH-NOTFOUND/lapacke.h" 修改为#include"lapacke.h"即可

报错

fatal error: unsupported/Eigen/MatrixFunctions: No such file or directory

首先确保Eigen已经安装了,然后找到Eigen所在的路径。我的在/usr/include/eigen3这里

然后将报错的文件中的下面句子

include <unsupported/Eigen/MatrixFunctions>

改成

include </usr/include/eigen3/unsupported/Eigen/MatrixFunctions>

// #include <unsupported/Eigen/MatrixFunctions>

#include </usr/include/eigen3/unsupported/Eigen/MatrixFunctions>

安装

openvins引用新编译的opencv库

被install以后被自动找到,如果找不到就改一下cmakelists.txt文章来源地址https://www.toymoban.com/news/detail-775145.html

到了这里,关于open_vins 安装(ubuntu18.04 opencv3.2.0)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Ubunutu18.04+Qt5.14+Dlib19.24+Opencv3.4.16实时人眼监测实验

      在Ubuntu18.04实现的一个人眼监测小程序,使用Qt5.14、Dlib19.24、Opencv3.4.16实现。   其主要实现思想是,首先通过 Opencv 获取摄像头数据,然后通过 Dlib 提取人脸68关键点的算法对所输入图片中的人脸进行关键点检测,检测出眼部的关键点后,在用 Opnecv 中的画图命令进行绘制

    2023年04月13日
    浏览(71)
  • ubuntu18.04系统安装opencv及opencv_contrib

    这篇文章博主是正在学习的过程中总结的,有什么问题请各位提出,便于博主改正。 博主使用的 ubuntu 系统是 18.04 , opencv 和 opencv_contrib 均是 4.6.0 版本的,使用 Qt 编写使用opencv的程序。 安装任意版本都是通用的,如果有问题,欢迎各位提出修改建议。 1.opencv安装包 下载地

    2024年02月04日
    浏览(61)
  • ubuntu18.04下安装vscode并配置python+opencv

     进入vscode官网 https://code.visualstudio.com/ 下载完之后直接双击下载的包可以直接安装    打开vscode点击拓展然后搜索python点击安装 (我这边已经装过了) 现在打开终端(ctrl+alt+T) 输入python 不出意外会是ubuntu自带的2.7  现在pip install 安装opencv装不到python3.6解释器 现在输入ex

    2024年02月12日
    浏览(54)
  • Ubuntu18.04,opencv-4.3.0和opencv_contrib-4.3.0安装(填坑)

    如果觉得本篇文章对您的学习起到帮助作用,请 点赞 + 关注 + 评论 ,留下您的足迹💪💪💪 本文主要Ubuntu18.04安装opencv-4.3.0和opencv_contrib-4.3.0,坑巨多,因此记录以备日后查看,同时,如果能够帮助到更多人,也不胜荣幸。 本文所使用安装包,百度网盘: 链接:https://pan.

    2024年02月12日
    浏览(74)
  • ubuntu18.04查询opencv库路径,检查Opencv有无正确设置环境变量,以及卸载和安装教程

    1. 打开终端或命令提示符 2. 输入以下命令来查询OpenCV库的路径:    这个命令将返回OpenCV库的链接选项,其中包含库的路径信息。 3. 查找返回结果中的`-L`选项,后面跟着的路径就是OpenCV库的路径。    例如,如果返回结果中有`-L/usr/local/lib`,那么`/usr/local/lib`就是OpenCV库的路

    2024年02月08日
    浏览(46)
  • Ubuntu 18.04 交叉编译Opencv-4.6.0

    操作系统:Ubuntu 18.04 OpenCv版本:4.6.0 交叉工具链:arm-linux-gnueabihf-gcc-5.3.1 这里推荐大家到网上找OpenCV的Linux版本安装包(.tar.gz结尾),不要github上clone(clone下来的没编译通过) https://github.com/opencv/opencv/releases/tag/4.6.0 选择tar.gz源码  https://gitcode.net/mirrors/opencv/opencv_contrib 下载

    2024年02月08日
    浏览(61)
  • Linux系统 Ubuntu18.04安装的详细教程(提供18.04ubuntu镜像)

    镜像文件下载: 链接:https://pan.baidu.com/s/12bEdRBwO1YbLt23QKnrSrA 提取码:h7as 关于全名、用户名区别可先看第四部分 处理器和内核数量,根据需要配置就行。我是8核16线程,配置2,2。小白学习的话,配置低一点没关系。如果你只是为了学一些基础命令,配置成1,1应该也没问题

    2024年02月01日
    浏览(82)
  • Ubuntu 18.04 在安装OpenCV4.6.0时遇到“opencv2/gapi.hpp: No such file or directory“ 解决方法

    问题: 在对OpenCV4.6.0在安装过程中进行make编译时,遇到了 \\\"opencv2/gapi.hpp: No such file or directory\\\" 问题,引起这个问题的原因是因为在 /opencv4.6.0/samples/cpp/CMakelists.txt 文件中没有添加 opencv_gapi 指令,就导致了在编译过程中编译器找不到这个文件便会报错。如下图所示为具体报错提

    2024年02月13日
    浏览(40)
  • Ubuntu18.04下opencv基础操作(打开图片及视频)

    开源计算机视觉(OpenCV)是一个主要针对实时计算机视觉的编程函数库。 OpenCV的应用领域包括: 2D和3D功能工具包 运动估计 面部识别系统 手势识别 人机交互 移动机器人 动作理解 物体识别 分割和识别 实体影像立体视觉:来自两个摄像机的深度感知 运动中的结构(SFM) 运动跟踪 增

    2024年04月17日
    浏览(32)
  • 在Ubuntu18.04中搭建基于QT的opencv环境

    前言 在看这篇文章之前,需要读者已经安装了qt环境如果还没有安装可以移步至这篇文章的后半断 链接: qt移植 获取cmake-gui sudo apt-get install cmake-gui 这一步主要是一会儿编译opencv的时候会用到 获取opencv的依赖环境 sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcod

    2024年01月17日
    浏览(43)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包