2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型
2025年数学建模美赛 A题分析(1)Testing Time: The Constant Wear On Stairs
2025年数学建模美赛 A题分析(2)楼梯磨损分析模型
2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型
2025年数学建模美赛 A题分析(4)楼梯使用人数模型
特别提示:
- 本文针对 2025年 A题进行分析,每天不断更新,建议收藏。
- 其它题目的分析详见【youcans 的数学建模课】 专栏。
文章目录
- 2025年数学建模美赛 A题分析(3)楼梯方向偏好模型
- 1. 问题概述
- 2. 楼梯使用方向偏好数学模型
- 2.1 楼梯使用方向偏好数学模型的建立
- 2.2 所需数据与测量方法
- 2.3 假设条件
- 3. 模型推导
- 3.1 基本概念
- 3.2 磨损深度与方向偏好的关系
- 3.3 磨损深度的计算
- 4. 实施步骤
- 5. 模型验证
- 6. 模型结论
- 7. 图像区域分割基本方法
- 例程 11.25:图像分割之区域生长
- 8. 基于 k 均值聚类的区域分割
- 例程 11.27:图像分割之 k 均值聚类
2025年数学建模美赛 A题分析(3)楼梯方向偏好模型
1. 问题概述
用于建造台阶的石材和其他材料经受着持续的长期磨损,并且这种磨损可能是不均匀的。
问题的任务是:开发一个模型,通过特定楼梯的磨损模式得出以下基本预测:
- 楼梯使用的频率。
- 使用楼梯时是否更倾向于某一方向。
- 同时使用楼梯的人数(例如,人们是否成对并排爬楼梯,还是单列行走)。
进一步地,假设已经获得楼梯的建造年代、使用方式以及建筑中日常生活模式的估算信息,需要回答以下问题:
- 磨损是否与现有信息一致?
- 楼梯的年龄及其估算的可靠性如何?
- 楼梯是否经历过维修或翻修?
- 能否确定材料的来源?例如,石材的磨损是否与考古学家认为的原始采石场材料一致?若使用木材,其磨损是否与假定使用的树种和年代相符?
- 有关楼梯典型每日使用人数的信息,以及是否有大量人群在短时间内使用,或少量人群长期使用的情况?
2. 楼梯使用方向偏好数学模型
2.1 楼梯使用方向偏好数学模型的建立
楼梯使用方向偏好分析的目标是确定使用者是否倾向于某一特定方向(上或下楼梯),以及这种偏好的强度。通过分析楼梯磨损的空间分布,可以量化这一偏好。
2.2 所需数据与测量方法
-
必须测量的数据
(1)磨损深度的空间分布
获取楼梯表面每一位置的磨损深度分布,尤其是台阶中心区域、边缘区域以及上下坡方向的差异。
数据形式:三维高度模型或磨损深度的二维热力图。
(2)楼梯的空间布局:
台阶的宽度、坡度和方向性,确定不同区域的使用路径。
(3)台阶材料特性:确定磨损速率是否一致(上下坡可能因压力差异导致磨损不同)。 -
非破坏性测量方法
激光扫描:获取磨损深度和分布的高精度数据。
3D建模:重建台阶表面,分析上下坡方向的磨损特征。
图像处理:通过光学方法分析楼梯表面纹理变化。 -
其他辅助信息
使用的历史记录:如建筑物的使用时间、功能(宗教场所、住宅等)以及可能的高峰使用时期。
2.3 假设条件
-
磨损方向性假设
假设磨损深度与使用方向直接相关:上楼使用可能集中在前脚掌区域,而下楼使用可能在台阶边缘造成更多磨损。 -
对称性假设
若楼梯不存在明显的方向性限制(如仅供单向使用),则在没有方向偏好的情况下,磨损应在两侧和上下方向接近对称。 -
单一变量假设
假设影响磨损的主导因素是方向偏好,排除其他次要因素(如特殊气候条件、个别异常使用情况)。
3. 模型推导
3.1 基本概念
方向偏好用一个比率量化,表示上下楼人流量的分布:
P u p = N u p N u p + N d o w n P_{up} = \frac{N_{up}}{N_{up} + N_{down}} Pup=Nup+NdownNup
P d o w n = N d o w n N u p + N d o w n P_{down} = \frac{N_{down}}{N_{up} + N_{down}} Pdown=Nup+NdownNdown
其中:
- Pup、Pdown 分别表示上楼和下楼的方向偏好比例。
- Nup、Ndown 分别表示上楼和下楼的人次。
3.2 磨损深度与方向偏好的关系
假设楼梯的上下坡方向产生不同的磨损模式:
- 上楼磨损:多集中于台阶前缘和中心位置。
- 下楼磨损:多集中于台阶边缘位置。
根据上下方向的磨损深度差异,可以通过以下公式推导偏好比例:
P u p = d u p d u p + d d o w n P_{up} = \frac{d_{up}}{d_{up} + d_{down}} Pup=dup+ddowndup
P d o w n = d d o w n d u p + d d o w n P_{down} = \frac{d_{down}}{d_{up} + d_{down}} Pdown=dup+ddownddown
其中:
d u p d_{up} dup 表示上楼方向的磨损深度总和。 d d o w n d_{down} ddown 表示下楼方向的磨损深度总和。
3.3 磨损深度的计算
- 区域分割
将楼梯的踏面分为两部分:
- 上楼区域:台阶中心靠近上方方向的位置。
- 下楼区域:台阶边缘靠近下方方向的位置。
- 深度积分
对每个区域的磨损深度进行积分,计算总和:
d u p = ∫ u p a r e a h ( x , y ) d x d y d_{up} = \int_{up area} h(x,y) dxdy dup=∫upareah(x,y)dxdy
d d o w n = ∫ d o w n a r e a h ( x , y ) d x d y d_{down} = \int_{down area} h(x,y) dxdy ddown=∫downareah(x,y)dxdy
其中, h ( x , y ) h(x,y) h(x,y)是每个点的磨损深度。
4. 实施步骤
-
数据采集
(1)获取磨损分布:通过激光扫描或3D建模获取楼梯表面磨损深度的分布图。
(2)区域划分:根据楼梯几何特性,划分上楼区域和下楼区域。
(3)材料特性校准:验证材料的磨损速率是否在两个方向一致。 -
参数计算
(1)对磨损深度分布进行积分,分别计算 d u p d_{up} dup 和 d d o w n d_{down} ddown。
(2)计算偏好比例:
P u p = d u p d u p + d d o w n P_{up} = \frac{d_{up}}{d_{up} + d_{down}} Pup=dup+ddowndup
P d o w n = d d o w n d u p + d d o w n P_{down} = \frac{d_{down}}{d_{up} + d_{down}} Pdown=dup+ddownddown
- 结果分析
(1)偏好程度:
(2)偏好强度:通过偏好比率的偏离程度量化,如:
Δ P = ∣ P u p − P d o w n ∣ \Delta P = |P_{up} - P_{down}| ΔP=∣Pup−Pdown∣
5. 模型验证
-
实验验证
在实验室中模拟上下楼的人流行为,记录磨损分布,验证模型预测的方向偏好是否与实际数据一致。 -
历史数据验证
若存在建筑物的使用记录,检查预测的方向偏好是否符合历史使用情况。
6. 模型结论
-
模型的适用性
通过分析磨损深度分布,模型能有效推导楼梯的方向偏好。
适用于台阶磨损明显且历史记录缺乏的场景。 -
改进方向
考虑非均匀使用(如特定时间段方向使用更集中)。
引入人群行为模型,结合楼梯宽度和空间限制优化预测。
7. 图像区域分割基本方法
【youcans 的 OpenCV 例程200篇】168.图像分割之区域生长
区域生长方法将具有相似性质的像素或子区域组合为更大区域。
区域生长方法是以区域为处理对象,基于区域内部和区域之间的同异性,尽量保持区域中像素的临近性和一致性的统一 。
区域生长的基本方法是,对于一组“种子”点,通过把与种子具有相同预定义性质(如灰度或颜色范围)的邻域像素合并到种子像素所在的区域中,再将新像素作为新的种子不断重复这一过程,直到没有满足条件的像素为止。
种子点的选取经常采用人工交互方法实现,也可以寻找目标物体并提取物体内部点,或利用其它算法找到的特征点作为种子点。
区域增长方法的步骤:
(1)对图像自上而下、从左向右扫描,找到第 1 个还没有访问过的像素,将该像素作为种子 (x0, y0);
(2)以 (x0, y0) 为中心, 考虑其 4 邻域或 8 邻域像素 (x, y),如果其邻域满足生长准则 则将 (x, y) 与 (x0, y0) 合并到同一区域,同时将 (x, y) 压入堆栈;
(3)从堆栈中取出一个像素,作为种子 (x0, y0) 继续步骤(2);
(4)当堆栈为空时返回步骤(1);
(5)重复步骤(1)-(4),直到图像中的每个点都被访问过,算法结束。
例程 11.25:图像分割之区域生长
# # 11.25 图像分割之区域生长def getGrayDiff(image, currentPoint, tmpPoint): # 求两个像素的距离return abs(int(image[currentPoint[0], currentPoint[1]]) - int(image[tmpPoint[0], tmpPoint[1]]))# 区域生长算法def regional_growth(img, seeds, thresh=5):height, weight = img.shapeseedMark = np.zeros(img.shape)seedList = []for seed in seeds:if (0<seed[0]<height and 0<seed[1]<weight): seedList.append(seed)label = 1 # 种子位置标记connects = [(-1,-1), (0,-1), (1,-1), (1,0), (1,1), (0,1), (-1,1), (-1,0)] # 8 邻接连通while (len(seedList) > 0): # 如果列表里还存在点currentPoint = seedList.pop(0) # 将最前面的那个抛出seedMark[currentPoint[0], currentPoint[1]] = label # 将对应位置的点标记为 1for i in range(8): # 对这个点周围的8个点一次进行相似性判断tmpX = currentPoint[0] + connects[i][0]tmpY = currentPoint[1] + connects[i][1]if tmpX<0 or tmpY<0 or tmpX>=height or tmpY>=weight: # 是否超出限定阈值continuegrayDiff = getGrayDiff(img, currentPoint, (tmpX, tmpY)) # 计算灰度差if grayDiff<thresh and seedMark[tmpX,tmpY]==0:seedMark[tmpX, tmpY] = labelseedList.append((tmpX, tmpY))return seedMark# 区域生长 主程序img = cv2.imread("../images/Fig1051a.tif", flags=0)# # 灰度直方图# histCV = cv2.calcHist([img], [0], None, [256], [0, 256]) # 灰度直方图# OTSU 全局阈值处理ret, imgOtsu = cv2.threshold(img, 127, 255, cv2.THRESH_OTSU) # 阈值分割, thresh=T# 自适应局部阈值处理binaryMean = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 5, 3)# 区域生长图像分割# seeds = [(10, 10), (82, 150), (20, 300)] # 直接给定 种子点imgBlur = cv2.blur(img, (3,3)) # cv2.blur 方法_, imgTop = cv2.threshold(imgBlur, 250, 255, cv2.THRESH_BINARY) # 高百分位阈值产生种子区域nseeds, labels, stats, centroids = cv2.connectedComponentsWithStats(imgTop) # 过滤连通域,获得质心点 (x,y)seeds = centroids.astype(int) # 获得质心像素作为种子点imgGrowth = regional_growth(img, seeds, 8)plt.figure(figsize=(8, 6))plt.subplot(221), plt.axis('off'), plt.title("Origin")plt.imshow(img, 'gray')plt.subplot(222), plt.axis('off'), plt.title("OTSU(T={})".format(ret))plt.imshow(imgOtsu, 'gray')plt.subplot(223), plt.axis('off'), plt.title("Adaptive threshold")plt.imshow(binaryMean, 'gray')plt.subplot(224), plt.axis('off'), plt.title("Region grow")plt.imshow(255-imgGrowth, 'gray')plt.tight_layout()plt.show()
8. 基于 k 均值聚类的区域分割
【youcans 的 OpenCV 例程200篇】170.图像分割之K均值聚类
聚类方法的思想是将样本集合按照其特征的相似性划分为若干类别,使同一类别样本的特征具有较高的相似性,不同类别样本的特征具有较大的差异性。
基于聚类的区域分割,就是基于图像的灰度、颜色、纹理、形状等特征,用聚类算法把图像分成若干类别或区域,使每个点到聚类中心的均值最小。
a r g min C ( ∑ i = 1 k ∑ z ∈ C i ∥ z − m i ∥ 2 ) arg \min_{C} \Big( \sum^k_{i=1} \sum_{z \in C_i} \lVert z - m_i \rVert ^2 \Big) argCmin(i=1∑kz∈Ci∑∥z−mi∥2)
k 均值(k-means)是一种无监督聚类算法。基于 k 均值聚类算法的区域分割,算法步骤为:
(1)首先从图像中选取 k 个点作为初始的聚类中心;
(2)对所有的像素点,计算像素到每个聚类中心的距离,将像素分类到距离最小的一个聚类中;
(3)根据分类结果计算出新的聚类中心;
(4)如此反复迭代直到聚类中心收敛到稳定值。
OpenCV 提供了函数 cv.kmeans 来实现 k-means 聚类算法。函数 cv.kmeans 不仅可以基于灰度、颜色对图像进行区域分割,也可以基于样本的其它特征如纹理、形状进行聚类。
函数说明:
cv.kmeans(data, K, bestLabels, criteria, attempts, flags[, centers]) → compactness, labels, centersdst
函数 cv.kmeans 实现 k-means 算法寻找聚类中心,并按聚类对输入样本进行分组。
参数说明:
- data:用于聚类的数据,N 维数组,类型为 CV_32F、CV_32FC2
- K:设定的聚类数量
- bestLabels:整数数组,分类标签,每个样本的所属聚类的序号
- criteria:元组 (type, max_iter, epsilon),算法结束标准,最大迭代次数或聚类中心位置精度
- cv2.TERM_CRITERIA_EPS:如果达到指定的精度 epsilon,则停止算法迭代
- cv2.TERM_CRITERIA_MAX_ITER:在指定的迭代次数max_iter之后停止算法
- cv2.TERM_CRITERIA_EPS + cv.TERM_CRITERIA_MAX_ITER:当满足上述任何条件时停止迭代
- attempts:标志,指定使用不同聚类中心初值执行算法的次数
- flags:像素邻域的尺寸,用于计算邻域的阈值,通常取 3,5,7
- cv2. KMEANS_RANDOM_CENTERS:随机产生聚类中心的初值
- cv2. KMEANS_PP_CENTERS:Kmeans++ 中心初始化方法
- cv2. KMEANS_USE_INITIAL_LABELS:第一次计算时使用用户指定的聚类初值,之后的计算则使用随机的或半随机的聚类中心初值
- centers:聚类中心数组,每个聚类中心为一行,可选项
- labels:整数数组,分类标签,每个样本的所属聚类的序号
- centersdst:聚类中心数组
例程 11.27:图像分割之 k 均值聚类
# 11.27 图像分割之 k 均值聚类img = cv2.imread("../images/imgB6.jpg", flags=1) # 读取彩色图像(BGR)dataPixel = np.float32(img.reshape((-1, 3)))criteria = (cv2.TERM_CRITERIA_EPS + cv2.TERM_CRITERIA_MAX_ITER, 200, 0.1) # 终止条件flags = cv2.KMEANS_RANDOM_CENTERS # 起始的中心选择K = 3 # 设置聚类数_, labels, center = cv2.kmeans(dataPixel, K, None, criteria, 10, flags)centerUint = np.uint8(center)classify = centerUint[labels.flatten()] # 将像素标记为聚类中心颜色imgKmean3 = classify.reshape((img.shape)) # 恢复为二维图像K = 4 # 设置聚类数_, labels, center = cv2.kmeans(dataPixel, K, None, criteria, 10, flags)centerUint = np.uint8(center)classify = centerUint[labels.flatten()] # 将像素标记为聚类中心颜色imgKmean4 = classify.reshape((img.shape)) # 恢复为二维图像K = 5 # 设置聚类数_, labels, center = cv2.kmeans(dataPixel, K, None, criteria, 10, flags)centerUint = np.uint8(center)classify = centerUint[labels.flatten()] # 将像素标记为聚类中心颜色imgKmean5 = classify.reshape((img.shape)) # 恢复为二维图像plt.figure(figsize=(9, 7))plt.subplot(221), plt.axis('off'), plt.title("Origin")plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) # 显示 img1(RGB)plt.subplot(222), plt.axis('off'), plt.title("K-mean (k=3)")plt.imshow(cv2.cvtColor(imgKmean3, cv2.COLOR_BGR2RGB))plt.subplot(223), plt.axis('off'), plt.title("K-mean (k=4)")plt.imshow(cv2.cvtColor(imgKmean4, cv2.COLOR_BGR2RGB))plt.subplot(224), plt.axis('off'), plt.title("K-mean (k=5)")plt.imshow(cv2.cvtColor(imgKmean5, cv2.COLOR_BGR2RGB))plt.tight_layout()plt.show()
【未完待续,请继续关注】
[2025年数学建模美赛 A题分析(4)楼梯使用人数模型]
相关文章:

2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型
2025年数学建模美赛 A题分析(1)Testing Time: The Constant Wear On Stairs 2025年数学建模美赛 A题分析(2)楼梯磨损分析模型 2025年数学建模美赛 A题分析(3)楼梯使用方向偏好模型 2025年数学建模美赛 A题分…...

复古壁纸中棕色系和米色系哪个更受欢迎?
根据最新的搜索结果,我们可以看到棕色系和米色系在复古壁纸设计中都非常受欢迎。以下是对这两种颜色系受欢迎程度的分析: 棕色系 受欢迎程度:棕色系在复古壁纸中非常受欢迎,因为它能够营造出温暖、质朴和自然的氛围。棕色系的壁纸…...
编译安装PaddleClas@openKylin(失败,安装好后报错缺scikit-learn)
编译安装 前置需求: 手工安装swig和faiss-cpu pip install swig pip install faiss-cpu 小技巧,pip编译安装的时候,可以加上--jobs64来多核编译。 注意先升级pip版本:pip install pip -U pip3 install faiss-cpu --config-s…...

t113_can增加驱动
1 基于太极派的SDK添加 //设备树添加can0: can2504000 {compatible "allwinner,sun20i-d1-can";reg <0x0 0x02504000 0x0 0x400>;interrupts <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;clocks <&ccu CLK_BUS_CAN0>;resets <&ccu RST_BUS_…...
达梦数据库建用户,键库脚本
-- 1.创建表空间 CREATE TABLESPACE "表空间名称" DATAFILE /dmdata/data/DAMENG/表空间名称.DBF SIZE 512 AUTOEXTEND ON NEXT 512 MAXSIZE UNLIMITED; -- 2.创建用户 CREATE USER "表空间名称" IDENTIFIED BY "表空间名称" HASH WITH SHA512 S…...

