JavaCVガウスぼかし

7892 ワード

JavaCVガウスぼかし
まず前の図を書きます.
[外部チェーン画像の転送に失敗しました.ソース局には盗難防止チェーン機構がある可能性があります.画像を保存して直接アップロードすることをお勧めします(img-AfsbYrYF-15980606075898)(C:Users75412AppDataRoamingTyporatypora-user-imagesimage-2082155626444.png)]
上の図をガウスぼかし処理します
サンプルコード:
package com.example.demo.test;

import com.example.demo.utils.JavaCVUtil;
import org.bytedeco.javacpp.opencv_core;
import org.bytedeco.javacpp.opencv_core.*;
import org.bytedeco.javacpp.opencv_imgproc;

import java.util.Random;

import static com.example.demo.car.PlateLocate.*;
import static org.bytedeco.javacpp.opencv_core.*;
import static org.bytedeco.javacpp.opencv_imgproc.*;

/**
 * @Author: dinghao
 * @Date: 2020/8/21 16:09
 */
public class JavaCVTest {


    /**
     *     
     *
     * @param imgPath     
     * @return Mat   mat
     */
    public static Mat readImg(String imgPath) {
        Mat mat = JavaCVUtil.imRead(imgPath);
        return mat;
    }

    /**
     *     
     * @param mat   mat
     * @param imgPath     
     */
    public static void writeImg(Mat mat, String imgPath) {
        JavaCVUtil.imWrite(mat, imgPath);
    }


   /**
     *    mat      
     *
     * @param mat   mat
     * @return Mat   mat
     */
    public static Mat readImgToGaussianBlur(Mat mat) {
        int gaussianBlurSize = 5;
        Mat src_gaussianBlur = new Mat();
        GaussianBlur(mat, src_gaussianBlur, new opencv_core.Size(gaussianBlurSize, gaussianBlurSize), 0, 0, BORDER_DEFAULT);
        return src_gaussianBlur;
    }


    public static void main(String[] args) {
        String imgPath = "src.jpg";
        Mat src = readImg(imgPath);
        Mat imgToGaussianBlur = readImgToGaussianBlur(src);
        writeImg(imgToGaussianBlur, "imgToGaussianBlur.jpg");
    }

}

効果図:
[外部リンク画像の転送に失敗しました.ソース局には盗難防止チェーン機構がある可能性があります.画像を保存して直接アップロードすることをお勧めします(img-GrjnjV 7 O-1598060607990)(C:Users75412AppDataRoamingTyporatypora-user-imagesimage-2082170607002.png)]