InspireFaceInspireFace1.2.4.d9
首页
快速开始
获取和编译
完整示例
  • English
  • 简体中文
GitHub
首页
快速开始
获取和编译
完整示例
  • English
  • 简体中文
GitHub
  • 介绍
  • 快速开始
  • 功能概览
  • 使用指南

    • 架构与生命周期
    • 模型资源包
    • 图像输入与坐标
    • 会话与跟踪
    • 人脸分析
    • 识别与特征库
    • 人脸关键点
    • 活体检测
    • 人脸抓拍
    • 补充 API 示例
  • 语言与平台

    • C API
    • C++
    • Python
    • Java
    • Windows
    • Android
    • Apple
    • iOS
    • macOS
    • HarmonyOS
  • 获取和编译

    • 概述与下载
    • 源码准备与通用选项
    • Linux
    • Windows
    • macOS
    • Android
    • iOS
    • HarmonyOS
    • NVIDIA TensorRT
    • Rockchip NPU
    • Python 打包
    • Java 打包
  • 硬件部署

    • x86 CPU
    • ARM
    • NVIDIA TensorRT
    • Rockchip NPU
    • Rockchip 上的 Python
  • InspireCV
  • 完整示例
  • API 功能索引
  • 性能测量
  • 图像处理性能
  • 常见问题

x86 CPU

Windows x64、Linux x86_64 和 Intel macOS 可使用 CPU SDK,搭配 Pikachu、Megatron 等通用模型包。图像准备、模型推理和特征比较都会占用每帧的处理时间,调优时可以分别测量。

PlatformSDK setupBuild from source
Windows x64C/C++ 与 PythonWindows 构建
Linux x86_64C API · C++ · PythonLinux 构建
Intel macOSmacOS 接入 · PythonmacOS 构建

选择与进程架构一致的库。Apple Silicon 上的原生 arm64 应用使用 ARM 路径;通过 Rosetta 运行的 x86_64 应用需要 x86_64 库。

图像处理与预处理

InspireCV 提供推理前的 CPU 图像处理能力。近期源码扩展了 Image 操作和 Task 预处理的 SSE/AVX2 加速范围,沿用现有 API 调用即可使用适用的优化路径。

Stage加速覆盖的操作常见用途
Geometry缩放、仿射采样、旋转和翻转缩放预览、调整相机方向、对齐人脸
Pixel operations通道转换、像素运算、阈值处理和混合调整通道顺序与像素值
Tensor output浮点转换、归一化和布局转换将模型输入写入应用提供的内存

具体路径取决于操作、像素类型、通道数和 CPU。输入格式、坐标变换和内存使用方式见 Image 与 Task 示例。

源码版本

以上新增路径适用于本次文档对应的独立 InspireCV 源码。当前 InspireFace 的依赖尚未包含这些改动。自行构建 InspireFace SDK 时,请确认所用的依赖版本;仅凭 SDK 版本号不能判断其中包含哪些图像处理路径。

AVX2 构建选项

单独构建 InspireCV、需要在多种 CPU 上分发时,建议保留 INSPIRECV_ENABLE_AVX2 的默认值 OFF。

SettingBehavior
OFF — default将 AVX2 内核与其他代码分开编译。运行时确认 CPU 和操作系统支持后,适用的操作仍会使用 AVX2。
ON为所有 C++ 源文件启用 AVX2;GCC 和 Clang 还会启用 FMA。所有目标机器都必须支持该构建使用的指令。

OFF 不代表完全禁用 AVX2。运行时选择加速路径的机制此前已存在,这次扩展了它覆盖的操作。其他 x86 路径仍有各自的指令要求,例如 Task 使用 SSE4.1;分发前应在计划支持的最低配置 CPU 和操作系统上测试。不要假定使用 ON 构建的库可以在 Rosetta 下运行。

InspireCV 构建说明介绍了如何设置这个选项。应用无法在运行时改变预编译 SDK 的编译选项。

测量实际应用

  • 复用会话和缓冲区。 每路有序视频流保留独立会话;尺寸不变时,复用 Task Pipeline 和输出内存。
  • 只启用需要的输出。 检测、识别和可选分析分别消耗时间,比较不同构建时保持处理内容一致。
  • 计入整帧流程。 相机格式转换、内存复制、排队和显示也会带来延时,不能只统计 SDK 调用。

图像处理性能提供在本机测量 Image 和 Task 公开接口的方法;SDK 性能测量覆盖检测、跟踪和特征提取。比较时保持输入、编译配置和预热方式一致,单个图像操作的耗时不能直接代表整个应用的帧率。

编辑此页
最近更新: 2026/10/2 20:07
贡献者: Jingyu
下一页
ARM