引言
树莓派因其低成本、高性能和易于使用的特点,成为了学习和开发计算机视觉项目的热门平台。OpenCV作为一款功能强大的计算机视觉库,在树莓派上运行同样表现出色。本文将详细介绍如何在树莓派上编译和运行OpenCV C语言程序。
准备工作
1. 硬件环境
- 树莓派(如树莓派3B+)
- microSD卡(至少16GB)
- microUSB电源
- 显示器、键盘和鼠标
2. 软件环境
- 树莓派操作系统(如Raspbian)
- 已安装的交叉编译工具链(如gcc-arm-linux-gnueabihf)
安装OpenCV
1. 下载OpenCV源码
从OpenCV官方网站下载最新版本的源码包,例如OpenCV-4.5.5.zip。
wget https://github.com/opencv/opencv/archive/4.5.5.zip
unzip 4.5.5.zip
cd opencv-4.5.5
2. 配置编译选项
在源码目录下创建一个名为CMakeLists.txt
的文件,并添加以下内容:
cmake_minimum_required(VERSION 3.10)
project(OpenCV_C)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
link_directories(${OpenCV_LIBRARIES})
add_executable(OpenCV_C test.cpp)
target_link_libraries(OpenCV_C ${OpenCV_LIBS})
3. 编译OpenCV
在源码目录下执行以下命令:
mkdir build
cd build
cmake ..
make
编译完成后,会在build
目录下生成可执行文件。
编写C语言程序
1. 创建C语言源文件
在build
目录下创建一个名为test.cpp
的文件,并添加以下内容:
#include <opencv2/opencv.hpp>
int main() {
cv::Mat src = cv::imread("test.jpg");
if (src.empty()) {
std::cout << "Image not found!" << std::endl;
return -1;
}
cv::imshow("Image", src);
cv::waitKey(0);
return 0;
}
2. 编译C语言程序
在build
目录下执行以下命令:
g++ -o test test.cpp -I/usr/local/include/opencv4 -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_imgproc
编译完成后,会在build
目录下生成可执行文件test
。
运行程序
将编译好的程序复制到树莓派上,并运行:
scp build/test pi@raspberrypi:/home/pi/
ssh pi@raspberrypi
./test
总结
通过以上步骤,您可以在树莓派上成功编译和运行OpenCV C语言程序。这将为您的树莓派项目带来强大的计算机视觉功能。