国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

這篇具有很好參考價(jià)值的文章主要介紹了ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Intel RealSense SDK 2.0 是跨平臺(tái)的開發(fā)套裝,包含了基本的相機(jī)使用工具如 realsense-viewer,也為二次開發(fā)提供了豐富的接口,包括 ROS,python , Matlab, node.js, LabVIEW, OpenCV, PCL, .NET 等。

這次使用的攝像頭是D435i
它可以提供深度和 RGB 圖像,而且?guī)в?IMU
本次流程就是想使用D435i攝像頭進(jìn)行SLAM的點(diǎn)云建圖

進(jìn)行安裝Intel RealSense SDK,查看攝像頭的數(shù)據(jù)
Linux/Ubuntu - 實(shí)感 SDK 2.0 構(gòu)建指南

安裝完成后,查看相機(jī)的深度和 RGB 圖像

realsense-viewer

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?

然后這里下載驅(qū)動(dòng) intel 的各個(gè)攝像頭的 ROS 框架的驅(qū)動(dòng)功能包
適用于英特爾?實(shí)感?設(shè)備的 ROS 封裝器

?
當(dāng)安裝完成后便可以啟動(dòng)看看攝像頭的數(shù)據(jù)

我們這里繼續(xù)配置SMAL
在啟動(dòng)相機(jī)之前,我們需要設(shè)置一下 realsense2_camera rospack 中的 rs_camera.launch 的文件
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
前者是讓不同傳感器數(shù)據(jù)(depth, RGB, IMU)實(shí)現(xiàn)時(shí)間同步,即具有相同的 timestamp;
后者會(huì)增加若干 rostopic,其中我們比較關(guān)心的是/camera/aligned_depth_to_color/image_raw,這里的 depth 圖像與 RGB 圖像是對(duì)齊的

  <arg name="enable_sync"               default="true"/>
  <arg name="align_depth"               default="true"/>

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
完成后,就可以用如下命令啟動(dòng)相機(jī)

roslaunch realsense2_camera rs_camera.launch

其中關(guān)鍵的是 /camera/color/image_raw /camera/aligned_depth_to_color/image_raw
分別對(duì)應(yīng) RGB 圖像和深度圖像

?
然后在Examples/RGB-D中,新建一個(gè)名為RealSense.yaml的參數(shù)文件,
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
然后進(jìn)行編輯

#--------------------------------------------------------------------------------------------
# Camera calibration and distortion parameters (OpenCV)
Camera.fx: 909.3504638671875
Camera.fy: 908.5739135742188
Camera.cx: 645.5443725585938
Camera.cy: 369.3554992675781

Camera.k1: 0.0
Camera.k2: 0.0
Camera.p1: 0.0
Camera.p2: 0.0
Camera.k3: 0.0

Camera.width: 1280
Camera.height: 720

#Camera frames per second
Camera.fps: 30.0

#IR projector baseline times fx (aprox.)
Camera.bf: 46.01

#Color order of the images (0: BGR, 1: RGB. It is ignored if images are grayscale)
Camera.RGB: 1

#Close/Far threshold. Baseline times.
ThDepth: 40.0

#Deptmap values factor,將深度像素值轉(zhuǎn)化為實(shí)際距離,原來單位是 mm,轉(zhuǎn)化成 m
DepthMapFactor: 1000.0


#ORB Parameters
#--------------------------------------------------------------------------------------------

#ORB Extractor: Number of features per image
ORBextractor.nFeatures: 1000

#ORB Extractor: Scale factor between levels in the scale pyramid
ORBextractor.scaleFactor: 1.2

#ORB Extractor: Number of levels in the scale pyramid
ORBextractor.nLevels: 8

#ORB Extractor: Fast threshold
#Image is divided in a grid. At each cell FAST are extracted imposing a minimum response.
#Firstly we impose iniThFAST. If no corners are detected we impose a lower value minThFAST
#You can lower these values if your images have low contrast
ORBextractor.iniThFAST: 20
ORBextractor.minThFAST: 7

