自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (3)
  • 收藏
  • 关注

原创 【人工智能学习之数据不够怎么办(下)】

前文提到了预估数据量、增加数据和数据增强的方法。本文针对增加数据这一节作出一些具体指导。

2025-01-17 11:26:43 1344

原创 【人工智能学习之聚类分析算法DBSCAN】

DBSCAN(Density-Based Spatial Clustering of Applications with Noise),即基于密度的空间聚类算法,是一种十分经典的聚类算法,它不需要事先知道要形成的簇类的数量,能够发现任意形状的簇,并且能够识别出数据集中的噪声点。核心概念邻域:对于样本集中的某一个点 (p),定义其邻域为距离点 (p) 小于等于某一给定距离 (\epsilon) 的所有点的集合,这个距离 (\epsilon) 称为邻域半径。核心点。

2025-01-17 11:25:57 1496

原创 【人工智能学习之一文搞懂YOLO训练结果】

该文件为精确率 - 召回率(Precision-Recall)曲线,又称PR曲线,展示了精确率和召回率之间的权衡关系,通过这条曲线可以评估模型在不同召回率水平下能够达到的精确率情况,是分析分类模型性能尤其是在处理类别不平衡数据等场景下性能的重要可视化参考,可据此确定合适的阈值等参数来平衡精确率和召回率。置信度阈值低的时候,很多样本被认为是真,所以召回率高,精确率低;置信度阈值高的时候,较少的置信度高的样本才能被认为是真,所以检测的也就越准确,精准率就高,但同样的召回率就会下降。

2024-12-31 13:42:10 1016

原创 【人工智能学习之数据不够怎么办(上)】

一般来说,使用 YOLO 进行实体物体检测时,通常建议每个类别至少有 2000 张不同的图像,如果是单一类别的室内检测,个人认为至少需要800张不同的图像会有好一点的效果(即最差情况至少800张)。:有5622张标注了7种类别学生课堂行为的图片,包括低头看书、低头写字、举手、抬头听课、小组讨论、站立、转头等。:有训练集7630张图片,验证集152张图片,标注了站立与跌倒俩种姿态。对于不同的问题和需求,所需的数据量肯定是不一样的。以下是直方图均衡化的代码分享,即插即用。

2024-12-31 13:41:35 922

原创 【人工智能学习之HDGCN训练自己的数据集】

HD-GCN的核心在于其独特的HD-Graph构造与Attention-guided Hierarchy Aggregation (A-HA) 模块。HD-Graph将每个关节节点分解为多个集合,以便在同一语义空间内构建具有显着结构相邻和远处边缘的关系图。而A-HA模块则用来突出重要的层次边集,增强模型对重要特征的捕捉能力。此外,项目还引入了一种仅依赖关节和骨骼流的六路集成策略,无需任何运动流信息也能获得出色表现。

2024-12-17 10:55:14 864

原创 【人工智能学习之HDGCN18关键点修改】

另外有一点需要注意,如果训练数据集出现的人数是多人的话,需要修改相应的num_person,否则data_bn会报一个batch_normal维度不匹配的错误。请参考文章:【人工智能学习之HDGCN训练自己的数据集】

2024-12-17 10:53:31 298

原创 【人工智能学习之YOLO网络改进增强小目标识别能力】

同学们可以自行增加注意力模块的叠加层数或者删去一些层数看看效果,这里只作一个示范,在我的实际项目中,添加了CBAM模块之后并没有涨点,map反而有所下滑(2个点),不如只增加侦测头。经典的yolo网络采用了20x20、40x40、80x80的侦测头,在此基础上额外添加了应该160x160的侦测头来捕获更小的目标,在提升召回率的同时也可以有效增加准确率。关于CBAM模块的插入位置,通常建议将其放在特征提取后的瓶颈层或者特征融合之前。本文通过添加CBAM和更小的侦测头辅助检测以达到优化小目标识别的效果。

2024-11-29 13:46:59 412

原创 【人工智能学习之STGCN训练自己的数据集】

注意这里的默认的layout如果符合自己定义的姿态就不用修改,否则需要自定义一个,本文采用的openpose即默认的openpose的18个关键点,不需要修改。得到了每个视频的json文件之后,需要我们手动将data目录下的json文件分配到train和val下,一般按照9:1划分。如果你的openpose装的是cpu版本,会比较慢,跑很多视频生成json文件的时间就会很长。运行完成后,我们就可以得到总的训练和验证的json文件了,里面包含了所有的视频动作关键点和标签信息。测试我使用的yolopose。

2024-11-29 11:48:50 1626

原创 【win64中FFmpegReader报错:Cannot find installation of real FFmpeg (which comes with ffprobe).】

在自建kinetics-skeleton行为识别数据集训练时遇到了报错。发生在openpose制作json数据集的脚本中。

2024-11-27 15:52:18 299

原创 【人工智能学习之yolov8改进的网络怎么指定规模】

在你更换主干网络或者做了其他修改之后,发现模型总是默认使用的n规模,而n规模有可能无法完成任务,怎么办呢,有什么办法指定规模大小呢?比如这里我需要指定m规模,直接将默认的其他nslx注释掉就可以了。

2024-11-27 15:51:14 745

原创 【人工智能学习之PaddleOCR训练教程】

训练集txt文件中默认请将图片路径和图片标签用 \t 分割,如用其他方式分割将造成训练报错。" 图像文件名 图像标注信息 "train_data/rec/train/word_001.jpg 简单可依赖train_data/rec/train/word_002.jpg 用科技让复杂的世界更简单...|-rec|- train| ...

2024-10-12 12:29:58 1264

原创 【人工智能学习之PaddleOCR快速上手】

在配置文件中,可以设置组建模型、优化器、损失函数、模型前后处理的参数,PaddleOCR从配置文件中读取到这些参数,进而组建出完整的训练流程,完成模型训练,在需要对模型进行优化的时,可以通过修改配置文件中的参数完成配置,使用简单且方便修改。而 L2 正则化中,添加正则化项的目的在于减少参数平方的总和。准确检测的标准是检测框与标注框的IOU大于某个阈值,正确识别的检测框中的文本与标注的文本相同。如果缺少带标注的数据,或者不想投入研发成本,建议直接调用开放的API,开放的API覆盖了目前比较常见的一些垂类。

2024-10-12 12:26:23 1834 2

原创 【人工智能学习之常用损失函数浅谈】

FLpt−αt1−ptγlog⁡ptFLpt​−αt​1−pt​γlogpt​ptp_tpt​是模型预测的概率,对于正样本ptpp_t = ppt​p,对于负样本pt1−ppt​1−p。αt\alpha_tαt​是平衡因子,用于调整正负样本之间的权重,αt\alpha_tαt​对于正样本和负样本可以取不同的值。γ\gammaγ。

2024-09-23 16:45:22 1051

原创 【人工智能学习之卷积神经网络发展简述】

卷积神经网络的发展历程展示了从最初的生物启发到现代深度学习模型的演变。每一个阶段的关键创新都为后续的发展奠定了基础,使得 CNN 在图像识别、视频处理、自然语言处理等领域取得了巨大成功。未来,随着技术的不断进步,CNN 有望在更多领域发挥重要作用。

2024-09-23 16:44:59 1079

原创 【人工智能学习之人脸识别】

注册需要采集上下左右转头的人脸图像,登录则需要将检测区的人脸与特征库进行比对(比对方法可以采取欧氏距离或者余弦相似度)。特征提取我选择的DeepFace中的Facenet512,读者也可以换成其它的模型或者自己训练的模型都可以,这里只做特征提取,所以我直接使用训练好的DeepFace中的Facenet512。common.py中的drawbbox中对bbox的使用有很强的参考性,它会让你明白返回的x, y, r, b分别是什么,以及你如何按照你的想法调整。思路:人脸检测->特征提取->注册/识别。

2024-09-12 16:36:32 744

原创 【人工智能学习之姿态估计】

通过模型可以得到鼻子,左眼,右眼,左耳,右耳,左肩,右肩,左肘,右肘,左腕,右腕,左臀,右臀,左膝,右膝,左踝,右踝的17个关节点,通过这些关节点设计算法即可判断人体姿态。姿态估计可以直接使用训练好的模型和权重model=“yolo_nas_pose_l”, weights=“coco_pose”。

2024-09-12 16:35:44 390

原创 【计算机视觉学习之CV2图像操作实战:车道识别1】

【代码】【计算机视觉学习之CV2图像操作实战:车道识别1】

2024-08-01 10:41:09 245

原创 【计算机视觉学习之CV2图像操作实战:红绿灯识别2】

【代码】【计算机视觉学习之CV2图像操作实战:红绿灯识别2】

2024-08-01 10:40:17 258

原创 【计算机视觉学习之CV2图像操作实战:红绿灯识别1】

【代码】【计算机视觉学习之CV2图像操作实战:红绿灯识别1】

