AI遮天传 DL-深度学习在计算机视觉中的应用

简介: AI遮天传 DL-深度学习在计算机视觉中的应用

一、图像分类

a. 通用图像分类

将不同图片按照内容进行分类

b. 特定图像分类

特定识别人脸、某种动物、汽车等

1.1 人脸验证

 

下面是两种典型的人脸识别损失函数

1.1.1 DeepID2

上图左侧两个人比较像,都是侧脸,所以箭头短一点,下方一个是侧脸一个是正脸,而且光照也不相同,所以箭头长一点。我们希望经过训练后,上方的两张图片离得远一点(因为这是两个不同的人),而下方的图片近一些(同一个人)。

目标:当i,j身份相同时, 足够小,否则  其中

损失:

(一个minibatch至 少包含2个样本,为标签。)

1.1.2 FaceNet

随计算一个人得图片做为Anchor,然后选择和他同一个人的图片和不同的人的图片做训练。 其它同上。

目标:  其中 a>0

损失:

(一个minibatch至 少包含3个样本)

1.1.3 人脸验证的其它损失函数

SphereFace: Deep Hypersphere Embedding for Face Recognition, CVPR 2017

NormFace: L2 Hypersphere Embedding for Face Verification, ACM MM 2017

ArcFace: Additive Angular Margin Loss for Deep Face Recognition, CVPR 2019

二、物体检测

任务:找出图片中的物体和每个物体所在的位置。

怎么做这个任务?

找到包含物体的区域,用一个多分类器进行物体分类

怎么知道哪些区域包含物体?

找到很多候选区域,用一个二分类器进行区域分。

2.1 候选区域(Region Proposals)

指可能包含物体的区域、感兴趣区域 (Region of interest, ROI)。

挑选候选区域的多种选择

2.1.1 (C+1)-类的分类

上面提到简单检测物体的思路:


找到很多候选区域,用一个二分类器进行区域分类。

找到包含物体的区域,用一个多分类器(Softmax、SVM等)进行物体分类。

另外一种方法:


设有C个类别,加一个“背景”类

对每个区域用一个多分类器进行(C+1)-类的分类

对每个区域用(C+1)个二分类器进行分类

2.1.2 R-CNN

把每个候选框的图片剪贴出来,变成相同尺寸,经过一个同样的CNN进行一个二分类。这里用的上面提到的C+1类方法。SVM解决二分类问题。至于Bbox reg 用于解决回归问题,坐标定位。


步骤:


训练(或下载)ImageNet分类模型(如AlexNet)

针对检测微调(fine-tune)

提取特征

每个类别训练一个二分类SVM来为候选区域的特征进行分类

对每个类别,训练一个线性回归模型,将特征映射到一组偏移量,用以校正那些稍微有些误 差的候选区域

R-CNN有什么问题吗?


测试慢


需要对每个ROI跑一个完整的CNN前向过程。

非“端到端”过程


找候选区域, SVM和回归器基于CNN的特征进行处理。

SVM和回归器不能更新CNN的特征。

更好的想法?


先在整张图上跑一个CNN的前向过程,然后将每个ROI映射到特征图上。

2.1.3 Fast R-CNN

即先把整张图做一个神经网络,先把特征取好,想要什么特征就取什么特征。

感兴趣区域池化(RoI Pooling)

可见上面提取的图片大小是不同的,这里做一下池化。

结果:

Fast R-CNN问题:

R-CNN和Fast R-CNN它们的那些“框”来自于计算机视觉上的一些方法,万一不准怎么办?

2.1.4 Faster R-CNN

在最后一个卷积层后插入候选区域网络(Region Proposal Network ,RPN)

RPN用来直接产生候选区域; 不需要额外的候选框。

RPN之后, 使用RoI Pooling以及分类 器、回归器,类似Fast R-CNN。

通过Fast R-CNN的一个神经网络得到feature map,在最后一个卷积层后插入了RPN,会输出一些ROI。用神经网络的特征预测哪些区域有误。前面的方法用其它方法预测候选区域不一定准,而且是在Deep Learing兴起之前的一些方法。

候选区域网络 (RPN)

在feature map每个点上做两个预测,在每个点提出k个框(不同大小形状,k常设置为9,3种不同的形状*3种不同的大小如上右图),把这些框经过一个全连接层得到一个256维的向量去做两个任务1.识别物体(2分类,2k个) 2. 定位(4k个)。

Faster R-CNN 结果

2.1.5 两阶段与单阶段

上面介绍的三个模型有一个共同点,需要一些候选框,再对每个候选框进行处理。我们把这一类的方法称之为:两阶段方法。

两阶段方法较慢,现在人们已经在研发更快的方法:单阶段模型,它不再去预测哪个框是更合适的,所以更快,但精度会有些问题。

单阶段如何实现呢?

2.1.6 YOLO: You only look at once

将图像划分为S×S个网格;

每个网格预测B个矩形框, 每个框的置信度(与任意一个Ground truth框的IOU), 以及C个类别的概率。

这些预测结果可整合为大小为 S ×S ×(B ∗5 + C) 的张量

效果对比

https://github.com/yehengchen/Object-Detection-and-Tracking/blob/master/Twostage%20vs%20One-stage%20Detectors.md

在日常生活中,特定的物体检测应用更加广泛一些

三、图像分割

