OpenCv笔记
LiBin1103
这个作者很懒,什么都没留下…
展开
-
调用opencv的c接口时,编译提示 对‘cvRound’未定义的引用
CMakeFiles/inf2vis.dir/inf2vis_check.c.o:在函数‘cvPointFrom32f’中:/usr/local/include/opencv2/core/types_c.h:929:对‘cvRound’未定义的引用/usr/local/include/opencv2/core/types_c.h:930:对‘cvRound’未定义的引用CMakeFiles/inf2vis.dir/inf2vis_check.c.o:在函数‘cvReadInt’中:/usr/loca原创 2021-04-27 15:12:34 · 659 阅读 · 0 评论 -
泰勒公式推导及多元泰勒展开式
原文转自:https://blog.csdn.net/weixin_40100502/article/details/80531027在数学中,泰勒公式是一个用函数在某点的信息描述其附近取值的公式。如果函数足够光滑的话,在已知函数在某一点的各阶导数值的情况之下,泰勒公式可以用这些导数值做系数构建一个多项式来近似函数在这一点的邻域中的值。泰勒公式还给出了这个多项式和实际的函数值之间的偏差。(其实...转载 2018-08-30 10:06:52 · 18288 阅读 · 1 评论 -
opencv模板匹配(matchTemplate)做定位
模板匹配实现定位的步骤:St1 将模板图和搜索图从BGR转化为GRAY;St2 对模板图和搜索图进行均衡化处理St3 模板图和搜索图进行滤波St4 模板图和搜索图分别求其梯度St5 模板匹配,求其求其最佳和最差匹配位置,归一化处理#include <iostream>;#include <opencv2/opencv.hpp>/*source*...原创 2018-09-04 15:00:23 · 2945 阅读 · 0 评论 -
HOG特征提取之HOGDescriptor类
原文转自:https://blog.csdn.net/qq_26898461/article/details/46786285最近要做图像特征提取,可能要用下HOG特征,所以研究了下OpenCV的HOG描述子。OpenCV中的HOG特征提取功能使用了HOGDescriptor这个类来进行封装,其中也有现成的行人检测的接口。然而,无论是OpenCV官方说明文档还是各个中英文网站目前都没有这个...转载 2018-08-31 14:42:43 · 737 阅读 · 0 评论 -
方向导数与梯度
原文转自:http://netedu.xauat.edu.cn/jpkc/netedu/jpkc/gdsx/homepage/5jxsd/51/513/5308/530807.htm 教学目的:掌握方向导数的定义和求法;掌握梯度的定义、求法及其与等高线的关系.教学重点:方向导数与梯度的求法.教学难点:方向角的确定.教学内容:一、方向导数现在我们来讨论函数在一点沿某一方向...转载 2018-08-27 13:43:57 · 682 阅读 · 0 评论 -
IplImage访问图像像素值
opencv2.1版本之前使用IplImage*数据结构来表示图像,2.1之后的版本使用图像容器Mat来存储。IplImage结构体如下所示。 1 typedef struct _IplImage 2 { 3 int nSize; /* IplImage大小 */ 4 int ID; /* 版本 (...转载 2018-03-05 09:06:38 · 811 阅读 · 0 评论 -
Mat类详解
1. 前言:Mat类起源OpenCV作为强大的计算机视觉开源库,很大程度上参考了MatLab的实现细节和风格,比如说,在OpenCV2.x 版本以后,越来越多的函数实现了MatLab具有的功能,甚至干脆连函数名都一模一样(如 imread, imshow,imwriter等)。这一做法,不仅拉近了产品开发与学术研究的距离,并极大程度的提高了开发人员的研发效率,不得不说,Intel公司真的是一个伟大...转载 2018-03-05 09:03:52 · 2110 阅读 · 0 评论 -
图像中的基本概念
一.基础概念1.数字图像:每一个数字图像都是一个像素点矩阵,这个矩阵包含所有像素点的强度值 2.通道:把图像分解成一个或多个颜色成分 ①单通道:一个像素点只需一个数值表示,只能表示灰度,0为黑色 ②三通道:RGB模式,把图像分为红绿蓝三个通道,可以表示彩色,全0表示黑色 ③四通道:在RGB基础上加上alpha通道,表示透明度,alpha=0表示全透明 3.深度:深度即位数(比特数) ①位深...转载 2018-03-09 12:41:04 · 1190 阅读 · 0 评论 -
求连直线的焦点
一般方程法:直线的一般方程为F(x) = ax + by + c = 0。既然我们已经知道直线的两个点,假设为(x0,y0), (x1, y1),那么可以得到a = y0 – y1, b = x1 – x0, c = x0y1 – x1y0。因此我们可以将两条直线分别表示为F0(x) = a0*x + b0*y + c0 = 0, F1(x) = a1*x + b1*y + c1 = 0那么两条...转载 2018-03-01 15:00:45 · 654 阅读 · 0 评论 -
C++中根据一个点推断距离该点某个单位处的点的方法
int main(){ //创建一个用于绘制图像的 空白图 cv::Mat image = cv::Mat::zeros(1024, 19200, CV_8UC3); //输入拟合点 std::vector<cv::Point> points; /*points.push_back(cv::Point(500, 158)); points.push_back(c...原创 2018-03-01 14:26:15 · 528 阅读 · 0 评论 -
opencv-矩阵运算
OpenCV 2.4 Cheat Sheet (C++)系列——Simple Matrix Operations1。矩阵的点运算add(), subtract(), multiply(), divide(), absdiff(), bitwise_and(), bitwise_or(), bitwise_xor(), max(),min(), compare()对应:加,减,点乘,点除,点绝对差,...转载 2018-03-08 10:25:07 · 358 阅读 · 0 评论 -
OpenCV的基本矩阵操作与示例
OpenCV的基本矩阵操作与示例OpenCV中的矩阵操作非常重要,本文总结了矩阵的创建、初始化以及基本矩阵操作,给出了示例代码,主要内容包括:创建与初始化矩阵加减法矩阵乘法矩阵转置矩阵求逆矩阵非零元素个数矩阵均值与标准差矩阵全局极值及位置其他矩阵运算函数列表1. 创建与初始化矩阵1.1 数据类型建立矩阵必须要指定矩阵存储的数据类型,图像处理中常用的几种数据类型如下:[cpp] view plain...转载 2018-03-08 10:19:00 · 225 阅读 · 0 评论 -
Scalar数据类型
首先单词scalar的意思是标量,但是我们经常可以看到Scalar是包含多个值的,很像是一个向量,这是怎么回事呢?很是让人感觉困惑。先收起我们的困惑,首先来看看,Scalar的定义:[cpp] view plain copy typedef struct Scalar { double val[4]; }Scalar; 可以看到,Scalar是一个由长度为4的数组作为元素构成的结构...转载 2018-03-07 15:12:36 · 7088 阅读 · 0 评论 -
Mat和IplImage相互转换
Mat 是OpenCV和C++的接口矩阵类,ImlImage是OpenCV和C语言的接口的结构体,但是C++程序有时候时候还是要用到ImlImage。注意:opencv3.0以后的版本和之前的版本有些差异。在opencv3.0之前,Mat类中提供了Mat(const IplImage* img, bool copyData=false);构造函数来实现IplImage到Mat类的转换,copyDa...原创 2018-03-07 09:37:01 · 776 阅读 · 0 评论