diff --git a/include/lsgrmBaatzSegmenter.h b/include/lsgrmBaatzSegmenter.h
index 763439ce0a4e3a2669ea4c380a4c0e7b7da079c2..6cebb08a8909799d8af7813d32ed11806e6a25ab 100644
--- a/include/lsgrmBaatzSegmenter.h
+++ b/include/lsgrmBaatzSegmenter.h
@@ -1,5 +1,5 @@
-#ifndef __LSRM_BAATZ_SEGMENTER_H
-#define __LSRM_BAATZ_SEGMENTER_H
+#ifndef __LSGRM_BAATZ_SEGMENTER_H
+#define __LSGRM_BAATZ_SEGMENTER_H
 #include "lsgrmSegmenter.h"
 #include "grmBaatzSegmenter.h"
 
diff --git a/include/lsgrmBaatzSegmenter.txx b/include/lsgrmBaatzSegmenter.txx
index 442efa113d0eb032c12e8aceccf572b6bce2c067..7e451c8674ed84ff2df7a833bf675888a2784793 100644
--- a/include/lsgrmBaatzSegmenter.txx
+++ b/include/lsgrmBaatzSegmenter.txx
@@ -1,8 +1,6 @@
-#ifndef __LSRM_BAATZ_SEGMENTER_TXX
-#define __LSRM_BAATZ_SEGMENTER_TXX
-#include <otbImageFileReader.h>
-#include <itkImageRegionIterator.h>
-
+#ifndef __LSGRM_BAATZ_SEGMENTER_TXX
+#define __LSGRM_BAATZ_SEGMENTER_TXX
+#include "lsgrmBaatzSegmenter.h"
 namespace lsgrm
 {
 
diff --git a/include/lsgrmController.txx b/include/lsgrmController.txx
index 48a7b45128bac769fa2f8e25dfb99bb32970e431..26de5f540e9b72bfe1b1e0a23d16eac364ecf50e 100644
--- a/include/lsgrmController.txx
+++ b/include/lsgrmController.txx
@@ -1,3 +1,5 @@
+#ifndef __LSGRM_CONTROLLER_TXX
+#define __LSGRM_CONTROLLER_TXX
 #include "lsgrmController.h"
 
 namespace lsgrm
@@ -457,3 +459,4 @@ std::vector<std::string> Controller<TSegmenter>::GetTemporaryFilesList()
 }
 
 } // end of namespace lsgrm
+#endif
diff --git a/include/lsgrmFullLambdaScheduleSegmenter.h b/include/lsgrmFullLambdaScheduleSegmenter.h
index a9d63f26598bce075757a02a8be345db93da0068..fd7833b13b7a064f59901b767782a12382ff64c5 100644
--- a/include/lsgrmFullLambdaScheduleSegmenter.h
+++ b/include/lsgrmFullLambdaScheduleSegmenter.h
@@ -1,5 +1,5 @@
-#ifndef __LSRM_FLS_SEGMENTER_H
-#define __LSRM_FLS_SEGMENTER_H
+#ifndef __LGSRM_FLS_SEGMENTER_H
+#define __LGSRM_FLS_SEGMENTER_H
 #include "lsgrmSegmenter.h"
 #include "grmFullLambdaScheduleSegmenter.h"
 
@@ -28,6 +28,3 @@ public:
 } // end of namespace lsrm
 #include "lsgrmFullLambdaScheduleSegmenter.txx"
 #endif
