【Image】图像处理
计算机视觉 CV
Perception
如自动驾驶领域。
只要是从所谓的图像当中去抽取信息的过程,我们都叫做Perception。
- 视觉检测可以涵盖二维检测,如车辆、人和信号灯的检测。
- 另外,还可以控制三维信息,直接在三维空间中操作数据。

SLAM
SLAM 全称 Simultaneous Localization and Mapping。
- 计算机视觉领域不仅包括检测,还可以进行分割、车道线检测等任务。
- SLAM(同时定位和地图构建)是一个重要的概念,用于定位和制图。
- SLAM技术在VR和AR中的应用需要解决同时定位和制图的问题。

视差和深度信息
- 视差是深度信息的一种表示,与深度信息本质相同。
- 生成深度信息对于改变场景视角非常重要,比如为VR和AR创建不同视角。
- 生成深度信息通常需要复杂的数学和算法。
三维建模和修复
- 三维建模允许将现实世界的对象小型化,如无人机。
- 图像修复工作包括通过周围信息自动填充被删除的内容。
- 逆过程也可能是可行的,例如从图像中删除不想看到的对象。
计算机视觉是一个广泛的领域,包括了众多任务和应用,从二维检测到三维建模和修复。这个领域需要深厚的数学和算法知识,但也为许多领域的科学和技术进步提供了新的可能性。

人脸和图像修复
- 人脸驱动和美化: 你可以使用CV技术来实现人脸驱动,例如将一张人脸的表情应用到另一张脸上。此外,你还可以使用CV技术进行美颜处理,例如瘦脸。

- 图像修复: CV技术可以帮助修复图像中的缺陷或损坏,例如自动填充图像中缺失的部分,根据周围的信息进行补全。
- 对象移除: 你可以使用CV技术从图像中删除不需要的对象或元素,使图像更清晰或美观。

总结一下什么是CV
CV就是从图像、视频或者其他媒介中提取信息
• Extract Info from Image / Video / Other types of data: depth map / IR image / disparity map / point clouds / …
-
Image

-
Video

-
Other types of data
-
深度图 (depth map): 深度图是一种图像,但它不使用颜色来表示图像中的内容,而是使用灰度值。这些灰度值实际上表示物体距离相机的距离,而不是颜色信息。较暗的区域通常表示距离较远,而较亮的区域表示距离较近。
-
红外图像 (IR image): 红外图像是使用红外相机捕获的图像,它具有不同的信息呈现方式。这种图像在某些应用中很有用,例如夜视设备。
-
视差图 (disparity map): 视差图是计算机视觉中的一个关键概念,它表示左右相机看同一点时的距离差异。这些差异可用于计算深度信息,就像深度图一样。
-
点云 (point clouds): 点云是一组三维点的集合,通常用于表示物体的表面或场景的三维结构。它在无人车等领域中广泛应用,用于建立场景的三维模型。

-
生成模型 Generative Model
生成模型的定义: 生成模型是一种能够生成新数据,尤其是与现有数据相关的数据的模型。这些模型可以创建新的图像、文本、声音等内容。

-
人脸转换: 使用生成模型,可以实现人脸的转换。例如,将一个侧脸的照片转化为正面的照片,这在过去是难以想象的。
-
照片上色: 生成模型可用于给黑白照片上色,提高图像的质量,使图像更生动。
-
去除反光: 生成模型也可以用于去除图像中的反光,改善照片质量。
-
文本描述生成图像: 这个模型的另一个重要应用是从文本描述生成图像。用户可以提供文本描述,生成模型会生成符合描述的图像。

-
多模态生成: 最新的生成模型可以处理多种不同类型的数据,如图像、文本、音频等。这使得可以在不同模态之间进行转化,例如,生成带有文本描述的图像和音频。

