当前位置: 首页 > news >正文

实验十三 生态安全评价

1 背景及目的

        生态安全是生态系统完整性和健康性的整体反映,完整健康的生态系统具有调节气候净化污染、涵养水源、保持水土、防风固沙、减轻灾害、保护生物多样性等功能。维护生态安全对于人类生产、生活、健康及可持续发展至关重要。随着城市化进程的不断推进,生态系统受到来自人类社会日益严重的威胁,保障生态安全作为迫切的社会需求已经成为人类社会可持续发展面临的新主题。因此,对区域生态安全水平进行评价,为改善区域生态问题的对策与措施提供参考具有重要的现实意义。

       通过本实验希望能够达到以下目的:

       ①掌握生态安全评价指标体系的构建与计算

       ②掌握景观指数移动窗口计算方法

       ③掌握突变模型在指标集成中的应用

2 实验步骤

2.1 数据的预处理

2.1.1 设置工作空间

添加数据:

地理处理-->环境设置:

对工作空间进行设置主要为方便管理过程中产生的数据,也方便自己找得到想要用的数据,更改到当前实验文件夹:

2.1.2 栅格数据的统一处理:栅格重采样

数据管理工具-->栅格--栅格处理-->重采样

这一步骤的作用在于本实验的统一栅格数据为10000m精度,但原数据土地利用数据为30m,因此采用重采样工具对土地利用数据进行处理,将分辨率更改为1000×1000:

2.2 生态服务能力指标计算

不同土地利用类型对应不同生态服务价值系数,利用重分类工具更改栅格中的值:

Spatial Analyst 工具-->重分类-->重分类

更改后如图:

2.3 生态敏感性指标计算

2.3.1 距道路距离的计算

Spatial Analyst 工具-->距离-->欧氏距离

在环境中对输出范围和坐标系进行设置:

结果(我也不懂为什么图是歪的):

以区域面数据为范围对得到的距道路距离栅格进行提取:

Spatial Analyst 工具-->提取分析-->按掩膜提取:

2.3.2 距城市距离

这一步骤可以得到土地利用的矢量数据,转换工具-->由栅格转出-->栅格转面:

右键打开土地利用类型的属性表,按属性筛选出对应值为80的数据:

将刚才选中的数据导出:

对图层进行编辑:

 选择面积较大的部分作为城市区域,再将其他区域进行删除,最后保存编辑结果:

打开建设用地属性表,刚才选择的地区都会进行高亮显示,然会选择结果进行反选删除不要的数据:

继续利用欧氏距离和按掩膜提取将处理过的建设用地设为输入栅格数据,得出距城市距离栅格数据结果:

结果:

右键属性调整一下色带:

结果:

2.3.3 植被覆盖

对土地利用数据进行重分类:Spatial Analyst 工具-->重分类-->重分类

结果:

 2.3.4 坡度

Spatial Analyst 工具-->表面分析-->坡度

结果:

右键土地利用,导出数据:

2.4 生态组织架构

打开fragstats,把上一步生成的文件导入:

 

创建一个记事本文件,文件后缀为fcd,输入如下内容,老实英文状态下手敲,不要文字识别,容易后面运行报错:

导入:

 设置分析参数:

勾选景观指数:

 

 

运行:

 报错了,查看下日志:

Error: No level selected for the analysis, please select at least one level.

提示没有为分析选择级别,倒回去看步骤,发现确实少勾选每一个条件:

再次运行,成功了,系统字自动生成一个文件夹:

文件位置: 

由于在Fragstats中空值会显示为-999,为不影响归一化结果,需要用“栅格计算器将空值去除

先把Fragstats中生成的6个景观指数加载进ArcMap:

利用栅格计算器去除计算出现的异常值:

Spatial Analyst 工具-->地图代数-->栅格计算器

 另外五个都是同样的操作:

2.5 突变模型

利用突变模型对指标体系进行架构

2.5.1 剔除水体

打开土地利用类型属性表,筛选出水体对应值为60的:

右键图层将水体数据导出:

取消上一步的选择:

使用分析工具中的擦除,将水体数据从土地利用数据中擦除:

分析工具-->叠加分析-->擦除

利用区域面的范围对得到的土地利用类型进行裁剪:

分析工具-->提取分析-->裁剪