-
-
-
diff --git a/include/lsgrmFullLambdaScheduleSegmenter.txx b/include/lsgrmFullLambdaScheduleSegmenter.txx
index d96df5375698f601d3c9ad93ea5594853a022638..62874b0247fa025972a79d7af1642278c322e6e2 100644
--- a/include/lsgrmFullLambdaScheduleSegmenter.txx
+++ b/include/lsgrmFullLambdaScheduleSegmenter.txx
@@ -1,8 +1,6 @@
-#ifndef __LSRM_FLS_SEGMENTER_TXX
-#define __LSRM_FLS_SEGMENTER_TXX
-#include <otbImageFileReader.h>
-#include <itkImageRegionIterator.h>
-
+#ifndef __LSGRM_FLS_SEGMENTER_TXX
+#define __LSGRM_FLS_SEGMENTER_TXX
+#include "lsgrmFullLambdaScheduleSegmenter.h"
 namespace lsgrm
 {
 
@@ -47,10 +45,3 @@ FullLambdaScheduleSegmenter<TImage>::GetSpecificAttributesMemory(NodePointerType
 } // end of namespace lsrm
 
 #endif
-
-
-
-
-
-
-
diff --git a/include/lsgrmGetInternalMemory.h b/include/lsgrmGetInternalMemory.h
index a5a299c87c3628802e7802948ab0bf7f394da357..7d0a4af5d0d5ff3f772199ddd39b5fdccc6c2710 100644
--- a/include/lsgrmGetInternalMemory.h
+++ b/include/lsgrmGetInternalMemory.h
@@ -4,6 +4,9 @@
  * License: Creative Commons Attribution 3.0 Unported License
  *          http://creativecommons.org/licenses/by/3.0/deed.en_US
  */
+#ifndef __LSGRM_GETINTERNALMEMORY_H
+#define __LSGRM_GETINTERNALMEMORY_H
+
 #if defined(_WIN32)
 #include <Windows.h>
 
@@ -94,3 +97,5 @@ size_t getMemorySize( )
 	return 0L;			/* Unknown OS. */
 #endif
 }
+
+#endif
diff --git a/include/lsgrmGraphOperations.txx b/include/lsgrmGraphOperations.txx
index b7ad8ca709c215c31359db010e1ee8d5e91169a7..930b8b32754bf16e5855bf43f11b296e347e16a7 100644
--- a/include/lsgrmGraphOperations.txx
+++ b/include/lsgrmGraphOperations.txx
@@ -1,3 +1,5 @@
+#ifndef __LSGRM_GRAPH_OPERATIONS_TXX
+#define __LSGRM_GRAPH_OPERATIONS_TXX
 //#include "lsgrmGraphOperations.h"
 //#include <unistd.h>
 #include <cstdio>
@@ -1036,3 +1038,4 @@ void RescaleGraph(typename TSegmenter::GraphType& graph,
 
 }
 }
+#endif
diff --git a/include/lsgrmSegmenter.h b/include/lsgrmSegmenter.h
index fb6e78eeb3991e6260a1dbbf15a8724307c06bc0..7eed1430eef0d46a877c17887f95528f55ec0931 100644
--- a/include/lsgrmSegmenter.h
+++ b/include/lsgrmSegmenter.h
@@ -1,5 +1,5 @@
-#ifndef __LSRM_SEGMENTER_H
-#define __LSRM_SEGMENTER_H
+#ifndef __LSGRM_SEGMENTER_H
+#define __LSGRM_SEGMENTER_H
 
 // Check windows
 #if _WIN32 || _WIN64
diff --git a/include/lsgrmSplitter.txx b/include/lsgrmSplitter.txx
index 79a4ec980d70908cbaed4baa55e95ed967c11afd..f3b8a54840ead1394e53f2a8736aa8a2717464e0 100644
--- a/include/lsgrmSplitter.txx
+++ b/include/lsgrmSplitter.txx
@@ -1,3 +1,5 @@
+#ifndef __LSGRM_SPLITTER_TXX
+#define __LSGRM_SPLITTER_TXX
 #include "lsgrmSplitter.h"
 
 namespace lsgrm
@@ -175,3 +177,4 @@ std::vector<ProcessingTile> SplitOTBImage(TInputImage * imagePtr, // input image
   return tiles;
     }
 } // end of namespace lsgrm
+#endif
diff --git a/include/lsgrmSpringSegmenter.txx b/include/lsgrmSpringSegmenter.txx
index c9bdc730f4aeca81c0becd12d5a3e4dce3bc4ea3..40ee13abefa2e845dc1c2e7f289a07d66dd2fc6a 100644
--- a/include/lsgrmSpringSegmenter.txx
+++ b/include/lsgrmSpringSegmenter.txx
@@ -1,8 +1,6 @@
 #ifndef __LSRM_Spring_SEGMENTER_TXX
 #define __LSRM_Spring_SEGMENTER_TXX
-#include <otbImageFileReader.h>
-#include <itkImageRegionIterator.h>
-
+#include "lsgrmSpringSegmenter.h"
 namespace lsgrm
 {