自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 目标检测数据集制作(VOC2007格式数据集制作和处理教程)

本次的是目标检测,对应的如下结构。

2024-01-29 14:40:41 1630

原创 python项目通过其他通道下载

【代码】python项目通过其他通道下载。

2024-01-22 14:16:59 407

原创 安装Anaconda和pytorch

首先看下自己电脑是否有英伟达的显卡,如果有的话可以安装GPU版本,没有的话可以安装CPU版本。

2023-12-12 10:48:19 575

原创 PyCharm2023版本使用本地conda已存在环境

记录项目加载本地环境

2023-12-12 10:17:46 881

转载 Hystrix请求熔断与服务降级

熔断降级

2022-12-28 11:44:23 1220

转载 springboot定时任务

转载定时器任务

2022-07-26 11:08:32 761

原创 SSO(单点登录)

SSO

2022-06-24 16:27:36 576

转载 基于深度学习进行图像分类

通过deepNetworkDesigner打开深度网络设计器通过从深度网络设计器首页中选择一个预训练的 GoogLeNet 网络来加载它。如果您需要下载网络,可点击安装,打开附加功能资源管理器。等待…深度网络设计器将显示整个网络的缩小视图。浏览网络图。要使用鼠标放大,请使用 Ctrl + 滚轮。加载数据集要将数据加载到深度网络设计器中,请在数据选项卡上,点击导入数据 > 导入图像数据。将打开“导入图像数据”对话框。在数据源列表中,选择文件夹。点击浏览并选择提取的 Mer

2021-12-29 17:27:58 1530

原创 图像处理总结

图像增强技术不对图像降质本质原因进行研究,认为有雾图像模糊是图像对比度下降。通过提高对比度来改善图像效果。主要方法包括:直方图均衡化、小波变换等等。直方图均衡化优点:简单可行,单景深图像复原效果好。局部细节增强。缺点:难以反映多景深图像中景深变化,局部块效应出现。小波变换通过多尺度,图像对比度增强。认为雾对图像高频部分影响较小,对高频部分增强,低频部分削弱。优点:对图像细节增强。缺点:光照过亮或过暗以及不均匀的现象无法处理。视网膜理论利用视觉系统颜色不变性,对因雾气影

2021-12-29 17:14:30 1928

原创 图像处理 灰度世界算法

灰度世界算法是以灰度世界假设为基础的,该假设认为对于一幅有着大量色彩变化的图像, R、 G、 B 三个分量的平均值趋于同一个灰度K。从物理意义上讲,灰色世界法假设自然界景物对于光线的平均反射的均值在总体上是个定值,这个定值近似地为“灰色”。颜色平衡算法将这一假设强制应用于待处理图像,可以从图像中消除环境光的影响。步骤:1.通过计算图像R,G,B三通道平均值avgR,avgG,avgB2.计算三个通道的增益系数;;;3.根据对角模型,对于图像的每个像素C,调整分量...

2021-11-30 17:46:03 3529

转载 图像处理 直方图均衡化

直方图均衡化的作用和优势:作用:这种方法通常用来增加许多图像的全局对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。优点:直观可视化的技术,且可逆,计算量小缺点:对处理的数据不加选择,可能增加背景噪声的对比度,也可能降低有用信息的对比度举个栗子:对下面的灰度图像进行直方图均衡化处理该灰度图像的灰度值出现次数如下表所示,为了简化表格,出现.

2021-11-30 15:52:26 3288

原创 countDownLatch和CyclicBarrier

countDownLatchcountDownLatch这个类使一个线程等待其他线程各自执行完毕后再执行。 是通过一个计数器来实现的,计数器的初始值是线程的数量。每当一个线程执行完毕后,计数器的值就-1,当计数器的值为0时,表示所有线程都执行完毕,然后在闭锁上等待的线程就可以恢复工作了。CyclicBarrier从字面上的意思可以知道,这个类的中文意思是“循环栅栏”。大概的意思就是一个可循环利用的屏障。它的作用就是会让所有线程都等待完成后才会继续下一步行动。就像生活中我们会约朋友们到某个餐厅

2021-08-18 22:00:19 875

原创 平衡二叉树、b树、b+树、红黑树

AVL树:平衡二叉树,一般是用平衡因子差值决定并通过旋转来实现,左右子树树高差不超过1,那么和红黑树比较它是严格的平衡二叉树,平衡条件非常严格(树高差只有1),只要插入或删除不满足上面的条件就要通过旋转来保持平衡。由于旋转是非常耗费时间的。我们可以推出AVL树适合用于插入删除次数比较少,但查找多的情况。b树:定义:B树和平衡二叉树稍有不同的是B树属于多叉树又名平衡多路查找树(查找路径不只两个),数据库索引技术里大量使用者B树和B+树的数据结构(今天数据库课上刚学到的)。规则:排序方式:所

