【Deeplabv3+】Ubutu18.04中使用pytorch复现Deeplabv3+第三步)-----CityscapesScripts生成自己的标签
本文是在前面两篇文章的基础上,讲解如何更改训练数据集颜色,需要与前面两篇文章连起来看。
本文用于修改cityscapes数据集的标签颜色与Semankitti数据集的标签一致,对修改后的数据集进行训练。需要下载两个开发工具包和一个数据集,分别是cityscapesScripts-master、semantic-kitti-api-master和cityscapes数据集:
- cityscapesScripts是用于检查、准备和评估 Cityscapes 数据集的脚本。下载路径:
https://github.com/mcordts/cityscapesScripts
- cityscapes数据集需要注册登录才能下载,下载链接:
Login – Cityscapes Dataset
下载完成后,在cityscapesScripts-master中创建一个cityscapes文件夹,将下载好的两个文件分别放入其中,解压出来的说明文件直接删除即可,最终如下图:
- semantic-kitti-api是用于打开、可视化、处理和评估 SemanticKITTI 数据集中的点云和标签结果的帮助程序脚本。下载路径:
https://github.com/PRBonn/semantic-kitti-api
一、制作标签步骤
1.1 更改标签颜色
进入目录cityscapesScripts-master\cityscapesscripts\helpers\labels.py中修改标签颜色与semantic-kitti-api-master\config\semanic-kitti.yaml中一致。注意:semantic-kitti-api-maste中的颜色是BGR颜色,cityscapesScripts中的颜色是RGB颜色,颠倒一下
cityscapesScripts-master\cityscapesscripts\helpers\labels.py标签:
semantic-kitti-api-master\config\semanic-kitti.yaml标签:
修改后的cityscapesScripts-master\cityscapesscripts\helpers\labels.py标签,可以直接拷贝使用:
labels = [# name id trainId category catId hasInstances ignoreInEval colorLabel( 'unlabeled' , 0 , 255 , 'void' , 0 , False , True , ( 0, 0, 0) ),Label( 'ego vehicle' , 1 , 255 , 'void' , 0 , False , True , ( 0, 0, 0) ),Label( 'rectification border' , 2 , 255 , 'void' , 0 , False , True , ( 0, 0, 0) ),Label( 'out of roi' , 3 , 255 , 'void' , 0 , False , True , ( 0, 0, 0) ),Label( 'static' , 4 , 255 , 'void' , 0 , False , True , ( 0, 0, 0) ),Label( 'dynamic' , 5 , 255 , 'void' , 0 , False , True , (111, 74, 0) ),
# Label( 'ground' , 6 , 255 , 'void' , 0 , False , True , ( 81, 0, 81) ),Label( 'ground' , 6 , 255 , 'void' , 0 , False , True , ( 175, 0, 75) ),
# Label( 'road' , 7 , 0 , 'flat' , 1 , False , False , (128, 64,128) ),Label( 'road' , 7 , 0 , 'flat' , 1 , False , False , (255, 0,255) ),
# Label( 'sidewalk' , 8 , 1 , 'flat' , 1 , False , False , (244, 35,232) ),Label( 'sidewalk' , 8 , 1 , 'flat' , 1 , False , False , (75, 0,75) ),
# Label( 'parking' , 9 , 255 , 'flat' , 1 , False , True , (250,170,160) ),Label( 'parking' , 9 , 255 , 'flat' , 1 , False , True , (255,150,255) ),
# Label( 'rail track' , 10 , 255 , 'flat' , 1 , False , True , (230,150,140) ),Label( 'rail track' , 10 , 255 , 'flat' , 1 , False , True , (0,0,255) ),
# Label( 'building' , 11 , 2 , 'construction' , 2 , False , False , ( 70, 70, 70) ),Label( 'building' , 11 , 2 , 'construction' , 2 , False , False , ( 255, 200, 0) ),
# Label( 'wall' , 12 , 3 , 'construction' , 2 , False , False , (102,102,156) ),Label( 'wall' , 12 , 3 , 'construction' , 2 , False , False , (255,150,0) ),
# Label( 'fence' , 13 , 4 , 'construction' , 2 , False , False , (190,153,153) ),Label( 'fence' , 13 , 4 , 'construction' , 2 , False , False , (255,120,50) ),
# Label( 'guard rail' , 14 , 255 , 'construction' , 2 , False , True , (180,165,180) ),Label( 'guard rail' , 14 , 255 , 'construction' , 2 , False , True , (255,150,0) ),
# Label( 'bridge' , 15 , 255 , 'construction' , 2 , False , True , (150,100,100) ),Label( 'bridge' , 15 , 255 , 'construction' , 2 , False , True , (255,150,0) ),
# Label( 'tunnel' , 16 , 255 , 'construction' , 2 , False , True , (150,120, 90) ),Label( 'tunnel' , 16 , 255 , 'construction' , 2 , False , True , (255,150, 0) ),
# Label( 'pole' , 17 , 5 , 'object' , 3 , False , False , (153,153,153) ),Label( 'pole' , 17 , 5 , 'object' , 3 , False , False , (255,240,150) ),
# Label( 'polegroup' , 18 , 255 , 'object' , 3 , False , True , (153,153,153) ),Label( 'polegroup' , 18 , 255 , 'object' , 3 , False , True , (50,255,255) ),
# Label( 'traffic light' , 19 , 6 , 'object' , 3 , False , False , (250,170, 30) ),Label( 'traffic light' , 19 , 6 , 'object' , 3 , False , False , (50,255, 255) ),
# Label( 'traffic sign' , 20 , 7 , 'object' , 3 , False , False , (220,220, 0) ),Label( 'traffic sign' , 20 , 7 , 'object' , 3 , False , False , (255,0, 0) ),
# Label( 'vegetation' , 21 , 8 , 'nature' , 4 , False , False , (107,142, 35) ),Label( 'vegetation' , 21 , 8 , 'nature' , 4 , False , False , (0,175, 0) ),
# Label( 'terrain' , 22 , 9 , 'nature' , 4 , False , False , (152,251,152) ),Label( 'terrain' , 22 , 9 , 'nature' , 4 , False , False , (150,240,80) ),
# Label( 'sky' , 23 , 10 , 'sky' , 5 , False , False , ( 70,130,180) ),Label( 'sky' , 23 , 10 , 'sky' , 5 , False , False , ( 0,0,0) ),
# Label( 'person' , 24 , 11 , 'human' , 6 , True , False , (220, 20, 60) ),Label( 'person' , 24 , 11 , 'human' , 6 , True , False , (255, 30, 30) ),
# Label( 'rider' , 25 , 12 , 'human' , 6 , True , False , (255, 0, 0) ),Label( 'rider' , 25 , 12 , 'human' , 6 , True , False , (255, 40, 200) ),
# Label( 'car' , 26 , 13 , 'vehicle' , 7 , True , False , ( 0, 0,142) ),Label( 'car' , 26 , 13 , 'vehicle' , 7 , True , False , ( 100, 150,245) ),
# Label( 'truck' , 27 , 14 , 'vehicle' , 7 , True , False , ( 0, 0, 70) ),Label( 'truck' , 27 , 14 , 'vehicle' , 7 , True , False , ( 80, 30, 180) ),
# Label( 'bus' , 28 , 15 , 'vehicle' , 7 , True , False , ( 0, 60,100) ),Label( 'bus' , 28 , 15 , 'vehicle' , 7 , True , False , ( 100, 80,250) ),
# Label( 'caravan' , 29 , 255 , 'vehicle' , 7 , True , True , ( 0, 0, 90) ),Label( 'caravan' , 29 , 255 , 'vehicle' , 7 , True , True , ( 0, 0, 255) ),
# Label( 'trailer' , 30 , 255 , 'vehicle' , 7 , True , True , ( 0, 0,110) ),Label( 'trailer' , 30 , 255 , 'vehicle' , 7 , True , True , ( 0, 0,255) ),
# Label( 'train' , 31 , 16 , 'vehicle' , 7 , True , False , ( 0, 80,100) ),Label( 'train' , 31 , 16 , 'vehicle' , 7 , True , False , ( 0, 0,255) ),
# Label( 'motorcycle' , 32 , 17 , 'vehicle' , 7 , True , False , ( 0, 0,230) ),Label( 'motorcycle' , 32 , 17 , 'vehicle' , 7 , True , False , ( 30, 60,150) ),
# Label( 'bicycle' , 33 , 18 , 'vehicle' , 7 , True , False , (119, 11, 32) ),Label( 'bicycle' , 33 , 18 , 'vehicle' , 7 , True , False , (100, 230, 245) ),
# Label( 'license plate' , -1 , -1 , 'vehicle' , 7 , False , True , ( 0, 0,142) ),Label( 'license plate' , -1 , -1 , 'vehicle' , 7 , False , True , ( 0, 0,255) ),
]
1.2 生成训练标签
1.2.1 生成labelIds标签
进入目录:cityscapesScripts-master\cityscapesscripts\preparation中
运行下面代码:
# 运行成功后会在cityscapes数据集中生成_labelTrainIds结尾的训练文件python .\createTrainIdLabelImgs.py
此时进入cityscapesScripts-master\cityscapes\gtFine\train中任何一个城市,会发现多了一个修改好的训练标签(gtFine中test、train和val中均多了一个训练标签,不一一展示):
2.2 生成instanceIds标签
进入目录:cityscapesScripts-master\cityscapesscripts\preparation中
运行下面代码
# # 运行成功后会在cityscapes数据集中生成_instanceTrainIds结尾的训练文件
python .\createTrainIdInstanceImgs.py
此时进入cityscapesScripts-master\cityscapes\gtFine\train中任何一个城市,会发现多了一个另一个实例训练标签,(gtFine中test、train和val中均多了一个训练标签,不一一展示):
2.3 修改DeepLabV3Plus-Pytorch中datasets\cityscapes.py中RGB值
训练之前,修改datasets\cityscapes.py文件中标签RGB值与cityscapesScripts-master中一致,可直接使用:
修改好的标签代码如下:
CityscapesClass = namedtuple('CityscapesClass', ['name', 'id', 'train_id', 'category', 'category_id','has_instances', 'ignore_in_eval', 'color'])classes = [CityscapesClass('unlabeled', 0, 255, 'void', 0, False, True, (0, 0, 0)),CityscapesClass('ego vehicle', 1, 255, 'void', 0, False, True, (0, 0, 0)),CityscapesClass('rectification border', 2, 255, 'void', 0, False, True, (0, 0, 0)),CityscapesClass('out of roi', 3, 255, 'void', 0, False, True, (0, 0, 0)),CityscapesClass('static', 4, 255, 'void', 0, False, True, (0, 0, 0)),CityscapesClass('dynamic', 5, 255, 'void', 0, False, True, (111, 74, 0)),# CityscapesClass('ground', 6, 255, 'void', 0, False, True, (81, 0, 81)),CityscapesClass('ground', 6, 255, 'void', 0, False, True, (175, 0, 75)),# CityscapesClass('road', 7, 0, 'flat', 1, False, False, (128, 64, 128)),CityscapesClass('road', 7, 0, 'flat', 1, False, False, (255, 0, 255)),# CityscapesClass('sidewalk', 8, 1, 'flat', 1, False, False, (244, 35, 232)),CityscapesClass('sidewalk', 8, 1, 'flat', 1, False, False, (75, 0, 75)),# CityscapesClass('parking', 9, 255, 'flat', 1, False, True, (250, 170, 160)),CityscapesClass('parking', 9, 255, 'flat', 1, False, True, (255, 150, 255)),# CityscapesClass('rail track', 10, 255, 'flat', 1, False, True, (230, 150, 140)),CityscapesClass('rail track', 10, 255, 'flat', 1, False, True, (0, 0, 255)),# CityscapesClass('building', 11, 2, 'construction', 2, False, False, (70, 70, 70)),CityscapesClass('building', 11, 2, 'construction', 2, False, False, (255, 200, 0)),# CityscapesClass('wall', 12, 3, 'construction', 2, False, False, (102, 102, 156)),CityscapesClass('wall', 12, 3, 'construction', 2, False, False, (255, 150, 0)),# CityscapesClass('fence', 13, 4, 'construction', 2, False, False, (190, 153, 153)),CityscapesClass('fence', 13, 4, 'construction', 2, False, False, (255, 120, 50)),# CityscapesClass('guard rail', 14, 255, 'construction', 2, False, True, (180, 165, 180)),CityscapesClass('guard rail', 14, 255, 'construction', 2, False, True, (255, 150, 0)),# CityscapesClass('bridge', 15, 255, 'construction', 2, False, True, (150, 100, 100)),CityscapesClass('bridge', 15, 255, 'construction', 2, False, True, (255, 150, 0)),# CityscapesClass('tunnel', 16, 255, 'construction', 2, False, True, (150, 120, 90)),CityscapesClass('tunnel', 16, 255, 'construction', 2, False, True, (255, 150, 0)),# CityscapesClass('pole', 17, 5, 'object', 3, False, False, (153, 153, 153)),CityscapesClass('pole', 17, 5, 'object', 3, False, False, (255, 240, 150)),# CityscapesClass('polegroup', 18, 255, 'object', 3, False, True, (153, 153, 153)),CityscapesClass('polegroup', 18, 255, 'object', 3, False, True, (50, 255, 255)),# CityscapesClass('traffic light', 19, 6, 'object', 3, False, False, (250, 170, 30)),CityscapesClass('traffic light', 19, 6, 'object', 3, False, False, (50, 255, 255)),# CityscapesClass('traffic sign', 20, 7, 'object', 3, False, False, (220, 220, 0)),CityscapesClass('traffic sign', 20, 7, 'object', 3, False, False, (255, 0, 0)),# CityscapesClass('vegetation', 21, 8, 'nature', 4, False, False, (107, 142, 35)),CityscapesClass('vegetation', 21, 8, 'nature', 4, False, False, (0, 175, 0)),# CityscapesClass('terrain', 22, 9, 'nature', 4, False, False, (152, 251, 152)),CityscapesClass('terrain', 22, 9, 'nature', 4, False, False, (150, 240, 80)),# CityscapesClass('sky', 23, 10, 'sky', 5, False, False, (70, 130, 180)),CityscapesClass('sky', 23, 10, 'sky', 5, False, False, (0, 0, 0)),# CityscapesClass('person', 24, 11, 'human', 6, True, False, (220, 20, 60)),CityscapesClass('person', 24, 11, 'human', 6, True, False, (255, 30, 30)),# CityscapesClass('rider', 25, 12, 'human', 6, True, False, (255, 0, 0)),CityscapesClass('rider', 25, 12, 'human', 6, True, False, (255, 40, 200)),# CityscapesClass('car', 26, 13, 'vehicle', 7, True, False, (0, 0, 142)),CityscapesClass('car', 26, 13, 'vehicle', 7, True, False, (100, 150, 245)),# CityscapesClass('truck', 27, 14, 'vehicle', 7, True, False, (0, 0, 70)),CityscapesClass('truck', 27, 14, 'vehicle', 7, True, False, (80, 30, 180)),# CityscapesClass('bus', 28, 15, 'vehicle', 7, True, False, (0, 60, 100)),CityscapesClass('bus', 28, 15, 'vehicle', 7, True, False, (100, 80, 250)),# CityscapesClass('caravan', 29, 255, 'vehicle', 7, True, True, (0, 0, 90)),CityscapesClass('caravan', 29, 255, 'vehicle', 7, True, True, (0, 0, 255)),# CityscapesClass('trailer', 30, 255, 'vehicle', 7, True, True, (0, 0, 110)),CityscapesClass('trailer', 30, 255, 'vehicle', 7, True, True, (0, 0, 255)),# CityscapesClass('train', 31, 16, 'vehicle', 7, True, False, (0, 80, 100)),CityscapesClass('train', 31, 16, 'vehicle', 7, True, False, (0, 0, 255)),# CityscapesClass('motorcycle', 32, 17, 'vehicle', 7, True, False, (0, 0, 230)),CityscapesClass('motorcycle', 32, 17, 'vehicle', 7, True, False, (30, 60, 150)),# CityscapesClass('bicycle', 33, 18, 'vehicle', 7, True, False, (119, 11, 32)),CityscapesClass('bicycle', 33, 18, 'vehicle', 7, True, False, (100, 230, 245)),CityscapesClass('license plate', -1, 255, 'vehicle', 7, False, True, (0, 0, 255)),]
更改完成后,在DeepLabV3Plus-Pytorch-master中训练,即可得到训练后的新结果:
相关文章:

【Deeplabv3+】Ubutu18.04中使用pytorch复现Deeplabv3+第三步)-----CityscapesScripts生成自己的标签
本文是在前面两篇文章的基础上,讲解如何更改训练数据集颜色,需要与前面两篇文章连起来看。 本文用于修改cityscapes数据集的标签颜色与Semankitti数据集的标签一致,对修改后的数据集进行训练。需要下载两个开发工具包和一个数据集࿰…...
《动手学深度学习(PyTorch版)》笔记3.3
注:书中对代码的讲解并不详细,本文对很多细节做了详细注释。另外,书上的源代码是在Jupyter Notebook上运行的,较为分散,本文将代码集中起来,并加以完善,全部用vscode在python 3.9.18下测试通过。…...

