2016-10-05 4 views
1

以下は、バッファされたImageをMatタイプに変換するためのJavaコードです。私はこの関数を実行している間、私は例外を以下の取得:スレッド「メイン」java.lang.UnsupportedOperationExceptionがで例外:マットのデータ型は互換性がありません:MatデータタイプがサポートされていませんOpenCvを使用しているときにJavaでエラーが発生しました

public static Mat bufferedImageToMat(BufferedImage image) { 
    Mat mat = new Mat(image.getHeight(), image.getWidth(), CvType.CV_8UC1); 
    int[] data = ((DataBufferInt)image.getRaster().getDataBuffer()).getData(); 
    mat.put(0, 0, data); 
    return mat; 
} 

また、私は続いているGoogleでエラーで検索しましたしかし、スタックオーバーフローに似たような質問がありますが、それは私を助けません。誰でもここで私を助けることができますか?私は立ち往生した。

+1

私はこの質問が下落された理由を聞くことができますか? – Yoda

答えて

0

I午前全くわからない、これが違いを生むだろうが、あなたが変更しようとすることができれば

のint []データ=((DataBufferInt)image.getRaster()getDataBuffer()。)のgetData()。 (DataBufferByte)image.getRaster()。getDataBuffer())。getData();

byte [] data [

私はあなたのエラーを作り直そうとしましたが、役に立たなかった。私は、バイト[]の代わりにint []を使うようにコードを変更したときにのみエラーが発生しました。

+0

私は前にバイトを持っていましたが、同じエラーが出て同じintに変換されました – Yoda

+0

メソッドを呼び出す場所にコードを投稿できますか –

関連する問題