00001
00002 00004
00005 #if !defined(AFX_MORPHO8C_H__A0060A01_9C64_11D4_B182_C510902EAD4A__INCLUDED_)
00006 #define AFX_MORPHO8C_H__A0060A01_9C64_11D4_B182_C510902EAD4A__INCLUDED_
00007
00008 #ifndef SWIG // Remove whatever is not needed by SWIG
00009
00010 #if _MSC_VER >= 1000
00011 #pragma once
00012 #endif // _MSC_VER >= 1000
00013
00014
00015 #include "ImageGrey.h"
00016
00017 #undef min
00018 #undef max
00019 #include <limits>
00020 using namespace std;
00021
00022 #include <Morpho.h>
00023
00024 #endif // SWIG
00025
00043 class CMorpho8c : public CMorpho
00044 {
00046 virtual CImageGrey * dilate(CImageGrey *in, CImageGrey *out);
00048 virtual CImageGrey * erode(CImageGrey *in, CImageGrey *out);
00049
00051 inline void wshed_process_point(LPPIXEL p, LPPIXEL pp,
00052 QPixelT * qpixel, char *flag);
00053
00054 public:
00055 CMorpho8c();
00056 virtual ~CMorpho8c();
00057
00059 CImageGrey * chamfer(CImageGrey *in, short mode = 0);
00061 CImageGrey *geodesicErosion(CImageGrey *mark, CImageGrey *ref, int border);
00063 CImageGrey *geodesicDilation(CImageGrey *mark, CImageGrey *ref, int border);
00064
00066 CImageGrey * watershed(CImageGrey *in);
00067
00069 CImageGrey * skeleton_anchor (CImageGrey *in, CImageGrey *anchor);
00071 CImageGrey * skeletonTalbotVincent (CImageGrey *in, CImageGrey *anchor);
00073 CImageGrey * connectedComponents(CImageGrey *in);
00074 };
00075
00076 #endif // !defined(AFX_MORPHO8C_H__A0060A01_9C64_11D4_B182_C510902EAD4A__INCLUDED_)