diff --git a/SuperBuild/CMake/External_libsvm.cmake b/SuperBuild/CMake/External_libsvm.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..771b626795fcfc5e738cf8e2f8162036217458a9
--- /dev/null
+++ b/SuperBuild/CMake/External_libsvm.cmake
@@ -0,0 +1,42 @@
+set(proj LIBSVM)
+
+if(NOT __EXTERNAL_${proj}__)
+set(__EXTERNAL_${proj}__ 1)
+
+message(STATUS "Setup LibSVM...")
+
+if(USE_SYSTEM_LibSVM)
+  find_package ( LibSVM )
+  add_custom_target(${proj})
+  message(STATUS "  Using LibSVM system version")
+else()
+  SETUP_SUPERBUILD(PROJECT ${proj})
+  message(STATUS "  Using LibSVM SuperBuild version")
+    
+  ExternalProject_Add(${proj}
+    PREFIX ${proj}
+    URL "http://www.csie.ntu.edu.tw/~cjlin/libsvm/libsvm-3.20.tar.gz"
+    URL_MD5 5f088e5f89da1c65b642300c9c5ea772
+    BINARY_DIR ${LIBSVM_SB_BUILD_DIR}
+    INSTALL_DIR ${SB_INSTALL_PREFIX}
+    CMAKE_CACHE_ARGS
+      -DCMAKE_INSTALL_PREFIX:STRING=${SB_INSTALL_PREFIX}
+      -DCMAKE_BUILD_TYPE:STRING=Release
+      -DBUILD_SHARED_LIBS:BOOL=ON
+      ${LIBSVM_FLAGS}
+    CMAKE_COMMAND ${SB_CMAKE_COMMAND}
+    DEPENDS ${${proj}_DEPENDENCIES}
+    PATCH_COMMAND ${CMAKE_COMMAND} -E copy 
+      ${CMAKE_SOURCE_DIR}/patches/${proj}/CMakeLists.txt  
+      ${LIBSVM_SB_SRC}
+    )
+  
+ set(_SB_${proj}_INCLUDE_DIR ${SB_INSTALL_PREFIX}/include)
+  if(WIN32)
+    set(_SB_${proj}_LIBRARY ${SB_INSTALL_PREFIX}/lib/libsvm.lib)
+  elseif(UNIX)
+    set(_SB_${proj}_LIBRARY ${SB_INSTALL_PREFIX}/lib/liblibsvm${CMAKE_SHARED_LIBRARY_SUFFIX})
+  endif()
+  
+endif()
+endif()
diff --git a/SuperBuild/CMake/External_otb.cmake b/SuperBuild/CMake/External_otb.cmake
index 4ea43429fb6170df01944795fc65c2e3d086f08f..3e2475de6a95d31a5c80142718395eca98a6019e 100644
--- a/SuperBuild/CMake/External_otb.cmake
+++ b/SuperBuild/CMake/External_otb.cmake
@@ -47,6 +47,10 @@ if(OTB_USE_OPENCV)
   list(APPEND ${proj}_DEPENDENCIES OPENCV)
 endif()
 
+if(OTB_USE_LIBSVM)
+  list(APPEND ${proj}_DEPENDENCIES LIBSVM)
+endif()
+
 if(OTB_USE_MUPARSER)
   list(APPEND ${proj}_DEPENDENCIES MUPARSER)
 endif()
@@ -104,6 +108,9 @@ ADD_SUPERBUILD_CMAKE_VAR(LIBKML_MINIZIP_LIBRARY)
 
 ADD_SUPERBUILD_CMAKE_VAR(OpenCV_DIR)
 
+ADD_SUPERBUILD_CMAKE_VAR(LIBSVM_INCLUDE_DIR)
+ADD_SUPERBUILD_CMAKE_VAR(LIBSVM_LIBRARY)
+
 ADD_SUPERBUILD_CMAKE_VAR(CURL_INCLUDE_DIR)
 ADD_SUPERBUILD_CMAKE_VAR(CURL_LIBRARY)
 
diff --git a/SuperBuild/CMakeLists.txt b/SuperBuild/CMakeLists.txt
index ca56ef88b6b5e9f1863a49a6acf179c5040fdb58..b374902fae92a2c7a0e045653cc9af502ab0f7f3 100644
--- a/SuperBuild/CMakeLists.txt
+++ b/SuperBuild/CMakeLists.txt
@@ -83,6 +83,7 @@ SETUP_SYSTEM_LIBRARY(PROJECT MUPARSER DEFAULT OFF)
 SETUP_SYSTEM_LIBRARY(PROJECT MUPARSERX DEFAULT OFF)
 SETUP_SYSTEM_LIBRARY(PROJECT TINYXML DEFAULT OFF)
 SETUP_SYSTEM_LIBRARY(PROJECT OPENCV DEFAULT OFF)
+SETUP_SYSTEM_LIBRARY(PROJECT LIBSVM DEFAULT OFF)
 SETUP_SYSTEM_LIBRARY(PROJECT PCRE DEFAULT ON)
 SETUP_SYSTEM_LIBRARY(PROJECT SWIG DEFAULT ON)
 
diff --git a/SuperBuild/patches/LIBSVM/CMakeLists.txt b/SuperBuild/patches/LIBSVM/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7f233a22746fbc78965ee14cd343d202db461919
--- /dev/null
+++ b/SuperBuild/patches/LIBSVM/CMakeLists.txt
@@ -0,0 +1,41 @@
+cmake_minimum_required(VERSION 2.8.3)
+
+project(libsvm)
+
+# Set a default build type if none was specified
+if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
+  message(STATUS "Setting build type to 'Release' as none was specified.")
+  set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build." FORCE)
+  # Set the possible values of build type for cmake-gui
+  set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo")
+endif()
+
+set(BUILD_SHARED_LIBS ON)
+if(MSVC)
+set(BUILD_SHARED_LIBS OFF) #force off
+endif()
+
+set(LIBSVM_SRCS "svm.cpp" )
+set(LIBSVM_HEADERS "svm.h")
+
+add_library(libsvm ${LIBSVM_SRCS})
+
+option(BUILD_SAMPLES "Build executables" ON)
+
+add_executable(svm-train svm-train.c)
+target_link_libraries(svm-train libsvm)
+
+add_executable(svm-predict svm-predict.c)
+target_link_libraries(svm-predict libsvm)
+
+add_executable(svm-scale svm-scale.c)
+target_link_libraries(svm-scale libsvm)
+
+install(TARGETS libsvm
+  RUNTIME DESTINATION bin COMPONENT RuntimeLibraries
+  LIBRARY DESTINATION lib COMPONENT RuntimeLibraries
+  ARCHIVE DESTINATION lib COMPONENT Development)
+
+install(FILES ${LIBSVM_HEADERS}
+  DESTINATION include
+  COMPONENT Development)