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配列の順序に従って並べ替えられることを期待していました