自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

原创 也谈代码中注释的问题

对于代码注释,大家较为一致的看法是代码中一定要有注释,这是毫无疑问的,但是如何去写注释,却是各有各的说法,今天看到一篇博客,其观点是:注释只写why,不写what和how。当然,前提是代码已能够很容易看出 what和how了。看了这博客,我也想谈谈这方面的看法。        在注释的问题上,很久以前还跟我的一位同事吵过,那位同事在代码上密密麻麻地写满注释,他让我也要这样做,这让我很不能接受,

2014-04-03 11:02:31 3127

原创 识别算法中的漏洞问题

识别算法中的漏洞问题        软件研发是一件非常艰辛的工作,程序和BUG就象孪生兄弟一样,是程序就一定会有BUG,有时甚至BUG成了程序的代名词,我们会发现程序员大部分的工作时间是在解决程序中的BUG。同样地,识别算法中的漏洞,即BUG,也是一个让人头疼的问题,在这里,结合本人在识别算法中的研发经验,对于识别算法中的漏洞问题浅谈如下几点看法: 1、首先,不要想当然地认为我的算

2012-09-14 15:39:58 4267 1

原创 识别程序中的随机性识别错误

识别程序面对的总是复杂多样的情况,在做识别性能提高的过程中,会碰到各种各样的错误,有时给人一种“防不胜防”的感觉,对此,别无二法,只能是加强测试数据的收集和强化测试,但是,当我们面对一大堆错误时,会发现好些是随机性的错误,即这种错误往往只出现一次,很难重现,对于这类错误,若用特殊的方法(即治标不治本的方法)解决它,则算法不会有适应性,所以会出现这样的情况:虽然改了很多识别错误,但最终测试后识别率并

2012-06-26 16:15:08 3251

原创 提高识别率要“稳扎稳打”

关于提高识别率的方法。

2011-07-25 22:00:27 3500

原创 模式识别研发中的盲人摸象问题

关于在模式识别研发过程中的一点心得。

2011-05-03 22:02:00 3895

原创 模式识别技术漫谈(5)

神经网络基本原理 学习模式识别我个人觉得从神经网络入手可能是个较好的选择,一方面可以避免一下子就陷入复杂的公式推导中,另一方面可以让我们较快就能体验到模式识别是个什么样的技术,因为我们可以利用matlat或openCV非常方便地进行实践(学习一种技术,多去实践非常有助于对理论知识的理解)。神经网络技术是从仿生的角度来思考模式识别技术,探寻模仿人类的智能一直以来是科学界所研究的目标,神经网络

2010-05-23 16:41:00 5032 2

原创 使用运算符重载所犯的一个错误

使用运算符重载所犯的一个错误        在openCV源代码中有个CvImage类,里面有一个运算符重载:class CV_EXPORTS CvImage{public:……operator IplImage* () { return image; }……protected:    IplImage* image;……}       这个类定

2010-05-09 22:09:00 3145

原创 模式识别技术漫谈(4)

模式识别技术漫谈(4)                   ------------关于机器学习一提到机器学习,首先大家会想到的一定是神经网络,其实机器学习方法很多,这里借用“Learning OpenCV”(Gary Bradski and Adrian Kaehler)中第十三章的关于机器学习算法总结的那个表来说明一下机器学习有哪些算法: ML Algorith

2010-04-26 21:24:00 4889 3

原创 模式识别技术漫谈(3)

模式识别技术漫谈(3)                   -------高维空间        我们在表示某个事物的特征时,其特征数一般有三个以上的,甚至有好几百个特征,为了表示方便,对于特征值一般采用向量的形式来表示,所以我们在研究模式识别时会有很多的矩阵运算,对于特征值的运算我们可以把它想象成是一个高维空间中的运算,矩阵运算可以方便地表达高维空间中的运算,所以说线性代数是研究模式

2010-04-08 22:01:00 5892 1

原创 模式识别技术漫谈(2)

模式识别技术漫谈(2)                                                                       -------大量应用了概率和统计分析方法        模式识别大体上可以分为统计模式识别和句法模式识别,统计模式识别是对大量的样本进行统计或学习而最后得到一个分类器,如贝叶斯分类器、神经网络、SVM、K近邻法则等都是属于

2010-03-25 15:16:00 7386 7

原创 模式识别技术漫谈(1)

