Commit 6d55fcc2 authored by Davis King's avatar Davis King

Made the disabled version of pyramid_down support the new image interface.

Also added an overload of operator() for pyramid_down that takes just
a single image and downsamples it.
parent 0eb725fc
......@@ -124,7 +124,19 @@ namespace dlib
COMPILE_TIME_ASSERT( pixel_traits<in_pixel_type>::has_alpha == false );
COMPILE_TIME_ASSERT( pixel_traits<out_pixel_type>::has_alpha == false );
down.clear();
set_image_size(down, 0, 0);
}
template <
typename image_type
>
void operator() (
image_type& img
) const
{
typedef typename image_traits<image_type>::pixel_type pixel_type;
COMPILE_TIME_ASSERT( pixel_traits<pixel_type>::has_alpha == false );
set_image_size(img, 0, 0);
}
};
......@@ -454,6 +466,18 @@ namespace dlib
}
template <
typename image_type
>
void operator() (
image_type& img
) const
{
image_type temp;
(*this)(img, temp);
swap(temp, img);
}
private:
......@@ -788,6 +812,17 @@ namespace dlib
}
}
template <
typename image_type
>
void operator() (
image_type& img
) const
{
image_type temp;
(*this)(img, temp);
swap(temp, img);
}
private:
......@@ -911,6 +946,18 @@ namespace dlib
set_image_size(down, ((N-1)*num_rows(original))/N, ((N-1)*num_columns(original))/N);
resize_image(original, down);
}
template <
typename image_type
>
void operator() (
image_type& img
) const
{
image_type temp;
(*this)(img, temp);
swap(temp, img);
}
};
template <>
......
......@@ -64,6 +64,24 @@ namespace dlib
points outside the #down image.
!*/
template <
typename image_type
>
void operator() (
image_type& img
) const;
/*!
requires
- image_type == an image object that implements the interface defined in
dlib/image_processing/generic_image.h
- pixel_traits<typename image_traits<image_type>::pixel_type>::has_alpha == false
ensures
- This function downsamples the given image and stores the results in #img.
In particular, it is equivalent to performing:
(*this)(img, temp);
swap(img, temp);
!*/
// -------------------------------
template <typename T>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment