https://doi.org/10.5201/ipol.2011.g_iics
Raw File
Tip revision: 2f369309d6656c6bbbe0c0533385c5838cd165bc authored by Software Heritage on 01 January 2010, 00:00:00 UTC
ipol: Deposit 692 in collection ipol
Tip revision: 2f36930
cwinterp.h
/** 
 * @file cwinterp.h
 * @brief Contour stencil windowed interpolation
 * @author Pascal Getreuer <getreuer@gmail.com>
 * 
 * 
 * Copyright (c) 2010-2011, Pascal Getreuer
 * All rights reserved.
 * 
 * This program is free software: you can use, modify and/or 
 * redistribute it under the terms of the simplified BSD License. You 
 * should have received a copy of this license along this program. If 
 * not, see <http://www.opensource.org/licenses/bsd-license.html>.
 */

#ifndef _CWINTERP_H_
#define _CWINTERP_H_

#include "basic.h"

/** @brief struct of interpolation parameters */
typedef struct
{
    /** The interpolation scale factor */
    double ScaleFactor;
    int CenteredGrid;
    /** The number of steps of iterative refinement */
    int RefinementSteps;
    /** \f$\sigma_h\f$, the blur size of the point spread function */
    double PsfSigma;
    /** \f$\sigma_\tau\f$, tagential spread of \f$\varphi\f$ */
    double PhiSigmaTangent;
    /** \f$\sigma_\nu\f$, normal spread of \f$\varphi\f$ */
    double PhiSigmaNormal;
} cwparams;


int32_t *PreCWInterp(cwparams Param);

int CWInterp(uint32_t *Output, const uint32_t *Input,
    int InputWidth, int InputHeight, const int32_t *Psi, cwparams Param);

int CWInterpEx(uint32_t *Output, int OutputWidth, int OutputHeight,
    const uint32_t *Input, int InputWidth, int InputHeight, 
    const int32_t *Psi, cwparams Param);

int DisplayContours(uint32_t *Output, int OutputWidth, int OutputHeight,
    uint32_t *Input, int InputWidth, int InputHeight, cwparams Param);
    
#endif /* _CWINTERP_H_ */
back to top