Linux下使用OpenCV测试的经验分享 (linux opencv 测试)

随着和计算机视觉的快速发展,OpenCV作为一个免费的开源计算机视觉库,已经成为许多计算机视觉工程师和研究人员的更爱。而在使用OpenCV进行图像处理和视觉算法开发的过程中,测试也是不可或缺的一环。本文将分享在Linux下使用OpenCV进行测试的一些经验和技巧。

一、安装OpenCV

需要在Linux系统中安装OpenCV库。可以选择从OpenCV官网下载安装包进行安装,也可以使用包管理器进行安装。以Ubuntu为例,可以使用以下命令安装:

sudo apt-get update

sudo apt-get install libopencv-dev

安装完成后,就可以在C/C++中使用OpenCV库了。

二、设置测试环境

在进行测试时,需要设置好测试环境。在Linux下,可以使用一些工具进行测试,如Google Test和Catch。这里以Google Test为例,介绍如何设置测试环境。

1.安装Google Test

可以从Github上下载Google Test的源代码,然后手动编译安装。也可以使用包管理器进行安装。以Ubuntu为例,可以使用以下命令安装:

sudo apt-get update

sudo apt-get install libgtest-dev

安装完成后,在/usr/src/gtest目录下会生成gtest库的源代码。

2.编写测试用例

需要编写测试用例,以确保使用OpenCV的函数能够正确地运行。测试用例使用Google Test的测试框架进行编写。例如,测试OpenCV中的imread函数是否能正常读取图像:

#include

#include

TEST(OpenCVTest, imread) {

cv::Mat img = cv::imread(“test.jpg”);

ASSERT_FALSE(img.empty());

}

3.编译测试用例

在编写完测试用例后,需要将其编译。可以使用CMake进行编译。在工程的根目录下新建一个CMakeLists.txt文件,内容如下:

cmake_minimum_required(VERSION 3.5)

project(test)

set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -std=c++11”)

find_package(OpenCV REQUIRED)

include_directories(${OpenCV_INCLUDE_DIRS})

add_subdirectory(/usr/src/gtest)

include_directories(${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR})

add_executable(runTests test.cpp)

target_link_libraries(runTests ${OpenCV_LIBS} gtest gtest_mn pthread)

其中,test.cpp为测试用例的源代码文件。

在命令行中执行以下命令即可编译测试用例:

mkdir build

cd build

cmake ..

make

编译完成后,在build目录下会生成一个可执行文件runTests。

4.运行测试用例

在终端中运行可执行文件runTests即可运行测试用例:

./runTests

如果所有测试用例运行成功,将会输出SUCCESS。

三、测试技巧

测试的目的是为了确保使用OpenCV的函数或算法能够正常运行,并得到正确的结果。以下是一些测试技巧,可以提高测试的效率和准确性。

1.使用随机数据进行测试

在进行图像处理算法的测试时,可以使用随机生成的数据进行测试。这样可以检查算法是否有足够的健壮性,并且可以覆盖更多的测试用例。

2.使用不同尺寸的图像进行测试

当使用OpenCV库进行图像处理时,需要考虑不同尺寸的图像,因此在进行测试时,应该使用各种不同尺寸的图像。这将有助于确保算法在任何情况下都可以正确地运行。

3.使用Python脚本进行测试

Python是一种简单易学的语言,而且OpenCV也支持Python。可以使用Python脚本进行测试,这将大大提高测试效率。

4.测试边界条件

在测试时,需要考虑各种边界条件,以确保算法能够正确地处理各种极端情况。例如,当图像尺寸非常小或非常大时,算法是否能够正常运行。

相关问题拓展阅读:

如何在linux系统centos下通过Eclipse配置opencv

1、安装依赖包(很重要)

yum install cmake gcc gcc-c++ gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python libtool na

如果不安装上述依赖包,到最后调用opencv时会出错,如下:

OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow,……………….

此时只能将昌颤编译好的opencv删除再重新编译,即将/usr/local/lib和/usr/local/include/中的有关的删除

mv /usr/local/lib/libopencv*

mv -fr /usr/local/include/opencv

mv -fr /usr/local/include/opencv2

然后再重新编译opencv.

2、安装/更新CMake

为什么要安装或者更新cmake呢,下面说明所chǔ问题:

(1)下载

在OpenCV官网

下载所需版本

拷贝到/usr/local/路径之下

(2)tar -xvf OpenCV-2.4.8.tar.bz2 解压

(3)cd OpenCV-2.4.8 进入目录侍迅伍

(老或4)yum install cmake 直接从网上安装cmake

(5) cmake CMakeLists.txt

linux环境下在QT中配置opencv4.2.9

环境变量配置:

这里以我安装的路径(/opt/Qt5.3.1/5.3/gcc_64)为例:

注:export可以新增,修改或删除一个环境禅孝变量

centos 下是/etc/bashrc ubuntu下是~/.bashrc

1. vim /etc/bashrc

在 /etc/bashrc最下面加入:

export QTDIR=/opt/Qt5.3.1/5.3/gcc_64

注:这里新增一个环境变量QTDIR

export PATH=$QTDIR/bin:$PATH

注:修改PATH环境变量,在PATH前面加入QT的bin路径贺销稿斗芹

export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

注:LD_LIBRARY为动态库查找路径

2. source /etc/bashrc

注:source 命令是重新执行刚修改过的初始化文件,使之立即生效。

能看一下wo 的网名啊吗?能帮忙搞定以的啊

linux系统下qt如何加入opencv下的人脸识别数据库

linux系统下qt加入opencv下的人脸识别槐绝数据库需要从网络上下载。

1、就是数据的准备,你要从网络上下载一些人脸库,后面用来训练人脸识别模型。人脸检测模型opencv是自带的,但是识别模型需要自己训练。下载人脸库之后需要粗余对人脸进行标记,这是一个繁琐的工作,不过网上有脚本或者自己写个程序简化工作岩明滚量。

2、把数据标记好之后就是opencv的事情。

3、打开摄像头进行人脸检测,就是框出人脸的位置。人脸检测模型是opencv自带的。

关于linux opencv 测试的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » Linux下使用OpenCV测试的经验分享 (linux opencv 测试)