2024-07-31 11:36:49 255

原创 【人工智能学习之商品检测实战】

商品自动识别,一个简单的商品检测项目,数据集读者可以自行拍摄,录制视频抽帧即可训练模型了。有什么交流意见可以评论或者私信我。这里放一个展示视频:商品检测效果视频。

2024-07-31 11:36:17 1296

原创 【计算机视觉学习之CV2图像操作实战:车牌识别2】

【代码】【计算机视觉学习之CV2图像操作实战:车牌识别2】

2024-07-30 14:13:12 187

原创 【计算机视觉学习之CV2图像操作实战:车牌识别1】

【代码】【计算机视觉学习之CV2图像操作实战:车牌识别1】

2024-07-30 14:12:46 223

原创 【计算机视觉学习之CV2图像操作(六)】

在图像处理中,霍夫变换用来检测任意能够用数学公式表达的形状,即使这个形状被破坏或者有点扭曲。函数:cv2.watershed()

2024-06-30 00:25:45 583

原创 【计算机视觉学习之CV2图像操作(五)】

Hu 矩是归一化中心矩的线性组合之所以这样做是为了能够获取 代表图像的某个特征的矩函数这些矩函数对某些变化如缩放 ,旋转,镜像映射( 除了 h1)具有不变形。比较两个形状或轮廓的相似度:cv2.matchShape。如果返回值越小, 匹配越好。它是根据 Hu 矩来计算的。查找图像轮廓:findContours。image:参数是寻找轮廓的图像;

2024-06-30 00:18:12 511

原创 【计算机视觉学习之CV2图像操作(四)】

非极大值抑制是一种边缘稀疏技术,非极大值抑制的作用在于“瘦”边。对图像进行梯度计算后,仅仅基于梯度值提取的边缘仍然很模糊。函数 cv2.isContourConvex() 可以可以用来检测一个曲线是不是凸的。函数 cv2.convexHull() 可以用来检测一个曲线是否具有凸性缺陷,并能纠正缺陷。将轮廓形状近似到另外一种由更少点组成的轮廓形状,新轮廓的点的数目由我们设定的准确度来决。性曲线总是凸出来的,至少是平的。凸包与轮廓近似相似,但不同,虽然有些情况下它们给出的结果是一样的。

2024-06-28 11:36:06 968

原创 【计算机视觉学习之CV2图像操作(三)】

傅里叶变换是一种数学工具,它能够将一个复杂数学函数(或信号)从时域(即随时间变化的表现形式)转换到频域(即由不同频率的成分组成的表示形式)。它的基本思想基于这样的事实:任何连续且满足一定条件的周期信号或非周期信号都可以被分解为一系列正弦波和余弦波的无限级数或积分,这些正弦波和余弦波具有不同的频率、振幅和相位。这里,𝜔 是频率变量,𝑒−𝑗𝜔𝑡 是复指数函数,代表不同频率的正弦波和余弦波的基础,而 𝐹(𝜔)在前面的部分我们介绍了如何绘制一维直方图,之所以称为一维,是因为我们只考虑了图像的一个。

2024-06-28 10:25:28 816

原创 【计算机视觉学习之CV2图像操作(二)】

这里包括的按位操作有:AND,OR,NOT,XOR 等。下面的例子就是教给我们如何改变一幅图的特定区域。如果我使用加法,颜色会改变,如果使用混合,会得到透明效果,但是我不想要透明。第一幅图的权重是 0.7,第二幅图的权重是 0.3。这其实也是加法,但是不同的是两幅图像的权重不同,这就会给人一种混合或者透明的感觉。任意一个二维图像,我们乘以一个仿射矩阵,就能得到仿射变换后的图像。通过修改 α 的值(0 → 1),可以实现非常酷的混合。图像上的算术运算,加法,减法,图像混合等。这里 γ 的取值为 0。

2024-06-27 16:15:48 708

原创 【计算机视觉学习之CV2图像操作(一)】