2021-08-17 12:37:25 745

原创 mysql如何实现可重复读

基于mvcc(Multi-Version Concurrency Control,多版本并发控制)mysql默认隔离级别就是可重复读,这个隔离级别解决了不可重复读和脏读,所谓不可重复读就是在一个事务内多次查询的结果不一样,其原因就是期间数据被另一个事务修改了;脏读就是一个事务读取到了另一个事务未提交的数据,然而该数据回滚了,实际上并未提交;实现原理前置知识:InnoDB是通过维护两个隐藏列来实现mvcc,隐藏列记录了数据行创建版本号和删除版本号,每开始一个事务,版本号就会递增;事务开始时刻的版本号就是

2021-08-13 15:52:58 881

原创 什么是CAS机制?

我们先看一段代码:启动两个线程,每个线程中让静态变量count循环累加100次。最终输出的count结果一定是200吗?因为这段代码是非线程安全的,所以最终的自增结果很可能会小于200。我们再加上synchronized同步锁,再来看一下。加了同步锁之后,count自增的操作变成了原子性操作,所以最终输出一定是count=200,代码实现了线程安全。虽然synchronized确保了线程安全,但是在某些情况下,这并不是一个最有的选择。关键在于性能问题。synchronized关键

2021-07-23 10:22:44 134

原创 流媒体项目相关

解决哨兵线上画面抖动:flv里有一个捕捉异常的错误机制,当视频流出现长时间延迟活卡顿的情况,在前端重新new一个flv,去重新获取视频流解决哨兵线上画面不同步:系统自己的问题解决哨兵线上卡顿:由之前的rtmp切换为flv,将延迟大大降低hls和http-flv的区别hls是一种自适应码率流媒体传输协议,是苹果公司提出的基于HTTP的流媒体网络传输协议。MPEG-DASH是一种自适应比特率流技术,可根据实时网络状况实现动态自适应下载。(国外像youtobe用的就是这个)MPEG-DASH

2021-07-15 12:57:09 173

原创 nginx配置http2.0

1.下载所需的nginx版本,这里用的是1.18.0版本,下载上传后进行解压tar -zxvf nginx-1.18.02.下载上传openssl,这里用的是openssl-1.1.1g,下载上传后加压tar -zxvf openssl-1.1.1g.tar.gz3.进入解压出的nginx-1.18.0目录下进行编译,需要添加http_v2_module./configure --prefix=/home/nginx --with-openssl=/home/openssl-1.1

2021-07-12 15:23:41 812

原创 数据库索引问题

数据库索引实现的底层原理B+Tree  B+Tree是在B-Tree基础上的一种优化,使其更适合实现外存储索引结构。B+Tree与B-Tree的结构很像,但是也有几个自己的特性:1、所有的非叶子节点只存储关键字信息。2、所有卫星数据(具体数据)都存在叶子结点中。3、所有的叶子结点中包含了全部元素的信息。4、所有叶子节点之间都有一个链指针。innodb引擎数据存储  在InnoDB存储引擎中,也有页的概念,默认每个页的大小为16K,也就是每次读取数据时都是读取4*4k的大小.

2021-07-07 16:20:38 291

原创 nginx配置访问图片路径以及html静态页面的调取方法

1.实验环境首先搭建好nginx服务器2.在配置好的nginx的html文件夹下放置图片3.nginx配置文件如下#user nobody;worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; #log_format main '$re

2021-07-02 10:43:40 934

原创 操作系统记录

1内核态和用户态内核态:CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序用户态:只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺, CPU资源可以被其他程序获取...

2021-06-19 19:32:28 1366

原创 记录使用面向切面编程存储操作日志

1. 需要引用的依赖<!-- aop --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>2. 创建实体类@Data@EqualsAndHashCode(callSuper = false)@Acc

2021-05-14 16:00:08 457 2

转载 Java获取天气情况的方式

说明经过搜集和参考网上的相关资料,Java获取天气情况数据的通用步骤如下:调用天气接口api; 解析返回的XML 或 JSON数据;这里我并不去用代码实现一个Demo,而是记录一下思路,以后有需求便可以不需要再去调研了。调用天气接口API调用方式,无非就是根据城市名称或者城市代码获取到接口返回的XML 或 JSON数据,以下几种天气接口方式可以参考使用。方式一:wthrcdn接口根据城市名称获取天气信息:http://wthrcdn.etouch.cn/weather_mini?c

