Browse Source

Shift VideoCapture stuff to Input class instead of readWebcam method; Add freeWebcam method

pull/1/head
Tim Zeuner 1 year ago
parent
commit
63745d0446
2 changed files with 16 additions and 7 deletions
  1. 12
    7
      Input/input.cpp
  2. 4
    0
      Input/input.h

+ 12
- 7
Input/input.cpp View File

#include "input.h" #include "input.h"


Input::Input(/* args */)
Input::Input(/* args */) : cap(0)
{ {
const int VID_HEIGHT = 240;
const int VID_WIDTH = 320;

this->cap.set(CAP_PROP_FRAME_HEIGHT, VID_HEIGHT);
this->cap.set(CAP_PROP_FRAME_WIDTH, VID_WIDTH);
} }


Input::~Input() Input::~Input()
{ {
this->freeWebcam();
} }


Mat Input::readFile(String filePath) Mat Input::readFile(String filePath)


Mat Input::readWebcam() Mat Input::readWebcam()
{ {
const int VID_HEIGHT = 240;
const int VID_WIDTH = 320;
Mat image; Mat image;
VideoCapture cap(0);

cap.set(CAP_PROP_FRAME_HEIGHT, VID_HEIGHT);
cap.set(CAP_PROP_FRAME_WIDTH, VID_WIDTH);


if(!cap.isOpened()) { if(!cap.isOpened()) {
cout << "Fehler"; cout << "Fehler";
cap.read(image); cap.read(image);
return image; return image;
}

void Input::freeWebcam()
{
this->cap.release();
} }

+ 4
- 0
Input/input.h View File

#include <vector> #include <vector>
#include <string> #include <string>
#include <algorithm> #include <algorithm>

#include <opencv2/opencv.hpp> #include <opencv2/opencv.hpp>
#include <opencv2/core/utils/logger.hpp>


using namespace std; using namespace std;
using namespace cv; using namespace cv;
class Input class Input
{ {
private: private:
VideoCapture cap;


public: public:
Input(/* args */); Input(/* args */);
~Input(); ~Input();
Mat readFile(String filePath); Mat readFile(String filePath);
Mat readWebcam(); Mat readWebcam();
void freeWebcam();
}; };

Loading…
Cancel
Save