📅  最后修改于: 2023-12-03 15:41:19.808000             🧑  作者: Mango
OpenCV 是一个开源的计算机视觉库,支持多种编程语言,包括 C 语言。在编写 OpenCV C 程序时,需要将程序编译为可执行文件。
下面是编译 OpenCV C 程序的步骤:
在 Linux 系统上,可以使用包管理器安装 OpenCV 库和 Cmake 工具。以 Ubuntu 为例,可以使用以下命令安装:
sudo apt-get update
sudo apt-get install libopencv-dev cmake
在编译 OpenCV C 程序时,需要创建一个 CMakeLists.txt 文件,指定编译参数和链接库。
下面是一个简单的 CMakeLists.txt 文件示例:
cmake_minimum_required(VERSION 3.15)
project(myapp)
find_package(OpenCV REQUIRED)
add_executable(myapp main.c)
target_link_libraries(myapp ${OpenCV_LIBS})
这个文件指定了项目名称为 myapp,查找 OpenCV 库并链接到可执行程序中,可执行程序的源代码为 main.c。
进入项目目录,使用以下命令运行 Cmake 工具生成 Makefile 文件:
cmake .
在生成 Makefile 文件后,可以使用 Make 命令编译程序:
make
编译成功后,可以运行可执行文件:
./myapp
下面是一个完整的 OpenCV C 程序示例:
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv)
{
// 打开摄像头
VideoCapture cap(0);
if (!cap.isOpened()) {
return -1;
}
// 创建一个窗口
namedWindow("Camera", WINDOW_NORMAL);
// 循环读取并显示帧
Mat frame;
while (true) {
cap >> frame;
imshow("Camera", frame);
if (waitKey(1) == 'q') {
break;
}
}
// 关闭摄像头和窗口
cap.release();
destroyWindow("Camera");
return 0;
}
参考上述步骤,将该程序编译为可执行文件。运行可执行文件后,可以看到摄像头捕获的图像实时显示在窗口中。按下 'q' 键即可退出程序。