1 #ifndef HAAS_ML_CLOUD_H
2 #define HAAS_ML_CLOUD_H
3 #include "base/include/IHaasML.h"
4 #include <string>
5 #include "ucloud_ai_common.h"
6 #include "ucloud_ai_objectdet.h"
7 #include "ucloud_ai_facebody.h"
8 #include "ucloud_ai_ocr.h"
9 
10 class HaasMLCloud : public IHaasML
11 {
12 public:
13 	HaasMLCloud();
14 	virtual ~HaasMLCloud();
15 
16 	virtual int Config(char *key, char *secret, char *endpoint,
17             char *bucket, char *url);
18 	virtual int SetInputData(const char* dataPath);
19 	virtual int LoadNet(const char* modePath);
20 	virtual int Predict();
21 	virtual int GetPredictResponses(char* outResult, int len);
22 	virtual int UnLoadNet();
23 private:
24 
25     int PredictObjectDet();
26     int PredictFacebodyComparing();
27     int PredictAnimeStyle();
28     int PredictRecognizeExpression();
29     int PredictRecognizeCharacter();
30     static int ObjectDetectCallback(ucloud_ai_result_t *result);
31     static int AnimeStyleCallback(ucloud_ai_result_t *result);
32     static int RecognizeExpressionCallback(ucloud_ai_result_t *result);
33     static int FacebodyComparingCallback(ucloud_ai_result_t *result);
34     static int RecognizeCharacterCallback(ucloud_ai_result_t *result);
35     char * mDataPath;
36     char * mAiMode;
37     std::string mFacePath;
38 };
39 #endif
40