- 博客(43)
- 资源 (3)
- 收藏
- 关注
原创 Ubuntu14.04+CUDA6.5+OpenCV2.4+Caffee配置
由于实验需要,在实验室电脑上搭建深度学习Caffee框架。一共花了两天的时间,其中遇到了不少的问题,记录一下。 Caffee在配置上相对来说比较麻烦,需要前期安装的东西比较多,逐一介绍。CUDA:NVIDIA系列显卡支持的GPU编程框架,其实如果本身电脑是AMD的显卡,不用装也可用Caffee,只是速度会比较慢。所以最好有一块像样的显卡,最后我就败在这个上面了。。。MKA或是OpenAtlas
2015-11-18 10:53:50 1111
原创 Libevent源码学习(四) 事件内部流程解析下部
上一节过后,大家应该对于事件状态转换有了一定的了解,具体的代码部分也已经详细分析到了事件状态转换为EVLIST_INSERTED状态.下面接着上面的部分接着说明.1.事件链表上节提到过很多次链表这么个东西,具体libevent怎么实现链表,大家可以参考compat/sys/queue.h文件.这里把常用的链表定义操作有详细的代码,基本上全部使用宏的形式去实现函数,应该是为了更高效的运行,有
2015-10-31 10:59:48 703
原创 Libevent源码学习(三) 事件内部流程解析上部
上一节简单的介绍了事件的概念,这节就实际利用libevent的代码与上节最后说到的几个问题进行详细说明.为了简单来考虑,这里不先不考虑超时事件与信号事件,只进行读写事件的解释.1.事件的定义事件是libevent一个非常重要的概念,先来看看它的数据结构定义.代码位于event.h文件中struct event { TAILQ_ENTRY (event) ev_next; TAILQ
2015-10-27 15:59:30 490
原创 Libevent源码学习(二) 事件的概念
上一节结合代码解释了一下如何libevent可以支持多种不同网络模型,并且屏蔽不同模型之间的区别.其中也涉及到了一个很重要的概念:事件.这里给大家详细解释一下事件的概念.事件是可以被控件识别的操作,如按下确定按钮,选择某个单选按钮或者复选框。每一种控件有自己可以识别的事件,如窗体的加载、单击、双击等事件,编辑框(文本框)的文本改变事件,等等。上面的解释是抄录百度百科的翻
2015-10-27 09:21:35 587
原创 Libevent源码学习(一) 支持多种网络模型原理
在linux下学习了一段时间网络编程,主体的编程思路懂得差不多了(windows下做过,基本差不多),所以决定看些开源的库来实际学习一下.故选择了相对简练的libevent进行代码阅读.在读的过程中,参考了一位已经将libevent解析的很清楚的大神的博客.http://blog.csdn.net/sparkliang/article/details/4957667这里算是自己学习过程中的一些
2015-10-21 21:52:17 788
原创 利用ffmpeg修改的音频图片提取接口
由于实验室是做图像与视频处理的,所以基本上是利用OpenCV开源库。OpenCV库非常方便,也很好用。但是其底层提供的视频接口不是很多,主要是提取视频帧,后续的都变成图像处理的工作了。在做算是自己的论文方向题目的时候,需要用到音频特征(提取的特征越多,识别的效果应该会有所提升),这时候OpenCV就不行了。由于OpenCV底层的图像和视频接口都是也是使用ffmpeg处理,不过用于比较少而已。所以就
2015-10-06 20:04:14 1425
原创 计算机视觉课程作业 代码说明以及源文件
不提供代码的都是浮云计算机视觉课程设计大作业 基于词袋模型的图像分类算法。整个实验在vs2010上完成,利用开源的sift提取程序、libsvm分类器和opencv库,使用前请自行配置好opencv。可执行文件目录结构说明如下图:文件夹说明: airplanes,ant,barrel,binocular,bonsai,brain: 6类训练图片文件夹
2015-06-03 17:09:59 3105
原创 计算机视觉课程作业 基于词袋模型的图像分类算法
1.背景介绍随着计算机与互联网技术以及数字图像获取技术的快速发展,海量的数字图像出现在互联网上及人们周边的生活中。依靠传统的人工方式对图像进行分类、组织和管理非常耗时耗力,所以希望能够通过计算机对图像中的目标内容进行自动地分析处理,从而将图像数据快速、规范、自动地进行组织、归类和管理。早期的图像分类主要依赖于文本特征,采用人工方式为图像标注文本,使用的是基于文本的图像分类模式。由于图像标注
2015-06-03 17:03:20 19229 2
原创 模式识别课程作业 代码说明与源文件
同样的一句话,不给源代码的都是浮云。。。。模式识别课程的大作业,基于pca与svm的人脸识别程序。程序基于matlab与libsvm完成。在matlab中运行的时候,请确保正确安装libsvm.源代码目录结构如下:实验代码说明: FaceData文件夹: 人脸图片数据集,每个子文件夹表示一类人脸。实验过程中1-8号图片为训练图片,9-10号为测试图片 rea
2015-06-03 16:52:45 4869
原创 自然语言处理课程作业 代码说明及源文件
这是在自然语言课程时的大作业--中文文本情感的分类。整个实验的相关算法利用C++在Windows平台下完成,使用ICTCLAS中文分词开源程序、LibSVM以及开源的XML文件处理程序Markup完成。具体实验代码详见附件。这年头光说不给代码的都是假的,我也是有点鄙视的。。。故给出可运行的完全源代码,使用vs2010写的代码。目录结构如下:各文件夹作用说明: FreeIC
2015-06-03 16:22:04 3449
原创 自然语言处理课程作业 中文文本情感分类
摘要:20世纪初以来,文本的情感分析在自然语言处理领域成为了研究的热点,吸引了众多学者越来越多的关注。对于中文文本的情感倾向性研究在这样一大环境下也得到了显著的发展。本文主要是基于机器学习方法的中文文本情感分类,主要包括:使用开源的Markup处理程序对XML文件进行分析处理、中科院计算所开源的中文分词处理程序ICTCLAS对文本进行分词处理、去除停用词等文本预处理,在基于向量空间模型VSM的文本
2015-06-03 16:02:17 35335 3
原创 Ubuntu 14.10安装显卡驱动
这几天因为需要在实验室电脑上搭建caffee环境,发现ubuntu没有安装相应的NVIDIA驱动.所以就装了一下,把完整过程说明一下!1.检测自己显卡的类型并不是所有的显卡都是NVIDIA,而且有的本身就没有独立显卡,所以这是第一步.在终端下输入: lspci | grep VGA这样就可以查看自己显卡类型,下面是我的电脑的结果.我的电脑显卡型号为GT218.2.从官网
2015-11-16 09:46:19 1996
转载 HTTP协议及工作原理解析
超文本传输协议(Hypertext Transfer Protocol,简称HTTP)是应用层协议。HTTP 是一种请求/响应式的协议,即一个客户端与服务器建立连接后,向服务器发送一个请求;服务器接到请求后,给予相应的响应信息。HTTP 请求报文HTTP 请求报文由请求行、请求头部、空行 和 请求包体 4 个部分组成,如下图所示: 下面对请求报文格式进行简单
2015-10-21 21:02:42 536
转载 IO多路复用 epoll模型
1、基本知识 epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的copy只需一次。2、epoll接口 epoll操作过程需要三个接口,分别如下:
2015-10-20 21:44:27 341
转载 IO多路复用 Select模型
1、基本概念 IO多路复用是指内核一旦发现进程指定的一个或者多个IO条件准备读取,它就通知该进程。IO多路复用适用如下场合: (1)当客户处理多个描述字时(一般是交互式输入和网络套接口),必须使用I/O复用。 (2)当一个客户同时处理多个套接口时,而这种情况是可能的,但很少出现。 (3)如果一个TCP服务器既要处理监听套接口,又要处理已连接套接口,一般也要用
2015-10-20 21:04:14 361
转载 堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两
2015-10-20 09:36:03 322
转载 socket阻塞与非阻塞,同步与异步、I/O模型
原作写的很好,把这几个知识点做了一个系统详细的解释。顶一个!原作链接:http://blog.csdn.net/hguisu/article/details/74533901. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步: 所谓同步,就是在发出
2015-10-08 16:46:02 363
原创 libevent安装编译并测试
由于之前在windows平台下接触过一个网络数据过滤的程序,当时也是第一次写关于网络方面的程序(之前写的小程序不算),明显的经验不足。很多知识都不够用,最后导致这个程序没有完成。但是过程中学到了不少的东西,多线程,队列,锁机制,缓冲区管理等等。还有各种网络模型,包括典型的轮询方式,多路复用select以及windows下的IOCP等。这段时间在看关于linux下面的编程,算是为找工作做准备吧,
2015-10-08 16:14:27 1065
原创 linux常用小命令
1.查看特定端口使用情况,并删除该占用进程查看: netstat -nlp | grep 端口号删除:kill -9 进程pid示例: netstat -nlp | grep 25341 查看25341端口情况 结果:(Not all processes could be identified, non-owned process info will not
2015-10-08 09:31:07 487
转载 GCC 命令行详解 -L 指定库的路径 -l 指定需连接的库名
1. 为什么会出现undefined reference to 'xxxxx'错误?首先这是链接错误,不是编译错误,也就是说如果只有这个错误,说明你的程序源码本身没有问题,是你用编译器编译时参数用得不对,你没有指定链接程序要用到得库,比如你的程序里用到了一些数学函数,那么你就要在编译参数里指定程序要链接数学库,方法是在编译命令行里加入-lm。2. -l参数和-L参数-l参数就是
2015-10-08 09:23:50 485
转载 linux下查看和添加PATH环境变量
linux下查看和添加PATH环境变量来自:http://apps.hi.baidu.com/share/detail/32942984$PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接。 编辑你的 PATH 声明,其格式为: PATH=$PATH::::------:
2015-10-07 20:48:39 349
转载 gdb使用方法
推荐 GDB十分钟教程这个我看见的对于gdb使用方法清晰明了的博客了,这里只提供网址就行了。网址:http://blog.csdn.net/liigo/article/details/582231
2015-10-07 13:54:18 444
原创 不同编码情况下字符转换方法
在实验室做项目,中间遇到很多次这种字符转换的问题。一直都是简单看看,也没有认真分析过问题的原因,直到上次一直弄不出来,这里就仔细整理了一下,希望大家可以参考一下。VS2010环境下默认使用UNICODE编码,即常用_T()宏进行格式转换。在这种情况下,CString使用宽字符编码,宽字符编码对应于窄字符编码。例如中文,中文和英文不同,一个汉字使用两个字节表示,则使用宽字符编码。而英文仅
2015-09-14 13:09:06 1077
转载 MFC中发一些CDockablePane 关闭等编程问题。强烈推荐!!!!
声明:这些程序都是鄙人亲自调试通过,转载敬标注来源于酒天聊博文!1、CDockablePane的关闭见解: MFC提供的Pane关闭可以再事件里面找到: BOOL CMainFrame::OnCloseDockingPane(CDockablePane* pWnd) ; 注释:关闭停靠窗口事件,事实上是隐藏窗体,还是占用资源的 BOOL
2015-07-10 09:22:06 1702
转载 Visual studio 2008/2010 MFC程序Menu、Toolbar字体模糊偏小解决办法
(来源:http://www.blogjava.net/luchunwei/archive/2010/06/09/323118.html ) 首先,这是一个MFC的Bughttp://connect.microsoft.com/VisualStudio/feedback/details/505466/mfc-visual-style-font-size-too-small-to
2015-06-19 09:24:01 1598
转载 linux下c/c++编程环境搭建
Ubuntu中没用自带C/C++开发环境,需要用户自己配置。在UBUNTU中文论坛中的一些帖子集合。一、安装基本开发环境本人想学习一下Linux下的C,C++程序开发,这几天一直在研究Linux下的C语言编译环境的建立,因为新装好的Ubuntu里面缺少函数库文件,所以无法编译最简单的C语言文件,故要先配置一番,这几天也有一点心得,写下来和大家一起学习。原来我以为安装配置非常麻烦
2015-06-05 10:18:10 6148
原创 MFC下的链接按钮呀
用来点击可以跳转连接的按钮,大家可以参考参考!#pragma once// CLinkButtonclass CLinkButton : public CButton{private: //各种颜色 COLORREF m_normalTextColor;//按钮文本颜色 COLORREF m_overTextColor;//鼠标位于按钮之上的文本颜色 CFont m_tex
2015-06-04 22:05:14 454
原创 MFC重绘的按钮控件
算是MFC重绘中最基础的一个部分了,重绘一个按钮控件!自己结合网上代码写的,给大家参考一下!#pragma once// CNormalButtonclass CNormalButton : public CButton{private: //各种颜色 COLORREF m_normalBorderColor;//正常边框颜色 COLORREF m_overBorderCol
2015-06-04 22:02:58 2818 1
原创 自己写的MFC曲线控件类
之前因为实验室做的一个项目中需要进行实时动态的曲线显示,在mfc上本来就没有多少可用的高级控件。负责这部分的学长用了mschart来做实时的曲线显示,但是效果基本还可以,但是因为重绘导致的闪烁还是很让客户觉得不是很好。所以后来我接手这部分后,就决定开始重新写一个曲线控件。从实现的效果来看,基本还是满足要求的。主要的思想就是重绘,所有的东西都是画出来的。windows的所有控件都是画出来的,譬如
2015-06-04 21:52:16 716
转载 在vc或mfc中显示IplImage的方法
平常使用Open CV时总是跳出一个个窗口,很难将项目进行系统集成,特别是在MFC等Windows环境中加载显示Open CV中的IplImage图像;/**************************************** 使用Open CVhighgui.h 中定义的CvvImage类,可以很好的实现Open CV和Windows MFC显示接口;先介绍一下CvvI
2015-06-04 21:38:40 2191
原创 图像处理 二维小波变换
编程环境:windows下结合opencv库//二维图像小波变换/*nLayer:变换尺度type:小波类型*/void ImageDWT(IplImage* src, IplImage* dst, int nLayer, char* type);//通用的二维小波变换/*nLayer:小波变换的层数type:选取的小波名称 可用为: "haar","db4","sy
2015-06-04 21:35:49 4960 2
原创 图像处理 一维快速小波变换
编程环境:windows下结合opencv//一维快速小波变换/*src,dstCA,dstCD均为一维行向量dstCA,dstCD分别表示小波变换结果的低频和高频部分,其长度为src的一半type:选取的小波名称 可用为: "Haar","db4","sym4"使用Mallat算法,并利用傅里叶变换来快速执行卷积运算*/void DWT(CvMat* src, CvMat
2015-06-04 21:33:40 1825
原创 图像处理 离散haar小波变换
编程环境:windows下结合opencv库//离散Haar小波变换/*dst深度为IPL_DEPTH_32FnLayer为变换尺度*/void HaarWavelet(IplImage* src, IplImage* dst, int nLayer);//离散Haar小波变换/*dst深度为IPL_DEPTH_32FnLayer为变换尺度*/void HaarWavele
2015-06-04 21:31:33 2732
原创 图像处理 灰度图像直方图
编程环境:windows下结合opencv.//计算并获取图像的均匀灰度直方图//dst表示灰度直方图图像,三通道彩色图像//nBins表示灰度直方图划分的间隔数//scalarHistColor表示灰度直方图的颜色void GrayHist(IplImage* src, IplImage* dst, int nBins, CvScalar scalarHistColor);voi
2015-06-04 21:31:17 1000
原创 图像处理 频域滤波函数
以前学习图像处理的时候下的函数呀!编程环境:windows下结合opencv库。//频域滤波器的类型 使用时一般使用前三种类型与后两种 "或操作" 一起使用,默认为低通滤波器//例:DFT_FILTER_GAUSSIAN | DFT_FILTER_HIGH 表示高斯高通滤波器enum DFT_FILTER_TYPE{ DFT_FILTER_IDEAL,//理想频域滤波器 DFT_
2015-06-04 21:28:44 1075
原创 图像傅立叶变换以及中心转换函数
还是以前学习图像处理的时候写的函数呀!编程环境:windows下结合opencv库。//傅里叶频谱的中心转换//void ShiftDFT(IplImage* src, IplImage* dst);void ShiftDFT(CvArr* src, CvArr* dst);//傅里叶变换的频谱图void DFTP(IplImage* src, IplImage* dst);/
2015-06-04 21:26:37 867
原创 图像基本噪声添加函数
以前学习图像处理时,写的函数代码呀!编程环境:windows下结合opencv库。enum NOISE_TYPE //图像噪声类型{ //均匀噪声,高斯噪声,椒盐噪声 NOISE_UNIFORM, NOISE_GAUSSIAN, NOISE_SALT};//图像添加噪声 参数A B在不同噪声类型时含义不同 源图像为8位//1.参数范围为 0 - 255//2.均匀噪声时,参数A
2015-06-04 21:23:40 1523
原创 图像亮度变换函数
以前学习图像处理的时候,写的基础代码。大家看看吧。。//图像亮度变换函数//函数将fLowSrc到fHighSrc之间的亮度根据fGamma的值映射到fLowDst到fHighDst亮度中//fLowSrc,fHighSrc,fLowDst,fHighDst均在0-1之间,函数会根据源图像类型按比例映射void ImageAdjust(IplImage* src, IplImage* dst
2015-06-04 21:17:39 1585
原创 自己推荐几本书。。。
之前一直对c++比较感兴趣,因此学的也比较多。大学阶段同学都在学怎么做网站,还是兴趣不大。。。。推荐自己看过C++的几本书吧初学者建议看看大学里开设的c/c++课程,基本上大学的课程都是简单介绍。这本书也就差不多了!然后就可以看看c++ primer了,这本书被称为经典也确实不为过。书中关于c++的用法以及关于stl标准库的介绍很好,大家可以仔细看看。由于之前一直在windows下
2015-06-04 20:48:06 1469
转载 linux下推荐书籍
工作几年来,一直从事Linux内核驱动方面的开发。从接触Linux到现在,读过不少Linux方面的书籍,现把认为很不错的一部分列出来和大家分享一下。入门类 一直认为,在一个系统上学习开发之前,首先需要熟悉这个系统的使用。鉴于天朝的国情,绝大部分人第一个接触的操作系统就是Windows,因此对于这绝大部分人来说,如果要学习Linux开发,学会使用这个系统都是必不可少的一个环节。
2015-06-04 20:36:28 537
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人