2d_demo.c

来自「TMS320VC55XX 图像 处理程序」· C语言 代码 · 共 53 行

C
53
字号
#include <stdio.h>
#include <stdlib.h>
#include<imagelib.h>
#include<wavelet.h>
#include "imagesample.h"

#define WIDTH  128
#define HEIGHT 128
#pragma DATA_SECTION(temp_wksp, ".wksp_array");
short temp_wksp[WIDTH];  


void main( )
{        
	int		i, j;      
	short     **image;
	int 	Width;		
	
	Width = 128;
	// Allocate pointers to rows
    image = (short **)malloc((size_t)(Width*sizeof(short*)));
    if(!image) printf("allocation failure 1 in matrix()");
    
	for( i = 0; i < HEIGHT; i++ )
	    image[i] = &goldhill[i][0];

	// Perfect Reconstruction of Pryamid Decomposition
	//=========================================================
	IMG_wave_decom_two_dim( image, temp_wksp, Width, Width, db4, 1 );     
	IMG_wave_recon_two_dim( image, temp_wksp, Width, Width, db4, 1 );
    //---------------------------------------------------------
    
    // Perfect Reconstruction of Wavelet-Packet Decomposition
	//=========================================================
     IMG_wavep_decom_two_dim( image, temp_wksp, WIDTH, HEIGHT, db4, 2 );     
     IMG_wavep_recon_two_dim( image, temp_wksp, WIDTH, HEIGHT, db4, 2 );
	//---------------------------------------------------------
	
	
	// Edge Detection
	//=====================================================
	for( i = 0; i < HEIGHT; i++ )
		for( j = 0; j < WIDTH; j++ )
			image[i][j] = 255;
	for( i = (HEIGHT>>1)-1; i <=(HEIGHT>>1)+1; i++ )
		for( j = 0; j < WIDTH; j++ )
			image[i][j] = 50;
	for( j = (WIDTH>>1)-1; j <=(WIDTH>>1)+1; j++ )
		for( i = 0; i < HEIGHT; i++ )
			image[i][j] = 50;
	 IMG_wave_decom_two_dim( image, temp_wksp, WIDTH, HEIGHT, db4, 1 );     
	//-----------------------------------------------------
}                            

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?