1

iOSでOpenCVのカスタムカーネルを定義しようとしています。私はこれを行うための決定的な方法を見つけることができないようです。私が他の人が使っているのを見た方法はこれであり、私はそれを私が望むように正確に機能させることができないようです。私は次のようにcVVideoCameraデリゲートを使用しています:

- (void)processImage:(Mat&)image;
{
// Do some OpenCV stuff with the image

  double m[] =    {1.0, 1.0, 1.0,
                  2.0, 2.0, 2.0,
                  1.0, 1.0, 1.0};
  cv::Mat kernel = cv::Mat(3, 3, CV_32FC2, m);
  int ddepth = -1;

  cv::filter2D(image, image, ddepth, kernel);

}

これは機能していないようです。cv:Matコンストラクター(CV_32FC2)の型が原因である可能性があります。誰かがこれが通常iPhoneカメラのためにどうあるべきか知っていますか?それとも他に問題がありますか?

4

1 に答える 1

2

タイプ CV_32FC2 は、渡すイメージのタイプを参照するのではなく、作成しているカーネルのタイプを参照します。m の型を float に変更し、CV_32FC2 を CV_32f に変更すると、動作するはずです。また、パフォーマンスに問題がある場合は、Brad Larson が提案するように、Brad Larson のフレームワークを試してみてください。

于 2012-11-13T21:06:13.137 に答える