This is crazy. And I mean that as a complement. It mixes geeky obsession with high production values to produce a tour-d-force of 80s nostalgia and personal accomplishment.
Well worth watching, even if you're unfamiliar with the 1980s, the Amiga or the original artwork.
Recommended if you want to see deep, geeky and fun explorations of the world of liquid crystal displays, Hi-Fi stereos and anything that tickles his fancy.
A long time ago I was fiddling with code to "reconstruct" pixel art [1]. After watching this video I am tempted to try to restore this image using code. by the way, I first discovered ahoy back in 2016 and I've been a subscriber since. great videos of the highest quality.
The restored pixel art in every example is blurrier than the original jpegs, I guess because it didn't align perfectly with the original pixel grid. So it doesn't seem very useful.
An underrated aspect of digital image preservation in general is that you are not looking at it the way it was designed and intended to be viewed. These images were designed by someone working on a CRT to be viewed on a CRT. In some cases such as retro game emulation, the translation to LCD or OLED displays badly mangles the intended look.
I don't know if I'd call it underrated anymore nowdays that crt filters/shaders are mainstay in emulator community. Especially with 4k displays you can do quite a lot of tricks to get that CRT look. You have also products like Analogue Pocket that do incredibly detailed display emulation (although lcd instad of crt..).
I was an amateur digital artist in the 90s, and I can tell you that although we did work with what we had, no-one liked CRT artifacts. We were always trying to get a sharper, clearer, better picture. The first LCD monitors were so stunningly sharp and clear that it was obvious we would never go back.
At least, that's what I thought. It's funny now to see people glorifying CRTs as some kind of "ideal" display device for low-res art. Past-me would have laughed.
I suppose that depends on whether you were fighting CRT artifacts to produce a realistic image or using them towards an artistic goal. Scroll through that twitter account and you'll see many examples of artists who were clearly depending on CRT artifacts to create their end product.
I mean, there are usually two orthogonal aspects to "CRT emulation" in general, although for the Amiga really only one was relevant, except on the low end of the market.
The first is the display characteristic of the CRT itself. The analog nature of video means that there are no discrete pixels within a scanline, only smooth variations in voltage. The fact that phosphors don't equal pixels, and sometimes the electrons that contribute to the representation of a given pixel can hit more than one phosphor of the desired primary color. The persistence of the phosphors in use, as they fade. Those are relevant to any CRT simulation, regardless of the actual properties of the input signal (composite, s-video, RGB, component).
The second is the artifacts that occur with some video signals, such as the crosstalk that occurs with properly modulated composite video. Since the Amiga was an RGB-first system, these artifacts aren't generally relevant unless you're specifically targeting the look of Amiga graphics when displayed via composite, as was somewhat common (the A1000 and A1200 had color composite video output built in, and the A520 video modulator connected to the RGB video port, and thus worked with pretty much all Amigas). Various platforms had various levels of adherence to the actual NTSC spec (a few platforms, like the Apple II, even intentionally used a slight mis-timing of the signal to leverage NTSC signal characteristics to provide color output with a minimal amount of hardware). The Amiga did, however, output an extremely spec-compliant signal by default, especially when switched into interlace mode. This made the Amiga wonderful for video production work.
This is speculation and opinion, but I feel like a majority percentage of the complaints about CRT video quality are really about the latter. While CRTs aren't perfect, when displaying a high-resolution RGB or component signal on a high-resolution tube, they can offer an image quality that is very hard to match (although modern OLED-based sets are getting pretty good with this, and plasmas were also pretty good in this regard). Some of the deepest black levels you'll ever see, with zero sample-and-hold artifacting as seen on modern LCD panels. Virtually no display lag, the image appears on screen pretty much as soon as it comes into the set (HDTV CRTs with image processing notwithstanding, SD CRTs and PC monitors are often the best in this regard).
Of course, much of this is subjective preference, outside of the actual physical characteristics. Some people are bothered by the 15kHz flyback whine (which I can still hear, albeit at a reduced volume, at 43 years old). Some people find the interlacing used with SD video signals to be annoying. But there are also a segment of people who grew up with CRTs everywhere, who find all of that stuff nostalgic. Some of us even intentionally use NTSC filtering in emulators where possible to really tickle that nostalgia.
Yeah, that's why he finally presents the reconstruction on a similar device, CRT and all.
Some emulators now try to emulate the visual artefacts of CRT or phosphor monitors, scanlines, bleed and all. Of course doing so artificially takes considerable computation time.
Yes! I remember reading a long blog post or something about this very thing a few years ago, with photographs. The difference between a CRT and an LCD was amazing. Sadly, I couldn't find that post (and I did search...)
Once he got the color palette, resolution and aspect ratio, why didn't simply automated the conversion, eg. using nearest neighbor in color space to determine the color of each pixel? Why did he do it "by hand" instead?
However... I was wishing the recreation had been done in software rather than in Photoshop.
I was hoping that some clever image processing would result in a Github Repository of a program that could take any photograph of a pixel image, and reproduce the original pixels. Handling all of the distortions along the way...
I'm not going to spend a day and a half reproducing old pixel art in Photoshop. I celebrate an artist who will take the time to do that, and I think their final result is fantastic.
If there were a tool that would help me do this, there are situations where I would use it.
I actually wrote a tool that took a PNG and helped me break out the original sprites, backgrounds, and fonts from an old video game. But I recognize that doing this from a photograph is a couple orders of magnitude more difficult.
If anyone is looking for a technical challenge, and has the relevant skills, here I am highlighting how amazing I think it would be.
The effort the author is willing to put in is a main reason why this content is entertaining to me. The other main component is that he followed through and did it.
Commentary by those who don't care enough to invest a day doing it, that also haven't done it, and that are being critical of the work seems pathetic and sad.
I hope I'm inspiring someone else to put in a parallel effort, with a different form of artistry - writing image processing rather than staring at Photoshop.
If the artist took my comment as critical, I apologize - not my intent at all.
That was my first thought: write software to find each pixel and put it in an array based on its color value. Then find the 32 densest clusters in the array (i.e. the 32 most frequently used colors), determine the average color value of each of those clusters, and that's your palette.
Then run through each pixel again, and set it to the closest matching value from your palette. Done!
I think "find each pixel" is a lot harder than you and I are describing it. (I've done some of this work before.) Without knowing the intrinsic parameters of the camera, and how the photo from the camera was cropped, it's pretty rough...
...but on the other hand, with a high enough quality photograph, and a low enough resolution original image... it sure seems possible.
I disagree - we know the grid used. So the scan will just go through and pull out the average color found within each pixel area in the grid array, then those colors are adjusted to the nearest 32bit version (as explained in parent). I've done this sort of thing to convert photos into "pointillist" style images.
The first pass might be off - I can imagine adjusting the grid size to skip the scan lines for more accuracy. But the final result will be very close with 5% of the work involved. The guy has spent a day and a half for a task that should take less than an hour at most.
I happen to have the premiere issue of Amiga World magazine and looking at the original printed image, I can tell you that the vertical scan lines are straight as an arrow, and line up perfectly with the (cropped) sides of the image.
Even if they were distorted by a fisheye lens, it should be easy to use something like Photoshop's "pinch" filter to create an undistorted image to work from.
5. Group each pixel into a palette slot by plugging the H/S dimensions into K-means with 32 as the target (ignoring L for clustering to account for scanlines/flicker)
6. For each palette slot, calculate the "true" HSV value by taking the group's median H/S values and the mean V value
7. Convert HSV representation to 12-bit RGB colorspace
Sure, it's easy to write out the steps like that, but the devil is in the details. It's not super difficult for a human eye to figure out where the original pixels aught to go, but you just can't take a photograph of a photograph of a screen that was half-toned and printed with an offset printer or whatever they used and grab a clean original pixel matrix out of it with color accurate to even other parts of the image. The closer you get, the mushier it gets. Reducing the resolution using a nearest neighbor or bicubic algorithm would give you a cleaner pixel representation, but it still require a lot of cleanup to get the kind of accuracy he was going for, and inaccuracies would be a lot harder to spot in that context. I've worked on image-processing software for some big digital archival projects, I'm a long-time digital artist, and was a graphic designer having worked in print media. I would set myself a good long chunk of time to get that right and doing it for one single image rather than a necessarily reproducible process would not be close to worth it.
I was at least hoping he had an example image both in digital and print form from which to derive a mapping which could restore the pallette of four byte burger more accurately.
After using the scanlines to determine the grid size, I bet you could apply a pass of some filter in the frequency domain to remove the artefacts created by the CRT screen! Like here [1], where the author removes a moiré pattern created by the process of printing a photo.
I meant cleaning up the scanlines to make it easier to sample the pixel colors.
After running a Fourier transform you only need to paint over the obvious bright spots to remove these regular artefacts (see the linked article for a demonstration).
I mean, I'm not about to run any tests but I think you're underestimating how much work the human eyes do to iron out the little inconsistencies. I've done a lot of work with processing digitized images, and algorithmically converting a brand new 600dpi industrial flatbed scan of well-preserved black-and-white typed page into a 1-bit black-and-white tiff would often yield noisy, and sometimes unusable results for relatively clean looking images because our eyes see right through artifacts that most algorithms can't. I'm sure you could easily do the first 90% algorithmically– which is probably good enough for most developers— but for an artist to get the accuracy he was looking for, that last 10% would almost certainly take longer than the few hours he put into it.
Just freeze and save the entire contents of memory, paint program included, using an equivalent of an Action Replay (provided one existed for the Amiga at that time).
Datel didn't come out with an Action Replay cartridge for the Amiga until the A500 (ie, a few years after this). I still have my ARII- a truly amazing piece of hardware. In addition to letting you freeze a program and dump memory to disk, the cartridge had a ripper option that let you graphically pan through memory to look for images to save (another option searched for music trackers).
I can confirm that turning a monitor on its side does result in distorted colors, especially on the edges. When I experienced this with a Commodore 1701 monitor (we're talking early to mid-1980s) the only other electronic device nearby was the Commodore 64 it was attached to, so it's unlikely caused by other devices.
I believe that came later. I do recall my early IBM PC compatible having a monitor with a degauss button that would give a satisfying FOOMP sound (accompanied by a twitch of whatever was on the screen) if the monitor had been sufficiently gaussy before.
I'm working from old memories here but iirc the degaussing circuits in TVs and monitors only work after they've cooled down. He didn't have to leave it all night, maybe an hour if that would have done.
Monitors use electromagnets to steer an electron beam. The earth has a more or less constant magnetic field in a certain orientation. Rotating the monitor changes the magnetic flux the electron beam experiences and might distort which subpixels the electron beam is hitting.
I had a Samsung 19-inch pseudo-flat CRT that showed discoloration in the corners just by rotating it horizontally. Turning it off and on again fixed it (I supposed it degaussed on startup).
Captivating. I mostly had to listen to it as a podcast, occasionally sneaking a glimpse at the screen while waiting at a red light, and his descriptions were so precise and vivid I had no trouble following along. Love the documentarian voice and dry humor.
I don’t suppose there’s a version that is not scaled to 1.2x height, for conversion and display on an Amiga CRT, avoiding the need to scale the PNG and lose quality. (Ahoy, if you’re reading this.) I’d love to have such a version.
Std: https://www.flickr.com/photos/blakespot/52835711339/in/album...
Rotated: https://www.flickr.com/photos/blakespot/52834954342/in/album...
So lovely in phosphor!