Java Opencv 实现锐化
§ Laplacian()
void cv::Laplacian ( InputArray src,
OutputArray dst,
int ddepth,
int ksize = 1,
double scale = 1,
double delta = 0,
int borderType = BORDER_DEFAULT
)
参数:
src 源图片
dst 与src相同大小和相同通道数的目标图像。
ddepth 目标图像的所需深度。
ksize 用于计算二阶导数滤波器的孔径大小。有关详细信息,请参阅getDerivKernels。大小必须是正面和奇数。
scale 计算的拉普拉斯算子值的可选比例因子。默认情况下,不应用缩放。有关详细信息,请参阅getDerivKernels。
delta 在将结果存储在dst之前添加到结果中的可选增量值。
borderType 像素外推方法,请参阅cv :: BorderTypes

计算图像的拉普拉斯算子。
该函数通过将使用Sobel运算符计算的第二个x和y导数相加来计算源图像的拉普拉斯算子:
上式在ksize>1时。
如果ksize==1,拉普拉斯算子是
package com.gitee.dgw.lesson8; import com.gitee.dgw.lesson1.platformUtils;
import org.bytedeco.javacpp.opencv_core;
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.core.Point;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc; import static org.opencv.core.Core.BORDER_DEFAULT;
import static org.opencv.core.CvType.CV_16S;
import static org.opencv.core.CvType.CV_8UC3;
import static org.opencv.imgproc.Imgproc.COLOR_BGR2GRAY; /**
* @program: learn-opencv
* @description:
* @author: Mr.Dai
* @create: 2020-03-10 20:36
**/
public class Laplacian { private final static String path=System.getProperty("user.dir")+"\\catton.jpg";
/// 全局变量
private final static int scale = 1;
private final static int delta = 0;
private final static int ddepth = CV_16S;
// 锐化度数
private final static int kernel_size = 3; static{
platformUtils.loadLibraries();
} public static void main(String[] args) {
Mat src = new Mat();
Mat src_gray=new Mat();
Mat dst=new Mat();
//读取一张图片
//image=Imgcodecs.imread(path); //读取一张灰度图片
src= Imgcodecs.imread(path,Imgcodecs.IMREAD_COLOR); if (src.empty()) {
System.err.println("加载图片出错,请检查图片路径!");
return;
} Imgproc.GaussianBlur(src, src, new Size(3, 3), 0, 0, BORDER_DEFAULT); Imgproc.cvtColor(src, src_gray, COLOR_BGR2GRAY); Mat abs_dst=new Mat();
//![laplacian]
Imgproc.Laplacian(src_gray, dst, ddepth, kernel_size, scale, delta, BORDER_DEFAULT);
//![laplacian] //![convert]
Core.convertScaleAbs(dst, abs_dst); HighGui.imshow("dstimg showimg",src);
HighGui.imshow("srcimage showimg",abs_dst);
// 无限等待按键按下
HighGui.waitKey(0); }
}

Java Opencv 实现锐化的更多相关文章
- Atitit Java OpenCV 捕获视频
Atitit Java OpenCV 捕获视频 ,打开一段视频或默认的摄像头 有两种方法,一种是在定义类的时候,一种是用open()方法. 一. 读取视频序列 OpenCV提供了一个简便易用的框架以 ...
- 利用Eclipse使用Java OpenCV(Using OpenCV Java with Eclipse)
最近在上计算机视觉这门课程用到了OpenCV,于是找到了"Using OpenCV Java with Eclipse"这篇博文,是英文的,我将它翻译如下与大家分享 正文: 从2. ...
- Java+opencv实现人脸检测
版本 Java1.8 opencv3.4 代码: import java.awt.Graphics; import java.awt.image.BufferedImage; import javax ...
- java opencv使用相关
Using OpenCV Java with Eclipse http://docs.opencv.org/2.4/doc/tutorials/introduction/java_eclipse/ja ...
- java+opencv+intellij idea实现人脸识别
首先当然是需要安装opencv了,我用的是opencv2.4.13.下载完之后就可以直接安装了,安装过程也很简单,直接下一步下一步就好,我就不上图了. 接下来在opencv下找到jar包,比如我直接安 ...
- 【Java 其他】Java opencv配置及测试
毕竟研究生做cv,所以这里还是测试一下java上使用opencv,参考 这里 import org.opencv.core.Core; import org.opencv.core.CvType; i ...
- java opencv 4.0.1安装配置
如果没有把dll扔到jdk会报错 Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: no ...
- Java Opencv 实现 中值滤波器
原理 Note 以下原理来源于Richard Szeliski 的著作 Computer Vision: Algorithms and Applications 以及 Learning OpenCV ...
- java+opencv实现人脸识别程序记录
结果 基本实现了识别的功能.基本的界面如下 界面长得比较丑,主要是JavaSwing写界面比较麻烦,写个菜单栏都要那么多代码.目前不打算改了. 实现的思路是:使用opencv中自带的OpenCVFra ...
随机推荐
- bean加载与注入之重新理解
1.@Autowired注解不可以用在静态属性上: 解决方法: 使用实现了ApplicationContextAware接口的自定义工具类,ApplicationContextAware可以让我们获得 ...
- hibernate多表查询sql,以及所得对象的处理
String sql ="SELECT id FROM tea WHERE tea.name=? "; SQLQuery query = this.getSession().cre ...
- python后端面试第七部分:项目部分--长期维护
################## 项目部分 ####################### 1,你怎么测试自己的代码的?自测 2,开发使用windows还是Linux,虚拟环境的 ...
- 使用Cron表达式创建定时任务
CronTriggerCronTrigger功能非常强大,是基于日历的作业调度,而SimpleTrigger是精准指定间隔,所以相比SimpleTrigger,CroTrigger更加常用.CroTr ...
- Java子类和父类的初始化执行顺序
要明白子类和父类的初始化执行顺序,只需要知晓以下三点,就不会再弄错了. 1.创建子类对象时,子类和父类的静态块和构造方法的执行顺序为:父类静态块->子类静态块->父类构造器->子类构 ...
- WEB前端资源集(二)
在上一篇为大家整理出了一些资源网站,接下来给大家整理了一些开发中常用的工具. 开发工具篇 开发工具集 Sublime Text 3:SublimeText 3是一个代码编辑器,也是HTML和散文先进的 ...
- MOOC(3)- python发送请求,返回的json数据被转码
https://www.cnblogs.com/yoyoketang/p/10339210.html 问题:发送post请求,对post请求返回的json数据格式化,但是返回的结果被转码了 json. ...
- Python-多任务复制文件夹
import multiprocessing import os import time def copy_file(queue, file_name, old_folder_name, new_fo ...
- Java web期末项目第一阶段成果发表
摘要 我们做的系统是一个基于Java web与MySQL的食堂订餐系统 班级: 计科二班 小组成员:李鉴宣.袁超 我们的第一阶段主要完成以下三件事: 完成项目的需求分析 完成项目的领域逻辑(domai ...
- AtomicBoolean介绍
网上资料: 使用 AtomicBoolean 高效并发处理 "只初始化一次" 的功能要求: 1 privatestatic AtomicBoolean initialized = ...