Jump to content

Image server

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by JonWinter (talk | contribs) at 18:55, 21 January 2013 (Commercial: inserting the patent holder on dynamic imaging to the commercial section without any marketing fluff). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

An image server is web server software which specializes in delivering (and often modifying) images. Not all image servers support HTTP or can be used on web sites, however.

While traditional web servers generally supply clients with static copies of image files, image servers usually perform additional image processing before serving the file. These functions may include frame/format selection, resizing, cropping, alpha blending, compositing source images, rotating, color adjustment, and filtering.

Concepts

The proliferation of mobile devices, screen resolutions, and pixel densities has forced web designers to create an ever-increasing number of image variations. Image servers capable of dynamic image resizing can produce the required sizes and variations on demand, eliminating repetitive work and the room for human error.

Declarative APIs (such as RIAPI) allow the client to describe resulting characteristics of the image, such as desired size, aspect ratio, rotation, fit modes, etc. Command order is not important - ?width=200&height=100 will produce the same result as ?height=100&width=200. The server is free to coalesce compatible operations to improve performance.

Imperative APIs, (such as IIP) describe the operations to apply to the image in order, offering the user more control, but also more responsibility for calculations.

Uses

Zoomable photos are a cornerstone of e-commerce and may be the most popular use for image servers.

The simplest product viewers usually require at least 3 versions of an image: a 100x100 thumbnail, a 400x300 medium 'in-page, selected', and a 1200x900 'zoomed' version. Combined with the original file, this results in 4 separate images that must be stored, updated, and linked to.

In e-commerce, image servers are qualified by their abilities to scale to hundreds of thousands of images, to multiple CPUs or load-balanced server machines, and to the quantity and quality of their image processing functionalities, such as resizing, compositing, zoom and 3D viewers, and the addition of dynamic data to the images in the form of overlaid text or graphics.

Dynamic compositing is also extremely useful for merchants who permit product customization. Many vehicle manufacturers use dynamic compositing to let the visitor visualize their customizations.

Large image sets, mapping, and geospatial use

Geospatial or mapping has particular need for specialized "image servers". Aerial and satellite images are georeferenced and can be hundreds or thousands of gigabytes in size. Traditional mechanisms for serving this data have proved inadequate. The first specialized image server for geospatial image data was Image Web Server, released in 1999. Image Web Server, among other protocols, supports ECWP (ERDAS Compressed Wavelet Protocol) that "streams" large images to a user's application, rather than sending a regular image over HTTP. The well known standard for a distributed architecture of geospatial data is Web Map Service.

Responsive web design & mobile support

Responsive web design has driven the creation of dozens of new image servers which often integrate device or resolution detection.

To prevent resampling artifacts, it's important that images display at native resolution - one image pixel per device display pixel.

To accomplish this, a large number of variations must be created for each screen resolution. An image server can solve that by dynamically adjusting the size of the image according to the user's browser settings.


Backwards compatibility

Old versions of Internet Explorer have trouble displaying PNG and MNG images, but an image server could detect the user's browser version and send the image in a supported format such as GIF instead.

Image servers may enable early adopters to begin using [WebP] before all browsers implement support.

Standards and Specifications

Software

Open Source

  • IIPImage - for high resolution TIFF and JPEG2000 images
  • Apophnia - Open Source imaging server, supporting various types of transformations
  • Djatoka - Open Source imaging server, Java-based
  • ImageResizing.Net - High-performance open-source imaging server with 38 plugins. Supports RIAPI, Amazon Web Services, MS SQL, CloudFront, and seam carving.
  • converjon - An on-the-fly image conversion service written in node.js

Commercial

  • MediaRich Server Platform, The Patented dynamic realtime rendering and compositing server for product images and other filetypes. Realtime imaging of 500 filetypes provides zoom and pan on any content with low bandwidth requirements, Zoom and Pan on video frames, colorization, text rendering of in any language, smart device support
  • Picaris Platform, Dynamic rendering and compositing server for product images
  • Bildero Server, Dynamic Imaging with one source Images, 360 spin, Zoom and Pan, resize images on the fly
  • LiquidPixels LiquiFire, Dynamic Imaging appliances for Zoom and Pan, 360 spin, colorization, text rendering, device transcoding
  • NeptuneLabs FSI Server, Realtime for 2D, 3D (stereoscopic), 360 spin, page flip, image manipulation

See also

References