背景
OpenCV 介绍
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库。它由一系列的 C 函数和少量 C++ 类构成,同时提供 Python、Java 和 MATLAB 等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV 具有极广的应用领域,它包括但不限于:
- 人脸识别和物体识别:这是 OpenCV 的一项重要功能,应用在许多领域,如安全监控、交互设计等。
- 图像和视频分析:如图像增强、图像分割、视频跟踪等。
- 图像合成和 3D 重建:在图像处理和计算机视觉领域,OpenCV 可以用于创建 AR 或 VR 效果,生成 3D 模型等。
- 机器学习:OpenCV 内置了大量的机器学习算法,可以用于图像分类、聚类等任务。
- 深度学习:OpenCV 中的 dnn 模块提供了一系列深度学习模型的接口,用户可以加载预训练模型进行图像识别、目标检测等任务。
本文主要介绍 OpenHarmony 如何用 opencvlib 进行应用样例开发
应用开发
创建 HAP
- 通过 DevEcoStudio 创建项目“File->New->Create Project"创建一个工程
- 工程创建完毕后,界面入口为 Index.ets
引用 OpenCV lib 库
-
引入 opencv 头文件库,放在 include 目录下
-
引入 lib 库,放在 libs 目录下
- 修改 CMAKE
-
增加 common 头文件和 cpp 文件
// // Created on 2024/3/5. // // Node APIs are not fully supported. To solve the compilation error of the interface cannot be found, // please include "napi/native_api.h". #ifndef OpencvSample_common_H #define OpencvSample_common_H #include <string> #include <stdio.h> #include <js_native_api.h> #include <js_native_api_types.h> #include <vector> #include "opencv2/opencv.hpp" #include "opencv2/im