上海亚商投顾:沪指冲高回落 大金融板块全天强势 上海亚商投
上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 市场全天冲高回落,深成指、创业板指午后翻绿。大金融板块全天强势,天茂集团…...

MySQL 的索引类型【图文并茂】
基本分类 文本生成MindMap:https://app.pollyoyo.com/planttext <style> mindmapDiagram {node {BackgroundColor yellow}:depth(0) {BackGroundColor SkyBlue}:depth(1) {BackGroundColor lightGreen} } </style> * MySQL 索引** 数据结构角度 *** B树索引*** 哈…...
天聚地合:引领API数据流通服务,助力数字经济发展
天聚地合:引领API数据流通服务,助力数字经济发展 爱企猫01月24日消息:天聚地合(苏州)科技股份有限公司,成立于2010年,总部位于苏州,是一家综合性API数据流通服务商。公司旗下品牌‘聚合数据’已开发超过790个API,服务百万企业级客…...

【反悔堆】【hard】力扣871. 最低加油次数
汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。 沿途有加油站,用数组 stations 表示。其中 stations[i] [positioni, fueli] 表示第 i 个加油站位于出发位置东面 positioni 英里处,并且有 fueli 升汽油。 假设汽车油…...

electron typescript运行并设置eslint检测
目录 一、初始化package.json 二、安装依赖 1、安装electron 2、安装typescript依赖 3、安装eslint 三、项目结构 四、配置启动项 一、初始化package.json 我的:这里的"main"没太大影响,看后面的步骤。 {"name": "xlo…...

服务器上安装Nginx详细步骤
第一步:上传nginx压缩包到指定目录。 第二步:解压nginx压缩包。 第三步:配置编译nginx 配置编译方法: ./configure 配置编译后结果信息: 第四步:编译nginx 在nginx源文件目录中直接运行make命令 第五步&…...
Timeout or no response waiting for NATS JetStream server
当使用jetStream 出现"Timeout or no response waiting for NATS JetStream server" 错误的时候要注意后面的“no response”,尤其是开发测试,要去check server 是否启动了 jet stream。 [20112] 2025/01/24 08:27:42.738396 [INF] _ ___…...

5.2 软件需求分析
文章目录 需求分析的意义软件需求的组成需求分析的5个方面需求分析方法 需求分析的意义 需求分析解决软件“做什么”的问题。由于开发人员比较熟悉计算机而不熟悉领域业务,用户比较熟悉领域业务而不熟悉计算机,双方需要通过交流,制定出完整、…...

DF 开发1
https://www.bilibili.com/video/BV1RFChYxEhJ/ 多个 workspace 图片上传 S3 上传大量文档 https://www.bilibili.com/video/BV1ySsEeUE6i 解决方案 返回 metadata https://www.bilibili.com/video/BV1t3e5eaENo 给出内容引用出处 模型负载均衡 可以以 ollama 在不同端口起服…...

【现代深度学习技术】深度学习计算 | 参数管理
【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…...
团体程序设计天梯赛-练习集——L1-024 后天
前言 首先祝大家新年快乐,然后博主今点炮让炮崩了一下,水一天 这道题5分非常简单,有不少的做法 L1-024 后天 如果今天是星期三,后天就是星期五;如果今天是星期六,后天就是星期一。我们用数字1到7对应星期…...

JVM栈溢出线上环境排查
#查看当前Linux系统进程ID、线程ID、CPU占用率(-eo后面跟想要展示的列) ps H -eo pid,tid,%cpups H -eo pid,tid,%cpu |grep tid #使用java jstack 查看进程id下所有线程id的情况 jstack pid 案例2 通过jstack 排查死锁问题 #启动java代码 jstack 进…...
Java实现FIFO缓存策略实战
实现FIFO模型选择FIFO模型实现过程FIFO模型完整代码下面看一下先进先出的示例过程总结FIFO(First In First Out,先进先出)策略是一种基本的数据处理和存储管理方法,在Java中,这种策略通常用于管理那些需要按照顺序处理的数据项,比如任务的队列、数据的传输缓冲区等。在Ja…...

set集合
set集合 Set系列集合: 无序:存取顺序不一致 不重复:可以去除重复 无索引:没有带索引的方法,所以不能使用普通for循环遍历,也不能通过索引来获取元素 可以看出set是无序的存和打印的顺序不一样 Set接中的…...

【数据结构】 并查集 + 路径压缩与按秩合并 python
目录 前言模板朴素实现路径压缩按秩合并按树高为秩按节点数为秩 总结 前言 并查集的基本实现通常使用森林来表示不同的集合,每个集合用一棵树表示,树的每个节点有一个指向其父节点的指针。 如果一个节点是它自己的父节点,那么它就是该集合的代…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

渗透实战PortSwigger靶场:lab13存储型DOM XSS详解
进来是需要留言的,先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码,输入的<>当成字符串处理回显到页面中,看来只是把用户输…...

RushDB开源程序 是现代应用程序和 AI 的即时数据库。建立在 Neo4j 之上
一、软件介绍 文末提供程序和源码下载 RushDB 改变了您处理图形数据的方式 — 不需要 Schema,不需要复杂的查询,只需推送数据即可。 二、Key Features ✨ 主要特点 Instant Setup: Be productive in seconds, not days 即时设置 :在几秒钟…...

篇章一 论坛系统——前置知识
目录 1.软件开发 1.1 软件的生命周期 1.2 面向对象 1.3 CS、BS架构 1.CS架构编辑 2.BS架构 1.4 软件需求 1.需求分类 2.需求获取 1.5 需求分析 1. 工作内容 1.6 面向对象分析 1.OOA的任务 2.统一建模语言UML 3. 用例模型 3.1 用例图的元素 3.2 建立用例模型 …...