1300 lines
43 KiB
C
1300 lines
43 KiB
C
|
|
//
|
||
|
|
// Created by DefTruth on 2021/8/8.
|
||
|
|
//
|
||
|
|
|
||
|
|
#ifndef LITE_AI_MODELS_H
|
||
|
|
#define LITE_AI_MODELS_H
|
||
|
|
|
||
|
|
#include "backend.h"
|
||
|
|
|
||
|
|
// ENABLE_ONNXRUNTIME
|
||
|
|
#ifdef ENABLE_ONNXRUNTIME
|
||
|
|
|
||
|
|
#include "lite/ort/core/ort_core.h"
|
||
|
|
#include "lite/ort/core/ort_utils.h"
|
||
|
|
#include "lite/ort/cv/age_googlenet.h"
|
||
|
|
#include "lite/ort/cv/glint_arcface.h"
|
||
|
|
#include "lite/ort/cv/colorizer.h"
|
||
|
|
#include "lite/ort/cv/deeplabv3_resnet101.h"
|
||
|
|
#include "lite/ort/cv/densenet.h"
|
||
|
|
#include "lite/ort/cv/efficientnet_lite4.h"
|
||
|
|
#include "lite/ort/cv/emotion_ferplus.h"
|
||
|
|
#include "lite/ort/cv/fast_style_transfer.h"
|
||
|
|
#include "lite/ort/cv/fcn_resnet101.h"
|
||
|
|
#include "lite/ort/cv/fsanet.h"
|
||
|
|
#include "lite/ort/cv/gender_googlenet.h"
|
||
|
|
#include "lite/ort/cv/ghostnet.h"
|
||
|
|
#include "lite/ort/cv/hardnet.h"
|
||
|
|
#include "lite/ort/cv/ibnnet.h"
|
||
|
|
#include "lite/ort/cv/mobilenetv2.h"
|
||
|
|
#include "lite/ort/cv/pfld.h"
|
||
|
|
#include "lite/ort/cv/resnet.h"
|
||
|
|
#include "lite/ort/cv/resnext.h"
|
||
|
|
#include "lite/ort/cv/shufflenetv2.h"
|
||
|
|
#include "lite/ort/cv/ssd.h"
|
||
|
|
#include "lite/ort/cv/ssd_mobilenetv1.h"
|
||
|
|
#include "lite/ort/cv/ssrnet.h"
|
||
|
|
#include "lite/ort/cv/subpixel_cnn.h"
|
||
|
|
#include "lite/ort/cv/tiny_yolov3.h"
|
||
|
|
#include "lite/ort/cv/ultraface.h"
|
||
|
|
#include "lite/ort/cv/vgg16_age.h"
|
||
|
|
#include "lite/ort/cv/vgg16_gender.h"
|
||
|
|
#include "lite/ort/cv/yolov3.h"
|
||
|
|
#include "lite/ort/cv/yolov4.h"
|
||
|
|
#include "lite/ort/cv/yolov5.h"
|
||
|
|
#include "lite/ort/cv/glint_cosface.h"
|
||
|
|
#include "lite/ort/cv/glint_partial_fc.h"
|
||
|
|
#include "lite/ort/cv/facenet.h"
|
||
|
|
#include "lite/ort/cv/focal_arcface.h"
|
||
|
|
#include "lite/ort/cv/focal_asia_arcface.h"
|
||
|
|
#include "lite/ort/cv/tencent_cifp_face.h"
|
||
|
|
#include "lite/ort/cv/tencent_curricular_face.h"
|
||
|
|
#include "lite/ort/cv/center_loss_face.h"
|
||
|
|
#include "lite/ort/cv/sphere_face.h"
|
||
|
|
#include "lite/ort/cv/pose_robust_face.h"
|
||
|
|
#include "lite/ort/cv/naive_pose_robust_face.h"
|
||
|
|
#include "lite/ort/cv/mobile_facenet.h"
|
||
|
|
#include "lite/ort/cv/cava_ghost_arcface.h"
|
||
|
|
#include "lite/ort/cv/cava_combined_face.h"
|
||
|
|
#include "lite/ort/cv/yolox.h"
|
||
|
|
#include "lite/ort/cv/mobilese_focal_face.h"
|
||
|
|
#include "lite/ort/cv/efficient_emotion7.h"
|
||
|
|
#include "lite/ort/cv/efficient_emotion8.h"
|
||
|
|
#include "lite/ort/cv/mobile_emotion7.h"
|
||
|
|
#include "lite/ort/cv/rexnet_emotion7.h"
|
||
|
|
#include "lite/ort/cv/pfld98.h"
|
||
|
|
#include "lite/ort/cv/pfld68.h"
|
||
|
|
#include "lite/ort/cv/mobilenetv2_68.h"
|
||
|
|
#include "lite/ort/cv/mobilenetv2_se_68.h"
|
||
|
|
#include "lite/ort/cv/face_landmarks_1000.h"
|
||
|
|
#include "lite/ort/cv/retinaface.h"
|
||
|
|
#include "lite/ort/cv/faceboxes.h"
|
||
|
|
#include "lite/ort/cv/tiny_yolov4_voc.h"
|
||
|
|
#include "lite/ort/cv/tiny_yolov4_coco.h"
|
||
|
|
#include "lite/ort/cv/yolor.h"
|
||
|
|
#include "lite/ort/cv/scaled_yolov4.h"
|
||
|
|
#include "lite/ort/cv/efficientdet.h"
|
||
|
|
#include "lite/ort/cv/efficientdet_d7.h"
|
||
|
|
#include "lite/ort/cv/efficientdet_d8.h"
|
||
|
|
#include "lite/ort/cv/yolop.h"
|
||
|
|
#include "lite/ort/cv/rvm.h"
|
||
|
|
#include "lite/ort/cv/nanodet.h"
|
||
|
|
#include "lite/ort/cv/nanodet_efficientnet_lite.h"
|
||
|
|
#include "lite/ort/cv/yolox_v0.1.1.h"
|
||
|
|
#include "lite/ort/cv/yolov5_v6.0.h"
|
||
|
|
#include "lite/ort/cv/mg_matting.h"
|
||
|
|
#include "lite/ort/cv/nanodet_plus.h"
|
||
|
|
#include "lite/ort/cv/scrfd.h"
|
||
|
|
#include "lite/ort/cv/yolo5face.h"
|
||
|
|
#include "lite/ort/cv/faceboxesv2.h"
|
||
|
|
#include "lite/ort/cv/pipnet98.h"
|
||
|
|
#include "lite/ort/cv/pipnet68.h"
|
||
|
|
#include "lite/ort/cv/pipnet29.h"
|
||
|
|
#include "lite/ort/cv/pipnet19.h"
|
||
|
|
|
||
|
|
#endif
|
||
|
|
|
||
|
|
// ENABLE_MNN
|
||
|
|
#ifdef ENABLE_MNN
|
||
|
|
|
||
|
|
#include "lite/mnn/core/mnn_core.h"
|
||
|
|
#include "lite/mnn/core/mnn_utils.h"
|
||
|
|
#include "lite/mnn/cv/mnn_nanodet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_nanodet_efficientnet_lite.h"
|
||
|
|
#include "lite/mnn/cv/mnn_rvm.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolox.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolop.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolov5.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolox_v0.1.1.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolor.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolov5_v6.0.h"
|
||
|
|
#include "lite/mnn/cv/mnn_glint_arcface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_glint_cosface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_glint_partial_fc.h"
|
||
|
|
#include "lite/mnn/cv/mnn_facenet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_focal_arcface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_focal_asia_arcface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_tencent_curricular_face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_tencent_cifp_face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_center_loss_face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_sphere_face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mobile_facenet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_cava_ghost_arcface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_cava_combined_face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mobilese_focal_face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_ultraface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_retinaface.h"
|
||
|
|
#include "lite/mnn/cv/mnn_faceboxes.h"
|
||
|
|
#include "lite/mnn/cv/mnn_face_landmarks_1000.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pfld.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pfld68.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pfld98.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mobilenetv2_68.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mobilenetv2_se_68.h"
|
||
|
|
#include "lite/mnn/cv/mnn_fsanet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_age_googlenet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_gender_googlenet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_emotion_ferplus.h"
|
||
|
|
#include "lite/mnn/cv/mnn_efficient_emotion7.h"
|
||
|
|
#include "lite/mnn/cv/mnn_efficient_emotion8.h"
|
||
|
|
#include "lite/mnn/cv/mnn_ssrnet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mobile_emotion7.h"
|
||
|
|
#include "lite/mnn/cv/mnn_rexnet_emotion7.h"
|
||
|
|
#include "lite/mnn/cv/mnn_efficientnet_lite4.h"
|
||
|
|
#include "lite/mnn/cv/mnn_shufflenetv2.h"
|
||
|
|
#include "lite/mnn/cv/mnn_densenet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_ghostnet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_hdrdnet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_ibnnet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mobilenetv2.h"
|
||
|
|
#include "lite/mnn/cv/mnn_resnet.h"
|
||
|
|
#include "lite/mnn/cv/mnn_resnext.h"
|
||
|
|
#include "lite/mnn/cv/mnn_deeplabv3_resnet101.h"
|
||
|
|
#include "lite/mnn/cv/mnn_fcn_resnet101.h"
|
||
|
|
#include "lite/mnn/cv/mnn_colorizer.h"
|
||
|
|
#include "lite/mnn/cv/mnn_fast_style_transfer.h"
|
||
|
|
#include "lite/mnn/cv/mnn_subpixel_cnn.h"
|
||
|
|
#include "lite/mnn/cv/mnn_mg_matting.h"
|
||
|
|
#include "lite/mnn/cv/mnn_nanodet_plus.h"
|
||
|
|
#include "lite/mnn/cv/mnn_scrfd.h"
|
||
|
|
#include "lite/mnn/cv/mnn_yolo5face.h"
|
||
|
|
#include "lite/mnn/cv/mnn_faceboxesv2.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pipnet98.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pipnet68.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pipnet29.h"
|
||
|
|
#include "lite/mnn/cv/mnn_pipnet19.h"
|
||
|
|
|
||
|
|
#endif
|
||
|
|
|
||
|
|
// ENABLE_NCNN
|
||
|
|
#ifdef ENABLE_NCNN
|
||
|
|
|
||
|
|
#include "lite/ncnn/core/ncnn_core.h"
|
||
|
|
#include "lite/ncnn/core/ncnn_utils.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_nanodet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_nanodet_efficientnet_lite.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_nanodet_depreciated.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_nanodet_efficientdet_lite_depreciated.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_rvm.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolox.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolop.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolov5.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolox_v0.1.1.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolor.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolor_ssss.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolov5_v6.0.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolov5_v6.0_p6.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_glint_arcface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_glint_cosface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_glint_partial_fc.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_facenet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_focal_arcface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_focal_asia_arcface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_tencent_curricular_face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_tencent_cifp_face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_center_loss_face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_sphere_face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_mobile_facenet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_cava_ghost_arcface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_cava_combined_face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_mobilese_focal_face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_ultraface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_retinaface.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_faceboxes.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_face_landmarks_1000.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pfld.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pfld68.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pfld98.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_mobilenetv2_68.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_mobilenetv2_se_68.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_age_googlenet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_gender_googlenet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_emotion_ferplus.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_efficient_emotion7.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_efficient_emotion8.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_mobile_emotion7.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_efficientnet_lite4.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_shufflenetv2.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_densenet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_ghostnet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_hdrdnet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_ibnnet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_mobilenetv2.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_resnet.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_resnext.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_deeplabv3_resnet101.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_fcn_resnet101.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_colorizer.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_fast_style_transfer.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_subpixel_cnn.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_nanodet_plus.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_scrfd.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_yolo5face.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_faceboxesv2.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pipnet98.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pipnet68.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pipnet29.h"
|
||
|
|
#include "lite/ncnn/cv/ncnn_pipnet19.h"
|
||
|
|
|
||
|
|
#endif
|
||
|
|
|
||
|
|
// ENABLE_TNN
|
||
|
|
#ifdef ENABLE_TNN
|
||
|
|
|
||
|
|
#include "lite/tnn/core/tnn_core.h"
|
||
|
|
#include "lite/tnn/core/tnn_utils.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolox.h"
|
||
|
|
#include "lite/tnn/cv/tnn_rvm.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolop.h"
|
||
|
|
#include "lite/tnn/cv/tnn_nanodet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_nanodet_efficientnet_lite.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolov5.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolox_v0.1.1.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolor.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolov5_v6.0.h"
|
||
|
|
#include "lite/tnn/cv/tnn_glint_arcface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_glint_cosface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_glint_partial_fc.h"
|
||
|
|
#include "lite/tnn/cv/tnn_facenet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_focal_arcface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_focal_asia_arcface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_tencent_curricular_face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_tencent_cifp_face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_center_loss_face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_sphere_face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mobile_facenet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_cava_ghost_arcface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_cava_combined_face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mobilese_focal_face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_ultraface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_retinaface.h"
|
||
|
|
#include "lite/tnn/cv/tnn_faceboxes.h"
|
||
|
|
#include "lite/tnn/cv/tnn_face_landmarks_1000.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pfld.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pfld68.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pfld98.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mobilenetv2_68.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mobilenetv2_se_68.h"
|
||
|
|
#include "lite/tnn/cv/tnn_fsanet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_age_googlenet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_gender_googlenet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_emotion_ferplus.h"
|
||
|
|
#include "lite/tnn/cv/tnn_efficient_emotion7.h"
|
||
|
|
#include "lite/tnn/cv/tnn_efficient_emotion8.h"
|
||
|
|
#include "lite/tnn/cv/tnn_ssrnet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mobile_emotion7.h"
|
||
|
|
#include "lite/tnn/cv/tnn_rexnet_emotion7.h"
|
||
|
|
#include "lite/tnn/cv/tnn_efficientnet_lite4.h"
|
||
|
|
#include "lite/tnn/cv/tnn_shufflenetv2.h"
|
||
|
|
#include "lite/tnn/cv/tnn_densenet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_ghostnet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_hdrdnet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_ibnnet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mobilenetv2.h"
|
||
|
|
#include "lite/tnn/cv/tnn_resnet.h"
|
||
|
|
#include "lite/tnn/cv/tnn_resnext.h"
|
||
|
|
#include "lite/tnn/cv/tnn_deeplabv3_resnet101.h"
|
||
|
|
#include "lite/tnn/cv/tnn_fcn_resnet101.h"
|
||
|
|
#include "lite/tnn/cv/tnn_colorizer.h"
|
||
|
|
#include "lite/tnn/cv/tnn_fast_style_transfer.h"
|
||
|
|
#include "lite/tnn/cv/tnn_subpixel_cnn.h"
|
||
|
|
#include "lite/tnn/cv/tnn_mg_matting.h"
|
||
|
|
#include "lite/tnn/cv/tnn_nanodet_plus.h"
|
||
|
|
#include "lite/tnn/cv/tnn_scrfd.h"
|
||
|
|
#include "lite/tnn/cv/tnn_yolo5face.h"
|
||
|
|
#include "lite/tnn/cv/tnn_faceboxesv2.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pipnet98.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pipnet68.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pipnet29.h"
|
||
|
|
#include "lite/tnn/cv/tnn_pipnet19.h"
|
||
|
|
|
||
|
|
#endif
|
||
|
|
|
||
|
|
// Default Engine ONNXRuntime
|
||
|
|
namespace lite
|
||
|
|
{
|
||
|
|
namespace cv
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef ortcv::FSANet _FSANet;
|
||
|
|
typedef ortcv::PFLD _PFLD;
|
||
|
|
typedef ortcv::UltraFace _UltraFace;
|
||
|
|
typedef ortcv::AgeGoogleNet _AgeGoogleNet;
|
||
|
|
typedef ortcv::GenderGoogleNet _GenderGoogleNet;
|
||
|
|
typedef ortcv::EmotionFerPlus _EmotionFerPlus;
|
||
|
|
typedef ortcv::VGG16Age _VGG16Age;
|
||
|
|
typedef ortcv::VGG16Gender _VGG16Gender;
|
||
|
|
typedef ortcv::SSRNet _SSRNet;
|
||
|
|
typedef ortcv::FastStyleTransfer _FastStyleTransfer;
|
||
|
|
typedef ortcv::GlintArcFace _GlintArcFace;
|
||
|
|
typedef ortcv::Colorizer _Colorizer;
|
||
|
|
typedef ortcv::SubPixelCNN _SubPixelCNN;
|
||
|
|
typedef ortcv::YoloV4 _YoloV4;
|
||
|
|
typedef ortcv::YoloV3 _YoloV3;
|
||
|
|
typedef ortcv::YoloV5 _YoloV5;
|
||
|
|
typedef ortcv::EfficientNetLite4 _EfficientNetLite4;
|
||
|
|
typedef ortcv::ShuffleNetV2 _ShuffleNetV2;
|
||
|
|
typedef ortcv::TinyYoloV3 _TinyYoloV3;
|
||
|
|
typedef ortcv::SSD _SSD;
|
||
|
|
typedef ortcv::SSDMobileNetV1 _SSDMobileNetV1;
|
||
|
|
typedef ortcv::DeepLabV3ResNet101 _DeepLabV3ResNet101;
|
||
|
|
typedef ortcv::DenseNet _DenseNet;
|
||
|
|
typedef ortcv::FCNResNet101 _FCNResNet101;
|
||
|
|
typedef ortcv::GhostNet _GhostNet;
|
||
|
|
typedef ortcv::HdrDNet _HdrDNet;
|
||
|
|
typedef ortcv::IBNNet _IBNNet;
|
||
|
|
typedef ortcv::MobileNetV2 _MobileNetV2;
|
||
|
|
typedef ortcv::ResNet _ResNet;
|
||
|
|
typedef ortcv::ResNeXt _ResNeXt;
|
||
|
|
typedef ortcv::GlintCosFace _GlintCosFace;
|
||
|
|
typedef ortcv::GlintPartialFC _GlintPartialFC;
|
||
|
|
typedef ortcv::FaceNet _FaceNet;
|
||
|
|
typedef ortcv::FocalArcFace _FocalArcFace;
|
||
|
|
typedef ortcv::FocalAsiaArcFace _FocalAsiaArcFace;
|
||
|
|
typedef ortcv::TencentCifpFace _TencentCifpFace;
|
||
|
|
typedef ortcv::TencentCurricularFace _TencentCurricularFace;
|
||
|
|
typedef ortcv::CenterLossFace _CenterLossFace;
|
||
|
|
typedef ortcv::SphereFace _SphereFace;
|
||
|
|
typedef ortcv::PoseRobustFace _PoseRobustFace;
|
||
|
|
typedef ortcv::NaivePoseRobustFace _NaivePoseRobustFace;
|
||
|
|
typedef ortcv::MobileFaceNet _MobileFaceNet;
|
||
|
|
typedef ortcv::CavaGhostArcFace _CavaGhostArcFace;
|
||
|
|
typedef ortcv::CavaCombinedFace _CavaCombinedFace;
|
||
|
|
typedef ortcv::YoloX _YoloX;
|
||
|
|
typedef ortcv::MobileSEFocalFace _MobileSEFocalFace;
|
||
|
|
typedef ortcv::EfficientEmotion7 _EfficientEmotion7;
|
||
|
|
typedef ortcv::EfficientEmotion8 _EfficientEmotion8;
|
||
|
|
typedef ortcv::MobileEmotion7 _MobileEmotion7;
|
||
|
|
typedef ortcv::ReXNetEmotion7 _ReXNetEmotion7;
|
||
|
|
typedef ortcv::PFLD98 _PFLD98;
|
||
|
|
typedef ortcv::PFLD68 _PFLD68;
|
||
|
|
typedef ortcv::MobileNetV268 _MobileNetV268;
|
||
|
|
typedef ortcv::MobileNetV2SE68 _MobileNetV2SE68;
|
||
|
|
typedef ortcv::FaceLandmark1000 _FaceLandmark1000;
|
||
|
|
typedef ortcv::RetinaFace _RetinaFace;
|
||
|
|
typedef ortcv::FaceBoxes _FaceBoxes;
|
||
|
|
typedef ortcv::TinyYoloV4VOC _TinyYoloV4VOC;
|
||
|
|
typedef ortcv::TinyYoloV4COCO _TinyYoloV4COCO;
|
||
|
|
typedef ortcv::YoloR _YoloR;
|
||
|
|
typedef ortcv::ScaledYoloV4 _ScaledYoloV4;
|
||
|
|
typedef ortcv::EfficientDet _EfficientDet;
|
||
|
|
typedef ortcv::EfficientDetD7 _EfficientDetD7;
|
||
|
|
typedef ortcv::EfficientDetD8 _EfficientDetD8;
|
||
|
|
typedef ortcv::YOLOP _YOLOP;
|
||
|
|
typedef ortcv::RobustVideoMatting _RobustVideoMatting;
|
||
|
|
typedef ortcv::NanoDet _NanoDet;
|
||
|
|
typedef ortcv::NanoDetEfficientNetLite _NanoDetEfficientNetLite;
|
||
|
|
typedef ortcv::YoloX_V_0_1_1 _YoloX_V_0_1_1;
|
||
|
|
typedef ortcv::YoloV5_V_6_0 _YoloV5_V_6_0;
|
||
|
|
typedef ortcv::MGMatting _MGMatting;
|
||
|
|
typedef ortcv::NanoDetPlus _NanoDetPlus;
|
||
|
|
typedef ortcv::SCRFD _SCRFD;
|
||
|
|
typedef ortcv::YOLO5Face _YOLO5Face;
|
||
|
|
typedef ortcv::FaceBoxesV2 _FaceBoxesV2;
|
||
|
|
typedef ortcv::PIPNet98 _PIPNet98;
|
||
|
|
typedef ortcv::PIPNet68 _PIPNet68;
|
||
|
|
typedef ortcv::PIPNet29 _PIPNet29;
|
||
|
|
typedef ortcv::PIPNet19 _PIPNet19;
|
||
|
|
#endif
|
||
|
|
|
||
|
|
// 1. classification
|
||
|
|
namespace classification
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _EfficientNetLite4 EfficientNetLite4;
|
||
|
|
typedef _ShuffleNetV2 ShuffleNetV2;
|
||
|
|
typedef _DenseNet DenseNet;
|
||
|
|
typedef _GhostNet GhostNet;
|
||
|
|
typedef _HdrDNet HdrDNet;
|
||
|
|
typedef _IBNNet IBNNet;
|
||
|
|
typedef _MobileNetV2 MobileNetV2;
|
||
|
|
typedef _ResNet ResNet;
|
||
|
|
typedef _ResNeXt ResNeXt;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
// 2. general object detection
|
||
|
|
namespace detection
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _YoloV3 YoloV3;
|
||
|
|
typedef _YoloV4 YoloV4;
|
||
|
|
typedef _YoloV5 YoloV5;
|
||
|
|
typedef _TinyYoloV3 TinyYoloV3;
|
||
|
|
typedef _SSD SSD;
|
||
|
|
typedef _SSDMobileNetV1 SSDMobileNetV1;
|
||
|
|
typedef _YoloX YoloX;
|
||
|
|
typedef _TinyYoloV4VOC TinyYoloV4VOC;
|
||
|
|
typedef _TinyYoloV4COCO TinyYoloV4COCO;
|
||
|
|
typedef _YoloR YoloR;
|
||
|
|
typedef _ScaledYoloV4 ScaledYoloV4;
|
||
|
|
typedef _EfficientDet EfficientDet;
|
||
|
|
typedef _EfficientDetD7 EfficientDetD7;
|
||
|
|
typedef _EfficientDetD8 EfficientDetD8;
|
||
|
|
typedef _YOLOP YOLOP;
|
||
|
|
typedef _NanoDet NanoDet;
|
||
|
|
typedef _NanoDetEfficientNetLite NanoDetEfficientNetLite;
|
||
|
|
typedef _YoloX_V_0_1_1 YoloX_V_0_1_1;
|
||
|
|
typedef _YoloV5_V_6_0 YoloV5_V_6_0;
|
||
|
|
typedef _NanoDetPlus NanoDetPlus;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
// 3. face detection & facial attributes detection
|
||
|
|
namespace face
|
||
|
|
{
|
||
|
|
namespace detect
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _UltraFace UltraFace; // face detection.
|
||
|
|
typedef _RetinaFace RetinaFace;
|
||
|
|
typedef _FaceBoxes FaceBoxes;
|
||
|
|
typedef _SCRFD SCRFD;
|
||
|
|
typedef _YOLO5Face YOLO5Face;
|
||
|
|
typedef _FaceBoxesV2 FaceBoxesV2;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace align
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _PFLD PFLD; // facial landmarks detection. 106 points
|
||
|
|
typedef _PFLD98 PFLD98; // 98 points
|
||
|
|
typedef _PFLD68 PFLD68; // 68 points
|
||
|
|
typedef _MobileNetV268 MobileNetV268; // 68 points
|
||
|
|
typedef _MobileNetV2SE68 MobileNetV2SE68; // 68 points
|
||
|
|
typedef _FaceLandmark1000 FaceLandmark1000; // 1000 points
|
||
|
|
typedef _PIPNet98 PIPNet98; // 98 points
|
||
|
|
typedef _PIPNet68 PIPNet68; // 68 points
|
||
|
|
typedef _PIPNet29 PIPNet29; // 29 points
|
||
|
|
typedef _PIPNet19 PIPNet19; // 19 points
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace pose
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _FSANet FSANet; // head pose estimation.
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace attr
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _AgeGoogleNet AgeGoogleNet; // age estimation
|
||
|
|
typedef _GenderGoogleNet GenderGoogleNet; // gender estimation
|
||
|
|
typedef _VGG16Age VGG16Age; // age estimation
|
||
|
|
typedef _VGG16Gender VGG16Gender; // gender estimation
|
||
|
|
typedef _EmotionFerPlus EmotionFerPlus; // emotion detection
|
||
|
|
typedef _SSRNet SSRNet; // age estimation
|
||
|
|
typedef _EfficientEmotion7 EfficientEmotion7;
|
||
|
|
typedef _EfficientEmotion8 EfficientEmotion8;
|
||
|
|
typedef _MobileEmotion7 MobileEmotion7;
|
||
|
|
typedef _ReXNetEmotion7 ReXNetEmotion7;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
// 4. face recognition
|
||
|
|
namespace faceid
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _GlintArcFace GlintArcFace; //
|
||
|
|
typedef _GlintCosFace GlintCosFace; //
|
||
|
|
typedef _GlintPartialFC GlintPartialFC;
|
||
|
|
typedef _FaceNet FaceNet;
|
||
|
|
typedef _FocalArcFace FocalArcFace;
|
||
|
|
typedef _FocalAsiaArcFace FocalAsiaArcFace;
|
||
|
|
typedef _TencentCurricularFace TencentCurricularFace;
|
||
|
|
typedef _TencentCifpFace TencentCifpFace;
|
||
|
|
typedef _CenterLossFace CenterLossFace;
|
||
|
|
typedef _SphereFace SphereFace;
|
||
|
|
typedef _PoseRobustFace PoseRobustFace;
|
||
|
|
typedef _NaivePoseRobustFace NaivePoseRobustFace;
|
||
|
|
typedef _MobileFaceNet MobileFaceNet;
|
||
|
|
typedef _CavaGhostArcFace CavaGhostArcFace;
|
||
|
|
typedef _CavaCombinedFace CavaCombinedFace;
|
||
|
|
typedef _MobileSEFocalFace MobileSEFocalFace;
|
||
|
|
#endif
|
||
|
|
|
||
|
|
}
|
||
|
|
// 5. segmentation
|
||
|
|
namespace segmentation
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _DeepLabV3ResNet101 DeepLabV3ResNet101;
|
||
|
|
typedef _FCNResNet101 FCNResNet101;
|
||
|
|
#endif
|
||
|
|
|
||
|
|
}
|
||
|
|
// 6. reid
|
||
|
|
namespace reid
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
// 7. ocr
|
||
|
|
namespace ocr
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
// 8. neural rendering
|
||
|
|
namespace render
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
// 9. style transfer
|
||
|
|
namespace style
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _FastStyleTransfer FastStyleTransfer;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
// 10. colorization
|
||
|
|
namespace colorization
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _Colorizer Colorizer;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
// 11. super resolution
|
||
|
|
namespace resolution
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _SubPixelCNN SubPixelCNN;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
// 12. image & face & human matting
|
||
|
|
namespace matting
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
typedef _RobustVideoMatting RobustVideoMatting;
|
||
|
|
typedef _MGMatting MGMatting;
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace asr
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace nlp
|
||
|
|
{
|
||
|
|
#ifdef BACKEND_ONNXRUNTIME
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
// models for mobile device
|
||
|
|
namespace lite
|
||
|
|
{
|
||
|
|
namespace mobile
|
||
|
|
{
|
||
|
|
// classification
|
||
|
|
namespace classification
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// object detection
|
||
|
|
namespace detection
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// face etc.
|
||
|
|
namespace face
|
||
|
|
{
|
||
|
|
namespace detect
|
||
|
|
{
|
||
|
|
}
|
||
|
|
namespace align
|
||
|
|
{
|
||
|
|
}
|
||
|
|
namespace pose
|
||
|
|
{
|
||
|
|
}
|
||
|
|
namespace attr
|
||
|
|
{
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// face recognition
|
||
|
|
namespace faceid
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// segmentation
|
||
|
|
namespace segmentation
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// reid
|
||
|
|
namespace reid
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// ocr
|
||
|
|
namespace ocr
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// matting
|
||
|
|
namespace matting
|
||
|
|
{
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
// ONNXRuntime version
|
||
|
|
namespace lite
|
||
|
|
{
|
||
|
|
#ifdef ENABLE_ONNXRUNTIME
|
||
|
|
namespace onnxruntime
|
||
|
|
{
|
||
|
|
namespace cv
|
||
|
|
{
|
||
|
|
typedef ortcv::FSANet _ONNXFSANet;
|
||
|
|
typedef ortcv::PFLD _ONNXPFLD;
|
||
|
|
typedef ortcv::UltraFace _ONNXUltraFace;
|
||
|
|
typedef ortcv::AgeGoogleNet _ONNXAgeGoogleNet;
|
||
|
|
typedef ortcv::GenderGoogleNet _ONNXGenderGoogleNet;
|
||
|
|
typedef ortcv::EmotionFerPlus _ONNXEmotionFerPlus;
|
||
|
|
typedef ortcv::VGG16Age _ONNXVGG16Age;
|
||
|
|
typedef ortcv::VGG16Gender _ONNXVGG16Gender;
|
||
|
|
typedef ortcv::SSRNet _ONNXSSRNet;
|
||
|
|
typedef ortcv::FastStyleTransfer _ONNXFastStyleTransfer;
|
||
|
|
typedef ortcv::GlintArcFace _ONNXGlintArcFace;
|
||
|
|
typedef ortcv::Colorizer _ONNXColorizer;
|
||
|
|
typedef ortcv::SubPixelCNN _ONNXSubPixelCNN;
|
||
|
|
typedef ortcv::YoloV4 _ONNXYoloV4;
|
||
|
|
typedef ortcv::YoloV3 _ONNXYoloV3;
|
||
|
|
typedef ortcv::YoloV5 _ONNXYoloV5;
|
||
|
|
typedef ortcv::EfficientNetLite4 _ONNXEfficientNetLite4;
|
||
|
|
typedef ortcv::ShuffleNetV2 _ONNXShuffleNetV2;
|
||
|
|
typedef ortcv::TinyYoloV3 _ONNXTinyYoloV3;
|
||
|
|
typedef ortcv::SSD _ONNXSSD;
|
||
|
|
typedef ortcv::SSDMobileNetV1 _ONNXSSDMobileNetV1;
|
||
|
|
typedef ortcv::DeepLabV3ResNet101 _ONNXDeepLabV3ResNet101;
|
||
|
|
typedef ortcv::DenseNet _ONNXDenseNet;
|
||
|
|
typedef ortcv::FCNResNet101 _ONNXFCNResNet101;
|
||
|
|
typedef ortcv::GhostNet _ONNXGhostNet;
|
||
|
|
typedef ortcv::HdrDNet _ONNXHdrDNet;
|
||
|
|
typedef ortcv::IBNNet _ONNXIBNNet;
|
||
|
|
typedef ortcv::MobileNetV2 _ONNXMobileNetV2;
|
||
|
|
typedef ortcv::ResNet _ONNXResNet;
|
||
|
|
typedef ortcv::ResNeXt _ONNXResNeXt;
|
||
|
|
typedef ortcv::GlintCosFace _ONNXGlintCosFace;
|
||
|
|
typedef ortcv::GlintPartialFC _ONNXGlintPartialFC;
|
||
|
|
typedef ortcv::FaceNet _ONNXFaceNet;
|
||
|
|
typedef ortcv::FocalArcFace _ONNXFocalArcFace;
|
||
|
|
typedef ortcv::FocalAsiaArcFace _ONNXFocalAsiaArcFace;
|
||
|
|
typedef ortcv::TencentCifpFace _ONNXTencentCifpFace;
|
||
|
|
typedef ortcv::TencentCurricularFace _ONNXTencentCurricularFace;
|
||
|
|
typedef ortcv::CenterLossFace _ONNXCenterLossFace;
|
||
|
|
typedef ortcv::SphereFace _ONNXSphereFace;
|
||
|
|
typedef ortcv::PoseRobustFace _ONNXPoseRobustFace;
|
||
|
|
typedef ortcv::NaivePoseRobustFace _ONNXNaivePoseRobustFace;
|
||
|
|
typedef ortcv::MobileFaceNet _ONNXMobileFaceNet;
|
||
|
|
typedef ortcv::CavaGhostArcFace _ONNXCavaGhostArcFace;
|
||
|
|
typedef ortcv::CavaCombinedFace _ONNXCavaCombinedFace;
|
||
|
|
typedef ortcv::YoloX _ONNXYoloX;
|
||
|
|
typedef ortcv::MobileSEFocalFace _ONNXMobileSEFocalFace;
|
||
|
|
typedef ortcv::EfficientEmotion7 _ONNXEfficientEmotion7;
|
||
|
|
typedef ortcv::EfficientEmotion8 _ONNXEfficientEmotion8;
|
||
|
|
typedef ortcv::MobileEmotion7 _ONNXMobileEmotion7;
|
||
|
|
typedef ortcv::ReXNetEmotion7 _ONNXReXNetEmotion7;
|
||
|
|
typedef ortcv::PFLD98 _ONNXPFLD98;
|
||
|
|
typedef ortcv::PFLD68 _ONNXPFLD68;
|
||
|
|
typedef ortcv::MobileNetV268 _ONNXMobileNetV268;
|
||
|
|
typedef ortcv::MobileNetV2SE68 _ONNXMobileNetV2SE68;
|
||
|
|
typedef ortcv::FaceLandmark1000 _ONNXFaceLandmark1000;
|
||
|
|
typedef ortcv::RetinaFace _ONNXRetinaFace;
|
||
|
|
typedef ortcv::FaceBoxes _ONNXFaceBoxes;
|
||
|
|
typedef ortcv::TinyYoloV4VOC _ONNXTinyYoloV4VOC;
|
||
|
|
typedef ortcv::TinyYoloV4COCO _ONNXTinyYoloV4COCO;
|
||
|
|
typedef ortcv::YoloR _ONNXYoloR;
|
||
|
|
typedef ortcv::ScaledYoloV4 _ONNXScaledYoloV4;
|
||
|
|
typedef ortcv::EfficientDet _ONNXEfficientDet;
|
||
|
|
typedef ortcv::EfficientDetD7 _ONNXEfficientDetD7;
|
||
|
|
typedef ortcv::EfficientDetD8 _ONNXEfficientDetD8;
|
||
|
|
typedef ortcv::YOLOP _ONNXYOLOP;
|
||
|
|
typedef ortcv::RobustVideoMatting _ONNXRobustVideoMatting;
|
||
|
|
typedef ortcv::NanoDet _ONNXNanoDet;
|
||
|
|
typedef ortcv::NanoDetEfficientNetLite _ONNXNanoDetEfficientNetLite;
|
||
|
|
typedef ortcv::YoloX_V_0_1_1 _ONNXYoloX_V_0_1_1;
|
||
|
|
typedef ortcv::YoloV5_V_6_0 _ONNXYoloV5_V_6_0;
|
||
|
|
typedef ortcv::MGMatting _ONNXMGMatting;
|
||
|
|
typedef ortcv::NanoDetPlus _ONNXNanoDetPlus;
|
||
|
|
typedef ortcv::SCRFD _ONNXSCRFD;
|
||
|
|
typedef ortcv::YOLO5Face _ONNXYOLO5Face;
|
||
|
|
typedef ortcv::FaceBoxesV2 _ONNXFaceBoxesV2;
|
||
|
|
typedef ortcv::PIPNet98 _ONNXPIPNet98;
|
||
|
|
typedef ortcv::PIPNet68 _ONNXPIPNet68;
|
||
|
|
typedef ortcv::PIPNet29 _ONNXPIPNet29;
|
||
|
|
typedef ortcv::PIPNet19 _ONNXPIPNet19;
|
||
|
|
|
||
|
|
// 1. classification
|
||
|
|
namespace classification
|
||
|
|
{
|
||
|
|
typedef _ONNXEfficientNetLite4 EfficientNetLite4;
|
||
|
|
typedef _ONNXShuffleNetV2 ShuffleNetV2;
|
||
|
|
typedef _ONNXDenseNet DenseNet;
|
||
|
|
typedef _ONNXGhostNet GhostNet;
|
||
|
|
typedef _ONNXHdrDNet HdrDNet;
|
||
|
|
typedef _ONNXIBNNet IBNNet;
|
||
|
|
typedef _ONNXMobileNetV2 MobileNetV2;
|
||
|
|
typedef _ONNXResNet ResNet;
|
||
|
|
typedef _ONNXResNeXt ResNeXt;
|
||
|
|
}
|
||
|
|
|
||
|
|
// 2. general object detection
|
||
|
|
namespace detection
|
||
|
|
{
|
||
|
|
typedef _ONNXYoloV3 YoloV3;
|
||
|
|
typedef _ONNXYoloV4 YoloV4;
|
||
|
|
typedef _ONNXYoloV5 YoloV5;
|
||
|
|
typedef _ONNXTinyYoloV3 TinyYoloV3;
|
||
|
|
typedef _ONNXSSD SSD;
|
||
|
|
typedef _ONNXSSDMobileNetV1 SSDMobileNetV1;
|
||
|
|
typedef _ONNXYoloX YoloX;
|
||
|
|
typedef _ONNXTinyYoloV4VOC TinyYoloV4VOC;
|
||
|
|
typedef _ONNXTinyYoloV4COCO TinyYoloV4COCO;
|
||
|
|
typedef _ONNXYoloR YoloR;
|
||
|
|
typedef _ONNXScaledYoloV4 ScaledYoloV4;
|
||
|
|
typedef _ONNXEfficientDet EfficientDet;
|
||
|
|
typedef _ONNXEfficientDetD7 EfficientDetD7;
|
||
|
|
typedef _ONNXEfficientDetD8 EfficientDetD8;
|
||
|
|
typedef _ONNXYOLOP YOLOP;
|
||
|
|
typedef _ONNXNanoDet NanoDet;
|
||
|
|
typedef _ONNXNanoDetEfficientNetLite NanoDetEfficientNetLite;
|
||
|
|
typedef _ONNXYoloX_V_0_1_1 YoloX_V_0_1_1;
|
||
|
|
typedef _ONNXYoloV5_V_6_0 YoloV5_V_6_0;
|
||
|
|
typedef _ONNXNanoDetPlus NanoDetPlus;
|
||
|
|
}
|
||
|
|
// 3. face detection & facial attributes detection
|
||
|
|
namespace face
|
||
|
|
{
|
||
|
|
namespace detect
|
||
|
|
{
|
||
|
|
typedef _ONNXUltraFace UltraFace; // face detection.
|
||
|
|
typedef _ONNXRetinaFace RetinaFace;
|
||
|
|
typedef _ONNXFaceBoxes FaceBoxes;
|
||
|
|
typedef _ONNXSCRFD SCRFD;
|
||
|
|
typedef _ONNXYOLO5Face YOLO5Face;
|
||
|
|
typedef _ONNXFaceBoxesV2 FaceBoxesV2;
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace align
|
||
|
|
{
|
||
|
|
typedef _ONNXPFLD PFLD; // facial landmarks detection. 106 points
|
||
|
|
typedef _ONNXPFLD98 PFLD98; // 98 points
|
||
|
|
typedef _ONNXPFLD68 PFLD68; // 68 points
|
||
|
|
typedef _ONNXMobileNetV268 MobileNetV268; // 68 points
|
||
|
|
typedef _ONNXMobileNetV2SE68 MobileNetV2SE68; // 68 points
|
||
|
|
typedef _ONNXFaceLandmark1000 FaceLandmark1000; // 1000 points
|
||
|
|
typedef _ONNXPIPNet98 PIPNet98; // 98 points
|
||
|
|
typedef _ONNXPIPNet68 PIPNet68; // 68 points
|
||
|
|
typedef _ONNXPIPNet29 PIPNet29; // 29 points
|
||
|
|
typedef _ONNXPIPNet19 PIPNet19; // 19 points
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace pose
|
||
|
|
{
|
||
|
|
typedef _ONNXFSANet FSANet; // head pose estimation.
|
||
|
|
}
|
||
|
|
|
||
|
|
namespace attr
|
||
|
|
{
|
||
|
|
typedef _ONNXAgeGoogleNet AgeGoogleNet; // age estimation
|
||
|
|
typedef _ONNXGenderGoogleNet GenderGoogleNet; // gender estimation
|
||
|
|
typedef _ONNXVGG16Age VGG16Age; // age estimation
|
||
|
|
typedef _ONNXVGG16Gender VGG16Gender; // gender estimation
|
||
|
|
typedef _ONNXEmotionFerPlus EmotionFerPlus; // emotion detection
|
||
|
|
typedef _ONNXSSRNet SSRNet; // age estimation
|
||
|
|
typedef _ONNXEfficientEmotion7 EfficientEmotion7;
|
||
|
|
typedef _ONNXEfficientEmotion8 EfficientEmotion8;
|
||
|
|
typedef _ONNXMobileEmotion7 MobileEmotion7;
|
||
|
|
typedef _ONNXReXNetEmotion7 ReXNetEmotion7;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// 4. face recognition
|
||
|
|
namespace faceid
|
||
|
|
{
|
||
|
|
typedef _ONNXGlintArcFace GlintArcFace; //
|
||
|
|
typedef _ONNXGlintCosFace GlintCosFace; //
|
||
|
|
typedef _ONNXGlintPartialFC GlintPartialFC;
|
||
|
|
typedef _ONNXFaceNet FaceNet;
|
||
|
|
typedef _ONNXFocalArcFace FocalArcFace;
|
||
|
|
typedef _ONNXFocalAsiaArcFace FocalAsiaArcFace;
|
||
|
|
typedef _ONNXTencentCifpFace TencentCifpFace;
|
||
|
|
typedef _ONNXTencentCurricularFace TencentCurricularFace;
|
||
|
|
typedef _ONNXCenterLossFace CenterLossFace;
|
||
|
|
typedef _ONNXSphereFace SphereFace;
|
||
|
|
typedef _ONNXPoseRobustFace PoseRobustFace;
|
||
|
|
typedef _ONNXNaivePoseRobustFace NaivePoseRobustFace;
|
||
|
|
typedef _ONNXMobileFaceNet MobileFaceNet;
|
||
|
|
typedef _ONNXCavaGhostArcFace CavaGhostArcFace;
|
||
|
|
typedef _ONNXCavaCombinedFace CavaCombinedFace;
|
||
|
|
typedef _ONNXMobileSEFocalFace MobileSEFocalFace;
|
||
|
|
|
||
|
|
}
|
||
|
|
// 5. segmentation
|
||
|
|
namespace segmentation
|
||
|
|
{
|
||
|
|
typedef _ONNXDeepLabV3ResNet101 DeepLabV3ResNet101;
|
||
|
|
typedef _ONNXFCNResNet101 FCNResNet101;
|
||
|
|
|
||
|
|
}
|
||
|
|
// 6. reid
|
||
|
|
namespace reid
|
||
|
|
{
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
// 7. ocr
|
||
|
|
namespace ocr
|
||
|
|
{
|
||
|
|
|
||
|
|
}
|
||
|
|
// 8. neural rendering
|
||
|
|
namespace render
|
||
|
|
{
|
||
|
|
|
||
|
|
}
|
||
|
|
// 9. style transfer
|
||
|
|
namespace style
|
||
|
|
{
|
||
|
|
typedef _ONNXFastStyleTransfer FastStyleTransfer;
|
||
|
|
}
|
||
|
|
|
||
|
|
// 10. colorization
|
||
|
|
namespace colorization
|
||
|
|
{
|
||
|
|
typedef _ONNXColorizer Colorizer;
|
||
|
|
}
|
||
|
|
// 11. super resolution
|
||
|
|
namespace resolution
|
||
|
|
{
|
||
|
|
typedef _ONNXSubPixelCNN SubPixelCNN;
|
||
|
|
}
|
||
|
|
// 12. image & face & human matting
|
||
|
|
namespace matting
|
||
|
|
{
|
||
|
|
typedef _ONNXRobustVideoMatting RobustVideoMatting;
|
||
|
|
typedef _ONNXMGMatting MGMatting;
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
// MNN version
|
||
|
|
namespace lite
|
||
|
|
{
|
||
|
|
#ifdef ENABLE_MNN
|
||
|
|
namespace mnn
|
||
|
|
{
|
||
|
|
namespace cv
|
||
|
|
{
|
||
|
|
// classification
|
||
|
|
namespace classification
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNEfficientNetLite4 EfficientNetLite4;
|
||
|
|
typedef mnncv::MNNShuffleNetV2 ShuffleNetV2;
|
||
|
|
typedef mnncv::MNNDenseNet DenseNet;
|
||
|
|
typedef mnncv::MNNGhostNet GhostNet;
|
||
|
|
typedef mnncv::MNNHdrDNet HdrDNet;
|
||
|
|
typedef mnncv::MNNIBNNet IBNNet;
|
||
|
|
typedef mnncv::MNNMobileNetV2 MobileNetV2;
|
||
|
|
typedef mnncv::MNNResNet ResNet;
|
||
|
|
typedef mnncv::MNNResNeXt ResNeXt;
|
||
|
|
}
|
||
|
|
// object detection
|
||
|
|
namespace detection
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNNanoDet NanoDet;
|
||
|
|
typedef mnncv::MNNNanoDetEfficientNetLite NanoDetEfficientNetLite;
|
||
|
|
typedef mnncv::MNNYoloX YoloX;
|
||
|
|
typedef mnncv::MNNYOLOP YOLOP;
|
||
|
|
typedef mnncv::MNNYoloV5 YoloV5;
|
||
|
|
typedef mnncv::MNNYoloX_V_0_1_1 YoloX_V_0_1_1;
|
||
|
|
typedef mnncv::MNNYoloR YoloR;
|
||
|
|
typedef mnncv::MNNYoloV5_V_6_0 YoloV5_V_6_0;
|
||
|
|
typedef mnncv::MNNNanoDetPlus NanoDetPlus;
|
||
|
|
}
|
||
|
|
// face etc.
|
||
|
|
namespace face
|
||
|
|
{
|
||
|
|
namespace detect
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNUltraFace UltraFace;
|
||
|
|
typedef mnncv::MNNRetinaFace RetinaFace;
|
||
|
|
typedef mnncv::MNNFaceBoxes FaceBoxes;
|
||
|
|
typedef mnncv::MNNSCRFD SCRFD;
|
||
|
|
typedef mnncv::MNNYOLO5Face YOLO5Face;
|
||
|
|
typedef mnncv::MNNFaceBoxesV2 FaceBoxesV2;
|
||
|
|
}
|
||
|
|
namespace align
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNFaceLandmark1000 FaceLandmark1000;
|
||
|
|
typedef mnncv::MNNPFLD PFLD;
|
||
|
|
typedef mnncv::MNNPFLD68 PFLD68;
|
||
|
|
typedef mnncv::MNNPFLD98 PFLD98;
|
||
|
|
typedef mnncv::MNNMobileNetV268 MobileNetV268;
|
||
|
|
typedef mnncv::MNNMobileNetV2SE68 MobileNetV2SE68;
|
||
|
|
typedef mnncv::MNNPIPNet98 PIPNet98;
|
||
|
|
typedef mnncv::MNNPIPNet68 PIPNet68;
|
||
|
|
typedef mnncv::MNNPIPNet29 PIPNet29;
|
||
|
|
typedef mnncv::MNNPIPNet19 PIPNet19;
|
||
|
|
}
|
||
|
|
namespace pose
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNFSANet FSANet;
|
||
|
|
}
|
||
|
|
namespace attr
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNAgeGoogleNet AgeGoogleNet;
|
||
|
|
typedef mnncv::MNNGenderGoogleNet GenderGoogleNet;
|
||
|
|
typedef mnncv::MNNEmotionFerPlus EmotionFerPlus;
|
||
|
|
typedef mnncv::MNNSSRNet SSRNet;
|
||
|
|
typedef mnncv::MNNEfficientEmotion7 EfficientEmotion7;
|
||
|
|
typedef mnncv::MNNEfficientEmotion8 EfficientEmotion8;
|
||
|
|
typedef mnncv::MNNMobileEmotion7 MobileEmotion7;
|
||
|
|
typedef mnncv::MNNReXNetEmotion7 ReXNetEmotion7;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// face recognition
|
||
|
|
namespace faceid
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNGlintArcFace GlintArcFace;
|
||
|
|
typedef mnncv::MNNGlintCosFace GlintCosFace;
|
||
|
|
typedef mnncv::MNNGlintPartialFC GlintPartialFC;
|
||
|
|
typedef mnncv::MNNFaceNet FaceNet;
|
||
|
|
typedef mnncv::MNNFocalArcFace FocalArcFace;
|
||
|
|
typedef mnncv::MNNFocalAsiaArcFace FocalAsiaArcFace;
|
||
|
|
typedef mnncv::MNNTencentCurricularFace TencentCurricularFace;
|
||
|
|
typedef mnncv::MNNTencentCifpFace TencentCifpFace;
|
||
|
|
typedef mnncv::MNNCenterLossFace CenterLossFace;
|
||
|
|
typedef mnncv::MNNSphereFace SphereFace;
|
||
|
|
typedef mnncv::MNNMobileFaceNet MobileFaceNet;
|
||
|
|
typedef mnncv::MNNCavaGhostArcFace CavaGhostArcFace;
|
||
|
|
typedef mnncv::MNNCavaCombinedFace CavaCombinedFace;
|
||
|
|
typedef mnncv::MNNMobileSEFocalFace MobileSEFocalFace;
|
||
|
|
}
|
||
|
|
// segmentation
|
||
|
|
namespace segmentation
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNDeepLabV3ResNet101 DeepLabV3ResNet101;
|
||
|
|
typedef mnncv::MNNFCNResNet101 FCNResNet101;
|
||
|
|
}
|
||
|
|
// reid
|
||
|
|
namespace reid
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// ocr
|
||
|
|
namespace ocr
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// matting
|
||
|
|
namespace matting
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNRobustVideoMatting RobustVideoMatting;
|
||
|
|
typedef mnncv::MNNMGMatting MGMatting;
|
||
|
|
}
|
||
|
|
|
||
|
|
// style transfer
|
||
|
|
namespace style
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNFastStyleTransfer FastStyleTransfer;
|
||
|
|
}
|
||
|
|
|
||
|
|
// colorization
|
||
|
|
namespace colorization
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNColorizer Colorizer;
|
||
|
|
}
|
||
|
|
// super resolution
|
||
|
|
namespace resolution
|
||
|
|
{
|
||
|
|
typedef mnncv::MNNSubPixelCNN SubPixelCNN;
|
||
|
|
}
|
||
|
|
|
||
|
|
} // namespace cv
|
||
|
|
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
// NCNN version
|
||
|
|
namespace lite
|
||
|
|
{
|
||
|
|
#ifdef ENABLE_NCNN
|
||
|
|
namespace ncnn
|
||
|
|
{
|
||
|
|
namespace cv
|
||
|
|
{
|
||
|
|
// classification
|
||
|
|
namespace classification
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNEfficientNetLite4 EfficientNetLite4;
|
||
|
|
typedef ncnncv::NCNNShuffleNetV2 ShuffleNetV2;
|
||
|
|
typedef ncnncv::NCNNDenseNet DenseNet;
|
||
|
|
typedef ncnncv::NCNNGhostNet GhostNet;
|
||
|
|
typedef ncnncv::NCNNHdrDNet HdrDNet;
|
||
|
|
typedef ncnncv::NCNNIBNNet IBNNet;
|
||
|
|
typedef ncnncv::NCNNMobileNetV2 MobileNetV2;
|
||
|
|
typedef ncnncv::NCNNResNet ResNet;
|
||
|
|
typedef ncnncv::NCNNResNeXt ResNeXt;
|
||
|
|
}
|
||
|
|
// object detection
|
||
|
|
namespace detection
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNNanoDet NanoDet;
|
||
|
|
typedef ncnncv::NCNNNanoDetEfficientNetLite NanoDetEfficientNetLite;
|
||
|
|
typedef ncnncv::NCNNNanoDetDepreciated NanoDetDepreciated;
|
||
|
|
typedef ncnncv::NCNNNanoDetEfficientNetLiteDepreciated NanoDetEfficientNetLiteDepreciated;
|
||
|
|
typedef ncnncv::NCNNYoloX YoloX;
|
||
|
|
typedef ncnncv::NCNNYOLOP YOLOP;
|
||
|
|
typedef ncnncv::NCNNYoloV5 YoloV5;
|
||
|
|
typedef ncnncv::NCNNYoloX_V_0_1_1 YoloX_V_0_1_1;
|
||
|
|
typedef ncnncv::NCNNYoloR YoloR;
|
||
|
|
typedef ncnncv::NCNNYoloRssss YoloRssss;
|
||
|
|
typedef ncnncv::NCNNYoloV5_V_6_0 YoloV5_V_6_0;
|
||
|
|
typedef ncnncv::NCNNYoloV5_V_6_0_P6 YoloV5_V_6_0_P6;
|
||
|
|
typedef ncnncv::NCNNNanoDetPlus NanoDetPlus;
|
||
|
|
}
|
||
|
|
// face etc.
|
||
|
|
namespace face
|
||
|
|
{
|
||
|
|
namespace detect
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNUltraFace UltraFace;
|
||
|
|
typedef ncnncv::NCNNRetinaFace RetinaFace;
|
||
|
|
typedef ncnncv::NCNNFaceBoxes FaceBoxes;
|
||
|
|
typedef ncnncv::NCNNSCRFD SCRFD;
|
||
|
|
typedef ncnncv::NCNNYOLO5Face YOLO5Face;
|
||
|
|
typedef ncnncv::NCNNFaceBoxesV2 FaceBoxesV2;
|
||
|
|
}
|
||
|
|
namespace align
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNFaceLandmark1000 FaceLandmark1000;
|
||
|
|
typedef ncnncv::NCNNPFLD PFLD;
|
||
|
|
typedef ncnncv::NCNNPFLD68 PFLD68;
|
||
|
|
typedef ncnncv::NCNNPFLD98 PFLD98;
|
||
|
|
typedef ncnncv::NCNNMobileNetV268 MobileNetV268;
|
||
|
|
typedef ncnncv::NCNNMobileNetV2SE68 MobileNetV2SE68;
|
||
|
|
typedef ncnncv::NCNNPIPNet98 PIPNet98;
|
||
|
|
typedef ncnncv::NCNNPIPNet68 PIPNet68;
|
||
|
|
typedef ncnncv::NCNNPIPNet29 PIPNet29;
|
||
|
|
typedef ncnncv::NCNNPIPNet19 PIPNet19;
|
||
|
|
}
|
||
|
|
namespace pose
|
||
|
|
{
|
||
|
|
}
|
||
|
|
namespace attr
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNAgeGoogleNet AgeGoogleNet;
|
||
|
|
typedef ncnncv::NCNNGenderGoogleNet GenderGoogleNet;
|
||
|
|
typedef ncnncv::NCNNEmotionFerPlus EmotionFerPlus;
|
||
|
|
typedef ncnncv::NCNNEfficientEmotion7 EfficientEmotion7;
|
||
|
|
typedef ncnncv::NCNNEfficientEmotion8 EfficientEmotion8;
|
||
|
|
typedef ncnncv::NCNNMobileEmotion7 MobileEmotion7;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// face recognition
|
||
|
|
namespace faceid
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNGlintArcFace GlintArcFace;
|
||
|
|
typedef ncnncv::NCNNGlintCosFace GlintCosFace;
|
||
|
|
typedef ncnncv::NCNNGlintPartialFC GlintPartialFC;
|
||
|
|
typedef ncnncv::NCNNFaceNet FaceNet;
|
||
|
|
typedef ncnncv::NCNNFocalArcFace FocalArcFace;
|
||
|
|
typedef ncnncv::NCNNFocalAsiaArcFace FocalAsiaArcFace;
|
||
|
|
typedef ncnncv::NCNNTencentCurricularFace TencentCurricularFace;
|
||
|
|
typedef ncnncv::NCNNTencentCifpFace TencentCifpFace;
|
||
|
|
typedef ncnncv::NCNNCenterLossFace CenterLossFace;
|
||
|
|
typedef ncnncv::NCNNSphereFace SphereFace;
|
||
|
|
typedef ncnncv::NCNNMobileFaceNet MobileFaceNet;
|
||
|
|
typedef ncnncv::NCNNCavaGhostArcFace CavaGhostArcFace;
|
||
|
|
typedef ncnncv::NCNNCavaCombinedFace CavaCombinedFace;
|
||
|
|
typedef ncnncv::NCNNMobileSEFocalFace MobileSEFocalFace;
|
||
|
|
}
|
||
|
|
// segmentation
|
||
|
|
namespace segmentation
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNDeepLabV3ResNet101 DeepLabV3ResNet101;
|
||
|
|
typedef ncnncv::NCNNFCNResNet101 FCNResNet101;
|
||
|
|
}
|
||
|
|
// reid
|
||
|
|
namespace reid
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// ocr
|
||
|
|
namespace ocr
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// matting
|
||
|
|
namespace matting
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNRobustVideoMatting RobustVideoMatting;
|
||
|
|
}
|
||
|
|
// style transfer
|
||
|
|
namespace style
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNFastStyleTransfer FastStyleTransfer;
|
||
|
|
}
|
||
|
|
|
||
|
|
// colorization
|
||
|
|
namespace colorization
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNColorizer Colorizer;
|
||
|
|
}
|
||
|
|
// super resolution
|
||
|
|
namespace resolution
|
||
|
|
{
|
||
|
|
typedef ncnncv::NCNNSubPixelCNN SubPixelCNN;
|
||
|
|
}
|
||
|
|
|
||
|
|
} // namespace cv
|
||
|
|
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
// TNN version
|
||
|
|
namespace lite
|
||
|
|
{
|
||
|
|
#ifdef ENABLE_TNN
|
||
|
|
namespace tnn
|
||
|
|
{
|
||
|
|
namespace cv
|
||
|
|
{
|
||
|
|
// classification
|
||
|
|
namespace classification
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNEfficientNetLite4 EfficientNetLite4;
|
||
|
|
typedef tnncv::TNNShuffleNetV2 ShuffleNetV2;
|
||
|
|
typedef tnncv::TNNDenseNet DenseNet;
|
||
|
|
typedef tnncv::TNNGhostNet GhostNet;
|
||
|
|
typedef tnncv::TNNHdrDNet HdrDNet;
|
||
|
|
typedef tnncv::TNNIBNNet IBNNet;
|
||
|
|
typedef tnncv::TNNMobileNetV2 MobileNetV2;
|
||
|
|
typedef tnncv::TNNResNet ResNet;
|
||
|
|
typedef tnncv::TNNResNeXt ResNeXt;
|
||
|
|
}
|
||
|
|
// object detection
|
||
|
|
namespace detection
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNYoloX YoloX;
|
||
|
|
typedef tnncv::TNNYOLOP YOLOP;
|
||
|
|
typedef tnncv::TNNNanoDet NanoDet;
|
||
|
|
typedef tnncv::TNNNanoDetEfficientNetLite NanoDetEfficientNetLite;
|
||
|
|
typedef tnncv::TNNYoloV5 YoloV5;
|
||
|
|
typedef tnncv::TNNYoloX_V_0_1_1 YoloX_V_0_1_1;
|
||
|
|
typedef tnncv::TNNYoloR YoloR;
|
||
|
|
typedef tnncv::TNNYoloV5_V_6_0 YoloV5_V_6_0;
|
||
|
|
typedef tnncv::TNNNanoDetPlus NanoDetPlus;
|
||
|
|
}
|
||
|
|
// face etc.
|
||
|
|
namespace face
|
||
|
|
{
|
||
|
|
namespace detect
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNUltraFace UltraFace;
|
||
|
|
typedef tnncv::TNNRetinaFace RetinaFace;
|
||
|
|
typedef tnncv::TNNFaceBoxes FaceBoxes;
|
||
|
|
typedef tnncv::TNNSCRFD SCRFD;
|
||
|
|
typedef tnncv::TNNYOLO5Face YOLO5Face;
|
||
|
|
typedef tnncv::TNNFaceBoxesV2 FaceBoxesV2;
|
||
|
|
}
|
||
|
|
namespace align
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNFaceLandmark1000 FaceLandmark1000;
|
||
|
|
typedef tnncv::TNNPFLD PFLD;
|
||
|
|
typedef tnncv::TNNPFLD68 PFLD68;
|
||
|
|
typedef tnncv::TNNPFLD98 PFLD98;
|
||
|
|
typedef tnncv::TNNMobileNetV268 MobileNetV268;
|
||
|
|
typedef tnncv::TNNMobileNetV2SE68 MobileNetV2SE68;
|
||
|
|
typedef tnncv::TNNPIPNet98 PIPNet98;
|
||
|
|
typedef tnncv::TNNPIPNet68 PIPNet68;
|
||
|
|
typedef tnncv::TNNPIPNet29 PIPNet29;
|
||
|
|
typedef tnncv::TNNPIPNet19 PIPNet19;
|
||
|
|
}
|
||
|
|
namespace pose
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNFSANet FSANet;
|
||
|
|
}
|
||
|
|
namespace attr
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNAgeGoogleNet AgeGoogleNet;
|
||
|
|
typedef tnncv::TNNGenderGoogleNet GenderGoogleNet;
|
||
|
|
typedef tnncv::TNNEmotionFerPlus EmotionFerPlus;
|
||
|
|
typedef tnncv::TNNSSRNet SSRNet;
|
||
|
|
typedef tnncv::TNNEfficientEmotion7 EfficientEmotion7;
|
||
|
|
typedef tnncv::TNNEfficientEmotion8 EfficientEmotion8;
|
||
|
|
typedef tnncv::TNNMobileEmotion7 MobileEmotion7;
|
||
|
|
typedef tnncv::TNNReXNetEmotion7 ReXNetEmotion7;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// face recognition
|
||
|
|
namespace faceid
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNGlintArcFace GlintArcFace;
|
||
|
|
typedef tnncv::TNNGlintCosFace GlintCosFace;
|
||
|
|
typedef tnncv::TNNGlintPartialFC GlintPartialFC;
|
||
|
|
typedef tnncv::TNNFaceNet FaceNet;
|
||
|
|
typedef tnncv::TNNFocalArcFace FocalArcFace;
|
||
|
|
typedef tnncv::TNNFocalAsiaArcFace FocalAsiaArcFace;
|
||
|
|
typedef tnncv::TNNTencentCurricularFace TencentCurricularFace;
|
||
|
|
typedef tnncv::TNNTencentCifpFace TencentCifpFace;
|
||
|
|
typedef tnncv::TNNCenterLossFace CenterLossFace;
|
||
|
|
typedef tnncv::TNNSphereFace SphereFace;
|
||
|
|
typedef tnncv::TNNMobileFaceNet MobileFaceNet;
|
||
|
|
typedef tnncv::TNNCavaGhostArcFace CavaGhostArcFace;
|
||
|
|
typedef tnncv::TNNCavaCombinedFace CavaCombinedFace;
|
||
|
|
typedef tnncv::TNNMobileSEFocalFace MobileSEFocalFace;
|
||
|
|
}
|
||
|
|
// segmentation
|
||
|
|
namespace segmentation
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNDeepLabV3ResNet101 DeepLabV3ResNet101;
|
||
|
|
typedef tnncv::TNNFCNResNet101 FCNResNet101;
|
||
|
|
}
|
||
|
|
// reid
|
||
|
|
namespace reid
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// ocr
|
||
|
|
namespace ocr
|
||
|
|
{
|
||
|
|
}
|
||
|
|
// matting
|
||
|
|
namespace matting
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNRobustVideoMatting RobustVideoMatting;
|
||
|
|
typedef tnncv::TNNMGMatting MGMatting;
|
||
|
|
}
|
||
|
|
// style transfer
|
||
|
|
namespace style
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNFastStyleTransfer FastStyleTransfer;
|
||
|
|
}
|
||
|
|
|
||
|
|
// colorization
|
||
|
|
namespace colorization
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNColorizer Colorizer;
|
||
|
|
}
|
||
|
|
// super resolution
|
||
|
|
namespace resolution
|
||
|
|
{
|
||
|
|
typedef tnncv::TNNSubPixelCNN SubPixelCNN;
|
||
|
|
}
|
||
|
|
|
||
|
|
} // namespace cv
|
||
|
|
}
|
||
|
|
#endif
|
||
|
|
}
|
||
|
|
|
||
|
|
#endif //LITE_AI_MODELS_H
|