MeiCam SDK For iOS  3.10.0
NvsAIParser.h
Go to the documentation of this file.
1 //================================================================================
2 //
3 // (c) Copyright China Digital Video (Beijing) Limited, 2016. All rights reserved.
4 //
5 // This code and information is provided "as is" without warranty of any kind,
6 // either expressed or implied, including but not limited to the implied
7 // warranties of merchantability and/or fitness for a particular purpose.
8 //
9 //--------------------------------------------------------------------------------
10 // Birth Date: Feb 18. 2022
11 // Author: Meishe video team
12 //================================================================================
13 #pragma once
14 #import "NvsObject.h"
15 
16 
17 @protocol AIParserDelegate <NSObject>
18 @optional
19 - (void)onDetectStarted:(NSString*)mediaPath taskId:(int64_t)taskId;
20 - (void)onDetectFinished:(NSString*)mediaPath scdPath:(NSString*)scdPath;
21 - (void)onDetectError:(int)errorType;
22 - (void)onDetectProgress:(NSString*)mediaPath progress:(float)progress;
23 
24 @end
25 
26 typedef enum {
40 
41 NVS_EXPORT @interface NvsCarFrameInfo : NSObject
42 
43 @property(nonatomic, strong) NSString *placel1;
44 @property(nonatomic, strong) NSString *placel2;
45 @property(nonatomic, strong) NSString *activity;
46 @property(nonatomic, strong) NSString *skytype;
47 @property(nonatomic, strong) NSString *skycolor;
48 @property(nonatomic, strong) NSString *moon;
49 @property(nonatomic, strong) NSString *rainbow;
50 @property(nonatomic, strong) NSString *airplanecloud;
51 @property(nonatomic, strong) NSString *weather;
52 @property(nonatomic, strong) NSString *time;
53 @property(nonatomic, strong) NSString *sky;
54 @property(nonatomic, strong) NSString *firecloud;
55 
56 @end
57 
58 NVS_EXPORT @interface NvsDetectData : NSObject
59 
60 @property(nonatomic, strong) NSString *mediaPath;
61 @property(nonatomic, assign) int frameSpace;
62 @property(nonatomic, assign) NvsSize detectSize;
63 @property(nonatomic, assign) int year;
64 @property(nonatomic, assign) int month;
65 @property(nonatomic, assign) int day;
66 @property(nonatomic, assign) int hour;
67 @property(nonatomic, assign) int minute;
68 @property(nonatomic, assign) int second;
69 
70 @end
71 
72 NVS_EXPORT @interface NvsAIParser : NSObject
73 
74 + (instancetype)sharedInstance;
75 + (instancetype)sharedInstanceWithFlags:(int)flags;
76 @property (nonatomic, weak) id<AIParserDelegate> delegate;
77 
78 + (BOOL)initModel:(NSString *)modelFilePath type:(int)type;
79 
80 + (void)setModelStatus:(int)type status:(BOOL)status;
81 
82 + (void)close;
83 
84 - (BOOL)setMaxThreadCount:(int)threadCount;
85 
86 - (BOOL)detectMediaFiles:(NSArray <NvsDetectData*>*)dataList;
87 
88 - (void)cancelTask:(int64_t)taskId;
89 
90 - (void)cancelAllTasks;
91 
92 - (void)suspend;
93 
94 - (void)resume;
95 
96 + (NvsCarFrameInfo*)read:(NSString *)infodata;
97 
98 + (void)installDescData:(NSString *)descpath;
99 
100 @end
+[NvsAIParser close]
void close()
NvsAIParserFlag_ModelPlaceClassNew
@ NvsAIParserFlag_ModelPlaceClassNew
Definition: NvsAIParser.h:37
-[NvsAIParser cancelAllTasks]
void cancelAllTasks()
AIParserDelegate-p
Definition: NvsAIParser.h:17
NvsCarFrameInfo::skytype
NSString * skytype
Definition: NvsAIParser.h:46
NvsCarFrameInfo::sky
NSString * sky
Definition: NvsAIParser.h:53
NvsAIParserFlag_ModelPlace
@ NvsAIParserFlag_ModelPlace
Definition: NvsAIParser.h:28
NvsCarFrameInfo
Definition: NvsAIParser.h:42
NvsAIParserFlag_ModelFaceAttr
@ NvsAIParserFlag_ModelFaceAttr
Definition: NvsAIParser.h:34
NvsCarFrameInfo::placel1
NSString * placel1
Definition: NvsAIParser.h:43
NvsCarFrameInfo::firecloud
NSString * firecloud
Definition: NvsAIParser.h:54
NvsAIParserFlag_OnlyDetectKeyFrameFrameSpace
@ NvsAIParserFlag_OnlyDetectKeyFrameFrameSpace
Definition: NvsAIParser.h:38
NvsCarFrameInfo::airplanecloud
NSString * airplanecloud
Definition: NvsAIParser.h:50
NvsCarFrameInfo::placel2
NSString * placel2
Definition: NvsAIParser.h:44
NvsAIParser::delegate
id< AIParserDelegate > delegate
Definition: NvsAIParser.h:76
NvsAIParserFlag_ModelActivity
@ NvsAIParserFlag_ModelActivity
Definition: NvsAIParser.h:32
NvsAIParserFlag_None
@ NvsAIParserFlag_None
Definition: NvsAIParser.h:27
NvsCarFrameInfo::moon
NSString * moon
Definition: NvsAIParser.h:48
NvsObject.h
NvsCarFrameInfo::weather
NSString * weather
Definition: NvsAIParser.h:51
NvsCarFrameInfo::time
NSString * time
Definition: NvsAIParser.h:52
NvsCarFrameInfo::activity
NSString * activity
Definition: NvsAIParser.h:45
NvsAIParserFlag_ModelPhoto
@ NvsAIParserFlag_ModelPhoto
Definition: NvsAIParser.h:35
NvsDetectData
detect data class.
Definition: NvsAIParser.h:59
NVS_EXPORT
#define NVS_EXPORT
Definition: NvsCommonDef.h:20
-[NvsAIParser suspend]
void suspend()
NvsAIParserFlag_ModelSkySeg
@ NvsAIParserFlag_ModelSkySeg
Definition: NvsAIParser.h:29
NvsCarFrameInfo::rainbow
NSString * rainbow
Definition: NvsAIParser.h:49
NvsAIParserFlag
NvsAIParserFlag
Definition: NvsAIParser.h:26
NvsAIParserFlag_ModelFace
@ NvsAIParserFlag_ModelFace
Definition: NvsAIParser.h:31
NvsCarFrameInfo::skycolor
NSString * skycolor
Definition: NvsAIParser.h:47
NvsAIParserFlag_ModelSkyClass
@ NvsAIParserFlag_ModelSkyClass
Definition: NvsAIParser.h:30
NvsSize
Size.
Definition: NvsCommonDef.h:281
NvsAIParserFlag_ModelObjDet
@ NvsAIParserFlag_ModelObjDet
Definition: NvsAIParser.h:33
+[NvsAIParser sharedInstance]
instancetype sharedInstance()
NvsAIParserFlag_ModelImageClass
@ NvsAIParserFlag_ModelImageClass
Definition: NvsAIParser.h:36
-[NvsAIParser resume]
void resume()
NvsAIParser
Definition: NvsAIParser.h:73