www.pudn.com > GPUVision_5-13-05-2.zip > Canny.h


#ifndef _CANNY_H 
#define _CANNY_H 
 
#include "stdafx.h" 
#include "GPUVision.h" 
#include "ConvolutionFilter.h" 
#include "ConvolutionFilter2Pack.h" 
#include "RGB2GreyFilter.h" 
#include "DxDyFilter.h" 
#include "NonMaxSupressionFilter.h" 
#include "RGB2PackedUVFilter.h" 
#include "Unpack2ChannelsFilter.h" 
#include "DxDy2PackFilter.h" 
#include "Pack2Filter.h" 
 
class Canny { 
public: // interface 
	Canny(CGcontext context, float threshold, bool shouldBlur = true, bool shouldPack = true); 
	~Canny(); 
	void cannyEdgeDetect(GPUVision *image1); 
	void setThreshold(float threshold)  { _nonMaxSupression->setThreshold(threshold); } 
	void setShouldBlur(bool shouldBlur)  { _shouldBlur = shouldBlur; } 
	void setPack(bool shouldPack)  { _shouldPack = shouldPack; } 
 
private: 
	bool _shouldBlur, _shouldPack; 
	ConvolutionFilter *_gauss5x5h; 
	ConvolutionFilter *_gauss5x5v; 
	ConvolutionFilter2Pack *_gauss5x5_2pack; 
	ConvolutionFilter *_gauss3x3; 
	Unpack2ChannelsFilter *_unpack2ChannelsFilter; 
	RGB2PackedUVFilter *_rgb2PackedUVFilter; 
//	ConvolutionFilter *_dx; 
//	ConvolutionFilter *_dy; 
	RGB2GreyFilter *_rgb2grey; 
	DxDyFilter *_dxdy; 
	DxDy2PackFilter *_dxdy_2pack; 
	NonMaxSupressionFilter * _nonMaxSupression; 
	Pack2Filter *_pack2Filter; 
}; 
#endif