一、OpenCV简介
百度百科:
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac
OS操作系统上。 它轻量级而且高效——由一系列 C 函数和少量 C++
类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
二、OpenCV安装
下载opencv
国内快速下载地址:https://www.bzblog.online/wordpress/index.php/2020/03/09/opencvdownload/
解压
unzip opencv-3.4.11.zip
安装:
①打开opencv-3.4.11,进入root并更新
②安装cmake
③安装依赖库
④创建build文件夹并进入;
⑤时用cmake依赖库
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
使用make创建编译
编译完成:
⑥安装:
⑦配置环境
修改 opencv.conf 文件。
更新系统共享链接库
配置 bash ,修改 bash.bashrc 文件
在末尾加入以下代码:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
执行如下命令使得配置生效,并更新:
查看opencv版本
完成安装
三、 OpenCV使用
①创建一个test.cpp文件
并输入以下代码:
#include <opencv2/highgui.hpp>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
CvPoint center;
double scale = -3;
IplImage* image = cvLoadImage("06.jpg");
argc == 2? cvLoadImage(argv[1]) : 0;
cvShowImage("Image", image);
if (!image) return -1; center = cvPoint(image->width / 2, image->height / 2);
for (int i = 0;i<image->height;i++)
for (int j = 0;j<image->width;j++) {
double dx = (double)(j - center.x) / center.x;
double dy = (double)(i - center.y) / center.y;
double weight = exp((dx*dx + dy*dy)*scale);
uchar* ptr = &CV_IMAGE_ELEM(image, uchar, i, j * 3);
ptr[0] = cvRound(ptr[0] * weight);
ptr[1] = cvRound(ptr[1] * weight);
ptr[2] = cvRound(ptr[2] * weight);
}
Mat src;Mat dst;
src = cvarrToMat(image);
cv::imwrite("test.png", src);
cvNamedWindow("test",1); imshow("test", src);
cvWaitKey();
return 0;
}
②编译文件:
③在同文件夹下放置一张图片命名为06.jpg
④执行test1.cpp
⑤显示结果:
原图片:
生成结果: