00001
00002 #ifndef vimt_normalised_correlation_2d_h_
00003 #define vimt_normalised_correlation_2d_h_
00004
00005
00006
00007
00008
00009 #include <vil/algo/vil_normalised_correlation_2d.h>
00010 #include <vimt/vimt_image_2d_of.h>
00011
00012
00013
00014
00015
00016 template <class srcT, class destT, class kernelT, class accumT>
00017 inline void vimt_normalised_correlation_2d(const vimt_image_2d_of<srcT>& src_im,
00018 vimt_image_2d_of<destT>& dest_im,
00019 const vil_image_view<kernelT>& kernel,
00020 vgl_point_2d<double> kernel_ref_pt,
00021 accumT ac)
00022 {
00023 vil_normalised_correlation_2d(src_im.image(),dest_im.image(),kernel,ac);
00024 vimt_transform_2d offset;
00025 offset.set_translation(-kernel_ref_pt.x(),-kernel_ref_pt.y());
00026 dest_im.set_world2im(offset * src_im.world2im());
00027 }
00028
00029 #endif // vimt_normalised_correlation_2d_h_