OpenCV
文章平均质量分 91
视觉学习记录
贝勒里恩
用生命写代码,用灵魂做界面!
展开
-
OpenCV介绍
一、OpenCV是什么?OpenCV是一个开源的计算机视觉库,可以从http://opencv.org获取。1999年,加里·布拉德斯基当时在英特尔任职,怀着通过为计算机和人工智能的从业者提供稳定的基础架构并以此来推动产业发展的美好愿景,他启动了OpenCV项目。OpenCV设计用于高效的计算,十分强调实时应用的开发。它由C++语言编写并进行了深度优化,从而可以享受多线程的优势,如果希望得到更多在英特尔架构上的自动优化,可以购买英特尔的集成性能基元(IPP)库,该库包含了许多算法领域的底层优化程序。在库原创 2020-12-05 09:46:43 · 685 阅读 · 0 评论 -
Qt-OpenCV开发环境搭建(史上最详细)
一、环境介绍系统:Windows10IDE:Qt 5.13OpenCV版本:3.4.11二、OpenCV下载打开OpenCV官网:http://opencv.org,点击Release下载OpenCV三、OpenCV结构介绍Sources:是当前版本的OpenCV源代码;Windows:Windows环境下编译好的文件(build)+源码;IOS pack:IOS环境下编译好的文件(build)+源码;Android:Android环境下编译好的文件(build)+源码;原创 2020-12-06 18:12:44 · 40084 阅读 · 58 评论 -
OpenCV初探
一、头文件在安装OpenCV库以及设置好编程环境之后,下一个任务就是用代码来做一些有趣的事情。下面介绍一下OpenCV中的头文件:头文件功能#include “opencv2/core/core_c.h”旧式C风格的结构及运算#include “opencv2/core/core.hpp”新式C++风格的结构及数学运算#include “opencv2/flann/miniflann.hpp”最邻近搜索匹配函数#include “opencv2/improc/原创 2020-12-12 12:44:39 · 294 阅读 · 0 评论 -
OpenCV--人脸识别入门
拍照程序#include "mainwindow.h"#include <QApplication>#include <QDebug>#include <opencv2/opencv.hpp>using namespace cv;int main(int argc, char *argv[]){ QApplication a(argc, argv); namedWindow("photo",WINDOW_AUTOSIZE);原创 2020-12-15 00:58:45 · 1266 阅读 · 0 评论 -
QImage和Mat相互转换
一、Mat转QImageQImage MainWindow::Mat2QIm(Mat & mat){ cvtColor(mat, mat, COLOR_BGR2RGB); QImage QIm((const unsigned char*)mat.data, mat.cols, mat.rows, mat.step, QImage::Format_RGB888); return QIm;}二、QImage转MatMat MainWindow::QIm2Mat(QIm原创 2020-12-17 20:58:25 · 2000 阅读 · 0 评论 -
OpenCV的数据类型 #-1
一、前言OpenCV有很多数据类型,它们都基于一些重要视觉概念的抽象而设计,以此提供相对简单、直观的表示和处理。同时,许多算法开发者需要一些相对有效的、可以推广或扩展以满足他们特定需求的基本数据结构。OpenCV库使用基础数据类型模板构建并特化这些模板,从而使每个人都能简单地执行操作并满足自己的需求。从组织结构的角度来看,OpenCV的基础数据类型主要分为三类:直接从C++原语中继承的基础数据类型(如:int、float等);辅助对象(如:垃圾收集指针类、用于数据切片的范围对象Range、抽象的终原创 2020-12-20 11:21:33 · 521 阅读 · 1 评论 -
OpenCV的数据类型 #-2
一、辅助对象1.1、cv::TermCriteria类1.2、cv::Range类1.3、cv::Ptr模板和垃圾收集1.4、cv::Exception类和异常处理1.5、cv::DataType<>模板1.6、cv::Exception类和异常处理原创 2020-12-21 00:33:22 · 294 阅读 · 1 评论 -
OpenCV的数据类型 #-3
一、图像和大型数组类型1.1、动态可变的存储1.1.1、cv::Mat类N维稠密数组大型数组类中最主要的当属cv::Mat,这个结构可以视为OpenCV所有C++实现的核心,OpenCV所有的主要函数都或是cv::Mat类的成员,或是将cv::Mat作为参数,或是返回一个cv::Mat类型。cv::Mat类用于表示任意维度的稠密数组(表示该数组的所有部分都有一个值存储,即使这个值是0)。对于大多数图像来说,都是以稠密数组的形式存储的。与稠密数组相对的还有稀疏数组,稀疏数组中只有非0的数值会被存储。原创 2020-12-23 08:25:26 · 465 阅读 · 0 评论 -
OpenCV--绘图
一、绘图OpenCV提供了一大批可供画直线、矩形、圆等图形的函数。OpenCV的绘图函数可以在任意深度的图像上工作,但在大多数情况下,它们只对图像的前三个通道有影响,如果是单通道图像,则默认只影响第一个通道。大多数绘图函数都支持操作对象的颜色、宽度、线型(与直线平滑度有关)和亚像素对齐等参数。想指定颜色的时候,通常的做法是使用cv::Scalar对象,即使大多数时候只用到最前面的三个值。(有些时候使用cv::Scalar里面的第四个值来表示透明通道是很方便的,但是绘图函数目前还不支持透明混合处理)按照惯原创 2020-12-27 23:34:45 · 627 阅读 · 0 评论