在之前發(fā)布的文章中探討了交叉編譯OpenCV并部署至嵌入式系統(tǒng)的方法。然而,在調(diào)試階段,我們發(fā)現(xiàn)在 Ubuntu 環(huán)境下將 OpenCV 編譯為 X86 架構(gòu)可能更加方便和高效。
通過在主機上編譯并使用X86架構(gòu)的OpenCV庫,利用主機的強大計算性能和豐富的調(diào)試工具,可以加速開發(fā)進程并簡化調(diào)試環(huán)節(jié)。下面就跟小伙伴詳細(xì)講述如何在Ubuntu環(huán)境下將 OpenCV 編譯為 X86 架構(gòu)。
開發(fā)環(huán)境:Ubuntu18.04
OpenCV版本:OpenCV3.4.1
一、獲取Opencv源碼
從OpenCV官網(wǎng)下載OpenCV源碼(opencv.org/releases/page/5/)
二、搭建OpenCV的編譯環(huán)境
(1)在自己的目錄下新建一個OpenCV目錄:
elf@ubuntu:~/work$ mkdir opencv
(2)拷貝OpenCV源碼到OpenCV目錄下:
elf@ubuntu:~/work$ cp opencv-3.4.1.tar.gz opencv/ elf@ubuntu:~/work/opencv$ cd opencv/ elf@ubuntu:~/work/opencv$ ls opencv-3.4.1.tar.gz
(3)解壓opencv-3.4.1.tar.gz 源碼包:
elf@ubuntu:~/work/opencv$ tar xvf opencv-3.4.1.tar.gz elf@ubuntu:~/work/opencv$ ls opencv-3.4.1 opencv-3.4.1.tar.gz
(4)在opencv目錄下新建兩個文件夾:
elf@ubuntu:~/work/opencv$ cd opencv-3.4.1/ elf@ubuntu:~/work/opencv/opencv-3.4.1$ mkdir build elf@ubuntu:~/work/opencv/opencv-3.4.1$ mkdir install build:是構(gòu)建目錄。 install:是安裝目錄。
(5)安裝CMake和cmake-gui工具和依賴庫:
elf@ubuntu:~/work/opencv$ sudo apt-get install build-essential elf@ubuntu:~/work/opencv$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev elf@ubuntu:~/work/opencv$ sudo apt-get install cmake cmake-qt-gui cmake-curses-gui
(6)進入build目錄下執(zhí)行 cmake-gui
elf@ubuntu:~/work/opencv/opencv-3.4.1$ cd build/ elf@ubuntu:~/work/opencv/opencv-3.4.1/build$ cmake-gui
會出現(xiàn)cmake配置界面。如下圖所示:

(7)配置CMake工具:
指定OpenCV源碼所在的路徑和構(gòu)建目錄,然后勾選 Advanced,最后點擊 Generate。如下圖所示:

選擇 Unix Makefiles,然后選擇 Use default native compilers。如下圖所示:

點擊Finish,完成后的界面如下圖所示:

點擊CMAKE。如下圖所示:

在CMAKE_BUILD_TYPE值處輸入RELEASE,然后在CMAKE_INSTALL_PREFIX處指定安裝目錄,上面已經(jīng)新建了 install 安裝目錄,直接指定到該目錄即可。如果不指定,它會默認(rèn)安裝到Ubuntu系統(tǒng)目錄/usr/local目錄下。

至此配置完成,點擊 Configure,再點擊Generate生成Makefile等文件。完成后的界面如下圖所示:

三、編譯OpenCV源碼
修改完成后,返回build目錄下,可以看到 bulid 目錄下已經(jīng)準(zhǔn)備了構(gòu)建文件。直接make 構(gòu)建即可。
elf@ubuntu:~/work/opencv/opencv-3.4.1/build$ make
編譯完成后,用make install安裝生成的二進制文件或庫文件到前面指定的路徑下。
elf@ubuntu:~/work/opencv/opencv-3.4.1/build$ make install elf@ubuntu:~/work/opencv/opencv-3.4.1/build$ ls ../install/ bin include lib share
以上就完成了在Ubuntu環(huán)境下編譯X86架構(gòu)的OpenCV,這為快速迭代產(chǎn)品、優(yōu)化算法提供了堅實的支撐。希望本篇指南能成為各位小伙伴在嵌入式技術(shù)探索之旅上的得力助手。如果您在實踐過程中遇到任何問題,歡迎留言交流。
-
單片機
+關(guān)注
關(guān)注
6043文章
44622瀏覽量
638518 -
嵌入式
+關(guān)注
關(guān)注
5092文章
19177瀏覽量
307647 -
嵌入式開發(fā)板
+關(guān)注
關(guān)注
5文章
83瀏覽量
18820
發(fā)布評論請先 登錄
相關(guān)推薦
Ubuntu系統(tǒng)下編譯OpenCV4.8源碼記錄

ElfBoard技術(shù)貼|如何將libwebsockets庫編譯為x86架構(gòu)

嵌入式學(xué)習(xí)-ElfBoard ELF 1板卡-移植openssl
飛凌嵌入式ElfBoard ELF 1板卡-i.MX6ULL交叉編譯freetype字體引擎庫
嵌入式學(xué)習(xí)-飛凌ElfBoard ELF 1板卡 - 如何在Ubuntu中編譯OpenCV庫
I.MX6ULL-飛凌 ElfBoard ELF1板卡 - 如何在Ubuntu中編譯OpenCV庫(X86架構(gòu))
飛凌嵌入式ElfBoard ELF 1板卡-內(nèi)核編譯之初次編譯
【OK210試用體驗】之(七)—— 交叉編譯和移植OpenCV 2.4.9 (2)
在Ubuntu下交叉編譯opencv以生成ARM版本的opencv時遇到一些問題
Tina下運行在Ubuntu中交叉編譯的Opencv 4.5.1
opencv庫直接在RK3588開發(fā)板上進行編譯
opencv編譯安裝筆記(Linux、Ubuntu )

RK3568上OpenCV 的編譯移植
ELF 1技術(shù)貼|如何移植OpenCV

評論