私はこのライブラリをユーザーのカメラからのライブフィードでの顔検出に使用しています。私が達成しようとしているのは、ユーザーの頭にアイテムオーバーレイを配置することです。デモに付属している例は、ユーザーの顔を追う愚かな眼鏡です。ユーザーの頭を追跡したい顔の代わりに、ビデオチャット中にさまざまなアイテムを配置できるGoogleハングアウトでGoogleがこれを行うので、それが可能であることを私は知っています。これに関するチュートリアルはありますか?CCVのライブラリを引き続き使用して、この機能のために拡張できますか?
2456 次
2 に答える
1
本当に基本的な解決策は、glasses.pngファイルを少し大きくして長方形の形に再作成することです...あなたが求めているものとはまったく違うかもしれませんが、それは私にとって簡単な解決策のようです.
于 2012-10-10T17:59:23.393 に答える
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);
これは、使用している画像をユーザーの頭の上に配置できるようにするためです。
于 2012-10-15T19:47:36.630 に答える