ros運行包,Ubuntu20.04成功運行LIO-SAM

z@z:~/lio_sam_ws$ source devel/setup.bash 
z@z:~/lio_sam_ws$ roslaunch lio_sam run.launch

創建包鏈接:

鏈接1:Ubuntu20.04成功運行LIO-SAM_ubuntu20.04運行liosam-CSDN博客

鏈接2:ubuntu 20.04 ROS 編譯和運行 lio-sam,并且導出PCD文件運行_ubuntu20.04 編譯lio-sam-CSDN博客

z@z:~/lio_sam_ws$ source devel/setup.bash
z@z:~/lio_sam_ws$ roslaunch lio_sam run.launch

在bag包所在的位置打開新的終端運行程序代碼:

rosbag play l1_cooperation_2023-12-21-15-44-16_velodyne.bag

rosbag play l1_cooperation_2023-12-21-15-44-16_velodyne.bag

最后得到三維點云圖像

補充:

根據z@z:~/lio_sam_ws/src/LIO-SAM$ rosbag info l1_cooperation_2023-12-21-15-44-16_velodyne.bag
path:        l1_cooperation_2023-12-21-15-44-16_velodyne.bag
version:     2.0
duration:    10:12s (612s)
start:       Mar 28 2024 14:18:30.89 (1711606710.89)
end:         Mar 28 2024 14:28:43.88 (1711607323.88)
size:        15.4 GB
messages:    73561
compression: none [12163/12163 chunks]
types:       sensor_msgs/Imu         [6a62c6daae103f4ff57a132d6f95cec2]sensor_msgs/PointCloud2 [1158d486dd51d683ce2f1be655c3c181]
topics:      /back/velodyne_points    6130 msgs    : sensor_msgs/PointCloud2/imu/data               61304 msgs    : sensor_msgs/Imu        /velodyne_points         6127 msgs    : sensor_msgs/PointCloud2
怎么修改yaml文件里面的topic                                                                                                                                                           lio_sam:# TopicspointCloudTopic: "sensor_msgs/PointCloud2"               # Point cloud dataimuTopic: "sensor_msgs/Imu"                         # IMU data#odomTopic: "odometry/imu"                   # IMU pre-preintegration odometry, same frequency as IMU#gpsTopic: "odometry/gpsz"                   # GPS odometry topic from navsat, see module_navsat.launch file# FrameslidarFrame: "base_link"baselinkFrame: "base_link"odometryFrame: "odom"mapFrame: "map"# GPS SettingsuseImuHeadingInitialization: true           # if using GPS data, set to "true"useGpsElevation: false                      # if GPS elevation is bad, set to "false"gpsCovThreshold: 2.0                        # m^2, threshold for using GPS dataposeCovThreshold: 25.0                      # m^2, threshold for using GPS data# Export settingssavePCD: false                              # https://github.com/TixiaoShan/LIO-SAM/issues/3savePCDDirectory: "/Downloads/LOAM/"        # in your home folder, starts and ends with "/". Warning: the code deletes "LOAM" folder then recreates it. See "mapOptimization" for implementation# Sensor Settingssensor: velodyne                            # lidar sensor type, 'velodyne' or 'ouster' or 'livox'N_SCAN: 16                                  # number of lidar channel (i.e., Velodyne/Ouster: 16, 32, 64, 128, Livox Horizon: 6)Horizon_SCAN: 1800                          # lidar horizontal resolution (Velodyne:1800, Ouster:512,1024,2048, Livox Horizon: 4000)downsampleRate: 1                           # default: 1. Downsample your data if too many points. i.e., 16 = 64 / 4, 16 = 16 / 1lidarMinRange: 1.0                          # default: 1.0, minimum lidar range to be usedlidarMaxRange: 1000.0                       # default: 1000.0, maximum lidar range to be used# IMU SettingsimuAccNoise: 3.9939570888238808e-03imuGyrNoise: 1.5636343949698187e-03imuAccBiasN: 6.4356659353532566e-05imuGyrBiasN: 3.5640318696367613e-05imuGravity: 9.80511imuRPYWeight: 0.01# Extrinsics: T_lb (lidar -> imu)extrinsicTrans: [0.0, 0.0, 0.0]# extrinsicRot: [-1, 0, 0,#                 0, 1, 0,#                 0, 0, -1]# extrinsicRPY: [0, -1, 0,#                1, 0, 0,#                0, 0, 1]extrinsicRot: [1, 0, 0,0, 1, 0,0, 0, 1]extrinsicRPY: [1, 0, 0,0, 1, 0,0, 0, 1]# LOAM feature thresholdedgeThreshold: 1.0surfThreshold: 0.1edgeFeatureMinValidNum: 10surfFeatureMinValidNum: 100# voxel filter papramsodometrySurfLeafSize: 0.4                     # default: 0.4 - outdoor, 0.2 - indoormappingCornerLeafSize: 0.2                    # default: 0.2 - outdoor, 0.1 - indoormappingSurfLeafSize: 0.4                     # default: 0.4 - outdoor, 0.2 - indoor# robot motion constraint (in case you are using a 2D robot)z_tollerance: 1000                            # metersrotation_tollerance: 1000                     # radians# CPU ParamsnumberOfCores: 4                              # number of cores for mapping optimizationmappingProcessInterval: 0.15                  # seconds, regulate mapping frequency# Surrounding mapsurroundingkeyframeAddingDistThreshold: 1.0   # meters, regulate keyframe adding thresholdsurroundingkeyframeAddingAngleThreshold: 0.2  # radians, regulate keyframe adding thresholdsurroundingKeyframeDensity: 2.0               # meters, downsample surrounding keyframe poses   surroundingKeyframeSearchRadius: 50.0         # meters, within n meters scan-to-map optimization (when loop closure disabled)# Loop closureloopClosureEnableFlag: trueloopClosureFrequency: 1.0                     # Hz, regulate loop closure constraint add frequencysurroundingKeyframeSize: 50                   # submap size (when loop closure enabled)historyKeyframeSearchRadius: 15.0             # meters, key frame that is within n meters from current pose will be considerd for loop closurehistoryKeyframeSearchTimeDiff: 30.0           # seconds, key frame that is n seconds older will be considered for loop closurehistoryKeyframeSearchNum: 25                  # number of hostory key frames will be fused into a submap for loop closurehistoryKeyframeFitnessScore: 0.3              # icp threshold, the smaller the better alignment# VisualizationglobalMapVisualizationSearchRadius: 1000.0    # meters, global map visualization radiusglobalMapVisualizationPoseDensity: 10.0       # meters, global map visualization keyframe densityglobalMapVisualizationLeafSize: 1.0           # meters, global map visualization cloud densityNavsat (convert GPS coordinates to Cartesian)
navsat:frequency: 50wait_for_datum: falsedelay: 0.0magnetic_declination_radians: 0yaw_offset: 0zero_altitude: truebroadcast_utm_transform: falsebroadcast_utm_transform_as_parent_frame: falsepublish_filtered_gps: falseEKF for Navsat
ekf_gps:publish_tf: falsemap_frame: mapodom_frame: odombase_link_frame: base_linkworld_frame: odomfrequency: 50two_d_mode: falsesensor_timeout: 0.01# -------------------------------------# External IMU:# -------------------------------------imu0: imu_correct# make sure the input is aligned with ROS REP105. "imu_correct" is manually transformed by myself. EKF can also transform the data using tf between your imu and base_linkimu0_config: [false, false, false,true,  true,  true,false, false, false,false, false, true,true,  true,  true]imu0_differential: falseimu0_queue_size: 50 imu0_remove_gravitational_acceleration: true# -------------------------------------# Odometry (From Navsat):# -------------------------------------odom0: odometry/gpsodom0_config: [true,  true,  true,false, false, false,false, false, false,false, false, false,false, false, false]odom0_differential: falseodom0_queue_size: 10#                            x     y     z     r     p     y   x_dot  y_dot  z_dot  r_dot p_dot y_dot x_ddot y_ddot z_ddotprocess_noise_covariance: [  1.0,  0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,    0,    0,      0,0,    1.0,  0,    0,    0,    0,    0,     0,     0,     0,    0,    0,    0,    0,      0,0,    0,    10.0, 0,    0,    0,    0,     0,     0,     0,    0,    0,    0,    0,      0,0,    0,    0,    0.03, 0,    0,    0,     0,     0,     0,    0,    0,    0,    0,      0,0,    0,    0,    0,    0.03, 0,    0,     0,     0,     0,    0,    0,    0,    0,      0,0,    0,    0,    0,    0,    0.1,  0,     0,     0,     0,    0,    0,    0,    0,      0,0,    0,    0,    0,    0,    0,    0.25,  0,     0,     0,    0,    0,    0,    0,      0,0,    0,    0,    0,    0,    0,    0,     0.25,  0,     0,    0,    0,    0,    0,      0,0,    0,    0,    0,    0,    0,    0,     0,     0.04,  0,    0,    0,    0,    0,      0,0,    0,    0,    0,    0,    0,    0,     0,     0,     0.01, 0,    0,    0,    0,      0,0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0.01, 0,    0,    0,      0,0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0.5,  0,    0,      0,0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,    0.01, 0,      0,0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,    0,    0.01,   0,0,    0,    0,    0,    0,    0,    0,     0,     0,     0,    0,    0,    0,    0,      0.015]

