opencv利用矩形框选中某一区域_【从零学习OpenCV】4Ubuntu系统中安装OpenCV 4
經過幾個月的努力,小白終于完成了市面上第一本OpenCV 4入門書籍《從零學習OpenCV 4》。為了更讓小伙伴更早的了解最新版的OpenCV 4,小白與出版社溝通,提前在公眾號上連載部分內容,請持續關注小白。
Ubuntu系統中安裝OpenCV 4
前面我們已經介紹了如何在Windows系統中安裝OpenCV 4。雖然本書中程序代碼主要在Windows運行,但是相信有一些讀者使用Ubuntu系統進行計算機視覺的學習,因此本小節將介紹如何在Ubuntu系統中安裝OpenCV 4.1。如果你僅僅是在Windows系統中使用OpenCV 4.1,可以跳過本小節內容。對于Ubuntu版本的介紹這里不做過多的說明,感興趣讀者可以自行查詢相關內容,筆者使用的是Ubuntu 16.04,因此將會介紹如何在該系統中安裝OpenCV 4.1。可能有讀者使用Ubuntu 14.04或者Ubuntu 18.04,不過安裝OpenCV 4.0的方法和步驟都是相似的。
安裝OpenCV 4.1需要的依賴項
由于最新版的OpenCV 4.1需要CMake 3.5.1版本,因此需要保證電腦中安裝的CMake編譯器版本高于3.5.1。可以通過代碼清單1-2中的命令安裝最新版CMake。
代碼清單1-2 安裝最新版CMake命令 1. sudo apt-get update 2. sudo apt-get upgrade 3. sudo apt-get install build-essential cmake其中安裝“update”和“upgrade”分別是更新軟件源和查看是否有軟件需要更新,這兩個命令一般用于安裝系統后初次下載軟件,或者更換源之后執行,可以根據實際情況不輸入該命令。安裝的“build-essential”是Linux系統中常用的一些編譯工具,“cmake”會直接安裝最新版CMake編譯器。
OpenCV 4.0的使用會需要很多的依賴項,例如圖片編碼庫、視頻編碼庫等。不過這些依賴是針對某些特定的功能,即使某些功能的依賴項沒有安裝,也不會影響OpenCV 4.1的編譯與使用,只是在使用特定功能時會出現問題。因此在不確定某型功能以后會不會用到時,建議將常用的依賴都安裝上,可以通過代碼清單1-3中的命令進行安裝。
代碼清單1-3 安裝OpenCV依賴 1. sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libatlas-base-dev gfortran libgtk2.0-dev libjpeg-dev libpng-dev如果需要結合Python使用OpenCV 4.1,需要安裝Python開發庫。如果沒有安裝,則無法生成Python的鏈接。Python開發庫有Python 2.7和Python 3.5兩個版本,如果能確定不使用某一版本,可以不用安裝對應版本的開發庫,可以通過代碼清單1-4中的命令進行安裝。
代碼清單1-4 安裝Python依賴 1. sudo apt-get install python2.7-dev python3.5-dev編譯和安裝OpenCV 4.1
安裝完成所有依賴項之后,就可以進行OpenCV 4.1的編譯與安裝。由于Ubuntu系統中需要通過編譯安裝OpenCV,因此需要在圖1 中OpenCV 4.1版本安裝包下載區域中選擇Sources選項,下載用于Ubuntu系統安裝的OpenCV 4.1文件,下載后解壓到待安裝路徑。待安裝路徑可以根據個人喜好自由設置,為了安裝方便,筆者將OpenCV 4.1解壓在根目錄下,并命名為“opencv4.1”。
提示這個路徑在后續編譯時需要用,建議放置在根目錄或者第二層文件夾等比較淺的路徑中,命名也盡量簡潔。
利用“Ctrl+Alt+T”組合按鍵喚起終端,通過終端進入到下載的OpenCV 4.1的文件中,并創建名為“build”的文件夾,之后進入該文件夾中,準備進行編譯和安裝。這一些列操作可以通過如下命令實現。
代碼清單1-5 在OpenCV 4.0文件夾中創建build文件命令 1. cd opencv4.1 2. mkdir build 3. cd build代碼中的“cd”是打開或進入到某個文件夾的命令,后面接需要打開的文件夾。“mkdir”是創建文件夾的命令,后面接需要創建的文件夾的名字。創建一個新的文件夾的目的是為了接下來編譯的時候將編譯出的中間文件都生成在這個新的文件夾中,這樣做不會因為編譯過程中生成的文件將原文件夾中的內容變得混亂,這種方式在Ubuntu系統中非常常見。接下來開始編譯工作,編譯安裝命令如代碼清單1-6所示。
代碼清單1-6 編譯OpenCV命令 1. cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 2. sudo make -j4 3. sudo make install命令中“CMAKE_BUILD_TYPE”是編譯的模式參數,“CMAKE_INSTALL_PREFIX”是安裝路徑參數。這些參數都可以缺省,但是如果在安裝多個版本的OpenCV時,設置不同的安裝路徑將變得十分有必要。第一行命令的最后一定不要忘記有一個“..”指令,其含義是告訴編譯器將要編譯的文件是來自上一層文件夾中的CMakeList.txt文件。第二行命令是完成最終的編譯,“-j4”的意思是啟用4個線程同時進行編譯,可以根據自己計算機的性能自主選擇,例如,啟用8個線程“-j8”,只用單線程可以缺省。之后根據計算機性能不同,將會是一個漫長的等待編譯完成的過程。在編譯完成后,用代碼清單1-6中第3行代碼安裝OpenCV 4.1。
環境配置
安裝OpenCV 4.1之后還需要通過配置環境告訴系統安裝的OpenCV 4.1在哪里,按照如下步驟操作即可完成環境配置,所有的命令在代碼清單1-7中給出。首先執行代碼清單1-7中第1行命令,可能會打開一個空白的文件,但是無論是否為空白文件,都需要在末尾添加路徑“/usr/local/lib”。這里添加內容與我們編譯時設置的路徑有關,如果安裝路徑變化,這里添加的內容也要隨之改變。保存文件并退出后,使用代碼清單1-7中第2行命令將配置路徑生效。接下來需要配置bash,在終端通過代碼清單1-7中第3行命令打開bash.bashrc文件,在打開的文件末尾加上OpenCV 4.1的安裝路徑,代碼如代碼清單1-7中第4行和第5行所示。這里需要重點說明的是,文件路徑需要與設置的安裝路徑相對應。保存輸入內容后,通過代碼清單1-7中第6行和第7行命令更新系統的配置環境,最終完成了OpenCV 4.1的安裝。
代碼清單1-7 Ubuntu系統中配置OpenCV 4.0環境 1. sudo gedit /etc/ld.so.conf.d/opencv.conf 2. sudo ldconfig 3. sudo gedit /etc/bash.bashrc 4. PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 5. export PKG_CONFIG_PATH 6. source /etc/bash.bashrc 7. sudo updatedb驗證OpenCV 4.1是否安裝成功
通過上述過程安裝了OpenCV 4.1,但是仍需要驗證是否安裝成功、能否通過程序調用OpenCV 4.1函數庫中的函數。首先我們需要創建一個文件夾,在文件夾中創建 “CMakeList.txt”文件和“main.cpp”文件兩個文件,并在文件夾中復制一張名為“apple.jpg”的圖片。在“CMakeList.txt”文件中內容如代碼清單1-8所示。
代碼清單1-8 測試工程中CMakeList.txt程序 1. cmake_minimum_required(VERSION 2.6) 2. #創建工程 3. project(testopencv) 4. #C++版本為11 5. set(CMAKE_CXX_FLAGS "-std=c++11") 6. 7. find_package(OpenCV 4.1.0 REQUIRED) #找OpenCV 4.0安裝路徑 8. include_directories(${OpenCV_INCLUDE_DIRS}) #加載OpenCV 4.0的頭文件 9. 10. add_executable(testopencv main.cpp) #將程序生成可執行文件 11. target_link_libraries(testopencv ${OpenCV_LIBS}) #鏈接lib文件到可執行文件中注意:
由于OpenCV 4.1庫基于C++11標準編寫,因此必須在“CMakeList.txt”文件中聲明set(CMAKE_CXX_FLAGS "-std=c++11")
在“main.cpp”文件中輸入程序如代碼清單1-9所示。
代碼清單1-9 install_test.cpp測試工程中主函數代碼 1. #include <iostream> 2. #include <opencv2/opencv.hpp> 3. 4. using namespace std; 5. using namespace cv; //聲明使用OpenCV 4.1的命名空間 6. 7. int main(int agrc, char** agrv){ 8. Mat img=imread("apple.jpg"); 9. imshow("test",img); 10. waitKey(0); 11. return 0; 12. }程序內容與功能前文已經介紹,這里不再重復介紹。通過終端進入到文件夾,用代碼清單1-10中的命令編譯代碼,生成可執行文件。執行命令后文件夾中會多出很多文件,其中會有一個名為testopencv的可執行文件,運行該文件,可以得到圖1-16結果,證明安裝OpenCV 4.1成功。
代碼清單1-10 編譯項目命令 1. cmake . 2. make注意:
這里需要注意,編譯當前路徑文件cmake后面只有一個“.”
圖1-16 運行程序后顯示的apple.jpg圖片經過幾個月的努力,市面上第一本OpenCV 4入門書籍《從零學習OpenCV 4》將于今年12月左右由人民郵電出版社發行。如果小伙伴覺得內容有幫助,希望到時候多多支持!
關注小白的小伙伴可以提前看到書中的內容,我們創建了學習交流群,歡迎各位小伙伴添加小白微信加入交流群,添加小白時請備注“學習OpenCV 4”。
小白微信小白學視覺微信公眾號總結
以上是生活随笔為你收集整理的opencv利用矩形框选中某一区域_【从零学习OpenCV】4Ubuntu系统中安装OpenCV 4的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大学计算机基础python第二次作业_p
- 下一篇: 华硕推出Chromebook CM14笔