opencv
文章平均质量分 86
clxiaoclxiao
这个作者很懒,什么都没留下…
展开
-
人眼识别
/*这个程序调用opencv自带的分类器对200张图片进行了人眼检测,借助于人眼在人脸的半部分的先验知识,通过设置阈值,当检测到的某个准眼睛区域的下边界在人脸图像的某个范围之内时认为这个准眼睛区域不是真正的眼睛区域,结果凡是分类器争取检测出来的眼睛都保留了,而识别错误的准眼睛区域都被滤去了。在我的电脑上,识别率是72.5%。试验用的人脸数据库是从google上下的,叫BioID-FaceDatab转载 2016-05-28 21:35:49 · 2290 阅读 · 0 评论 -
LBP纹理图的提取
LBP纹理通过像素点的八邻域元素和自身比较,大于自身取值为1,否则为0。将八邻域比较后的值以特殊的顺序排列,形成一个八位的二进制数,将该数作为纹理图的像素值。程序如下:LBP.h#pragma once//#pragma comment(lib, "cv.lib")//#pragma comment(lib, "cxcore.lib")//#pragma c原创 2016-07-01 15:11:16 · 923 阅读 · 0 评论 -
HDR
代码如下:#include #include #include #include #include #include #include "opencv2/photo/ph原创 2016-07-01 16:05:22 · 627 阅读 · 0 评论 -
GPU加速
#include#include#includeusing namespace std;using namespace cv;int main(int argc, char** argv){/*Mat img, gray;double temp = cvGetTickFrequency();double tick;tick = cvGet原创 2016-07-01 16:18:11 · 928 阅读 · 0 评论 -
有关cvUpdateMotionHishtory,cvCalcMotionGradient等函数的使用
cvUpdateMotionHishtory多幅图像叠加,第三个参数输入为每帧图片的绝对时间,第四个输入则是消逝的时间cvCalcMotionGradient第三个参数为输出,输出值为各个像素点预测的运动方向值,第一个参数邻域中的最大最小值得差值在第四个和第五个两个值中间时,输出有效。而邻域大小由最后一个参数限定,使用算子为sobel算子。//下面为转载的一部分代码,加上了部分显示原创 2016-06-15 22:13:19 · 1686 阅读 · 0 评论 -
kalman 滤波 演示与opencv代码
转载自:http://blog.csdn.net/onezeros/article/details/6318944在机器视觉中追踪时常会用到预测算法,kalman是你一定知道的。它可以用来预测各种状态,比如说位置,速度等。关于它的理论有很多很好的文献可以参考。opencv给出了kalman filter的一个实现,而且有范例,但估计不少人对它的使用并不清楚,因为我也是其中一个。本文的应转载 2016-06-15 22:43:33 · 590 阅读 · 0 评论 -
图像恢复
有关inpaint的使用,图片尺寸img,mask尺寸应保持一致,mask的白色区域为图像的恢复区域Telea在2004年提出的基于快速行进的修复算法(后面简称FMM算法)如下:论文题目:An Image Inpainting Technique Based on the Fast Marching Method (2004)作者主页:http://www.cs.rug.nl/~a原创 2016-06-17 18:18:24 · 988 阅读 · 0 评论 -
opencv清晰度,色偏等评价函数
配置: VS2008 MFC & opencv 2.4.4步骤:1、新建 win32 控制台应用,空项目。2、添加 main.cpp 文件。3、添加 *.lib 库 说明:各类参数根据实际摄像头获取。我的是随意设置的。试验状态。付源码:double DefRto(Mat frame) { Mat gray; cvtColor转载 2016-07-28 17:12:36 · 2885 阅读 · 0 评论 -
图像清晰度的评价及分析
在无参考图像的质量评价中,图像的清晰度是衡量图像质量优劣的重要指标,它能够较好的与人的主观感受相对应,图像的清晰度不高表现出图像的模糊。本文针对无参考图像质量评价应用,对目前几种较为常用的、具有代表性清晰度算法进行讨论分析,为实际应用中选择清晰度算法提供依据。(1)Brenner 梯度函数Brenner梯度函数是最简单的梯度评价函数,它只是简单的计算相邻两个像素灰度差的平方转载 2016-07-28 17:54:22 · 43748 阅读 · 2 评论 -
SIFT特征提取分析
SIFT(Scale-invariant feature transform)是一种检测局部特征的算法,该算法通过求一幅图中的特征点(interest points,or corner points)及其有关scale 和 orientation 的描述子得到特征并进行图像特征点匹配,获得了良好效果,详细解析如下:算法描述SIFT特征不只具有尺度不变性,即使改变旋转角度转载 2016-08-02 17:14:05 · 505 阅读 · 0 评论 -
树莓派学习笔记—— 源代码方式安装opencv
0.前言 本文介绍如何在树莓派中通过编译源代码的方式安装opencv,并通过一个简单的例子说明如何使用opencv。 更多内容请参考——【树莓派学习笔记——索引博文】1.下载若干依赖项 在开始安装之前,最好更新树莓派软件源。如果更新时间太长,请参考博文修改软件源网络地址——【树莓派学习笔记——修改树莓派软件源】转载 2016-08-28 17:45:04 · 707 阅读 · 0 评论 -
图像细化
在我们进行图像处理的时候,有可能需要对图像进行细化,提取出图像的骨架信息,进行更加有效的分析。 图像细化(Image Thinning),一般指二值图像的骨架化(Image Skeletonization) 的一种操作运算。 所谓的细化就是经过一层层的剥离,从原来的图中去掉一些点,但仍要保持原来的形状,直到得到图像的骨架。骨架,可以理解为图象的中轴。 好的细化算转载 2016-08-30 21:06:38 · 1081 阅读 · 0 评论 -
时空上下文视觉跟踪(STC)算法的解读与代码复现
时空上下文视觉跟踪(STC)算法的解读与代码复现zouxy09@qq.comhttp://blog.csdn.net/zouxy09 本博文主要是关注一篇视觉跟踪的论文。这篇论文是Kaihua Zhang等人今年投稿到一个会议的文章,因为会议还没有出结果,所以作者还没有发布他的Matlab源代码。但为了让我们先睹为快,作者把论文放在arx转载 2016-08-12 14:46:01 · 1515 阅读 · 0 评论 -
OpenPano:如何编写一个全景拼接器
本文全文翻译自http://ppwwyyxx.com/2016/How-to-Write-a-Panorama-Stitcher/。这是一个关于作者如何编写OpenPano算法的一个总结,OpenPano是一个开源的全景拼接软件。相关代码在github上。SIFT FeatureLowe 的SIFT[1]算法实现放在feature/目录下。这个算法的流程和一些结果在这一章里做简单的介绍转载 2017-02-15 10:11:42 · 2754 阅读 · 0 评论 -
k-means聚类分割
算法的思想是初始选取M个种子点,将周围点的特征和种子点特征进行距离的测定,距离最小的点和该种子点归为一类。则可以分为M个类别,计算这些类别特征的质心作为新的种子点,再次分类,如此迭代n次后的结果便是聚类分割的结果。 K-means也是聚类算法中最简单的一种了,但是里面包含的思想却是不一般。最早我使用并实现这个算法是在学习韩爷爷那本数据挖掘的书中,那本书比较注重应用。看了原创 2016-07-01 14:46:17 · 7100 阅读 · 1 评论 -
运动分析和对象跟踪
[-]Cv运动分析与对象跟踪目录背景统计量的累积AccSquareAccMultiplyAccRunningAvg运动模板UpdateMotionHistoryCalcMotionGradientCalcGlobalOrientationSegmentMotion对象跟踪MeanShiftCamShiftSnakeImage光流CalcO转载 2016-06-14 21:50:50 · 962 阅读 · 0 评论 -
人脸位置识别
haar classifier cascade是opencv下自带的人脸检测的级联分类器,支持haar特征,新版本的CascadeClassifier好像支持LBP特征,没试过。HaarDetect.h[cpp] view plain copy print?#ifndef HAARDETECT_H #define HAARDET转载 2016-05-29 21:58:02 · 1041 阅读 · 0 评论 -
图像搜索
opencv教程中的代码/*对1280*1280的图片配对32*32的模板,耗时在300ms左右该方法对32*32的图像应与1280*1280的一部分完全相同,该配对才会准确*/#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"#include #inclu原创 2016-05-30 21:28:01 · 592 阅读 · 0 评论 -
opencv与opengl混用实现三维点云图像
/*灰度图转换为高度图,为双目视觉三维重建做准备。*/#include #include //#include //#include //#include #include "opencv2/calib3d/calib3d.hpp" #include "opencv2/imgproc/imgproc.hpp" #include原创 2016-05-31 20:57:48 · 3324 阅读 · 0 评论 -
相机的同步拍摄
/*很多项目需要多个摄像头同时拍摄,且相互间有同步性。例如双目视觉等下面代码实现双摄像头同时拍摄。代码解释:将摄像头拍摄到的数据先缓存,然后同时读出,实现同步*/#include#include#include#include#include#includeusing namespace std;using namespace cv;原创 2016-05-31 21:55:34 · 3545 阅读 · 0 评论 -
OpenGL与OpenCV实现增强现实
很久没有写博客了,最近在学习计算机视觉的相关知识,于是写了一个AR的小Demo。该程序通过OpenCV实现对Marker的识别和定位,然后通过OpenGL将虚拟物体叠加到摄像头图像下,实现增强现实。首先来看看我们使用的Marker:这是众多Marker中的一个,它们都被一圈的黑色边框所包围,边框之中是编码信息,白色代表1,黑色代表0。将每一行作为一个字,那么每个字有5b转载 2016-05-31 22:27:09 · 6985 阅读 · 1 评论 -
相机标定获得内参矩阵及其他参数
csdn博客推荐:http://blog.csdn.net/chenyusiyuan/article/details/5963256理论方面和单目标定opencv代码网址:http://pan.baidu.com/s/1cFRWg2下面为转载的一部分我自己写了一个摄像机标定程序,核心算法参照learning opencv,但是那个程序要从命令行预先输入参原创 2016-06-01 20:19:56 · 11581 阅读 · 0 评论 -
双目标定代码
/*有关opencv的双目标定代码,先通过单目标定,然后通过世界坐标系和相机坐标系的各自变换矩阵求解两相机坐标系的投影矩阵。opencv的计算功能相对较差,代码中有部分无法计算,用matlab辅助计算后发现,各个图片对应的变换并不一致。*/代码地址:http://pan.baidu.com/s/1eRMplYi原创 2016-06-02 21:52:30 · 774 阅读 · 0 评论 -
角点检测
//opencv论坛的代码#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"#include #include #include using namespace cv;using namespace std;/// Global variables原创 2016-06-03 22:16:03 · 305 阅读 · 0 评论 -
图像拼接
stitching1用于一般的拼接,可将特征较好拼接,但是会改变图像的形状。stitching2实现了配准,需要真实影像的可以使用。bool stitching1(string outputname, string str1, string str2, string str3,string str4){vector src;src.push_back(imread(st原创 2016-05-23 14:42:01 · 850 阅读 · 0 评论 -
变换总结
estimateRigidTransform():计算多个二维点对或者图像之间的最优仿射变换矩阵 (2行x3列),H可以是部分自由度,比如各向一致的切变。getAffineTransform():计算3个二维点对之间的仿射变换矩阵H(2行x3列),自由度为6.warpAffine():对输入图像进行仿射变换findHomography: 计算多个二维点对之间的最优单映射变换矩阵 H(3行x3列)转载 2016-06-04 22:26:21 · 394 阅读 · 0 评论 -
有关opencv光流法的解释
1981年,Horn和Schunck创造性地将二维速度场与灰度相联系,引入光流约束方程,得到光流计算的基本算法。人们基于不同的理论基础提出各种光流计算方法,算法性能各有不同。Barron等人对多种光流计算技术进行了总结,按照理论基础与数学方法的区别把它们分成四种:基于梯度的方法、基于匹配的方法、基于能量的方法、基于相位的方法。近年来神经动力学方法也颇受学者重视。 其他转载 2016-06-11 15:35:22 · 1302 阅读 · 0 评论 -
光流法测行人移动
修改了部分代码,并进行了计时以及某些代码的注释。代码进行强角点检测,并将这些点的运动矢量以光流法绘制出来,并对不符合条件的运动矢量进行筛选。/* --Sparse Optical Flow Demo Program--* Written by David Stavens (david.stavens@ai.stanford.edu)*/#include #include原创 2016-06-07 10:31:01 · 837 阅读 · 0 评论 -
KNN分类器
该部分为转载部分KNN最邻近规则,主要应用领域是对未知事物的识别,即判断未知事物属于哪一类,判断思想是,基于欧几里得定理,判断未知事物的特征和哪一类已知事物的的特征最接近;K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。该方法的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多原创 2016-06-14 14:11:50 · 630 阅读 · 0 评论 -
计算机视觉方面代码和论文
UIUC的Jia-Bin Huang同學收集了很多計算機視覺方面的代碼,鏈接如下:https://netfiles.uiuc.edu/jbhuang1/www/resources/vision/index.html248 itemTopicNameReferenceLinkFeature Detection,Feature E转载 2018-01-05 16:05:47 · 1540 阅读 · 0 评论