Python人工智能项目报告
一、实践概述
1、实践计划和目的
在现代社会,计算机技术已成为支撑社会发展的核心力量,渗透到生活的各个领域,应关注人类福祉,确保自己的工作成果能够造福社会,同时维护安全、健康的自然环境,设计出具有包容性的技术和产品。大模型,数据;算力。GPT与Sora,AIGC,财务管理,HR,服务管理,工农业,安全管理,温度,大规模推动人工智能2.0时代已经到来,以高质量大数据为原料,场景智能,人机交互,视觉技术,智能写作,AI语音技术,AI人脸技术,政法AI应用,ML-DevOps,PET,撰写写作文案、制度文案、政策材料。
云识万象--智积星未来平台开发与实现,采用案例驱动模式,模拟获取数据、处理数据、构建模型、训练模型到最后部署上线的完整流程。主要内容涉及,使用平台人群:普通用户以及内部管理人员。平台开发部署实践,按业务需要进行功能分析,业务实现与展示。从而改善了团队间的沟通效率和工作流程。更加强调实用性和实践性。
云识万象--智积星未来平台技术原理概要:
- 深度学习:通过模拟人脑的神经网络结构来处理和分析大量数据。
- 强化学习:强化学习是一种通过与环境的互动来学习最佳行为策略的技术。
- 自然语言处理:机器能够理解和生成人类语言,有广泛应用。
- 计算机视觉:计算机视觉技术让机器能够“看”并理解图像和视频内容
- 人脸识别:通过比较待识别人脸的特征与数据库中存储的特征,来确定人脸的身份。
- 特征提取:从人脸图像中提取出有用的信息,以便于后续的识别和匹配
- 实时处理 - 利用OpenCV的实时视频处理能力,实现即时的人脸检测
- 机器学习 - 在预处理阶段,OpenCV使用PCA(主成分分析)进行降维,减少计算复杂性。
云识万象--智积星未来平台工作流程:
- 获取数据
- 数据基本处理
- 特征工程
- 模型评估
- 数据模型反馈
云识万象--智积星未来平台功能模块:
- 人脸自动识别人脸支付模块
- 人脸自动检测服务模块
- 图像识别技术模块
- 图像自动处理技术模块
- 图片自动分类技术模块
- 卷积神经网络模块
- 深度学习模块
- WEB技术模块
- 数据分析技术模块
通过实习掌握并达成以下的目标:培养自学能力,巩固理论基础,提升分析和设计能力,实践主流的软件分析设计方法和工具;熟悉软件开发的流程,并实践这一流程,包括:分析、设计、编码、测试、安装、发布等环节;熟练使用项目开发工具,经历和体验软件开发过程中的各类职位和角色的分工与作用,实践软件开发的文档编写规范,体验 IT 企业工作环境和工作文化,培养一定的职业素养。
2、开发工具和技术
开发工具
操作系统:Microsoft® Windows® 10/11(64 位); |
内存:最低8GB RAM,推荐 16GB RAM; |
硬盘:最低40GB可用磁盘空间,推荐200GB以上可用磁盘空间; |
屏幕分辨率:最低1024 x 768,推荐更高分辨率。 |
浏览器:Google Chrome V109.0.5414.120或更新版本; |
编程语言:Python3.7; |
开发工具:Pycharm编辑器,MySQL数据库 |
技术
OpenCV-Python |
它结合了Python的简单易用性和OpenCV强大的计算机视觉功能,为开发者提供了一个高效的计算机视觉开发平台。拥有广泛的应用场景,包括图像处理、对象检测、人脸识别、机器学习等。 |
PyTorch:简洁设计遵循tensor→variable(autograd)→nn.Module 三个由低到高的抽象层次,可以同时进行修改和操作。PyTorch 的速度表现胜过 TensorFlow和Keras 等框架。PyTorch 是所有的框架最优雅的一个。此外,PyTorch 提供了完整的文档 |
torchvision:服务于PyTorch深度学习框架的,用来生成图片,视频数据集,和一些流行的模型类和预训练模型 |
torchnn:提供了构建神经网络所需的所有基本构建块,包括各种类型的层(如卷积层、池化层、激活函数)、损失函数和容器,也支持灵活的网络架构设计 |
torchsummary:它支持打印出各种类型的模型,包括卷积神经网络(CNN)、循环神经网络(RNN)、transformer等。 |
Pandas:提供了丰富的数据处理和操作功能,包括数据清洗、数据转换、数据合并和数据分析等,结合Matplotlib等库可以方便地进行数据可视化和绘图 |
Matplotlib:用于绘制任何静态、动画和交互式图表 |
Seaborn:简化复杂数据集的表示;可以轻松构建复杂的可视化 |
Numpy:进行科学计算和数据分析变得更加简单和高效 |
Web前端:采用Axios、Bootstrap、Javascript、CSS、HTML编码 |
MySQL:支持多种存储引擎,包括InnoDB、MyISAM等。 |
day13:主要实习Open-CV图像处理技术。通过主成分分析(PCA),用于从人脸图像中提取特征。通过计算图像的协方差矩阵,并找到协方差矩阵的特征向量,来表示图像的特征。
云识万象--智积星未来平台模式创新,推动了共享经济、平台经济等新型商业模式的出现和发展,改变了传统的商业逻辑和运营方式。资源优化分配,工作方式发展结构变化,一些情况可能会减少,新的商业机会被创造出来,自动化,降低了生产成本和误差率。改善了服务质量和效率,使得服务更加个性化和高效。生产效率提升。
云识万象--智积星未来平台功能模块:
人脸识别技术主要依赖于多种算法和技术。利用人的脸部特征信息进行身份识别的一种生物识别技术。其基本原理包括人脸检测、人脸特征提取和人脸匹配三个步骤。
人脸检测:在OpenCV中,人脸检测是实现人脸识别的第一步,通过分类器能够高效准确地在图像中定位出人脸区域。
特征提取:特征提取是从检测到的人脸区域中提取出能够代表个人身份信息的特征向量。OpenCV提供了多种方法用于从图像中提取独特的面部特征。OpenCV支持多种识别算法,包括基于距离度量和支持向量机的识别方法。
模板匹配:在模板匹配阶段,将提取的人脸特征与预先存储的人脸模板进行比对,以确定输入的人脸是否与已知的人脸匹配。
深度学习,通过训练深度神经网络来提取高层次的特征表示,进一步提高了人脸识别的准确性。卷积神经网络(Convolutional Neural Network,简称CNN),是一种前馈神经网络,人工神经元可以响应周围单元,可以进行大型图像处理。
局部感知:通过局部感知特性,大大减少了模型的计算参数。
权值共享机制:参数只与特征提取的有关,保证同一层中所有位置的连接是权值共享的。
激励层:所谓激励,实际上是对卷积层的输出结果做一次非线性映射。常用的激励函数有:Sigmoid函数,Tanh函数,ReLU,Leaky ReLU,ELU,Maxout
池化层:池化(Pooling):也称为欠采样或下采样。
输出层:如果神经元数目过大,学习能力强,有可能出现过拟合。
全连接层:两层之间所有神经元都有权重连接。
AI人工智能云平台开发部署实践:
- 用户数据上传
- 数据分析
- 人脸自动识别
- 人脸自动检测服务
- 图像识别
- 图像自动处理
- 图片自动分类
- 卷积神经网络技术
- 深度学习技术
- WEB技术
与其他识别方法相比,人脸识别由于具有直接,友好,方便的特点,使用者无任何心理障碍,易于为用户所接受,从而得到了广泛的研究与应用。利用opencv获取人脸,采集人脸数据,将收集到的人脸数据加载到内存,搭建属于自己的卷积神经网络,并用人脸数据训练自己的网络,将训练好的网络保存成模型,最后再用opencv获取实时人脸用先前训练好的模型来识别人脸。能够对大量数据进行分析,帮助企业和组织更有效地分配资源,降低浪费。经济增长模式转变。创新驱动发展 推动经济增长的新动力,促进了创新型经济的发展。产业升级,实现了数字化和智能化升级,增强了竞争力。
人脸自动检测服务模块
OpenCV作为一个强大的计算机视觉库,提供了丰富的人脸识别相关功能。涉及到图像处理、特征提取和模式识别等多个方面。人脸检测是识别图像中人脸位置的过程,它是人脸识别的第一步。分类器训练大量的正负样本图像来识别人脸。使用特征和算法进行训练,生成一个级联的分类器,用于快速准确地检测图像中的人脸。通过准确快速地检测出图像中的人脸,可以进一步进行人脸识别等高级处理。人脸检测是人脸识别的基础,为后续的特征提取和识别提供了重要的支持。
人脸自动检测服务技术模块主要功能:
-
- 椒盐噪声也称为脉冲噪声,是图像中经常见到的一种噪声,它是一种随机出现的白点或者黑点,可能是亮的区域有黑色像素或是在暗的区域有白色像素(或是两者皆有)
- 均值滤波的优点是算法简单,计算速度较快,缺点是在去噪的同时去除了很多细节部分,将图像变得模糊
- 高斯滤波cv2.GaussianBlur波,高斯平滑在从图像中去除高斯噪声方面非常有效
- 中值滤波是一种典型的非线性滤波技术,基本思想是用像素点邻域灰度值的中值来代替该像素点的灰度值,中值滤波对椒盐噪声(salt-and-pepper noise)来说尤其有用
五、边缘检测。Sobel算子,Scharr算子和拉普拉斯算子以及canny边缘检测的原理及应用
六、Sobel算子是高斯平滑与微分操作的结合体,所以其抗噪声能会有负值,还有会大于255的值。而原图像是uint8,即8位无符号数,所以Sobel建立的图像位数不够,会有截断。因此要使用16位有符号的数据类型,即cv2.CV力很强,用途较多。
七、Canny边缘检测。Canny 边缘检测算法是一种非常流行的边缘检测算法,是 John F. Canny 于 1986年提出的,被认为是最优的边缘检测算法。canny = cv2.Canny(image, threshold1, threshold2)。
人脸自动识别技术模块
OpenCV提供了大量的图像处理和计算机视觉算法。在本模块中,它被用于捕获帧、进行人脸检测以及执行特征提取。读取图像,显示图像和保存图像。摄像机获取图像,送入支付系统主进程中进行处理,处理模块有:使用yolo模型进行人脸检测。人脸姿态(三维角度:俯仰角,翻转角,偏航角)的识别以及人脸识别,即人脸相似度的比对,与会员库中的人脸特征信息进行比对等。
通过主成分分析(PCA),用于从人脸图像中提取特征。通过计算图像的协方差矩阵,并找到协方差矩阵的特征向量,来表示图像的特征。通过提取出图像的独特特征,可以进行人脸识别、表情分析、年龄估计等高级处理。特征提取是实现准确、高效人脸识别的关键步骤。需要将提取的特征与数据库中的特征进行比较,以找到最接近的匹配。OpenCV提供了多种人脸识别方法。特征脸方法通过计算图像的协方差矩阵,并找到协方差矩阵的特征向量,来表示图像的特征。在进行人脸识别时,将提取的特征脸与数据库中的特征脸进行比较,找到最接近的匹配。具体步骤如下:
第一步:指定文件路径,创建变量保存数据根路径,创建变量保存图片路径文件。引入所需库,绘图库,操作系统库[操作文件],计算库。
第二步:获取图像数据与标注数据,打开tain.txt文件并且读取其中所有数据,r read以读取方式打开文件,创建循环遍历每一行数据,获取其中一行数据 strip() 将字符串两端空格去除,替换图片路径转换对应标注文件路径
第三步:将标注数据绘制在图像上,创建循环遍历所有标注文件,获取图像文件路径,拼接操作,将文件中所有标注转换numpy数据,创建循环遍历列表,创建4个变量。
OpenCV的人脸识别技术优势主要体现在以下几个方面:跨平台,高效性能:OpenCV经过优化,具有高效的性能,适合于实时应用。人脸识别系统在准确率和实时性方面都有很大的提升空间。基于深度学习的面部检测算法具有很好的可扩展性,可以轻松地将这些算法扩展到其他类型的物体或场景中进行检测。基于深度学习的面部检测算法具有自适应能力,能够自动适应各种不同的场景和光照条件。基于深度学习的面部检测算法通常具有更高的准确度,能够更好地识别和定位人脸。
图像自动处理技术模块
通过OpenCV计算机视觉处理开源软件库,支持与计算机视觉和机器学习相关的众多算法,绘制几何图形,直线以及图像的加法等。几何变换,掌握图像的缩放,平移,旋转等,图像缩放,缩放是对图像的大小进行调整,即使图像放大或缩小,其中图像的混合,这其实也是加法,但是不同的是两幅图像的权重不同,这就会给人混合或者透明的感觉。
图像自动处理技术模块主要功能:
人脸姿态(三维角度:俯仰角,翻转角,偏航角)的识别,人脸关键点的检测,用于人脸对齐,人脸性别,年龄的识别,人脸识别,即人脸相似度的比对,与会员库中的人脸特征信息进行比对,会员人脸特征信息库的构建
图像的IO操作。读取图像 cv.imread(url,model),显示图像 cf.imshow(windowname,img),加入等待 cv.waitKey(),在键盘任意按下一个键,停止等待。
绘制几何图形。直线 cv.line(img,start,end,color,thickness)。圆形 cv.circle(img,centerpoint, r, color, thickness)。矩形 cv.rectangle(img,leftupper,rightdown,color,thickness)。向图像中添加文字 cv.putText(img,text,station, font, fontsize,color,thickness,cv.LINE_AA)像中添加文字
图像的加法。
图像的混合。不同的是两幅图像的权重不同,这就会给人混合或者透明的感觉。
图像平移:cv.warpAffine(img,M,dsize)
图像旋转:cv2.getRotationMatrix2D(center, angle, scale),center:旋转中心,angle:旋转角度,scale:缩放比例
图像平滑,由于图像采集、处理、传输等过程不可避免的会受到噪声的污染,妨碍人们图像理解及分析处理。常见的图像噪声有高斯噪声、椒盐噪声等
图片自动识别技术模块
通过构建一个卷积神经网络, 并训练该网络实现图片识别,了解 CIFAR10 数据集搭建卷积神经网络,编写训练函数,编写预测函数。使用卷积层、池化层来设计、构建一个卷积神经网络。网络模型在测试集上的准确率,我们可以从以下几个方面来调整网络:增加卷积核输出通道数,增加全连接层的参数量,调整学习率,调整优化方法,修改激活函数等等...
任务设计一:创建函数完成对图像训练学习
- 获取CIFAR10训练集数据并且转换张量类型
- 创建卷积神经网络[图像分类模型]
- 构建损失函数criterion=nn.CrossEntropyLoss()
- 构建优化方法
- 创建外层循环控制
- 构建数据加载器。样本数量、损失总和、开始时间
任务设计二:送入测试集数据查看学习结果
- 加载测试集数据
- 构建数据加载器(数据集分批加载)
- 加载卷积神经网对象(加载模型)
- 加载学习经验文件
- 创建二个变量
- 从数据加载器分批读取数据
- 通过公式输出结果
图片自动分类技术模块
卷积神经网络:CNN池化层工作原理以及搭建CNN图像分类。卷积层,卷积网络一共三层,卷积层:自动学习,提取图像特征。池化层:降低数量级,(降维)。全连接层:神经网络。
第一个隐藏层:激活函数使用sigmoid,权重初始化采用标准化的xavier初始化
第二个隐藏层:激活函数采用relu,权重初始化采用标准化的He初始化
输出层如果是二分类,采用softmax做数据归一化
池化层:降低维度, 缩减模型大小,提高计算速度。池化计算过程:最大池化、平均池化
图片自动分类技术模块功能任务:
- 读取数据集:数据集处理
- 获取训练集/测试数据,分析函数
- 读取数据(训练集)
- 创建卷积神经网络
创建第一层卷积层,创建第一层池化层,创建第二层卷积层,创建第二层池化层
- 创建函数读取训练集数据-多次学习-学习结果保存磁盘文件(学习经验)
- 创建函数读取测试集数据->调用学习经验->获取识识别
- 读取数据(训练集)
- 创建卷积神经网络
- 创建函数读取训练集数据-多次学习-学习结果保存磁盘文件(学习经验)
- 创建函数读取测试集数据->调用学习经验->获取识识别
卷积神经网络模块
CNN网络主要三部分组件:卷积层,池化层和全连接层构成
--卷积层提取图像特征(自动)
--池化层用来大幅降低参数量级(降维)
--全连接层类似神经网络部分,用来输出想要结果
1.隐藏层:优先选relu激活函数。如果效果不好,那么尝试其它激活函数Leaky ReLu等。如果使用relu,需要注意 dead relu问题,避免出现大的梯度从而导致过多的神经元死亡。少用sigmoid激活函数,可以tanh激活函数
2.输出层。二分类问题选择 sigmoid 激活函数。多分类问题选择 softmax 激活函数
3.回归问题选择 identity激活函数。全0初始化,固定值初始化,正态分布初始化,均匀分布初始化,kaiming初始化,xavier初始化。
搭建卷积神经网络前,需要完成的步骤:
- 需要先把数据加载到内存即将图片预处理之后的图片集,以多维数组的形式,加载到内存,并且要为每一类样本数据标注标签值;
- 划分数据集即按照交叉验证的原则划分数据集、验证集、训练集。
- 要改变图片的维度
- 归一化图像数据
- 第五步确定优化器
深度学习模块
较大的网络设计,使用手动的方式来构建了一个简单的线性回归模型过于繁琐。所以通过模型训练,模型定义方法,构建线性回归,更加轻量。
通过PyTorch 提供的接口来定义线性回归组件来搭建网络。nn.MSELoss() 代替自定义的平方损失函数。data.DataLoader 代替自定义的数据加载器。optim.SGD 代替自定义的优化器。nn.Linear 代替自定义的假设函数。
深度学习模块主要实现功能如下:
- 张量类型转换torch.DoubleTensor
- 张量数值计算。张量基本运算函数 add() sub() div() mul() neg(),点乘对应位置的元素相乘,矩阵列乘法运算。
- 张量和Numpy转换。张量转换为numpy数组,使用函数Tensor.numpy,使用from_numpy,使用torch.tensor。
- 标量张量与数字转。对于只有一个元素的张量,使用item方法将该值从张量中提出来,tensordata.item()
- 张量拼接操作。torch.cat 使用
- 张量索引操作。简单索引,列表索引,范围索引,布尔索引data[data[:,2]>5],多维索引
- 张量的形状操作。reshape 函数,squeeze和unsqueeze 函数,transpose和permute函数,permute 一次可以交换更多维度,transpose一次可以交换一维度
WEB技术模块
通过onclick对用户名进行验证,如果失败不再向后执行,创建正则表达式 3~20位验证。登录方式有多种,AI账号以及云账户,AI账号登录方式可以选择密码登录或者二维码登录,其中二维码登录有效时长只有两分钟,登录按钮带有验证信息功能以及跳转界面。uuid 新文件名,获取上传原文件对象,将上传图片保存
各种界面都采用AI流行风格书写布局,简洁,功能齐全,科技感丰富,符合时代信息化趋势,更加吸引数据分析者使用。此外,还设置了,报错,警告以及提示,还有二维码的时效,以及不同人员的不同管理方式,高效安全地部署系统
通过登录界面进入控制台总览,使用数据分布功能,可以上传各种文件,并且设置文件限制,很好提醒用户设置合适的文件大小,同时用户可以通过upload文件夹找到自己上传的文件,高效安全地进行数据分布。
自动数据分析技术模块
从北京地区个户房屋数量的户型类型的数量最多的情况,北京地区的家庭情况,以及社会的很大比例以及发展趋势。通过对比以上不同城市数据以及用户习惯情况,通过销售最高需求,消费的人数,了解市场布局。关注线下需求,线上门店以及工作日购物,从而反映整体发展。核心技术:加载数据 data/uniqlo.csv,查询前5条数据,列基础数据,描述数据(统),销售金额 等于0 (送品),销售金额 小于0 以及赔钱 (查门店),还有客户群体 '女性' gender_group Female,销售金额大于 5000。分析用户消费习惯 线上 线下,channel 直接统数量
人脸自动识别人脸支付模块
依据图像路径读取图像(没有中文 没空格),获取图像宽度和高度,获取当前标注文件,判断当前标注文件是否存在,打开文件,读取标准文件内容,得到一张图片所有信息,图片编码以及人脸识别结果图片等信息显示。
人脸自动检测服务模块
通过添加sobel算子,计算sobel卷积结果,将数据进行转换,较小的阈值,对其进行边缘检测,将检测结果保存,结果合成,将检测结果保存。最终得到laplacian,sobe,exam,canny等自动检测结果。
图像自动处理技术模块
通过平移,输出图像的大,旋转,仿射,创建两个变换矩阵列,引入图像,使均值滤波处理图像,输出结果,引入图片并且添加高斯噪声,读取图片并且加载中值滤波。得到图像移动,图像旋转,图像仿射,均值滤波,高斯滤波以及中值滤波等图像自动处理结果。
图片自动识别技术模块
创建训练函数(学习图片特性),张量对象(数据转换),读取训练集数据,创建卷积神经网络(图像分类型模型),构建损失函数,优化方法,创建变量保存训练轮数,循环遍历训练轮数,数据加载器,创建函数,测试卷积神经网络工作。通过数据加载器,将数据送入模型。
得到学习结果:样本数量,损失总和,开始时间,正确率,计算损失,梯度清零,反向传播,参数更新,序列化模型(将学习经验保存)。最终得到图片自动识别结果模型读取图片。
图片自动分类技术模块
通过创建网络结构并且添加初始化数值(w),指定不同层激活函数,创建函数调用神经网络,将数据送入神经网络并且获取结束,创建函数测试数据集,读取数据集,输出数据集形状,创建网络结构 1卷积 2池化 3卷积 4池化 全连接网络定义全连接层数据x经过卷积层激活函数,池化,数据经过全连接层。
增加了对图像的细节处理以及数据提升处理,预测效果达到预期值,模型最高准确率达到99%,损失率0.006。
卷积神经网络模块
通过创建神经网络,创建网络结构并且添加初始化数值(w),指定不同层激活函数,将数据送入神经网络并且获取结束。
可以得到总参数,可训练参数,不可训练参数,输入大小,正向/反向传递大小,参数大小,估计总大小,可训练参数,不可训练参数,输入大小,正向/反向传递大小,参数大小,估计总大小等数据。
tanh激活函数通过绘图,创建基本画布以及线性数据。得到神经网络的双曲正切函数图像。
relu函数创建基本画布以及线性数据,得到卷积后的线性整流导数图像。
sigmoid函数通过创建函数图像以及微分函数,单增以及反函数单增等性质,将变量映射到0,1之间
softmax函数是基于 sigmoid 二分类函数在多分类任务上的推广,多分类网络作为最后一层进行分类,得到深度学习的归一化指数函数图像
深度学习模块
将通过将构建数据转换为张量类型构建数据集、数据集对象、数据加载器、模型、损失函数、优化方法、初始化训练参数、计算损失值、梯度清零、自动微分(反向传播)、更新参数以及绘制拟合直线
模型训练,模型定义方法,构建线性回归,更加轻量。程序运行结果和原始数据的直线基本吻合,说明训练的情况较佳。
4、系统评价
云识万象--智积星未来平台系统能够对大量数据进行分析,帮助企业和组织更有效地分配资源,降低浪费。此外,促进了可持续消费的理念。提供了新工具和方法。提供个性化的消费选择,影响了消费者的购买决策和体验。提供决策支持,监控与管理,打破了地理界限,促进了跨文化的交流和融合。
云识万象--智积星未来平台,准确率是最基本的评价指标,表示模型正确分类的样本数占总样本数的比例。准确率指的是模型正确识别人脸样本的能力。召回率也称为真正率或查全率,表示所有正例中被正确识别为正例的比例。召回率指的是实际存在的人脸样本中被正确识别出来的比例。召回率对假阴性敏感,即对于实际存在的正例被错误地划分为负例的情况较为敏感。F1分数是准确率和召回率的调和平均数,综合考虑了两者的表现。F1分数越高,表示分类器的性能越好,因为它同时关注了模型对正例和负例的识别能力。ROC曲线以假正率为横轴,真正率为纵轴绘制,用于评估二分类模型的性能。
此外,人脸识别技术的进步与人工智能和计算机视觉技术的发展密切相关。随着计算能力的增强和算法的改进,人脸识别技术的准确率和应用范围不断扩大。特别是深度学习的应用,使得人脸识别技术在复杂环境下的识别精度得到显著提升。随着社会的发展和科技的进步,对于高效、便捷的身份认证方式的需求日益增长。AUC值表示ROC曲线下的面积,用于综合评估模型的性能。AUC值越大,说明模型的性能越好。混淆矩阵是一种用于展示分类模型性能的工具,它可以直观地展示模型在各类别上的表现。交叉验证是一种常用的模型评估方法,通过将数据集分成若干份,利用其中的一部分数据训练模型,重复多次以获得稳定的评估结果。k-折交叉验证是最常用的交叉验证方法之一,它将数据集分成k份,每次使用其中的k-1份数据进行训练,剩余的一份数据进行测试,重复k次后取平均值作为最终的评估结果。
不足:表情变化是人脸识别中的一个常见挑战,它可能导致人脸特征的显著变化。OpenCV提供了一些方法来处理表情变化。在实际应用中,人脸识别技术面临着多种挑战,包括光照变化、姿态变化、遮挡和表情变化等。
通过这些技术和策略,可以帮助我们构建高效、准确的人脸识别系统,在安全监控、身份验证、社交媒体和其他领域都有着广泛的应用。随着计算机视觉技术的不断发展,将继续提供更多强大的功能,以满足不断增长的应用需求。辅助生成论文结论与展望,策划活动,生成图片、海报,写长文,写广告语,快速制作PPT,提升销售业绩并引入客户服务,数据分析,AI助手(Assistant)篇,AI短视频制作,一人搞定电商运营,AI长文章生成与写作等。完成引文和文献综述,完成论文大纲和摘要,进行统计学、经济学、金融学等建模研究。
三、实践总结
随着第三次产业革命时代的到来:智能革命。人们无不在快速感受人工智能的魅力。人工智能、物联网等前沿技术的快速发展,为人脸识别技术提供了强大的技术支撑。这些技术的融合与创新,推动了人脸识别技术在算法、硬件、软件等方面的全面升级,提高了识别的准确性和效率。人工智能的高技术包括深度学习、强化学习、自然语言处理、计算机视觉和大数据分析等。特别是深度学习技术的兴起,使得人脸识别技术在复杂环境下的识别能力得到了显著提升,进一步拓宽了其应用领域。
云识万象--智积星未来平台开发与实现,主要内容涉及,使用平台人群:普通用户以及内部管理人员。经济增长模式转变。创新驱动发展 推动经济增长的新动力,促进了创新型经济的发展。产业升级,实现了数字化和智能化升级,增强了竞争力。人脸识别技术是一种基于人的脸部特征信息进行身份识别的生物识别技术,它通过摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行一系列识别操作。随着深度学习、多模态识别和3D人脸识别技术的不断进步,人脸识别的准确性和效率将持续提高。
云识万象--智积星未来平台开发部署实践,按业务需要进行功能分析与业务实现,数据展示。随着社会的不断进步和发展,快速有效的自动身份验证成为了迫切需求,生物特征识别技术因其内在属性及个体差异性而成为最理想的依据。撰写计划、总结、PPT,分析文档,AI翻译,邮件写作,写简历和自荐信,模拟面试,画图和修图,生成视频。大规模推动人工智能2.0时代已经到来,以高质量大数据为原料。还有编程助手,找论文素材,生成开题报告和论文等。
其中,人脸识别作为生物特征识别技术的一种,因其直接、友好、非侵扰性等特点,被广泛应用各领域,市场需求不断增长。随着人脸识别技术的广泛应用和宣传推广,公众对这一技术的认知度不断提高。人们逐渐认识到人脸识别技术在提高生活便利性、保障公共安全等方面的重要作用,为其商业化应用创造了良好的社会环境。
云识万象--智积星未来平台,充分提高项目实战能力,实现完整项目流程。项目主要为能够熟练使用python框架开发人工智能项目,为以后进行高级软件开发打下良好基础。了解、熟悉企业软件开发模式及流程,提高软件编程技术的实战能力。充分了解业务流程之后。不断学习和适应新技术、新知识,提高个人管理和沟通能力,确保专业性,保证研究质量和可信度,认真学校岗位职能,工作能力得到提高。通过扎实的专业基础,不断努力,提高自身素质,克服不足,通过理论学习和日常工作累积,不断丰实总结,得到了宝贵的经验,意想不到的收获和成果!
相关文章:
Python人工智能项目报告
一、实践概述 1、实践计划和目的 在现代社会,计算机技术已成为支撑社会发展的核心力量,渗透到生活的各个领域,应关注人类福祉,确保自己的工作成果能够造福社会,同时维护安全、健康的自然环境,设计出具有包…...
PyQt6+pyqtgraph折线图绘制显示
1、实现效果 2、环境: 确认已经安装pyqtgraph的模块,如果没有安装,使用命令安装: pip install pyqtgraph 3、代码实现: 绘制折线函数: import sys import random from PySide6.QtWidgets import QAppl…...
1-golang_org_x_crypto_bcrypt测试 --go开源库测试
1.实例测试 package mainimport ("fmt""golang.org/x/crypto/bcrypt" )func main() {password : []byte("mysecretpassword")hashedPassword, err : bcrypt.GenerateFromPassword(password, bcrypt.DefaultCost)if err ! nil {fmt.Println(err)…...
C语言菜鸟入门·关键字·union的用法
目录 1. 简介 2. 访问成员 2.1 声明 2.2 赋值 3. 共用体的大小 4. 与typedef联合使用 5. 更多关键字 1. 简介 共用体(union)是一种数据结构,它允许在同一内存位置存储不同的数据类型,但每次只能存储其中一种类型的…...
leetcode hot100【LeetCode 238.除自身以外数组的乘积】java实现
LeetCode 238.除自身以外数组的乘积 题目描述 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 …...
【测试工具JMeter篇】JMeter性能测试入门级教程(一)出炉,测试君请各位收藏了!!!
一、前言 Apache JMeter是纯Java的开源软件,最初由Apache软件基金会的Stefano Mazzocchi开发,旨在加载测试功能行为和测量性能。可以使用JMeter进行性能测试,即针对重负载、多用户和并发流量测试Web应用程序。 我们选择JMeter原因 是否测试过…...
嵌入式驱动开发详解3(pinctrl和gpio子系统)
文章目录 前言pinctrl子系统pin引脚配置pinctrl驱动详解 gpio子系统gpio属性配置gpio子系统驱动gpio子系统API函数与gpio子系统相关的of函数 pinctrl和gpio子系统的使用设备树配置驱动层部分用户层部分 前言 如果不用pinctrl和gpio子系统的话,我们开发驱动时需要先…...
使用 OpenCV 进行视频中的行人检测
在计算机视觉领域,行人检测是一个重要的研究方向,它在视频监控、自动驾驶、人机交互等领域都有着广泛的应用。本文将介绍如何使用 OpenCV 库来实现视频中的行人检测。 环境准备 首先,我们需要安装 OpenCV 库。可以通过以下命令来安装&#…...
py文件转pyd文件的那些坑
当编译py脚本文件发给客户使用时,为了保密源代码防止反编译,可以将py文件转换为pyd文件,然后使用pyinstaller工具转换为exe应用程序,但有时测试发现,py文件可以正常运行,转换为pyd文件后却有各种错误&#…...
go interface(接口)使用
在 Go 语言中,接口(interface)是一种抽象类型,它定义了一组方法,但是不实现这些方法。接口指定了一个对象的行为,而不关心对象的具体实现。接口使得代码更加灵活和可扩展。 定义接口 接口使用 type 关键字…...
前端---HTML(一)
HTML_网络的三大基石和html普通文本标签 1.我们要访问网络,需不需要知道,网络上的东西在哪? 为什么我们写,www.baidu.com就能找到百度了呢? 我一拼ping www.baidu.com 就拼到了ip地址: [119.75.218.70]…...
unsloth vlm模型Qwen2-VL、Llama 3.2 Vision微调案例
T4卡15G显卡训练 参考: https://github.com/unslothai/unsloth 按自己显卡cuda版本安装 免费colab微调代码: Qwen2-VL: https://colab.research.google.com/drive/1whHb54GNZMrNxIsi2wm2EY_-Pvo2QyKh?usp=sharing from unsloth import FastVisionModel # NEW instead …...
云网络基础- TCP/IP 协议
文章目录 典型服务模式TCP/IP 协议设置和查看IPIP地址的分类:IP地址组成: 网络位主机位组成克隆:产生一台新的虚拟机win2008 典型服务模式 • C/S,Client/Server架构 – 由服务器提供资源或某种功能 – 客户机使用资源或功能 TCP/IP 协议 • TCP/IP是最广泛支持的通信协议集合…...
【数据分享】2001-2023年我国30米分辨率冬小麦种植分布栅格数据(免费获取)
小麦、玉米、水稻等各类农作物的种植分布数据在农业、环境、国土等很多专业都经常用到! 本次给大家分享的是我国2001-2023年逐年的30米分辨率冬小麦种植分布栅格数据!数据格式为TIFF格式,数据坐标为GCS_WGS_1984。该数据包括我国11个省份的冬…...
前端预览pdf文件流
需求 后端接口返回pdf文件流,实现新窗口预览pdf。 解决方案 把后端返回的pdf文件流转为blob路径,利用浏览器直接预览。 具体实现步骤 1、引入axios import axios from axios;2、创建预览方法(具体使用时将axios的请求路径替换为你的后端…...
【Leetcode 每日一题】146. LRU 缓存(c++)
146. LRU 缓存 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值&#x…...
Neural Magic 发布 LLM Compressor:提升大模型推理效率的新工具
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
QT简易项目 数据库可视化界面 数据库编程SQLITE QT5.12.3环境 C++实现
案例需求: 完成数据库插入,删除,修改,查看操作。 分为 插入,删除,修改,查看,查询 几个模块。 代码: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget…...
为什么DDoS防御很贵?
分布式拒绝服务攻击(DDoS攻击)是一种常见的网络安全威胁,通过大量恶意流量使目标服务器无法提供正常服务。DDoS防御是一项复杂且昂贵的服务,本文将详细探讨为什么DDoS防御如此昂贵,并提供一些实用的代码示例和解决方案…...
Spring Boot3远程调用工具RestClient
Spring Boot3.2之后web模块提供了一个新的远程调用工具RestClient,它的使用比RestTemplate方便,开箱即用,不需要单独注入到容器之中,友好的rest风格调用。下面简单的介绍一下该工具的使用。 一、写几个rest风格测试接口 RestCont…...
C51相关实验
C51相关实验 LED //功能:1.让开发板的LED全亮,2,点亮某一个LED,3.让LED3以5Hz的频率闪动#include "reg52.h"#define LED P2 sbit led1 LED^1;void main(void) {LED 0xff;//LED全灭led1 0;while(1)//保持应用程序不退出{} }LED 输出端是高…...
云服务器部署springboot项目、云服务器配置JDK、Tomcat
目录 环境准备:JDK、Tomcat 将两个文件上传刀usr/java目录下并解压: 改java相关文件里的参数 执行以下命令,打开 profile 文件 执行以下命令,读取环境变量: 查看JDK是否安装成功: 改Tomcat参数 项目…...
STM32 USART串口发送
单片机学习! 目录 前言 一、串口发送配置步骤 二、详细步骤 2.1 RCC开启USART和GPIO时钟 2.2 GPIO初始化 2.3 配置USART 2.4 开启USART 2.5 初始化总代码 三、发送数据函数设计 3.1 发送一个字节数据函数 3.2 发送一个数组函数 3.3 发送字符串函数 3.4…...
二叉树的深度搜索专题一>计算布尔二叉树的值
题目: 题目解析: 算法解析: 代码: public boolean evaluateTree(TreeNode root) {if(root.left null && root.right null) return root.val 1 ? true : false;boolean leftTree evaluateTree(root.left);boolean…...
Web day01 html css
目录 1.html: 常用标签: 1.video img p br b u i s : 2.布局标签:div span 3.表单标签: 4.表单标签项: 5.表格标签: 2.css: 1.使用样式: 2.选择器: 3.样式: 1.color: 2. …...
PHP 超级全局变量
超级全局变量是指在php任意脚本下都可以使用 PHP 超级全局变量列表: $GLOBALS:是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问。 $_SERVER:$_SERVER 是一个PHP内置的超级全局变量,它是一个包含了诸如头信息(header)、路…...
题目:素数列
思路: 注意审题,题目中的等差素数列指公差相同且每一个元素都是素数的数列,并不是说是所有素数中一段连续且插值相同的数列,它可以是离散的。 因此,只需要暴力的遍历每一个素数,并找以其开头的所有可能等差…...
机器学习系列-决策树
文章目录 1. 决策树原理决策树的构建流程 2. 案例步骤 1:计算当前节点的熵步骤 2:对每个特征计算分裂后的熵(1) 按“天气”分裂数据集(2) 计算分裂后的加权熵 步骤 3:计算分裂依据信息增益信息增益率GINI系数(二叉树) …...
H3C OSPF 多区域实验
目录 前言 实验拓扑 实验需求 实验解析 路由器配置 测试 前言 此篇文章为 OSPF多区域试验,建议先食用OSPF单区域实验,理解实验原理 学习基本配置,再来使用此篇,效果更佳!(当然如果你已经了解原理与基…...
【Python】 深入理解Python的单元测试:用unittest和pytest进行测试驱动开发
《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 单元测试是现代软件开发中的重要组成部分,通过验证代码的功能性、准确性和稳定性,提升代码质量和开发效率。本文章深入介绍Python中两种主流单元测试框架:unittest和pytest,并结合测试驱动开发(TDD)…...
微信小程序中使用iconfont的详细教程
我们知道微信小程序对包体积有很严格的要求,最大不超过2M,而图片资源对包体检有至关重要的影响,所以使用自定义的图标字体来代替大量图标图片也是提高小程序性能的重要手段,总的来说在微信小程序中使用 IconFont(图标字…...
【小白学机器学习33】 大数定律python的 pandas.Dataframe 和 pandas.Series基础内容
目录 0 总结 0.1pd.Dataframe有一个比较麻烦琐碎的地方,就是引号 和括号 0.2 pd.Dataframe关于括号的原则 0.3 分清楚几个数据类型和对应的方法的范围 0.4 几个数据结构的构造关系 list → np.array(list) → pd.Series(np.array)/pd.Dataframe 1 python 里…...
hue 4.11容器化部署,已结合Hive与Hadoop
配合《Hue 部署过程中的报错处理》食用更佳 官方配置说明页面: https://docs.gethue.com/administrator/configuration/connectors/ 官方配置hue.ini页面 https://github.com/cloudera/hue/blob/master/desktop/conf.dist/hue.ini docker部署 注意: …...
“软件定义汽车”时代 | 产线海量数据刷写解决方案
一 背景 从起初汽车概念问世时期的“机械定义汽车”,到电力出现后的“电器定义汽车”,再到电子科技迅猛发展后的“电子定义汽车”,再到如今的“软件定义汽车”,可以看出,软件在车辆中扮演着越来越重要的角色。与此同时…...
DDoS对策是什么?详细解读DDoS攻击难以防御的原因与解决方案
近年来,DDoS(分布式拒绝服务)攻击的规模和频率不断增加。根据数据显示,2023年已观测到的最大攻击流量达到700Gbps,远远超出了许多企业的防御能力。DDoS攻击导致的网站性能问题如页面加载缓慢、频繁的504错误等现象&…...
【AI系统】Tensor Core 架构演进
自 Volta 架构时代起,英伟达的 GPU 架构已经明显地转向深度学习领域的优化和创新。2017 年,Volta 架构横空出世,其中引入的张量核心(Tensor Core)设计可谓划时代之作,这一设计专门针对深度学习计算进行了优…...
React前端框架基础知识详解
React 是由 Facebook 推出的一个用于构建用户界面的 JavaScript 库,现已成为前端开发中最流行的框架之一。React 的核心理念是通过组件化的方式构建用户界面,提升代码的可维护性和复用性。本文将为大家详细介绍 React 框架的基础知识,并带你快…...
Python学习——猜拳小游戏
import random player int(input(“请输入:剪刀 0,石头 1,布2”)) computer random.randint(0,2)# print(“玩家输入的是%d,电脑输入的是%d” %(player,computer)) 用于测试 if (player 0) and (computer 0) or (player 1) a…...
Spring:AOP通知类型
我们先来回顾下AOP通知: AOP通知描述了抽取的共性功能,根据共性功能抽取的位置不同,最终运行代码时要将其加入到合理的位置 通知具体要添加到切入点的哪里? 共提供了5种通知类型: 前置通知后置通知环绕通知(重点)返回后通知(了解)抛出异常后通知(了…...
【公益接口】不定时新增接口,仅供学习
文章日期:2024.11.24 使用工具:Python 文章类型:公益接口 文章全程已做去敏处理!!! 【需要做的可联系我】 AES解密处理(直接解密即可)(crypto-js.js 标准算法ÿ…...
php 导出excel 一个单元格 多张图片
public function dumpData(){error_reporting(0); // 禁止错误信息输出ini_set(display_errors, 0); // 不显示错误$limit $this->request->post(limit, 20, intval);$offset $this->request->post(offset, 0, intval);$page floor($offset / $limit) 1 ;$wh…...
Docker3:docker基础1
欢迎来到“雪碧聊技术”CSDN博客! 在这里,您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者,还是具有一定经验的开发者,相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导,我将…...
18. 【.NET 8 实战--孢子记账--从单体到微服务】--记账模块--账本
这一篇我们来一起为账本功能编写代码。账本功能的代码很简单,就是一些简单的CURD操作。 一、需求 我们先来看一下需求: 编号需求说明1新增账本1. 账本名称不能和用户已有的账本名称重复2删除账本1. 存在收支记录的账本不能删除3修改账本1. 修改的账本…...
GPT1.0 和 GPT2.0 的联系与区别
随着自然语言处理技术的飞速发展,OpenAI 提出的 GPT 系列模型成为了生成式预训练模型的代表。作为 GPT 系列的两代代表,GPT-1 和 GPT-2 虽然在架构上有着继承关系,但在设计理念和性能上有显著的改进。本文将从模型架构、参数规模、训练数据和…...
在 Taro 中实现系统主题适配:亮/暗模式
目录 背景实现方案方案一:CSS 变量 prefers-color-scheme 媒体查询什么是 prefers-color-scheme?代码示例 方案二:通过 JavaScript 监听系统主题切换 背景 用Taro开发的微信小程序,需求是页面的UI主题想要跟随手机系统的主题适配…...
uni-app 界面TabBar中间大图标设置的两种方法
一、前言 最近写基于uni-app 写app项目的时候,底部导航栏 中间有一个固定的大图标,并且没有激活状态。这里记录下实现方案。效果如下(党组织这个图标): 方法一:midButton的使用 官方文档:ta…...
leetcode 无重复字符的最长子串
3. 无重复字符的最长子串 已解答 中等 相关标签 相关企业 提示 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串的长度。 提示: 0 < s.length < 5 * 104s 由英文字母、数字、符号和空格组成 class Solution:def lengthOfLongest…...
【C++习题】14.滑动窗口_找到字符串中所有字母异位词
文章目录 题目链接:题目描述:解法C 算法代码:图解 题目链接: 438. 找到字符串中所有字母异位词 题目描述: 解法 暴力解法: 字母排序后运用滑动窗口解题。 滑动窗口哈希表: 我们可以优化一下&am…...
matplotlib知识
问题与解决 1.module backend_interagg has no attribute FigureCanvas问题 Matplotlib 后端不兼容: matplotlib 使用的后端(如 backend_interagg)可能与当前环境不匹配或未正确加载。 在代码中显式设置一个兼容的后端,例如 TkAgg、Qt5Ag…...
如何在ubuntu上调试core dump
启用core dump 确认ulimit 状态 ulimit -c 如果输出是0,表示core dump被禁用了 运行 ulimit -c unlimited 再次运行 ulimit -c 确认输出是ulimited 设置core dump路径和文件名格式 下面命令表示设置core dump文件在当前目录(%e表示程序名&#x…...