diff --git a/MagickCore/MagickCore.h b/MagickCore/MagickCore.h
index ce6b94e..e430cc3 100644
--- a/MagickCore/MagickCore.h
+++ b/MagickCore/MagickCore.h
@@ -154,6 +154,7 @@
 #include "MagickCore/type.h"
 #include "MagickCore/utility.h"
 #include "MagickCore/version.h"
+#include "MagickCore/vision.h"
 #include "MagickCore/xml-tree.h"
 #include "MagickCore/xwindow.h"
 
diff --git a/MagickCore/Makefile.am b/MagickCore/Makefile.am
index 65c3fea..96f9be6 100644
--- a/MagickCore/Makefile.am
+++ b/MagickCore/Makefile.am
@@ -286,6 +286,8 @@
 	MagickCore/version.c \
 	MagickCore/version.h \
 	MagickCore/version-private.h \
+	MagickCore/vision.c \
+	MagickCore/vision.h \
 	MagickCore/vms.h \
 	MagickCore/widget.c \
 	MagickCore/widget.h \
@@ -407,6 +409,7 @@
 	MagickCore/type.h \
 	MagickCore/utility.h \
 	MagickCore/version.h \
+	MagickCore/vision.h \
 	MagickCore/widget.h \
 	MagickCore/xml-tree.h \
 	MagickCore/xwindow.h
diff --git a/MagickCore/version.h b/MagickCore/version.h
index dbfe9ef..6e46217 100644
--- a/MagickCore/version.h
+++ b/MagickCore/version.h
@@ -27,7 +27,7 @@
 */
 #define MagickPackageName "ImageMagick"
 #define MagickCopyright  "Copyright (C) 1999-2014 ImageMagick Studio LLC"
-#define MagickSVNRevision  "16730:16732M"
+#define MagickSVNRevision  "16730:16750M"
 #define MagickLibVersion  0x700
 #define MagickLibVersionText  "7.0.0"
 #define MagickLibVersionNumber  1,0,0
@@ -48,7 +48,7 @@
 #define MagickppLibAddendum  "-0"
 #define MagickppLibInterface  1
 #define MagickppLibMinInterface  1
-#define MagickReleaseDate  "2014-10-18"
+#define MagickReleaseDate  "2014-10-19"
 #define MagickChangeDate   "20120427"
 #define MagickAuthoritativeURL  "http://www.imagemagick.org"
 #define MagickFeatures "DPC HDRI OpenMP"
