收藏
回答

使用createVKSession无法触发updateAnchors,检测不到人脸?

onReady: function (e) {

    this.session = wx.createVKSession({

      track: {

        face: { mode: 1 } // mode: 1 - 使用摄像头;2 - 手动传入图像

      },

    });

    this.startDetecting();

  },


  takePhoto() {

    const ctx = wx.createCameraContext()

    console.log('Taking photo...');

    ctx.takePhoto({

      quality: 'high',

      success: (res) => {

        console.log('Photo taken successfully.');

        this.setData({

          src: res.tempImagePath

        })

      },

      fail: (err) => {

        console.log('Failed to take photo: ', err);

      }

    })

  },

  

  error(e) {

    console.log('Camera error: ', e.detail);

  },

  


  startDetecting: function () {

    this.session.on('updateAnchors', anchors => {

      console.log('updateAnchors', anchors);

      anchors.forEach(anchor => {

        console.log('anchor.points', anchor.points)

        console.log('anchor.origin', anchor.origin)

        console.log('anchor.size', anchor.size)

        console.log('anchor.angle', anchor.angle)

      });

    });

    this.session.on('removeAnchors', () => {

      console.log('removeAnchors');

    });

    this.session.start(errno => {

      if (errno{

        console.log("VKSession start failed: ", errno);

      } else {

        console.log("VKSession start successfully");

      }

    });

  },


  stopDetecting: function () {

    this.session.stop();

  },



回答关注问题邀请回答
收藏

5 个回答

  • Roam
    Roam
    04-28

    在使用 VKSession的情况下,同时使用 小程序 camera 组件 的用法是违规的,没有触发updateAnchor 是合理的。

    在使用VK的情况下,摄像头是有 visionKit 控制,不能同时存在多个相机

    VK实时识别人脸的用法,可以参考小程序示例:

    小程序示例 - 接口 - VisionKit视觉能力 - 实时人脸检测

    https://github.com/wechat-miniprogram/miniprogram-demo/tree/master/miniprogram/packageAPI/pages/ar/face-detect

    04-28
    有用 1
    回复 1
    • Jinx
      Jinx
      04-28
      谢谢大佬
      04-28
      回复
  • 社区技术运营专员--许涛
    社区技术运营专员--许涛
    2023-05-12

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    2023-05-12
    有用
    回复 21
    • 宋旸
      宋旸
      2023-05-12
      华为mate50pro,微信版本8.0.35,HarmonyOS:3.0.0
      2023-05-12
      回复
    • 宋旸
      宋旸
      2023-05-12
      复现问题片段   https://developers.weixin.qq.com/s/kpQX69mk7DIm
      2023-05-12
      回复
    • 宋旸
      宋旸
      2023-05-15
      通过判断可以定位到是什么问题吗?跟手机和微信型号有关系吗
      2023-05-15
      回复
    • 社区技术运营专员--许涛
      社区技术运营专员--许涛
      2023-05-15回复宋旸
      正在处理中,有进展会同步
      2023-05-15
      回复
    • 宋旸
      宋旸
      2023-05-16
      好的,谢谢,期待ing
      2023-05-16
      回复
    查看更多(16)
  • ?
    03-19

    可以尝试下:

    1.注册session的requestAnimationFrame回调

    2.在该回调里调用getVKFrame

    03-19
    有用
    回复
  • 林太白
    林太白
    2023-10-16

    VKSession 不能像以前的wx.initFaceDetect()一样初始化,然后wx.faceDetect侦听人脸吗,怎么调用也不报错,然后也监听不到任何消息呢!

    2023-10-16
    有用
    回复 2
    • 秦佩
      秦佩
      2023-12-12
      请问解决了吗
      2023-12-12
      回复
    • 小明
      小明
      2023-12-14
      同问
      2023-12-14
      回复
  • 闲 逛
    闲 逛
    2023-05-12

    不报错吗

    2023-05-12
    有用
    回复 1
    • 宋旸
      宋旸
      2023-05-12
      没有报错。VKSession 和takephoto都正常,updateAnchors和remove都没反应
      2023-05-12
      1
      回复
登录 后发表内容