批量处理14个指标数据--->按掩膜提取

Spatial Analyst 工具-->提取分析-->按掩膜提取

2.5.2 指标归一化

打开python:

写入代码前需要知道哪些是正向指标,哪些是负向指标,二者代码存在区别:

 

我按上图顺序将代码附上:

注意正向指标与负向指标的公式语句存在差别,代码我也分开放了:

//1 NDVI1  正向
import arcpy
from arcpy import env
from arcpy.sa import *rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_NDVI1.tif"//需要归一化的数据所在位置,一定是上一步进行掩膜提取后的数据
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\NDVI.tif"//归一化后的数据存放位置maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:0.89999997615814    原栅格最小值:0.11599999666214//2 NPP2  正向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_NPP2.tif"//NNP2
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\NPP2.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:2049.6000976563  原栅格最小值:0//3 生态服务价值   正向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_Land_se1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\生态服务价值.tif" maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:3149   原栅格最小值:0//4 距城市距离   正向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_城市距离掩膜提1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\距城市距离.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:60373.8359375   原栅格最小值:0//5 距道路距离   正向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_Extract1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\距道路距离.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:20396.078125   原栅格最小值:0//6 植被覆盖   正向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_植被覆盖1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\植被覆盖.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:4   原栅格最小值:0//14 斑块连通度 正向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_斑块连接度co1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\斑块连通度.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(Raster(rawRaster)-float(minValue))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:100    原栅格最小值:20.166975021362

//7 降雨量   负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_降雨量1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\降雨量.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:13948.84375    原栅格最小值:11076.044921875//8 坡度   负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_Slope_D1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\坡度.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:30.61713218689    原栅格最小值:0//9 斑块密度   负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_板块破碎度1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\斑块密度.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!"
//我的结果:原栅格最大值:0.77777779102325    原栅格最小值:0.11111111193895//10 边缘密度   负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_边缘密度ED1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\边缘密度.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!" 
//我的结果:原栅格最大值:13.333333015442   原栅格最小值:0//11 面积加权平均形状指数  负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_面积平均加权形1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\面积加权平均形状指数.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!" 
//我的结果:原栅格最大值:2   原栅格最小值:1//12 香农多样性指数   负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_香农多样性SH1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\香农多样性.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!" 
//我的结果:原栅格最大值:1.6769877672195   原栅格最小值:0//13 斑块平均距离 负向
import arcpy
from arcpy import env
from arcpy.sa import *
rawRaster="E:\\DengSL zuoye\\exp13\\exp13\\data_exp13\\Extract_斑块平均距离E1.tif"
NormalizedRasterpath="E:\\DengSL zuoye\\exp13\\guiyihua\\斑块平均距离.tif"
maxValueDS=arcpy.GetRasterProperties_management(rawRaster,"MAXIMUM")
maxValue=maxValueDS.getOutput(0)
print"原栅格最大值:"+str(maxValue)
minValueDS=arcpy.GetRasterProperties_management(rawRaster,"MINIMUM")
minValue=minValueDS.getOutput(0)
print"原栅格最小值:"+str(minValue)
NormalizedRaster=(float(maxValue)-Raster(rawRaster))/(float(maxValue)-float(minValue))
NormalizedRaster.save(NormalizedRasterpath)
print"归一化成功!" 
//我的结果:原栅格最大值:2828.4272460938    原栅格最小值:0

2.5.3 突变模型

突变模型对于不同数量变量有不同的归一化公式

观察上面两个图,先算B级指数,即活力B1、经济压力B3、自然生态B4、景观破碎度B5、景观连通度B6。

如何去计算这几个指数?则根据指标数量(控制变量数量)来带入公式,此处以景观破碎都B5为例,由图可知景观破碎度B5具有斑块密度C9、边缘密度C10、面颊加权平均形状指数C11、香浓多样性指数C12这四个控制变量,那么带入的公式为:

              (Power(x_{1},0.5)+Power(x_{2},0.333)+Power(x_{3},0.25)+Power(x_{4},0.2))/4

接下来打开栅格计算器:

Spatial Analyst 工具-->地图代数-->栅格计算器

结果:

以此类推得活力B1:

社会经济压力B3:

自然生态B4:

景观连通度B6:

