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

解決PCL和OpenCV中flann庫沖突的問題(Ubuntu20.04+VSCode)

這篇具有很好參考價值的文章主要介紹了解決PCL和OpenCV中flann庫沖突的問題(Ubuntu20.04+VSCode)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

解決PCL和OpenCV中flann庫沖突的問題

做視覺處理,尤其是三維視覺和點云處理等,基本都離不開這倆大庫,以前要么單獨用OpenCV做二維,要么純用PCL做點云后處理。因為準備把學習期間的代碼整合起來,所以需要同時使用兩個庫,結(jié)果發(fā)現(xiàn)flann庫沖突的問題??
查閱了一下網(wǎng)上的方案,基本有幾種方案

  • 1.建議改調(diào)用的flann頭文件路徑(要改全部的也太夸張了,要改用到的又不確定用到了哪些??)
  • 2.或者用不同的命名空間規(guī)避(根本沒用到flann相關(guān)的函數(shù)就沖突了??)
  • 3.修改OpenCV中的flann文件夾名(相對靠譜點??)

方法1:修改OpenCV中的flann文件夾名

如果只打算使用PCL的flann庫,可以通過修改OpenCV庫中的flann文件夾名避免,但是治標不治本, 沒有真正解決問題,只是解決了有問題的庫 ??

執(zhí)行如下兩步,進入路徑,更改名稱,解決!(記得備份或者以后用的時候能想起改回來??)

cd /usr/local/opencv4/include/opencv4/opencv2
sudo mv flann/ flann2/

方法2:通過增加Cmake文件解決問題

索性直接搜索Ubuntu20.04+PCL+OpenCV環(huán)境的配置經(jīng)驗,還真研究出一些規(guī)律,大部分跑起來而且不提到flann庫沖突問題的博客或者文章都是增加CMakeLists.txt文件實現(xiàn)的,然后就是昏天黑地的配置和試錯時間??

首先新建文件結(jié)構(gòu)如下(直接把自己的放上來不是為了偷懶 ,如果有好心人可以推薦更精簡或者更方便的文件結(jié)構(gòu)那就太好辣??)

cpp
├── .vscode
│   ├── c_cpp_properties.json
│   ├── launch.json
│   └── tasks.json
├── build
│   └── bin
│       ├── Linx
│       └── data
├── CMakeLists.txt
├── data 
├── include
│   ├── func_common.h
│   ├── func_opencv.h
│   └── func_pcl.h
└── src
    ├── func_common.cpp
    ├── func_opencv.cpp
    ├── func_pcl.cpp
    └── main.cpp

需要的文件內(nèi)容如下

1. CMakeLists.txt
cmake_minimum_required(VERSION 2.8)
project(Linx)

# ========================================
# === 構(gòu)建靜態(tài)庫以加速
# ========================================
set(COMMON_SOURCES src/func_common.cpp src/func_pcl.cpp src/func_opencv.cpp)

add_library(Func STATIC ${COMMON_SOURCES})

if(UNIX)
  target_link_libraries(Func pthread)
endif()

# ========================================
# === PCL庫
# ========================================
find_package(PCL 1.8 REQUIRED)
    include_directories(${PCL_INCLUDE_DIRS})
    link_directories(${PCL_LIBRARY_DIRS})
    add_definitions(${PCL_DEFINITIONS})

# ========================================
# === OpenCV庫
# ========================================
# 記得替換自己的路徑
set(OpenCV_DIR "~/libs/opencv-4.5.3/build/")
find_package(OpenCV REQUIRED)
if (NOT OpenCV_FOUND)
    message(FATAL_ERROR "OpenCV library not found")
else()
    include_directories(${OpenCV_INCLUDE_DIRS})
    include_directories(${OpenCV2_INCLUDE_DIRS})
    link_directories(${OpenCV_LIB_DIR})

endif()

    
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/build/bin)

aux_source_directory(./src/ DIR_SRCS)

add_executable(Linx  ${DIR_SRCS})

