今天七夕节诶。。我们居然四条基佬(绪哥,白菜,王子屯phd)外加一个妹子(队长)去打日本麻将。。。。而且我们下午开始打,晚饭买了单去一家客家菜馆吃了晚饭,回去还继续打,不知道作为那里的服务员是作何感想。。
五个人四人打,所以我们是打半庄,最后一名换。
然后,我们见证了奇迹与魔法的存在!!
那一局我正在“下场”中,可以观战,到了南四局,绪哥作为最后一名,落后倒数第二名的队长15000分左右,而且队长还是庄,也就是说除非队长赢了从游戏才可以继续下去,否则这局过后就终局换人了。
一局要扳回15000分,绪哥果断上了!!
拿到的起始牌很乱,作为观战者的我表示基本没戏
但是吃了上家队长两次,分别是123万和789万,自己手上是45万 阅读全文…
额,好吧,发现SanJigen这个Categoriy好久没更新了,果然我的心思都是在编程和二次元上的。。
诶,最近好像接触的三次元的东西就两个,一个是一部老电影《Gattaca》,中文名叫千钧一发,这个翻译感觉就是把Matrix翻译成黑客帝国一样,好吧,不吐槽这个名字了,其实这是一部好电影,一部好的励志电影,讲述在一个基因决定论的世界里面,男主“身残志坚”,一直梦想着登上宇宙飞船,从小就好好学习,但是显然那些基因论的上层不会看好他,后来男主,哦,男一号遇到了一个身残志不坚的男二号,这个男二号呢,其实基因好到变态,各种指标都是开挂型的,但是发出了车祸,双脚废了,于是他出租他的身份给男一号,其实就是交换身份,通过各种作弊手段混进“航天局”,即将取得升天资格,但是却发生了一件谋杀案,然后事情就变得很复杂了,虽然这样,主角光环嘛,最后还是成功升天了,嗯,故事就是这样,挺好看的。。。
额。。。细心的读者,发现我跑题了么?? 阅读全文…
隐马尔科夫模型(Hidden Markov Model,HMM)是机器学习中一个极其重要又有效的方法,说到隐马尔科夫模型,就要先说一下马尔科夫过程,马尔科夫过程指的是一个东西,它有N种状态,而在时刻T的状态只与前面的k个状态有关,k≥1,称之为k阶马尔科夫模型,我们一般讨论的都是k=1的情况。这里要说明的是,假设k=1,下一个状态只与上一个状态有关,但是并不是上一个状态确定了,下一个状态就确定了,而是下一个状态有多种情况,而具体出现哪一种情况是一个概率事件,这个概率决定于上一个状态是什么。比如说天气问题,假设第二天的天气只跟前一天的天气有关,但是今天下雨,明天的天气可以是90%下雨,10%晴天,而今天晴天,明天可能20%下雨,80%晴天这样。
我们可以知道,一个一阶马尔科夫模型主要由初始状态概率分布π,状态转移矩阵A和状态数目N组成。初始概率分布就是t=0的时候各个状态出现的概率,状态转移矩阵就是每个状态下之间转换的概率矩阵,状态数目就是有几个状态。
那什么是HMM呢?一个很经典的例子,我们有很多个不同的盒子,每个盒子了里面都有很多不同颜色的小球,这些盒子我们称之为状态,每次我们只能选定一个盒子,t=0的时候每个盒子都有一定概率被选中,假设随机选了某一个盒子,然后我们就从盒子里面随机挑出一个小球,然后我们根据盒子的状态概率转移矩阵挑选出下一个盒子,然后在下一个盒子里面再随机挑出一个小球,然后不断重复,隐马尔科夫模型研究的就是这么一个过程。只是啊,在这个过程中我们只能看到每次被挑出来的小球的颜色,而不能知道小球每次具体是从哪个盒子里面挑出来的,盒子(状态)之间的转换过程是隐藏的!! 阅读全文…
这个程序是一个很小的,很容易写的小程序,今天整理时无意中翻到,放上来看一下吧。
程序是这样的,不知道大家听过没,有些街边算命的,有一些人说可以猜出你姓什么,然后就给你看几张纸,每张纸上都写满了各种百家姓,然后你只要告诉他哪些纸上有哪些没有,然后他就可以马上“猜出”你姓什么。
我第一次接触到这个“魔术”是在小学看一本小学四年级的奥数书上,上面开始讲解进制的概念,然后出了道题,说老师让学生心里默想一个1~100的数,然后给他看若干张纸片,问他每张纸上有没有他内心想的那个数,然后老师就可以知道那个数是什么。题目让你讲解这个原理。(我一直觉得,这道题出现在小学四年级的奥数题里是不是太难了。。)
现在作为一个大学生,一个懂得何为二进制的大学生,这个手法显然是可以瞬间识破的(不过算命那个还要背一张比较大的数字→姓氏的表。。) 。
然后下面那个程序就是模拟这个猜数的过程的。一点都不难。
不过我现在仍然记得当时写这个程序时出现的唯一的一个麻烦,就是当时算log2n来计算需要多少张纸的时候,需要算出log2n取整,但是当n取8的时候,理论上应该是得到3,但是计算机算出来的是2.9999999…,然后取个整,变成2了,最后研究了一下,只好计算log2(n+1)来解决问题。。 阅读全文…
以前在华工读书的时候,我一直觉得,怎么感觉周围别的学校比我们都要好(额,我所讨论的完全不考虑学术水平!!)北区宿舍去教学楼那段路看起来就是穿过一个工厂,图书馆不管是内在还是外在(还是不讨论里面藏书的状况),好像广东随便一所大学都比我们的漂亮(当然图书馆说的是北校的,当初就是因为看过南校那个那么漂亮的图书馆才觉得这里北校的有多差,再看看别的学校就更加不想比了。。),比起暨大的那些湖,华工四个湖,一个完全干了,北湖是不是散发出臭味,西湖当年一直是干的,后来才有水。
一直抱着这种想法的我真是太天真了!!就是因为我被这些缺点蒙蔽了狗眼,才看不到自己母校的好,直到来浙大这边读书,我才知道原来还是那边适合我这种人居住。(当然本文还是完全不讨论学术水平的是,学校的学术水平怎么样,我还真不太关心。。额。。)
一直住着北三的我为什么从来感觉不到北三是一栋多么好的宿舍。。。。
阿姨多么好说话,这边的阿姨才不理你呢;
来到这边看到地板才知道,啊,原来北三的地面瓷砖那么好的啊~
这边那么多宿舍都是大澡堂,公共厕所,没有阳台的,北三的阳台风景多么好,上可看天下可看球,养花什么的多么方便~这边上个WC都要跑那么远,半夜上趟厕所开个门还要爬惊醒舍友,厕所开大开小都是敞开的那种,高度也就到我胸部?初来咋到表示还是不是很适应。
没阳台自己买洗衣机都没地方放啦!! 阅读全文…
要说我玩过的最好玩的一款塔防游戏,我现在为止肯定会说是PTD(全称见题目),虽然别的一些塔防游戏也是各种神奇的配置,巧妙的搭配,可玩性很高,但是神奇宝贝这种在我们心目中显然有加成~
阅读全文…
今日玩了一个叫做《死兔》的国产游戏。创意嘛,其实还一般,就是变化版的扫雷游戏。
规则大概是这样的,在一个方格布局的地图中,你需要从你开始的那个起始点那里,找到一条路到达指定的唯一终点,路上会经过一些有数字标记的格子,这些数字的意义就是说这个格子上下左右四个位置中安全区域有多少个(看嘛,就是变化版的扫雷嘛。。),然后你需要用逻辑推理来找到那条路。如果单单是这样就没什么难得了,但是随着剧情的发展,你可以控制四只兔子,每个兔子在寻找地图的出口的时候都拥有各自的能力,一只可以标记做过的安全路,一个可以在危险的路上做记号(这两个没什么,只要记忆力足够好,就和没用差不多了,虽然实际上会很有用。。),另外两只一直可以瞬移,一直可以通过一小段危险区域。以上,规则!!
阅读全文…
opencv中的结构体cvCreateVideoWriter支持视频写操作,它的定义如下:
CvVideoWriter* cvCreateVideoWriter ( const char* filename, int fourcc, double fps, CvSize frame_size, int is_color=1 );
filename 输出视频文件名
fourcc为 四个字符用来表示压缩帧的codec 例如:
- CV_FOURCC(‘P’,’I’,’M’,’1′) = MPEG-1 codec
- CV_FOURCC(‘M’,’J’,’P’,’G’) = motion-jpeg codec
- CV_FOURCC(‘M’, ‘P’, ‘4’, ‘2’) = MPEG-4.2 codec
- CV_FOURCC(‘D’, ‘I’, ‘V’, ‘3’) = MPEG-4.3 codec
- CV_FOURCC(‘D’, ‘I’, ‘V’, ‘X’) = MPEG-4 codec
- CV_FOURCC(‘U’, ‘2’, ‘6’, ‘3’) = H263 codec
- CV_FOURCC(‘I’, ‘2’, ‘6’, ‘3’) = H263I codec
- CV_FOURCC(‘F’, ‘L’, ‘V’, ‘1’) = FLV1 codec
- 若为 -1,则运行时会弹出一个编码器选择框
fps 被创建视频流的帧率。
frame_size 视频流的大小。
is_color 非零则为彩色编码,否则输出为灰色帧
示例代码及其注释如下: 阅读全文…
横线:<hr />
框起来:
<div>
<table border=”1″ cellspacing=”8″>
<tbody>
<tr><td>aa</td></tr>
</tbody>
</table>
</div>
<span style=”color: #ff00ff;”>
</span>
跳转到本页的某一位置:
在该位置处添加标记:<a name=”XXXXX”></a>
然后链接为:<a href=”#XXXXX”>”链接描述文字”</a>
例如:跳到双线框处!
实线框:
<div style=”border-width: 1px; border-color: #ff0000; border-style: solid;”>TODO
TODO</div>
TODO
TODO
背景颜色:
<pre style=”background-color: #c3d9ff;”>背景为蓝色</pre>
背景为蓝色
阅读全文…
在做网络编程的时候,如果是在公司里面做项目,经常需要做联调。假如你做的是后台,在项目中就要和前台的服务器进行联调,前面收到一个什么操作,然后就向你后台发一个TCP或者UDP包,调试是一个多个人的工作,如果前面发过来一个包没错,但是你这边解包或者别的逻辑上出了点问题,那么当你修改编译完你的代码后你又要跟前台说“你再发个包给我吧”,这样是很麻烦的,如果能先自己模拟前台发过来的包,这样就可以自己给自己发包测试解包或者别的逻辑什么的,知道自己这边没什么问题了,再跟前台正式联调一次,这样不仅效率可以更高,而且,方便你我他~
要怎么模拟前台发包呢?有个方法,就是先用TCPDUMP监听端口,遇到前台的包就重定向到一个txt文本中。一般tcpdump拿到的包格式就像下面这个那样。上面有IP,端口,时间,UDP还是TCP,数据包的长度等信息。
13:56:37.898494 IP 10.130.68.226.51851 > 10.130.92.40.8791: UDP, length 311
0x0000: 4500 0153 0000 4000 3d11 868c 0a82 44e2 E..S..@.=.....D.
0x0010: 0a82 5c28 ca8b 2257 013f 6ea5 0a01 3700 ..(.."W.?n...7.
0x0020: 0505 c041 ac4f ff00 0000 6570 6f63 686c ...A.O....epochl
0x0030: 6975 0000 0065 706f 6368 6c69 7500 0000 iu...epochliu...
0x0040: ac19 642e 6d69 6372 6f62 6c6f 675f 7365 ..d.microblog_se
0x0050: 7276 6900 ffe2 defe 0000 2da9 00d3 8f32 rvi.......-....2
0x0060: 4300 0000 006d 6963 726f 626c 6f67 5f73 C....microblog_s
0x0070: 6572 7669 6300 41ac 4fff 0000 0000 0000 ervic.A.O.......
0x0080: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0090: 0000 0000 0000 0000 0000 0000 0015 0258 ...............X
0x00a0: 0000 0000 0a00 06b1 e122 f03b 4a00 0000 .........".;J...
0x00b0: 0000 0000 0012 0000 0000 0000 0000 0000 ................
0x00c0: 0000 0600 0200 0402 0012 004e 2100 3ce5 ...........N!.<.
0x00d0: 8a9e e79a 84e5 a5bd efbc 8ce6 9c80 e5a5 ................
0x00e0: bde5 88b0 e4bd a0e8 87aa e5b7 b1e5 aeb6 ................
0x00f0: e58a 9ee5 8ebb efbc 8ce4 bb80 e4b9 88e7 ................
0x0100: 8ea9 e684 8fe5 84bf efbc 9f00 0a00 1800 ................
0x0110: 0002 650b cfad ea25 12fe 6500 0002 650b ..e....%..e...e.
0x0120: cfad ea25 12fe 654e 2300 0800 0141 ac4f ...%..eN#....A.O
0x0130: ff00 0100 6600 1100 0003 f000 0000 0000 ....f...........
0x0140: 0000 0000 0000 0000 7530 0006 0100 0300 ........u0......
0x0150: 0100 03
拿到这个文档之后,我们只要解析这个文档,把包的数据复制出来,自己给自己发就行了。 阅读全文…