Open Source Software Solutions

TESTIMAGES

This project contains a large archive of free digital images for testing purposes.
The mission of this project is to provide a standard set of images for testing image processing algorithms and visual devices (i.e. monitors, TVs and cinema projectors).
By using a standard set of images different researches are able to compare results, both visually and quantitatively.
All images were generated or taken by Nicola Asuni and released under (CC BY-NC-SA 4.0) license, this to avoid the copyright and licensing issues you may face when using test images of unknown origin.

Project

The image archive is divided in 3 main sections (folders): SAMPLING, COLOR and PATTERNS.

The COLOR and PATTERNS images are available in the following resolutions in 8 and 16 bit variations:
100x100, 120x120, 150x150, 160x120 QQVGA, 160x128, 160x144, 200x160, 200x200, 208x176, 220x176, 226x170, 230x172, 240x160 HQVGA, 240x180, 240x240, 300x300, 320x200 CGA, 320x240 QVGA, 320x256, 352x288 CIF, 360x240 WQVGA, 384x240 WQVGA, 384x288 SIF, 400x240 WQVGA, 400x400, 416x352, 420x292, 432x240 FWQVGA, 480x272 WQVGA, 480x320 HVGA, 480x360, 512x342, 512x384, 528x436, 600x600, 640x200, 640x256, 640x350, 640x360 nHD, 640x400, 640x480 VGA, 640x512, 720x348 Hercules, 720x350 MDA, 720x480 WVGA, 720x576, 768x576 PAL, 800x480 WVGA, 800x600 SVGA, 832x624 SVGA, 854x480 FWVGA, 864x480, 960x540 qHD, 960x640 DVGA, 984x738, 1024x480, 1024x600 WSVGA, 1024x768 XGA, 1136x640, 1152x768 WXGA, 1152x864 XGA+, 1152x870, 1152x900, 1200x824, 1200x1200, 1280x720 HD720, 1280x768 WXGA768, 1280x800 WXGA800, 1280x854, 1280x960 SXGA-, 1280x1024 SXGA, 1360x768, 1366x720, 1366x768, 1440x900 WXGA+, 1440x960 WSXGA, 1400x1050 SXGA+, 1600x768, 1600x900 HD+, 1600x1200 UXGA, 1680x944, 1680x1050 WSXGA+, 1920x1080 FHDTV, 1920x1200 WUXGA, 1920x1440, 2048x1050, 2048x1080 2K DC, 2048x1152 QWXGA, 2048x1536 QXGA, 2560x1440 WQHD, 2560x1600 WQXGA, 2560x2048 QSXGA, 2880x1620, 2880x1800 QWXGA+, 3200x1800 WQXGA+, 3200x2048 WQSXGA, 3200x2400 QUXGA, 3840x2160 4K SHDTV, 3840x2400 WQUXGA, 4096x2160 4K DC, 4096x2560 4K, 4096x3072 HXGA, 5120x2880 UHD+, 5120x3200 WHXGA, 5120x4096 HSXGA, 6400x4096 WHSXGA, 6400x4800 HUXGA, 7680x4320 8K FUHDTV, 7680x4800 WHUXGA, 8192x4320 8K DC, 8192x4608, 10000x7000 IMAX, 15360x8640 16K QUHDTV, 16384x8640 16K DC.

SAMPLING

This folder contains the testimages.zip archive and the INTERPOLATION folder.
These images are particularly useful to test image interpolation methods.
The images in this folder are all 8bit/channel.

testimages.zip

This archive contains 3 main folders:

  • ART: artificial 8bit grayscale images.
  • GRAY: natural 8bit grayscale images.
  • RGB: natural 3-Channel 8bit RGB color images.

each main folder contains:

  • 1 subfolder for original images (..._OR_1200x1200)
    (the size of the original images is 1200 x 1200 pixels).
  • 8 subfolders for various reduction factors (R = 2, 3, 4, 5, 6, 8, 10, 12)
    (the folder name indicate the reduction factor and the size of the images).

Reduction algorithm:

The size of images has been reduced by averaging the values of RxR sub-arrays (where R is the reducing factor).
For example, if the reduction factor is 3: X=(A+B+C+D+E+F+G+H+I)/9

	X = (A+B+C+D+E+F+G+H+I)/9
	
	+---+---+---+
	| A | B | C |
	+---+---+---+       +---+
	| D | E | F |  ==>  | X |
	+---+---+---+       +---+
	| G | H | I |
	+---+---+---+

INTERPOLATION

