0

OpenCV Java Preset の画像の置換に相当するものはありますか? 私の画像は org.bytedeco.javacpp.Mat として表されます。以下のJavaCpp OpenCVプリセットを使用しています

<dependency>
    <groupId>org.bytedeco.javacpp-presets</groupId>
    <artifactId>opencv</artifactId>
    <version>3.0.0-1.1</version>
</dependency>

更新、コメントでの @Miki のアドバイスの後、mixChannel api を使用してみました。しかし、コードの並べ替えと同じ機能を実行していないようです:

Mat responseMat = new Mat(imageViaNetwork.toByteArray());
Mat image =  imdecode(responseMat, -1);
Mat resizedImage = new Mat(image);
resize(image, resizedImage,new opencv_core.Size(height, width),0,0,  opencv_imgproc.INTER_LINEAR);
Mat transposedResizedImage = new Mat(resizedImage);
int from_to[] = { 0,2, 1,0, 2,1 };
org.bytedeco.javacpp.opencv_core.mixChannels(resizedImage, 1,  transposedResizedImage, 1, from_to, 3 );

出力:

resizedImage: org.bytedeco.javacpp.opencv_core$Mat[幅=300、高さ=200、深さ=8、チャンネル=3]

transposedResizedImage: org.bytedeco.javacpp.opencv_core$Mat[幅=300、高さ=200、深さ=8、チャンネル=3]

私はtransposedResizedImageの幅/高さがfrom_to配列の順序に従って並べ替えられることを期待していました

4

0 に答える 0