- 博客(33)
- 资源 (29)
- 问答 (1)
- 收藏
- 关注
原创 【OpenCV笔记 15-3】OpenCV计算物体最小包围矩形面积和周长
本文将介绍OpenCV计算物体最小包围矩形面积和周长两个函数:contourArea()和arcLength知识点:1.寻找最小包围矩形2.计算最小轮廓的面积和长度3.定义和输出vector容器点坐标代码示例://寻找最小包围矩形//计算最小轮廓的面积和长度//定义和输出vector容器点坐标#include #include "opencv2/highgui
2016-07-28 18:24:39 8038
原创 【OpenCV笔记 15-2】OpenCV寻找物体最小包围矩形和最小包围圆
OpenCV寻找物体最小包围矩形 minAreaRect()和最小包围圆minEnclosingCircle()运用到的知识点:1.寻找最小包围矩形2.寻找最小包围圆3.定义和输出vector容器点坐标代码示例://寻找最小包围矩形//寻找最小包围圆//定义和输出vector容器点坐标#include #include "opencv2/highgui/h
2016-07-28 16:35:02 8300
原创 【OpenCV笔记 15-1】OpenCV寻找物体的凸包convexHull
OpenCV寻找物体的凸包convexHull()应用到的知识点:1.寻找物体的凸包convexHull2.定义和输出vector容器点坐标3.随机数发生器==================================凸包检测示例程序://寻找物体的凸包convexHull//定义和输出vector容器点坐标#include #include "openc
2016-07-28 14:09:12 2677
转载 opencv随机数发生器RNG
用OpenCV做算法的朋友们肯定为随机数烦恼过,新版本一直支持随机数产生器啦,而且还继续支持之前版本的c格式的函数,不过与时俱进,我这里介绍C++的RNG类。它可以压缩一个64位的i整数并可以得到scalar和array的随机数。目前的版本支持均匀分布随机数和Gaussian分布随机数。随机数的产生采用的是Multiply-With-Carry算法和Ziggurat算法。其构造函数的初始化
2016-07-28 11:21:36 804
原创 C++最常用的容器之一vector类
在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结。1 基本操作(1)头文件#include.(2)创建vector对象,vector vec;(3)尾部插入数字:vec.push_back(a);(4)使用下标访问元素,cout(5)使用迭代器访问元素.vector::iterator it;for(it=vec.begin();it!=ve
2016-07-28 09:29:46 467
原创 自定义CSDN博客栏目
自定义CSDN博客栏目如果不懂HTML语言,详细设置可以参见博文:玩转CSDN之自定义博客栏目Html代码基本含义:贴图:加入连接:写上你想写的字贴图:加入连接:写上你想写的字在新窗口打开连接:写上要写的字消除连接的下划线在新窗口打开连接:写上你想写的字移动字体(走马灯):写上你想写的字字体加粗:写上你想写的字字体斜体:写上你想写的字
2016-07-27 20:28:17 633
原创 OpenCV3.0.1源码编译及自带样例工程代码编译
OpenCV3.0.1源码编译及自带样例工程代码编译详细步骤参见博文:OpenCV3.0.1源码编译及自带样例工程代码编译=========下面是个人在实际编译过程中遇到问题并解决的经历===========按照推荐的博文,在opencv 源码编译好之后,在编译自带样例工程代码时,如果Cmake里的地址设置不正确,可能会遇到问题:解决方法:注:图中红色方框这里是的地
2016-07-27 13:35:28 4924
转载 Windows环境中编译opencv3.0同时加入OpenCV_contrib库及解决遇到相关问题
因为opencv3.0默认安装中没有加入SIFT、SURF等点特征检测,一百度下一跳,原来这玩意还弄了个其他的库,还只能在GitHub上才能弄到,这两天弄opencv3的contrib库,遇到了一些问题, 为了让大家更好、更快用上contrib库,根据 谷歌百度的几个问题,现分享给大家完整流程,也欢迎大家与我讨论其他opencv方面的问题。一、下载安装准备github desktop
2016-07-26 22:43:24 593
原创 常用OpenCV 2.0库函数速查和OpenCV 3.0函数索引
常用的OpenCV 2.0函数速查==================================前言:opencv已经更新到3.1.0的版本,此文列出其在2.0版本时代的库函数,多数函数与3.0以上版本有着相似之处,比如很多2.0版本函数名去掉前缀cv就是3.0版本的函数名cvWaitKey变成Waitkey(),cvNamedWindow变成namedWidow()等等
2016-07-26 15:11:43 8902 1
原创 【OpenCV笔记 14】OpenCV图像增强方法直方图均衡化
直方图均衡化 图像的直方图是什么?直方图是图像中像素强度分布的图形表达方式.它统计了每一个强度值所具有的像素个数. 直方图均衡化是什么?灰度直方图就是在图像中对应某个灰度级的像素的数量值。它可以表示为一个笛卡尔坐标系,其中X坐标是灰度级,Y坐标是该灰度出现的像素数量。直方图均衡化就是一种点运算,处理过程
2016-07-26 13:40:00 1165
原创 【OpenCV笔记 13】OpenCV中Hough霍夫直线检测和同一窗口显示多幅图片
本文主要涉及两个方面:1、Hough变换用于直线检测 2、实现同一窗口显示多幅图片*********************************************************先看文末示例程序截图***************************************************************************
2016-07-25 15:57:32 2554
原创 VS2013的开发环境下Qt的下载、安装、配置
一、基本信息1. PC: win7 64位2. VS版本: vs 20133. 本人下载的QT版本: 软件版本:Qt 5.5.1 for Windows 64-bit (VS 2013, 720 MB) 插件版本:Visual Studio Add-in 1.2.5 for Qt5 (202 MB) 4. 最终下载的文件名: qt-vs-ad
2016-07-22 09:23:04 715
原创 【OpenCV笔记 12】OpenCV边缘检测之canny算子
一、什么是边缘检测?。边缘检测的基本思想是通过检测每个像素和其邻域的状态,以决定该像素是否位于一个物体的边界上。如果一个像素位于一个物体的边界上,则其邻域像素的灰度值的变化就比较大。假如可以应用某种算法检测出这种变化并进行量化表示,那么就可以确定物体的边界。经典的边缘检测方法是对原始图像中像素的某小邻域来构造边缘检测算子。常用的边缘检测方法有Roberts算子、Sobe l算子、Pre
2016-07-21 22:56:59 3640
原创 【OpenCV笔记 11】VS2013中运行OpenCV 3.0时常见错误及解决方法
常见案例、错误及解决方法:案例一:IplImage格式转换成Mat格式 //使用Mat的构造函数:Mat::Mat(const IplImage* img, bool copyData=false);默认情况下copyData为falseIplImage* srcImg = cvLoadImage("Lena.jpg");//注意:以下三种效果一致,均为浅拷贝Ma
2016-07-21 15:23:14 4349
原创 【OpenCV笔记 11】OpenCV中基本阈值化操作函数threshold()
阈值分割是最简单的图像分割的方法。OpenCV中提供了阈值函数threshold:threshold() 函数原型:double cv::threshold(InputArray src,OutputArray dst,double threshold_value,double maxval,int threshold_type )函数 threshold() 会接
2016-07-19 15:17:30 984
原创 system () 函数详解
system () 函数详解函数原型:int system (const char* command);功 能: 发出一个DOS命令,用于执行系统命令用 法: int system(char *command);在C语言中system函数需加头文件后方可调用system("pause")可以实现冻结屏幕,便于观察程序的执行结果;system("CLS")可以实现清屏操作
2016-07-18 22:24:58 1314
原创 【OpenCV笔记 10】OpenCV线性滤波(均值滤波、方框滤波、高斯滤波)
本文将介绍三种常见的线性滤:均值滤波、方框滤波、高斯滤波1.均值滤波blur()函数原型void cv::blur(InputArray src, //输入OutputArray dst,//输出Size ksize,//模板大小3x3,5x5等,Size(3,3),Size(5,5)
2016-07-18 16:28:53 699
原创 【OpenCV笔记 09】OpenCV中离散傅里叶变换、归一化的运用
本文主要介绍怎样使用opencv来对图片进行傅里叶变换,其核心函数是opencv自带的dft()。离散傅里叶变换DFT(Discrete Fourier Transform)这个技术手段是将空间域映射到频率域中去,在图像处理有着举足轻重的地位。同时在举出的示例中将用到下列函数:int getOptimalDFTSize(int vecsize)该函数是为了获得进行DFT计算
2016-07-18 15:13:08 3332
原创 【OpenCV笔记 08】OpenCV中分离颜色通道split()和图像通道混合merge()
而为了更好的观察一些图像材料的特征,有时需要对RGB三个颜色通道的分量进行分别显示和调整。通过OpenCV的split()和merge()方法可以很方便的达到目的,使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像混合操作。本文将介绍三个函数的应用:split函数详解将一个多通道数组分离成几个
2016-07-15 22:11:42 2962
原创 Visual Studio 2013 常用快捷键
Visual Studio 2013 是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。VS 2013 中新增了很多提高开发人员工作效率的新功能,比如自动补全方括号、使用快捷键移动整行或整块的代码等;合理使用快捷键可以提高开发效率。但是Visual Studio提供的快捷键多如牛毛,那我们有没有必要掌握所有快捷键的
2016-07-15 14:17:46 1247
转载 OpenCV基础类容器Mat类详解
我记得开始接触OpenCV就是因为一个算法里面需要2维动态数组,那时候看core这部分也算是走马观花吧,随着使用的增多,对Mat这个结构越来越喜爱,也觉得有必要温故而知新,于是这次再看看Mat。Mat最大的优势跟STL很相似,都是对内存进行动态的管理,不需要之前用户手动的管理内存,对于一些大型的开发,有时候投入的lpImage内存管理的时间甚至比关注算法实现的时间还要多,这显然是不合适的。除了
2016-07-15 09:41:38 576
转载 OpenCV存取像素值操纵汇总
1.存取单个像素值最通常的方法就是[cpp] view plain copyimg.at(i,j) = 255; img.at(i,j)[0] = 255; 如果你觉得at操作显得太笨重了,不想用Mat这个类,也可以考虑使用轻量级的Mat_类,使用重载操作符()实现取元素的操作。
2016-07-15 09:30:00 384
原创 【OpenCV笔记 07】OpenCV中线段的绘制和文本的插入
1.本文将先介绍OpenCV中线段的绘制和文本的插入,使用到的函数line()和 putText()(前面的一片博文已经介绍过)2.其次将应用于绘制大众车标的示例代码和运行结果一并附上。Line绘制连接两个点的线段void cvLine( CvArr* img, CvPoint pt1, CvPoint pt2, CvScalar color,
2016-07-14 21:21:11 1441
原创 【OpenCV笔记 06】OpenCV中绘制基本几何图形【矩形rectangle()、椭圆ellipse() 、圆circle() 】
本文主要内容:一、介绍OpenCV中三个绘图函数:circle() 、ellipse() 、rectangle()二、函数的应用实例,利用这些函数分别绘制了丰田车标、奥迪车标以及红十字,并附上代码。1.Circle绘制圆形。void cvCircle( CvArr* img, CvPoint center, int radius, CvScalar c
2016-07-14 20:30:03 41255 2
原创 【OpenCV笔记 05】OpenCV插入文本和字体设置相关函数
putText在图像中显示文本字符串。函数原型如下:void PutText( CvArr* img, const char* text, CvPoint org, const CvFont* font, CvScalar color );img输入图像。text要显示的字符串。org第一个字符左下角的坐标。font字体结构体。color文本的字体颜色。函数cvP
2016-07-14 15:42:16 6545
原创 【OpenCV笔记 04】OpenCV中显式创建Mat对象的5种方法
创建一个Mat对象有多种方法,本文将列举最为常用的五种:1.使用Mat()构造函数,2.利用create()函数创建,用来为已有矩阵开辟内存,不能用来初始化3.类似于Matlab式的初始化方式eye,zeros,ones,4.对小型矩阵使用逗号分隔式出初始化方式5.为已存在的对象创建信息头,利用函数clone()或copyTo(),此方法需要创建一个原图像矩阵的副本
2016-07-13 20:51:09 2122
原创 【OpenCV笔记 03】OpenCV头文件探秘
在使用OpenCV3.0编写代码的过程中,总会遇到类似于下面的头文件,#include出于好奇,于是辗转到安装目录下招待该头文件,其代码如下#ifndef __OPENCV_ALL_HPP__#define __OPENCV_ALL_HPP__#include "opencv2/core.hpp"#include "opencv2/imgproc.hpp"#include "
2016-07-12 22:53:56 1957
原创 【OpenCV笔记 02】OpenCV滑动条的创建和使用——createTrackbar()函数
createTrackbar()函数原型如下int createTrackbar( const String & trackbarname,//滑动条名称 const String & winname,//所在窗口名称 int * value,//value为指向int的指针,用于返回滑动条当前值 int count,//滑动条条最大值,默认值最小为0 TrackbarC
2016-07-11 23:01:06 1253
原创 【OpenCV笔记 01】OpenCV基本函数介绍
本文主要介绍OpenCV基本函数,包括imread(), imshow(), namedWindow(), imwrite(),函数功能分别对应图像载入,图像显示,创建窗口,输出图像到文件。1.函数imread(),用于图像的载入。1.1函数原型 Mat cv::imread(const String & filename, in
2016-07-11 11:06:43 1829
原创 C++代码命名规范约定
使用一套成熟的明敏规则不仅可以让我们规范行事,也增强代码的可读性,也便于别人更好的理解我们的代码.表1.1命名规则约定序号描述示例1类命名混合使用大小写,首字母大写ClassName2类型定义,包括枚举和typedef,混合使用大小写,首字母大写TypeName3局部变量混合使用大小写,且首字母
2016-07-11 09:58:52 1185
原创 图片搜索网站大全
你想凭着一张现有图片找出它的原始图片,或者是凭着一张小的缩略图找出原始大图吗?下面的十款搜索引擎可以帮你实现,以图找图,以图搜图,以图片搜索相似的图片。一:http://tineye.com/Tineye是典型的以图找图搜索引擎,输入本地硬盘上的图片或者输入图片网址,即可自动帮你搜索相似图片,搜索准确度相对来说还比较令人满意。TinEye是加拿大Idée公司研发的相似图片搜索引擎,
2016-07-09 19:02:54 3837
翻译 机器视觉应用于蔬果检测方面的相关英语词汇
本片所有词汇摘自论文,其中大部分难点词汇已经标注Shape determination of horticultural produce using two-dimensional computer vision – A reviewAuthor:G.P. Moreda a,⇑, M.A. Muñoz a, M. Ruiz-Altisent a, A. Perdigones bKeyw
2016-07-08 20:04:32 876
Python 3.7.3 官方最新文档_英文PDF版本
2019-06-03
python-3.5.2
2016-08-05
Visual Studio 的 Python 开发插件 PTVS 2.2 VS 2013.msi
2016-08-05
模式分类 Richard O.Duda第二版【Pattern Classification 2nd edition】 (代码和手册)
2016-08-04
最全人脸图片库
2016-07-29
opencv_xxx.310d.lib
2016-07-27
Halcon用户指导手册
2016-07-22
Halcon安装指导手册
2016-07-22
急求一个基于结构光三维重建的demo
2018-11-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人