Skip to main content

Digital Gallery - Photo processing and interactive system

I was approached by Sherborne Museum to develop a fully integrated photo processing, cataloguing and interactive display system.

The key aims of the project were:
  1. A database system to enable the digitisation and management of the photo collection.
  2. A simple to use public interface to allow browsing and searching of the collection via a touch interface.
  3. The public will be able to order copies of photographs by noting each photo reference on an order form and handing it to the museum reception
The system comprises a very capable yet simple to use management application for use by the museum staff and a touch enabled application for use by visitors to the museum.

Management Application

The management application provides a range of functions while being very straightforward to use. Some of the key features are:

  • Import of photos directly from a flat-bed scanner.
  • Import of photos from hard drive, CD or USB drive.
  • Cataloguing of all photos in departments and categories.
  • Maintenance of all attributes relating to images.
Each photo can be assigned the following:
  • Title
  • Public description - the description shown to museum visitors.
  • Private description - the description used by museum staff to identity and describe images.
  • Category.
  • Attribution (e.g. artist or photographer).
  • Media type (e.g. slide, print, negative).
  • Time period (either exact date, decade or century).
Photos can be printed, exported to Adobe Photoshop or published directly to the public system.

The main screen in the management application.

One of the photo management screens showing options for importing images from disk, scanning batches of images or scanning a single image.

An example image details screen showing the various attributes and functions.

Public System

As well as providing better management of the museum's photographic collection the main goal was to provide a means for museum visitors to browse the majority of the collection, view details on every image and order prints.

After consulting on the various options it was decided that the best approach would be to provided a dedicated touch based system for browsing the entire collection.

I have developed the system in such way that almost any design could be used for the public system with minimal changes to the way the system works - for the first implementation it was decided that a very simple un-cluttered interface would be the best way forward.

An example category section within the public system. All photos automatically tile to fill the screen.

An example detail page showing title, reference, description and attribution. Options are provided to zoom, return to the category page or add the photo to the user's basket.

A bespoke lectern was commissioned to house the dedicated 24 inch touch screen. Any size lectern or screen could have been used but a 24 inch screen best suited the museum's requirements.


Popular posts from this blog

Take website screenshot using ASP.NET

Utilising a hidden web browser control it is possible to take a screenshot of any website. The code shown below is based on an article at (sorry the site now appears to be offline May 2012) but I have translated it from VB.NET to C# and will work in .NET so theoretically for any Windows or ASP.NET web project.
using System; using System.Drawing; using System.Drawing.Imaging; using System.Windows.Forms; using System.Diagnostics; namespace WebsiteScreenshot { public class GetImage { private int s_Height; private int s_Width; private int f_Height; private int f_Width; private string myURL; public int ScreenHeight { get { return s_Height; } set { s_Height = value; } } public int ScreenWidth { get { return s_Width; } set { s_Width = value; } } public int ImageWidth { get { return f_Width; } set { f_Width = value; } } public int ImageHeight { get { return f_Height; } set { f_Height = value; } } public string Website …

John Hamblin Furniture Restorer - New Website

I was asked to produce a new website for local furniture restorer and cabinet maker John Hamblin. Having struggled with another provider who failed to deliver a finished website I was asked to take the website on and produce a simple site that communicates their values of high quality workmanship and excellent customer service.

The new website is live and can be viewed here:

Compress and de-compress strings in C#

A collection of resources on compressing and encrypting strings in C#.
Microsoft documentation on the System.IO.Compression.GZipStream class:
Helpful example class utilising GZip:
The GZipStream class is predominantly used for file compression but can be used efficiently for compressing strings of 300-400 characters or more. Below 300 characters there isn’t any measurable gain from the compression and for particularly short strings the compressed version may in fact be larger.
Class provided by C Sharp Help:
using System.IO.Compression;
using System.Text;
using System.IO;
public static string Compress(string text)
    byte[] buffer = Encoding.UTF8.GetBytes(text);
    MemoryStream ms = new MemoryStream();
    using (GZipStream zip = new GZipStream(ms, CompressionMode.Compress, true))����…