2021-05-08 08:40:59 6759 1

原创 maven打包原理

一、Maven中央存储库当你建立一个 Maven 的项目,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载。首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没有找到,然后把它会从默认的 Maven 中央存储库 http://search.maven.org/ 查找下载。在Maven中,当你声明的库不存在于本地存储库中,也没有不存在于Maven中心储存库,该过程将停止并将错误消息输出到 Maven 控制台。二、添加远程仓库默认情况下,Maven从Maven中央仓..

2021-04-26 15:07:02 2653 1

原创 web项目文件上传实现

单文件上传@PostMapping("/uploadfile") @ApiOperation(notes = "教师上传教学资料",value = "传入文件") @ResponseBody @CrossOrigin public Re uploadfile(@RequestParam(value="file") MultipartFile file,HttpServletRequest httpServletRequest){ if (file.is.

2021-04-21 20:07:53 341

原创 leetcode字典树算法(特别记录)

实现前缀树前缀树是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补完和拼写检查。请你实现 Trie 类:Trie() 初始化前缀树对象。void insert(String word) 向前缀树中插入字符串 word 。boolean search(String word) 如果字符串 word 在前缀树中,返回 true(即,在检索之前已经插入);否则,返回 false 。boolean startsWith(String prefi.

2021-04-14 10:16:27 231

原创 docker以及docker镜像和容器的区别

一般当人们说 “Docker”时, 他们一般指的是 Docker Engine , 一个client-server 结构的应用, 包含Docker daemon,一个 用来和daemon 交互的REST API, 一个命令行应用CLI。 Docker Engine 在命令行中接收并解析、执行docker 命令, 例如: docker run <image>, docker ps等这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(...

2021-04-13 12:44:54 141

原创 docker学习记录

本文在虚拟机中运行,操作系统centos71.安装必要的包和配置仓库 sudo yum install -y yum-utils sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo2.安装最新发布的docker版本sudo yum install docker-ce docker-ce-cli containerd.io3.启动

2021-04-13 09:22:42 71

原创 zabbix+grafana相关信息

zabbix如果想要能够全面的监控对象,则需要能够通过各种方法与这些对象进行通讯。那么zabbix能够支持哪些通讯方式呢,总结如下:agent:通过专用的代理程序进行监控,与常见的master/agent模型类似,如果被监控对象支持对应的agent,推荐首选这种方式 ssh/telnet:通过远程控制协议进行通讯,比如ssh或者telnet。 SNMP:通过SNMP协议与被监控对象进行通讯,SNMP协议的全称为Simple Network Management Protocol,被译为 “简单.

2021-04-10 21:13:27 496

原创 git相关知识

Git是一个开源的分布式版本控制系统,是目前世界上最快、最简单、也是最流行的版本控制工具,它可以有效、高速的管理从很小到非常大的项目版本。关于版本控制什么是版本控制?我真的需要吗?版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。什么是分布式版本控制系统分布式版本控制系统( Distributed Version Control System,简称 DVCS )。在这类系统中,像 Git,Mercurial,Bazaar 以及 Darcs 等,客户端并不只提取最新版

2021-04-08 19:45:07 160

原创 MySQL中的数据类型和schema优化

1. 选择优化的数据类型MySQL支持的数据类型有很多,而如何选择出正确的数据类型,对于性能是至关重要的。以下几个原则能够帮助确定数据类型:更小的通常更好应尽可能使用可以正确存储数据的最小数据类型,够用就好。这样将占用更少的磁盘、内存和缓存,而在处理时也会耗时更少。简单就好当两种数据类型都能胜任一个字段的存储工作时,选择简单的那一方,往往是最好的选择。例如整型和字符串,由于整型的操作代价要小于字符,所以当在两者之间选择时,选择整型通常能够获得更好的性能。尽量避免NULL当列可..

2021-04-07 18:55:14 50

原创 mysql做生日日期字段的选择

储存时间,常用的有三个选择datetime、timestamp、int。插入效率:datetime > timestamp > int读取效率:int > timestamp > datetime储存空间:datetime > timestamp = intdatetimedatetime 占用8字节,是占用空间最多的一种日期格式。它显示日期,同时也显示时间。5.5及以前的版本不支持微妙级别,任何微妙数值都会被截断之后存入数据库。timestampt

2021-04-07 11:15:13 2983

原创 List的深复制与浅复制

List的复制其实是很常见的,List其本质就是数组,而其存储的形式是地址将List A列表复制时,其实相当于A的内容复制给了B,java中相同内容的数组指向同一地址,即进行浅拷贝后A与B指向同一地址。造成的后果就是,改变B的同时也会改变A,因为改变B就是改变B所指向地址的内容,由于A也指向同一地址,所以A与B一起改变。这也就是List的浅拷贝,其常见的实现方式有如下几种:浅拷贝1、遍历循环复制List<Person> destList=new ArrayList&

2021-04-07 10:05:02 462 1

转载 springboot接入nacos(转载)

为什么要模块化随着项目的不断发展,需求和业务的不断细化与添加,工程代码会越来越庞大,包结构也越来越复杂,不同方面的代码之间相互耦合,杂乱而无章,并且开发人员也都同时在这一个项目里修改,合并代码时必然会出现各种各样的问题,而且当一位新的人员参与进项目,很难对项目有一个直观的感受,这间接的导致了开发效率的下降。多模块化,正式解决上述问题而产生的,总的来说模块化开发有以下几点好处:降低耦合度。每个模块都有自己的解释,开发者可以更清晰的定制自己模块的内容 项目代码更加清晰。功能模块划分,项目结构更加赏心

2021-03-26 08:55:09 2710

原创 javaweb接入阿里oss

【01】什么是阿里云 ?这是阿里云的官网:https://www.aliyun.com(1.1)打开官网之后,就是这个样子的。【2】什么是阿里云OSS ?(2.2)下面红框是阿里云OSS的一个简介,简而言之,他就是一个文件存储的服务。比如你的网站开发,假设需要用到图片上传,文件上传等功能。以前我们的做法是,自己搭建一个图片服务器或者文件服务器,然后自己在写一套相关的实现方法。但现在我们如果用了阿里云的OSS的话,这一块儿就可以省去我们买服务器的钱和写代码实现的时间。.

2021-03-25 17:45:36 541

原创 Nginx学习知识点

1.为什么nginx采用多进程结构而不使用多线程结构?答:nginx要保证它的高可用性和高可靠性。当采用多线程时,线程之间是共享同一个地址空间的,当某一个第三方模块引发了由地址空间导致的“段”错误时,在地址越界出现时,会导致整个nginx进程全部挂掉!多进程则不会出现这种问题...

2021-03-24 20:39:36 224

原创 计算机网络记录

https概念概念http通常承载与TCP之上,在HTTP和TCP之间添加一个安全协议层(SSL或TSL),就成了我们常说的https。http通常被称为http1.0,https通常被称为http2.0http2与http相比1. 引入了服务端推送的概念,允许服务端在客户端需要数据之前主动将数据发送到客户端缓存中,从而提高性能。2. 提供更多的加密支持3.使用多路技术,允许多个消息在一个连接上同时交差4.增加了头压缩,请求非常小,请求和响应的header都只会占用很小的带宽比例。完整的HTT

2021-03-24 20:14:11 318

原创 javaweb项目上传excel并将表中内容存入数据库

ecxel表格内容数据库学生表字段(结果图)1.控制层代码@RestController@RequestMapping("/tcvl/student")@Api(value = "学生表", tags = "学生表接口")public class StudentController { @Autowired private StudentService studentService; @PostMapping("/upload") @ApiOp

2021-03-24 17:05:01 1662 1

原创 mybatis-plus实现逻辑删除

数据库中的数据删除会分为两种:物理删除 和 逻辑删除物理删除物理删除就是我们删除数据库中的一条数据时,数据会真的被删除(1)首先我们需要在实体类和数据表中添加一个逻辑删除字段is_deleted,默认为0实体类在配置文件加入配置项在配置类中添加逻辑删除组件 /** * 逻辑删除插件 * @return */ @Bean public ISqlInjector sqlInjector() { re

2021-03-23 09:29:51 268

转载 什么是网关及其作用

网关到底是什么呢?如上图:网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定..

2021-03-13 15:29:14 812

原创 java的Stack

序号 方法描述 1 boolean empty() 测试堆栈是否为空。 2 Object peek( ) 查看堆栈顶部的对象,但不从堆栈中移除它。 3 Object pop( ) 移除堆栈顶部的对象,并作为此函数的值返回该对象。 4 Object push(Object element) 把项压入堆栈顶部。 5 int search(Object element) 返回对象在堆栈中的位置,以 1 为基数。 c..

2021-03-10 22:21:27 139

空空如也

空空如也

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

TA关注的人

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