-
商业应用: 生成模型还具有商业潜力,如影视业中,它可以用于实现电影角色的语言切换,使角色的表情、口型保持不变,只是语言切换为不同语种,从而扩大电影的受众。
CV范式 Paradigm of CV
我们可以从低层次(low level)、中层次(mid level)和高层次(high level)的角度总结计算机视觉(CV)的发展:
-
低层次(Low Level):
- 低层次计算机视觉主要关注从原始图像中提取基础信息,如角点和边缘。
- 角点是图像中的突出点,通常位于物体的角部分,而边缘是具有不同亮度或颜色的地方。
- 基础信息提取的过程需要进行数学建模,例如计算图像的梯度,以获得变化信息。

-
中层次(Mid Level):
- 中层次计算机视觉涉及从基础信息中提炼出更具语义的特征。
- 特征工程是一个常见的任务,它涉及到描述字(特征点/特征向量)的生成。
- 这些描述字通常包含关于物体方向、周围区域的信息以及其他特征,例如尺度和旋转不变性 (放缩或旋转后仍然是角点)。

-
高层次(High Level):
- 在高层次计算机视觉中,利用从基础信息和特征中提取的信息进行语义任务。
- 这包括利用经典工具(如SVM)或神经网络(如CNN)来执行任务,如物体识别或图像分类。
- 语义任务可以涵盖更高级的概念,例如对象检测、人脸识别、图像分割等。
CNN

-
pre-algorithm
- 数据预处理和增广:这个阶段涉及数据的准备,包括对图像或数据进行预处理,如翻转、遮挡、添加噪音等,以增加数据的多样性。还包括对标签(label)的操作,如标注错误以改进模型的泛化能力。
-
in-algorithm
- 网络结构(Backbone):这个阶段涉及网络的结构设计,如卷积神经网络(CNN)的骨干结构(Backbone)。这是模型的基本框架,可以包括各种类型的神经网络结构,如Transformer、U-Net等。
- 网络连接和结构调整(Neck):这个阶段是连接Backbone和Head之间的过渡,通常包括一些网络连接和结构调整,以适应特定的任务。
- (Head):Headnetwork,有些用于做分割、有些用于做分类…
- 训练策略(Training Control):在这个阶段,确定如何训练模型,包括学习策略、训练策略、优化器的选择等。这是模型训练的关键部分。
-
post-algorithm
5. 后处理和损失函数(Loss Functions):最后一个阶段涉及模型输出的后处理,以及损失函数的选择。损失函数的选择取决于任务的不同,如目标检测、分割等。

-
CNN层级结构:
- Layer:CNN层级结构的基本组成单元。它包括卷积层(Convolutional Layer)、池化层(Pooling Layer)、批归一化层(Batch Normalization Layer)、全连接层(Fully Connected Layer)和丢弃层(Dropout Layer)。卷积层用于提取特征,池化层用于降低空间维度,批归一化层有助于加速训练,全连接层用于输出预测,丢弃层用于防止过拟合。
- Module:模块是由多个层级组合而成的结构,用于构建更复杂的CNN模型。例如,残差块(ResBlock)是一种常见的模块,它包含跳跃连接,有助于解决梯度消失问题。其他模块包括CBAM(Convolutional Block Attention Module)和SE-Net(Squeeze-and-Excitation Network),它们用于增强模型的特征学习能力。
- Network:网络是由多个模块组合而成的CNN结构。常见的CNN网络结构包括VGG、ResNet、UNet、MobileNet等。它们在不同的任务中表现出色,如图像分类、目标检测、分割等。

