大象笔记

知者行之始,行者知之成

越勇敢越青春:经营之神写给年轻人的热血启示

晚上看完孩子,感觉无比疲惫,实在不想去继续调图像识别的参数了。可能习惯了简单粗暴的 CRUD 代码,遇到需要分析,调参的项目就没有耐心。 也罢,就当给大脑放个假,元宵节放松一下,把春节假期看完的松下幸之助《越勇敢越青春:经营之神写给年轻人的热血启示》整理一下读书笔记。 为何要读这本书 年终阴差阳错得了个集团优秀员工的奖,有幸跟二老板在一桌吃了顿饭。席间,二老板讲了个故事。大概就是,他们年轻时候刚毕业进入一家企业(年代比较久远,他们年纪比较大),由于大老板痴迷于松下的企业文化(我也记不清具体是不是松下了,但肯定是一家日本公司),所以在公司的厂区里贴满了松下的文化标语,类似效率之类的。有一次,一个 ...

阅读全文...

OpenCV 图像阈值转换,灰度图变为二值图

thresholding (阈值转换) 名词,中文翻译为: 阈值转换法;阈值。 image thresholding,这个词看起来比较抽象,但是结合使用场景,就非常好理解了。 其用在, 将灰度图转换为二值图。 二值图像是指仅仅包含黑色和白色两种颜色的图像。这种格式下,可以把一张图片理解为只包含 0 或 1 (255) 值的二维矩阵。 灰度图 (grayscale image) 将灰度处理为256个灰度级。而不是简单的 0 或 255 两个值。 而有了二值图,就可以方便的进行自动绘制轮廓。所以,图片阈值转换操作非常有价值。 image thresholding 的三种方法 simple t ...

阅读全文...

Vim 编辑 markdown 侧边栏显示 toc 二级标题目录

最近在写的 markdown 文档越来越长,文档一长就显得杂乱无章。 如果能像 word 一样,在侧边栏显示各级标题,结构能清晰不少。 而且,我也只用二级标题,应该更清楚才对。 vista.vim 虽然 vista.vim 主要用于代码文件的函数、变量、类列表展示。 但是其内置了 markdown 的子标题的展示功能。看了一下截图效果非常好,于是决定试一下。 https://github.com/liuchengxu/vista.vim 安装 vista.vim 如果用的 vundle, vimrc 中配置; 用 Neovim 修改 init.vim Plugin 'liuchengxu/vi ...

阅读全文...

python 代码格式化工具 black,类似 gofmt

从网上下载了一段 opencv 的 python 代码,代码风格异常粗放豪迈,不到 100 行的代码,几十处 pep8 格式警告。 手动改起来,太累了,所以想找一个类似 golang gofmt 那样的代码格式化工具,能一键搞定搞定。 方案一:YAPF Google 出品,类似 gofmt 的理念。可以定制化配置。 https://github.com/google/yapf 方案二:black 但是从 github star 数来看,black 这个格式化工具更流行。YAPF 13k star,black 39k star。(2024-12-07) https://github.com/ps ...

阅读全文...

Neovim 配置 UltiSnips

安装完成 Neovim 之后,我首先要保证 UltiSnips 插件能够正常使用。 其他插件可以后面慢慢改,但是如果不能使用 snippet 我基本就失去了写代码的能力。 最终效果: Vim 配置文件迁移到 Neovim 基本原则 If you wish to migrate your existing Vim configuration to NeoVim, simply copy your ~/.vimrc to ~/.config/nvim/init.vim. UltiSnips 自动提示框不见了 打开 Neovim 之后,发现基础的 UltiSnips snippet 是可以用的 ...

阅读全文...

Ubuntu 安装 Neovim

GitHub Copilot 支持了 Neovim,但是没有支持 vim。所以,我决定试一把 Neovim。折腾了一天,也仅仅是安装完成,而要兼容之前的 Vim 配置,还遥遥无期。。。 进入正题,在 Ubuntu 18.04 上,我尝试过 3 种方式安装 Neovim 尝试过的安装方式 失败:直接下载编译好的 nvim-linux64.tar.gz。但是运行后,会报错找不到 lua 失败:源码编译安装。make 时会大量从 github 下载,网络问题会超时失败 成功:apt install。唯一成功的方式 apt install Neovim 参考 https://github.com/ ...

阅读全文...