模式识别技术漫谈(1)                                                                                  ------引言            在人工智能技术(Artificial Intelligence)领域中,模式识别(Pattern Recognition)技术也许是最具有挑战性的一门技术了,模式

2010-03-23 21:50:00 6685 3

原创 Symbian C++程序开发中纯虚类的妙用

Symbian C++程序开发中纯虚类的妙用        提起关于symbian程序的开发,让我印象最深的是纯虚类的应用,几乎是随处可见,但如果你是做MFC应用开发,却是很难看到纯虚类的使用的,刚开始我一直以为是因为嵌入式程序有较多的异步消息响应才会用到纯虚类,当我学会自己运用纯虚类来为自己的程序设计接口时,我才发现纯虚类的使用是多么的妙!        我第一次碰到纯虚函数是看

2009-06-19 15:39:00 2818 1

原创 中国软件架构师语录

中国软件架构师语录 摘自:http://news.csdn.net/n/20090306/123867.html 梁永昌(趋势科技研究部和软件系统架构部副总裁): 软件架构师在工作的范围和责任上与盖房子的建筑师很类似,必须知道他要盖的是什么房子,有多少预算,施工期有多长,现在要的是两层楼,但以后会不会要加盖上去,厕所要几个,厨房在哪里,哪里要设门,哪儿要开窗,梁柱要多粗,要

2009-04-27 17:46:00 4216

翻译 模式识别科学发展与现状(6.结束语)

 6 Discussion and Conclusions6 讨论和结论 Recognition of patterns and inference skills lie at the core of human learning. It is a human activity that we try to imitate by mechanical means. There ar

2009-04-21 16:59:00 4793 1

翻译 模式识别科学发展与现状(5.挑战)

5 Challenges5 挑战 A lot of research effort is needed before the two novel and far-reaching paradigms are ready for practical applications. So, this section focuses on several challenges that natu

2009-04-21 16:50:00 4898 1

翻译 模式识别科学发展与现状(4.展望)

4 Perspectives4 看法 Pattern recognition deals with discovering, distinguishing, detecting or characterizing patterns present in the surrounding world. It relies on extraction and representation o

2009-04-20 17:26:00 4992

翻译 模式识别科学发展与现状(3.成就)

 3 Achievements3.成就 In this section we will sketch in broad terms the state of the art in building systems for generalization and recognition. In practical applications it is not the primary g

2009-04-14 18:06:00 5528

翻译 模式识别科学发展与现状(2.模式识别四种方法)

2 Four Approaches to Pattern Recognition2 模式识别四种方法 In science, new knowledge is phrased in terms of existing knowledge. The starting point of this process is set by generally accepted evident vi

2009-04-08 14:02:00 6118

翻译 模式识别科学发展与现状(1.介绍)

The Science of Pattern RecognitionAchievements and Perspectives Robert P.W. Duin1 and El˙zbieta P_ ekalska21 ICT group, Faculty of Electr. Eng., Mathematics and Computer ScienceDelft Univers

2009-04-07 10:03:00 7189 2

原创 设计高模块化C程序的方法

  一、            高模块化程序的特征:高聚合、低耦合 二、            模块的相对性:程序模块有大有小,一个大的模块内还可以分成小的模块 三、        高模块化程序的优点:1、  易于维护;2、  易于分工合作;3、  易于模块化测试。 四、        高模块化程序的副作用:1、可能会降低程序运行效率;2、设计的前期

2008-12-12 08:46:00 4851

原创 知识模式识别

  知识模式识别   在信息大爆炸的今天,对各种信息进行分类和鉴别,乃至更高层次的自动化应用,已成为了一个热门技术,要对信息进行自动化应用,最核心的技术应当是知识模式识别,如现在流行的“精准广告”,就是知识模式识别的一种,对论文进行自动化分类也是知识模式识别的一种,通过知识模式识别得到有价值的知识模式,也可以让我们做出更好的决策,知识模式识别是属于AI研究领域,它将跟生物技术一样引领一场新

2008-06-03 17:31:00 2684

