自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 rabbitmq实现延迟队列

延迟队列延迟队列,顾名思义就是消息进入消息队列后不会被立即消费,而是等一段时间后消费,这个时间可以自己设定,比如用户登录5分钟后向其推送消息。rabbitmq并未提供延时队列的直接实现,但是rabbitmq提供了死信队列和TTL(消息过期时间)的实现方式,我们可以借助死信队列+TTL到达实现延迟队列的目的。下面先实现死信队列和TTL。实现TTL这里使用springboot实现TTL,通过ttl方法设置队列过期时间,配置类:@Configurationpublic class RabbitmqCo

2021-11-07 13:14:11 1489

原创 nginx常用配置

为了日后方便,这里记录一下nginx的常用配置,此处nginx使用docker 安装并配置数据卷:docker run -id --name c_nginx --net host -v ~/nginx/conf.d:/etc/nginx/conf.d -v ~/nginx/html:/usr/share/nginx/html nginx1. 绑定多个端口与tomact服务器不同,nginx可以同时开启多个端口,nginx绑定多个端口的方法如下:进入conf.d目录:cd ~/nginx/con

2021-10-30 09:51:15 2787

原创 spring-boot整合dubbo

1. dubbo简介Apache Dubbo是一款高性能的Java RPC框架。其前身是阿里巴巴公司开源的、轻量级的开源Java RPC框架,可以和Spring框架无缝集成。其中RPC(remote procedure call)为远程过程调用,PRC不是指一个具体的技术,而是值整个网络的调用过程,例如,服务器A和B,分别部署了一个应用,那么A服务器的应用肯定不能直接调用B服务器的应用,所以通过网络来表达调用的语义和传达调用的数据。Dubbo提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均

2021-10-08 08:25:17 636

原创 虚拟机模拟redis集群

​  实践是检验真理的唯一标准,作为redis的初学者,在学习redis集群的时候,希望能够自己搭建一个redis集群,但只有一台电脑,所以想出使用虚拟机去模拟redis集群,相当于构建一个伪集群。(伪)集群搭建步骤1 搭建所需环境VM虚拟机(这里操作系统选用的是CentOs7)安装redies注:为避免权限问题,后期操作均使用root账户2 创建集群目录为方便对文件的管理,新建一个集群目录[root@centOSyangsensen redis]# mkdir redis-c

2021-07-26 21:51:00 421

原创 简单解析网络API接口数据

API数据接口-聚合数据​ xml和 json 是现今互联网中常用的两种数据交换格式,两种格式都可以进行网络数据交换,数据存储,配置文件,但由于两种文件不同的优缺点,xml主要用于配置文件,json主要应用于网络数据交换。本文通过申请聚合API数据接口,分别使用xml和json的方式解析该API数据。申请方式可以进入聚合数据官方进行申请(聚合官方)。聚合数据提供了很多的网络API接口,很方便开发者使用。​ 我在聚合数据申请了一个手机号码归属地查询的接口,请求示例如下图:该

2021-05-23 14:34:38 1790

原创 Java中的四种线程池

文章目录线程池Executors线程池概述线程池的好处1. 缓存线程池2. 定长线程池3. 单线程线程池4. 周期定长线程池线程池Executors线程池概述​  在进行多线程任务开发的时候,一个线程会经历如下四个阶段:​  1. 创建线程​  2. 创建任务​   3. 执行任务​  4. 关闭线程​  如果一个线程的任务量很小,那么创建任务和执行任务将占整个流程的很少时间,多数时间用于创建线程和关闭线程,

2021-05-19 09:32:26 290

原创 常用类库String浅析

文章目录String常用方法StringBuffer和StringBuilder构造函数常用方法String​    字符串是常量,它们一经创建就不能被修改。正因为字符串对象不变,所以可以共享它们。比如:String str1 = "abc";String str2 = "abc";​    上述代码并没有申请两块存储空间,str1和str2是同一块内存地址的引用。​    在对一个字符串进行引用时,JVM首先会在常量池(永久代中,不会被GC回收)中

2021-05-18 13:01:08 97

原创 try catch中finally的理解(java)

