OpenCV4 快速入门 学习笔记分享【第一章】
本人正在学习 OpenCV 计算机视觉相关知识,此篇为个人学习笔记,参考书籍为冯振等人的《OpenCV4 快速入门》。主要记录 OpenCV 在 Linux 环境下的编译、运行实操流程与相关知识点总结。
笔记内容均为亲自实操验证,过程中踩过不少编译配置、运行参数的坑,整理出来一方面用于自己复盘巩固,另一方面也希望能帮助到刚入门 OpenCV、在编译运行示例程序时遇到问题的小伙伴。文中内容如有疏漏或错误之处,欢迎各位大佬评论区指正交流,共同进步~
!!层级标题编号与书中编号一致,以方便查阅对应书籍。
第一章 初识OpenCV
1.1 什么是OpenCV
全称:计算机视觉库(Open Source Computer Vision Library)
图像处理:通过数学函数和图像变换等手段对二维数字图像进行分析,获得数据的潜在信息,通常包括图像压缩,复原和增强。
机器视觉:通过摄像头等设备代替人眼,对目标进行识别、跟踪和测量等。是一个逆过程,通过观测到的信息恢复成被观测物体或者环境的信息。
1.2.2 image watch插件
打开:视图---其他窗口---image watch
作用:读取图像数据类型、图像通道数和 像素尺寸
1.2.3验证opencv是否成功
CMakeLists.txt文件
cmake_minimum_required(VERSION 3.22)
project(testopencv)
set(CMAKE_CXX_FLAGS "-std=c++14")
find_package(OpenCV 4.9.0 REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(testopencv main.cpp)
target_link_libraries(testopencv ${OpenCV_LIBS})
main.cpp文件
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main(int argc, char** agrv){
Mat img=imread("apple.jpg");
imshow("test",img);
waitKey(0);
return 0;
}
操作步骤:

编译运行
cmake .
make
1.4.2 边缘检测edge举例
ubuntu系统中的~/opencv4/opencv-4.9.0/samples/cpp/example_cmake里面已经有CMakeLists.txt文件,所以直接进行编译执行即可,注意要将示例图片一并复制到example_cmake文件夹下。
以下为运行边缘检测的全部过程:
cd opencv4 #进入edge所在文件夹
cd opencv-4.9.0/samples/cpp/ #继续进入
cd example_cmake #继续进入
cp ../edge.cpp ./example.cpp #将edge文件复制到当前文件夹,并代替原有example.cpp
cmake . #编译
make
ls #查看可执行文件
./opencv_example #运行
输出为:

1.4.3 K聚类kmeans
作用:通过随机生成散点,利用K聚类算法将散点判定为不同群体,确定每个群体的中心位置。
步骤:和1.4.2大致相同。
代码过程如下所示:
cd opencv4/opencv-4.9.0/samples/cpp/example_cmake
cp ../kmeans.cpp ./example.cpp
cmake .
make
ls
./opencv_example
输出为:按“空格”会到下一张,按“Q”退出


1.4.4二维码识别和后面例子与以上操作相近
注意:1.4.5相机使用
1.4.5相机使用,在最后一步运行时的代码有所不同,首先,可通过ls /dev/video*命令查看系统中可用的摄像头设备编号。
在运行时的代码为:
./opencv_example 0
按“空格”键进行照片捕捉,保存路径为~/opencv4/opencv-4.9.0/samples/cpp/example_cmake。
结束
至此,第一章就结束了,望各位读者“一键三连”,再次感谢读到这里的各位读者。有任何问题欢迎评论区留言或者私信。
更多推荐
所有评论(0)