This folder contains several archives:

  • testimages_metrics.zip
    This archive contains Octave/Matlab scripts to calculate metrics about the differences between the original and interpolated images of the SAMPLING archive.
    This project includes reference metrics (DATA directory) calculated for standard interpolation methods on the other archives.

  • testimages_zoom_*.zip
    These archives contains enlarged images of the testimages.zip archive.
    The images are enlarged with various interpolation methods.
    The size of all images is 1200 x 1200 pixels, to be compared with the original images on the testimages.zip archive.

    • testimages_zoom_nn.zip : Images enlarged with NEAREST-NEIGHBOR interpolation method (Octave imresize 'nearest').
    • testimages_zoom_bl.zip : Images enlarged with BILINEAR interpolation method (Octave imresize 'bilinear').
    • testimages_zoom_bc.zip : Images enlarged with BICUBIC interpolation method (Octave imresize 'bicubic').
    • testimages_zoom_l2.zip : Images enlarged with LANCZOS2 interpolation method.
      The following ImageMagick command has been used: convert INPUT_IMAGE.png -resize 1200x1200 -filter Lanczos -define filter:lobes=2 -format png -compress LZW -quality 1 OUTPUT_IMAGE.png
    • testimages_zoom_l3.zip : Images enlarged with LANCZOS3 interpolation method.
      The following ImageMagick command has been used: convert INPUT_IMAGE.png -resize 1200x1200 -filter Lanczos -define filter:lobes=3 -format png -compress LZW -quality 1 OUTPUT_IMAGE.png
    • testimages_zoom_mn.zip : Images enlarged with CUBIC MITCHELL interpolation method.
      The following ImageMagick command has been used: convert INPUT_IMAGE.png -resize 1200x1200 -filter Mitchell -format png -compress LZW -quality 1 OUTPUT_IMAGE.png

COLOR

This archive contains 8 and 16 bit 3-Channel RGB images for different standard and non-standard resolutions.
All images were generated using custom Octave/MATLAB scripts to guarantee the precise positioning and value of every pixel, and then saved as compressed PNG format using the command line tool optipng with the options "-quiet -clobber -nx -zc9 -zm8 -zs1 -f5".

The resolution of the images is indicated in the archive file name: WIDTHxHEIGHT.
All the images images are prefixed as "img_[WIDTH]x[HEIGHT]_[NUM_LAYERS]x[BITS_PER_LAYER]bit_".

In each compressed file you can find the following images:

  • color_bars_CMYKWRGB
    8 vertical bars at maximum intensity representing the colors: Cyan (Green + Blue), Magenta (Red + Blue), Yellow (Red + Green), Black, White (Red + Green + Blue), Red, Green, Blue

  • color_bars_CMYKWRGB_100IRE
    same as "color_bars_CMYKWRGB" but with intensity levels set to 7.5IRE (16 for 8 bit, 4096 for 16 bit) and 100IRE (235 for 8 bit, 60160 for 16 bit)

  • color_bars_CMYKWRGB_75IRE
    same as "color_bars_CMYKWRGB" but with intensity levels set to 7.5IRE (16 for 8 bit, 4096 for 16 bit) and 75IRE (180 for 8 bit, 46144 for 16 bit)

  • color_bars_CMYKWRGB_gradient
    same as "color_bars_CMYKWRGB" but with intensity gradient from top 0% to bottom 100%

  • color_rainbow
    this image contains six vertical color sections with the following variations:

    1. red = MAX ; green = 0 → MAX ; blue = 0
    2. red = MAX → 0 ; green = MAX ; blue = 0
    3. red = 0 ; green = MAX ; blue = 0 → MAX
    4. red = 0 ; green = MAX → 0 ; blue = MAX
    5. red = 0 → MAX ; green = 0 ; blue = MAX
    6. red = MAX ; green = 0 ; blue = MAX → 0

    MAX is the maximum intensity value: 255 for 8 bit, 65535 for 16 bit

  • color_rainbow_gradient
    same as "color_rainbow" but with vertical intensity level variations:

    • in the half upper part the color channel intensity vary from 0% to 100% intensity
    • in the half lower part the non-color channels intensity vary from 0% to 100% intensity
  • color_SMPTE_RP_219_2002
    image generated as described in "SMPTE RP 219:2002 High-Definition, Standard-Definition Compatible Color Bar Signal" and stretched to fit various resolutions.

PATTERNS

This archive contains 8 and 16 bit images for different standard and non-standard resolutions.
All images were generated using custom Octave/MATLAB scripts to guarantee the precise positioning and value of every pixel, and then saved as compressed PNG format using the command line tool optipng with the options "-quiet -clobber -nx -zc9 -zm8 -zs0 -f0".

The resolution of the images is indicated in the archive file name: WIDTHxHEIGHT.
All the images images are prefixed as "img_[WIDTH]x[HEIGHT]_[NUM_LAYERS]x[BITS_PER_LAYER]bit_".

Every folder folder contains 2 sub-folders:

  • 8BIT: 8 bit/channel images
  • 16BIT: 16 bit/channel images

These folders contains the following sub-folders:

  • GRAY: (1-Channel Grayscale) Contains the reference geometric patterns described below.
    Each image pattern is copied in one or more channel of 3-Channel RGB image to create the following variations:
  • RED: (3-Channel RGB) Red
  • GREEN: (3-Channel RGB) Green
  • BLUE: (3-Channel RGB) Blue
  • RED_GREEN: (3-Channel RGB) Red + Green
  • RED_BLUE: (3-Channel RGB) Red + Blue
  • GREEN_BLUE: (3-Channel RGB) Green + Blue
  • RED_GREEN_BLUE: (3-Channel RGB) Red + Green + Blue