理解在进行try catch进行异常处理时,不管是否抛出了异常,也不管在finally之前是否有return语句,finall均必然会被执行,除非程序被关闭(可能是电脑断电,关机,代码使其退出等非正常情况)。finally的执行finally之前无return的情况首先看一个简单的例子: public static void main(String[] args) { div(); } public static void div(){ int x,

2021-05-02 13:15:36 278

原创 Java中System.out.println的工作原理

1 . 基础语法1.1 运算符

2021-04-29 21:41:58 858

原创 opencv进行复数的乘除法运算

目录引言opencv中的复数表示复数乘法引言由于opencv自身不带有复数计算功能,但我又经常需要进行复数运算,所以我只能自己写两个函数来进行复数的乘除法运算。opencv中的复数表示复数包含了实部和虚部,在opencv中是使用一个二通道的Mat对象来存放一个复数数组,两个通道分别存储复数的实部和虚部,图像傅里叶变换的结果就是一个使用二通道数组存放的复数数组。比如一个复数:[0+0j0+j1+0j1+j]\begin{bmatrix}0+0j&0+j\\1+0j&1+j\e

2021-03-26 18:01:35 988

原创 图像锐化

目录1. 图像锐化2. 空间域方法2.1. 梯度模算子1. 图像锐化图像锐化也称边缘增强。锐化技术用于加强图像中的边界和细节信息。由于边界和细节信息对应频域中的高频部分,所以在频域中通常对图像进行高通滤波,在空间域则进行微分处理。2. 空间域方法在进行频率域处理前,先简单介绍两种空间域的图像锐化算子。2.1. 梯度模算子由数学知识,我们知道方向导数取得最大值的方向是梯度方向,这个最大值便是梯度的模。在边界和细节部分进行梯度运算,得到的值较大,而在较平缓的地方,会得到较小的梯度。为了运算简便,梯度

2021-02-27 13:54:24 7222 2

原创 频域中图像平滑的方法

文章目录1. 频域中图像平滑流程2. 理想低通滤波器3. 巴特沃斯低通滤波器1. 频域中图像平滑流程在一副图像中,平滑的图像信号在频谱中贡献低频分量,而高频部分往往是图像的细节和边界,噪声也具有丰富的高频分量。所以对图像进行低通滤波可以消减噪声,但也可能使边界和图像细节变得模糊。频域中图像滤波的处理流层如下图:其中DFT为离散傅里叶变换,IDFT为离散傅里叶反变换,H(m,n)H(m,n)H(m,n)为滤波器的传递函数。滤波器的输出为:2. 理想低通滤波器二维理想低通滤波器(Ideal Lo

2021-02-20 09:44:28 2758

原创 opencv显示图像的频谱图(C++)

opencv显示图像的频谱图(C++)1. 图像傅里叶变换2. 幅度谱3.相位谱4. 测试1. 图像傅里叶变换图像的傅里叶变换是二维的傅里叶变换,二维离散傅里叶变换(discrete Fourier transform,DFT)定义式如下:在这里f(m,n)f(m,n)f(m,n)为图像在点(i,j)(i,j)(i,j)的像素值。二维离散傅里叶反变换为:在opencv中可以通过dft()函数实现二维离散傅里叶变换,代码如下:Mat DFT::dft2(Mat input){ if (in

2021-02-15 10:49:04 3310 3

原创 图像平滑算法

目录1.噪声1.噪声图像在获取的过程中一般会受到各种干扰而导致图像含有噪声。噪声的产生原因有很多,噪声产生的原因决定了噪声的分布特性。当噪声n(x,y)n(x,y)n(x,y)与图像信号g(x,y)g(x,y)g(x,y)无关时,含噪图像f(x,y)f(x,y)f(x,y)可以用下面的式子表示:f(x,y)=g(x,y)+n(x,y)f(x,y)=g(x,y)+n(x,y)f(x,y)=g(x,y)+n(x,y)这种噪声称作加性噪声。还有一种乘性噪声,即噪声和信号有关,含噪图像f(x,y)f(x

2021-02-13 18:23:05 3149

原创 修正直方图增强对比度

目录直方图(histogram)直方图均化直方图(histogram)设一副数字图像的像素总数为NNN,灰度级为LLL,第kkk个灰度级的灰度等级为rkr_krk​,共有像素nkn_knk​个,则第kkk个灰度级或者说rkr_krk​出现的频率:hk=nk/Nh_k=n_k/Nhk​=nk​/N,其中k=0,1........(L−1)k=0,1........(L-1)k=0,1........(L−1)。以kkk为横坐标(或rkr_krk​为横坐标),hkh_khk​为纵坐标画出的柱状图,就成为了

2021-02-02 22:01:30 493

原创 对比度增强算法

目录一、简单线性变换二、分段线性变换一、简单线性变换如果原图像f(x,y)f(x,y)f(x,y)的灰度范围为[m,M][m,M][m,M],经过线性变换之后,我们希望变换后的图像g(x,y)g(x,y)g(x,y)的灰度范围是[n,N][n,N][n,N],那么经过下面的简单线性变换就可实现:g(x,y)=(N−n)/(M−m)[f(x,y)−m]+ng(x,y)=(N-n)/(M-m) [f(x,y)-m]+n g(x,y)=(N−n)/(M−m)[f(x,y)−m]+n令系数k=(N−n)/(

2021-01-28 18:36:05 4920 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除