2

現在、 Media Foundation Transformからサンプルを変更しようとしています。私は次のことを達成する傾向があります

  • C++ コードで顔検出を実行します。
  • 顔検出座標を C# コードに返します。
  • C# で、検出された顔の四角形を画面に描画します。

ステップ 1 を完了しました。ただし、ステップ 2 で吸い込まれています。次のような同様の問題に直面しています: How to get feedback from MediaCapture API in Windows 8 . C++ MFT コードを作成し、C# コードと対話する方法が見つかりません。

別の回避策を考えていました。C++ コードを使用して長方形を直接描画します。IMFMediaBuffer

ただし、Microsoft がそのような API を提供しているとは思いません。そうでない場合、私が使用できる正しい方法は何ですか?

4

1 に答える 1

0

ピクセルの色を設定できれば、ループで四角形を描くのはかなり簡単です。

for (int y = top; y <= bottom; y++)
    for (int x = left; x <= right; x++)
        pixels[y * width + x] = color; // pseudocode

長方形の境界線だけを描くのは、4 つの別々のループにすぎません。

円を描く最も簡単な方法:

for (int y = -r; y <= r; y++)
    for (int x = -r; x <= r; x++)
        if (x * x + y * y < r * r)
            pixels[(center.y + y) * width + center.x + x] = color; // pseudocode
于 2012-10-18T04:10:58.720 に答える