So I'm capturing and hoping to restore some old home VHS recordings. The oldest two have a problem that doesn't show up in any other of the tapes I have, and to some degree I expect it to be unfixable as it looks like an issue with the camera used in 1984. I've got these light trails that are almost certainly due to the sensor in the camera this was recorded with, however, there is a second issue, where these bright spots are showing up tinged green even though it's white light, and in some places the green bleeds out beyond the bight spot even if the video is relatively still.
Is there anything I can do to reduce the visibility/correct for the weird green without messing up the color balance everywhere else?
Attached is a sample clip just captured from the raw VirtualDub playback during capture with ScreenToGif and a still image of some of this green nonsense.
+ Reply to Thread
Results 1 to 8 of 8
They are due to the recovery time of the camera tube after seeing a bright object. It looks like a pre-CCD camera with a glass tube with a chemical target area was used, it is part of the recording and would be difficult to remove without frame by frame editing.
Yes, these may very well be artifacts from the Saticon/Vidicon (different trade names for similar technology) tubes used in first-generation cameras that were often used with those early 1980s over-the-shoulder recording units (I had exactly such a kit). These primitive cameras did not handle bright objects well, and would not only bloom, but also generate spurious colors like you show in your frame grab. My halos were usually reddish, rather than green.
These cameras also had a terrible time getting any detail in low light, so you probably are not going to be able to improve what you see in the background. If you do try to brighten it, do NOT use brightness controls, but instead use a gamma function or, better still, construct your own brightening curve using a histogram tool. This lets you keep the darkest and brightest pixels at their current levels, while adding brightness to only the lower 1/3 (or whatever you choose) of the histogram (i.e., only make the murky parts darker).
As for correcting your artifact, I use Vegas as my NLE and it has a tool called "Secondary Color Corrector." Other good NLEs probably also have something similar. What this tool lets you do is only operate on pixels that fall within a predefined color hue, color intensity (saturation), and brightness profile. To get this profile, you select the best example of the color you wish to neutralize (that long vertical ribbon of green, for instance), and then fiddle with the controls while looking at the mask you are creating. You then either desaturate (i.e., turn to B&W) that color, or shift it to something else. In this case I would just desaturate it.
Sometimes you have to stack two or three of these filters, each with different settings, to completely nail it. When you do this, you should scrub quickly through the footage to make sure you aren't mucking up something else. Finally, only apply these filter when needed.
These kinds of "flaws" are artifacts of the technology of the time. I would encourage you to consider embracing it -- just as you wouldn't change the hairstyles. Just a thought.
Green is where both the U and V channels are very low. You can desaturate only the green areas using a mask:
LSmashVideoSource("Sample.mp4") Crop(2,0,-0,-0) # make mod4 gmask = Overlay(UtoY().invert(), VtoY().Invert(), mode="multiply").BilinearResize(width, height).ColorYUV(off_y=-65).ColoRYUV(gain_y=3000) Overlay(last, Tweak(sat=0.0), mask=gmask) # overlay original with greyscale, only where green
[Attachment 47998 - Click to enlarge]
[Attachment 47999 - Click to enlarge]
Of course, anything else green will be desaturated too. You can work on further adjustments after this.
Very nice work, Jagabo!
I didn't look closely at your script, but the key to not affecting other colors is to use a really narrow hue range (because that shade of green is, fortunately, not found in nature) and also work with the saturation settings for the mask. That color is pretty intense, and even if you had green grass in the shot, you'd probably still be able to isolate and remove it.
Yes, I just meant it as a quick proof-of-concept in AviSynth. It desaturates the whole lower left corner of the UV plane:
[Attachment 48001 - Click to enlarge]
It works for this clip because there aren't really any parts of the image in that corner. In practice one would usually want to use a narrower hue/saturation range.
Thanks for the information! I know that a lot of it is just the nature of the camera that was used, but I'd be happy just getting rid of/minimizing the green. I'll definitely play around with what's been mentioned for dealing with the green.
This video is from my parents' wedding, so it has brighter scenes during the day, and darker during the reception.
EDIT: So here are the results I have so far with some other filtering going on combined with the script that Jagabo slapped together.
In spite of how wide-ranging that color selection is, I haven't actually noticed any serious desaturation. Below you can see a frame from the video where the bush is pretty darn green.
There is still some green in the actual wedding, but it's notable that the light from the light fixtures and windows coming in actually look white instead of green. There are some shadows on the walls that still have some green mixing in to make a muddy brown.
The dark shots in the reception look pretty darn good.
While I'm a noob at avisynth, I'm going to figure out how to narrow the color selection so that I'm not wiping most of the greens possible and get some finer tuned removal of the remaining green.
Last edited by Katherine1; 8th Feb 2019 at 20:57. Reason: Avoiding a double post.