-
CNN应用:
- 目标检测(Detection):目标检测是在图像中识别和定位物体的任务。常见的检测算法包括Faster R-CNN、YOLO(各个版本如YOLOv2、YOLOv3、YOLOv4、YOLOv7、YOLOv8)、RetinaNet、FPN(Feature Pyramid Network)、CenterNet等。这些算法结合了卷积神经网络和目标框回归方法,实现了高效的目标检测。
- 生成对抗网络(GAN):GAN是一种生成模型,由生成器和判别器组成,用于生成与真实数据相似的数据。常见的GAN算法包括原始GAN、Wasserstein GAN(WGAN)、条件GAN、Pix2Pix、Cycle-GAN等。GAN用于图像生成、风格迁移、图像超分辨率等任务。
- 关键点检测(Keypoint Detection):关键点检测是在图像中定位关键点的任务,例如人体关节的位置。Hourglass网络是一种常用于关键点检测的CNN结构,它具有逐级降采样和上采样层,用于生成关键点热图。
- 三维相关(3D Related):3D视觉任务涵盖了立体匹配、点云分析、物体姿态估计等。一些重要的算法包括GANet、LEAStereo、PointNet、Voxelnet、MiDas、PoseCNN、SSD-6D等,它们用于从多视图或点云数据中重建三维信息。
- 图像分割(Segmentation):图像分割任务涉及将图像中的不同区域分配给不同的类别。常用的分割网络包括UNet、ENet、PANet等,它们具有编码-解码结构,有助于精确的语义分割。
- 模型加速(Acceleration):模型加速方法用于减少深度学习模型的复杂度,以便在资源受限的设备上进行推断。这些方法包括网络剪枝(Network Slimming)、知识蒸馏(Knowledge Distillation)以及使用轻量级模型如MobileNet、ShuffleNet、GhostNet等。
- 神经架构搜索(NAS):神经架构搜索是一种自动化的深度学习模型设计方法,其目标是找到最佳的网络结构。EfficientNet是一个成功的NAS例子,它通过均衡了模型宽度、深度和分辨率,实现了高性能的图像分类。
VGG
后续补充
残差网络 ResNet
后续补充
UNet
Unet最初由Olaf Ronneberger、Philipp Fischer和Thomas Brox于2015年提出,用于图像分割任务。Unet的设计灵感来自生物医学图像处理领域,特别是用于细胞分割的应用。该网络架构在医学图像分割、计算机视觉和许多其他领域的图像分析任务中非常成功。
Unet的关键特点是其编码器-解码器结构,其中编码器用于捕获图像的上下文信息,而解码器用于还原分割结果的空间分辨率。以下是Unet架构的主要组成部分:
-
编码器(Encoder):编码器部分由卷积层和池化层组成,用于逐渐降低输入图像的空间分辨率并提取特征。每一层都会增加特征的抽象性,从边缘和纹理信息到更高级别的语义信息。
-
解码器(Decoder):解码器部分由反卷积层和/或上采样层组成,用于逐步增加特征图的分辨率,并将上下文信息与高分辨率特征图相结合,以生成分割结果。解码器的每一层都通过跳跃连接(skip connections)与相应编码器层相连接,以帮助细节保留和避免信息丢失。
-
损失函数:通常使用像素级别的损失函数,如交叉熵损失或Dice损失,来衡量模型的输出与实际分割掩码之间的差异。
Unet的主要优点包括:
-
良好的上下文信息捕获:由于编码器部分逐渐减小图像尺寸,可以捕获更广泛的上下文信息,有助于准确的分割任务。
-
跳跃连接:跳跃连接有助于维护高分辨率特征的信息,从而提高分割的细节和准确性。
-
相对较少的参数:相对于一些其他深度学习模型,Unet通常具有相对较少的参数,这有助于减少训练和推理的计算成本。
Transpose Convolution & Upsampling
Transpose Convolution(转置卷积,也称为反卷积或分数步长卷积)和上采样都是用于增加图像或特征图的空间分辨率的技术,通常用于深度学习中的图像处理任务,如图像分割或生成任务。
-
转置卷积(Transpose Convolution):
- 转置卷积是一种卷积运算的逆操作,它用于将特征图的空间分辨率扩展,从而使特征图变得更大。
- 在标准卷积操作中,卷积核滑动并执行池化操作,将输入特征图的空间分辨率降低。转置卷积的操作与之相反,可以将特征图的分辨率增加。
- 转置卷积的卷积核通常包含零填充,以扩大特征图的大小。它还具有可学习的权重参数,可以在训练中调整,以适应特定任务。
- 转置卷积通常用于解码器部分,用于从编码器获得的低分辨率特征图生成高分辨率分割结果。
-
上采样(Upsampling):
- 上采样是一种简单的操作,它通过插值技术将低分辨率图像或特征图的大小增加到所需的分辨率。
- 常见的上采样方法包括最邻近插值、双线性插值和双三次插值等。这些方法可以根据需要平滑地增加图像的大小。
- 上采样通常用于从编码器到解码器传递信息,以便在分割任务中恢复特征图的分辨率。例如,它可以用于跳跃连接中,以将低分辨率特征图上采样到与解码器特征图相匹配的分辨率,并将它们相结合以生成分割结果。
虽然转置卷积和上采样都可以用于增加特征图的分辨率,但它们之间存在一些差异。转置卷积通常包含可学习的参数,可以更好地适应特定任务,而上采样是一种简单的插值技术,通常不包含可学习的参数。在实际应用中,根据任务和性能要求,可以选择使用其中一种或两种技术来进行上采样操作。
相关文章:
【Image】图像处理
计算机视觉 CV Perception 如自动驾驶领域。 只要是从所谓的图像当中去抽取信息的过程,我们都叫做Perception。 视觉检测可以涵盖二维检测,如车辆、人和信号灯的检测。另外,还可以控制三维信息,直接在三维空间中操作数据。 SL…...
JAVA对文档加密
当 Word 文档中包含无法公开的机密信息时,我们可以对其进行加密,使其在没有密码的情况下无法打开。本文将向您介绍如何使用 Spire.Doc for Java 加密 Word 文档和移除 Word 密码保护。 加密 Word 文档删除 Word 密码保护 安装 Spire.Doc for Java 首先…...
EmbedAI:一个可以上传文件训练自己ChatGPT的AI工具,妈妈再也不用担心我的GPT不会回答问题
功能介绍: 个性化定制:提供灵活的训练选项,用户能够通过文件、网站、Notion文档甚至YouTube等多种数据源对ChatGPT进行训练,以满足不同领域和需求的个性化定制。广泛应用场景:ChatGPT支持多种用例,包括智能…...
runCatching异常捕获onSuccess/onFailure返回函数,Kotlin
runCatching异常捕获onSuccess/onFailure返回函数,Kotlin fun test(a: Int, b: Int) {runCatching {a / b}.onSuccess {println("onSuccess: $it")return ok(it)}.onFailure {println("onFailure: $it")return fail(it)} }fun ok(o: Any) {prin…...
IDEA报错处理
问题1 IDEA 新建 Maven 项目没有文件结构 pom 文件为空 将JDK换成1.8后解决。 网络说法:别用 java18,换成 java17 或者 java1.8 都可以,因为 java18 不是 LTS 版本,有着各种各样的问题。。...
使用动画曲线编辑器打造炫酷的3D可视化ACE
前言 在制作3D可视化看板时,除了精细的模型结构外,炫酷的动画效果也是必不可少的。无论是复杂的还是简单的动画效果,要实现100%的自然平滑都是具有挑战性的工作。这涉及到物理引擎的计算和对动画效果的数学建模分析。一般来说,只…...
使用 React 和 ECharts 创建地球模拟扩散和飞线效果
在本博客中,我们将学习如何使用 React 和 ECharts 创建一个酷炫的地球模拟扩散效果。我们将使用 ECharts 作为可视化库,以及 React 来构建我们的应用。地球贴图在文章的结尾。 最终效果 准备工作 首先,确保你已经安装了 React,并…...
http状态码(一)400报错
一 400报错汇总 ① 综述 一、4xx状态码报错说明: 客户端行为导致的报错二、通用的4xxHTTP报错1) 4002) 4013) 4034) 4045) 405 --> 不允许方法,可能跨域或者nginx限制请求方法6) 4087) 4138) 419三、ngin自身定义的4xx报错495、496、497、498、4…...
【深度学习目标检测】五、基于深度学习的安全帽识别(python,目标检测)
深度学习目标检测方法则是利用深度神经网络模型进行目标检测,主要有以下几种: R-CNN系列:包括R-CNN、Fast R-CNN、Faster R-CNN等,通过候选区域法生成候选目标区域,然后使用卷积神经网络提取特征,并通过分类…...
芒果RT-DETR改进实验:深度集成版目标检测 RT-DETR 热力图来了!支持自定义数据集训练出来的模型
💡该教程为改进RT-DETR指南,属于《芒果书》📚系列,包含大量的原创改进方式🚀 💡🚀🚀🚀内含改进源代码 按步骤操作运行改进后的代码即可💡更方便的统计更多实验数据,方便写作 芒果RT-DETR改进实验:深度集成版目标检测 RT-DETR 热力图来了!支持自定义数据集…...
c语言实验八
实验1:在主函数中输入num个字符串,写一个函数,从传入的num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址,在主函数中输出。(注意:用****作为结束输入的标志。) #i…...
ArcGIS Pro SDK文件选择对话框
文件保存对话框 // 获取默认数据库var gdbPath Project.Current.DefaultGeodatabasePath;//设置文件的保存路径SaveItemDialog saveLayerFileDialog new SaveItemDialog(){Title "Save Layer File",OverwritePrompt true,//获取或设置当同名文件已存在时是否出现…...
ACT、NAT、NATPT和EASY-IP
目录 一、ACL 1.ACL 2.ACL的两种应用匹配机制 3.ACL的基本类型 4.ACL命令操作 5.ACL实验: 4.ACL的应用原则: 5.匹配原则: 二、NAT 1.NAT的原理及作用: 2.NAT分类 3.NAT配置 三、EASY-ip实验 四、NATPT 五、通配符 …...
HTML实现每天单词积累
注册页面 <!DOCTYPE html> <html> <head><meta charset"UTF-8"><title>注册</title><style>body {font-family: Arial, sans-serif;background-color: #f5f5f5;}form {max-width: 500px;margin: 50px auto;padding: 40px…...
【ECMAScript笔记二】运算符分类,流程控制(顺序结构、分支结构、循环结构)
文章目录 4 运算符4.1 算术运算符4.2 递增和递减运算符4.3 比较运算符4.4 逻辑运算符4.5 赋值运算符4.6 运算优先级 5 流程控制5.1 顺序结构5.2 分支结构5.2.1 if 语句5.2.2 switch 语句 5.3 循环结构5.3.1 for循环5.3.2 while循环5.3.3 do while循环5.3.4 continue和break 5.4…...
ShenYu网关注册中心之Zookeeper注册原理
文章目录 1、客户端注册流程1.1、读取配置1.1.1、用于注册的 ZookeeperClientRegisterRepository1.1.2、用于扫描构建 元数据 和 URI 的 SpringMvcClientEventListener 1.2、扫描注解,注册元数据和URI1.2.1、构建URI并写入Disruptor1.2.2、构建元数据并写入Disrupto…...
高级C#技术(二)
前言 本章为高级C#技术的第二节也是最后一节。前一节在下面这个链接 高级C#技术https://blog.csdn.net/qq_71897293/article/details/134930989?spm1001.2014.3001.5501 匿名类型 匿名类型如其名,匿名的没有指定变量的具体类型。 举个例子: 1 创建…...
【性能测试】基础知识篇-压力模型
常见压力模式 并发模式(即虚拟用户模式)和RPS模式(即Requests Per Second,每秒请求数,吞吐量模式)。 本文介绍这两种压力模式的区别,以便根据自身业务场景选择更合适的压力模式。 并发模式 …...
springboot-redis设置定时触发任务详解
最近研究了一下“redis定时触发”,网上查了查资料,这里记录一下。 从Redis 2.8.0开始,Redis加入了发布/订阅模式以及键空间消息提醒(keyspace notification)功能。键空间消息提醒提供了允许客户端通过订阅指定信道获取…...
Video anomaly detection with spatio-temporal dissociation 论文阅读
Video anomaly detection with spatio-temporal dissociation 摘要1.介绍2.相关工作3. Methods3.1. Overview3.2. Spatial autoencoder3.3. Motion autoencoder3.4. Variance attention module3.5. Clustering3.6. The training objective function 4. Experiments5. Conclusio…...
第七届先进金属材料国际研讨会(AMM 2026)
第七届先进金属材料国际研讨会(AMM 2026) The 7th Intl Conference on Advanced Metallic Materials(AMM 2026) 2026年8月7-9日 中国昆明 📅 重要信息 会议官网:https://www.academicx.org/AMM/2026/ 会议时间:2026年8月7-9日 会议地点…...
让框架跑得久一点:失败继续、日志、截图、HTML 与网络现场
摘要 前面几篇讲了框架如何执行 CSV、如何处理变量和状态、如何做网络断言。 到这里,框架已经能跑起来。 但自动化测试长期使用时,真正麻烦的不是失败,而是失败后看不懂。 这篇文章讲框架为了“失败后能排查”做了哪些设计:contin…...
神经网络分子动力学与长程静电模拟优化策略
1. 神经网络分子动力学与长程静电模拟的技术背景分子动力学模拟作为计算化学和材料科学的核心工具,其本质是通过数值求解牛顿运动方程来预测原子和分子的运动轨迹。传统的第一性原理分子动力学(AIMD)虽然精度高,但由于计算复杂度随…...
Adobe-GenP 3.0终极指南:5分钟快速激活Adobe全系列专业软件
Adobe-GenP 3.0终极指南:5分钟快速激活Adobe全系列专业软件 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP Adobe-GenP是一款专门为Adobe Creative Clou…...
出库篇:仓库里的货往哪去?——WMS出库方式全解析,物流新人必读
仓库里的货往哪去?——WMS出库方式全解析,物流新人必读 摘要:货品有进必有出。上一期我们聊了WMS中货品的四大来源(采购、生产、退货、调拨入库),这一期我们来看看货品是怎么“出”去的——销售出库、采购退…...
RT-Thread Nano串口控制台移植:GD32F470实现rt_kprintf打印与调试
1. 项目概述与核心目标上次我们成功把 RT-Thread Nano 内核搬到了梁山派 GD32F470 开发板上,让这块高性能的 MCU 跑起了实时任务调度。但光有内核,就像给电脑装好了操作系统却没法敲命令、看输出,调试和交互起来非常别扭。官方 Nano 包的精髓…...
对比直接使用原生 API 与通过 Taotoken 调用在账单清晰度上的差异
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比直接使用原生 API 与通过 Taotoken 调用在账单清晰度上的差异 对于需要频繁调用多个大语言模型的团队或个人开发者而言&#x…...
NotebookLM溯源结果不显示原文页码?紧急补丁已部署!2024Q3最新API v2.3溯源增强版深度解读
更多请点击: https://intelliparadigm.com 第一章:NotebookLM溯源功能演进与v2.3核心定位 NotebookLM 自 2023 年初发布以来,其“溯源”能力经历了从静态引用标注到动态上下文感知的显著跃迁。早期版本仅支持对上传文档片段生成粗粒度来源标…...
Dify聊天应用嵌入式集成实战:从iframe通信到安全部署
1. 项目概述与核心价值最近在折腾一个智能对话应用,想把它的核心能力无缝嵌入到自己的网站或者移动端App里,而不是让用户跳转到一个独立的Web页面。这个需求其实挺普遍的,无论是想给自家产品增加一个智能客服入口,还是想打造一个集…...
BilibiliDown:如何轻松实现B站视频批量下载与音频提取的终极指南
BilibiliDown:如何轻松实现B站视频批量下载与音频提取的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh…...
