- 博客(69)
- 资源 (2)
- 收藏
- 关注

原创 Win8.1+VS2013+OpenCV2.4.9+Kinect for Windows SDK v1.8开发环境配置
今年暑假就要开始做Kinect项目开发了
2014-07-16 15:37:10
11634
5
原创 神经网络
一. 前向传播输入层->隐含层 的输入: 的输出: 的输入: 的输出: 2. 隐含层->输出层 的输入: 的输出: 的输入: 的输出: 二. 反向传播损失函数(均方误差): 隐含层->输出层的权值 更新以 为例, 用整体误差对 求偏导3. 输入层->隐含层的权值 更新以 为例, 用整体误差对 求偏导三. TensorFlow代码实现#!/usr/bi...
2018-05-21 12:26:51
394
原创 C++实现单向链表(2)
#include using std::cout;using std::endl;template struct ListNode{ T data; ListNode* link;};template class List{private: ListNode* head;public: List(); int len();
2016-09-26 15:37:51
655
原创 C++实现单向链表(1)
#include using namespace std;template class ListNode{private: T data; ListNode* link;public: ListNode(T theData, ListNode* theLink) { data = theData; link = theLink; } void setLink(
2016-09-23 11:20:57
724
原创 OpenCV读取序列图片(3)
今年7月份我大学毕业了,时间过得很快啊。开始了工作,目前还在适应中。可是虽然毕业了,学习还是要继续的,哈哈~类似的OpenCV读取序列图片的文章我已经写了两个了,但是都不太好。OpenCV自带的VideoCapture类可以读取序列图片,但是局限性太大,比如要求文件名连续,貌似还不能读取png格式的。我自己写的那一个太复杂了,一点都不简洁,虽然能读取png的,但是还是要求文件名连续,不
2016-09-07 17:24:41
2990
原创 C++写入和读取txt文件
#include #include #include using namespace std;int main(){ ifstream inStream; ofstream outStream; stringstream ss; outStream.open("outfile.txt"); for (int i = 1; i <= 100; ++i) { ss.str
2016-06-11 15:14:51
911
原创 Meanshift算法之再思考
其实Meanshift算法的核心思想就是迭代,通过迭代找到局部极大值。如果初始区域设置不合理的话,Meanshift是无法成功找到局部极大值的。比如下面的这个例子,我设置的初始区域中的像素值全部为0,所以Meanshift就无法找到像素值增大的方向,最终也就找不到局部极大值。如果我的初始区域设置合理的话,情况则是这样的(红方框为初始区域,绿方框为局部极大值区域):
2016-05-07 19:42:53
904
原创 将ROI区域继续划分成4*4小格,求取每4小格组成的1个box区域的Hue(色调)通道直方图
#pragma once#include #include #include using namespace cv;typedef unsigned int uint;class WinBox{public: WinBox(Mat& src_ROI); void computeHist(vector& winHists);private: Mat srcROI; ui
2016-05-07 15:28:54
629
原创 用小窗口循环扫描图像
#pragma once#include using namespace cv;typedef unsigned int uint;class WinSlide{public: WinSlide(Mat& src_img, Size win_size, Size win_stride = Size(1,1)); bool read(Mat& win);private: Ma
2016-05-05 17:30:00
865
转载 ViBe前景检测算法
运动检测(前景检测)之(一)ViBezouxy09@qq.comhttp://blog.youkuaiyun.com/zouxy09 因为监控发展的需求,目前前景检测的研究还是很多的,也出现了很多新的方法和思路。个人了解的大概概括为以下一些: 帧差、背景减除(GMM、CodeBook、 SOBS、 SACON、 VIBE、 W4、多帧平均……)、光流(稀疏光流、稠
2016-05-03 14:44:56
1183
转载 OpenCV完美配置攻略
Opencv 完美配置攻略 2014 (Win8.1 + Opencv 2.4.8 + VS 2013)Created at: 2014-02-04T00:00:00 Yuanbo She CV cv, opencv,2012年4月给同学写了篇傻瓜式的 VS2010+Opencv-2.4.0的配置攻略 结果没有想到,点击量一路飙升,固定在了Google
2016-04-22 21:45:25
1533
原创 OpenCV249+Eigen+VS2010属性表配置
F:\Learning Tools\opencv\build\include;$(IncludePath) F:\Learning Tools\opencv\build\x86\vc10\lib;$(LibraryPath) opencv_ml249d.lib;opencv_calib3d249d.lib;opencv_contrib249d.lib;op
2016-04-22 19:38:01
1328
转载 Eigen使用方法
Eigen非常方便矩阵操作,当然它的功能不止如此,由于本人只用到了它的矩阵相关操作,所以这里只给出了它的一些矩阵相关的简单用法,以方便快速入门。矩阵操作在算法研究过程中,非常重要,例如在图像处理中二维高斯拟合求取光斑中心时使用Eigen提供的矩阵算法,差不多十来行代码即可实现,具体可见:http://blog.youkuaiyun.com/hjx_1000/article/details/8490653
2016-04-22 17:45:48
6804
原创 OpenCV画矩形
#include using namespace cv;Rect select;bool select_flag = false;Point origin;Mat frame;void onMouse(int event, int x, int y, int flags, void* param){ if (select_flag) { select.x = MIN(or
2016-04-20 21:19:07
1667
原创 OpenCV画点
#include using namespace cv;using namespace std;bool flag = false;Point center;int radius = 3;vector allPoints;void onMouse(int event, int x, int y, int flags, void* param){ if (event == C
2016-04-20 21:17:05
9166
原创 OpenCV读取序列图片(2)
虽然OpenCV的VideoCapture可以读取序列图片,但是有时候不好用,自己写了一个类来专门读取序列图片。图片的命名方式为img000.png img001.png img010.png img100.png img999.png数字位数一定要相同,用0补全,可以没有前缀img批量修改文件名可以用2345看图王软件,虽然会弹广告,但是挺好用#pragma once#
2016-04-18 14:54:52
1574
原创 利用OpenCV创建自己的Rect类
直接上代码!#pragma once#include class MyRect{public: MyRect(cv::Point pt, cv::Size size); MyRect(int x, int y, int width, int height); cv::Rect get(); int area(); int width(); int height();
2016-04-14 15:33:32
1424
原创 OpenCV的Rect矩形类用法
//如果创建一个Rect对象rect(100, 50, 50, 100),那么rect会有以下几个功能:rect.area() //返回rect的面积 5000rect.size() //返回rect的尺寸 [50 × 100]rect.tl() //返回rect的左上顶点的坐标 [100, 50]rect.br() //返回rect的右下顶点的坐标 [150, 150]rect
2016-04-14 11:44:26
55856
6
原创 Meanshift跟踪移动目标
利用Meanshift算法进行了移动目标跟踪,图片资源如下:链接:https://yunpan.cn/cq9GfQDrsDL7r 密码:b135红色方框为初始位置,绿色方框为跟踪到的位置。#include using namespace cv;int histSize[1] = {256};float hranges[2] = {0, 255};const float*
2016-04-13 17:53:48
1200
原创 使用Meanshift算法查找物体
看了很长时间的Meanshift,今天终于会用了,借助于一本参考书《OpenCV2计算机视觉编程手册》,这本书帮了很大的忙。#include #include using namespace cv;int main(){ Mat srcImg1 = imread("1.jpg"); Mat srcImg2 = imread("2.jpg"); Mat src
2016-04-13 14:53:49
1061
转载 OpenCV的TermCriteria模板类介绍
TermCriteria模板类,这个类是作为迭代算法的终止条件的。该类变量需要3个参数,一个是类型,第二个参数为迭代的最大次数,最后一个是特定的阈值。类型有CV_TERMCRIT_ITER、CV_TERMCRIT_EPS、CV_TERMCRIT_ITER+CV_TERMCRIT_EPS,分别代表着迭代终止条件为达到最大迭代次数终止,迭代到阈值终止,或者两者都作为迭代终止条件。以上的
2016-04-13 14:43:40
1537
原创 OpenCV计算反向投影
反向投影概念的理解:首先,对上图灰度图像(大小为320*240)计算灰度直方图并进行归一化(即把最大值限制为255),直方图有5个bin,像素值的取值范围是0-51, 51-102, 102-153, 153-204, 204-255如下图所示:然后再来一幅相似的灰度图像(大小也为320*240)遍历该图像的每个像素点的灰度值。比如点(x, y)的灰
2016-04-12 15:30:11
1952
原创 Adobe Flash离线安装包下载
Adobe Flash Player(For IE):https://fpdownload.macromedia.com/pub/labs/flashruntimes/flashplayer/install_flash_player_ax.exeAdobe Flash Player(For Firefox、Mozilla、Netscape):https://fpdown
2016-04-09 17:37:53
55951
3
原创 C++引用的使用
#include using namespace std;void swapValue(int &x, int &y){ int temp; temp = x; x = y; y = temp;}int main(){ int v1 = 3; int v2 = 6; cout << v1 << " " << v2 << endl; swapValue(v1, v2
2016-04-07 12:13:43
480
原创 static静态变量和静态成员函数
静态变量:在某些情况下我们希望一个类的所有对象共享一个变量,这种被所有对象共享的变量叫做静态变量。静态成员变量只能在类定义之外初始化,且只能初始化一次。静态成员函数:如果一个函数不访问任何类的对象的数据,但却希望此函数作为类的成员。静态函数的调用不需要类的对象,且其实现中不能有该类的任何对象。静态函数不能用到任何的非静态成员变量和非静态成员函数。初始化应该按如下方式进行:int
2016-04-07 11:56:07
428
原创 借助OpenCV创建自己的直方图类--画出灰度图像的直方图
Histogram.h#pragma once#include #include using namespace cv;class Histogram{public: Histogram(void); ~Histogram(void); void getHist(Mat& srcImage, Mat& dstHist, int bins = 256, float min
2016-04-06 17:04:30
1205
转载 HOG三线性插值
所谓的三线性插值指的是在(x,y,theta)这三个参数空间中进行插值,即x方向、y方向和梯度的角度空间,如图1所示,图中的象素点(x,y)在利用梯度幅值作为权重进行投票时,要根据该象素点距离其他格子中心的距离进行加权,同时该象素点的梯度方向也要在其相邻的区间内进行插值,用数学公式描述如下式所示。
2016-04-04 18:42:44
1892
转载 OpenCV HOG
转载自:http://blog.youkuaiyun.com/zhazhiqiang/一、理论1、HOG特征描述子的定义: locally normalised histogram of gradient orientation in dense overlapping grids,即局部归一化的梯度方向直方图,是一种对图像局部重叠区域的密集型描述符, 它通过计算局部区域的梯度方向直
2016-04-04 16:48:20
3684
原创 维基百科中HOG算法介绍
方向梯度直方图[编辑]维基百科,自由的百科全书特征检测典型角检测算法的输出边缘检测Canny Canny–Deriche Differential Sobel Prewitt Roberts cross角检测Harris算子 Shi and Tomasi Leve
2016-03-31 16:51:21
2599
原创 基于SVM与Meanshift的目标跟踪
近期在研究毕业设计,原本的题目是改进Meanshift目标跟踪算法,查了一天的资料,大概了解到以前做跟踪研究的很多是基于Meanshift+滤波器,而现在做跟踪研究的是Meanshift+机器学习,要想创新的话就必须了解一点机器学习的算法。通过查找资料了解到Meanshift算法的优缺点(参考链接:http://blog.youkuaiyun.com/carson2005/article/details/
2016-03-13 21:47:04
2858
原创 OpenCV多线程以系统当前时间分段保存视频
两个按钮,一个点击一下就打开摄像头另一个点击一下开始保存视频,并且以当前系统时间为文件名,再点击一下就暂停保存视频,这样反复。声明3个布尔全局变量:bool IsOpenCamera = false; //摄像头开关控制bool IsSaveVideo = false; //录像开关控制bool IsInitVideoWriter = false; //初始化函数控制
2016-03-06 14:32:53
2310
原创 MFC多线程编程实例
新建一个基于对话框的MFC工程:TEST在TESTDlg.cpp里面写线程执行函数就可以了。线程执行函数只能声明为类内静态函数或者类外全局函数,而且只能访问类内静态函数和静态变量。如果要访问类内非静态的函数或变量,只能按如下写。先在TESTGlg.h中声明函数,再在TESTDlg.cpp实现函数public: CString m_temp;//类内非静态成员变量 void
2016-03-06 14:21:05
1862
原创 MFC创建具有用户名和密码的登录界面
插入对话框,并设置好布局。为对话框新建CLogin类,为两个编辑控件添加控件变量,控件变量命名为m_userName,m_password。为“确定”按钮控件添加事件处理程序。在APP程序中添加#include "Login.h"添加如下代码:完成!效果图如下:
2016-03-02 14:09:20
23813
原创 利用MFC和OpenCV构建GUI程序读取摄像头视频
一、新建一个基于对话框的MFC应用程序,命名为opencv_mfc。 1、取消勾选“使用Unicode库”,勾选“在静态库中使用MFC”,取消勾选“关于”框,取消勾选“ActiveX控件”。 2、删除默认对话框中的文字控件,只保留确定和取消控件。 3、为工程添加链接opencv的属性表。二、编写代码 1、在op
2016-03-02 13:35:15
8618
2
原创 OpenCV读取序列图片(1)
看到一篇牛人的博客,发现了长久以来就想解决的问题:OpenCV读取图像序列!太爽了!比如我的D盘lemming文件夹下有下图所示的图像序列:文件名的宽度为5个字符。
2015-12-01 19:31:56
6004
2
原创 重装系统教程(版本二)
版本一的方法是传统方法,比较正规。但是比较麻烦,想要快速解决问题的朋友可以参考现在的这篇文章。一:下载小马PEV2015-02-15-Beta.exe(下载链接:http://pan.baidu.com/s/1eQ4UX94) 下载你想安装的系统原版镜像,链接参考《重装系统教程(版本一)》二:准备一个空的U盘,插入到电脑usb端口,然后等待上面的软件下载完成
2015-11-28 15:17:27
832
原创 Google浏览器离线安装包下载
下载地址:http://www.google.cn/intl/zh-CN/chrome/browser/desktop/index.html?standalone=1
2015-09-18 14:06:37
952
《基于RGB-D传感器的3D室内模型创建》摘要
2015-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人