生态服务能力:

 生态敏感性A2:

生态安全指数:

所有数据计算完毕,调整细节出图:

相关文章:

实验十三 生态安全评价

1 背景及目的 生态安全是生态系统完整性和健康性的整体反映,完整健康的生态系统具有调节气候净化污染、涵养水源、保持水土、防风固沙、减轻灾害、保护生物多样性等功能。维护生态安全对于人类生产、生活、健康及可持续发展至关重要。随着城市化进程的不断推进&…...

二级等保要求及设备有哪些?

《网络安全法》规定我国信息系统实际等级保护制度,不同等保等级要求不同: 二级等保(指导保护级):等级保护对象受到破坏后,会对公民、法人和其他组织的合法权益产生严重损害,或者对社会秩序和公…...

无人机的动力系统节能——CKESC电调小课堂12

1.优化电机和螺旋桨配置 精准匹配:根据无人机的设计用途和负载要求,精确选择电机和螺旋桨。确保电机的功率、扭矩等参数与螺旋桨的尺寸、螺距等完美匹配。例如,对于轻型航拍无人机,选用功率合适的小尺寸电机搭配高效的小螺旋桨&a…...

人机打怪小游戏(非常人机)

按q攻击 按箭头进行控制 玩家是 怪是* 攻击是^ ​ ​ #include<bits/stdc.h> #include<Windows.h> #include<conio.h> #define fr(i,a,b) for(int ia;i<b;i) #define rd(a,b) rand()%(b-a1)a using namespace std; int x16,y21,dx[4]{-1,0,1,0},dy[4]{0,…...

SpringBoot 集成 Sharding-JDBC(一):数据分片

在深入探讨 Sharding-JDBC 之前&#xff0c;建议读者先了解数据库分库分表的基本概念和应用场景。如果您还没有阅读过相关的内容&#xff0c;可以先阅读我们之前的文章&#xff1a; 关系型数据库海量数据存储策略-CSDN博客 这篇文章将帮助您更好地理解分库分表的基本原理和实现…...

django-ninja 实现cors跨域请求

要在Django-Ninja项目中实现跨域&#xff08;CORS&#xff09;&#xff0c;你可以使用django-cors-headers库&#xff0c;这是一个专门用于处理跨域资源共享&#xff08;CORS&#xff09;问题的Django应用程序。以下是具体的步骤和配置&#xff1a; 安装依赖&#xff1a; 使用p…...

【论文阅读】InstructPix2Pix: Learning to Follow Image Editing Instructions

摘要&#xff1a; 提出了一种方法&#xff0c;用于教导生成模型根据人类编写的指令进行图像编辑&#xff1a;给定一张输入图像和一条书面指令&#xff0c;模型按照指令对图像进行编辑。 由于为此任务获取大规模训练数据非常困难&#xff0c;我们提出了一种生成配对数据集的方…...

常用在汽车PKE无钥匙进入系统的高度集成SOC芯片:CSM2433

CSM2433是一款集成2.4GHz频段发射器、125KHz接收器和8位RISC&#xff08;精简指令集&#xff09;MCU的SOC芯片&#xff0c;用在汽车PKE无钥匙进入系统里。 什么是汽车PKE无钥匙进入系统&#xff1f; 无钥匙进入系统具有无钥匙进入并且启动的功能&#xff0c;英文名称是PKE&…...

【第四课】rust声明式宏理解与实战

目录 前言 理解宏 实战宏 前言 上一课在介绍vector时&#xff0c;我们再一次提到了rust中的宏&#xff0c;在初始化vector时使用了vec!宏&#xff0c;当时补了一句有机会会好好说明一下rust中的宏&#xff0c;并且写一个hashmap宏来初始化hashmap。想了想一直介绍基本语法还…...

渗透测试--Linux下的文件传输方法

渗透测试过程中&#xff0c;我们经常会需要文件传输&#xff0c;本文主要探讨Linux主机上我们对文件传输的方法。 编码方式 Linux 检查MD5 md5sum id_rsa Linux Base64 编码/解码 编码 cat id_rsa |base64 -w 0;echo 解码 echo -n LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVE…...

浅议Flink中的通讯工具: Akka

