__ ___ _ _ ___ ____
/ |/ /___ _(_) _____ (_) | / _/ _________ ____ ___
/ /|_/ / __ `/ / | /| / / _ \/ / /| | / /_____/ ___/ __ \/ __ `__ \
/ / / / /_/ / /| |/ |/ / __/ / ___ |_/ /_____/ /__/ /_/ / / / / / /
/_/ /_/\__,_/_/ |__/|__/\___/_/_/ |_/___/ \___/\____/_/ /_/ /_/
作者系迈微AI研习社创始人、CSDN博客专家,主要分享机器学习算法、计算机视觉等相关内容,每周研读顶会论文,持续关注前沿技术动态。公众号底部有菜单分类,关注我们,一起学习成长。
��
一种结合了代码、图示和HTML的在线学习媒介全面 前沿 免费 计算机视觉实战演练:算法与应用
|
sec_code
图1 L0CV 结构图
fig_book_org
本书详细介绍,请移步 序言。
第一部分包括基础知识和预备知识。提供深度学习的入门课程,然后在理论篇中,将快速向你介绍实践计算机视觉所需的前提条件,例如如何存储和处理数据,以及如何应用基于线性代数、微积分和概率基本概念的各种数值运算,涵盖了深度学习的最基本概念和技术,例如线性回归、多层感知机和正则化。
第二部分是本书涉及的计算机视觉基础理论,核心部分为神经网络模型,包括神经网络、卷积神经网络、循环神经网络理论讲解,以图像分类、模型拟合与优化作为其代码的实战项目。在模型拟合和优化章节中,着重分享梯度下降、随机梯度下降、动量法、AdaBoost等方法。
接下来的七章集中讨论现代计算机视觉技术实战,也是本书的核心部分。围绕这样的组织逻辑:什么是计算机视觉?计算机视觉解决什么问题,都是怎么解决的?传统方法——以卷积神经网络为中心的神经网络;现代方法——Transformer、强化学习、迁移学习、生成对抗等。各种方法是如何实现的,用到了什么框架?在第7章中,描述了计算机视觉的经典卷积神经网络PyTorch实现,并为我们随后实现更复杂的模型奠定了基础。在随后的几个章节中,我们主要解决图像分类、目标检测、语义分割、3D重建等实际问题,并给出实战项目。
该部分以项目为实战指导,给出详细的项目指导书和代码实现,更为特别的是,给出了notebook可以直接在线运行,跑通结果,免去了本地运行环境的搭建复杂性。于此同时,为了方便读者在本地调试,作者建立了一个名为 L0CV
的第三方包,可以直接在代码中 import L0CV
后使用。
第三部分讨论最近几年出现的“网红”模型,诸如:Transformer、Attention、知识蒸馏、迁移学习、生成对抗模型等。这部分也是此份资料的力挺之作。最后,在 chap_optimization
中,我们讨论了用于训练深度学习模型的几种常用优化算法,如:模型压缩、模型剪枝、微调、蒸馏等。
本开源项目代表了我们的一种尝试:我们将教给读者概念、背景知识和代码;我们将在同一个地方阐述剖析问题所需的批判性思维、解决问题所需的数学知识,以及实现解决方案所需的工程技能。
我们的目标是创建一个为实现以下目标的统一资源:
- 地址: https://charmve.github.io/computer-vision-in-action/
�� 在线阅读(优先更新实战篇和进阶篇)
- 更新中 ... |
按书中内容先后顺序逐章阅读,或者选取特定章节祥读
docs/
1,动手实践章节代码,在代码文件
code/
2 下找到对应代码,本地测试或者Colab
notebooks/
3 在线测试。
�� L0CV/
- 专为本项目建立的�� L0CV
包�� code/
- 书中完整代码�� datasets/
- 本书所用数据集
�� images/
- 经典图像处理图片�� docs/
- 全书按照一下几个篇目进行编写
�� 0_绪论/
- 全书绪论�� 1_理论篇/
- 基本理论和算法基础�� 2_实战篇/
- 项目实战教程�� 3_进阶篇/
- 最新CV模型和算法�� 附件/
- 所需数学和统计学知识�� img/
- 各章节所使用的插图�� models/
- 封装可用的预训练模型�� notebooks/
-�� 全书 Colab notebook,可在线测试
�� chapter01_neural-networks/
- 第 1 章 - 神经网络 Jupyter Notebook 实现�� chapter02_CNN/
- 第 2 章 - 卷积神经网络 Jupyter Notebook 实现�� chapter03_Image-Classification
- 第 3 章 - 图像分类 Jupyter Notebook 实现�� chapter04_recurrent-neural-networks/
- 第 4 章 - 递归神经网络 Jupyter Notebook 实现�� chapter05_graph-neural-network/
- 第 5 章 - 图神经网络 Jupyter Notebook 实现�� chapter07_optimization/
- 第 6 章 - 模型拟合与优化算法 Jupyter Notebook 实现�� chapter08_environment-setup-and-tool-use/
- 第 7 章 - 软件环境搭建与工具使用 Jupyter Notebook 实现�� chapter09_convolutional-neural-networks/
- 第 8 章 - 经典神经网络架构:原理与PyTorch实现 Jupyter Notebook 实现�� chapter12_practice-projects
- 第 12 章 - 计算机视觉课题研究初探 Jupyter Notebook 实现�� chapter13_Understanding-and-Visualizing/
- 第 13 章 - 可视化与理解卷积神经网络 Jupyter Notebook 实现�� chapter14_GAN/
- 第 14 章 - 生成对抗模型 Jupyter Notebook 实现�� chapter15_Transfer-Learning/
- 第 15 章 - 迁移学习 Jupyter Notebook 实现�� chapter16_Attention/
- 第 16 章 - 注意力机制 Jupyter Notebook 实现�� chapter17_Transformers/
- 第 17 章 - Transformers Jupyter Notebook 实现- ...
�� imgs/
- Jupyter Notebook 中用到的图片�� docker/
- 为降低读者的学习成本,目前未进行搭建�� res/
- ui 图片及全书思维导图PDF�� README.md
- 全书介绍及目录
pip3 install -r requirements.txt
python3 -m pip install --upgrade pip
python3 -m pip install jupyter
请在终端(Mac / Linux)或命令提示符(Windows)上运行以下命令:
cd notebooks
jupyter notesbook
图3 例子:12.3.3 样式迁移 Colab 点击 [Copy to Drive]
/code
sudo apt-get update
pip3 install -r requirements.txt
python3 setup.py
cd code
python3 L0CV_test.py
import L0CV
在线教程页面无法打开:
测试中存在部分人打不开在线教程的情况。
部分小伙伴反馈尝试切换浏览器后可以正常打开了,如果仍然不行,最有效的解决办法是科学上网。
无法加载图片的解决办法:
根本解决办法还是科学上网,也可以尝试修改host文件看下是否能解决。
公式无法正常显示解决办法:
GitHub中的Markdown原生是不支持LATEX公式显示的,如果你喜欢在本项目中直接浏览教程,可以安装Chrome的MathJax Plugin for Github
插件让大部分公式正常显示。而docs文件夹已经利用docsify被部署到了GitHub Pages上,包含公式的章节强力建议使用 《计算机视觉实战演练:算法与应用》 在线阅读 进行学习。
当然如果你还想跑一下运行相关代码的话还是得把本项目clone下来,然后运行code文件夹下相关代码。
Jupyter Notebook 无法在 GitHub 上呈现? 使用 nbviewer。
L0CV
代码部分采用 Apache 2.0协议 进行许可,包括名为 L0CV 的原创第三方库、/code
和/notebook
下的源代码。遵循许可的前提下,你可以自由地对代码进行修改,再发布,可以将代码用作商业用途。但要求你:
Apache 2.0
协议文件。L0CV
文档部分采用 知识共享署名 4.0 国际许可协议 进行许可。 遵循许可的前提下,你可以自由地共享,包括在任何媒介上以任何形式复制、发行本作品,亦可以自由地演绎、修改、转换或以本作品为基础进行二次创作。但要求你:
如果您在使用的过程中碰到问题,可以通过下面几个途径寻求帮助,同时我们也鼓励资深用户通过下面的途径给新人提供帮助。
感谢前人的杰出工作,我才得以写出此书。感谢 参考文献 中列出及未列出的,所有对此开源工作有帮助的前辈!
若本书里没有你想要理论和实战项目,或者你发现本书哪个地方有错误,请毫不犹豫地去本仓库的 Issues( 地址 https://github.com/charmve/computer-vision-in-action/issues )进行反馈,在对应版块提交你希望补充的内容或者勘误信息,作者通常会在 24 小时以内给您回复,超过 24 小时未回复的话可以邮件联系我(微信 MaiweiE_com);
同时,我也欢迎大家加入本项目的建设中来,欢迎 pull request!
请尽管表达你们的意见和建议,GitHub issues 和 电子书下方都可以留言,也可写邮件给我,我一定会回!
作者会尽最大努力来确保书中内容的准确性,但难免会存在疏漏与不妥之处。欢迎您将发现的问题反馈给我们,帮助提升本开放资源的质量。
Help us make these docs great!All VC-action docs are open source. See something that's wrong or unclear? Submit a pull request. Make a contribution |
Use this bibtex to cite this repository:
@misc{computer-vision-in-action,
title={计算机视觉实战演练:算法与应用(Computer Vision in Action)},
author={Charmve},
year={2021.06},
publisher={Github},
journal={GitHub repository},
howpublished={\url{https://github.com/Charmve/computer-vision-in-action}},
}
Awesome! Charmve/computer-vision-in-action was created 2 months ago and now has 956 stars.
Feel free to ask any questions, open a PR if you feel something can be done differently!
Created by Charmve & maiwei.ai Community | Deployed on GitHub Page
Interesting Evolutions of Advanced Topics in Computer Vision A list of topics for advanced computer vision from 2003 to 2010, interestingly, if you make a comparison. 2003 (Link) Texture synthesis I
QQ Group: 428014259 Sina Weibo:小锋子Shawn Tencent E-mail:403568338@qq.com http://blog.csdn.net/dgyuanshaofeng/article/details/84482829 [1] Two-Stream Convolutional Networks for Action Recognition in Vid
Reading Lists for Advanced Computer Vision in 2009 and 2010 --2009-- 1. Image Descriptors · [SIFT] Lowe, D.G. Distinctive image features from scale-invariant keypoints. IJCV, 2004.· · [GIST] Oliva, A.
计算机视觉涉及使用计算机软件和硬件建模和复制人类视觉。 在本章中,您将详细了解这一点。 计算机视觉 计算机视觉是一门学科,研究如何根据场景中存在的结构的属性,从其2d图像重建,中断和理解3d场景。 计算机视觉层次结构 计算机视觉分为以下三个基本类别 - Low-level vision - 它包括用于特征提取的过程图像。 Intermediate-level vision - 包括物体识别和3D场
Computer Networking This is the place to learn more about computer networking.It can be used by people who are new to computer networking or experienced one who searchfor more specific-area resources.
Computer Science Resources A list of resources in different fields of Computer Science (in multiple languages). Content Getting Started Map of Computer Science Map of Mathematics Map of Physics MIT Co
现在天气越来越热了,使用笔记本的人,一定都有烤'猪蹄'的感觉了。特别是使用UBUNTU系统的人。我推荐一个目前我在使用的测试温度的软件。 Computer Temperature Monitor,在Ubuntu的软件中心里面有,也可以到官方网站上下载一个。 安装完后在gnome面板上右键添加到面板,会找到Computer Temperature Monitor,添加就可以用了。 更多屏幕截图请看:
little-virtual-computer 是一个用 TypeScript 构建的虚拟机项目。 该项目基于 jsdf/little virtual computer ,这是一个非常有趣的项目,目标是使用 JavaScript 构建一个模拟计算机。 当前虚拟机使用数组模拟内存,同时与指令结合起来操作内存来控制数据与显示。 作者使用 TypeScript 和设计模式进一步拆分和简化了源代码。让源代