diff --git a/MagickCore/vision.c b/MagickCore/vision.c
new file mode 100644
index 0000000..c32dc9f
--- /dev/null
+++ b/MagickCore/vision.c
@@ -0,0 +1,199 @@
+/*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                                                             %
+%                                                                             %
+%                                                                             %
+%                   V   V  IIIII  SSSSS  IIIII   OOO   N   N                  %
+%                   V   V    I    SS       I    O   O  NN  N                  %
+%                   V   V    I     SSS     I    O   O  N N N                  %
+%                    V V     I       SS    I    O   O  N  NN                  %
+%                     V    IIIII  SSSSS  IIIII   OOO   N   N                  %
+%                                                                             %
+%                                                                             %
+%                      MagickCore Computer Vision Methods                     %
+%                                                                             %
+%                              Software Design                                %
+%                                   Cristy                                    %
+%                               September 2014                                %
+%                                                                             %
+%                                                                             %
+%  Copyright 1999-2014 ImageMagick Studio LLC, a non-profit organization      %
+%  dedicated to making software imaging solutions freely available.           %
+%                                                                             %
+%  You may not use this file except in compliance with the License.  You may  %
+%  obtain a copy of the License at                                            %
+%                                                                             %
+%    http://www.imagemagick.org/script/license.php                            %
+%                                                                             %
+%  Unless required by applicable law or agreed to in writing, software        %
+%  distributed under the License is distributed on an "AS IS" BASIS,          %
+%  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   %
+%  See the License for the specific language governing permissions and        %
+%  limitations under the License.                                             %
+%                                                                             %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%
+*/
+
+#include "MagickCore/studio.h"
+#include "MagickCore/accelerate.h"
+#include "MagickCore/blob.h"
+#include "MagickCore/cache-view.h"
+#include "MagickCore/color.h"
+#include "MagickCore/color-private.h"
+#include "MagickCore/colorspace.h"
+#include "MagickCore/constitute.h"
+#include "MagickCore/decorate.h"
+#include "MagickCore/distort.h"
+#include "MagickCore/draw.h"
+#include "MagickCore/enhance.h"
+#include "MagickCore/exception.h"
+#include "MagickCore/exception-private.h"
+#include "MagickCore/effect.h"
+#include "MagickCore/gem.h"
+#include "MagickCore/geometry.h"
+#include "MagickCore/image-private.h"
+#include "MagickCore/list.h"
+#include "MagickCore/log.h"
+#include "MagickCore/matrix.h"
+#include "MagickCore/memory_.h"
+#include "MagickCore/memory-private.h"
+#include "MagickCore/monitor.h"
+#include "MagickCore/monitor-private.h"
+#include "MagickCore/montage.h"
+#include "MagickCore/morphology.h"
+#include "MagickCore/morphology-private.h"
+#include "MagickCore/opencl-private.h"
+#include "MagickCore/paint.h"
+#include "MagickCore/pixel-accessor.h"
+#include "MagickCore/pixel-private.h"
+#include "MagickCore/property.h"
+#include "MagickCore/quantum.h"
+#include "MagickCore/resource_.h"
+#include "MagickCore/signature-private.h"
+#include "MagickCore/string_.h"
+#include "MagickCore/thread-private.h"
+#include "MagickCore/vision.h"
+
+/*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                                                             %
+%                                                                             %
+%                                                                             %
+%     C o n n e c t e d C o m p o n e n t s I m a g e                         %
+%                                                                             %
+%                                                                             %
+%                                                                             %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%  ConnectedComponentsImage() returns the connected-components of the image
+%  uniquely labeled.  Choose from 4 or 8-way connectivity.
+%
+%  The format of the ConnectedComponentsImage method is:
+%
+%      Image *ConnectedComponentsImage(const Image *image,
+%        const size_t connectivity,ExceptionInfo *exception)
+%
+%  A description of each parameter follows:
+%
+%    o image: the image.
+%
+%    o connectivity: how many neighbors to visit.
+%
+%    o exception: return any errors or warnings in this structure.
+%
+*/
+MagickExport Image *ConnectedComponentsImage(const Image *image,
+  const size_t connectivity,ExceptionInfo *exception)
+{
+#define ConnectedComponentsImageTag  "ConnectedComponents/Image"
+
+  CacheView
+    *image_view,
+    *component_view;
+
+  Image
+    *component_image;
+
+  MagickBooleanType
+    status;
+
+  MagickOffsetType
+    progress;
+
+  ssize_t
+    y;
+
+  /*
+    Initialize connected components image attributes.
+  */
+  assert(image != (Image *) NULL);
+  assert(image->signature == MagickSignature);
+  if (image->debug != MagickFalse)
+    (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
+  assert(exception != (ExceptionInfo *) NULL);
+  assert(exception->signature == MagickSignature);
+  component_image=CloneImage(image,image->columns,image->rows,MagickTrue,
+    exception);
+  if (component_image == (Image *) NULL)
+    return((Image *) NULL);
+  if (SetImageStorageClass(component_image,DirectClass,exception) == MagickFalse)
+    {
+      component_image=DestroyImage(component_image);
+      return((Image *) NULL);
+    }
+  /*
+    ConnectedComponents image.
+  */
+  status=MagickTrue;
+  progress=0;
+  image_view=AcquireVirtualCacheView(image,exception);
+  component_view=AcquireAuthenticCacheView(component_image,exception);
+#if defined(MAGICKCORE_OPENMP_SUPPORT)
+  #pragma omp parallel for schedule(static,4) shared(progress,status) \
+    magick_threads(image,component_image,component_image->rows,1)
+#endif
+  for (y=0; y < (ssize_t) component_image->rows; y++)
+  {
+    register Quantum
+      *restrict q;
+
+    register ssize_t
+      x;
+
+    if (status == MagickFalse)
+      continue;
+    q=QueueCacheViewAuthenticPixels(component_view,0,y,component_image->columns,
+      1,exception);
+    if (q == (Quantum *) NULL)
+      {
+        status=MagickFalse;
+        continue;
+      }
+    for (x=0; x < (ssize_t) component_image->columns; x++)
+    {
+      q++;
+    }
+    if (SyncCacheViewAuthenticPixels(component_view,exception) == MagickFalse)
+      status=MagickFalse;
+    if (image->progress_monitor != (MagickProgressMonitor) NULL)
+      {
+        MagickBooleanType
+          proceed;
+
+#if defined(MAGICKCORE_OPENMP_SUPPORT)
+        #pragma omp critical (MagickCore_ConnectedComponentsImage)
+#endif
+        proceed=SetImageProgress(image,ConnectedComponentsImageTag,progress++,
+          image->rows);
+        if (proceed == MagickFalse)
+          status=MagickFalse;
+      }
+  }
+  component_view=DestroyCacheView(component_view);
+  image_view=DestroyCacheView(image_view);
+  if (status == MagickFalse)
+    component_image=DestroyImage(component_image);
+  return(component_image);
+}
diff --git a/MagickCore/vision.h b/MagickCore/vision.h
new file mode 100644
index 0000000..88bc1a4
--- /dev/null
+++ b/MagickCore/vision.h
@@ -0,0 +1,32 @@
+/*
+  Copyright 1999-2014 ImageMagick Studio LLC, a non-profit organization
+  dedicated to making software imaging solutions freely available.
+  
+  You may not use this file except in compliance with the License.
+  obtain a copy of the License at
+  
+    http://www.imagemagick.org/script/license.php
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+  MagickCore computer vision methods.
+*/
+#ifndef _MAGICKCORE_VISION_H
+#define _MAGICKCORE_VISION_H
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+extern MagickExport Image
+  *ConnectedComponentsImage(const Image *,const size_t,ExceptionInfo *);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+}
+#endif
+
+#endif
diff --git a/MagickWand/convert.c b/MagickWand/convert.c
index 5614d9f..d7e7c61 100644
--- a/MagickWand/convert.c
+++ b/MagickWand/convert.c
@@ -181,6 +181,8 @@
       "-brightness-contrast geometry",
       "                     improve brightness / contrast of the image",
       "-canny geometry      detect edges in the image",
