]> granicus.if.org Git - imagemagick/commitdiff
Added meanShift to Magick++.
authorDirk Lemstra <dirk@git.imagemagick.org>
Thu, 3 Aug 2017 18:28:56 +0000 (20:28 +0200)
committerDirk Lemstra <dirk@git.imagemagick.org>
Thu, 3 Aug 2017 18:29:36 +0000 (20:29 +0200)
Magick++/lib/Image.cpp
Magick++/lib/Magick++/Image.h

index 8814b96d0046c6d1c0a4467dc37b57e5564f6723..999d4fbeea805dcbc9bdebf75ed10d3a48b89a29 100644 (file)
@@ -3534,6 +3534,19 @@ void Magick::Image::map(const Image &mapImage_,const bool dither_)
   ThrowImageException;
 }
 
+void Magick::Image::meanShift(const size_t width_,const size_t height_,
+  const double color_distance_)
+{
+  MagickCore::Image
+    *newImage;
+
+  GetPPException;
+  newImage=MeanShiftImage(constImage(),width_,height_,color_distance_,
+    exceptionInfo);
+  replaceImage(newImage);
+  ThrowImageException;
+}
+
 void Magick::Image::medianFilter(const double radius_)
 {
   MagickCore::Image
index 4d6ccd3623cdca99fe724da29f48c7d022b3e470..2fb8c38f30a98c2f17126f378a32a47bba1304b4 100644 (file)
@@ -1070,6 +1070,10 @@ namespace Magick
     // Remap image colors with closest color from reference image
     void map(const Image &mapImage_,const bool dither_=false);
 
+    // Delineate arbitrarily shaped clusters in the image.
+    void meanShift(const size_t width_,const size_t height_,
+      const double color_distance_);
+
     // Filter image by replacing each pixel component with the median
     // color in a circular neighborhood
     void medianFilter(const double radius_=0.0);