FASTSERIES OBJECT IMAGING LIBRARY(FOIL)
Alacron's FOIL is object-oriented so that
the format and type of objects are carried with the objects. When
library routines are called, the routine determines the fastest
way to perform the requested function between the objects. For example,
if a 512x512 image is operated on with a 3x3 floating-point kernel,
the calculation is performed in floating-point, returning a floating-point
result (to buffer memory). This feature significantly reduces the
variety of routines for the user to learn and reduces the chance
of an error.
Below is the current list of routines supported by the image processing
library. Most all of these functions can be performed by any of
the FastSeries products, before the image is returned to host memory.
Sequences of routines can be defined and executed automatically.
| Interface
(System and Board Specific) |
|
Al_capture
Al_start
Al_stop
Al_display
Al_grab
Al_get
Al_put
Al_read
Al_write
Al_put_clipboard
Al_get_clipboard
Al_put_display
Al_get_display
Al_size
Al_verbose
Al_speechless
Al_host_memory
Al_brd_memory
|
Configure
capturing
Start capturing
Stop capturing
Configure Display
Grab an Image
Get from frame grabber to host memory
Put from host memory into frame grabber
Read from disk
Write to disk
Put object to clipboard
Get object from clipboard
Put object on display
Get object from display
Get size of object in bytes
Produce verbose error and warning messages
Produce no messages
Create a raw object in host memory
Create a raw object in board memory
|
| Object
Management |
|
Al_list
Al_insert
Al_delete
Al_getfirst
Al_getnext
Al_getn
Al_objlist
Al_view
Al_view_connect
Al_view_extract
Al_laminate
Al_create_constant
Al_create_vector
Al_create_matrix
Al_create_lut
Al_create_image
Al_create_kernel
Al_create_interest
Al_destroy
Al_mov
Al_dup
Al_name
|
Return
an empty list of objects
Insert object after nth member of list
Delete object n from list
Get first object from list
Get next object from list
Get nth object from list
Read only list of all objects
Create view into object (strides, kernel size, data type)
Connect a view to an object
Create an object with only the view's data
Merge an objects together
Create a constant (alias of matrix)
Create a vector (alias of matrix)
Create a matrix object
Create a LUT object (alias of matrix)
Create an image object (alias of matrix)
Create kernel array (alias of matrix)
Create interest structure (alias of list)
Destroy (Free) object
Copy data from object to object
Create a duplicate of an object
Attach a name to an object
|
| Conversion |
|
Al_cmyk
Al_rgb
Al_hls
Al_yuv
Al_jpeg
Al_tiff
Al_bmp
Al_raw
Al_Type
Al_binarize1
Al_binarize2
Al_binarize
Al_transpose
Al_gather
Al_scatter
Al_lut
|
Covert
to cmyk
Covert to rgb
Covert to hld
Covert to yuv
Covert to jpeg
Convert to tiff
Convert to bmp
Convert to raw data
Convert elements to fix, float, complex
Single threshold binarize
Dual threshold binarize
General threshold
Change index speed order
Gather elements together
Scatter elements
Apply LUT
|
| Basic
Numerical Operations |
| Unary
Operators |
|
Al_sin
Al_cos
Al_tan
Al_asin
Al_acos
Al_atan
Al_exp
Al_ln
Al_log
Al_mag
Al_nmag
Al_sqrt
Al_polar
Al_rect
Al_not
Al_env
|
Sine
Cosine
Tangent
Arc-Sine
Arc-Cosine
Arc-Tangent
Exponential
Natural Log
base 10 Log
magnitude
negative of magnitude
Square root
rect to polar
polar to rect
Complement
Envelop
|
| Binary
Operators |
|
Al_and
Al_or
Al_xor
Al_shift
Al_ashift
Al_extract
Al_add
Al_sub
Al_mult
Al_div
Al_comp
Al_atan2
Al_pwr
Al_bmin
Al_bmax
Al_limit
Al_mask
Al_extract_intrest
|
Logical
And
Logical Or
Logical Exclusive Or
Logical shift
Arithmetic shift
Extract field
Add
Subtract
Multiply
Divide
Compare
arctan
x to power y
min of inputs
max of inputs
1st limited to <= 2nd
Mask (select) data
Extract data using interest object
|
| Ternary
Operators |
|
Al_limit
Al_subm
Al_addm
Al_madd
Al_msub
|
2nd <=
1st <= 3rd returns limited 1st
Subtract then multiply
Add then multiply
Multiply then add
Multiply then subtract
|
| Unary
Contractions |
|
Al_csum
Al_cmin
Al_cmax
Al_cavg
Al_cstd
Al_csumsq
Al_crms
Al_csmag
Al_csumsq
|
Sum of
elements
Minimum of elements
Maximum of elements
Average of elements
Standard Deviation of elements
Sum of squares of elements
Square root of sum of squares
Sum of magnitudes
Sum of squares
|
| Binary
Contractions |
| Al_dot |
Dot product (multiply then add) |
| Matrix
Operators |
|
Al_mmul
Al_mtrans
Al_minv
|
Matrix
multiply (alias for dot)
Matrix transpose (alias for transpose)
Matrix inverse
|
| Linear
Filtering |
|
Al_conv
Al_fft
Al_correlation
Al_fft_filter
Al_fir
Al_ifr
Al_noise
Al_hamm
Al_hann
|
Apply
kernel to array
Do fft (1D,2D)
Apply correlation kernel
Do filter (1D,2D)
Finite impulse response filter
Infinite impulse response filter
Add noise
Hamming window
Hanning window
|
| Nonlinear
Filtering |
|
Al_hist
Al_hist_eq
Al_gamma
Al_interp
Al_lut
Al_sobela
Al_sobelb
Al_kirsch
Al_gradient
Al_laplacian
Al_prewitt
Al_median
Al_dconva
Al_dconvd
Al_dconvm
Al_dconvs
|
Create
a histogram of object
Use histogram to equalize
Gamma correction
Interpolate
Apply a LUT
Sobel with sum of absolute values
Sobel with square root of squares
Kirsch filter
Gradient filter
Laplacian filter
Prewitt Filter
Median Filter
Apply two convolution kernels, add magnitude
Apply two convolution kernels, divide results
Apply two convolution kernels, multiply results
Apply two convolution kernels, sqrt of sum of squares
|
| Morphology
(Image Understanding) |
|
Al_erode
Al_dialate
Al_open
Al_close
Al_contour
Al_edges
Al_fit_lines
Al_connect
Al_stats
Al_hull
Al_perimeter
Al_box
Al_pattern
Al_hough_line
Al_hough_circle
Al_hough
Al_radon
|
Erode
Dilate
Open
Close
Find contours (returns list of objects)
Find edges of objects (returns list of objects)
Fit lines to objects (returns a list of objects)
Connectivity (produces list of objects)
Statistics of object
Convex Hull of object
Perimeter of object
Bounding box of object
Find a pattern (returns list of objects)
Hough transform with lines
Hough transform with circles
General Hough transform
Radon transform
|
| Constant
Functions (Used for display and
ROI definition) |
|
Al_dwpoint
Al_dwline
Al_dwrect
Al_dwtext
Al_dwcircle
Al_dwfill
Al_flood
|
Draw point
Draw line
Draw rectangle
Draw text
Draw circle
Fill with value
Flood fill
|
Click here
to Download the datasheet or here
to Register to Download Manual