Widget5 is a image processing package that supports 256 greylevel (8bit), 65536 greylevel (16bit) and 16.7 million colour (24bit) images.
As of version 1.42, Widget5 is now 'CPU mode neutral' which means that it should work on machines with
older ARM processors as well as the 32bit only XScale used in the Castle Iyonix PC.
This program requires the new 32bit Shared C Library to be installed which can be downloaded from the Castle !System updates page.
Widget5 is StrongARM compatible and has been tested on RISC OS 3.10, RISC OS Select 4.37 (3i3) and also RISC OS 5 on the Iyonix PC.
Widget5 is not finished! Many improvements are planned although they won't be implemented for a while. This site is updated continuously with the latest version.
- Dynamic areas can be used on machines equipped with RISC OS 3.5 or later and thus allowing Clares Virtualizer to provide virtual memory for images.
- Widget5 will make the most of the display hardware on new machines but still run under RISC OS 3.1x. Dynamic area memory management and 24bit processing is however only available on machines running RISC OS 3.5 or later.
- 16bit greylevel images may be displayed using a real-time linear
or logarithmic mapping to the display system's 256 levels. (StrongARM processor recommended).
- Loading and saving of the following file formats is supported:
- Old style 256 colour Sprites (palette is interpreted as 256 greys)
- New style 256 entry palette Sprites
- New style 15bit colour Sprites.
- New style 24bit colour Sprites.
- Epic remote sensing images (8bit and 16bit)
- CSV (8bit only)
- Clear (8bit files are interpreted as 256 greys)
- Irregular shaped image masks can be created to enable localised processing. The mask shapes can be loaded and saved.
- All non-instantaneous processing functions support multi-tasking and multi-threading allowing more than one process to run concurrently without locking up the desktop.
- Widget5 supports the following processing functions:
(G8 indicates that the function is supported for 8bit greyscale images, G16 for 16bit greyscale images and C for 24bit colour images)
- Copy (C G8 G16)
- Add (C G8)
- Average (C G8)
- Mix (G8)
- Convolution (C G8 G16) using a matrix of any size between 1x1 and 9x9. Support for loading and saving matrices is provided.
- Focal analysis (C G8 G16) using a 3x3, 5x5, 7x7 or 9x9 patch providing the following functions:
- Local Region
- Greylevel mapping (G8) by the following means:
- Drawing the mapping function using the mouse
- Histogram equalization
- Saturating Linear Contrast Enhancement
- Gamma correction
- -1 gradient linear mapping (negative image)
- False colouring (G8) selected greylevel ranges and calculating the percentage of pixels in each range.
- Levels slice (G8) by false colouring equally spaced sections of the total grey level range to a defined number of sections and calculating the percentages of pixels contained in each of the ranges.
- Scaling (C G8 G16) by resampling using bi-linear interpolation.
- Replacing (G8 G16) a single or range of grey levels with another.
- Extraction (C G8 G16) of a smaller section from an image.
- Combination (G8) of 3 greyscale images into a single 24bit colour image.
- Separation (C) of a 24bit colour into 3 greyscale images of the red, green and blue colour components.
- Field swap (C G8 G16) of the Even and Odd fields in an video frame.
- Graphing from 256 greyscale images is provided with graph data export in CSV format and individual bar heights available on screen. Either the entire image of the area defined by the mask can be graphed
The following graph types are supported:
- Greylevel histogram
- Ogive histogram
- Reverse ogive histogram
- The following statistical information can be displayed for a whole image or any area using the masking function.
- Number of levels used
- Level range
- Standard Deviation
- A Pixel Information Display is available by right-clicking on the image which shows the image pixel coordinates, values of colour components and map coordinates (for a rectified EPIC image) of the pixel under the pointer.
- An Image Flipper function is provided for comparing a series of images by flipping between them and optionally scaling the images to the same screen size.