V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yinyansheng1987
V2EX  ›  Apple

iOS 开发-有大佬了解 AI 姿态识别吗?

  •  
  •   yinyansheng1987 · 2021-04-08 16:36:52 +08:00 · 2159 次点击
    这是一个创建于 1325 天前的主题,其中的信息可能已经有所发展或是发生改变。

    公司要做一个运动 app 比如跳绳计数,像下面的链接这种: https://www.bilibili.com/video/BV1wU4y1Y7Mm

    本人对 AI 方面毫无接触过,网上查了下资料,也是一脸懵。 目前了解到的框架有苹果自带的 Vision,但是只能在 ios14 的系统上支持体态识别。

    还有 TensorFlow 和 OpenPose 两个开源框架 看了下 demo 还是无法入手( demo 都是 swift 写的,本人主 java 兼 ios,目前只会 objc😭)

    请问大佬要做这个功能是否需要算法基础,有没有合适的框架、教程或者可以马上上手的 demo ?

    10 条回复    2021-04-09 06:16:22 +08:00
    billjobs
        1
    billjobs  
       2021-04-08 16:45:30 +08:00
    你们公司没有算法工程师的吗
    yinyansheng1987
        2
    yinyansheng1987  
    OP
       2021-04-08 16:50:52 +08:00
    @billjobs 没的,这个是否必须要会算法?
    icedwatermelon
        3
    icedwatermelon  
       2021-04-08 16:53:59 +08:00
    https://github.com/cmdbug/YOLOv5_NCNN
    这个 demo 下的 Simple-pose 可能和你的需求有相关
    billjobs
        4
    billjobs  
       2021-04-08 16:57:29 +08:00
    @yinyansheng1987 又一个全干工程师
    yinyansheng1987
        5
    yinyansheng1987  
    OP
       2021-04-08 17:34:29 +08:00
    @icedwatermelon 看不到图片😭,我还想知道的是体态识别 AI 的预训练模型,是否包含了上述的跳绳等各类动作的判断,是不是还要自己写算法来训练模型?如果有 10 种运动动作,每个动作都要通过定制化的算法来训练模型,我可真是无能为力了😭
    icedwatermelon
        6
    icedwatermelon  
       2021-04-08 17:44:06 +08:00
    @yinyansheng1987 #5 动作判断的我不太了解。但我猜动作识别和静物识别还是有区别,可能标志特征点的模型训练一套就够了,但模型输出的特征值要用起来需要根据不同的动作分别进行处理了
    Building
        7
    Building  
       2021-04-08 18:33:45 +08:00 via iPhone
    姿态检测太难了,可以换一种思路,比如可以先检测人脸,然后计算上下摆动幅度。
    louiswang002
        8
    louiswang002  
       2021-04-08 18:49:25 +08:00 via iPhone
    @Building 感觉你这个方案可行,如果画面是固定的,可以检测人脸的上下位置差异,再结合手机传感器应该能实现
    root99527
        9
    root99527  
       2021-04-08 19:25:41 +08:00 via iPhone
    模型只是识别关节点的坐标位置,具体的动作判断需要后处理完成。另外,如果你不只要做跳绳,还有一些比如瑜伽之类的,预训练的模型(尤其是移动端的模型)一般搞不定。移动端加速也是需要考虑的,如果你适配多个机型,还要考虑处理速度是否能跟上。
    domodomo
        10
    domodomo  
       2021-04-09 06:16:22 +08:00
    Apple 提供了相关的工具,ios12 以上就行

    1.用 ARKit 追踪捕捉人体,得到 3D 数据
    2.根据骨骼各关节点在 3D 环境中不同的位移数据来综合判断可能是什么动作,具体判断姿态用什么方法看你自己,数据都给你了。

    不过我只用到 ARKit 来捕捉人体做动画,没有做姿态判断这一步,但是我觉得应该是可行的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1607 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 16:59 · PVG 00:59 · LAX 08:59 · JFK 11:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.