sinfo_image_ops.h

00001 #ifndef SINFO_IMAGE_OPS_H
00002 #define SINFO_IMAGE_OPS_H
00003 /*
00004  * This file is part of the ESO SINFONI Pipeline
00005  * Copyright (C) 2004,2005 European Southern Observatory
00006  *
00007  * This program is free software; you can redistribute it and/or modify
00008  * it under the terms of the GNU General Public License as published by
00009  * the Free Software Foundation; either version 2 of the License, or
00010  * (at your option) any later version.
00011  *
00012  * This program is distributed in the hope that it will be useful,
00013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015  * GNU General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU General Public License
00018  * along with this program; if not, write to the Free Software
00019  * Foundation, 51 Franklin St, Fifth Floor, Boston, MA  02111-1307  USA
00020  */
00021 /*******************************************************************************
00022 * E.S.O. - VLT project
00023 *
00024 * "@(#) $Id: sinfo_image_ops.h,v 1.3 2006/11/11 14:11:47 amodigli Exp $"
00025 *
00026 * who       when      what
00027 * --------  --------  ----------------------------------------------
00028 * amodigli  04/01/06  created
00029 */
00030 
00031 /************************************************************************
00032  * sinfo_image_ops.h
00033  * image arithmetic routines
00034  *----------------------------------------------------------------------
00035  */
00036 #include <cpl.h>
00037 
00038 #include "sinfo_spiffi_types.h" 
00039 #include "sinfo_spectrum_ops.h" 
00040 #include "sinfo_recipes.h"
00041 /*----------------------------------------------------------------------------
00042  *                      Function ANSI C prototypes
00043  *--------------------------------------------------------------------------*/
00065 cpl_image *
00066 sinfo_new_shift_image(
00067     cpl_image   *   image_in,
00068     double           shift_x,
00069     double           shift_y,
00070     double       *  interp_kernel) ;
00077 Vector * 
00078 sinfo_new_mean_of_columns( cpl_image * im ) ;
00079 
00080 
00090 double 
00091 sinfo_new_my_median_image(cpl_image* im);
00092 
00093 
00094 cpl_image * 
00095 sinfo_new_clean_mean_of_columns( cpl_image * im,
00096                                float lo_reject,
00097                                float hi_reject) ;
00098 
00099 
00108 cpl_image * 
00109 sinfo_new_div_image_by_row( cpl_image * im, Vector * row ) ;
00110 
00119 cpl_image * 
00120 sinfo_new_mult_row_to_image( cpl_image *im, Vector *row ) ;
00121 
00139 cpl_image * 
00140 sinfo_new_col_tilt ( cpl_image * image, float sigmaFactor ) ;
00161 cpl_image * 
00162 sinfo_new_median_image( cpl_image * im, float fmedian ) ;
00163 
00174 cpl_image * 
00175 sinfo_new_compare_images(cpl_image * im1, cpl_image * im2, cpl_image * origim);
00186 cpl_image * 
00187 sinfo_new_thresh_image ( cpl_image * im, float lo_cut, float hi_cut ) ;
00188 
00200 cpl_image * 
00201 sinfo_new_promote_image_to_mask(cpl_image * im, int * n_badpixels ) ;
00212 cpl_image * sinfo_new_mult_image_by_mask ( cpl_image * im, cpl_image * mask ) ;
00213 
00236 cpl_image * 
00237 sinfo_new_interpol_image ( cpl_image * im,
00238                            cpl_image * mask,
00239                            int        max_radius,
00240                            int        n_pixels ) ;
00241 
00260 cpl_image * 
00261 sinfo_interpol_source_image ( cpl_image * im,
00262                                  cpl_image * mask,
00263                                  int        max_rad,
00264                                  float   ** slit_edges ) ;
00265 
00275 cpl_image * 
00276 sinfo_new_stack_row_to_image ( Vector * row, int ly ) ;
00277 
00278 
00295 Stats * 
00296 sinfo_new_image_stats_on_rectangle ( cpl_image * im,
00297                                 float      loReject,
00298                                 float      hiReject,
00299                                 int        llx,
00300                                 int        lly,
00301                                 int        urx,
00302                                 int        ury ) ;
00303 
00313 cpl_image * 
00314 sinfo_new_normalize_to_central_pixel ( cpl_image * image ) ;
00315 
00346 cpl_image *
00347 sinfo_new_mpe_shift_image(
00348     cpl_image    *    image_in,
00349     double           shift_x,
00350     double           shift_y,
00351     double       *   interp_kernel) ;
00352 
00362 void
00363 sinfo_new_shift_image_in_cube(
00364     cpl_image     *   image_in,
00365     double           shift_x,
00366     double           shift_y,
00367     double       *   interp_kernel,
00368     cpl_image     *   shifted,
00369     pixelvalue   *   first_pass) ;
00370 
00371 
00372 void sinfo_new_del_Stats (Stats *) ;
00373 
00374 
00383 cpl_image * 
00384 sinfo_new_combine_masks ( cpl_image * firstMask, cpl_image * secondMask ) ;
00385 
00396 cpl_image * 
00397 sinfo_new_slice_cube (cpl_imagelist * cube, int x, int y ) ;
00398 
00399 
00410 cpl_image * 
00411 sinfo_new_div_images_robust ( cpl_image * im1, cpl_image * im2 ) ;
00412 
00413 
00414 
00415 cpl_image * 
00416 sinfo_new_null_edges ( cpl_image * image) ;
00417 
00418 
00419 
00420 void 
00421 sinfo_new_used_cor_map( cpl_image *im, cpl_image *map);
00422 
00423 
00424 
00425 #endif

Generated on Wed Jan 17 08:33:43 2007 for SINFONI Pipeline Reference Manual by  doxygen 1.4.4