SpringBoot整合OpenCV的实现示例

 更新时间:2020年12月20日 11:58:29   作者:小夏陌  
这篇文章主要介绍了SpringBoot整合OpenCV的实现示例。文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

简介

接下来会讲解怎么用SpringBoot整合OpenCV

初始化SpringBoot项目

这里正常初始一个SpringBoot项目

在这里插入图片描述

依赖文件

在安装目录下找到以下两个文件,如果不知道怎么安装OpenCV,可查看这篇文章,Windows下安装OpenCV
opencv\build\java\opencv-420.jar
opencv\build\java\x64\opencv_java420.dll
在resource目录下新建一个lib文件夹,然后将两个文件复制到resource\lib下

在这里插入图片描述

项目添加lib

在项目中添加依赖,点击“+”后选择Java,其它如图所示

在这里插入图片描述

在这里插入图片描述

测试

import org.junit.Test;
import org.opencv.core.Mat;
import java.net.URL;
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;
/**
 * @ClassName OpenCVTest
 * @Description TODO
 * @Author L
 * @Date Create by 2020/1/11
 */
public class OpenCVTest {
 /**
  * 测试OpenCV是否能运行:需要自行修改图片位置
  * @throws Exception 测试是否成功
  */
 @Test
 public void testOpenCV() throws Exception {
  URL url = ClassLoader.getSystemResource("lib/opencv_java420.dll");
  System.load(url.getPath());
  //填你的图片地址
  Mat image = imread("E:\\opencv\\src\\main\\resources\\static\\opencv.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();
 }
}

出现以下两张图,一张代表原始图,一张代表处理过后的图,即表示整合成功

在这里插入图片描述

到此这篇关于SpringBoot整合OpenCV的实现示例的文章就介绍到这了,更多相关SpringBoot整合OpenCV内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解Servlet 3.0/3.1 中的异步处理

    详解Servlet 3.0/3.1 中的异步处理

    这篇文章主要介绍了详解Servlet 3.0/3.1 中的异步处理,实例分析了servlet 3.0异步处理的技巧,非常具有实用价值,需要的朋友可以参考下
    2017-04-04
  • Java使用itextpdf实现生成PDF并添加图片,水印和文字

    Java使用itextpdf实现生成PDF并添加图片,水印和文字

    这篇文章主要为大家详细介绍了Java在使用itextpdf实现生成PDF时如何实现添加图片,水印和文字等效果,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • 使用@Order控制配置类/AOP/方法/字段的加载顺序详解

    使用@Order控制配置类/AOP/方法/字段的加载顺序详解

    这篇文章主要介绍了使用@Order控制配置类/AOP/方法/字段的加载顺序详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • SQL返回Map集合或者对象的操作

    SQL返回Map集合或者对象的操作

    这篇文章主要介绍了SQL返回Map集合或者对象的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • MyBatis批量插入几千条数据为何慎用foreach

    MyBatis批量插入几千条数据为何慎用foreach

    这篇文章主要介绍了MyBatis批量插入几千条数据为何慎用foreach问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • SpringBoot整合mybatis结合pageHelper插件实现分页

    SpringBoot整合mybatis结合pageHelper插件实现分页

    在本篇文章里小编给大家整理的是关于SpringBoot整合mybatis使用pageHelper插件进行分页操作相关知识点,需要的朋友们学习下。
    2020-02-02
  • SpringCloud集成Nacos的使用小结

    SpringCloud集成Nacos的使用小结

    这篇文章主要介绍了SpringCloud集成Nacos的使用小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • SpringMVC中的HandlerMapping详解

    SpringMVC中的HandlerMapping详解

    这篇文章主要介绍了SpringMVC中的HandlerMapping详解,HandlerMapping是请求映射处理器,也就是通过请求的url找到对应的逻辑处理单元(Controller),注意这里只是建立请求与Controller的映射关系,最终的处理是通过HandlerAdapt来进行处理的,需要的朋友可以参考下
    2023-09-09
  • Java数据结构之二叉搜索树详解

    Java数据结构之二叉搜索树详解

    二叉搜索树作为一个经典的数据结构,具有链表的快速插入与删除的特点,同时查询效率也很优秀,所以应用十分广泛。本文将详细讲讲二叉搜索树的原理与实现,需要的可以参考一下
    2022-06-06
  • 通过实例分析java多态

    通过实例分析java多态

    这篇文章主要介绍了通过实例分析java多态,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10

最新评论