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.9 2008/03/25 08:20:43 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  *--------------------------------------------------------------------------*/
00044 
00045 
00046 
00047 cpl_image *
00048 sinfo_image_smooth_y(cpl_image * inp, const int r);
00049 
00050 cpl_error_code
00051 sinfo_image_line_corr(const int width,
00052               const int filt_rad,
00053               const int kappa,
00054               cpl_image* ima,
00055               cpl_image** ima_out);
00056 
00057 
00079 cpl_image *
00080 sinfo_new_shift_image(
00081     cpl_image    *    image_in,
00082     double           shift_x,
00083     double           shift_y,
00084     double       *    interp_kernel) ;
00091 Vector * 
00092 sinfo_new_mean_of_columns( cpl_image * im ) ;
00093 
00094 
00104 double 
00105 sinfo_new_my_median_image(cpl_image* im);
00106 
00107 
00108 cpl_image * 
00109 sinfo_new_clean_mean_of_columns( cpl_image * im,
00110                                float lo_reject,
00111                                float hi_reject) ;
00112 
00113 
00122 cpl_image * 
00123 sinfo_new_div_image_by_row( cpl_image * im, Vector * row ) ;
00124 
00133 cpl_image * 
00134 sinfo_new_mult_row_to_image( cpl_image *im, Vector *row ) ;
00135 
00154 cpl_image * 
00155 sinfo_new_col_tilt ( cpl_image * image, float sigmaFactor ) ;
00176 cpl_image * 
00177 sinfo_new_median_image( cpl_image * im, float fmedian ) ;
00178 
00189 cpl_image * 
00190 sinfo_new_compare_images(cpl_image * im1, cpl_image * im2, cpl_image * origim);
00201 cpl_image * 
00202 sinfo_new_thresh_image ( cpl_image * im, float lo_cut, float hi_cut ) ;
00203 
00215 cpl_image * 
00216 sinfo_new_promote_image_to_mask(cpl_image * im, int * n_badpixels ) ;
00227 cpl_image * sinfo_new_mult_image_by_mask ( cpl_image * im, cpl_image * mask ) ;
00228 
00251 cpl_image * 
00252 sinfo_new_interpol_image ( cpl_image * im,
00253                            cpl_image * mask,
00254                            int        max_radius,
00255                            int        n_pixels ) ;
00256 
00275 cpl_image * 
00276 sinfo_interpol_source_image ( cpl_image * im,
00277                                  cpl_image * mask,
00278                                  int        max_rad,
00279                                  float   ** slit_edges ) ;
00280 
00290 cpl_image * 
00291 sinfo_new_stack_row_to_image ( Vector * row, int ly ) ;
00292 
00293 
00310 Stats * 
00311 sinfo_new_image_stats_on_rectangle ( cpl_image * im,
00312                                 float      loReject,
00313                                 float      hiReject,
00314                                 int        llx,
00315                                 int        lly,
00316                                 int        urx,
00317                                 int        ury ) ;
00318 
00328 cpl_image * 
00329 sinfo_new_normalize_to_central_pixel ( cpl_image * image ) ;
00330 
00361 cpl_image *
00362 sinfo_new_mpe_shift_image(
00363     cpl_image    *    image_in,
00364     double           shift_x,
00365     double           shift_y,
00366     double       *   interp_kernel) ;
00367 
00377 void
00378 sinfo_new_shift_image_in_cube(
00379     cpl_image     *   image_in,
00380     double           shift_x,
00381     double           shift_y,
00382     double       *   interp_kernel,
00383     cpl_image     *   shifted,
00384     pixelvalue   *   first_pass) ;
00385 
00386 
00387 void sinfo_new_del_Stats (Stats *) ;
00388 
00389 
00398 cpl_image * 
00399 sinfo_new_combine_masks ( cpl_image * firstMask, cpl_image * secondMask ) ;
00400 
00411 cpl_image * 
00412 sinfo_new_slice_cube (cpl_imagelist * cube, int x, int y ) ;
00413 
00414 
00425 cpl_image * 
00426 sinfo_new_div_images_robust ( cpl_image * im1, cpl_image * im2 ) ;
00427 
00428 
00429 
00430 cpl_image * 
00431 sinfo_new_null_edges ( cpl_image * image) ;
00432 
00433 
00434 
00435 void 
00436 sinfo_new_used_cor_map( cpl_image *im, cpl_image *map);
00437 
00438 
00439 cpl_image *
00440 sinfo_image_smooth_mean_y(cpl_image * inp,const int r);
00441 
00442 cpl_image *
00443 sinfo_image_smooth_median_y(cpl_image * inp,const int r);
00444 
00445 cpl_image *
00446 sinfo_image_hermite_interpol(cpl_image * inp);
00447 
00448 cpl_image *
00449 sinfo_image_smooth_fft(cpl_image * inp, const int r);
00450 
00451 #endif

Generated on 8 Mar 2011 for SINFONI Pipeline Reference Manual by  doxygen 1.6.1