Skip to content
Snippets Groups Projects
Select Git revision
  • afc40557ade2e0cf15f1834cfaa7e21c4412d6b3
  • master default protected
  • beta
  • dev
  • andrewssobral-patch-1
  • update
  • thomas-fork
  • 2.0
  • v3.2.0
  • v3.1.0
  • v3.0
  • bgslib_py27_ocv3_win64
  • bgslib_java_2.0.0
  • bgslib_console_2.0.0
  • bgslib_matlab_win64_2.0.0
  • bgslib_qtgui_2.0.0
  • 2.0.0
  • bgs_console_2.0.0
  • bgs_matlab_win64_2.0.0
  • bgs_qtgui_2.0.0
  • v1.9.2_x86_mfc_gui
  • v1.9.2_x64_java_gui
  • v1.9.2_x86_java_gui
23 results

Main.cpp

  • user avatar
    Andrews Sobral authored
    d27d1e26
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    Main.cpp 2.27 KiB
    /*
    This file is part of BGSLibrary.
    
    BGSLibrary is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    
    BGSLibrary is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with BGSLibrary.  If not, see <http://www.gnu.org/licenses/>.
    */
    #include "Config.h"
    #include "VideoAnalysis.h"
    #include <iostream>
    
    namespace bgslibrary
    {
      class Main
      {
      private:
        Main();
    
      public:
        static void start(int argc, const char **argv)
        {
          std::cout << "-----------------------------------------" << std::endl;
          std::cout << "Background Subtraction Library v2.0.0     " << 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;
          std::cout << "-----------------------------------------" << std::endl;
          std::cout << "Using OpenCV version " << CV_VERSION << std::endl;
    
          try
          {
            int key = KEY_ESC;
    
            do
            {
              VideoAnalysis* videoAnalysis = new VideoAnalysis;
    
              if (videoAnalysis->setup(argc, argv))
              {
                videoAnalysis->start();
    
                std::cout << "Processing finished, enter:" << std::endl;
                std::cout << "R - Repeat" << std::endl;
                std::cout << "Q - Quit" << std::endl;
    
                key = cv::waitKey();
              }
    
              cv::destroyAllWindows();
              delete videoAnalysis;
    
            } while (key == KEY_REPEAT);
          }
          catch (const std::exception& ex)
          {
            std::cout << "std::exception:" << ex.what() << std::endl;
            return;
          }
          catch (...)
          {
            std::cout << "Unknow error" << std::endl;
            return;
          }
    
    #ifdef WIN32
          //system("pause");
    #endif
        }
      };
    }
    
    int main(int argc, const char **argv)
    {
      bgslibrary::Main::start(argc, argv);
      return 0;
    }