00001 /* --------------------------------------------------------------------------- 00002 Phission : 00003 Realtime Vision Processing System 00004 00005 Copyright (C) 2003-2006 Philip D.S. Thoren (pthoren@cs.uml.edu) 00006 University of Massachusetts at Lowell, 00007 Laboratory for Artificial Intelligence and Robotics 00008 00009 This file is part of Phission. 00010 00011 Phission is free software; you can redistribute it and/or modify 00012 it under the terms of the GNU Lesser General Public License as published by 00013 the Free Software Foundation; either version 2 of the License, or 00014 (at your option) any later version. 00015 00016 Phission is distributed in the hope that it will be useful, 00017 but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 GNU Lesser General Public License for more details. 00020 00021 You should have received a copy of the GNU Lesser General Public License 00022 along with Phission; if not, write to the Free Software 00023 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00024 00025 ---------------------------------------------------------------------------*/ 00026 #ifndef _CANNY_FILTER_H 00027 #define _CANNY_FILTER_H 00028 00034 #include <phFilter.h> 00035 00041 /* ------------------------------------------------------------------------ */ 00093 PHAPI(class) canny_Filter : public phFilter 00094 { 00095 private: 00096 uint32_t m_lowThreshold; 00097 uint32_t m_highThreshold; 00098 uint8_t *m_gauss; 00099 uint8_t *m_edge; 00100 uint32_t m_gaussSize; 00101 uint32_t m_edgeSize; 00102 00103 int m_useGaussian; 00104 int m_useSobelApprox; 00105 00106 protected: 00107 int filter(); 00108 00109 public: 00123 canny_Filter( uint32_t lowThreshold = 40, 00124 uint32_t highThreshold = 120 ); 00125 ~canny_Filter(); 00126 00145 int set( uint32_t lowThreshold = 40, 00146 uint32_t highThreshold = 120 ); 00147 00155 void enableGaussian ( int enable = 1 ); 00163 void disableGaussian( int disable = 1 ); 00164 00172 void enableSobelApprox( int enable = 1 ); 00180 void disableSobelApprox( int disable = 1); 00181 00189 phFilter *cloneFilter(); 00190 00191 }; 00192 /* ImageProcessing */ 00194 00195 #endif /* _CANNY_FILTER_H */ 00196
Copyright (C) 2002 - 2007 |
Philip D.S. Thoren ( pthoren@users.sourceforge.net ) University Of Massachusetts at Lowell Robotics Lab |