我正在使用this library对来自用户相机的实时Feed进行面部检测,我想要完成的是在用户头上放置一个项目覆盖。演示附带的示例是跟随用户脸的傻眼镜。我想知道谷歌可以在谷歌环聊上做到这一点,而不是我想跟踪用户的头像,你可以在视频聊天时放置各种项目。有没有这方面的教程,我可以继续使用CCV的库并为此功能进行扩展吗?
答案 0 :(得分:1)
似乎是一个非常基本的解决方案,只是重新创建一个更大的矩形形式的glasses.png文件...可能不是你想要的,但这似乎很简单我的解决方案。
答案 1 :(得分:0)
我想了一下,但我发现了问题。
在脚本中计算位置[Function“drawToCanvas”]我不得不弄乱宽度和高度计算。我的出局如下。
var video = App.video,
ctx = App.context,
backCtx = App.backContext,
m = 5,
w = 20,
i ,
comp;
ctx.drawImage(video, 0, 0, App.canvas.width, App.canvas.height);
backCtx.drawImage(video, 0, 0, App.backCanvas.width, App.backCanvas.height);
comp = ccv.detect_objects(App.ccv = App.ccv || {
canvas: App.backCanvas,
cascade: cascade,
interval: 4,
min_neighbors: 1
});
if (comp.length) {
App.comp = comp;
}
for (var i = 0; i < App.comp.length; i++){
//ctx.drawImage(App.glasses, App.comp[i].x, App.comp[i].y+(App.comp[i].height*.7), App.comp[i].width, (App.comp[i].height/4));
ctx.drawImage(App.glasses, (App.comp[i].x - w / .7) * m, (App.comp[i].y - w / .5) * m, (App.comp[i].width + w) * m, (App.comp[i].height + w) * m);
这样就可以将您正在使用的图像放在用户头上。