语义分割

图片基础 一个图片通常表现为3维矩阵,长、宽、通道,其中长*宽构成了分辨率,而有多少个通道就相当于有多少个"调色板"页面,这些调色板共同构成了每个像素点的色彩。 eg:1080p的rgb图片,就是1920*1080,通道数为3,其中rgb分别可取(0-255);而单通道就是灰度图像,取值(0-255) CNN CNN【卷积 → 激活 → 池化】 视为一个基础块,其中卷积层的每一个卷积核(滤波器)都可以提取一个特征,而激活层的Re-LU可以将卷积后此特征不明显的值设为0,再经过池化层,保留更为显著的特征(从“精确位置”到“空间存在”)。 随着多层的卷积输出,通道数增加,长、宽降低,而通道意义也变为了不同特征的强弱分布,有多少种通道就对应着多少种特征; 池化操作减少特征图中 参数数量、保留显著特征,只描述哪一个区域有,而不用具体到点。 经过一些列的卷积、激活、池化操作,最终得到长、宽小,而通道数大的特征图 ,经过全连接,输出一个1*n的向量,其中n为分类的数量。 卷积操作 整个卷积层的输出是N张特征图堆叠在一起,形成一个新的三维张量。 输出形状: [新高度, 新宽度, 卷积核数量] 例如: [222, 222, 32] (使用了32个3x3卷积核,尺寸略有缩小)。 此时,张量发生了变化:通道数从原始的3(R,G,B)变成了32,这32个通道不再是颜色,而是32种不同的基础特征的强度分布图。 整体流程 CNN演变 这里我的描述的网络是去掉了全连接层的CNN FCN FCN做出的重要改变是将CNN中全连接换为解码器,保留了原有CNN中的编码器(卷积+池化),这样,原有的CNN用于分类的一维输出,就变为了 “一个高分辨率的、与输入尺寸对应的像素级分类图”。 跳跃连接 编码器中,越浅的层次,图片分辨率更高位置更精细,越深的层次,图片的分辨率更低,but语义信息丰富(知道“这是什么”,但不知道在哪) 在ResNet中的应用 flowchart TD subgraph A [编码器 - 卷积与下采样] direction TB A1[输入图像<br>HxWx3] --> A2[卷积与池化<br>H/2 x W/2 x 64] --> A3[卷积与池化<br>H/4 x W/4 x 128] --> A4[卷积与池化<br>H/8 x W/8 x 256] --> A5[卷积与池化<br>H/16 x W/16 x 512] --> A6[卷积与池化<br>H/32 x W/32 x 1024] end subgraph B [解码器 - 上采样与跳跃融合] direction TB B1[预测层<br>H/32 x W/32 x N] -- 2x上采样 --> B2[score pool4<br>H/16 x W/16 x N] A4 -- 跳跃连接1 --> C1[1x1 卷积<br>H/8 x W/8 x 256] -- 1x1 卷积 --> C2[score pool3<br>H/8 x W/8 x N] B2 -- 与 score pool3 相加 --> B3[融合特征<br>H/8 x W/8 x N] -- 8x上采样 --> B4[最终输出<br>H x W x N] end A6 -- 核心改变: <br>全连接层 -> 卷积层 --> B1 A5 -- 跳跃连接2 --> B2 反卷积(转置卷积) 解码器中用于还原图像到输出大小的部分, ...

October 25, 2025 · 1 min · 165 words · Bob

文章标题