给定一张图片,对每个像素进行分类。

通常的一些卷积方法会使输出变小,所以我们就需要一些方法来增他特征图。

如何增大特征图?

上采样 (采样和插值)

对于一张输入图片,将其放大到指定尺寸,并用插值方法计算每个像素的值,例如双线性插值。

转置卷积 (不应称为反卷积deconvolution)

http://deeplearning.net/software/theano/tutorial/conv_arithmetic.html

3.1 全卷积网络(Fully Convolutional Networks)

一种典型图片分割网络。

对于一个输入,经过一些卷积后图片变得很小,进行上采样(此时尺寸和刚输入时相同)。

四、图像风格转换

主要的应用为图像分类、物体检测、图像分割,至于图像风格转换比较有趣,因此也分享一下。

目录
打赏
0
0
0
0
3
分享
相关文章
从零开始即刻拥有 DeepSeek-R1 满血版并使用 Dify 部署 AI 应用
本文介绍了如何使用阿里云提供的DeepSeek-R1大模型解决方案,通过Chatbox和Dify平台调用百炼API,实现稳定且高效的模型应用。首先,文章详细描述了如何通过Chatbox配置API并开始对话,适合普通用户快速上手。接着,深入探讨了使用Dify部署AI应用的过程,包括选购云服务器、安装Dify、配置对接DeepSeek-R1模型及创建工作流,展示了更复杂场景下的应用潜力。最后,对比了Chatbox与Dify的输出效果,证明Dify能提供更详尽、精准的回复。总结指出,阿里云的解决方案不仅操作简便,还为专业用户提供了强大的功能支持,极大提升了用户体验和应用效率。
986 19
从零开始即刻拥有 DeepSeek-R1 满血版并使用 Dify 部署 AI 应用
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
AI程序员:通义灵码 2.0应用VScode前端开发深度体验,在软件开发领域,人工智能技术的融入正深刻改变着程序员的工作方式。通义灵码 2.0 作为一款先进的 AI 编程助手,与广受欢迎的代码编辑器 Visual Studio Code(VScode)相结合,为前端开发带来了全新的可能性。本文将详细分享通义灵码 2.0 在 VScode 前端开发环境中的深度使用体验。
136 2
牛逼,这款开源聊天应用竟能一键召唤多个AI助手,跨平台通话神器!
`JiwuChat`是一款基于Tauri2和Nuxt3构建的轻量化多平台即时通讯工具,仅约8MB体积却集成了**AI群聊机器人**、**WebRTC音视频通话**、**屏幕共享**等前沿功能。一套代码适配Windows/macOS/Linux/Android/iOS/Web六大平台,堪称开发者学习跨端开发的绝佳样板!
一键轻松打造你的专属AI应用!
函数计算提供免运维、Serverless GPU,具备极致弹性与按量付费优势,助您一键部署AI大模型,加速业务创新。
积极拥抱AI,F5携手NVIDIA赋能加速AI应用交付
积极拥抱AI,F5携手NVIDIA赋能加速AI应用交付
27 4
|
19天前
|
Spring AI与DeepSeek实战一:快速打造智能对话应用
在 AI 技术蓬勃发展的今天,国产大模型DeepSeek凭借其低成本高性能的特点,成为企业智能化转型的热门选择。而Spring AI作为 Java 生态的 AI 集成框架,通过统一API、简化配置等特性,让开发者无需深入底层即可快速调用各类 AI 服务。本文将手把手教你通过spring-ai集成DeepSeek接口实现普通对话与流式对话功能,助力你的Java应用轻松接入 AI 能力!虽然通过Spring AI能够快速完成DeepSeek大模型与。
342 11
Java 也能快速搭建 AI 应用?一文带你玩转 Spring AI 可观测性
Java 也能快速搭建 AI 应用?一文带你玩转 Spring AI 可观测性
AIGC核心技术——计算机视觉(CV)预训练大模型
【1月更文挑战第13天】AIGC核心技术——计算机视觉(CV)预训练大模型
732 3
AIGC核心技术——计算机视觉(CV)预训练大模型
关于计算机视觉中的自回归模型,这篇综述一网打尽了
这篇综述文章全面介绍了自回归模型在计算机视觉领域的应用和发展。文章首先概述了视觉中的序列表示和建模基础知识,随后根据表示策略将视觉自回归模型分为基于像素、标记和尺度的三类框架,并探讨其与生成模型的关系。文章详细阐述了自回归模型在图像、视频、3D及多模态生成等多方面的应用,列举了约250篇参考文献,并讨论了其在新兴领域的潜力和面临的挑战。此外,文章还建立了一个GitHub存储库以整理相关论文,促进了学术合作与知识传播。论文链接:https://arxiv.org/abs/2411.05902
32 1
AI计算机视觉笔记二十 九:yolov10竹签模型,自动数竹签
本文介绍了如何在AutoDL平台上搭建YOLOv10环境并进行竹签检测与计数。首先从官网下载YOLOv10源码并创建虚拟环境,安装依赖库。接着通过官方模型测试环境是否正常工作。然后下载自定义数据集并配置`mycoco128.yaml`文件,使用`yolo detect train`命令或Python代码进行训练。最后,通过命令行或API调用测试训练结果,并展示竹签计数功能。如需转载,请注明原文出处。

热门文章

最新文章