今天做了这么几件事:读lucas-kanade 20 years on这篇论文,对着IAT的代码理解整个算法的框架。略读了Hyperspectral image restoration using LRMR这篇论文。把《菊与刀》读了一半左右。
Lucas-Kanade
之前的论文里面用到了它,但是因为是照猫画虎自己并不真正理解算法思想,今天仔细地读一下。主要的动机还是直接读TILT的算法代码比较混乱,去看论文里面的模型又不是很懂。
IAT里面对基本的additive算法进行了很好的实现。但是因为实现的过程中掺杂了一些为了性能而采取的向量化操作,使得原算法的框架不再那么清楚。但是整个算法实现仍然要比TILT的代码清晰很多。
这是lucas-kanade的优化目标。想要采用迭代的思想去做,每次迭代更新:
因此:
上式的泰勒展开:
这个泰勒展开让我感到很疑惑。后来经过询问大腿,这个式子实际上是泰勒展开和链式求导法则的应用,只不过因为我高数学渣,加上符号表示的用法问题让我没看明白。实际上这里:
因此在计算时先对 I 求偏导,然后对偏导图像用
∂W∂p 是向量对向量的导数,是一个jacobi矩阵; ∇I∂W∂p 合起来被称为图像的Jacobian。
理解了上面的内容以后其他就没有什么太难理解的。 W 的输出是与 x 一样长度的向量,因此 ∂W∂p∈ℝ2×nop , ∇I∈ℝ1×2 , 这里有个规定,列向量的偏导数一般表示为行向量。这样一切都没什么难理解的了。
总的来说让我感觉很深刻的是,以我目前的水平数学还是必须要抱大腿的。
Low-Rank
之前读Low-Rank的文章,感觉它似乎与Sparse的方法差不多。实际上也都是基于子空间的假设。在数学上来说,最近读的这几篇文章优化目标多数是
||⋅||∗+||⋅||1
,而Sparse的文章绝大多数都是
||⋅||2+||⋅||1
的优化。
这几天的主要想法都是能不能把这些方法引入到我熟悉的问题领域里面来。至于这篇去噪的文章感觉已经做得挺好,不好加什么。今天又看到一篇好文章,是用Low-Rank的方法来识别信号的子空间,这是一种聚类问题。文章声称能够在outlier存在的情况下达到比较好的效果。明天仔细看看这篇文章,说不定能在学习字典的方法中用上它。
《菊与刀》
这本书我读的很快。有些内容我很感兴趣,但是另外一些让我感觉读起来很无趣。让我感觉最有收获的是作者的“视角”。作为一个美国人和人类学家,他能够跳出美国文化,对另一个国家历史、文化进行分析,得出一些有用的结论。我认为这是很难得的。在文中作者对别国文化表示了很大的理解,对自己所处的文化环境也有一定程度的反思。这种看问题的全面角度让我很受震撼。
另外,日本能够在这样有点“匪夷所思”的文化环境中发展了几千年,也让我感触很深。不论是个人或民族,也许都不应去过度追随别人,而要坚定地走自己的路、做符合自己情况的事情,毕竟自己是最了解自己的人。最近读的另一本书《对冲基金到底是什么》也提到,优秀的投资经理常常要做与大多数人相反的事情。