安装 tmuxp 替代 tmuxinator

为何要抛弃 tmuxinator tmuxinator 升级需要升级 ruby 升级 ruby 需要安装 rvm 安装 rvm 又需要更新 gpg 然而 gpg 更新永远连不上服务器 我对 ruby 升级的麻烦程度感到了无比的厌恶,而我电脑上唯一需要用到 ruby 的地方就是这个 tmuxinator。 $ sudo gem install tmuxinator Fetching: thor-1.2.1.gem (100%) Successfully installed thor-1.2.1 Fetching: xdg-2.2.5.gem (100%) Development of thi ...

阅读全文...

提升 Tmux 状态栏颜值

看了一段日本小哥的写代码视频,发现里面的 terminal 配置非常漂亮。 既然每天都要在 tmux 中工作,把界面美化一下还是有必要的,至少心情是愉悦的。 最终效果: 是时候更新一下配置了 现有的 .tmux.conf 文件是 10 年前配置的,之后就没怎么更新过了。 只有偶尔几次升级版本导致配置不兼容,才被动调整了几次。当前效果: .tmux 找到一个 star 16K 的 tmux 配置: https://github.com/gpakosz/.tmux 跟日本小哥的效果非常相似。 查看当前 tmux 版本 上面的 .tmux 配置有最低版本要求 tmux >= 2.3 (s ...

阅读全文...

VIM 配合 Git 替代 SimpleNote 记录笔记

2022 年春节伊始,我几次想打开电脑记录想法,但是都去刷了视频 😅。 究其原因,除了自控力差劲之外,笔记软件不好用也是一大原因。 为什么又要折腾笔记软件? 折腾了一圈为知笔记、网易云笔记、SimpleNote、Notion、Obsidian 等等无数笔记软件,发现没有一个可以长久坚持用下来。 工具是越来越炫,但是却失去了记录的乐趣,丧失了动力。双链、脑图、表格都不过是噱头,纯文本才能让我静下心来思考。 VIM Git 相对 SimpleNote 的优势 SimpleNote 已经非常棒了,简洁实用。可惜天朝网络太恶劣。 由于国内不可抗力的因素,SimpleNote 我用的网页版,打开浏览器 ...

阅读全文...

OpenCV 图像识别/图像处理在线服务的技术选型

说实话单纯看书学习 OpenCV 太枯燥了,看完基本就都忘光。所以,我决定一边看书,一边把通用的图像处理、识别功能做成在线服务。 首先就遇到了技术选型的问题,这里记录一下。 目标 这套后台可以同时支撑 web 网页、微信小程序、APP。 后台选型 在 golang 与 python 的方案之间纠结,但是最后还是选择了 python。原因: opencv 官方文档基本都是 python 和 c++ 的,第一次学习 opencv 就用 golang 有点冒险 python 做图像识别的网上资料相对多很多。我看的几本 opencv 书籍也都是用 python 来讲解的 至于 python 的后台 ...

阅读全文...

2021年终述职报告

好多年没有写述职报告了,用 ppt 写更是第一次。甚至 ppt 怎么编辑都已经忘记了。 为何要记录一下这次述职报告 我觉得这个过程中心态的变化很有趣,有必要做个总结。 起初我觉得这是一件没有意义且浪费时间的事情,所以用了不到五分钟,将各个季度的总结拼凑了一下,就邮件提交了。实话实说,我对别人给我打多少分不太在乎。 但据我们部门领导说,其他部门太卷了,我们提交的ppt完全没有体现优势,所以这事就由个人考评上升为了部门级的事件。确实是这样,ppt 写的太简陋,对部门同事也是一件不负责任的行为。于是,重新编辑,具体就是把开发的解决方案的界面截屏,一个项目一个截屏,贴了一下。 排练、紧张 提前一天,我 ...

阅读全文...

Jetpack Compose Admob 广告不显示问题排查

尝试在 Jetpack Compose 中添加 Admob 广告,参考的是下面链接里的第一种方案 https://stackoverflow.com/questions/68855709/how-to-show-a-banner-ad-in-jetpack-compose 但是,无论是在 Android 模拟器里,还是在真机上调试,都无法显示广告。 日志 2022-01-04 22:37:55.551 6242-6353/com.sunzhongwei.shelflife E/chromium: [ERROR:cookie_manager.cc(137)] Strict Secure Cook ...

阅读全文...