原创 软件开发中的老问题——沟通

 软件开发中的老问题——沟通       在软件开发中有这样的一个法则(Brook法则):向进度落后的项目中增加人手,只会使进度更加落后。我们经常可以听到“1+1>2”的说法,但从这个法则中可以知道,在软件开发中1加1是小于2的,甚至是小于1的,这是为什么呢?其中主要的原因就是沟通,项目开发人员之间的相互沟通产生了额外的时间开销,甚至可能会因沟通而产生新的问题,如新加入的开发人员因对问题理

2008-05-29 10:52:00 3672

原创 自文档化程序

 自文档化程序在《人月神话》中对流程图做了较为强烈的批判,以下是其中的某些观点,我认为是很有道理的,在此摘出来跟大家分享一下:1、流程图是被吹捧得最过分的一种程序文档。详细逐一记录的流程图是一件令人生厌的事情,而且高级语言的出现使它显得陈旧过时。2、如果需要流程图,很少有程序需要一页纸以上的流程图。[在这一点上,MILSPEC军用标准实在错得很厉害。]3、即使的确需要一张程序结

2008-05-06 16:35:00 4163

原创 理解离散傅立叶变换(四. 复数形式离散傅立叶变换)

  理解离散傅立叶变换(四)                     ------复数形式离散傅立叶变换       复数形式的离散傅立叶变换非常巧妙地运用了复数的方法,使得傅立叶变换变换更加自然和简洁,它并不是只是简单地运用替换的方法来运用复数,而是完全从复数的角度来分析问题,这一点跟实数DFT是完全不一样的。 一、          把正余弦函数表示成复数的形式 通

2008-04-11 09:17:00 25928 8

原创 理解离散傅立叶变换(三.复数)

  理解离散傅立叶变换(四)                     ------复数形式离散傅立叶变换       复数形式的离散傅立叶变换非常巧妙地运用了复数的方法,使得傅立叶变换变换更加自然和简洁,它并不是只是简单地运用替换的方法来运用复数,而是完全从复数的角度来分析问题,这一点跟实数DFT是完全不一样的。 一、          把正余弦函数表示成复数的形式 通

2008-04-10 09:10:00 30040 5

原创 理解离散傅立叶变换(二. 实数形式离散傅立叶变换)

理解离散傅立叶变换(二)                                ------实数形式离散傅立叶变换(Real DFT)       上一节我们看到了一个实数形式离散傅立叶变换的例子,通过这个例子能够让我们先对傅立叶变换有一个较为形象的感性认识,现在就让我们来看看实数形式离散傅立叶变换的正向和逆向是怎么进行变换的。在此,我们先来看一下频率的多种表示方法。 一、

2008-04-09 13:44:00 80936 22

原创 理解离散傅立叶变换(一. 傅立叶变换的由来)

理解离散傅立叶变换(一)                     ------傅立叶变换的由来       关于傅立叶变换,无论是书本还是在网上可以很容易找到关于傅立叶变换的描述,但是大都是些故弄玄虚的文章,太过抽象,尽是一些让人看了就望而生畏的公式的罗列,让人很难能够从感性上得到理解,最近,我偶尔从网上看到一个关于数字信号处理的电子书籍,是一个叫Steven W. Smith, Ph.D

2008-04-08 17:38:00 100468 69

原创 软件开发中文档设计之我见

      在国内很少有IT公司把文档设计列为软件设计的一部份,也许很多是出于开发成本的考虑,因为要做文档设计,则必定要耗费更多的人力和时间,也即要付出更多的成本,我也对此曾经感到疑惑,国内IT公司竞争非常剧烈,时间和成本往往是第一考虑要素。其实,这些都是小公司的通病,很多小公司也因此毁于一旦,主要是因为没有做文档设计使得开发陷入混乱直至最后项目无法交付或无法按期交付,或者因为某些关键员工离开导致

2007-09-17 14:36:00 3940 1

原创 在手机平台上建立TCP/IP通信办法点滴

 一、          手机上TCP/IP通信的几个特点1、通信稳定性差。手机通信稳定性远不如PC机,手机通信是属于无线通信,受手机信号及手机质量的影响较大,有时网络较繁忙时通信容易被阻塞,所以在设计上稳定性问题是经常要被考虑的重点;2、平台不同,实现方法差异大。目前手机平台五花八门,通信的实现方法不尽相同,但基本上可以分为这么几类:同步阻塞、同步非阻塞、异步非阻塞、异步阻塞,其中阻

2007-09-04 10:14:00 4166