#--------------------------------------------------------------------------------------------
#Viewer Parameters
#--------------------------------------------------------------------------------------------
Viewer.KeyFrameSize: 0.05
Viewer.KeyFrameLineWidth: 1
Viewer.GraphLineWidth: 0.9
Viewer.PointSize:2
Viewer.CameraSize: 0.08
Viewer.CameraLineWidth: 3
Viewer.ViewpointX: 0
Viewer.ViewpointY: -0.7
Viewer.ViewpointZ: -1.8
Viewer.ViewpointF: 500

?
其中,里面包含了相機(jī)內(nèi)參,可以通過以下獲取,每個(gè)相機(jī)的參數(shù)可能會(huì)有差別

rostopic echo /camera/color/camera_info

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?

這里主要在yaml中注意的是

# 相機(jī)標(biāo)定和畸變參數(shù)(OpenCV)

要根據(jù)話題【/camera/color/camera_info】的數(shù)據(jù)進(jìn)行修改
參數(shù)可以對(duì)照網(wǎng)址查看具體的各參數(shù)信息
http://docs.ros.org/en/melodic/api/sensor_msgs/html/msg/CameraInfo.html

?

也就是以下的參數(shù)

Camera.fx: 909.3504638671875
Camera.fy: 908.5739135742188
Camera.cx: 645.5443725585938
Camera.cy: 369.3554992675781

Camera.k1: 0.0
Camera.k2: 0.0
Camera.p1: 0.0
Camera.p2: 0.0
Camera.k3: 0.0

Camera.width: 1280
Camera.height: 720

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
完成后保存并退出

然后修改src/pointcloudmapping.cc文件

1.第128行附近

	voxel.setLeafSize (0.02f, 0.02f, 0.02f); 		//Modified place 1 調(diào)節(jié)點(diǎn)云密度

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?
2,第75行左右

            p.y = ( m - kf->cy) * p.z / kf->fy;
           // p.y = - ( m - kf->cy) * p.z / kf->fy;   //Modified place2 與原先添加了負(fù)號(hào),將原本顛倒的點(diǎn)云地圖上下翻轉(zhuǎn),方便觀察 
           //【后續(xù)測試顯示的pcd完全無法使用。不進(jìn)行上下翻轉(zhuǎn)】
            
	    	p.r = color.ptr<uchar>(m)[n*3];         //Modified place3 修改顏色顯示
            p.g = color.ptr<uchar>(m)[n*3+1];
            p.b = color.ptr<uchar>(m)[n*3+2];

#########2023年04月17日 08:54:17 UTC+8:00#########
#########由于原先的截圖有歧義,更換新的圖片#########
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
然后編譯ORB_SLAM2_modified

./build.sh
./build_ros.sh

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?

完成編譯后進(jìn)行測試

啟動(dòng)主節(jié)點(diǎn)

roscore

啟動(dòng)攝像頭

roslaunch realsense2_camera rs_camera.launch

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
進(jìn)行建圖,發(fā)現(xiàn)報(bào)錯(cuò)

rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.bin Examples/RGB-D/RealSense.yaml /camera/rgb/image_raw:=/camera/color/image_raw /camera/depth_registered/image_raw:=/camera/aligned_depth_to_color/image_raw

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
經(jīng)過查找可能是yaml文件還需要修改
opencv4.0讀取yaml文件錯(cuò)誤 error: (-49:Unknown error code -49) Input file is empty in function ‘open’

需要在yaml文件頂端添添加

%YAML:1.0

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?

重新運(yùn)行

rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.bin Examples/RGB-D/RealSense.yaml /camera/rgb/image_raw:=/camera/color/image_raw /camera/depth_registered/image_raw:=/camera/aligned_depth_to_color/image_raw

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
當(dāng)CTRL+C后,可以看到輸出的pcd文件

查看保存的pcd文件

pcl_viewer vslam.pcd

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?
至此,基于深度相機(jī) Intel RealSense D435i 實(shí)現(xiàn) ORB SLAM 2 的流程成功
?

