Image Processing Toolbox, Blackfin
Overview
Features and Benefits
- OpenCV like APIs: Most modules are bit exact with OpenCV. Native ADI APIs also supported.
- Image Size: Configurable.
- Color Conversion, Convolution, Correlation, Sobel, Morphology and RANSAC.
- Linear/Extended/Unscented Kalman filter.
- Image Pyramids/Filters, Matrix/Vector Operations, Integral Iimage.
- Hough Transform, Optical flow, Pyramidal Optical Flow, Corner Detection, Contours, Haar Features
- RLE, Packed_RLE, Statistical Tools like Histogram.
- Re-entrancy: Supported
- Conformance Standard: None
- Framework Dependencies: None
- Release Format: Object code module with C source wrapper.
- Input Format: Configurable – One of the following RGB888, YUV444 packed YUV400 8-bit, YUV400 16-bit, HSV888, binary YUV 8-bit, binary YUV 16-bit.
- Output Format: Configurable – One of the following RGB888, YUV444 packed YUV400 8-bit, YUV400 16-bit, HSV888, binary YUV 8-bit, binary YUV 16-bit, matrix/vector, Gray scale video.
Product Details
Blackfin Image Processing Toolbox is a set of image processing primitives designed to enable faster development of complex image or video processing solutions on Blackfin. Primitive functions have been highly optimized to run on Analog Devices’ Blackfin BF-5xx and BF-60x processor family. It is a self-contained software module. The library is MISRA-C compliant.
Product also includes C reference codes for the primitives and wrapper codes for OpenCV like APIs. Along with this demo code is provided to demonstrate the usage of these primitives on Blackfin.
Code is implemented such that it is able to work on images that are both in L1 and L3 (external memories like SDRAM/DDRAM) memory. Memory movement APIs help in moving data from L3 to L1 and back through MDMA.
Licensing
Each module supports the Analog Devices, Inc. (ADI) Blackfin or SHARC Processor family and is a licensed product that is available in object code format. Recipients must sign or accept a license agreement with ADI prior to being shipped or downloading the modules identified in the license agreement.
Performance Metrics
MIPS summary:
Memory (Bytes) |
Performance |
|||||
Module |
Code |
Stack |
Data RAM |
Data ROM |
Average Cycles / pel |
MIPS |
adi_RGB2GRAY |
168 | 12 | 0 | 0 | 3.43 | 13.49 |
adi_conv2D3by3_8 |
1502 | 60 | 0 | 0 | 9.82 | 38.63 |
adi_erosion-(rectangle) |
1182 | 28 | 60 | 0 | 4.17 | 16.40 |
adi_dilation-(rectangle) |
1190 | 28 | 60 | 0 | 4.18 | 16.44 |
adi_sobel_3x3_horz_i8 |
388 | 24 | 0 | 0 | 2.73 | 10.75 |
adi_mean_8bit |
92 | 8 | 0 | 0 | 0.71 | 2.79 |
adi_hist_i8 |
500 |
32 | 0 | 0 | 6.29 |
24.73 |
adi_HoughVoting (6.18% non Zero pixels) |
230 |
28 |
0 | 0 | 207 |
50.30 |
adi_IntegralSum_i8 |
118 |
4 |
0 | 0 | 3.11 |
12.23 |
adi_median_i8 |
336 |
36 |
0 | 0 | 12.76 |
50.17 |
adi_KalmanPredict |
792 |
148 |
0 | 0 | 2999 |
0 |
adi_contour_segment_image |
394 |
120 |
0 | 0 | 21.99 |
0.13 |
adi_RLE_8bit |
78 |
16 | 0 | 0 | 6.90 | 0.11 |
- MIPS measured optimal memory layout, on ADSP BF533
- For the optimal memory layout, all code and data used by the module was L3 cached and the input/output buffers were filled using MDMA memory
- "Data RAM" for one instance, includes Stack, Scratch, Instance/Stage, Minimum Input and Output Single Buffers
- 1 KiB = 1024 Bytes
- ADSP-BF561 supported for VisualDSP++5.1.1 project and ADSP-BF533, ADSP-BF609 and ADSP-BF707 for CrossCore Embedded Studio 1.1.0 projects
For a more complete list of image processing primitives download the code and review the specification document in it.
Systems Requirements
- Windows XP Professional SP3 (32-bit only).
- Windows Vista Business/Enterprise/Ultimate SP2 (32-bit only). It is recommended to install the software in a non-UAC-protected location.
- Windows 7 Professional/Enterprise/Ultimate (32 and 64-bit). It is recommended to install the software in a non-UAC-protected location.
- Minimum of 2 GHz single core processor, 3.3 GHz dual core is recommended.
- Minimum of 1 GB memory (RAM), 4 GB is recommended.
- Minimum of 2 GB hard disk (HDD) space is required.
- CrossCore® Embedded Studio for Analog Devices Processors.
- VisualDSP++ for Analog Devices Processors.