I am experimenting with a method for registering frames from different video versions of Star Wars. This was attepted before by the x0 project, and Mike V is doing something similar with his Legacy project. I guess with the Despecialized Edition and other upcomming HD projects, doing this in SD is not very relevant anymore, but I'm still interested in it and so might be others.
What I'm trying to do is saving successive frames from two different versions of the movie, and then register frames from one to the corresponding frames in the other version using the command line tool Elastix. Another command line program, ImageMagick is used for some clean-up work. The whole thing is glued together by a primitive Common Lisp program (or more precisely, a set of functions) and a shell script. I'm doing this on Mac OS X by the way. Adapting the systom for other Unix clones sould be trivial. It's also possible to adapt it for Windows, and I may do so one day.
There are a couple of free tools capable of doing image registration, for example the TurboReg plugin for ImageJ. I had the most success with Elastix, and also it is the easiest to use in a batch-like method.
The two sources I'm using is msycamore's Technidisc and Harmy's Despecialized Edition 2.0. The Technidisc is my absolute favourite version of Star Wars on video, and a great LD rip. IMO it has the best color palette and generally the best distribution of lightness levels, even though at some places it is inconsistent. Aliasing is less prominent than in the GOUT (thanks to the overall softness of the image). Light sources don't bloom (no fat lightsaber blades). The plan is to borrow detail from the DeEd2 and try to fix some of the problems in the Technidisc.
Currently the program is capable of going throu a queue of frames automatically. It will also fix undershot pixels (near-black pixels that, after the B-spline transformation, turn into negative and after conversation end up white-ish). As you can see on the samples below (especially on the fourth sample, on C-3PO-s highlights), overshot pixels can also happen. Need to fix those too. Using linear interpolation doesn't cause any overshot pixels, and the quality of registration doesn't suffer either, so problem solved. :)
Another problem I want to point out can be seen on the last sample. It's partially a registration error (upper left corner, the planet and surrounding stars), and partially the fact that the fighters were composited a bit differently in the DeEd (see the Y-Wings).
To do:
- Fix overshot pixels
- Tweak registration parameters for more precision in space-type scenes
- Also tweak more for speed (on a 2.2 GHz Core i3 notebook it takes 2-3 minutes to register one frame)
- Find a better method for extracting detail from the registered images - current method alters the luminance slightly
- Use the transformation data from one frame as starting point for subsequent frames and reduce the number of iterations during registration on them, since the deformations will probably be similar.
