0%

1. 概述

有时候,我们需要使用Matplotlib库强大的绘图函数来在numpy.ndarray格式的图像上进行一些可视化,比如关键点绘制,投影点绘制。绘制完后,还需要把matplotlib的figure对象转换为numpy.ndarray 格式的对象,方便和原图进行比较。有时候为了可视化的美观,需要验证保证转换后的图像与原始图像大小一致。这里记录一下操作的流程,以及一些常遇到的问题。

阅读全文 »

1. 概述

在 Git 提交一个文件的时候,有时候会在同一个文件中,包含两个不同功能的修改,或者一个功能完成了,而别的部分还没有完善不应该进入代码库,这时候如果使用git add file-name的话,会将这个文件中的所有更新都提交,达不到上述的需求。针对这种场景,git 提供了更细粒度的提交命令git add -p,可以分部分提交一个文件中的更新代码块,实测能满足常见的需求。这里简要记录一下如何使用这个命令。

阅读全文 »

1. 概述

VitPose是最近出来的一篇用Transformer结构做人体2D关键点估计的论文,采用比较简单的Transformer结构就能在MS COCO 测试集上取得比较好的结果,挺吸引人的。论文不长,这周末读了一遍,感觉值得借鉴的地方挺多,这里我用自己的语言描述论文的细节,同时把自己的一些疑惑和思考写下来,欢迎讨论交流。

论文标题: ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
论文地址:https://arxiv.org/abs/2204.12484
代码地址:https://github.com/ViTAE-Transformer/ViTPose

注:本文中框图和表格均来自原论文。

阅读全文 »

1. 概述

上学的时候,有一次听boj师兄介绍博客,至今还记得讲座中的一句话,博客能提高获取信息的信噪比。

在今天网络和社交媒体信息严重过载的情况下,如何集中自己的精力,将时间花到有用的事情上,进而提高工作效率,对我们每个人来说,都很有挑战。

为了获取真正有用的信息,第一步是过滤信息来源。最近发现基于RSS的信息获取方式是比较高效的,这里大致描述一下我目前采用的信息获取方案。

阅读全文 »

更新 (2023-09-29)

利用f-string可以简化当前日期str的构造,不需要使用strftime等函数了:

1
2
3
4
5
6
7
8
from datetime import datetime

now = datetime.now()

str1 = f'{now:%y-%m-%d-%H:%M:%S}'
str2 = '{:%y-%m-%d-%H:%M:%S}'.format(now)
print(str1)
print(str2)

输出入下:

1
2
23-09-29-09:50:07
23-09-29-09:50:07

1. 引入

我有一个朋友,某天突然问我:你知道下面的Python语句什么含义,结果是多少吗?

1
'{:😄^+#20_x}'.format(12345)

我一看,十脸懵逼,吓得赶紧学了学Python的Format字符串的用法,总算明白了这个语句的含义。你想了解这个语句到底是什么鬼吗,欢迎跟我一起学。

阅读全文 »

在使用Python的时候,大部分时候引入包,都是通过import 语句,比如import numpy as np。有时候为了更复杂的需求,我们需要用程序化的方式来引入包 (Programmatic Importing), 比如根据输入不同,选择执行两个不同包里面的同名函数,这时候就需要用到importlib这个库了。这里先从一个简单例子开始,逐渐深入地讲一下这个库的用法。

阅读全文 »

  • Deep Learning
  • Translator

在知乎上偶然看到了一个基于深度学习的翻译器DeepL,实际体验了一下,确实发现比Google Translate, 百度翻译等工具好用,因此最近抛弃了之前的翻译工具,开始往DeepL切换,毕竟在阅读英文内容的过程中还是有很多单词和词组的意思不了解。最近在阅读DeepMind的一篇文章的时候,看到一段有意思的话,对比了一下,发现DeepL真的比竞品厉害,更加加速了我抛弃之前工具的速度。具体什么例子呢,如下细说。

阅读全文 »

今天中午看到Pytorch的官方博客发了Apple M1 芯片 GPU加速的文章,这是我期待了很久的功能,因此很兴奋,立马进行测试,结论是在MNIST上,速度与P100差不多,相比CPU提速1.7倍。当然这只是一个最简单的例子,不能反映大部分情况。这里详细记录操作的一步步流程,如果你也感兴趣,不妨自己上手一试。

阅读全文 »

RAII,全称 Resource Acquisition Is Initialization,中文翻译为资源获取即初始化。这是C++中一个比较不直观的术语,而RAII的缩写也时不时遇到,总给人一种很高深但不易掌握的感觉。实际上查了资料后发现,RAII这个技术的含义其实比较明确,这里简单汇总一下从资料中的得到的知识点。

阅读全文 »