FPGA云服务器

    CNN图像分类API接口

    CNN图像分类API接口

    设备管理接口

    查询FPGA设备通道数量

    定义:int get_fpga_tunnel_num()
    功能:获取FPGA设备通道数量
    参数:无
    返回:当前主机FPGA设备上独立通道数量

    初始化FPGA设备句柄

    定义:init_fpga_handle(FpgaHandle& fh, const FpgaHandle::Mode mode = FpgaHandle::FPGA_MODE, const int tunnel = 0)
    功能:初始化FPGA设备句柄
    参数:

    参数 说明
    fh FPGA设备句柄
    mode 计算模式,取值范围FPGA_MODE或者CPU_MODE,默认FPGA模式
    tunnel 使用设备通道,机器上FPGA设备有两个可以并行的独立计算通道,默认使用0号通道

    返回:成功返回0,失败返回-1

    释放FPGA设备句柄

    定义:int free_fpga_handle(FpgaHandle& fh)
    功能:释放FPGA设备句柄
    参数:

    参数 说明
    fh FPGA设备句柄

    返回:成功返回0,失败返回-1

    图像分类相关接口

    加载训练好的CNN模型

    定义:int cnn_fpga_load(FpgaHandle& fh, const std::string& cnn_proto, const std::string& cnn_model, const std::string& cnn_means, const std::string& cnn_labels)
    功能:加载训练好的CNN模型
    参数:

    参数 说明
    fh FPGA设备句柄
    cnn_proto CNN模型定义prototxt文件路径
    cnn_model CNN模型caffemodel权值文件路径
    cnn_means 图像均值文件路径
    cnn_labels 图像标签文件路径

    返回:成功返回0,失败返回-1

    使用CNN模型分类图像

    定义:int cnn_fpga_classify(FpgaHandle& fh, const cv::Mat& image, const int topk, std::vector& scores, std::vector<std::string>& labels)
    功能:使用CNN模型分类图像
    参数:

    参数 说明
    fh FPGA设备句柄
    image 输入图像
    topk 概率最大的k个结果
    scores 分类概率
    labels 分类标签

    返回:成功返回0,失败返回-1

    释放CNN模型使用资源

    定义:int cnn_fpga_free(FpgaHandle& fh)
    功能:释放CNN模型使用资源
    参数:

    参数 说明
    fh FPGA设备句柄

    返回:成功返回0,失败返回-1

    上一篇
    概述
    下一篇
    CNN图像分类DEMO说明