Skip to content

Commit c198623

Browse files
committed
Merge branch 'master' of https://github.com/bloc97/Anime4K
2 parents a9a4e66 + a5e8a10 commit c198623

File tree

1 file changed

+4
-76
lines changed

1 file changed

+4
-76
lines changed

README.md

Lines changed: 4 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ What's new:
2121
- Blind resampling artifact reduction algorithms. *(For badly resampled anime.)*
2222
- Experimental line darkening and line thinning algorithm. *(For perceptual quality. We perceive thinner/darker lines as perceptually higher quality, even if it might not be the case.)*
2323

24-
Please consider the rest of the README outdated until it is updated.
2524
The files are already available for anyone to play with, but usage instructions are not yet done.
2625

2726
## Real-Time Upscalers Comparison
@@ -32,6 +31,8 @@ The new Anime4K upscalers were trained using the [SYNLA Dataset](https://github.
3231

3332
\*FSRCNNX-56 failed to launch when playing back 1080p video.
3433

34+
Please consider the rest of the README outdated until it is updated.
35+
3536
## Notice
3637

3738
### This current README is outdated. I don't have the time to update the preprint and the comparisons for the major changes to the algorithm in the latest stable v2.1 version yet. Most issues related to aliasing and texture loss are solved in the latest version of the algorithm. A more rigorous and in-depth preprint is coming soon.
@@ -58,21 +59,19 @@ This implementation is **cross platform**.
5859

5960
### [GLSL Installation](GLSL_Instructions.md)
6061

61-
Note for developers: For performance, the GLSL shaders use the `POSTKERNEL` texture to store the gradient. You might need to make a backup of the `POSTKERNEL` texture before applying these shaders and restore it after if your other shaders or rendering engine uses the `POSTKERNEL` texture for other purposes. (In MPV's case, it gets ignored.)
62-
6362
## HLSL Usage Instructions (MPC-BE with madVR)
6463

6564
This implementation is **only for Windows**.
6665

67-
This implementation is also **outdated**, the latest version is developped on GLSL.
66+
This implementation is **outdated**, the latest version is developped on GLSL.
6867

6968
### [HLSL Installation](HLSL_Instructions.md)
7069

7170
Note for developers: For performance, the HLSL shaders use the Alpha channel to store the gradient. You might need to make a backup of the alpha channel before applying these shaders and restore it after if your rendering engine uses the alpha channel for other purposes. (In MPC-BE's case, it gets ignored.)
7271

7372
## Java Usage Instructions (Standalone)
7473

75-
This implementation is **outdated**, the latest version is developped on GLSL.
74+
This implementation is also **outdated**, the latest version is developped on GLSL.
7675

7776
### [Java Installation](Java_Instructions.md)
7877

@@ -84,74 +83,3 @@ Click on the link above to read Java version installation and usage instructions
8483
- https://github.com/net2cn/Anime4KSharp (Anime4K Re-Implemented in C#)
8584
- https://github.com/andraantariksa/Anime4K-rs (Anime4K Re-Implemented in Rust)
8685
- https://github.com/k4yt3x/video2x (Anime Video Upscaling Pipeline)
87-
88-
89-
## Pseudo-Preprint Preview
90-
91-
### [Read Full Pseudo-Preprint](Preprint.md)
92-
93-
B. Peng
94-
August 2019
95-
96-
*Ad perpetuam memoriam of all who perished in the Kyoto Animation arson attack.*
97-
98-
### Table of Contents
99-
100-
- [Abstract](Preprint.md#abstract)
101-
- [Introduction](Preprint.md#introduction)
102-
- [Proposed Method](Preprint.md#proposed-method)
103-
- [Results and Upscale Examples](Preprint.md#results)
104-
- [Discussion](Preprint.md#discussion)
105-
- [Analysis and Comparison to Other Algorithms](Preprint.md#analysis)
106-
107-
### Abstract
108-
109-
We present a state-of-the-art high-quality real-time SISR algorithm designed to work with Japanese animation and cartoons that is extremely fast *(~3ms with Vega 64 GPU)*, temporally coherent, simple to implement *(~100 lines of code)*, yet very effective. We find it surprising that this method is not currently used 'en masse', since the intuition leading us to this algorithm is very straightforward.
110-
Remarkably, the proposed method does not use any machine-learning or statistical approach, and is tailored to content that puts importance to well defined lines/edges while tolerates a sacrifice of the finer textures. The proposed algorithm can be quickly described as an iterative algorithm that treats color information as a heightmap and 'pushes' pixels towards probable edges using gradient-ascent. This is very likely what learning-based approaches are already doing under the hood (eg. VDSR<sup>**[1]**</sup>, waifu2x<sup>**[2]**</sup>).
111-
112-
### How does it *actually actually* work?
113-
114-
There's an excellent write-up by [shi-yan](https://github.com/shi-yan) that describes the (original v0.9) algorithm in detail (in fact better than in the preprint), with interactive sliders. See for yourself! https://epiphany.pub/@shi-yan/anime4k
115-
116-
## FAQ
117-
118-
### Why not just use waifu2x
119-
120-
waifu2x is too slow for real time applications.
121-
122-
### Why not just use madVR with NGU
123-
124-
NGU is proprietary, this algorithm is licensed under MIT.
125-
126-
### How does FSRCNNX compare to this
127-
128-
Since it performs poorly (perceptually, for anime) compared to other algorithms, it was left out of our visual comparisons.
129-
130-
![ComparisonRC](https://raw.githubusercontent.com/bloc97/Anime4K/master/results/Comparisons/FSRCNNX.png)
131-
132-
*Note: FSRCNNX was not specifically trained/designed for anime. It is however a good general-purpose SISR algorithm for video.*
133-
134-
### Where are the PSNR/SSIM metrics
135-
136-
There are no ground truths of 4K anime.
137-
138-
### Why not do PSNR/SSIM on 480p->720p upscaling
139-
140-
[Story Time](FAQ_Detail.md)
141-
142-
Comparing PSNR/SSIM on 480p->720p upscales does not prove and is not a good indicator of 1080p->2160p upscaling quality. (Eg. poor performance of waifu2x on 1080p anime) 480p anime images have a lot of high frequency information (lines might be thinner than 1 pixel), while 1080p anime images have a lot of redundant information. 1080p->2160p upscaling on anime is thus objectively easier than 480p->720p.
143-
144-
### I think the results are worse than \<x>
145-
146-
Surely some people like sharper edges, some like softer ones. Do try it yourself on a few anime before reaching a definite conclusion. People *tend* to prefer sharper edges. Also, seeing the comparisons on a 1080p screen is not representative of the final results on a 4K screen, the pixel density and sharpness of the final image is simply not comparable.
147-
148-
### Note for those who think this is not a 'upscaling' algorithm.
149-
150-
[Explanation](Upscaling.md)
151-
152-
TL;DR
153-
154-
Sharpening, De-Blurring and Super-Resolution are equivalent.
155-
Anime4K can de-blur, and is equivalent to a SR algorithm.
156-
A Super-Resolution algorithm can do upscaling.
157-
Thus, Anime4K is an upscaling algorithm.

0 commit comments

Comments
 (0)