set_target_properties(Linx PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

include_directories (${CMAKE_CURRENT_SOURCE_DIR}/include)

target_link_libraries(Linx
${ABSOLUTE_TARGET_LIB} ${PCL_LIBRARIES} libpthread.so  ${OpenCV_LIBS} Func ${CLOUD_VIEWER} 
)

2. .vscode/c_cpp_properties.json

{
  "configurations": [
      {
          "name": "Linux",
          "includePath": [
              "${workspaceFolder}/**",
              "/usr/include",
              "/usr/include/**",
              "/usr/include/x86_64-linux-gnu/sys",
              // 檢查pcl路徑
              "/usr/include/pcl-1.10",
              "/usr/include/eigen3",
              "/usr/include/eigen3/Eigen/", 
              "/usr/include/vtk-7.1",   
              "/usr/include/qhull",
              "/usr/include/flann",
              "/usr/include/boost",
              // 檢查opencv路徑
              "/usr/local/opencv4/include/opencv4"
          ],
          "defines": [],
          "compilerPath": "/usr/bin/gcc",
          "cStandard": "${default}",
          "cppStandard": "${default}",
          "intelliSenseMode": "linux-gcc-x64"
      }
  ],
  "version": 4
  }

3. .vscode/launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++ - 生成和調(diào)試活動文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/bin/Linx",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "為 gdb 啟用整齊打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "Build",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

4. .vscode/tasks.json

{   
    "version": "2.0.0",
    "options": {
        "cwd": "${workspaceFolder}/build"
    },
    "tasks": [
        {
            "type": "shell",
            "label": "cmake",
            "command": "cmake",
            "args": [
                ".."
            ]
        },
        {
            "label": "make",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "command": "make",
            "args": [

            ]
        },
        {
            "label": "Build",
            "dependsOrder": "sequence", // 按列出的順序執(zhí)行任務(wù)依賴項
            "dependsOn":[
                "cmake",
                "make"
            ]
        }
    ]
}

配置好以上文件之后,就又可以愉快的寫B(tài)UG啦!(不是 ) ??文章來源地址http://www.zghlxwxcb.cn/news/detail-618968.html

到了這里,關(guān)于解決PCL和OpenCV中flann庫沖突的問題(Ubuntu20.04+VSCode)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 【PCL】ubuntu20.04安裝 VTK7.1與PCL1.8(PCL依賴VTK,要先裝且最好源碼安裝)

    Ref: 源碼安裝 (apt安裝的方式會出現(xiàn).so文件缺失的情況?。?!)) ubuntu16.04 安裝Qt5 + VTK7.1.1 + PCL1.8.0 第二部分 Ubuntu20.04安裝VTK 下載 下載地址 依賴安裝 VTK安裝 方法一出現(xiàn)的錯誤: make過程中出現(xiàn)的 錯誤: Could not find? a package configuration file provided by \\\"Qt5X11Extras\\\" with any of the followi

    2024年02月03日
    瀏覽(35)
  • 解決Ubuntu20.04安裝CUDA-11.2報256錯誤的問題

    解決Ubuntu20.04安裝CUDA-11.2報256錯誤的問題

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 最近在給一臺Ubuntu20.04的電腦裝cuda-11.2版本的時候遇到了些錯,經(jīng)過一些列研究終于解決了這個問題。我記錄了下來,希望情況和我一樣的小伙伴可以解決這個問題。 報錯的原因可以說是內(nèi)核,也可以說

    2024年02月15日
    瀏覽(293)
  • Ubuntu 20.04-NVIDIA顯卡驅(qū)動-安裝和卸載-解決黑屏問題

    202300704更新,黑屏問題主要由linux內(nèi)核更新導致 20230706 22:46 更新:好像這一步也沒有用!?。?The PCI ID Repository可以按照十六進制數(shù)字代碼找到相應(yīng)的顯卡型號。 按照顯卡型號下載驅(qū)動 (ctrl+鼠標點擊-》跳轉(zhuǎn))下載官網(wǎng)建議的.run文件,下載完成后移動到主目錄。 推薦直接在ub

    2024年02月12日
    瀏覽(118)
  • 【Linux】Ubuntu20.04 無法訪問 http://cn.archive.ubuntu.com 問題記錄解決

    【Linux】Ubuntu20.04 無法訪問 http://cn.archive.ubuntu.com 問題記錄解決

    您希望繼續(xù)執(zhí)行嗎? [Y/n] Y 錯誤:1 http://cn.archive.ubuntu.com/ubuntu focal/universe amd64 binfmt-support amd64 2.2.0-2 無法發(fā)起與 cn.archive.ubuntu.com:80 (2001:67c:1562::18) 的連接 - connect (101: 網(wǎng)絡(luò)不可達) 無法發(fā)起與 cn.archive.ubuntu.com:80 (2001:67c:1562::15) 的連接 - connect (101: 網(wǎng)絡(luò)不可達) 無法連接上 cn.ar

    2024年02月06日
    瀏覽(99)
  • Ubuntu20.04安裝sql server(內(nèi)含多個可能遇到的問題以及解決方法)

    Ubuntu20.04安裝sql server(內(nèi)含多個可能遇到的問題以及解決方法)

    這學期的課程有數(shù)據(jù)庫,因此今天(2022.3.6)在ubuntu上安裝了sql server2019 即使根據(jù)官方指引進行安裝也會遇到不少問題,因此為在這里總結(jié)了我自己遇到的所有問題,以及給出了相應(yīng)的解決方案,希望能為后來的人解決一些困惑和麻煩 根據(jù)指引,在終端輸入第一條語句:(導入

    2024年02月05日
    瀏覽(92)
  • Ubuntu20.04安裝OpenCV

    Ubuntu20.04安裝OpenCV

    開源計算機視覺(OpenCV)是一個主要針對實時計算機視覺的編程函數(shù)庫。 OpenCV的應(yīng)用領(lǐng)域包括:2D和3D功能工具包、運動估計、面部識別系統(tǒng)、手勢識別、人機交互、移動機器人、動作理解、物體識別、分割和識別、實體影像立體視覺:來自兩個攝像機的深度感知、運動跟蹤、增強

    2023年04月09日
    瀏覽(70)
  • (問題解決)(自制腳本)Ubuntu20.04 鍵盤會突然失靈、鍵盤延遲突然很大怎么辦

    (問題解決)(自制腳本)Ubuntu20.04 鍵盤會突然失靈、鍵盤延遲突然很大怎么辦

    最近在寫畢業(yè)論文,代碼在ubuntu上跑的,得一邊跑代碼,一邊寫論文。但用一段時間,或者電腦靜置一段時間后,鍵盤輸入延遲突然變得很大,這期間鼠標是正常的,只是輸不了字,得等幾分鐘才能恢復正常,非常耽誤時間。 后來參考下面這篇博客,說是ibus拼音輸入法的問

    2024年02月10日
    瀏覽(95)
  • ubuntu 20.04 使用 webrtc-streamer自動退出,報錯GLIBC 問題解決方法

    ubuntu 20.04 使用 webrtc-streamer自動退出,報錯GLIBC 問題解決方法

    前端vue2 項目需要播放??档囊曨l流,本地啟動起來了,現(xiàn)在需要的服務(wù)器上部署,服務(wù)器是Ubuntu 20.04,下面是部署時遇到的問題及解決方法,總耗時2天。 不知道怎么在Ubuntu中部署前端項目的可以去看我之前幾篇文章。 【vue2】前端如何播放rtsp 視頻流,拿到rtsp視頻流地址如

    2024年01月24日
    瀏覽(99)
  • 在 Ubuntu 20.04 上安裝 OpenCV

    在 Ubuntu 20.04 上安裝 OpenCV

    OpenCV 在 Ubuntu 20.04 軟件源中可用。想要安裝它,運行: 上面的命令將會安裝所有必要的軟件包,來運行 OpenCV: 通過導入 cv2 模塊,并且打印 OpenCV 版本來驗證安裝結(jié)果: 輸出: 1.安裝構(gòu)建工具和所有的依賴軟件包: 2.克隆所有的OpenCV 和 OpenCV contrib 源 3.下載完成,創(chuàng)建一個臨

    2024年01月23日
    瀏覽(15)
  • Ubuntu20.04在vsCode配置opencv

    Ubuntu20.04在vsCode配置opencv

    https://opencv.org/releases/ 我下載的為opencv4.5.4版本,可以直接下載.zip文件,可以選擇其他版本。 Sources版本即為.zip版本: Linux默認下載目錄為Downloads,在這里用終端打開 1、解壓 輸入命令: unzip opencv-4.5.4.zip ; 如果報錯,安裝unzip: sudo apt-get install unzip ; 2、安裝依賴的庫: 先

    2024年02月16日
    瀏覽(22)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包