不過由于啟動(dòng)SLAM的指令有點(diǎn)復(fù)雜,使用roslauch進(jìn)行優(yōu)化
首先是離線包的啟動(dòng)

當(dāng)啟動(dòng)的命令沒有輸全的時(shí)候,終端會(huì)輸出使用的用法

Usage: rosrun ORB_SLAM2 RGBD path_to_vocabulary path_to_settings

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?
首先建立一個(gè)功能包,命名為 slam

cd ~/catkin_ws/src
catkin_create_pkg slam std_msgs rospy roscpp

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?
然后在這個(gè)功能包中創(chuàng)建launch文件,我命名為rgbd.launch
進(jìn)行編輯

<launch>
    <!--定義全局參數(shù)-->
    <arg name="rgb_image" default="/camera/rgb/image_raw"/>
    <arg name="path_to_vacabulary" default="/home/heying/ORB_SLAM2_modified/Vocabulary/ORBvoc.bin"/>
    <arg name="path_to_settings" default="/home/heying/ORB_SLAM2_modified/Examples/RGB-D/TUM1_ROS.yaml"/>


    <!--播放離線包-->
    <!-- 注意這里bag文件的路徑必須為絕對(duì)路徑-->
    <node pkg="rosbag" type="play" name="player" output="screen"
         args=" /home/heying/ORB_SLAM2_modified/Examples/datasets/rgbd_dataset_freiburg1_xyz.bag">
         <remap from="/camera/rgb/image_color" to="/camera/rgb/image_raw" />
	 <remap from="/camera/depth/image" to="/camera/depth_registered/image_raw" />

    </node>

    <!--啟動(dòng)ORB-SLAM2 RGBD-->
    <node name ="RGBD" pkg="ORB_SLAM2" type="RGBD"
        args="$(arg path_to_vacabulary) $(arg path_to_settings)" respawn="true" output="screen">
        <!--remap from="/camera/image_raw" to="$(arg rgb_image)"/-->
    </node>
</launch>

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
完成后測試

roslaunch slam rgbd.launch

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
正常啟動(dòng)
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
實(shí)時(shí)攝像頭

再新建一個(gè)launch文件,用于攝像頭的啟動(dòng)于建圖

touch  camera.launch
gedit camera.launch

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

然后進(jìn)行編寫

首先是全局參數(shù),先不要打全指令,可以看到輸出了使用方法,出來的path_to_vocabularypath_to_settings便是需要設(shè)置的全局參數(shù)

rosrun ORB_SLAM2 RGBD

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?

<launch>

<!--定義全局參數(shù)-->
  <arg name = "path_to_vocabulary" default = "/home/heying/ORB_SLAM2_modified/Vocabulary/ORBvoc.bin"/>
  <arg name = "path_to_settings" default = "/home/heying/ORB_SLAM2_modified/Examples/RGB-D/RealSense.yaml"/>


  <!--include file="$(find realsense2_camera)/launch/rs_camera.launch"/-->


<!--啟動(dòng)ORB-SLAM2 RGBD-->
  <node pkg = "ORB_SLAM2" type ="RGBD" name = "RGBD_camera" args="$(arg path_to_vocabulary) $(arg path_to_settings)" respawn="true" output="screen">
        <remap from="/camera/rgb/image_raw" to="/camera/color/image_raw" />
	 	<remap from="/camera/depth_registered/image_raw" to="/camera/aligned_depth_to_color/image_raw" />
  </node>

</launch>

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
測試
開啟主節(jié)點(diǎn)

roscore

然后檢查攝像頭的硬件連接

啟動(dòng)攝像頭

roslaunch realsense2_camera rs_camera.launch

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖

?
啟動(dòng)建圖

roslaunch slam camera.launch

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
啟動(dòng)正常,效果簡直完美
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
在程序CTRL+C后會(huì)生成pcd文件
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?

查看效果

