龙芯技术社区
直播中

gjianw217

11年用户 688经验值
擅长:嵌入式技术 控制/MCU RF/无线
私信 关注
[2K系列]

【龙芯2K0300蜂鸟板试用】5 搭建opencv开发环境

在官方提供的buildroot根文件系统中,不支持opencv库,故需要自己增加,另外,在本地编译的时候,需要在本地(ubuntu)上安装对应opencv库,这样才能将编译好的镜像放到板子上跑起来。

移植opencv

版本的选择,虽然官方默认根文件系统中,没有安装opencv库,但package中包含其,而且版本是3.4.13,故选择此版本

下载

$ wget https://github.com/opencv/opencv/archive/3.4.13.zip
--2024-08-30 14:27:48--  https://github.com/opencv/opencv/archive/3.4.13.zip
Resolving github.com (github.com)... 140.82.116.4
Connecting to github.com (github.com)|140.82.116.4|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/opencv/opencv/zip/refs/tags/3.4.13 [following]
--2024-08-30 14:27:49--  https://codeload.github.com/opencv/opencv/zip/refs/tags/3.4.13
Resolving codeload.github.com (codeload.github.com)... 20.205.243.165
Connecting to codeload.github.com (codeload.github.com)|20.205.243.165|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/zip]
Saving to: ‘3.4.13.zip’

3.4.13.zip              [       <=>         ]  87.74M  10.0MB/s    in 10s     

2024-08-30 14:28:00 (8.60 MB/s) - ‘3.4.13.zip’ saved [92003123]

loognson搭建

解压

$ unzip 3.4.13.zip
$ ls
3.4.13.zip  opencv-3.4.13
$ cd opencv-3.4.13/
$ ls
3rdparty  cmake           CONTRIBUTING.md  doc      LICENSE  platforms  samples
apps      CMakeLists.txt  data             include  modules  README.md

2准备

$ mkdir build install
$ sudo apt-get install cmake cmake-qt-gui
$ cd build/

3配置

$ cmake-gui

image.png
image.png

4 编译

$ make

image.png

image.png

5安装

$ make install

image.png

host搭建

host搭建,即编译的库,在ubuntu下使用,主要用来调试程序的可靠性,基本方法与loongxix相似,最大的不同是编译器的选择不同,在此略过

buildroot搭建

最终的应用程序是要跑在板子,准备地说,是跑在buildroot制作的根文件系统上,故在buildroot上需要打开opencv,将其编译进系统中,如下所示image.png

测试可行性

测试是否编译成功,通过获取usb摄像头的视频来完成,本来是想通过qt的multimedia来实现,无奈k20300平台不支持,寻问官方《官方,buildroot文件系统支持gstreamer吗?》,也没有回答,只能使用opencv来获取视频,程序功能简单,只是获取后显示视频

image.png

参考

# arm移植qt之opencv的交叉编译

opencv编译 linux opencv编译ffmpeg为no

# OpenCV+FFmpeg交叉编译

更多回帖

发帖
×
20
完善资料,
赚取积分