Vim 与 系统剪贴板clipboard

在fedora 17下,刚开始不太习惯vim的时候,也没发现默认装的vim不能使用系统剪贴板这个问题,后来用多了,发现居然不能从vim复制到系统剪贴板,刚开始我还以为我快捷键使用的不对,但试过多次,均不成功。于是乎,在vim中想复制就必须用gedit打开,然后用鼠标类似windows的操作来完成复制操作,对于常用文件夹可能还不觉得有多么烦,但有些路径深的,那就实在是非常不爽!!

命令那么简单,怎么会搞错呢?后来我才发现,原来系统自带的(我的要么是一安装就有,要么就是我用yum安装的)是不具备这个功能的,即"+y不适应。怎样查看自己的vim版本是否支持系统剪贴板呢?通过以下命令,如果clipboard前面是个减号,则说明系统编译时候未加入clipboard这个选项

Read More

刷完leetcode的一点感想

两年前,在实习生笔试的时候,笔试百度,对试卷上很多问题感到不知所云,毫无悬念的挂了

读研两年,今年代笔百度,发现算法题都见过,或者有思路,但一时之间居然都想不到很好的解法,而且很少手写思路,手写代码,有点仓皇失措;概念题却是很难答好,大多我都知道,但却难以描述清楚;最后一题大题,是设计分布式缓存系统,需要考虑负载均衡以及增删设备,我知识面比较窄,居然不知有一致性哈希,于是又跪了

痛定思痛,虽然我明年找工作,若以这样的状态和水平去笔试,面试,难以有什么好结果。

Read More

从图割到图像分割(三)——多层图图割

完整的了解了图割方法处理图像分割之后,在已有的graphcuts开源代码的情况下,接下来就是自己创作的时间了。

如前面所说,图的构建是很有讲究的,何时采用四邻域,何时采用八邻域,何时采用K近邻,再何时采用全邻域?

这些都是很有讲究的,很多人就是在这上面稍加改动,就能发一些顶级文章。不过确实,通过$Maxflow/Mincut$处理图像时,对图的构造是非常敏感的,哪怕是你改动$Tlink$与$Nlink$的比例,都能产生很大的影响。但敏感归敏感,$Maxflow/Mincut$求取的全局最优解,恰是许多研究或能量优化函数中所梦寐以求的。

Read More

从图割到图像分割(二)——图的构造

之前解释了为什么能用最大流最小割算法来做图像分割,其实更为正式的引用,即为众多paper所写的那样,图割其实是用来优化能量函数的,我是从自己的一些体会来写的,因为“能量函数”这东西,太过虚无飘渺,不够直观,不便于理解。

在我了解了为什么能够用过做图像分割后,又有问题困扰我:为什么我们所见到的图构建都是四邻域或八邻域的?为什么不是一个全域图(两两相连)?

这个问题似乎也有很多搞图像分割的大牛注意到了,他们最初或许是在实验中发现四邻域和八邻域已经很好了,但后来他们还是给为什么这样做提供了理论依据

Read More

从图割到图像分割(一)——最大流算法

《算法导论》对最大流的介绍是:最大流问题是关于流网络的最简单的问题,它提出这样的问题:在不违背容量限制的条件下,把物质从源点传输到汇点的最大速率是多少?

更多关于网络流的介绍请看网络流wiki

我最初接触最大流问题是在2011年,那时候我大四,刚保研完,去问导师我需要看哪些方面的书,老板说去把《算法导论》图论相关,以及把最大流最小割算法仔细看一遍。

图论算法在众多算法中算是比较复杂的了,首先读入数据需要构建邻接矩阵,然后再进行求解,求解过程显得并不是很直观。当时我对最大流最小割算法本身就不是很明了,更不明白如何可以应用到图像分割中,现在终于有些体会。

Read More

使用moderncv打造个人简历

本科的时候,简历是word做的,当时觉得做得还不错,也不习惯转为pdf,后面在投递简历的时候居然有时就以word的形式发过去,那时自认好像还不错,居然无知到pdf才是国际的统一标准,word存在各种版本间的问题。

word转pdf自然不失为一种提供pdf简历的方法,但word有很多“自动调整”功能,虽然有时候极大的方便了非技术用户使用,但却非常不方便自己DIY。

恰好近来在写paper,在琢磨了一阵latex,这玩意跟vim差不多,你不用的话,看了再多遍manual都没用,但经常用则很容易理解。

Read More

在Octopress中添加MathJax

有些时候写博客需要用到数学公式,需要对Octopress的设置进行更改,才能较好的完成公式的显示

步骤如下:

  1. 安装Kramdown解析器(因为其对MathJax的支持较好),在GemFile文件中添加gem 'kramdown', '~>0.13.8',保存,执行bundle install 即可;当然也可以用一步命令gem install kramdown;

  2. _config.yml中修改markdown解析器,将markdown: rdiscount 换为 markdown: kramdown,保存,之所以这么做是因为前者对于MathJax的解析不如后者好;

  3. source/_includes/custom/head.html中,加入以下脚本,从而使得MathJax能够被使用:

    Read More

说说我的研一

我一直觉得,一个人如果善于总结自己已经学过的知识,并为自己定制一些目标,可以在接下来的时间里,更有效率的工作。很可惜,我并不是一个善于总结的人,我总是埋头折腾,然而经常回头一看,发现自己走了很多弯路,幸好我有一些比较聪明的朋友,能够给我一些很有帮助的指导。

很多时候,我的生活就像我在电脑面前搜索,我明明在搜索一个问题的答案,但我却很容易被搜索过程中看到的另外的问题吸引过去,最终迷失了已有的方向。

Read More