GEOMETRIC PATTERNS

  • bars_[ORIENTATION]_[TYPE]_[BAR_WIDTH]_[PHASE]xhalfPI
    bars oriented as described by [ORIENTATION] (vertical or horizontal)
    the intensity curve is defined by the following curve [TYPE]:
    • square : square (step curve)
    • sin : sinusoidal
    • triangle : triangular (sawtooth)
    [BAR_WIDTH] represent the witdh of an entire curve period - they are powers of 2
    [PHASE] represent the curve phase:
    • 0 : 0
    • 1 : (1/2)*PI
    • 2 : PI
    • 3 : (3/2)*PI
  • bars_[ORIENTATION]_[TYPE]_progressive
    bars oriented as described by [ORIENTATION] (vertical or horizontal) with a [TYPE] shape and variable width
  • grid_square_progressive
    grid obtained combining (XOR) bars_vertical_square_progressive and bars_horizontal_square_progressive images
  • bars_45deg_tlbr_[BAR_WIDTH]
    bars oriented at 45 degrees (top-left to bottom-right)
  • bars_45deg_bltr_[BAR_WIDTH]
    bars oriented at 45 degrees (bottom-left to top-rigth)
  • rectangles_concentric_[BORDER_WIDTH]_0
    concentric rectangles
  • rectangles_concentric_[BORDER_WIDTH]_1
    inverse image of rectangles_concentric_[BORDER_WIDTH]_0
  • grid_rectangle_[CELL_WIDTH]x[CELL_HEIGHT]_0
    grid with alternate black and white rectangles
  • grid_rectangle_[CELL_WIDTH]x[CELL_HEIGHT]_1
    inverse image of the grid image above
  • diagonal_[CORNER]
    image divided in two parts (black and white) along the diagonal
    Possible values for [CORNER] are:
    • tl : top-left
    • tr : top-right
    • br : bottom-right
    • bl : bottom-left
  • grid_triangle_a_[CELL_WIDTH]x[CELL_HEIGHT]_0
    grid obtained by combining triangles
  • grid_triangle_a_[CELL_WIDTH]x[CELL_HEIGHT]_1
    inverse of the image above
  • grid_triangles_b_[CELL_WIDTH]x[CELL_HEIGHT]_0
    grid obtained by combining triangles
  • grid_triangles_b_[CELL_WIDTH]x[CELL_HEIGHT]_1
    inverse of the image above
  • grid_lines_cross_0
    central white cross in a black background
  • grid_lines_cross_1
    inverse of the image above
  • grid_line_45deg_0
    grid obtained by combining 45 degrees bars
  • grid_line_45deg_1
    inverse of the image above
  • grid_lines_quarters_0
    image divided in 4x4 rectangles usign white lines over a black background
  • grid_lines_quarters_1
    inverse of the image above
  • grid_line_thirds_0
    image divided in 3x3 rectangles usign white lines over a black background
  • grid_line_thirds_1
    inverse of the image above
  • grid_line_intersections_0
    grid obtained using vertica, horizontal and 45 degrees white lines over a black background
  • grid_line_intersections_1
    inverse of the image above
  • rays_radial_corner_[CORNER]
    ray lines with thickness of 1 degree
    Possible values for [CORNER] are:
    • tl : top-left
    • tr : top-right
    • br : bottom-right
    • bl : bottom-left
    • t : top
    • b : bottom
    • l : left
    • r : right
  • rays_radial_allcorners
    grid obtained combining (XOR) the first four rays_radial_corner_[CORNER] images
  • rays_radial_center
    ray lines with thickness of 1 degree originating in the image center
  • circles_corner_[CORNER]_[BAR_WIDTH]
    alternate back and white concentric discs
    Possible values for [CORNER] are:
    • tl : top-left
    • tr : top-right
    • br : bottom-right
    • bl : bottom-left
  • circles_progressive_a_corner_[CORNER]
    alternate back and white concentric discs centered in a corner with progressive bar tickness
  • circles_progressive_b_corner_[CORNER]
    alternate back and white concentric discs centered in a corner with progressive bar tickness
  • grid_circles_progressive_a
    grid obtained combining (XOR) the circles_progressive_a_corner_[CORNER] images
  • grid_circles_progressive_b
    grid obtained combining (XOR) the circles_progressive_b_corner_[CORNER] images
  • circles_center_[BAR_WIDTH]
    concentric rings with variable thickness, centered in the image center
  • gray_level_crossing
    uniform transition form zero to maximum intensity in the half upper image and from maximum intensity to zero in the half lower image
  • gray_level_bits
    16 rows representing intensity quantization from 1 bit (top row) to 16 bit (bottom row)
    Note: in the 8BIT images the the rows from 9 to 16 are the same as the row 8
  • gray_level_all
    uniform transition from zero to maximum intensity, distribuited across all pixels from left to right and from top to bottom
  • color_full
    all pixels are set to the maximum intensity value
  • color_16th
    16 vertical bars representing intensity variation from zero to maximum value

License

Support This Project Get TESTIMAGES at SourceForge.net. Fast, secure and Free Open Source software downloads Creative Commons License

IT | EN
W3C XHTML 1.0 | W3C CSS 2.0