- 博客(31)
- 资源 (1)
- 收藏
- 关注
原创 Sublime3 + PlantUML环境配置
虽然这个软件的安装没有什么恶心的编译,但是没想到一个严谨的测试却因为一些少见的意外导致无法使用。因此,在严谨的软件到了用户手里,谁知道会遇到什么情况,还得用户自己看代码找问题。
2022-10-25 20:12:27 528 1
原创 透过表象看本质!?之多年未填的坑
回过头来,看了看若干年前暑假写的系列,没写完的原因——筹划好的几个后续没东西填了。通读之前写的内容,无外乎想说说,我们通过观察能不能发现所谓的本质。1、树欲静而风不止。谁是第一推动力?还记得中学物理中的绝对光滑、无空气阻力、无大小但有质量的质点、绝对圆等等物理模型。他们都是现实世界的简化模型,但是却有其使用的场景。比如真空、低重力、宏观低速等等。另一个更为重要的事实是,有了这些模型,我们可以考虑更加形而上的东西,比如为什么物体受力会运动、做什么运动。有三个时态,受力前、受力瞬间、受力后。受力前,为啥
2021-04-07 00:57:30 200
原创 CTEX中的Win Edt xx过期,总是弹框的解决方法
由于要编辑中文的tex,尝试了几个不同版本的CTEX,结果够没有解决中文编译错误的问题,还将原来不会过期的Win Edt 7环境破坏了,导致恢复到原来的版本后,总是提示Win Edt 7过期,要购买授权。试了网上提到的各种解决方案,都无法搞得,比如1、注册机,patch方法,直接无法识别WinEdt.exe。2、修改Exit.edt文件,加入删除注册表项的操作,不成功。但是这是搞成功的基础,网上有...
2018-05-23 17:39:28 2423
原创 CentOS6.4 + OpenCV2.3.1 + ffmpeg0.8 + Codeblocks
在CentOS6.4 下安装OpenCV2.3.1和ffmpeg0.8,IDE使用Code::blocks,详细配置过程。
2014-05-08 21:53:46 1672
原创 使用opencv开发视频播放器一
最近由于项目需求,要在界面中内嵌一个简单的视频播放器,能够打开视频,逐帧播放,进度条拖动等功能。因此,首先尝试使用opencv编写。原因:1、便于后续处理;2、opencv提高的接口较完善。很快就动手写出了一个;基于OpenCV的视频播放器。#include "stdafx.h"#include #include #include #include #include
2013-12-26 13:00:19 3978 4
原创 透过表象看本质!?之三——Kalman滤波
古人每遇到重大活动,都会卜上一卦。念几句咒语,抽个签,看看签释,心里大概对所问之事有了个谱儿。再比如,这几天你的左眼皮一直在跳,你想知道这是为什么,意味着什么。你跑去算了一卦。抽签的时候,你心里默念着是不是要捡到钱了等等,结果抽了一个上上签,说你要遇到好事儿。“这几天眼皮跳”是你的观察数据。“你想知道未来会发生什么”是我们想要预测的东西。抽签的时候你心里默念的话,签儿,签上的符号和某些事件的对应关系,这些都是预测的算法。虽然占卜的过程包含了观察,有预测算法,有预测结果,同时也有结果的方差范围等等。但是我们说
2013-08-29 01:01:46 2819 16
原创 透过表象看本质!?之二——除了最小p乘,还有PCA
不同的误差定义,不同的优化目标函数,得出不同的数据分析方法,从最小二乘到最小p乘,再到PCA,看看我们能不能挖掘出数据的模式,让数据自己说话
2013-08-19 16:46:59 1328
原创 透过表象看本质!?
我们能不能根据观察得到的数据发现表象下面的真相?也许能,不许不能,但这并没有阻碍我们大步向前。真相也许就在下个转角。这种不期而遇是对我们的馈赠,just enjoy it。
2013-08-08 00:49:19 2365 3
原创 最近的学习心得
如何关联前后两次检测的物体是同一个物体,当检测器本身就不太靠谱的时候。前段时间斗胆做了做本科的时候想做,但是一直没做的基于差分的轨迹判别。期间遇到的问题是,如何判断前后两次检测的若干个物体间的对应关系,即t-1帧图像的物体i和t帧的哪个物体对应。这个问题再本质一些,就是在说,用什么样的标准判断集合A和集合B中元素的对应关系。候选的判断标准有两种:1、距离类2、相似度类基于距离的判别
2013-06-24 07:22:41 1316
原创 计算机视觉整理备忘
从本科做国创项目开始接触计算机视觉,到今天已有3年多的时间了。从一开始不知道如何下手做开发,opencv环境不会配,到今天写个小功能信手拈来,中间的过程充满了艰辛与快乐,为了将来更好的走下去,我觉得应该回头看看,总结一下自己走的路,看看前进的方向,让一直消化不良的大脑好好消化一下。因此,今天开个头,打算陆续写写,即备忘一下,科普一下,更是重新消化一下,挖掘其中没有来得及发现的知识。
2013-03-28 20:11:20 974 6
原创 五子棋AI设计——从门外到门内不得不说的事儿7
第7天——结7作为一个神奇的数字,许许多多具有特殊意义的事情往往会发生在第7日。作为一个小连载,课程内的五子棋系列就在这里作结吧。从门外到门里,虽然只有一步之遥,但是我们还是走了好几天。简单回顾一下我们的历程:第一天:Naive AI——一个称不上AI的AI第二天:防守,堵堵堵(阴线评估器)第三天:进攻防守,视情况而定(利用阴线评估器的信息来决策)第四天:看
2012-08-10 00:09:57 1210 1
原创 五子棋AI设计——从门外到门内不得不说的事儿6
第6天——评价的准才能胜券在握在博弈类游戏中,都可以使用博弈搜索求解最优解,但是最优解的质量如何取决于评估器的质量,也就是说AI对棋局态势的感知能力。在不考虑时间时,我们可以让AI前瞻若干步直到终局,终局评估器设计起来就很简单,AI胜利给个正1,AI败北给个负1,平局给个0。完全博弈树的叶节点的数量很大,因此产生终局的时间代价是不能容忍的,我们只能让AI前瞻有限步。如何对中间局进行评价,可
2012-08-09 22:45:30 1742
原创 五子棋AI设计——从门外到门内不得不说的事儿5
第五天——可以看得更远,可以思考的更快看得远,胜算更大;看得远,产生的棋局越多,需要判断的状态就越多,AI的思考时间就越长。从游戏性角度出发,我们不仅希望AI能够胜利,更希望它的思考时间在可以容忍的范围内。图1 前瞻1步的博弈树现在的问题是——如何在数量无比庞大的状态中快速的找到最优的走子策略。在博弈搜索中,博弈树叶节点的值为当前状态的得分。如图1所示博弈树中,B节点的值为12
2012-08-09 21:54:09 1982 1
原创 WinDDK基于规则的防火墙设计续
经过两天的摸索和尝试,实现了简单的过滤规则设置,但是还不够完备。先简单总结一下。关于基于规则的防火墙设计中的数据流动上次已经说明过了,但是有些问题。首先,规则设置客户端、驱动层和中间层是3个平行的层次,如果不是数据交换,三层其实是没有必然关联的。我在中间层加入了规则队列,初始化的问题一直没搞明白,所以最初的想法是启动用户界面后和驱动层交互时,然后进行中间层规则队列的初始化。但是,事实证明这是不
2012-06-20 13:02:12 905
原创 使用WinDDK开发个人防火墙
这学期选修的实验课程计算机安全实验中,有一个实验是使用WinDDK开发个人防火墙。最近终于有时间写了,一上手还是很吃力的。在小红、飞仔和涛哥的帮助下,我算是入了门。先整理一下开发思路:WinDDK是一个驱动层面上的开发套件,方便程序员进行驱动开发。本次开发使用的是WinDDK 6001.17051,开发环境WinXPSP3虚拟机 + vc6.0。使用的模版是\network\ndis\pa
2012-06-18 13:55:28 1147
原创 五子棋AI设计——从门外到门内不得不说的事儿4
第四天——看得远胜算更大经过三天的不断改进,我们的AI算是入门了,如何提高呢——高人指点说,“看得远,胜算才能更大。”道理确实如此,高人所说的“看得远”就是前瞻了,如何前瞻呢?前瞻之后如何决策?先说说什么是前瞻吧。前瞻就是把所有可能的局面都推算出来,然后给每个局面打个分,从中选出一个最有利于自己的走法来作为当前的走法。但是如何选择呢?为了方便说明问题,我们先以3x3的棋盘为例。以图1来说说
2012-06-18 00:08:54 1879
原创 五子棋AI设计——从门外到门内不得不说的事儿3
第三天——进攻防守,视情况而定在第二天,AI可以防守了,但是我们设计AI绝对不是为了让AI被动挨打,而是适时地主动出击。那么,是时候回答第二天的遗留问题——什么条件下进攻,什么条件下防守?第二天,我们提出了阴线评估函数的概念,并且成功的利用阴线评估函数指导AI进行防守。那么是不是需要一个新的什么函数来指导进行呢?好吧,在试图构思这个新函数之前,让我们再看看阴线评估函数。在阴线评估函数中
2012-06-16 00:02:20 1612 2
原创 SP之问——经典
设有两个自然数X,Y,2S:我确信你不知道这两个数是多少,但我也不知道。P:一听你这句话,我就知道这两个数是什么了。S:我也是,现在我也知道了。现在你能通过他们的话推断出这两个数是多少吗?(当然,S先生和P先生都是非常聪明的。)第一句话的分析S先生第一句话,“我确信你不知道这两个数是多少,但我也不知道。”那么,在什么条件下S先生能够确认P
2012-06-10 17:35:37 1163
原创 五子棋AI设计——从门外到门内不得不说的事儿2
第二天:防守,堵堵堵为了提高对五子棋游戏的感性认识,我又在网上找了几个写的很好的五子棋游戏,与电脑进行了若干次对弈。作为一个门外汉,防守总是最好的选择。那么在什么条件下防守,在什么位置防守,这些位置如何确定……在这一系列的问题的驱动下,我开始学习模拟对象的AI部分。首先我选择了总是防守,所以在这一天,我的第一个问题解决了。那么在什么位置放手呢?之前定义了棋盘用points[i][j]表
2012-06-08 11:42:19 2084
原创 五子棋AI设计——从门外到门内不得不说的事儿1
这学期选了人工智能原理,上课的时候完全没搞懂老师要讲什么,所以听课听得云里雾里的,幸好有几个小实验,可以帮助理解人工智能的精髓。第一个实验就是基于带alpha-beta剪枝的MinMax搜索的五子棋AI设计。好久没有写过MFC界面了,所以在pudn上down了几个例程,测试了一下,选了两个比较规范的工程作为开发的基础。第一天:Naive AI——一个称不上AI的AI比对着选好的工程进行
2012-06-08 09:48:35 2825 1
原创 mpich2的安装与配置
0、win7+vs2008+mpich2-1.41、对于windows系统,在网上找个.msi的mpich2的安装包直接安装就好了。2、之后在vs2008里配置编译环境在tools->options->projects and solutions->vc++ directories里,在include和lib下添加mpi的目录3、在自己的项目中右键项目名,选择propertie
2011-12-24 15:40:59 1082
原创 手写识别3
之前两个版本的代码中,犯了个低级错误,分类条件错了……将其修正后,程序的识别率提高了一些……昨天向老师讨教,老师点评道,利用图像分块提取平均像素值,将其作为输入训练网络存在太多问题,不仅仅是平移和旋转的问题。晃得想起之前提到的基于笔画的识别,它对于手写字体的平移、缩放、笔画粗细都不敏感。细细想来原因在于,手写文字过程对应的是一个骨架,而产生的字符图像只是一个表象,丧失了手写过程的笔画先后信息。
2011-11-29 23:26:40 1176
原创 手写识别2
经过昨天晚上的努力,自己把最简单的单层神经网实现了,可是误差不收敛,会剧烈震荡,没搞定。今天早上修改了学习速率,结果就能收敛了,而且能识别部分手写字母。还有就是学习的部分收敛条件或者说是终止条件很纠结。介于简单网络的识别效果,我觉得下一步应该改进训练样本的数量,现在每一类只有一个训练样本,出现分类错误的可能还是很高的。下面是学习和识别部分的代码:计算误差的函数 pub
2011-11-27 11:40:14 1225
原创 手写识别1
最近想自己写个手写识别的小程序,然后又可能的话再试试数学公式识别什么的,所以周末腾出时间写了些代码。照例先在网上找了找有没有现成的实现,发现了这篇文章http://blog.csdn.net/hellogv/article/details/5526284。把博主的代码下载下来,调试了一下,发现基本功能实现了,但是性能很一般,决定在此代码的基础上继续我的工作。上面文章中的代码只是简单的比对当
2011-11-26 14:58:07 766
原创 让程序跑在没有相应的编译环境下的解决方法
<br />最近一直被一个问题困扰,如何让自己编的程序在没有相应编译环境的机器上跑起来。<br />经过opencv中文站的高人的指点,我查了一下manifest。可是未果。<br />后来硬是把程序拷到一个没有相应环境的机器上运行,通过查看事件查看器,找到缺少的文件,然后一个个拷贝。一开始是opencv相关的dll文件。后来是vc2008相关的dll文件。这是‘应用程序配置问题’解决了,开始报‘应用程序正常初始化失败’。<br />经过搜blog,发现问题关键就是manifest文件。成功找到,这几个文件
2010-08-22 00:10:00 641
原创 校赛——填充数字串——分析
填充数字串Problem Description小明最近对数字很感兴趣,整天对着数字发呆,今天想到一个奇妙的问题很兴奋,但百思不得其解,现在他向你寻求帮助。给定两个只包含数字[0..9]的数字串(不含前导0),求使用第二个数字串中的数字插入到第一个数字串中,使得插入后形成的第一个数字串中每两个相邻数字间的差值绝对值的和最大。注意:第二个数字串中的每个数字只能使用一次;不能插入到第一
2010-05-17 22:32:00 813 1
原创 校赛——填充数字串
#include "stdio.h"#include "string.h"#include "windows.h"int partition( int * a, int * pos, int p, int r ){ int x = a[p]; int px = p; int i = p, j = r + 1; int temp; while ( 1 )
2010-05-17 22:23:00 660
原创 Nimbuzz使用心得
这几天一直在实验如何在我的手机上登录GTalk,原因很简单CSDN给配了一个很实用的小助理。通过GTalk给这个小助理发送指令可以得到一些回复,还可以通过它更新状态。 如此分析,现在的问题就是如何在手机上登录GTalk。我试用了好几个手机端的IM软件,包括Morange、GoTalkMobile、GTalkMobile、talkonaut,都不能登录。最夸张的是GoTalkM
2010-03-24 19:19:00 2152
原创 C++实现基础图像处理
最近在做项目,开始接触数字图像处理方面的东西。一时兴起,结合数字图像处理的基本知识和opencv的基本了解,写了一个数字图像处理基本类。类里实现的功能见代码。 环境:vs2008 + opencv 头文件EDIP.h (Enjoys Digital Image Processing)////////////////////////////////////////////功
2010-03-04 11:34:00 1611
原创 C++实现的马赛克类
年前在一个网站上看到一个项目,对视频流进行时时打码处理,很有意思。本人利用过年时间写了个C++实现的马赛克类,娱乐一下。 环境:vs2008 + opencv2.0头文件Mosaic.h////////////////////////////////////功能:对图像进行马赛克处理//作者:enjoy//时间:2010年02月16日//版本:alpha
2010-03-04 10:55:00 3847
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人