www.pudn.com > GPUVision_5-13-05-2.zip > HarrisCorner.cpp


#include "HarrisCorner.h" 
 
HarrisCorner::HarrisCorner(CGcontext context, float threshold, bool shouldThin){ 
	this->_shouldThin = shouldThin; 
 
	_harris = new HarrisFilter(threshold, context); 
	_localMaximum = new LocalMaximumFilter(context); 
	_dxdy = new DxDyFilter(context); 
} 
HarrisCorner::~HarrisCorner(){ 
	delete _harris; 
	delete _localMaximum; 
	delete _dxdy; 
} 
void HarrisCorner::HarrisCornerDetect(GPUVision *image1) { 
	bool shouldBind = !image1->IsBound(); 
	if(shouldBind) image1->Begin(); 
 
	_dxdy->applyFilter(image1); 
	_harris->applyFilter(image1); 
	if(_shouldThin) { 
		_localMaximum->applyFilter(image1); 
	} 
	if(shouldBind) image1->End(); 
}