在Flink中&#xff0c;各个组件之间需要频繁交换数据和控制信息。Flink选择了基于Actor模型的Akka框架作为通信基础。 Akka是什么 Actor模型 Actor模型是用于单个进程中并发的场景。 在Actor模型中&#xff1a; ActorSystem负责管理actor生命周期 将每个实体视为独立的 Ac…...

基于YOLOv8深度学习的独居老人情感状态监护系统(PyQt5界面+数据集+训练代码)

本研究提出了一种创新的独居老人情感状态监护系统&#xff0c;基于YOLOV8深度学习模型&#xff0c;旨在通过对老年人面部表情的实时监测与分析&#xff0c;来精准识别其情感变化&#xff0c;从而提高独居老人的生活质量&#xff0c;确保其心理健康。本系统通过整合先进的YOLOV8…...

Qt添加外部库:静态库和动态库,批量添加头文件

Qt添加外部库需要知道库文件的位置才能正确链接&#xff0c;如果是静态库&#xff0c;要确保LIBS变量中包含正确的库文件路径和库文件名;如果是动态库&#xff0c;除了库路径外&#xff0c;还需要考虑动态库的加载路径。在 Windows 下&#xff0c;可以将动态库所在路径添加到系…...

Unity类银河战士恶魔城学习总结(P132 Merge skill tree with skill Manager 把技能树和冲刺技能相组合)

【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili 教程源地址&#xff1a;https://www.udemy.com/course/2d-rpg-alexdev/ 本章节实现了解锁技能后才可以使用技能&#xff0c;先完成了冲刺技能的锁定解锁 Dash_Skill.cs using System.Collections; using System…...

Docker入门之Windows安装Docker初体验

在之前我们认识了docker的容器&#xff0c;了解了docker的相关概念&#xff1a;镜像&#xff0c;容器&#xff0c;仓库&#xff1a;面试官让你介绍一下docker&#xff0c;别再说不知道了 之后又带大家动手体验了一下docker从零开始玩转 Docker&#xff1a;一站式入门指南&#…...

DNS实验作业

实验要求 1.搭建dns服务器能够对自定义的正向或者反向域完成数据解析查询。 2.配置从DNS服务器&#xff0c;对主dns服务器进行数据备份。 实验步骤&#xff1a; 1.关闭防护墙 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2.正向解析 [rootlo…...

CSS回顾-CSS选择器详解

一、引言 我来填坑啦&#xff01;之前在CSS基础知识详解中介绍过&#xff0c;CSS 是一门基于规则的语言。是由选择器与样式信息组成&#xff1a;选择器 {样式信息}。CSS 选择器是 CSS 规则的关键&#xff0c;能精准定位 HTML 元素&#xff0c;CSS3 新增选择器更是增强了设计能…...

FFMPEG录像推流时遇到的问题

FFMPEG录像推流时遇到的问题&#xff0c;记录一下供大参考 1. ret avformat_write_header( ofmt_ctx, NULL ); 执行写入头后&#xff0c;所有的流的时间基都会被内部重新设置&#xff0c;所以并不你想象的把原来的时间直接入到avPACKET中就可以发送了。必须要把你每个流的P…...

【STM32+K210项目】基于K210智能人脸识别+车牌识别系统(完整工程资料源码)

运行效果: 基于K210的智能人脸与车牌识别系统工程 目录: 运行效果: 目录: 前言: 一、国内外研究现状与发展趋势 二、相关技术基础 2.1 人脸识别技术 2.2 车牌识别技术 三、智能小区门禁系统设计 3.1 系统设计方案 3.2 系统设计目标 3.3 智能小区门禁系统硬件设计 3.3.1 控…...

Unity脚本基础规则

Unity脚本基础规则 如何在Unity中创建一个脚本文件&#xff1f; 在Project窗口中的Assets目录下&#xff0c;选择合适的文件夹&#xff0c;右键&#xff0c;选择第一个Create&#xff0c;在新出现的一栏中选择C# Script&#xff0c;此时文件夹内会出现C#脚本图标&#xff0c;…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系&#xff0c;以下是深入解析&#xff1a; 门铃FIFO溢出的本质 在RapidIO系统中&#xff0c;门铃消息FIFO是硬件控制器内部的缓冲区&#xff0c;用于临时存储接收到的门铃消息&#xff08;Doorbell Message&#xff09;。…...