Efros-Leung
Exemplar-basedtexturesynthesis(Efros-Leung)
|
00001 #pragma once 00002 00003 #include "io_png.h" 00004 #include "mt.h" 00005 00022 typedef struct cimage 00023 { 00024 int nrow; 00025 int ncol; 00026 int nchannels; 00028 unsigned char *red; 00029 unsigned char *green; 00030 unsigned char *blue; 00031 } * Cimage; 00032 00037 typedef struct imageF 00038 { 00039 int nrow; 00040 int ncol; 00042 float *val; 00044 } * ImageF; 00045 00050 typedef struct pixel 00051 { 00052 int x; 00053 int y; 00054 int nbneighbs; 00055 } * Pixel; 00056 00061 typedef struct cand_dist 00062 { 00063 float dist; 00064 long int patch; 00066 } * Cand_dist; 00067 00068 00069 void error(char * msg); 00070 Cimage new_Cimage(int nrow, int ncol); 00071 ImageF new_ImageF(int nrow, int ncol); 00072 Cimage load_png_image(char *filename); 00073 void write_png_image(Cimage v, char * filename); 00074 void delete_Cimage(Cimage v); 00075 void delete_imageF(ImageF v); 00076 ImageF CImage_to_ImageF(Cimage image); 00077 Cimage create_image_map(int nrow, int ncol); 00078 void print_algo_info( char *in_file_name, int nrows, int ncols, int nchannels, int t, float tolerance, int dims_pca, int out_sz); 00079 Cimage crop_image( Cimage v, int out_img_sz ); 00080 int is_grayscale(Cimage image, long num_pixels); 00081 ImageF add_border( ImageF v, int t ); 00082 ImageF create_mask ( int nrow, int ncol, int t ); 00083