+      "-connected-components connectivity",
+      "                     connected-components uniquely labeled",
       "-cdl filename        color correct with a color decision list",
       "-charcoal radius     simulate a charcoal drawing",
       "-chop geometry       remove pixels from the image interior",
@@ -1126,6 +1128,15 @@
           }
         if (LocaleCompare("concurrent",option+1) == 0)
           break;
+        if (LocaleCompare("connected-component",option+1) == 0)
+          {
+            i++;
+            if (i == (ssize_t) argc)
+              ThrowConvertException(OptionError,"MissingArgument",option);
+            if (IsGeometry(argv[i]) == MagickFalse)
+              ThrowConvertInvalidArgumentException(option,argv[i]);
+            break;
+          }
         if (LocaleCompare("contrast",option+1) == 0)
           break;
         if (LocaleCompare("contrast-stretch",option+1) == 0)
diff --git a/MagickWand/mogrify.c b/MagickWand/mogrify.c
index eeeace8..7ab39cd 100644
--- a/MagickWand/mogrify.c
+++ b/MagickWand/mogrify.c
@@ -1194,6 +1194,13 @@
               MagickFalse,argv[i+1]);
             break;
           }
+        if (LocaleCompare("connected-component",option+1) == 0)
+          {
+            (void) SyncImageSettings(mogrify_info,*image,exception);
+            mogrify_image=ConnectedComponentsImage(*image,
+              StringToInteger(argv[i+1]),exception);
+            break;
+          }
         if (LocaleCompare("contrast",option+1) == 0)
           {
             (void) SyncImageSettings(mogrify_info,*image,exception);
@@ -3354,6 +3361,8 @@
       "-brightness-contrast geometry",
       "                     improve brightness / contrast of the image",
       "-canny geometry      detect edges in the image",
+      "-connected-components connectivity",
+      "                     connected-components uniquely labeled",
       "-cdl filename        color correct with a color decision list",
       "-charcoal geometry   simulate a charcoal drawing",
       "-chop geometry       remove pixels from the image interior",
@@ -4285,6 +4294,15 @@
           }
         if (LocaleCompare("concurrent",option+1) == 0)
           break;
