SLAM 笔记 4:定位

最后一周讲定位 (localization),也就是 SLAM 里面的 L。主要包括粒子滤波和迭代最近点。

阅读全文 →

SLAM 笔记 3:地图

这一周的内容和地图有关,最后的作业就是通过传感器的数据创建一个地图。

阅读全文 →

SLAM 笔记 2:卡尔曼滤波

这一周主要讲卡尔曼滤波 (Kalman Filter),视频讲得比较简略,slides 做得里也有不少错误。最后看了一些其他网站的文章和视频才有了比较深刻的理解。参考资料推荐在本文结尾。

阅读全文 →

SLAM 笔记 1:高斯分布

最近宾大在 Coursera 上开了一个机器人系列课程,包含了视觉、运动规划、机械设计等课题。我对 SLAM 很感兴趣,于是就选了 Robotics Estimation and Learning 这门课,课程主页是https://www.coursera.org/learn/robotics-learning/。第一周的内容是高斯分布。

阅读全文 →

Sous Vide 低温慢煮龙虾

Prime Day 的时候入了一套 Sous Vide (真空低温烹饪,读作 soo veed)装备,周末在家尝试了龙虾,味道很不错。

阅读全文 →

线性代数笔记

最近抽空把线性代数重新过了一遍,整理了一份概念笔记,希望对别人也有用。主要参考了同济大学的《线性代数》和 《Deep Learning》 的第二章。 行列式 行列式 (determinant) 与它的转置行列式相等。\(D^T = D\) 余子式 (minor):在 n 阶行列式中,把 \((i, j)\) 元 \(a_{ij}\) 所在的第 \(i\) 行和第 \(j\) 列划去后留下的 \(n - 1\) 阶行列式叫做 \((i, j)\) 元 \(a_{ij}\) 的余子式,记作 \(M_{ij}\) 代数余子式 (cofactor) \(A_{ij} = (-1)^{i+j}M_{ij}\) 行列式按行展开:\(D = a_{i1}A_{i1} + a_{i2}A_{i2} + \cdots + a_{in}A_{in}\) 行列式按列展开:\(D = a_{1j}A_{1j} + a_{2j}A_{2j} + \cdots + a_{nj}A_{nj}\) 克拉默法则 (Cramer’s rule):如果线性方程组的系数行列式不等于零,那么方程组有唯一解 \(x_1 = \frac{D_1}{D}, x_2 = \frac{D_2}{D}, \cdots, x_n = \frac{D_n}{D}\), 其中 \(D_j\) 是把系数行列式 D 中第 j 列的元素用方程组右端的常数项代替后得到的 n 阶行列式。 矩阵及其运算 伴随矩阵 (adjugate matrix) \[ adj(A) = \begin{bmatrix} A_{11} & A_{21} & \cdots & A_{n1} \\ A_{12} & A_{22} & \cdots & A_{n2} \\ \vdots & \vdots & \ddots & \vdots \\ A_{1n} & A_{2n} & \cdots & A_{nn} \\ \end{bmatrix} \] 其中 \(A_{ij}\) 为代数余子式 阅读全文 →

智能家居之实践篇

装修了半年多,两个月前正式入住,可以开始好好折腾智能家居了。现在用的一些方案和之前写的智能家居之计划篇差了不少,于是有了这篇博客聊聊现在的设计。这里直入主题,之前的计划篇里有更多的背景介绍。

阅读全文 →

智能家居之计划篇

二月中旬开始装修房子,做了不少智能家居的研究,分享一下。坐标湾区,项目目前还在计划和购买阶段,欢迎拍砖,欢迎种草。

阅读全文 →

本地 Markdown 预览工具

最近一直用 iA Writer 做笔记,用不同的文件保存不同的主题,由于 iA Writer 并没有很好的管理和浏览功能,于是就想做个 Web 工具方便浏览和管理。

markdown-wiki 是我用 Sinatra 做的一个简单的预览工具,它可以把某个目录下的 Markdown 文件以 Wiki 的形式呈现出来。界面上借用了 Ghost 的 CSS,可以在 http://markdown-wiki-demo.herokuapp.com/ 预览(因为是非本地的内容,上方的 Edit 按钮没有作用)。

Markdown 语法方面,由于用了 redcarpet 所以有不少语法扩展,包括代码块、删除线、下划线、上标等,另外包含了 Wiki 内部链接支持。

阅读全文 →

用外接 PC 键盘控制 Mac 音量

写了个 Alfred 插件,用于外接 PC 键盘控制 Mac 的系统音量。

阅读全文 →