Move DHR examples to subdir in preparation for adding SHR examples
14
README.md
|
@ -90,11 +90,11 @@ TODO: link to KansasFest 2022 talk slides/video for more details
|
|||
|
||||
## Double Hi-Res
|
||||
|
||||
See [here](examples/gallery.md) for more sample Double Hi-Res image conversions.
|
||||
See [here](examples/dhr/gallery.md) for more sample Double Hi-Res image conversions.
|
||||
|
||||
### Original
|
||||
|
||||
![Two colourful parrots sitting on a branch](examples/parrots-original.png)
|
||||
![Two colourful parrots sitting on a branch](examples/dhr/parrots-original.png)
|
||||
|
||||
(Source: [Shreygadgil](https://commons.wikimedia.org/wiki/File:Vibrant_Wings.jpg), [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons)
|
||||
|
||||
|
@ -103,18 +103,18 @@ See [here](examples/gallery.md) for more sample Double Hi-Res image conversions.
|
|||
This image was generated using
|
||||
|
||||
```buildoutcfg
|
||||
python convert.py --lookahead 8 --palette openemulator examples/parrots-original.png examples/parrots-iipix-openemulator.dhr
|
||||
python convert.py --lookahead 8 --palette openemulator examples/dhr/parrots-original.png examples/dhr/parrots-iipix-openemulator.dhr
|
||||
```
|
||||
|
||||
The resulting ][-pix preview PNG image is shown here.
|
||||
|
||||
![Two colourful parrots sitting on a branch](examples/parrots-iipix-openemulator-preview.png)
|
||||
![Two colourful parrots sitting on a branch](examples/dhr/parrots-iipix-openemulator-preview.png)
|
||||
|
||||
### OpenEmulator screenshot
|
||||
|
||||
This is a screenshot taken from OpenEmulator when viewing the Double Hi-res image.
|
||||
|
||||
![Two colourful parrots sitting on a branch](examples/parrots-iipix-openemulator-openemulator.png)
|
||||
![Two colourful parrots sitting on a branch](examples/dhr/parrots-iipix-openemulator-openemulator.png)
|
||||
|
||||
Some difference in colour tone is visible due to blending of colours across pixels (e.g. brown blending into grey, in the background). This is due to the fact that OpenEmulator simulates the reduced chroma bandwidth of the NTSC signal.
|
||||
|
||||
|
@ -122,7 +122,7 @@ Some difference in colour tone is visible due to blending of colours across pixe
|
|||
|
||||
This is an OpenEmulator screenshot of the same image converted with `--palette=ntsc` instead of `--palette=openemulator`. Colour match to the original is substantially improved, and more colour detail is visible, e.g. in the shading of the background.
|
||||
|
||||
![Two colourful parrots sitting on a branch](examples/parrots-iipix-ntsc-openemulator.png)
|
||||
![Two colourful parrots sitting on a branch](examples/dhr/parrots-iipix-ntsc-openemulator.png)
|
||||
|
||||
## Super Hi-Res
|
||||
|
||||
|
@ -157,4 +157,4 @@ TODO: add example images
|
|||
|
||||
Initial release
|
||||
|
||||
![me](examples/kris-iipix-openemulator.png)
|
||||
![me](examples/dhr/kris-iipix-openemulator.png)
|
||||
|
|
44
docs/dhr.md
|
@ -67,19 +67,19 @@ By contrast, OpenEmulator uses a more complex (and realistic) band-pass filterin
|
|||
|
||||
(Source: [Reinhold Möller](https://commons.wikimedia.org/wiki/File:Nymphaea_caerulea-20091014-RM-115245.jpg), [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0), via Wikimedia Commons)
|
||||
|
||||
![Nymphaea](../examples/nymphaea-original.png)
|
||||
![Nymphaea](../examples/dhr/nymphaea-original.png)
|
||||
|
||||
OpenEmulator screenshot of image produced with `--palette=openemulator --lookahead=8`. The distorted background colour compared to the original is particularly noticeable.
|
||||
|
||||
![Nymphaea](../examples/nymphaea-iipix-openemulator-openemulator.png)
|
||||
![Nymphaea](../examples/dhr/nymphaea-iipix-openemulator-openemulator.png)
|
||||
|
||||
OpenEmulator screenshot of image produced with `--palette=ntsc --lookahead=8`. Not only is the background colour a much better match, the image shading and detail is markedly improved.
|
||||
|
||||
![Nymphaea](../examples/nymphaea-iipix-ntsc-openemulator.png)
|
||||
![Nymphaea](../examples/dhr/nymphaea-iipix-ntsc-openemulator.png)
|
||||
|
||||
Rendering the same .dhr image with 4-pixel colour shows the reason for the difference. For example the background shading is due to pixel sequences that appear (with this simpler and less hardware-accurate rendering scheme) as sequences of grey and dark green, with a lot of blue and red sprinkled in. In NTSC these pixel sequences combine to produce various shades of green.
|
||||
|
||||
![Nymphaea](../examples/nymphaea-iipix-ntsc-preview-openemulator.png)
|
||||
![Nymphaea](../examples/dhr/nymphaea-iipix-ntsc-preview-openemulator.png)
|
||||
|
||||
# Dithering and Double Hi-Res
|
||||
|
||||
|
@ -188,7 +188,7 @@ The mapping from RGB colour space to CAM16-UCS is quite complex, so to avoid thi
|
|||
These three images were converted using the same target (openemulator) palette, using ][-pix, bmp2dhr and a2bestpix (since this is supported by all three), and are shown as screenshots from openemulator.
|
||||
|
||||
### Original
|
||||
![original source image](../examples/paperclips-original.png)
|
||||
![original source image](../examples/dhr/paperclips-original.png)
|
||||
|
||||
(Source: [Purple Sherbet Photography from Worldwide!](https://commons.wikimedia.org/wiki/File:Colourful_assortment_of_paper_clips_(10421946796).jpg), [CC BY 2.0](https://creativecommons.org/licenses/by/2.0), via Wikimedia Commons)
|
||||
|
||||
|
@ -198,24 +198,24 @@ The following images were all generated with a palette approximating OpenEmulato
|
|||
|
||||
Preview image and OpenEmulator screenshot
|
||||
|
||||
![ii-pix preview](../examples/paperclips-iipix-openemulator-preview.png)
|
||||
![ii-pix screenshot](../examples/paperclips-iipix-openemulator-openemulator.png)
|
||||
![ii-pix preview](../examples/dhr/paperclips-iipix-openemulator-preview.png)
|
||||
![ii-pix screenshot](../examples/dhr/paperclips-iipix-openemulator-openemulator.png)
|
||||
|
||||
### ][-pix NTSC 8-pixel colour (Preview image)
|
||||
|
||||
Preview image and OpenEmulator screenshot
|
||||
|
||||
![ii-pix preview](../examples/paperclips-iipix-ntsc-preview.png)
|
||||
![ii-pix screenshot](../examples/paperclips-iipix-ntsc-openemulator.png)
|
||||
![ii-pix preview](../examples/dhr/paperclips-iipix-ntsc-preview.png)
|
||||
![ii-pix screenshot](../examples/dhr/paperclips-iipix-ntsc-openemulator.png)
|
||||
|
||||
### bmp2dhr (OpenEmulator screenshot)
|
||||
![bmp2dhr screenshot](../examples/paperclips-bmp2dhr-openemulator.png)
|
||||
![bmp2dhr screenshot](../examples/dhr/paperclips-bmp2dhr-openemulator.png)
|
||||
|
||||
Comparing bmp2dhr under openemulator is the scenario most favourable to it, since the 140px resolution and non-treatment of fringing is masked by the chroma blending. Colours are similar to ][-pix, but the 140px dithering and lack of gamma correction results in less detail, e.g. in hilights/shadows.
|
||||
|
||||
### a2bestpix (OpenEmulator screenshot)
|
||||
|
||||
![a2bestpix screenshot](../examples/paperclips-a2bestpix-openemulator.png)
|
||||
![a2bestpix screenshot](../examples/dhr/paperclips-a2bestpix-openemulator.png)
|
||||
|
||||
This a2bestpix image is actually atypical in quality, and shows some severe colour errors relating to the pixels that should be close to the orange/brown colours. These may be due to errors/omissions in the set of "colour blocks". The effects of not gamma-correcting the source image can also be seen.
|
||||
|
||||
|
@ -225,7 +225,7 @@ The difference in treatment of NTSC artifacts is much more visible when using an
|
|||
|
||||
### Original
|
||||
|
||||
![original source image](../examples/groundhog-original.png)
|
||||
![original source image](../examples/dhr/groundhog-original.png)
|
||||
|
||||
(Source: [Cephas](https://commons.wikimedia.org/wiki/File:Marmota_monax_UL_04.jpg), [CC BY-SA 3.0](https://creativecommons.org/licenses/by-sa/3.0), via Wikimedia Commons)
|
||||
|
||||
|
@ -233,34 +233,34 @@ The following images were generated with a palette matching the one used by Virt
|
|||
|
||||
### ][-pix
|
||||
|
||||
![original source image](../examples/groundhog-original.png)
|
||||
![ii-pix preview](../examples/groundhog-iipix-virtualii-preview.png)
|
||||
![original source image](../examples/dhr/groundhog-original.png)
|
||||
![ii-pix preview](../examples/dhr/groundhog-iipix-virtualii-preview.png)
|
||||
|
||||
### bmp2dhr
|
||||
|
||||
![original source image](../examples/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/groundhog-bmp2dhr-virtualii.png)
|
||||
![original source image](../examples/dhr/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/dhr/groundhog-bmp2dhr-virtualii.png)
|
||||
|
||||
The image is heavily impacted by colour fringing, which bmp2dhr does not account for at all. The difference in brightness of the groundhog's flank is also because bmp2dhr does not gamma-correct the image, so shadows/highlights tend to get blown out.
|
||||
|
||||
### bmp2dhr (OpenEmulator)
|
||||
|
||||
![original source image](../examples/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/groundhog-bmp2dhr-openemulator.png)
|
||||
![original source image](../examples/dhr/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/dhr/groundhog-bmp2dhr-openemulator.png)
|
||||
|
||||
This bmp2dhr image was generated using a palette approximating OpenEmulator's colours (`--palette=openemulator` for ][-pix), i.e. not the same image files as above.
|
||||
On OpenEmulator, which simulates NTSC chroma sub-sampling, the fringing is not pronounced but changes the colour balance of the image, e.g. creates a greenish tinge.
|
||||
|
||||
### ][-pix, 4-pixel colour (OpenEmulator)
|
||||
|
||||
![original source image](../examples/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/groundhog-iipix-openemulator-openemulator.png)
|
||||
![original source image](../examples/dhr/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/dhr/groundhog-iipix-openemulator-openemulator.png)
|
||||
|
||||
Colour balance here is also slightly distorted due to not fully accounting for chroma blending.
|
||||
|
||||
### ][-pix, NTSC 8-pixel colour (OpenEmulator)
|
||||
|
||||
![original source image](../examples/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/groundhog-iipix-ntsc-openemulator.png)
|
||||
![original source image](../examples/dhr/groundhog-original.png)
|
||||
![ii-pix screenshot](../examples/dhr/groundhog-iipix-ntsc-openemulator.png)
|
||||
|
||||
Detail and colour balance is much improved.
|
||||
|
|
Before Width: | Height: | Size: 549 KiB After Width: | Height: | Size: 549 KiB |
Before Width: | Height: | Size: 456 KiB After Width: | Height: | Size: 456 KiB |
Before Width: | Height: | Size: 512 KiB After Width: | Height: | Size: 512 KiB |
Before Width: | Height: | Size: 304 KiB After Width: | Height: | Size: 304 KiB |
Before Width: | Height: | Size: 314 KiB After Width: | Height: | Size: 314 KiB |
Before Width: | Height: | Size: 584 KiB After Width: | Height: | Size: 584 KiB |
Before Width: | Height: | Size: 503 KiB After Width: | Height: | Size: 503 KiB |
Before Width: | Height: | Size: 411 KiB After Width: | Height: | Size: 411 KiB |
Before Width: | Height: | Size: 462 KiB After Width: | Height: | Size: 462 KiB |
Before Width: | Height: | Size: 250 KiB After Width: | Height: | Size: 250 KiB |
Before Width: | Height: | Size: 279 KiB After Width: | Height: | Size: 279 KiB |
Before Width: | Height: | Size: 566 KiB After Width: | Height: | Size: 566 KiB |
Before Width: | Height: | Size: 521 KiB After Width: | Height: | Size: 521 KiB |
Before Width: | Height: | Size: 437 KiB After Width: | Height: | Size: 437 KiB |
Before Width: | Height: | Size: 474 KiB After Width: | Height: | Size: 474 KiB |
Before Width: | Height: | Size: 274 KiB After Width: | Height: | Size: 274 KiB |
Before Width: | Height: | Size: 248 KiB After Width: | Height: | Size: 248 KiB |
Before Width: | Height: | Size: 494 KiB After Width: | Height: | Size: 494 KiB |
Before Width: | Height: | Size: 554 KiB After Width: | Height: | Size: 554 KiB |
Before Width: | Height: | Size: 644 KiB After Width: | Height: | Size: 644 KiB |
Before Width: | Height: | Size: 564 KiB After Width: | Height: | Size: 564 KiB |
Before Width: | Height: | Size: 513 KiB After Width: | Height: | Size: 513 KiB |
Before Width: | Height: | Size: 544 KiB After Width: | Height: | Size: 544 KiB |
Before Width: | Height: | Size: 370 KiB After Width: | Height: | Size: 370 KiB |
Before Width: | Height: | Size: 347 KiB After Width: | Height: | Size: 347 KiB |
Before Width: | Height: | Size: 579 KiB After Width: | Height: | Size: 579 KiB |
Before Width: | Height: | Size: 499 KiB After Width: | Height: | Size: 499 KiB |
Before Width: | Height: | Size: 565 KiB After Width: | Height: | Size: 565 KiB |
Before Width: | Height: | Size: 505 KiB After Width: | Height: | Size: 505 KiB |
Before Width: | Height: | Size: 540 KiB After Width: | Height: | Size: 540 KiB |
Before Width: | Height: | Size: 365 KiB After Width: | Height: | Size: 365 KiB |
Before Width: | Height: | Size: 339 KiB After Width: | Height: | Size: 339 KiB |
Before Width: | Height: | Size: 481 KiB After Width: | Height: | Size: 481 KiB |
Before Width: | Height: | Size: 582 KiB After Width: | Height: | Size: 582 KiB |
Before Width: | Height: | Size: 532 KiB After Width: | Height: | Size: 532 KiB |
Before Width: | Height: | Size: 556 KiB After Width: | Height: | Size: 556 KiB |
Before Width: | Height: | Size: 496 KiB After Width: | Height: | Size: 496 KiB |
Before Width: | Height: | Size: 534 KiB After Width: | Height: | Size: 534 KiB |
Before Width: | Height: | Size: 299 KiB After Width: | Height: | Size: 299 KiB |
Before Width: | Height: | Size: 304 KiB After Width: | Height: | Size: 304 KiB |
Before Width: | Height: | Size: 357 KiB After Width: | Height: | Size: 357 KiB |
Before Width: | Height: | Size: 530 KiB After Width: | Height: | Size: 530 KiB |
Before Width: | Height: | Size: 441 KiB After Width: | Height: | Size: 441 KiB |
Before Width: | Height: | Size: 488 KiB After Width: | Height: | Size: 488 KiB |
Before Width: | Height: | Size: 310 KiB After Width: | Height: | Size: 310 KiB |
Before Width: | Height: | Size: 305 KiB After Width: | Height: | Size: 305 KiB |
Before Width: | Height: | Size: 473 KiB After Width: | Height: | Size: 473 KiB |
Before Width: | Height: | Size: 557 KiB After Width: | Height: | Size: 557 KiB |
Before Width: | Height: | Size: 421 KiB After Width: | Height: | Size: 421 KiB |
Before Width: | Height: | Size: 487 KiB After Width: | Height: | Size: 487 KiB |
Before Width: | Height: | Size: 518 KiB After Width: | Height: | Size: 518 KiB |
Before Width: | Height: | Size: 265 KiB After Width: | Height: | Size: 265 KiB |
Before Width: | Height: | Size: 274 KiB After Width: | Height: | Size: 274 KiB |
Before Width: | Height: | Size: 403 KiB After Width: | Height: | Size: 403 KiB |
Before Width: | Height: | Size: 565 KiB After Width: | Height: | Size: 565 KiB |
Before Width: | Height: | Size: 558 KiB After Width: | Height: | Size: 558 KiB |
Before Width: | Height: | Size: 570 KiB After Width: | Height: | Size: 570 KiB |
Before Width: | Height: | Size: 473 KiB After Width: | Height: | Size: 473 KiB |
Before Width: | Height: | Size: 539 KiB After Width: | Height: | Size: 539 KiB |
Before Width: | Height: | Size: 318 KiB After Width: | Height: | Size: 318 KiB |
Before Width: | Height: | Size: 328 KiB After Width: | Height: | Size: 328 KiB |
Before Width: | Height: | Size: 522 KiB After Width: | Height: | Size: 522 KiB |
Before Width: | Height: | Size: 560 KiB After Width: | Height: | Size: 560 KiB |
Before Width: | Height: | Size: 502 KiB After Width: | Height: | Size: 502 KiB |
Before Width: | Height: | Size: 535 KiB After Width: | Height: | Size: 535 KiB |
Before Width: | Height: | Size: 341 KiB After Width: | Height: | Size: 341 KiB |