OpenGL ES 渲染 NV21、NV12 格式图像有哪些“姿势”?
使用2个纹理实现 NV21 格式图像渲染 前文提到渲染 NV21 格式图像需要使用 2 个纹理,分别用于保存 Y plane 和 UV plane 的数据,然后在片段着色器中分别对 2 个纹理进行采样,转换成 RGB 数据。 OpenGLES 渲染 NV21或 NV12 格式图像需要用到 GL_LUMINANCE 和 GL_LUMINANCE_A…...
P8813 [CSP-J 2022] 乘方 题解
目录 题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 提示题目简化题目思路AC 代码 观前提示,此题解解法非正解,仅仅是卡过数据才 A C AC AC 的。正解请参考他人博客。 题目描述 小文同学刚刚接触了信息学竞赛…...
Ubuntu 常用命令、docker 常用命令、unzip常用命令、tar常用命令
ubuntu 常用命令: 进入管理员模式: sudo su退出管理员模式: su <用户名>重启系统: rebootubuntu 复制文件夹下文件到其他文件夹下 cp -r source_folder/* destination_folder/删除文件夹下内容而不删除自身(进入到目录…...

保护医疗数据不受威胁:MPLS专线在医疗网络安全中的角色
随着数字技术的快速发展,医疗行业正在经历一场革命。从电子健康记录到远程医疗服务,数字化不仅提高了效率,也带来了前所未有的挑战--尤其是关于数据安全和隐私保护的挑战。在这样的背景下,如何确保敏感的医疗数据安全传输…...
Java面试题夺命连环问
如何实现一个ioc容器 配置文件配置包扫码路径递归包扫描获取.class文件反射确定需要 交给IOC管理的类对需要注入的类进行依赖注入 配置文件中指定需要扫描的包路径 定义一些注解,分别表示访问控制层,业务服务层,数据持久层,依赖…...
华为策略路由+NQA配置
---NQA--- [RouterA] nqa test-instance admin NQA [RouterA-nqa-admin-vlan10] test-type icmp [RouterA-nqa-admin-vlan10] destination-address ipv4 对方地址 [RouterA-nqa-admin-vlan10] frequency 10 [RouterA-nqa-admin-vlan10] probe-count 2 [RouterA-nqa-admin-vlan…...
逆置字符串
将字符串逆序,比如输入abcd,返回dcba void reverse(char*left,char *right) { while (right>left) { char temp *left; *left *right; *right temp; right--; left; } } int main() { char arr[100] { 0 };//定义…...

第九节HarmonyOS 常用基础组件14-DataPanel
1、描述 数据面板组件,用于将多个数据占比情况使用占比图进行展示。 2、接口 DataPanel(options:{values: number[], max?: numner, type?: DataPanelType}) 3、参数 参数名 参数类型 必填 描述 values number[] 是 数据值列表,最多含9条数…...

Vue开发之proxy代理的配置(附带uniapp代理配置)
vue 1.在vue.config.js中添加 devServer 属性中配置 proxy 属性 module.exports {productionSourceMap: false,publicPath: /,devServer: {port: 8085,proxy: {/api/admin: {target: http://10.58.104.70:6111,changeOrigin: true,pathRewrite: {/api/: /}},/api: {target: …...

【数据分享】2023年我国省市县三级的公司企业数量(21类公司企业/Excel/Shp格式)
医药公司、建筑公司、电信公司等公司企业的数量是一个城市生命力的重要体现,一个城市的公司企业种类越丰富,数量越多,通常能表示这个城市的生命力越旺盛! 本次我们为大家带来的是我国各省份、各地级市、各区县三个层级的公司企业…...

6JS对象
6.1对象简介 对象是JavaScript的基本数据类型。对象是一种复合值:它将很多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值。对象也可看做是属性的无序集合,每个属性都是一个名/值对。属性名是字符串…...

粒子群算法求解港口泊位调度问题(MATLAB代码)
粒子群算法(Particle Swarm Optimization,PSO)是一种基于群体智能的优化算法,它通过模拟鸟群或鱼群的行为来寻找最优解。在泊位调度问题中,目标是最小化所有船只在港时间的总和,而PSO算法可以帮助我们找到一…...
idea控制台出现乱码的解决方案
概述:有时候控制台的关键说明出现乱码,就很令人烦恼 在 IntelliJ IDEA 中出现控制台乱码通常是由于编码设置不正确或者字体显示问题导致的。以下是一些可能的解决方案: 1. 设置项目编码 确保你的项目编码设置正确: 在 Intelli…...
R语言【taxlist】——summary(),show(),print():打印taxlist对象及其内容的概述
Package taxlist version 0.2.4 Description 一种方法,用于显示 taxlist 对象内容的概述或所选分类组的概述。 Usage ## S4 method for signature taxlist summary(object,ConceptID,units "Kb",check_validity TRUE,display "both",maxs…...

【深度学习】sdxl中的 text_encoder text_encoder_2 区别
镜像问题是:https://editor.csdn.net/md/?articleId135867689 代码仓库: https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/tree/main 截图: 为什么有两个CLIP编码器 text_encoder 和 text_encoder_2 ? 在…...

上位机图像处理和嵌入式模块部署(python opencv)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们谈到了qt,谈到了opencv,也谈到了嵌入式,但是没有说明python在这个过程当中应该扮演什么样的角色。open…...

父元素flex:1 高度却被子元素撑开的问题
问题 当父元素设置了flex: 1; 的情况下,想在其中子元素超出父元素高度的情况下,产生滚动条,在父元素区域滚动。由于子元素高度不固定,故父元素设置为display: flex; flex-direction: column; 子元素设置flex: 1; overflow: auto;…...

【LUA】mac状态栏添加天气
基于网络上的版本修改的,找不到出处了。第一个摸索的lua脚本,调了很久。 主要修改:如果风速不大,就默认不显示,以及调整为了一些格式 local urlApi http://.. --这个urlApi去申请个免费的就可以了 然后打开对应的json…...

网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...

微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

Redis数据倾斜问题解决
Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中,部分节点存储的数据量或访问量远高于其他节点,导致这些节点负载过高,影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...

云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分: 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...