View Full Version : Regarding my restoration of Cutie Honey (1973)
Troc
3rd November 2020, 14:50
Hello, first post and already pretty complicated. I however did search around and found fragments, not a specific discussion on this.
I'm a huge fan of Cutie Honey (1973), so I bought the DVD boxset. Being from the 70s, it has many issues which I want to fix with Virtualdub, since that's what I'm comfortable with. I think it was shot into film from the original source, which introduces all sorts of problems. So far, I'm using methods that might be suboptimal and some I cannot figure out correctly. Here we go:
- There's noise, which is a result of imperfect capture.
I use Neatvideo, which makes some really impressive results. It however does struggle a bit with digital artifacts and cannot remove some deeper film scratches/hairs.
- There's slightly warped duplicate frames, which again is a result of the film camera.
I tried MPDecimate with FFMPEG, but it didn't work for most duplicates, since in most of them, a small element or area sort of bubbles out, making the frame not identical, even though I can tell that it is the same frame. Removing the slightly altered duplicate frames manually would be horrendously slow. Do you have a solution?
- The frame shakes, which is a result of the film camera and the animation not being in perfect sync.
I tried using Deshaker, but I ran into problems where there either was extra black area (no inpainting?) or the frame was zoomed in with extra digital movement. I would like to have it work, since this is somewhat annoying.
The colors are washed out and yellowed.
I have altered saturation, value and hue and also tried to alter the white balance. However, it appears that some shots have different values and a static change makes them look weird when the rest of the shots look good. Do I need to separate those shots and alter them individually and later add together again?
- There's some background noise in the audio.
I would like to clean the audio up a bit. I cannot use the lossless audio from original files in Audacity since it doesn't have a library or something and I couldn't get it to work. If Virtualdub can do audio, what filter/settings should I use?
I could post a Mega or Gofile link to unaltered parts of the show, if it helps with your assessments.
So far, I can make the show much more visually pleasing. I know that I could make it even better, but my knowledge is limited and I learn best with interaction.
StainlessS
3rd November 2020, 15:44
- There's slightly warped duplicate frames, which again is a result of the film camera.
I tried MPDecimate with FFMPEG, but it didn't work for most duplicates, since in most of them, a small element or area sort of bubbles out, making the frame not identical, even though I can tell that it is the same frame. Removing the slightly altered duplicate frames manually would be horrendously slow.
Do you have a solution?
Avisynth script function Spotless() might be a solution to above.
EDIT: Not for anime, dont know what your clip is.
EDIT: https://forum.doom9.org/showthread.php?t=181777
EDIT: Looks like "Cutie Honey" is manga, so not of use, sorry. [EDIT: although you might try with a very large BlkSz ]
Troc
3rd November 2020, 21:13
It's actually several different things, but I'm talking about the anime series from 1973. I should probably give Avisynth a go, taken how many people seem to love it.
FranceBB
4th November 2020, 18:41
Yes, come to the dark side. :devil:
Ok, jokes aside, uploading a small sample would be helpful for us to try to see and get rid of those issues. Especially if you're not familiar with Avisynth, we could send you a script to take care of those things so that you just run it and then forget about it. You can even open Avisynth Scripts in VirtualDub (since that's what you're familiar with) and encode from there, it's totally fine. ;)
p.s for what it's worth, I've been using SpotLess() in some of my scripts and it works, however all of them were real life sources, so I have no idea how good/badly is gonna behave with anime. I guess we're about to find out.
Troc
5th November 2020, 07:40
Yes, come to the dark side. :devil:
Ok, jokes aside, uploading a small sample would be helpful for us to try to see and get rid of those issues. Especially if you're not familiar with Avisynth, we could send you a script to take care of those things so that you just run it and then forget about it. You can even open Avisynth Scripts in VirtualDub (since that's what you're familiar with) and encode from there, it's totally fine. ;)
p.s for what it's worth, I've been using SpotLess() in some of my scripts and it works, however all of them were real life sources, so I have no idea how good/badly is gonna behave with anime. I guess we're about to find out.
Hello, thanks for responding. I agree that video restoration seems to be quite the dive.
Here's a sample, the OP: https://mega.nz/file/iCZjHIpa#Ogt0WmyK-MBLMutk6Ce89uWBs9FaEmDzffZlLMRyKFo
How would I actually run Avisynth scripts in Virtualdub? I can't seem to import and .AVS as a filter. I would really like to know, since there's all sorts of intesting Avisynth scripts/script combos that people tell me to use. I'm too dumb to get anything but "Version()" to run, though.
Hopefully you can use the video I sent.
videoh
5th November 2020, 12:24
How would I actually run Avisynth scripts in Virtualdub? Simply use 'File/Open video file' as you would to open an AVI file. Then just select your AVS script as the input file and off you go. The video generated by the script will appear. Off course, Avisynth must be properly installed.
Troc
5th November 2020, 20:23
Do I need to include the video path in the Avisynth script or can I apply a script to any video that's open already?
videoh
5th November 2020, 23:05
Your script will include a source filter that specifies the input file.
Troc
6th November 2020, 11:13
How would I make a script work? I get issues for not having the scripts stored in the right places, I think.
videoh
6th November 2020, 12:27
I don't understand your question. Please tell us exactly what you did and the exact problem you are encountering, together with your script contents and with error messages.
The process is simple:
1. Install Avisynth.
2. Make a script.
3. Open it in VirtualDub2.
Troc
7th November 2020, 11:05
The problem I encounter is "module not found" on every script element.
videoh
7th November 2020, 12:57
You did not provide the information asked for, so I cannot help you.
Emulgator
7th November 2020, 21:19
Troc, your sample is in no way the original DVD encode.
The artifacts are already dug in too deep.
Besides, it is .hevc. Better upload a cut of the original .vob
Troc
7th November 2020, 22:25
@videoh, here's the error I get. I put the avisynth script into Virtualdub and got this: https://i.ibb.co/Z27YdfZ/avisynth-error.png
I remembered it wrong, sorry.
@ Emulgator, I'm sorry, I don't know how to cut VOBs without using a codec. I like HEVC as a codec. Now I copied one VOB directly from the DVD and uploaded into my Mega. Here's a link. Hopefully it helps you:
https://mega.nz/file/Ta4kzBIR#nPyMpKNmb-s36nzRwS5aOuTTY41UjDQulFw0w7h89Ic
Fair warning though, the quality is poor.
videoh
7th November 2020, 23:29
Troc, you have to give us your script!
Troc
8th November 2020, 00:19
My bad again, it's here:
"C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.mp4"
nnedi3_rpow2(4, cshift="Spline36Resize", fwidth=2556, fheight=1440)
aWarpSharp2(depth=10)
Sharpen(0.5)
Any help? Removing nnedi resulted in the same error with aWarpSharp instead.
StainlessS
8th November 2020, 01:35
@ Emulgator, I'm sorry, I don't know how to cut VOBs without using a codec
In DGIndex, mark start and end of about 30 second sequence with lots of movement, using
'[' and ']' marker buttons, then
Menu/File/"Save Project & Demux Video",
and post the m2v file ONLY. [SendSpace allows post without account, file deleted 30 days after latest download].
videoh
8th November 2020, 09:33
My bad again, it's here:
"C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.mp4"
nnedi3_rpow2(4, cshift="Spline36Resize", fwidth=2556, fheight=1440)
aWarpSharp2(depth=10)
Sharpen(0.5)
Any help? Removing nnedi resulted in the same error with aWarpSharp instead. 1. Your first line is wrong. You don't just state a path like that. You have to use a source filter.
2. You need to load all the (non-internal) filters that you use in your script using LoadPlugin(). There is also autoloading as a possibility. But one way or another you have to load your filters.
Troc
8th November 2020, 11:58
1. Your first line is wrong. You don't just state a path like that. You have to use a source filter.
Alrighty, I think it's very clunky that I have to specify both the source path and use some different script just to use a file type. I think it's obvious that if I select a .mp4, I want to use what works best for .mp4. Why would I do something different?
2. You need to load all the (non-internal) filters that you use in your script using LoadPlugin(). There is also autoloading as a possibility. But one way or another you have to load your filters.
Why is autoloading not the default? I have a good SSD. The filter filesizes are nothing, I could load a thousand filters in a second. If that was not the case, where am I supposed to put the filter files I downloaded and how am I supposed to load them? It's again really clunky to not load a filter based on how I tell the program that I want to use a specific filter.
When I post stuff about video restoration, people like to tell me that they use Avisynth and how it's better than anything I know. A how to use but when I ask how, they link the wiki. As if I haven't tried to read it without getting anywhere. I want a tool, not an encyclopedia. Is there not a handy GUI for Avisynth with every filter already integrated? If that's possible, why's a newcomer like me either directed to a wiki or given some handwavy "just specify a source filter". If I knew how to do that, I would've done it and wouldn't be asking why it doesn't work.
So, I'm asking thoroughly. Let's say that I choose an Ffmpeg source filter.
http://avisynth.nl/index.php/FFmpegSource
I have to download the DLL and put it somewhere. Then, to start my script, I'll write the following: File path, if I want it cached, write the fps amount, how many threads the CPU encoding will use, the length of the video, how to seek the video, if I want to overwrite index, the video's resolution, resizer if necessary, if it's RGB or YUV, RFF (whatever that is), delay, and set UTF8 if I have a strange filename.
After I do that, I have inputted a singular file to then apply filters to. Then I select a fiter, like http://avisynth.nl/index.php/TIsophote
I separately specify all the parameters with the filter and try to export multiple times to see what actually looks good. Or do I have to use an output/export filter as well to make this thing work as it should?
I'm sorry for the extreme levels of salt I have. I'd like to think that I'm a relatively intelligent person with some skills in video editing. Avisynth however is something I do not understand. It's maddening since so many people seem to use it effectively.
In DGIndex, mark start and end of about 30 second sequence with lots of movement, using
'[' and ']' marker buttons, then
Menu/File/"Save Project & Demux Video",
and post the m2v file ONLY. [SendSpace allows post without account, file deleted 30 days after latest download].
I had never used DGIndex. It seems quite effective, however. Here's the file: https://www.sendspace.com/file/vo9apj
I used MakeMKV to rip the DVD before.
videoh
8th November 2020, 16:47
Alrighty, I think it's very clunky that I have to specify both the source path and use some different script just to use a file type. I think it's obvious that if I select a .mp4, I want to use what works best for .mp4. Why would I do something different? Sorry to say it but that is nonsense. Here is a way to correctly write your first line using (for example) DGDecNV tools:
DGSource(""C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.dgi")
# now all your other filters go here
You create the dgi file (called the index file) by indexing the MP4 file in DGIndexNV. You can use other source filters, some of which will index on-the-fly, and some of which do not index at all, or require manual indexing as with DGIndexNV. Indexing allows for random seeking. There is also a version of the DG tools that does not require an nVidia GPU, that is, DGIndex/DGDecode. They both work the same.
So the basic pattern is simple:
YourSourceFilter("path_to_video_or_index_file", ...other params as needed...)
Why is autoloading not the default? Nobody said it isn't. But you need to have Avisynth installed correctly and place your plugins in the right place.
where am I supposed to put the filter files I downloaded and how am I supposed to load them? If you don't want to use autoloading (and there are good reasons for sometimes not wanting to), then you put them wherever you want and then load them in your script with LoadPlugin().
I want a tool, not an encyclopedia. Gee, stop whining. All tools come with user manuals. Avisynth's user manual is a wiki.
why's a newcomer like me either directed to a wiki or given some handwavy "just specify a source filter". If I knew how to do that, I would've done it and wouldn't be asking why it doesn't work. You've got to be kidding. The wiki contains many examples that show how to use source filters.
Or do I have to use an output/export filter as well to make this thing work as it should? No, you simply open your script in the desired application. As I mentioned earlier you can open the script in VirtualDub2 if you just want to see the filtered video.
I'm sorry for the extreme levels of salt I have. I'd like to think that I'm a relatively intelligent person with some skills in video editing. Avisynth however is something I do not understand. It's maddening since so many people seem to use it effectively. You're overthinking things. I gave you the basic 3 steps earlier. Make a script with just a source filter invocation and then open that script in VirtualDub2 (File/Open video file). You'll see the source video. Now add another filter like Sharpen(). Now when you open the script you'll see that same video but sharpened.
I had never used DGIndex. It seems quite effective, however. Thank you, I appreciate that. ;)
StainlessS
8th November 2020, 16:55
Main page of Wiki:- http://avisynth.nl/index.php/Main_Page
Avisynth is basically a simple programming language, if you are not up to that, then you need look elsewhere.
[a programming language provides much more user control and flexibility]
Troc
8th November 2020, 20:08
Sorry to say it but that is nonsense. Here is a way to correctly write your first line using (for example) DGDecNV tools:
DGSource(""C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.dgi")
# now all your other filters go here
You create the dgi file (called the index file) by indexing the MP4 file in DGIndexNV.
It doesn't work. Opening the video file in question in DG results in this: https://ibb.co/GVcQVdw
I thought it simply thought that the video output was glitched so I pressed play and the program crashed.
I tried to get around this by aliasing the video into .dgi, but then VirtualDub said "I don't know what 'DGSource' means". Why isn't there a "Mp4 source"?
I tried also FFmpegSource. I downloaded the files from https://github.com/FFMS/ffms2/releases and placed them into my Avisynth install directory.
"I don't know what 'FFmpegSource' means".
I then removed everything except for file path and Sharpen.
"Script error: Invalid arguments to function 'Sharpen'."
I then removed even Sharpen and tried with only the filepath.
"The script's return value was not a video clip, (Is a string, [PATH])."
No, you simply open your script in the desired application.
Apparently I cannot open the script in my desired application.
I'll keep trying to make this work somehow, I guess. My experience so far with Avisynth is less than satisfactory.
Main page of Wiki:- http://avisynth.nl/index.php/Main_Page
Avisynth is basically a simple programming language, if you are not up to that, then you need look elsewhere.
[a programming language provides much more user control a flexibility]
I'm up to learning enough in order to use some scripts I cannot for some reason get with any other tool. If I can get some good debanding and despotting stuff working, I can save myself a few hundred hours of work. I'm positive that trying to get this working will still take less time than that.
videoh
8th November 2020, 20:17
DGIndex/DGDecode does not support MP4 files. You need DGDecNV or some other source filter.
You can however open the VOB in DGIndex. Try that.
If you tried and failed with some other source filter then give us your script! Stop making us ask for it every time. We're not mind readers.
Sheesh.
Troc
8th November 2020, 20:39
Okay, here's the code:
DGSource"C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.dgi" [Note, same exact situation with .mp4]
nnedi3_rpow2(4, cshift="Spline36Resize", fwidth=2556, fheight=1440)
aWarpSharp2(depth=10)
Sharpen(0.5)
I'm sorry for not including it. Every line gives an error and I was frustrated.
If DGIndex doesn't support mp4, that's too bad. The vast majority of the files I work on is in mp4 directly or mp4 within .mkv container. I do have a lot of DVDs and this will be useful for that. That is, if I can get Avisynth to know what DGSource is.
StainlessS
8th November 2020, 21:10
DGSource is a filter function call, and must be enclosed in parenthesis
DGSource("C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.dgi") # [Note, same exact situation with .mp4] ::: Comments are preceded by '#'
nnedi3_rpow2(4, cshift="Spline36Resize", fwidth=2556, fheight=1440)
aWarpSharp2(depth=10)
Sharpen(0.5)
Untested
Troc
8th November 2020, 21:20
Okay, I ran this. Result:
"Script error: There is no function named 'DGSource'."
Same with FFmpegSource.
I do have Avisynth installed, "Version()" works. "Avisynth+ 3.6.1 (r3300, 3.6, x86_64)"
StainlessS
8th November 2020, 22:09
Well either you have to manually load the plugins by LoadPlugin("...\pluginName.dll") # where "..." is path to the dll
or put the dll in the autoload plugins directory.
DGSource, nnedi3, and awarpsharp2, are all non builtin filters, ie dll plugins.
videoh
8th November 2020, 22:15
Okay, here's the code:
DGSource"C:\Users\Troc\Music\Be My Baby - Koda Kumi - Live.dgi" [Note, same exact situation with .mp4]
nnedi3_rpow2(4, cshift="Spline36Resize", fwidth=2556, fheight=1440)
aWarpSharp2(depth=10)
Sharpen(0.5)
I'm sorry for not including it. Every line gives an error and I was frustrated.
If DGIndex doesn't support mp4, that's too bad. The vast majority of the files I work on is in mp4 directly or mp4 within .mkv container. I do have a lot of DVDs and this will be useful for that. That is, if I can get Avisynth to know what DGSource is. I don't have time to do it all for you, especially when you don't listen and follow instructions. You can send me a PM and I'll be happy to offer you my consulting services at $200/hour (that's cheap these days).
Most people figure this stuff out quickly without all this nonsense. Don't blame highly respected tools used by hundreds of thousands.
I'll give you a few clues for free and then I'm done:
* You need the parentheses as I clearly explained in a previous post. Why don't you listen?
* You need to load the plugins (as I told you earlier and StainlessS repeated). I doubt you have DGDecNV (it requires a $15 donation and I don't think you did that) and thus you don't have the DGSource() call available. If you use a different source filter put it in your autoload directory or load it directly via LoadPlugin(). I told you all this. Why don't you listen?
* Open your VOB in DGIndex, index it using 'Save project' (that will make a .d2v file), and then use MPEG2Source() as your source filter. E.g.:
LoadPlugin("your path\DGDecode.dll")
MPEG2Source("myvob.d2v")
The distribution includes a QuickStart manual. Read it!
* If you have MP4/MKV, you cannot use DGIndex/MPEG2Source(). You need DGIndexNV/DGSource(), which requires an nVidia card.
If you don't want to use those, use another source filter and load the plugin.
Troc
9th November 2020, 13:29
I deleted everything, downloaded Avisynth+ again, followed a step by step video setup guide and read both of your comments again very slowly.
I seem to have gotten Avisynth to work with FFmpeg Source and LSmash Source. I then found a quality debander and am currently enjoying fiddling with it. I find it easier to get somewhere with more concrete feedback(Edit: From the software, not you guys) and hammering the correct syntax has also been beneficial. I'm extremely sorry for taking up your time and hope that this blunder doesn't negatively affect our future engagements. Any opinions on the portion of Cutie Honey that I cut? What filters should I use on it?
Ghitulescu
9th November 2020, 20:47
Oh dear
yet another thread where the initiator has far less competences than his ambitions...
Cutey Honey was a rather beloved anime and it was once that the internet was full of all kind of "restorations", which (now that you provided a copy of the DVD they probably originated) were worse than the source (Indian movies come to mind :) ). Not to mention the hideous 6 lines of double subtitles (Japanese and Italian or Spanish), covering half of the frame :) :) and the final aggressive recompression that killed all the "restoration work" they did (think only of blocking and mosquito noise).
If the "restoration" was just a simple choice of filters and some tweaks (one-fits-all scheme), don't you think it was this obvious also for the producers to use them? They also benefited from the calibration marks (if got the originals), which you don't have and only guess, the original scan files you don't have (but rather a distribution format) and other things.
In one thing you were right - proper restorations are done frame by frame, but without loosing the big picture.
Anyway, if you do not consider yourself reading some documentation, you may search a bit the forum, read here a bit, there another bit, one third of all the posts written in the last decade was concerned only with anime (please raise hands those restoring Disney cartoons :) :) ) and inspire from there...
Otherwise, asking StainlessS or videoh for help, it's like they that did the restoring not you.
Troc
10th November 2020, 15:51
Oh dear
yet another thread where the initiator has far less competences than his ambitions...
I'm fully aware of this fact and have been open about my lacking abilities. Everyone needs to start somewhere, right?
Cutey Honey was a rather beloved anime and it was once that the internet was full of all kind of "restorations", which (now that you provided a copy of the DVD they probably originated)
I haven't seen previous restoration attempts. Even if I had, I would start with a clean slate from as close to original source as I can reasonably get, which in this case is the DVD I got for a reasonable price of 40 bucks.
Not to mention the hideous 6 lines of double subtitles (Japanese and Italian or Spanish), covering half of the frame :) :)
Not going to be a problem for me, I know how to make MKVs. If I can get links for the SRTs somewhere, that is. The DVD only contains English subtitles.
and the final aggressive recompression that killed all the "restoration work" they did (think only of blocking and mosquito noise).
I've also learned a lot about filetypes and compressions and intend to keep learning. I won't just output to .AVI at default settings, I intend to make a quality restoration.
If the "restoration" was just a simple choice of filters and some tweaks (one-fits-all scheme), don't you think it was this obvious also for the producers to use them?
You would think that. I however collect DVDs and so many have blatant and easy to fix issues (such as the movie not being in frame, tilted by a few degrees, or a furious rainbow/checkerboard pattern on the left side of the frame) that I have come to think that many studios simply do not care. Most normies will just see "movie on dvd", plop it into a TV and watch 5 meters away. If they cared, they could've fixed a lot of problems but decided not to put in the effort.
In one thing you were right - proper restorations are done frame by frame, but without loosing the big picture.
I'm going to do that to the OP, after some denoising. Not to the entire series though, since that would be a forever project instead of a long project.
Anyway, if you do not consider yourself reading some documentation, you may search a bit the forum, read here a bit, there another bit, one third of all the posts written in the last decade was concerned only with anime
I've come to know that many communities have in their lifetime built routine answers that are faster, and more precise than going forum surfing. I have done a lot of surfing and this forum in particular is very interesting. I made the post since I thought it'd be nice to know early on if I'm going entirely down the gutter from the getgo. Anime community is very large. The amount of technology enthusiasts who are also anime fans is impressive.
Otherwise, asking StainlessS or videoh for help, it's like they that did the restoring not you.
That's why I was asking for opinions on what would be fit for purpose and after that how to use a central tool. I genuinely hadn't figured it out. At no point did I ask either of these gentlemen to do the work for me. Unless you count consultation as the bulk of the work?
I don't meant to be mean or super confrontational, I just had some disagreements with you there. Let's get along, shall we? :)
videoh
10th November 2020, 16:33
Everything is fine Troc. You're doing great in learning Avisynth after a rocky start (happens for a lot of people including me) and we are still here to help you. Rock on!
Troc
10th November 2020, 23:06
Everything is fine Troc. You're doing great in learning Avisynth after a rocky start (happens for a lot of people including me) and we are still here to help you. Rock on!
I'm glad that we're cool. :) I got great results from a debanding filter called Flashkyuu. It's really nice since the banding was in a DAIN video that I had rendered for 13 hours.
I just came home from seeing the new 4K restauration of Akira and my mind feels refreshed from how much I didn't see anything wrong with it. The visual and sound quality were both stellar.
ReinerSchweinlin
22nd November 2020, 18:49
For restoring old Anime - take a look at:
waifu2x
Anime4k
Topaz Video Enhance AI
Some problems (like tha shaking) hyve to be adressed before running the above tools, but cleaining out some edges, getting rid of some of the noise, etc.. can be adressed by these "AI" apporaches rather good.
Video2x is a GUI for the first two, hybrid has filters in it - so you might consider to look at these to get some inspiration for you own scripts.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.