bytedeco/javacv

when use javavc the memory is always grow up, the version is 4.5.5-1.5.7

Open

#2,078 opened on Jul 31, 2023

 (7 comments) (0 reactions) (0 assignees)Java (1,583 forks)batch import
help wantedquestion

Repository metrics

Stars
 (6,985 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

    try (PointerScope scope = new PointerScope()) {

        Mat image = Java2DFrameUtils.toMat(bufferedImage);
        Mat grayImage = new Mat(image.rows(), image.cols(), opencv_core.CV_8UC1);
        opencv_imgproc.cvtColor(image, grayImage, opencv_imgproc.COLOR_BGR2GRAY);

        Mat dest = new Mat(image.rows(), image.cols(), opencv_core.CV_8UC1);
        int rows = image.rows();
        int cols = image.cols();
        image.release();

        opencv_core.addWeighted(grayImage, 1.3, dest, -0.5, 0, dest);
        Mat edges = new Mat(rows, cols, opencv_core.CV_8UC1);
        opencv_imgproc.Canny(dest, edges, 50, 150);

        Mat destNoiseFree = new Mat(rows, cols, opencv_core.CV_8UC1);
        opencv_imgproc.medianBlur(dest, destNoiseFree, 5);

        BufferedImage outputImage = Java2DFrameUtils.toBufferedImage(dest);

        grayImage.release();
        edges.release();
        destNoiseFree.release();
        dest.release();
        return outputImage;
    }

Contributor guide