
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
介绍适配器模式非常简单,他常用于新系统对接老系统或者多个第三方系统的接口。所以,一般在新开发的系统中,是很少使用适配器模式。下面我模拟一下,新系统对接2个第三方系统的场景。需要注意下面的不同:系统01的connect方法的端口port需要的是String类型。系统02的连接和断开方法,使用的是open()和close()。为了让系统和系统01、系统02都能对接上,我们此时需要使用适配器模式。UML
这篇博客并不是介绍策略模式的,网上对策略模式介绍已经很多了,具体的UML图,如下 图中,不带X的,就是原版的策略模式,下面是个人的改进意见,有不同意见的欢迎讨论,轻喷……策略模式的缺点Client与Context和Sale都有关联,导致Client和具体的策略方法都耦合在一起策略的创建方法都放在Client客户端,如果策略过多,势必加大了客户端业务员的复杂性策略过多的暴露出来,也不利于策略的维护p
通过共享同一个对象的拷贝,减少对象创建时间和节省内存的使用,从而提高系统性能场景假设学校5年级有2个班A、B班,A班和B班分布有100个人,这个时候A、B要分别发布春游计划给同学看,A、B班级的春游计划是不一样的,所以A班同学只看A班的春游计划,而春游计划放在数据库中,我们防止A班同学每次看春游计划的时候都查询并生成一个春游计划,所以我们在A班第一个同学查看春游计划后,就将计划存入内存中,方便..
我习惯用tensorflow,所以这里读取图片采用的tensorflow,但是,使用OpenCV同样可以,处理图片使用的OpenCV目标我这里用的汽车图片,我们目标是将汽车抠出来,然后替换背景,第二章的黑白图,是图片分割结果的mask图片思路抠图思路将图片读取后,mask图片需要处理为二进制图片使用OpenCV的bitwise_and,对原图和mask二进制进行抠图替换背景思...
实战篇中,人脸识别模型的搭建看似非常复杂,其实都是由一些常用的神经网络层搭建而来,只要我们明白了这些网络层,搭建一个模型就不再困难了神经网络搭建的方式有2种:顺序模型和函数式API计算机视觉常用的神经网络层:全连接层、二维卷积层、池化层、BN层、dropout层、flaten层下面我们分别介绍他们全连接层全连接层的每一个节点都和上一层所有的节点相连,从而把之前提取到的特征综合起来。如下图...
为了让大家,更快的上手,先看到效果,在一步一步的分析理论,我这里简要的介绍一下模型就开始上代码。人脸识别模型与分类模型的区别?识别2张图中的人脸的流程是:模型分别提取图片中人脸的特征,然后对比2张图片中人脸特征的相似度,如果相似度小于一个阈值,我们就认为他们是同一个人分类模型的流程是:提取图片中的特征,然后用最后一次(softmax)层将特征值进行计算,它属于哪一类于是乎,我们利用分类模...
如果我们只有训练数据,将模型训练出来后,是不知道这个模型的好坏的,所以一般我们不会直接把数据全部拿去做训练,而是将数据分成“训练数据集”、“测试数据集”、“验证数据集” 3部分这次我们只将数据分割“训练数据集”和“测试数据集”。上一篇博客,我们将所有的数据都放在generator文件夹里面,我们需要把它们取出来,随机的分成“训练数据”和“测试数据”,代码如下:加载所有的图片impo...
上一篇博客,我们学会如何训练模型,但是训练好的模型我们需要保存下来啊?一般有2种方式。第一种,我们可以等模型训练完了,再调用保存模型的方法。但是一般不用等模型训练完,模型就能达到很高的精度,另外一方面,训练完的模型可能过拟合或者还不如训练过程中的精度高。所以;我们我们经常用第二种,在训练过程中,就不断的保存模型。这里就需要用到回调函数了callbackscallbacks创建还是直接上代码...
损失函数是用来度量模型一次预测结果的好坏我们规定输入值为X,则f(X)为预测值,y为真实值。这个时候我们需要一个衡量预测值和真实值之间的差距的函数,我们就称这个函数为损失函数,记作L(y,f(X))用于回归问题均方误差N个平方损失函数之和再求平均值MSE=1N∑i=1N(y(i))−f(x(i)))2MSE = \frac{1}{N}\sum_{i=1}^{N}(y^{(i))} - ...
实战篇中,人脸识别模型的搭建看似非常复杂,其实都是由一些常用的神经网络层搭建而来,只要我们明白了这些网络层,搭建一个模型就不再困难了神经网络搭建的方式有2种:顺序模型和函数式API计算机视觉常用的神经网络层:全连接层、二维卷积层、池化层、BN层、dropout层、flaten层下面我们分别介绍他们全连接层全连接层的每一个节点都和上一层所有的节点相连,从而把之前提取到的特征综合起来。如下图...







