1 /**************************************************************************** 2 * 3 * ViSP, open source Visual Servoing Platform software. 4 * Copyright (C) 2005 - 2019 by Inria. All rights reserved. 5 * 6 * This software is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 * See the file LICENSE.txt at the root directory of this source 11 * distribution for additional information about the GNU GPL. 12 * 13 * For using ViSP with software that can not be combined with the GNU 14 * GPL, please contact Inria about acquiring a ViSP Professional 15 * Edition License. 16 * 17 * See http://visp.inria.fr for more information. 18 * 19 * This software was developed at: 20 * Inria Rennes - Bretagne Atlantique 21 * Campus Universitaire de Beaulieu 22 * 35042 Rennes Cedex 23 * France 24 * 25 * If you have questions regarding the use of this file, please contact 26 * Inria at visp@inria.fr 27 * 28 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 29 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 30 * 31 * Description: 32 * Example of template tracking. 33 * 34 * Authors: 35 * Amaury Dame 36 * Aurelien Yol 37 * Fabien Spindler 38 * 39 *****************************************************************************/ 40 #ifndef vpTemplateTrackerMIForwardCompositional_hh 41 #define vpTemplateTrackerMIForwardCompositional_hh 42 43 #include <visp3/core/vpConfig.h> 44 45 #include <visp3/core/vpImageFilter.h> 46 #include <visp3/tt/vpTemplateTracker.h> 47 #include <visp3/tt/vpTemplateTrackerHeader.h> 48 49 #include <visp3/tt_mi/vpTemplateTrackerMI.h> 50 #include <visp3/tt_mi/vpTemplateTrackerMIBSpline.h> 51 52 /*! 53 \class vpTemplateTrackerMIForwardCompositional 54 \ingroup group_tt_mi_tracker 55 The algorithm implemented in this class is described in \cite Dame12a and 56 \cite Marchand16a. 57 */ 58 class VISP_EXPORT vpTemplateTrackerMIForwardCompositional : public vpTemplateTrackerMI 59 { 60 protected: 61 bool CompoInitialised; 62 63 protected: 64 void initCompo(); 65 void initHessienDesired(const vpImage<unsigned char> &I); 66 void trackNoPyr(const vpImage<unsigned char> &I); 67 68 public: 69 explicit vpTemplateTrackerMIForwardCompositional(vpTemplateTrackerWarp *_warp); 70 }; 71 72 #endif 73