GithubHelp home page GithubHelp logo

justin62628 / squirrel-rife Goto Github PK

View Code? Open in Web Editor NEW
2.9K 15.0 170.0 5.6 MB

效果更好的补帧软件,显存占用更小,是DAIN速度的10-25倍,包含抽帧处理,去除动漫卡顿感

License: GNU General Public License v3.0

C# 29.73% Python 68.67% C++ 0.24% CSS 1.36%
rife videoframeinterpolation video interpolation animation smooth slomo

squirrel-rife's Introduction

logo

Squirrel-RIFE

  • 基于RIFE算法的中文补帧软件

✨ 特点 Feature

  • 效果更好,显存占用极小,是DAIN速度的二十倍
  • More efficient, less memory used, and 20 times faster than DAIN
  • 高精度转场识别,可在多数视频中达到95%以上的精确度,不破坏丝滑效果
  • Ultra high precision of transition recognition, reaching 95%+ accuracy in most videos without affecting smoothness
  • 包含抽帧处理,可去除动漫卡顿感
  • Deduplication removes animation clipping

🖥 系统要求 System Requirements

  • Windows 10 及以上操作系统

  • Windows 10 or above

  • NVIDIA 显卡需要 GeForce Experience 所安装的驱动版本大于等于460.89

  • NVIDIA GPU(driver > 460.89)

  • 2GB 以上显存, 4GB 左右的空余运行内存以及4GB+的磁盘剩余空间

  • 2GB+ of video card memory, 4GB+ of DDR3 memory and 4GB+ of free disk space

🤝 参考 Reference & Acknowledgement

squirrel-rife's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

squirrel-rife's Issues

主界面说明文字含义不明

程序(配置生成器)本身的文字含义模糊,增加了用户的使用成本。
界面设计应该做到用户只打开程序本身就知道各个选项的意思。
建议增加鼠标悬停说明,进行简单说明,特别是要将调节后的效果,最好再给出推荐范围。实在有困难也应该提供一个readme文件,从用户参考。

强烈建议修改:“UHD模式”(含义不明,效果不明),“当前后两帧相减大于/小于该值”(缺乏说明和参考,这些数值毫无意义),“导出svfi”(含义不明,建议改为导出配置文件)。

预设

  1. 压制预设
    • 自定义、UHD、HD、后期剪辑
  2. 补帧预设
    • 自定义、低性能、中性能、高性能

libpng error: Write Error

问题描述

  • 在 70%|███████▏ | 12736/18155 [2:13:31<49:52, 1.78it/s] 的时候突然出现 libpng error: Write Error

  • 此后补帧阶段出现一个有规律的ABAB现象。

A: libpng error: Write Error # 同时出现约100行左右,刚好满屏多几行
B: [1/1] 75%|██  | 13642/18155 [2:19:05<43:58,  1.76it/s] # 程序稳定处理38帧,属于一帧帧处理。
A: libpng error: Write Error # 再次刷屏。
B: 1/1] 75%|██  | 13642/18155 [2:19:05<43:58,  1.76it/s] # 程序再逐帧处理38帧。
# ....(循环交替)
  • 合成阶段出现以下错误