+        if (LocaleCompare("connected-components",option+1) == 0)
+          {
+            i++;
+            if (i == (ssize_t) argc)
+              ThrowMogrifyException(OptionError,"MissingArgument",option);
+            if (IsGeometry(argv[i]) == MagickFalse)
+              ThrowMogrifyInvalidArgumentException(option,argv[i]);
+            break;
+          }
         if (LocaleCompare("contrast",option+1) == 0)
           break;
         if (LocaleCompare("contrast-stretch",option+1) == 0)
diff --git a/MagickWand/operation.c b/MagickWand/operation.c
index 6551783..e728a52 100644
--- a/MagickWand/operation.c
+++ b/MagickWand/operation.c
@@ -2096,6 +2096,14 @@
                     _exception);
           break;
         }
+      if (LocaleCompare("connected-components",option+1) == 0)
+        {
+          if (IfMagickFalse(IsGeometry(arg1)))
+            CLIWandExceptArgBreak(OptionError,"InvalidArgument",option,arg1);
+          new_image=ConnectedComponentsImage(_image,StringToInteger(arg1),
+           _exception);
+          break;
+        }
       if (LocaleCompare("contrast",option+1) == 0)
         {
           CLIWandWarnReplaced(IfNormalOp?"-level":"+level");
diff --git a/Makefile.in b/Makefile.in
index 55c2cb8..8066fee 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -533,7 +533,8 @@
 	MagickCore/utility.c MagickCore/utility.h \
 	MagickCore/utility-private.h MagickCore/version.c \
 	MagickCore/version.h MagickCore/version-private.h \
-	MagickCore/vms.h MagickCore/widget.c MagickCore/widget.h \
+	MagickCore/vision.c MagickCore/vision.h MagickCore/vms.h \
+	MagickCore/widget.c MagickCore/widget.h \
 	MagickCore/widget-private.h MagickCore/xml-tree.c \
 	MagickCore/xml-tree.h MagickCore/xml-tree-private.h \
 	MagickCore/xwindow.c MagickCore/xwindow.h \
@@ -658,6 +659,7 @@
 	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-type.lo \
 	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-utility.lo \
 	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-version.lo \
+	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo \
 	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.lo \
 	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-xml-tree.lo \
 	MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-xwindow.lo
@@ -4387,6 +4389,8 @@
 	MagickCore/version.c \
 	MagickCore/version.h \
 	MagickCore/version-private.h \
+	MagickCore/vision.c \
+	MagickCore/vision.h \
 	MagickCore/vms.h \
 	MagickCore/widget.c \
 	MagickCore/widget.h \
@@ -4503,6 +4507,7 @@
 	MagickCore/type.h \
 	MagickCore/utility.h \
 	MagickCore/version.h \
+	MagickCore/vision.h \
 	MagickCore/widget.h \
 	MagickCore/xml-tree.h \
 	MagickCore/xwindow.h
@@ -5778,6 +5783,9 @@
 MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-version.lo:  \
 	MagickCore/$(am__dirstamp) \
 	MagickCore/$(DEPDIR)/$(am__dirstamp)
+MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo:  \
+	MagickCore/$(am__dirstamp) \
+	MagickCore/$(DEPDIR)/$(am__dirstamp)
 MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.lo:  \
 	MagickCore/$(am__dirstamp) \
 	MagickCore/$(DEPDIR)/$(am__dirstamp)
@@ -7271,6 +7279,7 @@
 @AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-type.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-utility.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-version.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-xml-tree.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-xwindow.Plo@am__quote@
@@ -8206,6 +8215,13 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-version.lo `test -f 'MagickCore/version.c' || echo '$(srcdir)/'`MagickCore/version.c
 
+MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo: MagickCore/vision.c
+@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo -MD -MP -MF MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.Tpo -c -o MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo `test -f 'MagickCore/vision.c' || echo '$(srcdir)/'`MagickCore/vision.c
+@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.Tpo MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='MagickCore/vision.c' object='MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-vision.lo `test -f 'MagickCore/vision.c' || echo '$(srcdir)/'`MagickCore/vision.c
+
 MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.lo: MagickCore/widget.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.lo -MD -MP -MF MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.Tpo -c -o MagickCore/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.lo `test -f 'MagickCore/widget.c' || echo '$(srcdir)/'`MagickCore/widget.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.Tpo MagickCore/$(DEPDIR)/MagickCore_libMagickCore_@MAGICK_MAJOR_VERSION@_@MAGICK_ABI_SUFFIX@_la-widget.Plo
diff --git a/PerlMagick/Magick.xs b/PerlMagick/Magick.xs
index b67088c..0af05e6 100644
--- a/PerlMagick/Magick.xs
+++ b/PerlMagick/Magick.xs
@@ -555,6 +555,7 @@
       {"distance", RealReference} } },
     { "Kuwahara", { {"geometry", StringReference}, {"radius", RealReference},
       {"sigma", RealReference}, {"channel", MagickChannelOptions} } },
