这个使用IMU增稳的工作真的很强,甚至很多大厂都虎视眈眈的。
这个是目前的样子,rust重写的
很厉害,但是我rust不熟悉啊,一头雾水。幸好以前的版本是Python的,而且还开源,所以我就可以研究研究。
首先就是找代码库:
就是这个
使用来自内部或外部日志的 IMU 运动数据进行视频稳定,项目当时的简介。
我的代码从这里下载的,就是最后一个Python的版本
自适应/动态缩放
对 insta360 元数据的原生支持
.gyroflow 文件,用于保存数据和未来的插件
更多输出编解码器选项
改进的输出质量/分辨率
自动同步
与多个点同步
自动校准
背景颜色选择
新的平滑算法,包括旋转限制平滑和水平锁定
音频导出
支持高速镜头(例如自由飞波),虽然它需要更多的工作
改进了视频播放器和稳定预览的用户界面
镜头预设搜索
这个是库所能做的工作。
我也下载了一个编译的版本,看看是什么样的
太简陋了
标定板
执行的后台打印工作
经过我研究,这个ElvinC才是库的源作者,就是一切的源头
我们自己研究吧,因为有UI,所以需要安装对应的库,QT的库
安装成功
代码语言:javascript复制C:UsersyunswjAppDataLocalProgramsPythonPython37Libsite-packagesPySide2
在安装的这个位置,可以看到有可视化的编辑器
是QT的
这个不懂
还缺一个库
一番寻找找到了Github,呵呵
非得翻墙,醉了
看起来碉堡了
代码语言:javascript复制https://abhitronix.github.io/vidgear/latest/
这个库有完善的文档。
代码语言:javascript复制# Install latest stable release with all Core dependencies
pip install -U vidgear[core]
# Or Install latest stable release with all Core & Asyncio dependencies
pip install -U vidgear[asyncio]
安装的话就这样就好了
在安装的同时,我找到了制作以前的工作,是一个简单的库,作用如图。
其实核心工作已经完成了
首次运行,报错
代码语言:javascript复制pip install orangebox
代码语言:javascript复制pip install construct
代码语言:javascript复制pip install hachoir
还缺少这些库,安装一下。
这次ok了
UI
没有FFmpeg
其实读懂还是比较困难的,因为这个库和GUI交互
代码语言:javascript复制http://www.cvl.isy.liu.se/research/datasets/gopro-gyro-dataset/gopro-gyro-dataset.zip
Gopro视频 IMU数据
有必要看下这个论文
到手
代码语言:javascript复制python.exe .setup.py install
坐等视频
关于数据集的描述,请看我的另一篇文章。
关于数据采样这里
其实原版论文800HZ,这里800应该也可以
使用的是这个陀螺仪,下单了。
5块钱!
ST的Logo

工业级别的传感器
4200应该和4250差不多吧。。。
执行最后一个
一个视频文件由三个文件构成
陀螺仪数据定时定时采样,CSV文件每陀螺仪测量一行。每条线具有三个角速度测量值,每个轴(x、y、z)一个。角速度测量值以弧度/秒表示。
就像这样
代码语言:javascript复制python.exe .gopro_dataset_example.py ..gopro-gyro-datasetrccar.MP4
运行
创建视频流..gopro-gyro-datasetrccar.MP4
创建陀螺仪流..gopro-gyro-datasetrccar_gyro.csv
后处理 L3G4200D 陀螺仪数据消除频率尖峰噪声
创建校准器
估计时间偏移和摄像机到陀螺仪的旋转,猜测陀螺仪速率=853.86
这个输出的参数
瞎写了这么多,下篇继续
代码语言:javascript复制https://pan.baidu.com/s/1btFmHGh25APqYGR_l7hicw 取码:r5wk