解答

根據您的ROS Bag文件中的Topic信息,需要將YAML配置文件中的 LiDAR點云Topic 和 IMU Topic 與實際錄制的話題名稱對齊。以下是具體修改步驟:---**一、關鍵Topic配置修改**
**1. LiDAR點云Topic**
原始配置錯誤地將點云Topic定義為消息類型,需改為實際Topic名稱:
```yaml
lio_sam:# TopicspointCloudTopic: "/velodyne_points"  # 修改前:"sensor_msgs/PointCloud2"# 或根據需求選擇多雷達:# pointCloudTopic: "/back/velodyne_points"
```**2. IMU Topic**
IMU Topic需匹配Bag文件中的實際名稱:
```yamlimuTopic: "/imu/data"  # 修改前:"sensor_msgs/Imu"
```---**二、其他相關配置驗證**
**1. 傳感器類型與參數**
檢查LiDAR型號參數是否匹配(Velodyne/Ouster/Livox):
```yaml# Sensor Settingssensor: velodyne  # 確保與使用的LiDAR型號一致N_SCAN: 16        # Velodyne 16線雷達配置Horizon_SCAN: 1800 # Velodyne的水平分辨率
```**2. 坐標系對齊**
驗證雷達與IMU的坐標系關系(若存在外參偏移需修改):
```yaml# Extrinsics: T_lb (lidar -> imu)extrinsicTrans: [0.0, 0.0, 0.0]  # 若無偏移可保持默認extrinsicRot: [1, 0, 0,0, 1, 0,0, 0, 1]          # 單位矩陣表示坐標系對齊
```**3. 導航衛星配置**
如果使用GPS數據,確保`navsat`部分Topic與Bag一致:
```yaml
navsat:# 若有GPS數據需配置對應Topic# odom0: "odometry/gps"  # 取消注釋并驗證Topic名稱
```---**三、修改后完整配置示例**
```yaml
lio_sam:# TopicspointCloudTopic: "/velodyne_points"  # 或 "/back/velodyne_points"imuTopic: "/imu/data"# FrameslidarFrame: "base_link"baselinkFrame: "base_link"odometryFrame: "odom"mapFrame: "map"# Sensor Settingssensor: velodyneN_SCAN: 16Horizon_SCAN: 1800downsampleRate: 1lidarMinRange: 1.0lidarMaxRange: 1000.0# IMU噪聲參數(根據傳感器標定結果填寫)imuAccNoise: 3.9939570888238808e-03imuGyrNoise: 1.5636343949698187e-03imuGravity: 9.80511
```---**四、驗證與調試**
1. 啟動LIO-SAM:```bashroslaunch lio_sam run.launch```2. 回放Bag文件:```bashrosbag play l1_cooperation_2023-12-21-15-44-16_velodyne.bag \--topics /velodyne_points /imu/data  # 限定必要Topic```3. 檢查Topic連通性:```bashrostopic list | grep -E "velodyne_points|imu/data"  # 確認Topic已發布```---**五、常見問題解決**
1. Topic未接收:? 使用`rostopic hz /velodyne_points`檢查發布頻率? 在`launch`文件中添加重映射:```xml<node pkg="lio_sam" type="lio_sam_imuPreintegration" name="imuPreintegration"><remap from="/imu/data" to="/your_custom_imu_topic"/></node>```2. 時間同步問題:```bashrosbag play --clock bag_file.bag  # 啟用模擬時間```---通過以上配置,您的LIO-SAM將正確訂閱Bag文件中的傳感器數據。若需進一步優化建圖效果,可調整`mappingCornerLeafSize`等點云降采樣參數(參見原始配置第25-27行)。