+    { "ConnectedComponents", { {"connectivity", IntegerReference} } },
   };
 
 static SplayTreeInfo
@@ -7547,6 +7548,8 @@
     MeanShiftImage     = 283
     Kuwahara           = 284
     KuwaharaImage      = 285
+    ConnectedComponent = 286
+    ConnectedComponentImage = 287
     MogrifyRegion      = 666
   PPCODE:
   {
@@ -11217,6 +11220,17 @@
             (void) SetImageChannelMask(image,channel_mask);
           break;
         }
+        case 142:  /* ConnectedComponent */
+        {
+          size_t
+            connectivity;
+
+          connectivity=4;
+          if (attribute_flag[0] != 0)
+            connectivity=argument_list[0].integer_reference;
+          image=ConnectedComponentsImage(image,connectivity,exception);
+          break;
+        }
       }
       if (next != (Image *) NULL)
         (void) CatchImageException(next);
diff --git a/PerlMagick/quantum/quantum.xs.in b/PerlMagick/quantum/quantum.xs.in
index c667b05..c5b6da6 100644
--- a/PerlMagick/quantum/quantum.xs.in
+++ b/PerlMagick/quantum/quantum.xs.in
@@ -555,6 +555,7 @@
       {"double", RealReference} } },
     { "Kuwahara", { {"geometry", StringReference}, {"radius", RealReference},
       {"sigma", RealReference}, {"channel", MagickChannelOptions} } },
+    { "ConnectedComponents", { {"connectivity", IntegerReference} } },
   };
 
 static SplayTreeInfo
@@ -7547,6 +7548,8 @@
     MeanShiftImage     = 283
     Kuwahara           = 284
     KuwaharaImage      = 285
+    ConnectedComponent = 286
+    ConnectedComponentImage = 287
     MogrifyRegion      = 666
   PPCODE:
   {
@@ -11215,6 +11218,17 @@
             (void) SetImageChannelMask(image,channel_mask);
           break;
         }
+        case 142:  /* ConnectedComponent */
+        {
+          size_t
+            connectivity;
+
+          connectivity=4;
+          if (attribute_flag[0] != 0)
+            connectivity=argument_list[0].integer_reference;
+          image=ConnectedComponentsImage(image,connectivity,exception);
+          break;
+        }
       }
       if (next != (Image *) NULL)
         (void) CatchImageException(next);
diff --git a/configure b/configure
index 756fc65..1c6326c 100755
--- a/configure
+++ b/configure
@@ -3698,7 +3698,7 @@
 
 MAGICK_VERSION=7.0.0-0
 
-MAGICK_SVN_REVISION=16730:16732M
+MAGICK_SVN_REVISION=16730:16750M
 
 
 # Substitute library versioning
diff --git a/utilities/convert.1.in b/utilities/convert.1.in
index 347df67..04a3085 100644
--- a/utilities/convert.1.in
+++ b/utilities/convert.1.in
@@ -144,6 +144,8 @@
   \-clip-path id        clip along a named path from the 8BIM profile
   \-colorize value      colorize the image with the fill color
   \-color-matrix matrix apply color correction to the image
+  \-connected-component connectivity
+                       connected-components uniquely labeled
   \-contrast            enhance or reduce the image contrast
   \-contrast-stretch geometry
                        improve contrast by `stretching' the intensity range
diff --git a/utilities/mogrify.1.in b/utilities/mogrify.1.in
index 23acc6d..3f63480 100644
--- a/utilities/mogrify.1.in
+++ b/utilities/mogrify.1.in
@@ -142,6 +142,8 @@
   \-clip-path id        clip along a named path from the 8BIM profile
   \-colorize value      colorize the image with the fill color
   \-color-matrix matrix apply color correction to the image
+  \-connected-component connectivity
+                       connected-components uniquely labeled
   \-contrast            enhance or reduce the image contrast
   \-contrast-stretch geometry
                        improve contrast by `stretching' the intensity range