Task 寻找识别汇管区的方法 Superpixel Classification Approach (已过时) Superpixel:包含多个像素的图像块 思想: 将像素分组为有意义的视觉基元(超像素),再对这些基元进行特征提取和分类,从而高效地完成像素级的分割任务** 实施过程 1.分割成块(大块的像素) 2.提取特征(颜色,纹理,坐标 etc) 3.使用已标注的数据集进行训练(按照1,2步对数据集进行处理,为每个超像素块设置标签,eg:当前块70%的部分为天空,则说明此块的标签便是天空) 新数据:训练完成后对应新数据同样进行1,2步骤,后放入训练好的分类器中(这里提到的是随机森林) 结果:每个超像素均被赋予了标签,那么各个区域便被赋予了标签  补充: 随机森林分类器: 一堆决策树,投票得出最终结果,并且随机森林会进行数据抽样(有放回,即Bootstrap Aggregating)和特征抽样从而建立训练样本。 概括随机森林的特点:决策树,数据抽样、特征抽样、投票机制 Simple Linear Iterative Clustering(简单线性迭代聚类)即 SLIC 算法:用于生成超像素,我们仅需传入k,k为一个图片被分割成的超像素总数 CIELAB color space 和 image clustering 是SLIC用的 Local Binary Pattern(局部二值模式)即LBP 算法: 核心思想: 局部比较:以一个像素为中心,将其与周围固定半径内的 P 个邻域像素进行比较。 二值化:如果邻域像素的灰度值大于或等于中心像素的灰度值,则标记为 1;否则标记为 0。 生成编码:按顺序(例如顺时针)将这些 0 和 1 排列成一个二进制数串。 转换为十进制:将这个二进制数转换为一个十进制数,这个值就是该中心像素的LBP编码值。 **举例说明:**假设有一个3x3的区域,中心点灰度值为50,周围8个点的灰度值为 [55, 40, 60, 45, 50, 65, 35, 70]。比较后得到的二进制序列为:1, 0, 1, 0, 1, 1, 0, 1。将这个二进制数 10101101 转换为十进制,就是173。这个173就是这个中心点的LBP纹理值。 ...

October 17, 2025 · 1 min · 113 words · Bob

minIoC

