Skip to content
Snippets Groups Projects
  • Holger Friedrich's avatar
    5ed8f779
    remove opencv1 dependencies. · 5ed8f779
    Holger Friedrich authored
    bgslib now compiles on Linux systems without libcv-dev installed.
    Almost all calls and incudes have been ported to opencv2, some are
    still used via opencv2/legacy/compat.hpp (e.g. cvFillImage).
    Hope I got everything fine also for mingw since I removed two
    mingw related defines.
    I don't have a mingw install to check it against.
    5ed8f779
    History
    remove opencv1 dependencies.
    Holger Friedrich authored
    bgslib now compiles on Linux systems without libcv-dev installed.
    Almost all calls and incudes have been ported to opencv2, some are
    still used via opencv2/legacy/compat.hpp (e.g. cvFillImage).
    Hope I got everything fine also for mingw since I removed two
    mingw related defines.
    I don't have a mingw install to check it against.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
PreProcessor.h 1.28 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/>.
*/
#pragma once

#include <iostream>
#include <opencv2/opencv.hpp>


namespace bgslibrary
{
  class PreProcessor
  {
  private:
    bool firstTime;
    bool equalizeHist;
    bool gaussianBlur;
    cv::Mat img_gray;
    bool enableShow;

  public:
    PreProcessor();
    ~PreProcessor();

    void setEqualizeHist(bool value);
    void setGaussianBlur(bool value);
    cv::Mat getGrayScale();

    void process(const cv::Mat &img_input, cv::Mat &img_output);

    void rotate(const cv::Mat &img_input, cv::Mat &img_output, float angle);
    void applyCanny(const cv::Mat &img_input, cv::Mat &img_output);

  private:
    void saveConfig();
    void loadConfig();
  };
}