問題2:

為什么修改之后運行重新打開一個終端,輸入roslaunch lio_sam run.launch和rosbag play 包在rviz里面沒有顯示呀,是需要添加什么話題嗎

---**原因分析與解決方案**
根據圖片中的 RViz報錯信息 和 終端日志,修改后運行未顯示數據的原因可能是以下幾點:---**1. 坐標系(TF)未正確發布**
圖片中的關鍵錯誤是 `Fixed Frame [map] does not exist`,說明ROS系統中未發布 `map` 坐標系,導致所有依賴該坐標系的顯示內容(點云、軌跡等)無法渲染。  
原因:  
? LIO-SAM的核心節點未正常啟動(如 `mapOptimization` 節點崩潰)。  ? YAML參數配置錯誤(如 `mapFrame` 與其他節點沖突)。  解決方案:  
1. 檢查YAML配置:確保 `lio_sam` 部分的 `mapFrame` 和 `odometryFrame` 與其他節點(如 `ekf_gps`)的配置一致:  ```yaml# lio_sam/config/params.yamllio_sam:mapFrame: "map"          # 必須與其他節點的map_frame一致odometryFrame: "odom"    # 必須與ekf_gps的odom_frame一致``````yaml# ekf_gps配置(若有)ekf_gps:map_frame: "map"odom_frame: "odom"base_link_frame: "base_link"```2. 驗證節點啟動狀態:  ? 在終端日志中,確認 `lio_sam_mapOptmization` 節點是否啟動(如日志中出現 `[lio_sam_mapOptmization-4] process started`)。  ? 若節點崩潰,檢查 `mapOptmization.cpp` 的依賴項(如GTSAM版本、PCL配置)。---**2. 話題未正確訂閱**
RViz中未顯示點云或軌跡,可能是因為 話題名稱未匹配 或 數據未發布。  
原因:  
? YAML中的 `pointCloudTopic` 或 `imuTopic` 與Bag文件中的實際話題名稱不一致。  ? 數據未同步(如Bag文件播放時未指定時鐘)。  解決方案:  
1. 修改YAML話題名稱:  根據Bag文件中的實際話題名稱調整參數:  ```yaml# lio_sam/config/params.yamllio_sam:pointCloudTopic: "/velodyne_points"  # 修改為Bag中的實際名稱imuTopic: "/imu/data"               # 修改為Bag中的實際名稱```2. 指定時鐘同步播放Bag:  ```bashrosbag play --clock your_data.bag  # 啟用模擬時鐘```---**3. RViz顯示配置錯誤**
即使數據已發布,若RViz未正確配置顯示類型或話題,仍無法可視化。  
解決方案:  
1. 添加顯示插件:  ? 在RViz中點擊 Add → By Topic → 選擇以下話題:  ? PointCloud2:訂閱 `/lio_sam/mapping/cloud_registered`  ? Path:訂閱 `/lio_sam/mapping/path`  ? TF:勾選所有坐標系  ? 設置 Fixed Frame 為 `map`(若不存在則設為 `odom` 臨時測試)。2. 驗證話題存在性:  ```bashrostopic list | grep -E "cloud_registered|path|imu|odom"  # 確認關鍵話題已發布```---**4. 進程依賴沖突**
終端日志顯示 `robot_state_publisher` 和 `ekf_gps` 進程異常退出,可能是 節點依賴沖突 或 參數重復定義。  
解決方案:  
1. 關閉沖突節點:  在 `run.launch` 中注釋或刪除重復節點定義(如 `robot_state_publisher` 或 `ekf_gps`)。  ```xml<!-- 注釋沖突節點 --><!-- <node pkg="robot_state_publisher" type="robot_state_publisher" name="robot_state_publisher" /> -->```2. 檢查launch文件依賴:  確保所有節點依賴的包已安裝(如 `robot_state_publisher` 需安裝 `ros-noetic-robot-state-publisher`)。---**操作流程驗證**
1. 啟動LIO-SAM:  ```bashsource devel/setup.bash  # 確保環境生效roslaunch lio_sam run.launch```2. 播放數據包:  ```bashrosbag play --clock your_data.bag --topics /velodyne_points /imu/data  # 限定必要話題```3. RViz配置檢查:  ? 打開RViz并加載LIO-SAM的默認配置(通常位于 `config/rviz.rviz`)。  ? 手動添加顯示插件并訂閱話題(見上文步驟)。---**常見問題排查**
? 終端無地圖輸出:檢查 `mapOptmization` 節點的日志,確認GTSAM優化是否收斂。  ? TF樹不完整:運行 `rosrun tf view_frames` 生成TF關系圖,驗證 `map → odom → base_link` 是否存在。  ? 數據延遲:調整Bag播放速率 `rosbag play -r 0.8`(降速80%)。通過以上步驟,可解決坐標系缺失和數據顯示問題。若仍無法解決,請提供完整終端日志和 `params.yaml` 文件進一步分析。