原创 int指针强制转换成short指针安全吗?

  先看如下一段代码:       void func1(short* p)       {              printf(“%d”,*p);;               return;       }void func2(){       int x = 1;              func1((short*)&x);     

2007-08-14 16:10:00 6847

原创 RFC1521文档中关于QP和BASE64编码的定义

RFC1521文档中关于QP和BASE64编码的定义 1、           关于QP(Quoted-Printable)编码方法的描述:规则1:除了换行符,其它任何8位长度的字节必须被表示成一个“=”号加上高四位的十六进制数和低四位的十六进制数,十六进制数是用“0123456789ABCDEF”的ASCII字符码表示,其中“ABCDEF”都必须是大写;规则2:当8位长度的字节值

2007-04-11 17:36:00 3531

原创 移动开发中的字符集转换问题

 移动开发中的字符集转换问题在手机开发中会碰到关于字符类型的转换问题,特别是如果想在程序中支持中文则必须搞清楚某些字符集的表示方法,较常见的是UCS2、UTF-8、ASCII字符集,对于GB2312码则较少平台支持,所以往往要做的转换是把GB2312码转换成UCS2或UTF-8码。1.UCS2UCS2码是用两个字节表示一个字符,如果字符是ASCII码中的字符,则一个字节为空(值为0

2007-04-11 17:25:00 3243 4

原创 当项目灾难来临时该怎么办

 当项目灾难来临时该怎么办据统计,IT项目开发中80%是不成功的,有些甚至是灾难性的后果,最近刚好读到《项目灾难拯救之道》的书,这是一本翻译版本的外籍书,这本书全面分析了关于项目开发失败产生的原因及处理方法,这里把书中的一些要点摘录出来与大家分享。对于项目灾难发生时,书中提到约克大学的约翰.麦克德米德教授的处理方法,约翰.麦克德米德教授是信息技术(IT)项目及其问题领域的专家,他指出,

2007-04-09 17:41:00 2999 1

原创 易于在各手机平台移植的设计要领

 易于在各手机平台移植的设计要领       现在手机越来越普及了,手机上能实现的功能也越来越多,很多人开始转入了手机上的应用开发,但是手机平台五花八门,如果想使开发出的程序具有较高的商业价值,就必须能够适应较多数的手机平台,要充分考虑程序的可移植性,本人接触手机应用开发已有近三年的时间,经历了许多种手机平台的开发,如基于symbian OS的S60系列、UIQ系列,基于windows C

2007-04-06 08:56:00 1524

原创 提高C语言程序运行稳定性的方法

 提高C语言程序运行稳定性的方法                           一、前言        由于C语言的灵活性,用C语言开发出来的程序容易造成内存泄漏、运行异常、运行结果不可预期等程序质量问题,在用C语言开发程序的过程中,必须高度重视程序质量问题,应当把提高程序稳定性的方法加入到项目管理和开发过程中,最大限度地提高程序的稳定性,保证项目的成功开发。在这里总结多

2007-04-03 17:45:00 5908 2

原创 利用二叉树的思想来实现分配和释放内存方法

利用二叉树的思想来实现分配和释放内存方法      虽然大部分系统都有提供内存动态分配和释放函数(即C语言中的malloc和free函数),但是在嵌入式开发中由于系统的限制往往需要自己来实现内存管理,如在有些平台上可动态申请的最大空间不能满足程序设计的需要,有些系统提供的内存分配和释放函数会造成大量的内存碎片导致内存不够用,在这些时候往往就需要自己先申请一块较大的内存,然后在这个较大的内存中进

2007-03-26 17:05:00 4115

翻译 嵌入式C/C++开发中的代码优化(翻译版)

事情应该被做得尽可能的简单,但不是任意地简单化。――爱因斯坦虽然做好的程序能按项目需求正确运行到最后一步,但在嵌入式系统开发中并不总是能成功的。由于低成本的需要硬件设计者几乎不可能设计出足够的内存和处理器性能来使得程序能被运行。当然,在软件开发过程中使得程序能够正确运行是更重要的。为了这点,通常有一个或更多的开发平台,这些平台拥有更多的内存和更快的处理器速度,能够使得软件正确运行,并且在项

2006-02-15 09:59:00 5020

《理解离散傅立叶变换》原始文档

介绍离散数据傅立叶变换的原理和方法。

2008-05-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除