Go to the documentation of this file.00001
00002 #ifndef vimt3d_gauss_reduce_h_
00003 #define vimt3d_gauss_reduce_h_
00004
00005
00006
00007
00008
00009 #include <vimt3d/vimt3d_image_3d_of.h>
00010 #include <vil3d/algo/vil3d_gauss_reduce.h>
00011
00012
00013
00014
00015
00016
00017
00018
00019 template<class T>
00020 void vimt3d_gauss_reduce(const vimt3d_image_3d_of<T>& src,
00021 vimt3d_image_3d_of<T>& dst,
00022 vimt3d_image_3d_of<T>& work1,
00023 vimt3d_image_3d_of<T>& work2)
00024 {
00025 vil3d_gauss_reduce(src.image(), dst.image(), work1.image(), work2.image());
00026
00027 vimt3d_transform_3d scaling;
00028 scaling.set_zoom_only(0.5, 0.5, 0.5, 0.0, 0.0, 0.0);
00029 dst.set_world2im(scaling * src.world2im());
00030 }
00031
00032
00033
00034
00035
00036 template<class T>
00037 void vimt3d_gauss_reduce(const vimt3d_image_3d_of<T>& src,
00038 vimt3d_image_3d_of<T>& dst)
00039 {
00040
00041 vimt3d_image_3d_of<T> work1;
00042 vimt3d_image_3d_of<T> work2;
00043 vimt3d_gauss_reduce(src, dst, work1, work2);
00044 }
00045
00046
00047 #endif // vimt3d_gauss_reduce_h_