-2

私は GPU プログラミングの初心者です。GPU を使用する前に経験がありません。関数がいくつかあります。これらの関数を GPU で実行できるように変換する必要があります。CPU バージョンは正常に動作しています。イメージ操作には emgucv を使用しました。 . 私のコードは次のとおりです。助けてください。

public static Image Highlight(Image image)
    {
      if (image == null)
      {
        throw new ArgumentNullException("image");
      }

      using (Image<Bgr, byte> originalImage = ConvertToEmgu(image))
      using (Image<Bgr, byte> resavedOriginalImage = ConvertToEmgu(ResaveImageWithGivenCompression(image)))
      using (Image<Bgr, byte> errorLevelImage = (originalImage - resavedOriginalImage) * scalingFactor)
      {
        return errorLevelImage.ToBitmap();
      }
    }

    private static Image<Bgr, byte> ConvertToEmgu(Image image)
    {
      using (Bitmap bitmap = new Bitmap(image))
      {
        return new Image<Bgr, byte>(bitmap);
      }
    }

    private static Image ResaveImage(Image image)
    {
      EncoderParameters jpegEncoderParameters = new EncoderParameters(1);
      ImageCodecInfo jpegWithGivenCompressionFormat = GetEncoderInfo("image/jpeg");

      jpegEncoderParameters.Param[0] = new EncoderParameter(Encoder.Quality, compressionQuality);

      using (MemoryStream resavedImageStream = new MemoryStream())
      {
        image.Save(resavedImageStream, jpegWithGivenCompressionFormat, jpegEncoderParameters);

        return Image.FromStream(resavedImageStream);
      }
    }

    private static ImageCodecInfo GetEncoderInfo(string mimeType)
    {
      ImageCodecInfo[] encoders = ImageCodecInfo.GetImageEncoders();

      return encoders.FirstOrDefault(encoder => encoder.MimeType == mimeType);
    }
  }
4

2 に答える 2

4
  • まず、CUDA 2.0 以上をサポートするグラフィックス カードが必要です。
  • 次に、NVidia から CUDA ドライバーをインストールする必要があります。CUDA ツールキットを検索します。
  • 次に、プロジェクトにCUDA dllを含める必要があります(Opencv dllで行ったのと同じように)
  • 次に、CV.GPU 名前空間を使用する必要があります
  • 次に、すべての関数を適切な GPU バージョンに置き換えます。あなたのコードには OpenCV 関数が表示されないため、置き換えるものはありません。(しかし、私はいくつかを逃す可能性があります)
于 2013-06-06T04:06:56.993 に答える
1

あなたの質問に答えるために以下のウェブサイトを見てください

http://opencv.willowgarage.com/wiki/OpenCV_GPU http://opencv.itseez.com/doc/tutorials/tutorials.html http://blog.cuvilib.com/2011/03/22/how-to- build-opencv-2-2-with-gpu-cuda-on-windows-7 /

于 2012-08-27T23:23:57.343 に答える