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

@@ -1,11 +1,17 @@
#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()
{
this->freeWebcam();
}

Mat Input::readFile(String filePath)
@@ -33,13 +39,7 @@ Mat Input::readFile(String filePath)

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

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

if(!cap.isOpened()) {
cout << "Fehler";
@@ -49,4 +49,9 @@ Mat Input::readWebcam()
cap.read(image);
return image;
}

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

+ 4
- 0
Input/input.h View File

@@ -2,7 +2,9 @@
#include <vector>
#include <string>
#include <algorithm>

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

using namespace std;
using namespace cv;
@@ -10,10 +12,12 @@ using namespace cv;
class Input
{
private:
VideoCapture cap;

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

Loading…
Cancel
Save