• 正文
  • 推薦器件
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

ELF 1技術(shù)貼 | 如何在Ubuntu中編譯OpenCV庫

2024/05/31
1494
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

在之前發(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é)。下面就跟小伙伴詳細講述如何在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 安裝目錄,直接指定到該目錄即可。如果不指定,它會默認安裝到Ubuntu系統(tǒng)目錄/usr/local目錄下。

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

三、編譯OpenCV源碼

修改完成后,返回build目錄下,可以看到 bulid 目錄下已經(jīng)準備了構(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ù)探索之旅上的得力助手。如果您在實踐過程中遇到任何問題,歡迎留言交流。

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風險等級 參考價格 更多信息
LAN8710A-EZC-TR 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER, QCC32, 5 X 5 MM, 0.90 MM HEIGHT, ROHS COMPLIANT, QFN-32

ECAD模型

下載ECAD模型
$1.25 查看
IL4208-X007 1 Vishay Intertechnologies IL420, IL4208 Optocoupler, Phototriac Output, High dV/dt, Low Input Current

ECAD模型

下載ECAD模型
$3.68 查看
FTLF1319F1GTL 1 Finisar Corporation Transceiver, 1270nm Min, 1355nm Max, 2125Mbps(Tx), 2125Mbps(Rx), LC Connector, Through Hole Mount

ECAD模型

下載ECAD模型
$546.01 查看
飛凌嵌入式

飛凌嵌入式

保定飛凌嵌入式技術(shù)有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設(shè)計和生產(chǎn)的高新技術(shù)企業(yè),是國內(nèi)較早專業(yè)從事嵌入式技術(shù)的企業(yè)之一。 經(jīng)過十幾年的發(fā)展與積累,公司擁有業(yè)內(nèi)優(yōu)秀的軟硬件研發(fā)團隊,在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設(shè)有華東、華南技術(shù)服務(wù)中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務(wù)網(wǎng)絡(luò)。公司研發(fā)的智能設(shè)備核心平臺廣泛應(yīng)用于物聯(lián)網(wǎng)、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機器人、環(huán)境監(jiān)測等諸多領(lǐng)域。

保定飛凌嵌入式技術(shù)有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設(shè)計和生產(chǎn)的高新技術(shù)企業(yè),是國內(nèi)較早專業(yè)從事嵌入式技術(shù)的企業(yè)之一。 經(jīng)過十幾年的發(fā)展與積累,公司擁有業(yè)內(nèi)優(yōu)秀的軟硬件研發(fā)團隊,在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設(shè)有華東、華南技術(shù)服務(wù)中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務(wù)網(wǎng)絡(luò)。公司研發(fā)的智能設(shè)備核心平臺廣泛應(yīng)用于物聯(lián)網(wǎng)、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機器人、環(huán)境監(jiān)測等諸多領(lǐng)域。收起

查看更多

相關(guān)推薦