diff --git a/FrameProcessor.cpp b/FrameProcessor.cpp
index 9f9bc28b902eca80cb5ca822c86950d96723b7b2..85cfab92b0b3683696747a4d092796d6b79f4d08 100644
--- a/FrameProcessor.cpp
+++ b/FrameProcessor.cpp
@@ -142,6 +142,9 @@ namespace bgslibrary
     if (enableMultiCueBGS)
       mcbgs = new SJN_MultiCueBGS;
 
+    if (enableSigmaDeltaBGS)
+      sdbgs = new SigmaDeltaBGS;
+
     if (enableForegroundMaskAnalysis)
       foregroundMaskAnalysis = new ForegroundMaskAnalysis;
   }
@@ -275,6 +278,9 @@ namespace bgslibrary
     if (enableMultiCueBGS)
       process("MultiCueBGS", mcbgs, img_prep, img_mcbgs);
 
+    if (enableSigmaDeltaBGS)
+      process("SigmaDeltaBGS", sdbgs, img_prep, img_sdbgs);
+
     if (enableForegroundMaskAnalysis)
     {
       foregroundMaskAnalysis->stopAt = frameToStop;
@@ -318,6 +324,7 @@ namespace bgslibrary
       foregroundMaskAnalysis->process(frameNumber, "KDE", img_kde);
       foregroundMaskAnalysis->process(frameNumber, "IMBS", img_imbs);
       foregroundMaskAnalysis->process(frameNumber, "MultiCueBGS", img_mcbgs);
+      foregroundMaskAnalysis->process(frameNumber, "SigmaDeltaBGS", img_sdbgs);
     }
 
     firstTime = false;
@@ -346,6 +353,9 @@ namespace bgslibrary
     if (enableForegroundMaskAnalysis)
       delete foregroundMaskAnalysis;
 
+    if (enableSigmaDeltaBGS)
+      delete sdbgs;
+
     if (enableMultiCueBGS)
       delete mcbgs;
 
@@ -521,6 +531,7 @@ namespace bgslibrary
     cvWriteInt(fs, "enableKDE", enableKDE);
     cvWriteInt(fs, "enableIMBS", enableIMBS);
     cvWriteInt(fs, "enableMultiCueBGS", enableMultiCueBGS);
+    cvWriteInt(fs, "enableSigmaDeltaBGS", enableSigmaDeltaBGS);
 
     cvReleaseFileStorage(&fs);
   }
@@ -578,6 +589,7 @@ namespace bgslibrary
     enableKDE = cvReadIntByName(fs, 0, "enableKDE", false);
     enableIMBS = cvReadIntByName(fs, 0, "enableIMBS", false);
     enableMultiCueBGS = cvReadIntByName(fs, 0, "enableMultiCueBGS", false);
+    enableSigmaDeltaBGS = cvReadIntByName(fs, 0, "enableSigmaDeltaBGS", false);
 
     cvReleaseFileStorage(&fs);
   }
diff --git a/FrameProcessor.h b/FrameProcessor.h
index 91ce08cbeee3e81fe75d4b7d4a87b78308cdb1cb..e29d7edb6174691d1e4bb3344d5de8e1c008e781 100644
--- a/FrameProcessor.h
+++ b/FrameProcessor.h
@@ -68,6 +68,7 @@ along with BGSLibrary.  If not, see <http://www.gnu.org/licenses/>.
 #include "package_bgs/ae/KDE.h"
 #include "package_bgs/db/IndependentMultimodalBGS.h"
 #include "package_bgs/sjn/SJN_MultiCueBGS.h"
+#include "package_bgs/bl/SigmaDeltaBGS.h"
 
 #include "package_analysis/ForegroundMaskAnalysis.h"
 
@@ -226,6 +227,10 @@ namespace bgslibrary
     SJN_MultiCueBGS* mcbgs;
     bool enableMultiCueBGS;
 
+    cv::Mat img_sdbgs;
+    SigmaDeltaBGS* sdbgs;
+    bool enableSigmaDeltaBGS;
+
     ForegroundMaskAnalysis* foregroundMaskAnalysis;
     bool enableForegroundMaskAnalysis;
 
