#include "HxImageRep.h"
Go to the source code of this file.
Functions | |
HxImageRep L_HXIMAGEREP | HxNormalizedCorrelation (HxImageRep img, HxImageRep kernel) |
Normalized (cross) correlation. More... |
|
Normalized (cross) correlation. Implementation specifics : The neighbourhood functor : HxKerNgbNormCorrelation. The image functor instantiator : HxInstKerNgb2dNormCorrelation_c.
00013 { 00014 HxString fname("HxNormalizedCorrelation"); 00015 00016 if (img.isNull()) 00017 { 00018 HxGlobalError::instance()->reportError(fname, img.name(), "null image", HxGlobalError::HX_GE_INVALID); 00019 return HxImageRep(); 00020 } 00021 if (kernel.isNull()) 00022 { 00023 HxGlobalError::instance()->reportError(fname, kernel.name(), "null kernel", HxGlobalError::HX_GE_INVALID); 00024 return HxImageRep(); 00025 } 00026 if (img.dimensionality() != kernel.dimensionality()) 00027 { 00028 HxGlobalError::instance()->reportError(fname, "kernel and image dimensionality do not match", HxGlobalError::HX_GE_INVALID); 00029 return HxImageRep(); 00030 } 00031 if (kernel.pixelDimensionality() != img.pixelDimensionality()) 00032 { 00033 HxGlobalError::instance()->reportError(fname, "kernel and image pixel dimensionality do not match", HxGlobalError::HX_GE_INVALID); 00034 return HxImageRep(); 00035 } 00036 00037 return img.neighbourhoodOp(kernel, "normalizedCorrelation"); 00038 } |