
笔记
文章平均质量分 64
钟良堂
这个作者很懒,什么都没留下…
展开
-
Spring Boot自动装配代码详解
Spring Boot 自动装配是其核心特性之一,它能够根据项目中添加的依赖自动配置 Spring 应用程序。通过自动装配,开发人员可以减少大量的配置工作,快速搭建起一个可用的 Spring 应用。原创 2025-01-04 17:20:09 · 931 阅读 · 0 评论 -
基于轻量级模型YOLOX-Nano的菜品识别系统
YOLOX是一个在2021年被旷视科技公司提出的高性能且无锚框(Anchor-free)的检测器,在YOLO系列的基础上吸收近年来目标检测学术界的最新成果,如解耦头(Decoupled Head)、数据增强、无锚框、标签分配策略SimOTA(Simplified Optimal Transport Assignment)等等。同时YOLOX继承了YOLO系列容易部署的特点,提供了支持ONNX、TensorRT、ncnn和Openvino的部署版本。原创 2024-02-08 22:18:00 · 2122 阅读 · 0 评论 -
智慧自助餐饮系统(SpringBoot+MP+Vue+微信小程序+JNI+ncnn+YOLOX-Nano)
本项目是配合智慧自助餐厅下的一套综合系统,该系统分为安卓端、微信小程序用户端以及后台管理系统。安卓端利用图像识别技术进行识别多种不同菜品,识别成功后安卓端显示该订单菜品以及价格并且生成进入小程序的二维码,用户扫描后在小程序进行付款和提交订单,用户也可查看订单和菜品等信息,管理员在 Web 后台管理系统进行信息查看餐厅运营情况和管理菜品、订单评价等信息。原创 2024-02-08 01:03:48 · 8542 阅读 · 6 评论 -
Java字符串将数据库字段改成驼峰字段
Java字符串将数据库字段改成驼峰字段原创 2023-09-19 09:34:28 · 707 阅读 · 0 评论 -
大数据课程综合实验案例---课设问题汇总
大数据课设问题汇总原创 2023-07-25 18:23:55 · 1985 阅读 · 1 评论 -
启动RabbitMQ服务以及基本使用
启动RabbitMQ服务以及基本使用原创 2023-03-18 15:11:34 · 1256 阅读 · 0 评论 -
在vue项目中配置axios工具类
在vue项目中配置axios工具类原创 2023-03-12 17:09:01 · 524 阅读 · 1 评论 -
Java过滤器配置类导致跨域问题:Request header field token is not allowed by Access-Control-Allow-Headers in prefli
Java过滤器配置类导致跨域问题:Request header field token is not allowed by Access-Control-Allow-Headers in prefli原创 2023-03-04 21:26:05 · 2362 阅读 · 0 评论 -
Spring Security配置类导致跨域问题:doesn‘t pass access control check: It does not have HTTP ok status.
Spring Security配置类导致跨域Access to XMLHttpRequest at 'http://localhost:8081/restaurant/list' from origin 'http://localhost:8080' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.原创 2023-03-04 21:04:22 · 1303 阅读 · 0 评论 -
快速排序的描述以及两种实现方案
快排描述以及两种实现方案。原创 2023-02-19 16:22:18 · 686 阅读 · 0 评论 -
Java线程池的创建以及原理
在外面的日常开发中,也使用了不少池化技术,比如线程池、数据库连接池、HTTP连接池等等都是对这个思想的应用。池化技术的思想主要是为了减少每次获取资源的消耗,提高对资源的利用率。原创 2023-02-19 16:05:24 · 548 阅读 · 0 评论 -
SSO单点登录实例详解(前端传Code授权登录)
SSO单点登录以及单点登录流程详解原创 2023-01-08 20:11:31 · 3432 阅读 · 0 评论 -
JWT的组成以及工作原理
JWT的组成以及工作原理原创 2023-01-03 17:29:26 · 1024 阅读 · 0 评论 -
Linux防火墙端口号命令
Linux防火墙端口号命令原创 2022-10-08 10:59:10 · 732 阅读 · 0 评论 -
Java递归遍历JSON的N叉树数据结构
Java遍历JSON的N叉树数据结构原创 2022-08-15 12:19:47 · 1511 阅读 · 0 评论 -
Java中的ArrayList和LinkedList的区别
Java中的ArrayList和LinkedList的区别原创 2022-07-31 22:03:26 · 560 阅读 · 0 评论 -
Java和Vue项目打包并进行服务器部署
两周前我刚刚入职实习的时候,后端的几个同事看到我需要学习如何把项目进行部署,都围过来教我怎么部署,我感觉学习到了很多,因此,记录一下学习的笔记。当然了,这些部署是建立在已经配置好tomcat(后端服务器)和nginx(前端服务器)的基础之上的,因为公司之前已经做好了,我只需要迭代即可。...原创 2022-07-19 18:04:05 · 3453 阅读 · 2 评论 -
Caused by: java.io.IOException: The temporary upload location [......] is not valid
Caused by: java.io.IOException: The temporary upload location [......] is not valid原创 2022-07-14 17:25:00 · 750 阅读 · 0 评论 -
IDEA连接远程服务器Tomcat进行Debug调试
IDEA连接远程服务器Tomcat进行Debug调试原创 2022-07-14 09:34:42 · 3371 阅读 · 0 评论 -
哔哩哔哩(上海)开发实习生(Java方向)面试复盘和答案总结
上海B站Java开发实习生面试题汇总原创 2022-07-03 00:33:44 · 1473 阅读 · 3 评论 -
MyBatis查询报错:java.sql.SQLSyntaxErrorException: Unknown column ‘xxx_xxx_xxx‘ in ‘field list‘
MyBatis-Plus查询报错:java.sql.SQLSyntaxErrorException: Unknown column 'xxx_xxx_xxx' in 'field list'原创 2022-06-02 17:07:41 · 2220 阅读 · 0 评论 -
TCP协议和UDP协议的对比
TCP/IP体系结构是计算机网络的基础,那么TCP和UDP协议有什么区别呢?原创 2022-05-21 11:15:14 · 4193 阅读 · 0 评论 -
线程、进程、多线程和并发知识汇总
一、线程线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程。同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。一个进程可以有很多线程,每条线程并行执行不同的任务。在多核或多CPU,或支持Hyper-threading的CPU上使用多线程程序设计的好处是显而易见,即提高了程序的执行吞吐率。二、进程是什么进程(Process)是计算原创 2022-05-04 16:22:43 · 288 阅读 · 0 评论 -
MySQL插入中文数据时报错:Incorrect string value: ‘\xC8\xFD\xCC\xE5‘ 解决方案
最近在使用MySQL数据库的客户端来操作数据库的时候,我直接打开我电脑搜索里面的MySQL客户端来打开:结果直接在我插入中文数据的时候报错了:Incorrect string value: '\xC8\xFD\xCC\xE5' for column 'name' at row 1于是我在网上找了这个错误的解决方案,我发现需要修改MySQL的配置文件来修改字符编码:比如这个教程:https://blog.youkuaiyun.com/u013317172/article/details/82778785于原创 2022-04-26 16:30:11 · 2248 阅读 · 0 评论 -
SpringBoot整合MyBatis-Plus(MP)总结
在MyBatis-Plus(MP)技术出现之前,我们依旧需要自己写SQL语句来实现DAO层,但是MP技术出现之后,我们只需要在创建实体类的基础上使用MP来实现DAO层,加上SpringBoot可以很简单创建接口,使得Java后端开发变得非常简单。虽然在我学习的过程中,感觉MP技术很简单,但我真正动手去实现的时候,也出现了不少的问题,甚至让我卡了挺久,这让我明白了理论和实践相结合是一件非常重要的事情。原创 2022-04-17 21:54:36 · 9414 阅读 · 0 评论 -
C++标准库使用
标准库的数据结构stack#include<iostream>#include<stack>using namespace std;int main() { stack<int> s; s.push(3); s.push(7); s.push(1); cout << s.size() << endl; cout << s.top() << " "; s.pop(); cout <&原创 2022-04-01 19:58:04 · 515 阅读 · 0 评论 -
初等排序算法(图解+代码)
插入排序法输入示例:65 2 4 6 1 3输出示例:5 2 4 6 1 32 5 4 6 1 32 4 5 6 1 32 4 5 6 1 31 2 4 5 6 31 2 3 4 5 6#include<stdio.h>// 按照顺序输出数组元素void trace(int A[], int N){ int i; for(i = 0; i < N; i++){ // 在相邻元素直接输出一个空格 if(i > 0){ printf(原创 2022-03-12 21:48:59 · 1552 阅读 · 0 评论 -
基于Kali的一次DDos攻击实践
一、安装kali在kali的官网,我们可以下载kali的安装包镜像来安装kali(这个是下载最新的kali,当然了你也可以不下载最新的kali,毕竟最新的kali不是很稳定):https://www.kali.org/get-kali/#kali-platforms点击下载(可能要下载比较长时间,主要和自己的网络有关):我参考了这篇文章进行kali的安装:https://blog.youkuaiyun.com/weixin_44023403/article/details/111828686我按照这个博原创 2021-12-23 15:53:36 · 44358 阅读 · 32 评论 -
YOLOX原始论文精读
由于最近需要对YOLOX的理论部分进行深入的理解,因此我需要查看YOLOX的相关论文,但YOLOX是最近新出的目标检测算法,但我发现我无法查看YOLOX相关的见刊论文,因此我只能好好深入理解它的原始论文。但我的理解可能比较浅薄,希望各位大佬在查看这篇文章的时候可以及时纠正我的错误。以下是旷视科技所提供的YOLOX的GitHub开源代码:Pytorch版:https://github.com/Megvii-BaseDetection/YOLOXMegEngine版:https://github.com/原创 2021-11-20 01:51:03 · 13995 阅读 · 7 评论 -
yolox-nano训练和ncnn安卓部署总结(自己的数据集)
yolox_nano模型的参数量极小,并且有着一定的准确度而被使用到手机端的yolox部署:yolox_nano训练命令:python tools/train.py -f exps/example/yolox_voc/yolox_voc_nano.py -d 1 -b 8 -c weights/yolox_nano.pthyolox_nano.pth是官网下载的coco数据集的权重文件来做完这个预训练权重(我发现使用之前训练过的yolox_nano.pth其实也是可以的,这个不是主要问题,重要的是原创 2021-10-29 12:41:08 · 14919 阅读 · 43 评论 -
yolox_nano.pth转换yolox_nano.onnx文件报错:Missing key(s) & Unexpected key(s) in state_dict...(自己的数据集训练的模型)
最近我自己的电脑上面尝试训练yolox_s和yolox_nano模型,使用的都是我自己的数据集,只有1类,以下博客就是我自己环境配置、训练还有遇到的问题的过程,这些我都写在了一个博客上面:https://blog.youkuaiyun.com/ELSA001/article/details/120918082?spm=1001.2014.3001.5501这些问题我都一一解决了,但是我想要把训练好的yolox_nano.pth模型转换成yolox_nano.onnx文件,然后转换成ncnn相关的文件来部署到安卓机上原创 2021-10-27 13:22:29 · 1376 阅读 · 2 评论 -
yolox_nano如何训练,我的报错信息:exps/example/yolox_voc/yolox_voc_nano.py doesn‘t contains class named ‘Exp‘
我之前的环境配置和问题是这样的:https://blog.youkuaiyun.com/ELSA001/article/details/120918082?spm=1001.2014.3001.5502我在exps/example/yolox_voc/新建了一个文件yolox_voc_nano.py(不知道我这样做对不对):是根据exps\default\nano.py和exps/example/yolox_voc/yolox_voc.py基础上修改的:就是把nano.py的__init__函数替换成yolox原创 2021-10-23 20:20:18 · 2965 阅读 · 0 评论 -
YOLOX训练报错:FileNotFoundError: [Errno 2] No such file or directory: ‘yumi102.xml‘&the best AP is 0.00
刚刚在训练yolox_s模型的时候,遇到了如下错误:2021-10-23 10:19:46 | ERROR | yolox.core.launch:98 - An error has been caught in function 'launch', process 'MainProcess' (44024), thread 'MainThread' (540):FileNotFoundError: [Errno 2] No such file or directory: 'yumi102.xml原创 2021-10-23 13:26:45 · 6564 阅读 · 7 评论 -
YOLOX训练环境搭建问题总结
一、环境:OS:Windows 10显卡:GeForce RTX 3070 Laptop GPU,8GCUDA:11.1cudnn:8.0二、YOLOX环境配置:1、安装pytorch在Anaconda上,我使用torch_G作为环境名:conda create -n torch_G python=3.8安装成功后激活torch_G环境:conda activate torch_G在所创建的pytorch环境下安装pytorch版本, 执行命令:这里需要注意:我的CUDA版原创 2021-10-23 11:40:28 · 18539 阅读 · 55 评论 -
YOLOX训练:显存足够,但依旧CUDA out of memory(Tried to allocate 5.58 GiB,8.00 GiB total capacity,6.40 GiB free)
刚刚我尝试训练自己的yolox_s模型,但我batch_size不管改成多少,甚至改成1,都直接报CUDA out of memory,我很苦恼,这里明明显示我的显存是足够的,但是依旧OOM。训练命令如下:(mypytorch) E:\YOLOX>python tools/train.py -f exps/example/yolox_voc/yolox_voc_s_bm.py -d 1 -b 2 --fp16 -o -c weights/yolox_s.pth我在这里加载了GitHub的预训练原创 2021-10-20 22:59:35 · 20250 阅读 · 4 评论 -
Windows下安装labelImg详细过程(无法在Anaconda Prompt和Anaconda Navigator中安装labelImg)
最近要开始在我的新电脑上面使用labelImg来为图片打标签,但是我都无法在Anaconda Prompt和Anaconda Navigator中安装labelImg,在Anaconda Prompt中安装,即使用以下命令:pip install labelImg安装之后再使用以下命令来尝试打开labelImg:labelImg却显示:'labelImg' 不是内部或外部命令,也不是可运行的程序或批处理文件。但目前很多教程都是按照这个方法来下载labelImg的,而我无法下载,让我很难原创 2021-10-04 17:47:53 · 9868 阅读 · 8 评论 -
菜品识别系统(Faster-RCNN目标检测算法)
一、Faster-RCNN目标检测算法的介绍Faster-RCNN 算法由于其较高的检测准确率成为主流的目标检测算法之一,相比较 YOLO系列算法,Faster-RCNN 速度方面略显不足,平均检测精度(mAP)很高,它将 region proposal提取和 Fast-RCNN 部分融合进了一个网络模型 (区域生成网络 RPN 层)。算法大概可以分为特征提取层,区域建议层(RPN),ROIpooling(池化)层,分类与回归四个部分。具体执行步骤如下:(1)首先利用特征提取网络对输入进行特征提取原创 2021-08-30 16:26:55 · 10635 阅读 · 8 评论 -
使用labelimg制作VOC2007(2012)格式数据集
一、安装labelimg看到网上很多关于使用labelimg制作VOC格式数据集的方法,都让我在终端来使用pip install labelimg来安装,但我的环境很奇怪,每次都在终端安装了,但实际没有安装,这很有可能是我使用了Anaconda的原因,之前安装OpenCV的时候也是这样,我只能去Anaconda Navigator里面进行安装,具体也不知道为什么。这样就算安装好了labelimg。二、打开labelimg这时我们只需要打开Anaconda Prompt,然后使用activate t原创 2021-08-29 22:43:58 · 1002 阅读 · 0 评论 -
Faster-RCNN目标检测算法执行思路
我们一起来了解一下,Faster-RCNN执行思路目标检测算法执行思路是怎么样的。Faster-RCNN执行思路主要就是看懂这幅图,这幅图里面包含了非常非常多的内容,然后我们一起来梳理一下,这么多内容,它是怎么样进行连接的。我们首先来看,左上角的这幅图就是我们输入到Faster-RCNN的P×Q的原始图:这就是我们Faster-RCNN的一个输入,当这样一张图片输入到我们这个Faster-RCNN的时候,首先要进行一个resize,把它的最小边固定到600,然后它的长宽比是保持不变的,这样的话,我们原创 2021-08-29 19:03:35 · 3398 阅读 · 0 评论 -
使用TensorFlow训练自己的图片并应用(CNN卷积神经网络)
一、环境配置Anaconda:4.10.3Python:3.6.2TensorFlow:1.9.0二、图片准备在这个小项目中,我们首先需要自己在网上收集四类图片(每类图片30张,一共120张),这些图片的格式最好是统一的JPG格式,对于分辨率来说没有特定的要求,我们的项目在预处理中可以进行分辨率统一化的预处理(也就是把每一张图片变成一样的分辨率64*64)。不过要根据你自己的目录把图片放在上面,不然代码可是找不到的。我把图片放在了如图这个地方。每一张图片都需要整理分类到每一个文件夹中,程序原创 2021-08-14 16:22:26 · 14140 阅读 · 30 评论