第三个参数就是当像素值高于(有时是小于)阈值时应该被赋予的新的像素值。当时这种方法并不适应与所有情况,尤其是当同一幅图像上的不同部分的具有不同亮度时。此时的阈值是根据图像上的每一个小区域计算与其对应的阈值。因此在同一幅图像上的不同区域采用的是不同的阈值,从而使我们能在亮度不同的情况下得到更好的结果。HSV 格式中,H(色彩/色度)的取值范围是 [0,179],S(饱和度)的取值范围 [0,255],V(亮。打开保存的图片,我们发现图片是纯蓝色的,由此我们可以知道opencv读入的图片是BGR格式。

2024-06-27 16:06:18 785

原创 【yolov8:报错AttributeError: ‘Segment‘ object has no attribute ‘detect‘】

今天在运行yolov8的Segment模式的val模型测验时报错:AttributeError: 'Segment' object has no attribute 'detect'

2024-06-26 10:46:18 1637

原创 【yolov8:metrics = model.val()报错TypeError: int() 】

TypeError: int() argument must be a string, a bytes-like object or a number, not 'KeyboardModifier'

2024-06-26 10:45:50 350

原创 【人工智能学习之标签工具labelme】

LabelMe是一个开源的图像标注工具,主要用于计算机视觉和机器学习任务中的图像数据标注。它允许用户在图像上创建和编辑矩形、多边形、椭圆等形状来标记感兴趣的区域(ROI),并可以为这些区域分配类别标签或描述性文本。LabelMe最初是由麻省理工学院的计算机科学与人工智能实验室(MIT CSAIL)开发的,支持JSON格式的标注输出,便于集成到深度学习和其他机器学习管道中进行训练数据的准备。此工具广泛应用于物体识别、图像分割、实例分割等领域的研究和应用开发。

2024-06-25 09:46:49 697

原创 【人工智能学习之手写数字识别K-means聚类算法的Python实现示例及损失设计】

softmax 是通过角度分类的,Arc-Softmax 加宽了角度间的分界线,从而达到加大类间距的目的。感兴趣的朋友也可以使用Relu()或者其它激活函数尝试,效果不是特别好,聚类比较随意。softmax函数大家都很熟悉,在此就不赘述了,不清楚的可以简单看一下下图。我们先使用多分类交叉熵损失函数,它可以衡量两个概率分布之间的距离。不过我们可以使用一些比较新的技术比如Mish()。Arc-Softmax可以直接替换分类的全连接层。当然,网络也可以换成卷积,效果会更好一些。在深度学习中:概率分布=特征分布。

2024-06-25 09:45:55 1130

原创 【人工智能学习之YOLOV5更换主干网络】

更换GhostNet主干网络比较简单,因为models/common.py里面已经写好了相关类的定义,如下图。最后在调用yaml文件时将原本的yoloXX.yaml切换为shufflenet.yaml即可。最后在调用yaml文件时将原本的yoloXX.yaml切换为mobilenet.yaml即可。最后在调用yaml文件时将原本的yoloXX.yaml切换为ghostnet.yaml即可。MobileNet的添加我们采取另一种方式。所以我们直接配置yaml文件即可。

2024-06-24 21:06:04 549

原创 【人工智能学习之骨龄检测实战】

分析我们获取的数据集,发现很多图片有雾感(即图像中像素几乎集中在一个区间,导致图片中的对比度不强,给我们呈现出雾感),会影响模型的训练,于是采用直方图均衡化来进行处理。克隆 repo,并要求在 Python>=3.8.0 环境中安装 requirements.txt ,且要求 PyTorch>=1.8。关节数据集是我处理过的,后文会讲述处理方法,大家可以自行调整。analyse_bone_age:检测手骨筛选关节。大家也可以使用自己或者其他的一些数据集进行训练。训练完成后,最优权重会按关节名称进行保存。

2024-06-24 21:05:23 2530 13

原创 Matplotlib数据可视化分析的简单图形绘制

【代码】Matplotlib数据可视化分析的简单图形绘制。

2024-05-11 16:46:30 377 1

原创 【人工智能学习之YOLOV3网络搭建实战】

【代码】【人工智能学习之YOLOV3网络搭建实战】

2024-05-10 15:47:30 366

原创 【人工智能学习之卷积神经网络篇(三)】

MobileNetV1的核心思想是利用深度可分离卷积,相比于传统的卷积操作,在保持相同参数数量的情况下,显著减少了计算量,从而提高了网络的运算速度。与标准卷积网络不一样的是,我们将卷积核拆分成为但单通道形式,在不改变输入特征图像的深度的情况下,对每一通道进行卷积操作,这样就得到了和输入特征图通道数一致的输出特征图。在深度卷积的过程中,我们得到了8×8×3的输出特征图,我们用256个1×1×3的卷积核对输入特征图进行卷积操作,输出的特征图是8×8×256。而在高维度进行ReLU运算的话,信息的丢失则会很少。

2024-05-10 15:40:55 672

原创 【人工智能学习之卷积神经网络实战(手把手教你搭网络,超详细!)】

卷积神经网络的设计搭建与训练检验

2024-05-09 18:50:09 1447

原创 【人工智能学习之卷积神经网络篇(二)】

随着深度学习的不断发展,模型的层数越来越多,网络结构也越来越复杂。但是增加网络的层数之后,训练误差往往不降反升。由此,Kaiming He等人提出了残差网络ResNet来解决上述问题。ResNet是2015年ImageNet比赛的冠军,将识别错误率降低到了3.6%,这个结果甚至超出了正常人眼识别的精度。在ResNet中,提出了一个非常经典的结构—残差块(Residualblock)。

2024-05-09 18:37:02 974

原创 【人工智能学习之卷积神经网络篇(一)】

由于会对每张图片使用同样的卷积核进行卷积操作,卷积核的维度与上面多输出通道的情况一样,仍然是Cout×Cin×kh×kw, 输出特征图的维度是N × Cout x Hout × Wout。池化层通过汇聚一定区域内的特征,可以将特征图的尺寸缩小,从而适应网络后续层的输入要求,类似于拼图块在拼图板上的调整。一般来说,卷积操作的输出特征图也会具有多个通道Cout,这时我们需要设计Cout个维度为Cin×kh×kw的卷积核,卷积核数组的维度是Cout×Cin×kh×kw,如图所示。

2024-05-08 16:06:24 744 1

骨龄检测关节训练集九分类1800*9张

骨龄检测关节训练集九分类1800*9张,可用于骨龄检测模型训练,适用于人工智能初学者学习

2024-06-05

骨龄检测手骨训练集881张及其xml标注

骨龄检测手骨训练集881张,可用于骨龄检测模型训练,适用于人工智能初学者学习

2024-06-05

人工智能神经网络学习模型训练数据集四分类(摩托车、汽车、公交车、火车)图片大小96*96尺寸

人工智能神经网络学习模型训练数据集四分类(摩托车、汽车、公交车、火车)图片大小96*96尺寸 适合人群:神经网络学习入门小白

2024-05-08

基于unity开发的解谜游戏

基于 unity 开发利用mirror完成同步的一款 3D 开放世界解谜游戏。玩家在僵尸群的追赶下寻找强力武器、弹药、恢复血量的食物、加强人物属性的祝福和能够帮助玩家的 NPC,越过坦克守卫、穿越幽灵迷宫前往逃生点,通过地图上的石碑解密方阵获取必要信息从而前往有 Boss 守护的逃生点逃生。该项目不仅具备很高的可玩性,并且支持多人局域网联机和数据库记录排名。unitypackage文件直接导入即可。

2023-03-18

基于c++开发的可视化食堂点餐管理系统

一款利用 VS 开发的可视化食堂点餐管理系统,不仅具备基础的点餐功能,还支持数据库存储每单信息。

2023-03-18

unity-demo-塔防

一个简单的塔防小demo

2023-03-18

unity-demo-秘密行动

一款基于 unity 开发的解密逃生益智类游戏。玩家在有多种警报系统(激光门,监控探头,还有可以攻击玩家的自动巡逻机器人)的地图中需要灵活绕过警报系统,通过一系列开关找到某个房间中的钥匙卡,从而逃出生天。

2023-03-18

(C语言,Easy.x图形库,MySQL数据库)坦克大战.rar

本人原创花了不少时间的纯C语言坦克大战(毕竟是期末设计),地形地图坦克复杂多样,可以记录玩家信息(昵称得分游戏时间)并排序输出,音效背景音乐都是熟悉的味道,可以在代码中自定义第三关之后的关卡,开始界面点击说明会出现作弊码,也可以在代码中添加新的作弊码,音频图片找了很多,可以按照自己的喜欢进行调整,击杀坦克过后还会在地图上随机掉落食物可提升装甲等级。涵盖了C语言的指针、函数调用、结构体、时间函数、随机函数、二维数组等等。

2020-05-24

(C语言,Easy.x图形库,MySQL数据库,音效)推箱子(可视化).rar

本人原创利用纯C语言和Easy.x图形库,MySQL数据库开发的一款可视化推箱子小游戏,可以记录玩家信息并存入数据库。包含所需图片及音频。有556行代码。

2020-05-24

(C语言,Easy.x图形库,时间函数)打砖块游戏.rar

本人做的一款打砖块小游戏,有普通模式,困难模式(随时间推移而增加砖块),时间模式(规定时间内打完所有砖块)。纯c语言编写,使用到了easy.x图形库。

2020-05-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除