Changeset 363 for trunk/lib/cc3_ilp/cc3_conv.c
- Timestamp:
- 01/31/07 17:21:00 (2 years ago)
- Files:
-
- trunk/lib/cc3_ilp/cc3_conv.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/lib/cc3_ilp/cc3_conv.c
r349 r363 12 12 The function returns 1 upon success and 0 on failure. 13 13 */ 14 int cc3_convolve_img(cc3_image_t img, cc3_kernel_t kernel)14 int cc3_convolve_img(cc3_image_t *img, cc3_kernel_t kernel) 15 15 { 16 16 uint32_t i,j,k,l,mat_div; 17 17 cc3_pixel_t p; 18 18 if(kernel.size>MAX_KERNEL_SIZE) return 0; 19 if( img .height<kernel.size+1 ) return 0;20 if( img .width<kernel.size+1 ) return 0;19 if( img->height<kernel.size+1 ) return 0; 20 if( img->width<kernel.size+1 ) return 0; 21 21 22 22 mat_div=kernel.divisor; 23 for(j=0; j<img .height-kernel.size+1; j++ )24 for(i=0; i<img .width-kernel.size+1; i++ )23 for(j=0; j<img->height-kernel.size+1; j++ ) 24 for(i=0; i<img->width-kernel.size+1; i++ ) 25 25 { 26 26 uint32_t tmp; … … 29 29 for(l=0; l<kernel.size; l++ ) 30 30 { 31 cc3_get_pixel ( &img, i+k, j+l, &p);31 cc3_get_pixel (img, i+k, j+l, &p); 32 32 tmp+=p.channel[0]*kernel.mat[k][l]; 33 33 } 34 34 35 p.channel[0]=tmp / mat_div; 35 cc3_set_pixel ( &img, i, j, &p);36 cc3_set_pixel (img, i, j, &p); 36 37 } 37 38 return 1;
