【manim动画】如何求解sinx=2?

记得我很早之前就打算做一些科普视频,奈于技术不行,遂放弃。之前看过3Blue1Brown的视频,作者用他自己开发的数学可视化引擎manim制作动画,感觉效果很棒。发现知乎和B站陆陆续续有很多大佬开始使用manim做动画,于是进了一个manim交流群。开始摸索manim,实际上这个引擎的安装和环境的的搭建还挺麻烦,用manim也需要会Python和\LaTeX,恰好我都会,于是很快上手了。

阅读更多

光标画图程序

写这个程序的缘由是现在疫情期间我们学生在家用在线办公软件上网络课,老师在投屏时学生可以在老师屏幕上“注释”(做记号,写字,画画等),这样可以很好的与老师互动。但是“注释”并不能显示图片,为了达成我的一个骚主意,在老师屏幕上画一个卢本伟,我面向百度编程写了这个Python程序。

阅读更多

第一次剪视频(动漫AMV)

这是我第一次剪视频,其实很早之前就想制作视频了,但是不会剪辑,用过 PR 但是电脑兼容性有问题(恕我直言,我用的是俄罗斯大神的精简版 Win 10),前几天下载了 Blender 这个软件,发现简直是神器,它其实是一个 3D 引擎,能 3D 建模,渲染,制作 3D 动画,视频剪辑,甚至可以开发游戏导出到各个平台。Blender 是免费开源的。这里顺便分享一个自己用光线追踪渲染的一个电脑桌面壁纸(目前我正在用)
https://github.com/HK-SHAO/HK-SHAO.github.io/tree/master/files/blender/

阅读更多

基于matplotlib的散点图动态可视化

之前在学校突发奇想,想搞一个散点图动态可视化,一直记在脑海中,前天终于放假,花了好几个小时,从零开始,把整个项目做起来了。

大概设想是:将一个班级的所有人的语文成绩与全校排名分别作为横坐标与纵坐标绘制不同颜色的点,左下角标上此人的名字,用一个三次函数进行不同时期数据之间的插值,模拟点的先加速后减速的平滑运动效果,将每一帧绘制成图片,使用ffmpeg将图片序列合成为视频。

效果图如下

阅读更多

使用Mandelbulb3D渲染三维分形

今天上午发现了这个软件,发现功能非常强大,可以用来探索三维分形和合成三维分形的视频,使用它可以生成图片序列,但不能直接导出视频,我使用它定位关键帧,然后渲染(分辨率1920x1080),渲染出了不到1000张图片,花了整整5个小时(这期间我去电影院看了中国有史以来最强科幻电影——流浪地球),最后使用ffmpeg进行合成视频。

阅读更多

使用Python统计历年来各种英语高考题中单词的出现频数

我从网上搜集了历年来高考英语新课标卷真题,还有各个省的高考真题,以及各种模拟题,题型汇总总共20多个doc文件,然后使用正则匹配删除了除了英文单词外的所有字符(保留空格),使用Python写了一个很简单的程序,统计出了8千多个不同的单词及其频数,使用Excel进行排序。

阅读更多

ffmpeg的简单使用方法

转码和编辑视频

今天用Android Studio(后面简称AS)里的模拟器给系统录屏,用来展示OpenGL可视化的东西,打算上传B站,后来发现AS只能保存webm格式和GIF格式的视频,并且文件体积巨大,视频图像也是顺时针旋转的。

没办法,只能找个视频编辑器进行转码和编辑,结果发现网上的视频转码工具基本粗制滥造,像Adobe PR这样的视频剪辑软件我也没必要下载,于是找到了ffmpeg(其实很早之前在树莓派上玩Linux的时候用过)。

我进入ffmpeg官网下载了Win64版本,下载速度很快,下载下来就是一个压缩包,解压后就是工具本体了,不过它没有任何UI界面,在Windows下你只能进入bin目录,然后Shift+鼠标右键打开命令窗口,使用ffmpeg的指令进行操作。如下图,可以看到转码效率很高。

阅读更多