零基础玩转AI(1)--知识简介
相信你已经或多或少的听过AI的各种新闻。AI脱衣(deepnude),AI变性(deepSex),AI换脸(deepfake),AI换声(deepvoice),AI图像猜想(inpaint),AI抠图(matting),AI演奏(moonlight),AI图片上色/风格迁移/草图转画本/截图转代码(GAN系列),老婆生成,语音识别,音频分割,目标跟踪,等等等等。
image.png
这样的
image.png
或这样的,等等。
但是却很少有一个较为全面的介绍。没错,接下来我会在总结中无一例外的讲解到上面所有的这些例子。(脱衣就算了)以及实现他们的网络架构,原论文解读和优化方向。当然,不仅仅是上面的这些。会有更多其他的例子穿插在我的总结中。
至于总结过程中遇到的一些统计,通信,高数等相关的数学知识,我都会在简单的做一下复习。以方便没有这方面基础的同学,也可以无障碍的继续一起学习总结这方面的知识。当然,高中的数学知识还是需要具备的。最好有一点编程基础。让零基础同学也可以大概了解原理,并应用是我做总结分享的目标。作为深度学习狂热的老爱好者,我会以上面的总结为大概方向,来和大家一起学习。大致的学习总结路线如下:
1.计算机经典cv理论和实例应用。
2.经典机器学习理论和机器学习在图像处理中的应用。
3.进化算法,基因遗传,生长算法。以及经典机器学习和模型落地,模型跨平台转换。移动端经典机器学习模型的部署。
4.神经网络的基础理论和实例应用入门。神经网络模型的跨平台转换和部署。
5.深度学习模型开发,量化,优化,迁移,方向和各种有趣的最新实例,论文解读。
6.进化算法和神经网络结合的强化学习,以及强化学习的实例。
image.png
大概如上。其中经典机器学习在图像处理中的应用,并不会讲太多。因为无论在效果上,还是在性能上,都与神经网络模型效果差距较大。接下来我们就开始研究,经典cv理论的主要知识吧。
本节,主要介绍下计算机视觉图像的概念。
首先我们看一张妹子图,当然要很仔细的看,放大了看。
image.png
我们可以明显看出,右边被放大的图片已经有了单个像素的颗粒感。
如果继续放大到一定程度我们会看到这样的结果:
image.png
妹子的皮肤和眼镜,都变成了一堆数字。每个单元格里面有三个数字,分别是红,绿,蓝色。我们可以简单的理解为,每个单元格就是一个像素。而每个像素就是由红绿蓝三原色组成。
红绿蓝每个颜色取值范围为0-255.也就是说,红,有255个不同程度的红色。对于蓝绿当然也一样。那么同一个像素点,一共有255乘255乘255种颜色可以选择。当然在硬件的显示设备上,显示原理,也大致如此。
如果有上了年纪的夕阳红读者,可能还用过摩托罗拉当年吹爆的26万色手机。其实就是硬件上每个像素点,有三个类似晶体管的设备组成,分别显示红绿蓝。而当年,每个这样的晶体管设备,只能显示64个等级的颜色。所以,64乘以64乘以64也就是当年巅峰的26万色了。(不排除目前一些特殊设备,采用特殊的图片数据存储)
我们对于图片的模糊,去燥,分割,缩放,填充,识别,检测。。。等等。本质上都是在对图片的数字矩阵做特征提取和各种处理。
当然上面的图像,是标准的有红绿蓝组成的三通道图像。即每个像素点有三个值。往往我们会把这种图像看作是一个三层的(或三维的)二维矩阵。
简单理解,可以把普通的三通道图,当作3张图的叠加。一张表示红色的图,一张表示绿色的图和蓝色的图。三张图叠放重合在一起,就是我们看到的图像。(当然,实际计算机只需要存储足够的图像信息,解析这个结构化数据,硬件的像素点去呈现这个数据结构)
如果是黑白色的照片呢?
image.png
是的,你没猜错。
黑白色的照片,每个单元格只有一个值。即代表当前像素点的亮度。同样也是0-255的取值范围。黑白照片,即为单通道照片。可以理解为这个图片就只有一层了。
3层和1层的图片都有了,常用的还有一个四层图片。
即在原3通道的图像上,再加上一个“蒙版”层。这个层里面的值,代表的是该位置的像素点的透明度,常被称为Alpher通道。这样就构成了一个4通道的图像。
当然也有一些其他的,暂时不做讨论。常用的数字图像存储就是上面这几种1,3,4通道。
下次,我会用图片和gif演示图像运算的过程。总结下卷积运算,矩阵运算。举具体实例--图像的一些基本处理:对比度增强,图像的融合,图像的色彩变换,等等。
有总结不到位的,欢迎关注与我讨论。