![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OpenCV
文章平均质量分 60
随遇而安随缘一世
这个作者很懒,什么都没留下…
展开
-
计算机顶级会议Rankings && 英文投稿的一点经验
英文投稿的一点经验【转载】From: http://chl033.woku.com/article/2893317.html1. 首先一定要注意杂志的发表范围, 超出范围的千万别投,要不就是浪费时间;另外,每个杂志都有他们的具体格式要求,一定要按照他们的要求把论文写好,免得浪费时间,前些时候,我的一个同事向一个著名的英文杂志投稿,由于格式问题,人家过两个星期就退回来了,而且说了转载 2014-12-24 05:56:09 · 12748 阅读 · 1 评论 -
cvCvtColor的用法
cvCvtColor(...),是Opencv里的颜色空间转换函数,可以实现rgb颜色向HSV,HSI等颜色空间的转换,也可以转换为灰度图像。 参数CV_BGR2GRAY是RGB到gray, 参数 CV_GRAY2BGR是gray到RGB. 处理结果是彩色的,则转灰色就是了: void cvCvtColor( const CvArr*转载 2013-06-19 05:00:14 · 17029 阅读 · 0 评论 -
Operations with images
Input/OutputImagesLoad an image from a file:Mat img = imread(filename)If you read a jpg file, a 3 channel image is created by default. If you need a grayscale image, use:转载 2013-06-05 12:57:08 · 769 阅读 · 0 评论 -
Creating Bounding boxes and circles for contours
GoalIn this tutorial you will learn how to:Use the OpenCV function boundingRectUse the OpenCV function minEnclosingCircleTheoryCodeThis tutorial code’s is shown lines b转载 2013-06-05 12:21:52 · 931 阅读 · 0 评论 -
Changing the contrast and brightness of an image!
GoalIn this tutorial you will learn how to:Access pixel valuesInitialize a matrix with zerosLearn what saturate_cast does and why it is usefulGet some cool info about pixel transformations转载 2013-06-05 12:47:16 · 827 阅读 · 0 评论 -
Convert RGB to L*a*b* (Lab Color space) in OpenCV
Problem 1: Using cvCvtColor convert a sRGB image into Lab image; In other words change the color space from RGB to LABProblem 2: Do the same in MATLAB and compare results*******************转载 2013-06-13 22:16:15 · 2033 阅读 · 0 评论 -
openCV2.X的cv::Mat访问元素
Opencv 2里开始有新的C++风格的函数和数据类型。原来C风格的Iplimg、cvMat之类的相比之下就显得不方便了。比如,读图像:原来需要先cvLoadImg分配内存空间,然后在cvRelease释放;现在有了C++风格的,直接imread 增加了很多了类似matlab里的使用方法 Mat::zeros(H, W, CV_8UC3); 但是,openc转载 2013-06-05 02:53:41 · 1699 阅读 · 0 评论 -
openCv学习札记(二)—cv:Mat学习
由于在写上一篇图像的数据结构时,发现自己只知道CvMat,竟然还有Mat数据结构,真是无知了,看了这么多程序,貌似没有看到这个结构。有可能那些程序都是些老版本的例子,这是在2.0以后加上的,所以我也得紧跟呀!以下是自己的学习心得。。。。一、Mat简介 在2001年刚刚出现的时候,OpenCV基于 C 语言接口而建。为了在内存(memory)中存放图像,当时采用名为IplImage 的转载 2013-06-04 05:47:29 · 610 阅读 · 0 评论 -
【OpenCV】访问Mat图像中每个像素的值
今天百度搜资料还搜到了自己的。。。《访问图像中每个像素的值》,这是之前写的了,用的也是2.0的风格IplImage*格式,不太适用后来Mat的格式,特此重写一篇。以下例子源自《The OpenCV Tutorials --Release 2.4.2》2.2 How to scan images, lookup tables and time measurement with OpenCV转载 2013-06-04 05:41:55 · 647 阅读 · 0 评论 -
OpenCV学习笔记(十八)——图像的各种变换(cvtColor*+)imgproc
imgproc是OpenCV一个比较复杂的lib,我是分开介绍的,之前介绍过了滤波器、直方图、结构分析和形状描述三节,这次介绍一下图像的变换,OpenCV对于图像的变换又可分为几何变换和其他的变换,我这节先介绍一下其他的变换。这部分的函数包括adaptiveThreshold,对图像进行自适应的阈值操作。相应的也有更一般常用的阈值操作函数threshold。这里还是详细介绍一下cvtC转载 2013-06-19 06:52:46 · 1823 阅读 · 0 评论 -
SIFT算法研究
y RaySaint 2011/09/051综述结合论文[1]和Rob Hess的开源SIFT代码(发现OpenCV2.3的源码里也是用的Rob Hess的SIFT代码)对SIFT算法进行了研究,下面是小结:在计算机视觉的领域中,图像匹配是很多问题最重要的一个方面,包括物体和场景识别,通过多幅图像进行3D重构,立体匹配和运动跟踪。SIFT特征对于图像的旋转和尺度变化具有不变转载 2013-06-21 01:31:06 · 794 阅读 · 0 评论 -
OpenCV Mat图像颜色通道分离(split)合成(merge),各通道合图显示
OpenCV Mat图像颜色通道分离(split)合成(merge),各通道合图显示.#include #include #include #include using namespace cv;using namespace std; intmain( int argc, char**argv ){ FreeConso转载 2013-06-28 01:22:06 · 14189 阅读 · 1 评论 -
Matrix inverse
In OpenCV2.x, there's a new interface called Mat::inv(int method) to compute the inverse of a matrix. See reference.C++: MatExpr Mat::inv(int method=DECOMP_LU) constParameters: method –转载 2013-10-20 06:59:14 · 1753 阅读 · 0 评论 -
HOGDescriptor HOG
you can use hog class in opencv as followsHOGDescriptor hog;vector ders;vectorlocs;//This function computes the hog features for youhog.compute(grayImg,ders,Size(32,32),Size(0,0),locs);转载 2013-10-16 13:56:16 · 1575 阅读 · 0 评论 -
HOG descriptor computation and visualization
at img_raw = imread("C:\\testimg.png", 1); // load as color image resize(img_raw, img_raw, Size(64,128) ); Mat img;cvtColor(img_raw, img, CV_RGB2GRAY); HOGDescriptor d;// Size(128,64), //win转载 2013-10-16 13:48:27 · 1432 阅读 · 0 评论 -
openCV的矩阵乘法
1 转自http://nestle001.blog.hexun.com/32159866_d.html ------------------------------------------OpenCV提供了一個通用矩陣乘法的函式,cvGEMM(),代表的是GEneralized Matrix Multiplication,cvGEMM()可以處理線性代數方面許多的乘法運算,cvmMul()转载 2013-08-13 02:27:13 · 2256 阅读 · 0 评论 -
用VLFeat库进行k-means聚类
摘要本文将介绍如何使用VLFeat开源库来进行K-means聚类,关于K-means的介绍可以参考这里。什么是VLFeat用VLFeat官方主页的话来说,VLFeat 是一个实现了视觉领域诸多算法的开源库,其包括SIFT, MSER, k-means,hierarchical k-means, agglomerative information bottleneck, qui转载 2013-07-04 02:04:43 · 3985 阅读 · 0 评论 -
SIFT算法详解
尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Funzdd zddmail@gmail.com对于初学者,从David G.Lowe的论文到实现,有许多鸿沟,本文帮你跨越。1、SIFT综述尺度不变特征转换(Scale-invariant feature t转载 2013-07-04 01:52:14 · 944 阅读 · 0 评论 -
高斯模糊实现小结
注:博客中图表的大小难以调整,导致阅读不便,这里有其pdf版本:高斯模糊实现小结.pdf 高斯模糊是一种图像滤波器,它使用正态分布(高斯函数)计算模糊模板,并使用该模板与原图像做卷积运算,达到模糊图像的目的。N维空间正态分布方程为:其中,σ是正态分布的标准差,σ值越大,图像越模糊(平滑)。r为模糊半径,模糊半径是指模板元素到模板中心的距离。如二维模板大小为m转载 2013-07-04 01:53:36 · 1075 阅读 · 1 评论 -
VLFeat SIFT with OpenCV + Code
So, you used the VLFeat SIFT successfuly in Matlab but you need to use the library with C++ and you can't find the functions reference nor a tutorial? Well I have been there, done that and sharing转载 2013-07-03 02:36:29 · 4534 阅读 · 1 评论 -
【OpenCV】SIFT原理与源码分析:DoG尺度空间构造
《SIFT原理与源码分析》系列文章索引:http://blog.csdn.net/xiaowei_cqu/article/details/8069548尺度空间理论自然界中的物体随着观测尺度不同有不同的表现形态。例如我们形容建筑物用“米”,观测分子、原子等用“纳米”。更形象的例子比如Google地图,滑动鼠标轮可以改变观测地图的尺度,看到的地图绘制也不同;还有电影中的拉转载 2013-06-12 01:27:04 · 937 阅读 · 0 评论 -
图像金字塔
目标本文档尝试解答如下问题:如何使用OpenCV函数 pyrUp 和 pyrDown 对图像进行向上和向下采样。原理Note 以下内容来自于Bradski和Kaehler的大作: Learning OpenCV 。当我们需要将图像转换到另一个尺寸的时候, 有两种可能:放大 图像 或者缩小 图像。尽管OpenCV 几转载 2013-06-01 05:35:31 · 649 阅读 · 0 评论 -
How To Compile OpenCV based programs in Linux
How to compile C on Linux ?You need to setup the PKG_CONFIG_PATH variable. For example (assuming you are using a sh-based shell, like bash or zsh):cd /where/you/have/the/source/codePKG_CO转载 2013-03-02 21:03:47 · 706 阅读 · 0 评论 -
【OpenCV入门指南】第四篇 图像的二值化
在上一篇《【OpenCV入门指南】第三篇Canny边缘检测》中介绍了使用Canny算子对图像进行边缘检测。与边缘检测相比,轮廓检测有时能更好的反映图像的内容。而要对图像进行轮廓检测,则必须要先对图像进行二值化,图像的二值化就是将图像上的像素点的灰度值设置为0或255,这样将使整个图像呈现出明显的黑白效果。在数字图像处理中,二值图像占有非常重要的地位,图像的二值化使图像中数据量大为减少,从而能凸显出转载 2013-05-09 13:39:48 · 816 阅读 · 0 评论 -
【OpenCV入门指南】第三篇Canny边缘检测
图像的边缘检测的原理是检测出图像中所有灰度值变化较大的点,而且这些点连接起来就构成了若干线条,这些线条就可以称为图像的边缘。 Canny边缘检测算子是John F. Canny于 1986 年开发出来的一个多级边缘检测算法。Canny 边缘检测的数学原理和算法实现这里就不再了,有兴趣的读者可以查阅专业书籍,本文主要介绍如何在OpenCV中对图像进行Canny 边缘检测,下面就来看看这转载 2013-05-09 13:38:52 · 880 阅读 · 0 评论 -
【OpenCV入门指南】第二篇 缩放图像
上一篇《【OpenCV入门指南】第一篇安装OpenCV》讲解了如何在VS2008下安装和配置OpenCV,本篇将介绍使用OpenCV来缩放图片。首先介绍几个关键函数——cvResize和cvCreateImage《OpenCV入门指南》系列文章地址:http://blog.csdn.net/morewindows/article/category/1291764 一. 主要函数介绍转载 2013-05-09 13:37:42 · 897 阅读 · 0 评论 -
Matlab连通区域
1、 matlab函数bwareaopen──删除小面积对象格式:BW2 = bwareaopen(BW,P,conn)作用:删除二值图像BW中面积小于P的对象,默认情况下使用8邻域。算法:(1)Determine the connected components.L = bwlabeln(BW, conn);(2)Compute the area of each comp转载 2013-05-09 12:42:38 · 3555 阅读 · 0 评论 -
OpenCV参考手册之Mat类详解
目标 我们有多种方法可以获得从现实世界的数字图像:数码相机、扫描仪、计算机体层摄影或磁共振成像就是其中的几种。在每种情况下我们(人类)看到了什么是图像。但是,转换图像到我们的数字设备时我们的记录是图像的每个点的数值。 例如在上图中你可以看到车的镜子只是一个包含所有强度值的像素点矩阵。现在,我们如何获取和存储像素值可能根据最适合我们的需要而变化,最终可能减少转载 2013-05-08 23:42:34 · 583 阅读 · 0 评论 -
opencv c++接口 cv::Mat使用
1、使用准备:usingnamespace cv; 2、Mat的声明Mat m = Mat(rows, cols, type);Mat m = Mat(Size(width,height), type);Mat A=Mat(3,4,CV_32FC1);Mat B=Mat(4,3,CV_32FC1);3、Mat赋值vector v;转载 2013-05-08 23:06:14 · 2695 阅读 · 0 评论 -
SIFT算法详解
尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Funzdd zddmail@gmail.com对于初学者,从David G.Lowe的论文到实现,有许多鸿沟,本文帮你跨越。1、SIFT综述尺度不变特征转换(Scale-invariant feature trans转载 2013-05-20 09:30:25 · 1268 阅读 · 1 评论 -
【OpenCV入门指南】第五篇 轮廓检测 上
《【OpenCV入门指南】第三篇Canny边缘检测》中介绍了边缘检测,本篇介绍轮廓检测,轮廓检测的原理通俗的说就是掏空内部点,比如原图中有3*3的矩形点。那么就可以将中间的那一点去掉。 在OpenCV中使用轮廓检测是非常方便。直接使用cvFindContours函数就能完成对图像轮廓的检测。下面就来看看这个函数的用法。《OpenCV入门指南》系列文章地址:http://转载 2013-05-09 13:41:10 · 873 阅读 · 0 评论 -
【OpenCV入门指南】第六篇 轮廓检测 下
上一篇《【OpenCV入门指南】第五篇轮廓检测上》介绍了cvFindContours函数和cvDrawContours函数,并作了一个简单的使用示范。本篇将展示一个实例,让大家对轮廓检测有个更加深入的认识。 代码如下:[cpp] view plaincopy//图像的轮廓检测下 //By MoreWindows (http://blog转载 2013-05-09 13:42:04 · 817 阅读 · 0 评论 -
【OpenCV入门指南】第十篇 彩色直方图均衡化
上一篇《OpenCV第十篇灰度直方图均衡化》介绍了灰度图像的直方图均衡化,实际生活中,肯定还是彩色图像用的最多,因此本篇介绍对彩色图像进行直方图均衡化。这样可以让大家直方图均衡化对图像增强的效果有个直观的印象。 在OpenCV中,彩色的图像其实是用一个多通道数组来存储的,每个单通道数组中的元素的取值范围都是0到255。这与灰度图中像素的变化范围是相同的。因此对彩色图像进行直方图均衡化只要转载 2013-05-09 13:44:13 · 1253 阅读 · 0 评论 -
Mac OS X 安装 OpenCV2.4.3【详述】
最近给MacBook装OpenCV走了很多弯路,读了很多帖子和Blog,但感觉都和我遇到的情况有些不同,他们的博客也写的很简略,所以出于以上几点原因加上想做一下备忘,写了这篇很详细很冗长的Blog。-------------------------------------------------------------------------------------------------转载 2013-03-02 04:30:22 · 696 阅读 · 0 评论 -
基础学习笔记之opencv(24):imwrite函数的使用
前言 OpenCV中保存图片的函数在c++版本中变成了imwrite(),这应该是向matlab中图像处理的的一些函数风格靠近吧。保存图片这个功能还是很重要的,比如说在写科研论文的时候需要把一些中间图片给贴出来,这样就可以在程序中间利用该函数保存图片了。甚至还可以将这些保存的图片供后续的matlab处理。本文就简单介绍下OpenCV中imwrite()函数的用法。不过个人感觉这个函数功能转载 2013-05-15 23:18:56 · 1484 阅读 · 0 评论 -
图像分割之(四)OpenCV的GrabCut函数使用和源码解读
上一文对GrabCut做了一个了解。OpenCV中的GrabCut算法是依据《"GrabCut" - Interactive Foreground Extraction using Iterated Graph Cuts》这篇文章来实现的。现在我对源码做了些注释,以便我们更深入的了解该算法。一直觉得论文和代码是有比较大的差别的,个人觉得脱离代码看论文,最多能看懂70%,剩下20%或者更多就需要转载 2013-05-08 11:59:14 · 1729 阅读 · 0 评论 -
Hough变换的线段检测
学习Hough变换过程中发现检测线段的算法资料不少,但实际能高效实现的不多。自己也在学习过程,水平问题只能提供思路和部分代码。 Hough变换的基本思想: Hough变换的基本思想就是点- 线的对偶性。它是对图像进行某种形式的坐标变换,将原始图像中给定形状的曲线或直线变换成空间中的一个点,在变换空间中形成峰值点。从而使检测整体特性变成检测局部特性,使问题简化。设在原转载 2013-05-12 01:37:03 · 1459 阅读 · 1 评论 -
OpenCV2 直方图均衡化
直方图的均衡化我们先来看看原图的直方图我们发现高亮区域的像素点很少,主要像素点集中在中低亮度区域我们先设置一个阈值,也就是图中的那根粉色的线,当某一亮度值的像素点的个数低于这个值时,我们认为这些像素点是无关紧要的。灰度图的亮度值范围是0-255,若亮度值为1的像素点的个数低于阈值,我们可简单的把亮度为1的像素点的亮度全设为0,同理,我们从高往转载 2013-05-10 01:08:16 · 814 阅读 · 0 评论 -
【OpenCV入门指南】第九篇 灰度直方图均衡化
上一篇《OpenCV第八篇灰度直方图》介绍对灰度直方图,本篇将介绍直方图的均衡化,这是图像增强的常用方法。直方图均衡化的数学原理这里就不介绍了,有兴趣可以查阅专业书籍。下面来看看灰度直方图均衡化的函数——cvEqualizeHist 一.cvEqualizeHist函数功能:直方图均衡化,该函数能归一化图像亮度和增强对比度函数原型:/* equalizes转载 2013-05-09 13:46:27 · 1202 阅读 · 0 评论 -
【OpenCV入门指南】第八篇 灰度直方图
直方图(Histogram)又称柱状图、质量分布图,是一种统计报告图。直方图由一系列高度不等的纵向条纹或线段表示数据分布的情况。一般用横轴表示数据类型,纵轴表示分布情况。在图像处理上,直方图是图像信息统计的有力工具。 灰度直方图是指对图像的灰度信息进行统计,我们知道灰度图在图像处理中应用非常广泛,在前面的《OpenCV第三篇Canny边缘检测》、《OpenCV第五篇轮廓检测上》、《Ope转载 2013-05-09 13:45:19 · 1399 阅读 · 0 评论