diff --git a/Main.cpp b/Main.cpp
index 3d27e61e7b4d76dfc41fe1cb941854b056e079a0..a7168720e2df995ff588a0bd12b2c0072d381ef4 100644
--- a/Main.cpp
+++ b/Main.cpp
@@ -29,7 +29,7 @@ namespace bgslibrary
     static void start(int argc, const char **argv)
     {
       std::cout << "-----------------------------------------" << std::endl;
-      std::cout << "Background Subtraction Library v1.9.0     " << std::endl;
+      std::cout << "Background Subtraction Library v1.9.1     " << std::endl;
       std::cout << "http://code.google.com/p/bgslibrary       " << std::endl;
       std::cout << "by:                                       " << std::endl;
       std::cout << "Andrews Sobral (andrewssobral@gmail.com)  " << std::endl;
diff --git a/bgslibrary.exe b/bgslibrary.exe
index 5cbd4e2099cfd60482da69ac24ddd2acefa48c32..1bdc85c896c2e77b5b5b209822f4ef80d47bc4ec 100644
Binary files a/bgslibrary.exe and b/bgslibrary.exe differ
diff --git a/config/FrameProcessor.xml b/config/FrameProcessor.xml
index 9ff1a61df218a26630f1c7db93a9e36d63c7c638..f20b2a7d262b46c8b8d0305b3dccc129c1601360 100644
--- a/config/FrameProcessor.xml
+++ b/config/FrameProcessor.xml
@@ -35,4 +35,5 @@
 <enableKDE>0</enableKDE>
 <enableIMBS>0</enableIMBS>
 <enableMultiCueBGS>0</enableMultiCueBGS>
+<enableSigmaDeltaBGS>0</enableSigmaDeltaBGS>
 </opencv_storage>
diff --git a/run_camera.bat b/run_camera.bat
new file mode 100644
index 0000000000000000000000000000000000000000..672229f6755ef00727eca7d1b2c183c24612ef13
--- /dev/null
+++ b/run_camera.bat
@@ -0,0 +1,2 @@
+@echo off
+bgslibrary.exe --use_cam --camera=0
\ No newline at end of file
diff --git a/vs2010/bgslibrary.v12.suo b/vs2010/bgslibrary.v12.suo
index 318f0336bf43288341f2a845a4a0e9b1eff5180c..0ffb2950bddaadb81b9d80b1cbd5203a718df60e 100644
Binary files a/vs2010/bgslibrary.v12.suo and b/vs2010/bgslibrary.v12.suo differ
diff --git a/vs2010/bgslibrary.vcxproj b/vs2010/bgslibrary.vcxproj
index a1bddf6930ec4de042f5c75fd7d7b380ab69bf75..bba9c02dbda4a7ba1669bd8b8cc647ea379be921 100644
--- a/vs2010/bgslibrary.vcxproj
+++ b/vs2010/bgslibrary.vcxproj
@@ -81,8 +81,15 @@
     <ClCompile Include="..\Demo.cpp">
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
     </ClCompile>
-    <ClCompile Include="..\FrameProcessor.cpp" />
-    <ClCompile Include="..\Main.cpp" />
+    <ClCompile Include="..\Demo2.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="..\FrameProcessor.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="..\Main.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClCompile>
     <ClCompile Include="..\package_analysis\ForegroundMaskAnalysis.cpp" />
     <ClCompile Include="..\package_bgs\AdaptiveBackgroundLearning.cpp" />
     <ClCompile Include="..\package_bgs\AdaptiveSelectiveBackgroundLearning.cpp" />
@@ -93,6 +100,8 @@
     <ClCompile Include="..\package_bgs\av\TBackground.cpp" />
     <ClCompile Include="..\package_bgs\av\TBackgroundVuMeter.cpp" />
     <ClCompile Include="..\package_bgs\av\VuMeter.cpp" />
+    <ClCompile Include="..\package_bgs\bl\sdLaMa091.cpp" />
+    <ClCompile Include="..\package_bgs\bl\SigmaDeltaBGS.cpp" />
     <ClCompile Include="..\package_bgs\db\imbs.cpp" />
     <ClCompile Include="..\package_bgs\db\IndependentMultimodalBGS.cpp" />
     <ClCompile Include="..\package_bgs\dp\AdaptiveMedianBGS.cpp" />
@@ -150,14 +159,26 @@
     <ClCompile Include="..\package_bgs\tb\T2FMRF_UV.cpp" />
     <ClCompile Include="..\package_bgs\WeightedMovingMeanBGS.cpp" />
     <ClCompile Include="..\package_bgs\WeightedMovingVarianceBGS.cpp" />
-    <ClCompile Include="..\PreProcessor.cpp" />
-    <ClCompile Include="..\VideoAnalysis.cpp" />
-    <ClCompile Include="..\VideoCapture.cpp" />
+    <ClCompile Include="..\PreProcessor.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="..\VideoAnalysis.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClCompile>
+    <ClCompile Include="..\VideoCapture.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="..\Config.h" />
-    <ClInclude Include="..\FrameProcessor.h" />
-    <ClInclude Include="..\IFrameProcessor.h" />
+    <ClInclude Include="..\Config.h">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="..\FrameProcessor.h">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="..\IFrameProcessor.h">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClInclude>
     <ClInclude Include="..\package_analysis\ForegroundMaskAnalysis.h" />
     <ClInclude Include="..\package_bgs\AdaptiveBackgroundLearning.h" />
     <ClInclude Include="..\package_bgs\AdaptiveSelectiveBackgroundLearning.h" />
@@ -168,6 +189,9 @@
     <ClInclude Include="..\package_bgs\av\TBackground.h" />
     <ClInclude Include="..\package_bgs\av\TBackgroundVuMeter.h" />
     <ClInclude Include="..\package_bgs\av\VuMeter.h" />
+    <ClInclude Include="..\package_bgs\bl\sdLaMa091.h" />
+    <ClInclude Include="..\package_bgs\bl\SigmaDeltaBGS.h" />
+    <ClInclude Include="..\package_bgs\bl\stdbool.h" />
     <ClInclude Include="..\package_bgs\db\imbs.hpp" />
     <ClInclude Include="..\package_bgs\db\IndependentMultimodalBGS.h" />
     <ClInclude Include="..\package_bgs\dp\AdaptiveMedianBGS.h" />
@@ -233,9 +257,15 @@
     <ClInclude Include="..\package_bgs\tb\T2FMRF_UV.h" />
     <ClInclude Include="..\package_bgs\WeightedMovingMeanBGS.h" />
     <ClInclude Include="..\package_bgs\WeightedMovingVarianceBGS.h" />
-    <ClInclude Include="..\PreProcessor.h" />
-    <ClInclude Include="..\VideoAnalysis.h" />
-    <ClInclude Include="..\VideoCapture.h" />
+    <ClInclude Include="..\PreProcessor.h">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="..\VideoAnalysis.h">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClInclude>
+    <ClInclude Include="..\VideoCapture.h">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
+    </ClInclude>
   </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
diff --git a/vs2010/bgslibrary.vcxproj.filters b/vs2010/bgslibrary.vcxproj.filters
index f91c2cc38b74bc9d99526a9bcdf3c9eccdd53f38..b2401b0287ac39c646420bc8e9b1b406d1e6a26c 100644
--- a/vs2010/bgslibrary.vcxproj.filters
+++ b/vs2010/bgslibrary.vcxproj.filters
@@ -49,6 +49,9 @@
     <Filter Include="Header Files\package_analysis">
       <UniqueIdentifier>{52a9f254-d817-4577-96c2-0b3b0a9527b7}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Header Files\package_bgs\bl">
+      <UniqueIdentifier>{0494c5d4-b4bb-421c-b032-176903ba8e1b}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\package_bgs\AdaptiveBackgroundLearning.cpp">
@@ -270,6 +273,15 @@
     <ClCompile Include="..\package_analysis\ForegroundMaskAnalysis.cpp">
       <Filter>Header Files\package_analysis</Filter>
     </ClCompile>
+    <ClCompile Include="..\Demo2.cpp">
+      <Filter>Source Files\demo</Filter>
+    </ClCompile>
+    <ClCompile Include="..\package_bgs\bl\SigmaDeltaBGS.cpp">
+      <Filter>Header Files\package_bgs\bl</Filter>
+    </ClCompile>
+    <ClCompile Include="..\package_bgs\bl\sdLaMa091.cpp">
+      <Filter>Header Files\package_bgs\bl</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\package_bgs\AdaptiveBackgroundLearning.h">
@@ -515,5 +527,14 @@
     <ClInclude Include="..\package_analysis\ForegroundMaskAnalysis.h">
       <Filter>Header Files\package_analysis</Filter>
     </ClInclude>
+    <ClInclude Include="..\package_bgs\bl\sdLaMa091.h">
+      <Filter>Header Files\package_bgs\bl</Filter>
+    </ClInclude>
+    <ClInclude Include="..\package_bgs\bl\SigmaDeltaBGS.h">
+      <Filter>Header Files\package_bgs\bl</Filter>
+    </ClInclude>
+    <ClInclude Include="..\package_bgs\bl\stdbool.h">
+      <Filter>Header Files\package_bgs\bl</Filter>
+    </ClInclude>
   </ItemGroup>
 </Project>
\ No newline at end of file