Idea Java Spring Boot支持OpenCV – 4.1.1

Idea Java Spring Boot支持OpenCV – 4.1.1

下載

從github中下載,網址https://github.com/opencv/opencv/releases,也可以從官網https://opencv.org/releases/,下載opencv-4.1.1-vc14_vc15.exe
在這裏插入圖片描述

Idea配置

解壓

exe解壓到D:\YDGreen\,找到下面兩個文件

  • D:\YDGreen\opencv\build\java\opencv-411.jar
  • D:\YDGreen\opencv\build\java\x64\opencv_java411.dll
    複製到項目的resource\lib下
    在這裏插入圖片描述

項目添加lib

pom.xml方式

<!-- OpenCV -->
<dependency>
    <groupId>org</groupId>
    <artifactId>opencv</artifactId>
    <scope>system</scope>
    <systemPath>${project.basedir}\src\main\resources\lib\opencv-411.jar</systemPath>
</dependency>

或者在idea裏面添加,如下所示
在這裏插入圖片描述
在這裏插入圖片描述

代碼加載dll

加載dll的兩種方式

// 方法一
啓動參數添加
-Djava.library.path=D:\PData\baidunet\image-process\src\main\resources\lib\;
代碼
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

// 方法二
System.load("D:\\PData\\baidunet\\image-process\\src\\main\\resources\\lib\\opencv_java411.dll");

驗證

import org.junit.Test;
import org.opencv.core.Mat;

import java.util.ArrayList;
import java.util.List;

import static org.opencv.core.Core.merge;
import static org.opencv.core.Core.split;
import static org.opencv.highgui.HighGui.imshow;
import static org.opencv.highgui.HighGui.waitKey;
import static org.opencv.imgcodecs.Imgcodecs.imread;
import static org.opencv.imgproc.Imgproc.equalizeHist;

/**
 * OpenCV測試
 * @author ydfind
 * @date 2019.9.20
 */
public class OpenCVTest {

    /**
     * 測試OpenCV是否能運行:需要自行修改圖片位置
     * @throws Exception 測試是否成功
     */
    @Test
    public void testOpenCV() throws Exception {
        URL url = ClassLoader.getSystemResource("lib/opencv_java411.dll");
        System.load(url.getPath());
        Mat image = imread("D:\\tmp\\20190920122234.png", 1);
        if (image.empty()){
            throw new Exception("image is empty!");
        }
        imshow("Original Image", image);
        List<Mat> imageRGB = new ArrayList<>();
        split(image, imageRGB);
        for (int i = 0; i < 3; i++) {
            equalizeHist(imageRGB.get(i), imageRGB.get(i));
        }
        merge(imageRGB, image);
        imshow("Processed Image", image);
        waitKey();
    }
}


在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章