2

私はopencvsharpを使用しています。ウェブカメラ セットストリームをキャプチャし、テキスト オーバーレイを追加するプログラムを作成しています。ここにコードがあります

using (CvCapture cap = CvCapture.FromCamera(0))

        using (CvWindow w = new CvWindow("OpenCV Example"))

        {

            while (CvWindow.WaitKey(10) < 0)

            {

                using (IplImage src = cap.QueryFrame())

                using (IplImage gray = new IplImage(src.Size, BitDepth.U8, 1))

                using (IplImage dstCanny = new IplImage(src.Size, BitDepth.U8, 1))

                {

                   src.CvtColor(gray, ColorConversion.BgrToGray);

                  Cv.Canny(gray, dstCanny, 50, 50, ApertureSize.Size3);
                  CvFont font = new CvFontQt("MS UI Gothic", 48, CvColor.Red, FontWeight.Bold, OpenCvSharp.FontStyle.Italic);
                  dstCanny.AddText("Hello Qt!!", new CvPoint(50, dstCanny.Height - 50), font);

                   w.Image = dstCanny;

                }

            }

        }

私は次の例外を取得しています'OpenCvSharp.OpenCvSharpException'OpenCvSharp.dll でタイプの未処理の例外が発生しました

追加情報: ライブラリは Qt サポートなしでコンパイルされています

この行で

CvFont font = new CvFontQt("MS UI Gothic", 48, CvColor.Red, FontWeight.Bold, OpenCvSharp.FontStyle.Italic);

私が間違っていることを教えてください。

4

1 に答える 1

0

「AddText」メソッドの代わりに「PutText」を使用することもできます。例えば:

dstCanny.PutText("Hello", new CvPoint(50, 50), new CvFont(FontFace.HersheyDuplex, 1, 1), CvColor.GreenYellow);
于 2015-02-05T12:15:18.460 に答える