天天看點

OpenCV/Java byte[] 轉 Mat

/**
     * Mat轉換成byte數組
     *
     * @param matrix        要轉換的Mat
     * @param fileExtension 格式為 ".jpg", ".png", etc
     * @return
     */
    public static byte[] mat2Byte(Mat matrix, String fileExtension) {
        MatOfByte mob = new MatOfByte();
        Imgcodecs.imencode(fileExtension, matrix, mob);
        byte[] byteArray = mob.toArray();
        return byteArray;
    }
           
byte[] byteString = mat2Byte(mat, ".jpg");
Mat mat = Imgcodecs.imdecode(new MatOfByte(byteString), Imgcodecs.CV_LOAD_IMAGE_UNCHANGED);
Imgcodecs.imwrite(failName, mat);