pcl_viewer vslam.pcd

ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?
效果良好
ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖
?
至此,使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖與slam攝像頭建圖的啟動(dòng)指令優(yōu)化流程結(jié)束文章來源地址http://www.zghlxwxcb.cn/news/detail-407594.html

到了這里,關(guān)于ORB-SLAM2的布置(五)使用 intel D435i 構(gòu)建SLAM點(diǎn)云地圖的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ORB_SLAM3 ROS編譯及使用D435I運(yùn)行

    ORB_SLAM3 ROS編譯及使用D435I運(yùn)行

    本文介紹ORB_SLAM3編譯、運(yùn)行中遇到問題,尤其涉及到ORB_SLAM3 ROS編譯遇到的問題。最后通過使用D435I完成在室內(nèi)環(huán)境下運(yùn)行。 本文運(yùn)行環(huán)境在Ubuntu20.04 + ROS noetic。 一、ORB_SLAM3 依賴安裝 ORB_SLAM3 依賴的安裝,有同學(xué)喜歡上來就baidu,按照別人介紹的安裝,這樣做大多數(shù)時(shí)候會(huì)出現(xiàn)

    2024年02月03日
    瀏覽(37)
  • intel realsense d435i相機(jī)標(biāo)定中文文檔

    intel realsense d435i相機(jī)標(biāo)定中文文檔

    此文檔參考了官方的英文文檔,原地址面向英特爾?實(shí)感?深度攝像頭的 IMU 校準(zhǔn)工具 (intelrealsense.com) IMU概述:慣性測量單元(imu)通常由加速度計(jì)組成,加速度通常以國際系統(tǒng)(SI)的米/秒為單位輸出平方(m/s^2)和陀螺儀,陀螺儀通常以SI單位測量角速度弧度/秒(rad/s)。英特爾Real

    2024年02月09日
    瀏覽(20)
  • Ubuntu 20.04 Intel RealSense D435i 相機(jī)標(biāo)定教程

    Ubuntu 20.04 Intel RealSense D435i 相機(jī)標(biāo)定教程

    報(bào)錯(cuò):sumpixel_test.cpp:2:10: fatal error: backward.hpp: 沒有那個(gè)文件或目錄,將sumpixel_test.cpp中# include \\\"backward.hpp\\\"改為:#include “code_utils/backward.hpp”。 報(bào)錯(cuò) 創(chuàng)建rs_imu_calibration.launch 找到realsense-ros包,進(jìn)入/catkin_ws/src/realsense2_camera/launch(路徑僅供參考),復(fù)制其中的rs_camera.launch,并重

    2024年01月16日
    瀏覽(59)
  • Ubuntu18.04安裝配置使用Intel RealSense D435i深度相機(jī)以及在ROS環(huán)境下配置

    Ubuntu18.04安裝配置使用Intel RealSense D435i深度相機(jī)以及在ROS環(huán)境下配置

    最近因?yàn)閷W(xué)習(xí)開發(fā)需要,要開始接觸一些視覺相關(guān)的內(nèi)容,拿到了一個(gè)Inter 的D435i深度相機(jī),記錄一下在Ubuntu18環(huán)境下配置SDK 包的歷程 注意 : Intel官方最新版的librealsense版本與ROS1的ROS Wrapper是 版本不一致的 ,且ROS Wrapper支持的是較低版本的SDK ,具體可以去網(wǎng)站查看 如果完全

    2024年02月07日
    瀏覽(42)
  • 項(xiàng)目設(shè)計(jì):YOLOv5目標(biāo)檢測+機(jī)構(gòu)光相機(jī)(intel d455和d435i)測距

    項(xiàng)目設(shè)計(jì):YOLOv5目標(biāo)檢測+機(jī)構(gòu)光相機(jī)(intel d455和d435i)測距

    1.1??Intel D455 Intel D455 是一款基于結(jié)構(gòu)光(Structured Light)技術(shù)的深度相機(jī)。 與ToF相機(jī)不同,結(jié)構(gòu)光相機(jī)使用另一種方法來獲取物體的深度信息。它通過投射可視光譜中的紅外結(jié)構(gòu)光圖案,然后從被拍攝物體表面反射回來的圖案重建出其三維形狀和深度信息。 Intel D455 深度相機(jī)

    2024年02月08日
    瀏覽(33)
  • Intel RealSense D435i深度相機(jī)通過點(diǎn)云獲取圖片中任意點(diǎn)三維信息(python實(shí)現(xiàn))

    Intel RealSense D435i深度相機(jī)通過點(diǎn)云獲取圖片中任意點(diǎn)三維信息(python實(shí)現(xiàn))

    此時(shí)效果(左側(cè)RGB圖,右側(cè)深度圖)(過近時(shí)深度信息幾乎顯示不出來) ?按下p鍵暫停畫面 按下s鍵保存圖片 按下r鍵讀取剛才保存的圖片,并通過image_sliced文件將圖片裁剪到自己需要的范圍 image_sliced.py 按下g鍵進(jìn)行圖像處理,判斷方向,并將三維信息顯示在圖片上 image_pro

    2023年04月08日
    瀏覽(42)
  • 使用D435i相機(jī)錄制TUM格式的數(shù)據(jù)集

    使用D435i相機(jī)錄制TUM格式的數(shù)據(jù)集

    本文寫于2023年3月14日。 D435i相機(jī)的rgb圖像與depth圖像的像素沒有對(duì)齊,在此記錄一下如何像素對(duì)齊 Ubuntu18.04 + ROS melodic 這一步需要使用 InterRealSenseD435i SDK2 ,可以參考此鏈接安裝。 打開 Intel RealSense Viewer 。設(shè)置 Depth Stream 以及 Color Stream 的圖像分辨率為 640 × 480 ,設(shè)置采集幀率

    2024年02月09日
    瀏覽(24)
  • 【深度相機(jī)D435i】Windows+Ubuntu下調(diào)用D435i利用Python讀取、保存RGB、Depth圖片

    【深度相機(jī)D435i】Windows+Ubuntu下調(diào)用D435i利用Python讀取、保存RGB、Depth圖片

    最近組里面的項(xiàng)目需要用到D435i深度相機(jī)采集深度圖片,所以記錄一下在Windows+Ubuntu的環(huán)境下使用D435i深度相機(jī)的流程,以及如何利用python讀取、保存常見的RGB、Depth圖片。 D435i 在小巧外形中采用英特爾模塊和視覺處理器,是一個(gè)功能強(qiáng)大的一體產(chǎn)品,可與可定制軟件配合使用

    2024年02月02日
    瀏覽(36)
  • d435i 相機(jī)和imu標(biāo)定

    d435i 相機(jī)和imu標(biāo)定

    使用 imu_utils 功能包標(biāo)定 IMU,由于imu_utils功能包的編譯依賴于code_utils,需要先編譯code_utils,主要參考 相機(jī)與IMU聯(lián)合標(biāo)定_熊貓飛天的博客-CSDN博客 Ubuntu20.04編譯并運(yùn)行imu_utils,并且標(biāo)定IMU_學(xué)無止境的小龜?shù)牟┛?CSDN博客 1.1 編譯 code_utils 創(chuàng)建工作空間 1.1.1 修改 CMakeLists.txt 文件

    2024年02月09日
    瀏覽(28)
  • Realsense d435i驅(qū)動(dòng)安裝、配置及校準(zhǔn)

    Realsense d435i驅(qū)動(dòng)安裝、配置及校準(zhǔn)

    寫在前面 本文是在ubuntu20.04下安裝,其它版本大同小異??赡艹霈F(xiàn)的問題,主要由各自安裝相關(guān)庫版本不一致導(dǎo)致,故問題不一,但一般很好解決,正常情況下不會(huì)出現(xiàn)。 Intel Realsense 深度攝像頭D435i將D435強(qiáng)大的深度感知能力和慣性測量單元(IMU)結(jié)合起來,可滿足RGBD、單目、

    2024年02月02日
    瀏覽(56)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包