1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #ifndef MASK_H
- #define MASK_H
- #include <QImage>
- #include <QString>
- #include <opencv2/opencv.hpp>
- /*
- * Verwaltet die Maske einer Kamera
- */
- class Mask
- {
- private:
- QString path; // Der Pfad zum Maskenbild
- QImage *mask; // Das Maskenbild
- public:
- Mask( QString p );
- ~Mask();
- // Lädt das Masken Bild
- void loadMask();
- // Gibt das Maskenbild zurück
- QImage *getMask();
- // Gibt ein Bild zurück, indem der Weiße Teil transparent ist
- QPixmap getDrawableImage();
- // Prüft, ob ein Polygon im verbotenen Bereich liegt
- bool isPolygonInside( QPolygon p );
- // Erstellt eine neue Maske
- void createMask( QSize s );
- // Speichert die Maske
- void save() const;
- // Erzeugt für ein Bild das JPEGImage bild
- // img: Das Bild zu dem das JPEGImage generiert werden soll
- // frameName: Der Name des Bildes
- void saveToFrameMask( cv::Mat img, QString frameName ) const;
- // Löscht die Maske aus dem Speicher
- void unloadMask();
- };
- #endif // MASK_H
|