mirror of
https://github.com/azaion/autopilot.git
synced 2026-04-22 22:06:34 +00:00
37 lines
912 B
C++
37 lines
912 B
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
#include <QElapsedTimer>
|
|
#include <opencv2/core.hpp>
|
|
#include <opencv2/videoio.hpp>
|
|
#include "aienginertsplistener.h"
|
|
#include "aiengineinference.h"
|
|
#include "aienginegimbalclient.h"
|
|
|
|
class AiEngine : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit AiEngine(QString modelPath, QObject *parent = nullptr);
|
|
void start(void);
|
|
void stop(void);
|
|
|
|
public slots:
|
|
void frameReceivedSlot(cv::Mat frame);
|
|
void inferenceResultsReceivedSlot(AiEngineInferenceResult result);
|
|
|
|
signals:
|
|
void inferenceFrame(cv::Mat frame);
|
|
void inferenceFrame2(cv::Mat frame);
|
|
void inferenceFrame3(cv::Mat frame);
|
|
|
|
private:
|
|
QElapsedTimer mElapsedTimer;
|
|
uint32_t mFrameCounter = 0;
|
|
AiEngineRtspListener *mRtspListener;
|
|
AiEngineInference *mInference;
|
|
AiEngineInference *mInference2;
|
|
AiEngineInference *mInference3;
|
|
AiEngineGimbalClient *mGimbalClient;
|
|
};
|