最后得到的三維點云圖像如下:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81651.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81651.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81651.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AI自動化工作流:開啟當下智能生產力的價值

舉手之言&#xff1a;AI自動化工作流創造了什么呢&#xff1f; AI自動化工作流 &#xff0c;顧名思義&#xff0c;是將人工智能&#xff08;AI&#xff09;技術與自動化流程相結合&#xff0c;通過智能化的方式來完成復雜的任務和操作。簡單來說&#xff0c;它就是利用AI的強大…

【設計模式】- 行為型模式2

觀察者模式 定義了一對多的依賴關系&#xff0c;讓多個觀察者對象同時監聽某一個對象主題。這個主題對象在狀態變化時&#xff0c;會通知所有的觀察者對象&#xff0c;讓他們能夠自動更新自己。 【主要角色】 抽象主題角色&#xff1a;把所有觀察者對象保存在一個集合里&…

mapbox-gl強制請求需要accessToken的問題

vue引入"mapbox-gl": "^2.15.0", 1.13以后得版本&#xff0c;都強制需要驗證這個mapboxgl.accessToken。 解決辦法&#xff1a;實例化地圖的代碼中&#xff0c;加入這個&#xff1a; const originalFetch window.fetch; window.fetch function ({ url…

已知6、7、8月月平均氣溫和標準差,求夏季季平均溫度與標準差

