1

コンピューターから画像を読み取り、c++プログラムに保存したい。私はJava画像処理の経験がありますが、C++でそれを行う方法がまったくわかりません。以下のJavaコードがC++で行うことを実現したいです。

BufferedImage sourceImage = null;

 try {
        // The ClassLoader.getResource() ensures we get the sprite

        // from the appropriate place, this helps with deploying the game

        // with things like webstart. You could equally do a file look

        // up here.

        URL url = this.getClass().getClassLoader().getResource(ref);

        if (url == null) {
            fail("Can't find ref: "+ref);
        }

        // use ImageIO to read the image in

        sourceImage = ImageIO.read(url);
    } catch (IOException e) {
        fail("Failed to load: "+ref);
    }

    // create an accelerated image of the right size to store our sprite in

    GraphicsConfiguration gc = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
    Image image = gc.createCompatibleImage(sourceImage.getWidth(),sourceImage.getHeight(),Transparency.BITMASK);

    // draw our source image into the accelerated image

    image.getGraphics().drawImage(sourceImage,0,0,null);

    // create a sprite, add it the cache then return it

    Sprite sprite = new Sprite(image);
    sprites.put(ref,sprite);

    return sprite;

誰でも私にヒントを与えることができますか?前もって感謝します!

4

1 に答える 1

0

画像をマトリックスとして操作する場合は、 OpenCVライブラリを使用できます。このライブラリは、画像の読み込みと保存のシンプルなインターフェイスを提供しますが、主なアプリケーションは画像処理とコンピュータビジョンです。したがって、それは「鳥に対する砲兵」である可能性があります。

于 2012-04-18T06:03:35.793 に答える