[1/1]frame=12411 fps= 39 q=26.0 size=  196608kB time=00:01:43.07 bitrate=15625.9kbits/s dup=4 drop=0 speed=0.325x
[1/1][png @ 00000167a85d8140] inflate returned error -3
[1/1]frame=12433 fps= 39 q=26.0 size=  197120kB time=00:01:43.18 bitrate=15649.0kbits/s dup=4 drop=0 speed=0.324x
[1/1]Error while decoding stream #0:0: Generic error in an external library
[1/1][png @ 00000167a85c3880] inflate returned error -3
[1/1]Error while decoding stream #0:0: Generic error in an external library
.......
.......
[1/1]frame=35884 fps= 37 q=26.0 size=  562688kB time=00:04:58.58 bitrate=15437.9kbits/s dup=4 drop=0 speed=0.312x
[1/1]av_interleaved_write_frame(): No space left on device
[1/1]Error writing trailer of H:\TEMP\Download\done\HQVideo\test\output.mp4: No space left on device
[1/1]frame=35905 fps= 37 q=26.0 Lsize=  562944kB time=00:04:58.84 bitrate=15431.8kbits/s dup=4 drop=0 speed=0.311x
[1/1]video:551475kB audio:11732kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[1/1][libx264 @ 00000167a6a7d080] frame I:264   Avg QP:16.45  size: 52844
[1/1][libx264 @ 00000167a6a7d080] frame P:9719  Avg QP:19.32  size: 30731
[1/1][libx264 @ 00000167a6a7d080] frame B:25922 Avg QP:20.54  size:  9746
[1/1][libx264 @ 00000167a6a7d080] consecutive B-frames:  3.5%  0.6%  0.8% 95.2%
[1/1][libx264 @ 00000167a6a7d080] mb I  I16..4: 25.2% 62.1% 12.7%
[1/1][libx264 @ 00000167a6a7d080] mb P  I16..4: 10.3% 17.2%  0.9%  P16..4: 43.2%  9.5%  3.9%  0.0%  0.0%    skip:15.0%
[1/1][libx264 @ 00000167a6a7d080] mb B  I16..4:  1.3%  1.6%  0.1%  B16..8: 39.6%  2.1%  0.2%  direct: 3.0%  skip:52.2%  L0:44.6% L1:51.6% BI: 3.8%
[1/1][libx264 @ 00000167a6a7d080] 8x8 transform intra:59.3% inter:91.3%
[1/1][libx264 @ 00000167a6a7d080] coded y,uvDC,uvAC intra: 26.8% 27.0% 2.7% inter: 11.9% 16.2% 0.0%
[1/1][libx264 @ 00000167a6a7d080] i16 v,h,dc,p: 17% 24%  6% 53%
[1/1][libx264 @ 00000167a6a7d080] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 22% 18% 29%  5%  7%  5%  6%  4%  4%
[1/1][libx264 @ 00000167a6a7d080] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 31% 22% 18%  4%  9%  5%  6%  3%  2%
[1/1][libx264 @ 00000167a6a7d080] i8c dc,h,v,p: 61% 20% 17%  3%
[1/1][libx264 @ 00000167a6a7d080] Weighted P-Frames: Y:1.9% UV:0.5%
[1/1][libx264 @ 00000167a6a7d080] ref P L0: 69.7%  7.7% 17.0%  5.6%  0.1%
[1/1][libx264 @ 00000167a6a7d080] ref B L0: 90.3%  8.4%  1.3%
[1/1][libx264 @ 00000167a6a7d080] ref B L1: 96.7%  3.3%
[1/1][libx264 @ 00000167a6a7d080] kb/s:15113.56
[1/1][aac @ 00000167a85c0180] Qavg: 253.990
[1/1]Conversion failed!
[1/1]已完成所有操作

危害

生成了错误的视频文件,无法打开。
尝试通过同源mp4修复,打开的是竖条色块的花屏。
image

尝试使用正弦波频率估计的改进Rife算法

音画不同步的原因?

已经试过skvideo.io的ffmpeg vsync的vfr、cfr和passthrough
全部会在高fps转低fps的时候音画不同步

算法效率高么

这种算法如果在ARM架构下,使用neon加速,能做到实时2X么

合并configure生产器与主程序

单独的一个配置生成器和主程序的分离毫无意义地增加了使用难度和成本,建议在界面内集成直接调用的按钮。

抽象类整合

抽象类整合:
模型
参数

  • 补帧
    interpolate(process)
  • 超分
    process(scale
  • 其他处理
    预处理
    后处理

去除重复帧抽象类

缩小文件体积

1,请提高python打包技术。
下载的时候就感觉怎么会这么大不会是打包了一个完整的pytorch吧。下载之后我发现还真是,而且还有很多不需要的包,比如matplotlib, ipython, scipy, tcl 甚至还有jedi, sqlite和win32com。
另外pytorch是可以裁剪的,而且RIFE用到的模块不多,可以大幅裁剪。
而且__pychche__目录也应该清理掉,或者只保留对应打包的python版本的缓存,现在里面有两个python版本的缓存文件。

2,裁剪掉第三方依赖的冗余部分。
比如我发现了好几份opencv。ffmpeg附带的那么多exe工具也用不到。

3,提供打包python环境的和不打包的两种版本。
很多人是有配置好的anaconda环境的,你让他们再下载一份是明显的浪费。可以提供两个版本,其中不打包的版本需要用户指定python路径。并且提供一份依赖列表和使用conda/pip安装依赖的命令脚本。为了保险起见,可以让程序启动的时候检查依赖库和版本。

4,分离程序文件和数据文件。
训练好的模型文件,RIFE的模型部分对于你们这个project来说是不需要更新的,可以考虑把他们独立出来,单独提供下载。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.