Image Processing

A number of processing steps may be required before an image can be rendered by a braille embosser, e.g.:

  • simplification
  • clipping, editing, etc.
  • format conversion


Most input images will be far too complex for use on a small tactile surface. So, various forms of image simplification will be needed. Unfortunately, this is commonly the hardest step; in many cases, it is an AI-complete problem.

If the input is a raster file, image recognition and characterization can be used to extract semantic information. Google's Image Search does a fine job of this; unfortunately, its GUI is inaccessible to blind users. Alternatively, techniques such as thresholding and edge detection may be useful in making features accessible.

Vector files are much more tractable, particularly if they include metadata. Examples include CAD files, maps, property graphs, and SVG images. Even so, there remain the problems of deciding what to include and how best to represent it. This often includes rendering modifications, semantic and semiotic translations, etc. Unfortunately, I don't have any magic recipes to offer here.


Everything else is "trivial" (just a lot of details to get right), e.g.:

  • Clipping (content)
  • Scaling (margins)
  • Conversion (formats)


There are a number of "power tools" for processing images. Here are some that may suit your needs.


GraphicConverter began as a Mac-based format converter for image files. However, its functionality has expanded greatly; it now provides tools for picture editing and organization, workflow management, etc. GraphicConverter is a proprietary (shareware) product, so it can be tried out for free. However, the full version is not particularly expensive (~$40) and includes features such as batch processing support.


ImageMagick is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including ... Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.

The functionality of ImageMagick is typically utilized from the command-line or you can use the features from programs written in your favorite language. Choose from these interfaces: ... With a language interface, use ImageMagick to modify or create images dynamically and automagically.

Unlike most image manipulation tools, ImageMagick is neither GUI-based nor interactive. While this may make it seem awkward for sighted users, it may be just the thing for a (computer-savvy) blind or visually impaired user. ImageMagick is open source and can run on a variety of platforms, including GNU/Linux, Microsoft Windows, Mac OS X, iOS, Android OS, and others.


Inkscapeis a free and open-source vector graphics editor; it can be used to create or edit vector graphics such as illustrations, diagrams, line arts, charts, logos and complex paintings. Inkscape's primary vector graphics format is Scalable Vector Graphics (SVG) version 1.1. While Inkscape can import and export several formats, all editing workflow inevitably occur within the constraints of the SVG format.

This wiki page is maintained by Rich Morin, an independent consultant specializing in software design, development, and documentation. Please feel free to email comments, inquiries, suggestions, etc!

Topic revision: r3 - 20 Feb 2016, RichMorin
This site is powered by Foswiki Copyright © by the contributing authors. All material on this wiki is the property of the contributing authors.
Foswiki version v2.1.6, Release Foswiki-2.1.6, Plugin API version 2.4
Ideas, requests, problems regarding CFCL Wiki? Send us email