home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Datafile PD-CD 5
/
DATAFILE_PDCD5.iso
/
utilities
/
p
/
process
/
!Process
/
!Guide
< prev
next >
Wrap
Text File
|
1993-09-03
|
44KB
|
1,113 lines
!Process
===========================
256 colour image processing
by
Henrik Bjerregaard Pedersen
About !Process
================
!Process is a 256-colour image processing/manipulation program.
It enables you to manipulate 256-colour sprites in a variety of ways,
including noise-removal, sharpening, smoothening, inverting, colour
separation, conversion to black/white or greytones, edge-detection and more.
Besides that, !Process also includes some of the features found in !Paint or
other basic drawing packages.
The following is only a brief summary of the features of !Process. The
number of ways you can distort/alter/manipulate an image are endless, and
would therefor require a RATHER large !Help-file to describe in details.
The best (and most amusing) way to discover the possibilities in (and the
limits of) !Process, is to load an image and simply try the different
operations one by one. However, I strongly recommend that you read this file,
otherwise you may have trouble with some of the features.
Problems
==========
Whenever possible, you should ensure that the images you load into Process
are created without mask, and that the spritefile contains only one sprite.
Glossary
==========
Source image ... the image from which pixels/information is READ.
Destination image ... the image to which pixels/information is WRITTEN.
Colour component ... a value in the range 0-255, describing the amount of
either RED, GREEN or BLUE. 0 is nothing, 255 is full.
Kernel ... a 3x3 matrix which is multiplied with the colour
components of a center pixel and its 8 neighbours.
The average of the 9 elements of the kernel is
calculated, and this becomes the colour of the center
pixel.
Image viewer ... any of the (from two to nine) image windows.
Starting
==========
Double click on the !Process-icon, and the program installs itself on the
iconbar.
!Process will claim approx. 224k as long as no image is loaded. After
loading an image, the wimpslot will be increased with at least twice the size
of the spritefile.
Stopping
==========
Select the option Quit from the iconbar menu.
If you end up in an endless loop of error messages, you can in most cases
exit the program by pressing DELETE while clicking on the OK icon in the
error box.
Loading
=========
Drag as spritefile containing a 256 colour sprite as the first sprite to the
iconbar icon, and it will be loaded and will appear in a window.
Click MENU when the mouse is inside this window, and the main menu appears.
Process will also load AIM files, Clear files (in 256 greytones), Clear
files in 24bpp and sprites with a greyscaled 256 entries palette. 24bpp Clear
files are loaded as 3 8bpp files.
If the sprite holds a palette (other than greyscaled) this will be used.
You can force Process to ignore the palette by holding down Ctrl while
loading the spritefile.
After applying a filter/effect the processed image will appear in another
window. If you drag a spritefile to either of these windows, !Process will
attempt to load the file. If the file has the exact same size as the already
loaded file, it will simply overwrite the image in the window to which you
load it, otherwise it will be loaded as given in the submenu
Miscellaneous.Import sprite.
Palette
=========
Usually Process wil ignore the palette of the sprite you load, but if the
option -pal is set, Process will recognise and use the palette (if present).
All three types of palettes are valid (16, 64 or 256 (true-colour) entries).
However, to speed up operations, Process needs to calculate a translation
table from RGB to 8bit pixel values. This will usually take 10 seconds (on an
ARM2), and is done when the sprite is loaded. The calculation isn't performed
if the sprite doesn't have a palette; instead the file
!Process.Resources.Palette is loaded.
The calculation of the palette can be suppressed by holding down Ctrl while
loading the sprite file. Process will then act as if the -pal option wasn't
set and ignore the palette.
Printing
==========
This isn't what !Process is best at. In fact, it doesn't print at all, so
what you'll need to do is to save the image (either to disc or directly to
!Paint) and then use !Paint's printing facilities in conjunction with a
RISC OS PDriver to get your piece of art on paper.
Greyscaled images
===================
!Process accepts 3 types of greyscaled images:
AIM (256x256 pixels, 8 bpp, always greyscaled)
Clear (8 bpp, greyscaled palette)
Sprites (with a palette with 256 greyscaled entries).
Beside these, Process can convert any loaded colour sprite to 8 bpp
greytones.
Some of the operations provided by Process are meaningless when applied to
a greyscaled image (eg RGB separation, Greyscale conversion etc.). In these
cases the operation will be inaccesible/shaded in the menu.
Options
=========
When started, !Process reads the systemvariable Process$Options which may
contain the following options:
Name Meaning
-------------------------------------------------------------
max2 Sets the number of copies of the image !Process
max3 creates when a file is loaded.
max4 etc Minimum is 2, maximum is 9. If you don't set max
max9 or set it to an illegal value, max4 is used.
swap Automatic swapping on.
dma Disable DMA during lengthy calculations.
tools Show toolbox.
pal Use the sprite palette (if present). See above.
mask Don't ignore the mask (if present)
colour0 Use the extended colour selector RGB (fixed red)
colour1 Use the extended colour selector RGB (fixed green)
colour2 Use the extended colour selector RGB (fixed blue)
colour4 Use the extended colour selector CMY (fixed cyan)
colour5 Use the extended colour selector CMY (fixed magenta)
colour6 Use the extended colour selector CMY (fixed yellow)
To perform RGB or HSV separation, max4 is needed, to perform CMYK separation
max5 is needed.
The system variable Process$WindowTitle holds the template string for the
text in the titlebar of the image viewers.
The variable is set in !Process.!Run, and may be altered to include any of
the given pieces of information:
Arg Substituted with
--------------------------
%%0 "Process"
%%1 The name (full path) of the sprite file
%%2 The name (last part) of the sprite file
%%3 The name of the sprite
%%4 The mode in which the sprite was created
%%5 Size X of sprite (pixels)
%%6 Size Y of sprite (pixels)
%%7 The image viewer's number (1 - max)
%%8 Zoom factor X
%%9 Zoom factor Y
Maps
======
Maps are tables translating one colour to another. 256-colour images use one
byte per pixel, so mapping is simply done using a 256-bytes table, so that a
byte with value n is translated into the n'th entry in the table.
Many of the operations in !Process are performed using maps, to name a few:
Invert, Add colour, RGB filter, Translate, Greytones, Brighten, Stretch
histogram, Equalize histogram, Expand/Reduce range etc.
It is possible to create your own map and apply it to the loaded image. If
you drag a 256-bytes Data-file (filetype &FFD) to any of the image viewers,
the file will be loaded and used as a map on that particular image.
You can edit the BASIC-program GenMap to suit your own purposes.
The colour selector
=====================
The colour selector is a window that pops up whenever a selected operation
ne