由下面定理&#xff0c;得出平方和的公式&#xff1a;&#xff08;即每天的溫度平方和&#xff09; 這樣就可以推出季平均的算法&#xff1a; 舉例&#xff1a;在Excel用公式算&#xff0c;不要手算&#xff1a; 因此季平均&#xff1a;(B2*C2B3*C3B4*C4)/SUM(B2:B4) 季標準差…

手機內存不夠,哪些文件可以刪?

1??應用緩存文件 安卓&#xff1a;通過「文件管理器」→「Android」→「data」或「cache」文件夾&#xff08;部分需權限&#xff09;&#xff0c;或直接在應用設置中清除緩存 iOS&#xff1a;無需手動清理&#xff0c;系統會自動管理&#xff0c;或在應用內設置中清除&…

可編輯98頁PPT | 某大型制造業數字化轉型戰略規劃項目方案

薦言摘要&#xff1a;某大型制造業數字化轉型戰略規劃項目方案聚焦企業全價值鏈升級&#xff0c;以“數據驅動業務重塑”為核心&#xff0c;打造行業標桿級數字化能力。項目將分三階段推進&#xff0c;首階段聚焦頂層設計&#xff0c;通過現狀診斷明確痛點&#xff1a;針對企業…

lovart design 設計類agent的系統提示詞解讀

文章目錄 lovart 設計agent介紹角色定義工作規范工具調用任務復雜度指南任務移交指南其他ref lovart 設計agent介紹 lovart作為設計agent&#xff0c;產品功能包括&#xff1a; 全鏈路設計能力&#xff1a;可以快速生成完整的品牌視覺方案&#xff0c;包括標志、配色、品牌規范…

使用 docker-volume-backup 備份 Docker 卷

docker-volume-backup 是一個用于備份 Docker 卷的工具&#xff0c;在 Windows 10 上使用它&#xff0c;你可以按照以下步驟操作&#xff1a; 1. 確保 Docker 環境已安裝并正常運行 在 Windows 10 上&#xff0c;你需要安裝 Docker Desktop for Windows。可以從 Docker 官方網…

用戶行為日志分析的常用架構

## 1. 經典Lambda架構 Lambda架構是一種流行的大數據處理架構&#xff0c;特別適合用戶行為日志分析場景。 ### 1.1 架構組成 Lambda架構包含三層&#xff1a; - **批處理層(Batch Layer)**: 存儲全量數據并進行離線批處理 - **實時處理層(Speed Layer)**: 處理最新數據&…

從API到UI:直播美顏SDK中的濾鏡與貼紙功能開發與落地方案詳解

時下&#xff0c;濾鏡和貼紙功能&#xff0c;已經成為主播們展現個性、增強互動的“必備神器”。那么&#xff0c;這些功能背后的技術實現到底有多復雜&#xff1f;如何從API到UI構建一個流暢、靈活的美顏SDK呢&#xff1f;本文將從底層原理到前端實現&#xff0c;全面解析這兩…

21.EC實戰 嵌入式控制器EC如何進入休眠模式實現低功耗

