Bitmap bitmap = BitmapFactory.decodeFile(filePath);
Frame frame = new Frame();// 构造Frame对象
frame.setBitmap(bitmap);
SceneDetector sceneDetector = new SceneDetector (context); // 构造Detector
JSONObject jsonScene = detector.detect(frame, null); // 进行场景检测
Scene sc = sceneDetector.convertResult(jsonScene); // 获取Java类形式的结果
int type = sc.getType(); //获取识别出来的场景类型Response
14(表示FIREWORK)
可以的,在faceCompare()方法中会默认启动引擎,如果引擎已经启动则不会再次启动,开发者可以放心使用。
release()方法会卸载引擎中已经加载的模型,请在应用不再使用场景检测时及时卸载模型,释放资源。
HUAWEI HiAI Engine 不支持同一应用使用多线程调用同一接口,这样会导致某一线程调用release方法后,卸载模型,导致正在运行的另一些线程出错。事实上,由于NPU硬件底层也是排队执行多任务,所以多线程执行同一功能达不到并行的效果。另外,引擎支持使用多线程调用不同接口,如开启两个线程同时使用美学评分和场景检测接口。