diff --git a/include/lsrmBaatzSegmenter.h b/include/lsrmBaatzSegmenter.h
index 76fef41248cf0e34fc059c8a4631a148f1d0097f..0495d092aaecb35b3a78400a29b2e0c27994499d 100644
--- a/include/lsrmBaatzSegmenter.h
+++ b/include/lsrmBaatzSegmenter.h
@@ -94,7 +94,7 @@ namespace lsrm
 		float ComputeMergingCost(NodePointerType n1, NodePointerType n2);
 		void UpdateSpecificAttributes(NodePointerType n1, NodePointerType n2);
 		void InitFromImage();
-		unsigned int GetNodeMemory(NodePointerType &node);
+		long long unsigned int GetNodeMemory(NodePointerType &node);
 	};
 	
 } // end of namespace lsrm
diff --git a/include/lsrmBaatzSegmenter.txx b/include/lsrmBaatzSegmenter.txx
index 0c36fa6649032f45ba1811bd7533d89b5432fdd6..5f30c260a8d73bed75e18bc8bcde5a862f68fde8 100644
--- a/include/lsrmBaatzSegmenter.txx
+++ b/include/lsrmBaatzSegmenter.txx
@@ -131,7 +131,7 @@ namespace lsrm
 	}
 
     template<class TImage>
-    unsigned int
+    long long unsigned int
     BaatzSegmenter<TImage>::GetNodeMemory(NodePointerType &node)
     {
 
diff --git a/include/lsrmSegmenter.h b/include/lsrmSegmenter.h
index 516afc76e69e3896c4142c0aaa1fd4a95331d270..c73c9ed222480c9f7a2971928ea38da7df122a9b 100644
--- a/include/lsrmSegmenter.h
+++ b/include/lsrmSegmenter.h
@@ -84,7 +84,7 @@ namespace lsrm
 		/*
 		 * Returns the memory (in bytes) occupied by one node of the graph
 		 */
-		virtual unsigned int GetNodeMemory(NodePointerType &node) = 0;
+		virtual long long unsigned int GetNodeMemory(NodePointerType &node) = 0;
 
         /*
          * Returns the memory (in bytes) occupied by the entire graph