文章目錄 一、概述1. WUI0中斷向量表配置2. 中斷服務函數內容3. 深度睡眠檢測4. 深度睡眠功能函數4.1 關閉所有中斷4.2 外部中斷對應引腳功能配置4.3 設置喚醒功能和喚醒中斷4.4 進入深度睡眠狀態一、概述 EC作為筆記本電腦的嵌入式控制器,在筆記本電腦使用電池單獨工作時,關…

Java實現PDF加水印功能:技術解析與實踐指南

Java實現PDF加水印功能&#xff1a;技術解析與實踐指南 在當今數字化辦公環境中&#xff0c;PDF文件因其跨平臺兼容性和格式穩定性而被廣泛應用。然而&#xff0c;為了保護文檔的版權、標記文檔狀態&#xff08;如“草稿”“機密”等&#xff09;或增加文檔的可追溯性&#xf…

vue2、vue3項目打包生成txt文件-自動記錄打包日期:git版本、當前分支、提交人姓名、提交日期、提交描述等信息 和 前端項目的版本號json文件

vue2 打包生成text文件 和 前端項目的版本號json文件 項目打包生成txt文件-自動記錄git版本、當前分支、提交人姓名、提交日期、提交描述等信息生成版本號json文件-自動記錄當前版本號、打包時間等信息新建branch-version-webpack-plugin.js文件 // 同步子進程 const execSyn…

Filament引擎(一) ——渲染框架設計

filament是谷歌開源的一個基于物理渲染(PBR)的輕量級、高性能的實時渲染框架&#xff0c;其框架架構設計并不復雜&#xff0c;后端RHI的設計也比較簡單。重點其實在于項目中材質、光照模型背后的方程式和理論&#xff0c;以及對它們的實現。相關的信息&#xff0c;可以參考官方…

洛谷B3876—— [信息與未來 2015] 中間值

見&#xff1a;B3876 [信息與未來 2015] 中間值 - 洛谷 題目描述 給出一個正整數 n&#xff0c;生成長度為 n 的數列 a&#xff0c;其中 ai?i(1≤i≤n)。 若 n 為奇數&#xff0c;則輸出 a 的中間數&#xff08;位于 a 正中位置的數&#xff09;&#xff1b;若 n 為偶數&am…

Java 后端基礎 Maven

Maven 1.什么是Maven 2.Maven的作用 Maven核心 Maven概述 IDEA集成Maven 1.創建Maven項目 點擊設置里的 Project Structure 將jdk和編譯語言進行設置 隨后點擊apply點擊ok 2.Maven坐標 3.導入Maven項目 將文件夾復制到當前項目的目錄下 在這個目錄下&#xff0c;在磁盤中…

qtcreater配置opencv

我配置opencv不管是按照網上的教程還是deep seek發現都有些問題&#xff0c;下面是我的配置方法以及實踐成功的心得 電腦環境 windows平臺qt6 下載 我這里直接提供官網下載地址&#xff1a;https://opencv.org/releases/ 我下載的是最新版&#xff0c;下載后是一個.exe文件…

單片機-STM32部分:15、直流電機與步進電機 PWM/IO

飛書文檔https://x509p6c8to.feishu.cn/wiki/InUfwEeJNimqctkyW1mcImianLh 一、步進電機與直流電機&#xff1a; 1-1、什么是直流電機&#xff1f; 直流電機是最常見的電機類型。直流電動機通常只有兩個引線&#xff0c;一個正極和一個負極。直流電機的轉速控制主要依靠改變輸…

「佰傲再生醫學」攜手企企通,解鎖企業采購供應鏈數字化新體驗

健康&#xff0c;是人類美好生活的基石。隨著“健康中國2030”規劃的深入推進&#xff0c;生物醫藥和再生醫學等前沿技術快速崛起&#xff0c;已成為促進全民健康、提升生命質量的重要支撐&#xff0c;為健康事業注入了新的希望和動力。 一、佰傲再生醫學&#xff0c;讓每個人…

PyTorch Geometric(PyG):基于PyTorch的圖神經網絡(GNN)開發框架

PyTorch Geometric&#xff08;PyG&#xff09;&#xff1a;基于PyTorch的圖神經網絡&#xff08;GNN&#xff09;開發框架 一、PyG核心功能全景圖 PyTorch Geometric&#xff08;PyG&#xff09;是基于PyTorch的圖神經網絡&#xff08;GNN&#xff09;開發框架&#xff0c;專…