Project Name: open.dpj Project Group Name: open.dpg Project Type: ADSP-BF533 [ ] ADSP-BF537 [ ] ADSP-BF561 [X] Hardware Used: ADSP-BF561 EZ-Kit VisualDSP++ Emulator System Services Components Used: None OVERVIEW ======== The open function performs open operation on the input binary image. This is performed by doing an erosion function, followed by a dilation function. Temporary results after the erosion operation are stored on the stack, and later used as input for the dilation operation. For this function to work properly, the number of columns in the input image must be an even number, aligned to a word or half word boundary. The input image must not be stored in the same memory bank with the structured elements. The same structured elements are used for both erosion and dilation operation. The structured elements are stored as shown below. | h00 h01 h02 | | h10 h11 h12 | | h20 h21 h22 | Prototype: void open(unsigned char* in, int row, int col, short * SE, unsigned char *out ); Arguments: in - pointer to the input image. row - number of rows of input image. col - number of columns of input image. SE - pointer to 3x3 structured element. out - pointer the output buffer. Registers used : R0-R7, P0-P5. RUNNING THE APPLICATION (on the ADSP-BF561 EZ-KIT Lite) =========================================================== 1) Load project group "open.dpg". 2) Select "Project->Rebuild Project" 3) Click OK in the "Load Multiprocessor Confirmation" window to load p0.dxe and p1.dxe. 4) Select "Debug->Multiprocessor Run". 5) Observe output on VisualDSP++ console window. Files in This Application ========================== This example consists of the following files: "./open.ldf" - linker description file "./open.dpj" - project file "./open.dpg" - project group file "corea/corea.dpj" - Core A project file "../../src/t_open.c" - Core A source file "../../src/open.asm" - Core A source file "../../src/dilation.asm" - Core A source file "../../src/erosion.asm" - Core A source file "../../../../BFinUtils/ADSP-BF561/SDK-cycle_count.asm" - Core A source file "../../include/open.h" - Core A include file "../../../../Include/SDK-cycle_count.h" - Core A include file "coreb/coreb.dpj" - Core B project file "../../../../BFinUtils/ADSP-BF561/SDK-coreb_idle.c - Core B source file "sml2/sml2.dpj" - Shared Memory L2 project file "../../../../BFinUtils/ADSP-BF561/SDK-dummy.c - Shared Memory L2 source file "sml3/sml3.dpj" - Shared Memory L3 project file "../../../../BFinUtils/ADSP-BF561/SDK-dummy.c - Shared Memory L3 source file