常用注解结构 当前IOC容器设计结构 可以看到分为了注解、核心、包扫描器3部分。 注解部分最基础的bean注解我们实现了Component,3层架构中的注解我们实现了Controller,Service,Repository,这3者均“继承”了Component(其实是在其注解定义中加入了注解@Component). 待补充:Autowired,Qualifier,Scope BeanDefinition 核心部分,我们先介绍BeanDefinition,该类作为Bean元数据类,主要包含4个属性:用于反射类型,用于实例化的对象名,是否单例(2个属性用于描述)。 那么为何使用两个属性来表示是否单例? reply: 无需多余的字符串比较,可直接由其中一个字段的bool值直接得到是否单例。这在判断性能上提升多倍。 1 2 3 4 5 6 7 8 9 @Data @NoArgsConstructor @AllArgsConstructor public class BeanDefinition { private Class<?> beanClass; // Bean的Class对象(用于反射创建实例) private String beanName; // Bean的唯一标识符 private String scope; // 作用域(singleton/prototype) private boolean singleton; // 是否单例的快速标志位 } 两个字段表示是否单例,也带来了新问题:我们设置信息时需要保证二者的一致性 1 2 3 4 5 6 7 8 9 public void setScope(String scope) { this.scope = scope; this.singleton = "singleton".equals(scope); // 自动同步 } public void setSingleton(boolean singleton) { this.singleton = singleton; this.scope = singleton ? "singleton" : "prototype"; // 自动同步 } 构造器方面,我们提供2个不同参数的构造器,区别是后者可以传入scope(即是否单例) ...

October 12, 2025 · 5 min · 1049 words · Bob

华为ICT竞赛备考学习

October 12, 2025 · 0 min · 0 words · Bob

机器学习的概统基础-01

基础知识补充: 期望 期望值,是指无限次重复一个随机实验,所能得到的长期平均结果。它是所有可能结果的概率加权和。 计算方法:每个可能的结果乘以其发生的概率,然后将所有乘积相加。 E(X)=∑[xi​⋅P(X=xi​)] (对于连续型变量,使用积分) 联系By大数定律 平均值和期望值通过大数定律 被深刻地联系在一起。 大数定律指出:当试验次数(样本容量 n)足够大时,样本的平均值 xˉ 会无限接近总体的期望值 E(X)。 这就像在掷骰子的例子中,你掷的次数越多,你的平均点数就越接近理论期望值3.5。 通过例子区分平均值和期望:平均值是对已经发生的数据的概括,而期望值是对未来可能性的预测 方差 方差 是衡量随机变量与其平均值(期望值)的偏离程度的量。它描述了数据的离散程度。 计算公式:对于一个随机变量 X,其方差 Var(X) 定义为: Var(X)=E[(X−E[X])2] 直观理解: 方差大:数据点散布得很开,远离均值。不确定性高。 方差小:数据点紧密地聚集在均值周围。不确定性低。 中心极限定理 中心极限定理描述的是样本平均值分布 正态分布 正态分布描述的是数据在其平均值附近波动 正态分布的期望为 μ 区别方差和标准差 后者反应了数据在平均值上下的波动范围,前者由于是后者的平方,更多的是反映数据的分散程度,方差越大,数据越分散。 条件期望 普通期望(无条件期望):E[y] 这是随机变量 y 的全局平均值。它回答的问题是:“在所有可能的情况下,y 平均来看是多少?” 例子:E[身高] = 全体中国成年男性的平均身高(比如175cm)。它不考虑任何其他信息。 条件期望:E[y | x] 这是在给定某些已知信息 x 的情况下,y 的条件平均值。它回答的问题是:“当我们知道了某个信息 x 后,y 平均来看是多少?” 例子:E[身高 | 年龄=10岁] = 已知一个男性年龄是10岁时,他的平均身高(比如140cm)。 核心思想:条件期望让我们能够根据已知信息,做出更精确、更“有条件”的预测。 条件期望随着条件的变化而变化: E[房价 | 面积=50平米] = 可能是 300万(小房子更便宜)。 ...

October 7, 2025 · 1 min · 164 words · Bob

大模型作业-本地部署deepseek-构建本地知识库

使用以下技术栈,部署本地LLM 应用框架:Dify(Docker版) 本地大模型:Ollama部署deepseek,嵌入模型:BGEM3 文档处理:Dify内置文本分割与向量化 Dify是什么? 相当于免编程的简单AI助手开发框架 Dify的缺点:大规模系统,性能要求过高(算法、延迟),资源受限(嵌入式、边缘计算),高度定制化 向量数据库:语义相似度检索 通过比对向量的"距离",也就是相似度进行检索。 每个数据数据(语句)中的词都对应一个已经生成的向量,然后再通过一系列复杂操作生成该句子的向量,在数据库中检索"距离"更近的向量 余弦相似度只关心方向,不关心长度。 测试问题 简单事实查询(测试基础检索) “什么是人工智能?” 多文档信息整合(测试跨文档能力) “RAG是什么意思?” 推理受限or出错(测试推理能力) 我把手机放在一本打开的书下面,然后合上了书。手机现在在哪里? 太阳什么时候时候从西边升起? 测试长文本细节丢失 问题1:“星穹项目的总负责人和预算是多少?” 模型可能回答: “总负责人是张三,预算为500万元。” 分析: 这两个信息都位于文档的开头部分。模型的注意力机制在开始时最为集中,因此很容易捕获并记住这些信息。此时没有细节丢失。 问题2(综合性问题,考验长距离信息整合):“请总结一下项目中需要与其他部门或外部供应商协作的关键点。” 模型理想答案应包含: 与风控部的李四合作解决金融模型偏差。(少了这个!!!!!!) 与王五的团队协作进行音频模块集成。 依赖外部供应商 “天眼”数据源的API服务。 模型可能回答(整合失败): “项目需要与王五的团队合作,并且依赖‘天眼’数据源。” 分析: 模型丢失了位于文档中部的“风控部李四” 这一关键协作方。因为它无法同时将文档开头、中部、末尾的稀疏信息点有效地关联和整合在一起。它只能抓取到最容易记住的(末尾的)和可能还记得的(开头附近的)信息,而中间部分的信息已经“蒸发”了。 测试全过程体现统计响应速度受限 本次部署所用的本地部署LLM流程总结和排错指南可以点击以下链接下载 本地部署LLM流程总结 排错指南

October 5, 2025 · 1 min · 40 words · Bob

就业要求分析

To be or not to be … That is a question 后端开发/研发方向 滴滴公司 携程 阿里云 大模型-AI 京东 先深入理解机器学习算法的理论基础,然后学习使用一个或多个主流的机器学习框架来动手实践,将理论应用于解决实际问题。 阿里云

September 26, 2025 · 1 min · 19 words · Bob

我所理解的新机遇和新挑战

新时代新挑战和新机遇。 机遇:新能源、新市场 挑战:(主要提及经济方面):半导体、制造业、农业。 如题:首先,我认为,我们辩证性的看台机遇和挑战的问题。机遇、挑战往往并存。 在此,我将从机遇进行切入。新能源我们比较熟悉的有光伏产业、新能源汽车。许多年前,中国光伏产业席卷欧洲,如今,中国光伏产业处于全球主导地位,在单边主义、零和博弈盛行的今天,新兴市场,注入了新的动力,用爱不一定可以发电,但光伏可以,中国光伏在非洲市场大放异彩,为非洲的人民,提供了质优、价廉产品选择,同时也是最佳的选择,毕竟群众的眼睛是雪亮的。 谈到挑战,“世界工厂”的title正被撼动,经过新冠大流行,资本认为单一的绝对的依赖于某个地区进行生产已不可靠,或者说,他们找到了更廉价的劳动力市场,如:印度,印度尼西亚,越南,后者,也就是越南在开放其劳动力市场,一些国外的企业已经转移其生产地,著名的有运动鞋企业:耐克,他们宣称中国地区产出的鞋子仅用于中国市场,而越南产出的产品用于全球市场。 新能源汽车品牌如比亚迪,加持出口补贴,出口欧洲,引来一阵“卧槽”的同时,也引起了单方面的关税问题,西欧诸国,都增加了关税。上有政策,下有对策,比亚迪方面,改变策略,出口混合动力汽车,绕过针对中国品牌的新能源车关税。 半导体方面,国产半导体仍需自强,美国政府对外H100图形处理器进行出口管制,这包括可定位,引发了安全问题(对于中国来说),卧榻之侧岂容他人酣睡,同时这也迫使国产半导体产业的自立自强。 面对高额的关税,反制手段有限,停止进口美国大豆,进口巴西大豆进行补替;减少出口稀土 …。 综上,我认为,新机遇意味着:扬长;新挑战意味着:自强、走自己的路。

September 23, 2025 · 1 min · 11 words · Bob

练习使用MybatisPlus

基础使用 使用步骤 引入依赖 自己的mapper接口继承BaseMapper 我们可以看到(下图)baseMapper有着一系列的基础数据库操作 实体类配置 MybatisPlus通过以下实现CRUD数据库表信息 •默认以类名驼峰转下划线作为表名 •默认把名为id的字段作为主键 •默认把变量名驼峰转下划线作为表的字段名 MybatisPlus的常用注解: •@TableName:指定表名称及全局配置 •@TableId:指定id字段及相关配置 •@TableField:指定普通字段及相关配置 @TableField的常见场景: •成员变量名与数据库字段名不一致 •成员变量名以is开头,且是布尔值 •成员变量名与数据库关键字冲突 •成员变量不是数据库字段 yaml配置 1 2 3 4 mybatis-plus: #注册别名后,就不用在xml中写全路径名称了 type-aliases-package: com.itheima.mp.domain.po # 其它很多配置都不用配置,使用默认值即可 mybatisPlus不仅实现了一些基础的单表查询mapper,甚至提供了service接口,借助该接口能够完成一些基础业务 IService 通过一个接口和一个实现类来协调完成这些基础功能的实现 扩展插件 逻辑删除 直接再yaml中配置,配置完成后,原来删除方法如,deleteById,就会执行逻辑删除 1 2 3 4 5 6 7 8 9 mybatis-plus: global-config: db-config: # 逻辑删除字段名(在数据表中的) logic-delete-field: deleted # 逻辑已删除值(默认为 1) logic-delete-value: 1 # 逻辑未删除值(默认为 0) logic-not-delete-value: 0 JSON处理器 能够将数据库中存储的json数据,解析为对象 ...

September 18, 2025 · 1 min · 200 words · Bob

信息安全-course-1

前言:信息安全=技术+管理 信息安全不止于数字信息,还包含实体信息; 信息安全,不仅要求能够防患未然,而且在问题发生时要求能够处理。 信息安全三元素:CIA,额外的三个元素AAA 什么是Hash? Hash 用于防篡改,用于做快照,通过hash算法生成指定长度的唯一串。eg: 通过爬取网页内容生成hash,来判断网站内容是否更新 //这里了解一下相关的hash算法 非对称加密: 两种情况:1.用公钥加密 2.用私钥进行签名 用途:前者是为了对内容本身进行加密,后者是为了进行数字签名(目的是防止内容本身被篡改) 过程: 使用公钥(对内容加密):发送方使用公钥对内容加密后,接收方使用发送方的私钥进行解密。 使用私钥(对内容进行签名): 发送方:先对内容进行Hash(目的是生成固定长度的串),再通过私钥进行数字签名,将得到的签名值附在内容的尾部 接收方:使用公钥对签名进行处理,得到原始的内容Hash, 同时对内容生成hash,比对二者是否相等,最终判断内容是否被篡改 新时期,新风险:大算力暴力破解加密信息,在信息失去时效性前得到明文。 以下是AI扩展内容 信息安全导论:核心概念与基础技术 前言:信息安全是一个涵盖广泛的领域,其有效性建立在技术与管理的紧密结合之上。它不仅关乎数字信息的安全,也包含实体信息(如纸质文件、设备)的保护。一个健全的信息安全体系不仅要能防患于未然,还必须在安全事件发生时具备有效的响应与处理能力。 信息安全的核心基石:CIA 三元组与 AAA 信息安全的目標通常围绕三个核心原则,即 CIA 三元组: 保密性 (Confidentiality):确保信息不被未授权的用户、实体或进程访问或泄露。 完整性 (Integrity):保护数据免受未授权的篡改或破坏,确保数据的准确性和可靠性。 可用性 (Availability):确保授权用户在需要时可以可靠地访问信息和相关资产。 此外,还有三个至关重要的支撑性元素,常被称为 AAA: 认证 (Authentication):验证用户、系统或实体的身份是否属实。(“你是你说的人吗?”) 授权 (Authorization):决定通过认证的主体拥有哪些访问权限和操作权限。(“你被允许做什么?”) 可审计性 (Accounting / Auditing):记录和审查用户及系统的活动日志,用于追踪、取证和合规性检查。(“你做了什么?”) 什么是哈希(Hash)? 哈希(Hash),或称散列,是一种将任意长度的输入(如消息、文件)通过哈希算法转换成固定长度、唯一(或近乎唯一)的输出串的函数。这个输出串称为哈希值或消息摘要。 核心特性: 确定性:相同的输入永远产生相同的哈希值。 快速计算:能快速计算出任意输入的哈希值。 单向性:从哈希值极难(在计算上不可行)反推出原始输入。 抗碰撞性:极难找到两个不同的输入得到相同的哈希值。 雪崩效应:输入的微小变化会导致哈希值发生巨大且不可预测的变化。 用途: 防篡改:正如您笔记中所说,这是哈希最主要的用途之一。例如,软件下载站会提供文件的哈希值。用户下载文件后可以自行计算其哈希值并与官网提供的进行比对,若不一致,则说明文件可能在传输过程中被篡改或损坏。 快照与验证:用于检测数据变化。您的例子非常贴切:爬虫程序定期对网页内容生成哈希并存储。下一次爬取时,只需计算新内容的哈希并与旧值对比,即可高效判断网页内容是否更新,而无需比对整个网页内容。 密码存储:系统通常不直接存储用户密码明文,而是存储其哈希值。用户登录时,系统对输入的密码再次进行哈希计算,并与存储的哈希值比对。这样即使数据库泄露,攻击者也无法直接获得用户的明文密码。 区块链与数字货币:构成了区块链技术的基石,用于连接区块和保证交易记录的不可篡改性。 常见哈希算法: MD5:产生128位哈希值。因其抗碰撞性已被攻破,不再推荐用于安全目的,但仍可用于简单的完整性校验。 SHA-1:产生160位哈希值。同样存在安全性弱点,已被大多数安全应用淘汰。 SHA-2 家族:包括 SHA-256、SHA-384、SHA-512 等,是目前广泛使用的安全哈希算法。 SHA-3:最新的哈希标准,设计上与SHA-2不同,提供了另一种选择。 非对称加密(公钥密码学) 非对称加密使用一对 mathematically related 的密钥:一个公钥 (Public Key) 和一个私钥 (Private Key)。公钥可以公开给任何人,而私钥必须由所有者严格保密。正如您所指出的,其应用主要分为两种情况: ...

September 8, 2025 · 1 min · 108 words · Bob