- 博客(44)
- 收藏
- 关注
原创 基于深度学习的车辆车型检测识别系统(YOLOV5)
本项目旨在开发一个基于深度学习的车辆识别系统,采用先进的yoloV5网络架构,以实现对不同车型的精准识别。系统开发环境选用Pycharm集成开发环境,并结合Anaconda进行环境管理和包依赖的配置。为了确保系统的稳定性和高效性,我们选择了Python 3.8作为开发语言,并集成了opencv、PyQt5以及torch1.9等关键库和框架。在数据方面,准备了总共9000张图片,其中8000张用于训练模型,剩余的1000张用于测试模型的性能。
2024-10-16 01:06:03
952
1
原创 基于YOLOV4的垃圾分类检测识别系统【python源码+Pyqt5界面+训练代码+测试代码】
系统基于深度学习网络 YOLOV4,使用的主要编程语言是 Python,并依赖于 Torch(版本需求=1.9)、OpenCV 和 PyQt5 等库。项目包含以下几个关键组成部分:深度学习网络: 使用了 YOLOV4网络,这是一种在计算机视觉领域表现优异的深度学习模型,特别适合处理图像分类和对象识别任务。运行环境: 要求配置 Python 版本为3.7,并安装 Torch 版本不低于 1.8、OpenCV 和 PyQt5 等库。这些库和工具支持项目中的数据处理、模型训练和图形用户界面的开发。
2024-10-16 00:33:02
1213
原创 基于YOLOV8的垃圾分类检测识别系统【python源码+Pyqt5界面+数据集+训练代码】
系统基于深度学习网络 YOLOV8,使用的主要编程语言是 Python,并依赖于 Torch(版本需求=1.9)、OpenCV 和 PyQt5 等库。项目包含以下几个关键组成部分:深度学习网络: 使用了 YOLOV8网络,这是一种在计算机视觉领域表现优异的深度学习模型,特别适合处理图像分类和对象识别任务。运行环境: 要求配置 Python 版本为3.9,并安装 Torch 版本不低于 1.8、OpenCV 和 PyQt5 等库。这些库和工具支持项目中的数据处理、模型训练和图形用户界面的开发。
2024-10-16 00:08:44
879
原创 基于深度学习的鸟类检测识别系统【python源码+Pyqt5界面+数据集+训练代码】
基于深度学习的鸟类检测识别系统在当今世界中具有广泛的应用前景。系统不仅可以帮助生态学家和保护人员监测和保护鸟类种群,还能在农业管理、城市生态监测以及科学研究领域发挥重要作用。通过自动化的图像识别技术,可以实现对鸟类种类、数量和行为的精确识别,为环境保护和生态平衡的维护提供有力支持。
2024-10-15 23:54:06
667
1
原创 基于深度学习的水果蔬菜检测识别系统(Python源码+YOLOv8+Pyqt5界面+数据集+训练代码)
用户可以通过界面上传一张图片,系统将使用预训练好的YOLOv8模型对图片中的水果和蔬菜进行识别。:用户可以指定一个包含多张图片的文件夹,系统将逐一读取每张图片并进行物体检测。每张图片的检测结果将被记录并可以保存到文件中或者在界面上展示。:用户可以选择一个视频文件,系统将逐帧读取视频并利用YOLOv8模型进行物体检测。在视频中识别出的水果和蔬菜将被实时地标记和显示在界面上。:系统支持连接实时摄像头,通过实时视频流进行水果和蔬菜的检测识别。检测结果可以在实时视频上实时标注,帮助用户快速获取当前场景中的信息。
2024-10-15 23:50:59
1219
原创 基于深度学习的西红柿成熟度检测系统
系统基于深度学习网络 YOLOV8,使用的主要编程语言是 Python,并依赖于 Torch(版本需求=1.9)、OpenCV 和 PyQt5 等库。项目包含以下几个关键组成部分:深度学习网络: 使用了 YOLOV8网络,这是一种在计算机视觉领域表现优异的深度学习模型,特别适合处理图像分类和对象识别任务。运行环境: 要求配置 Python 版本为3.9,并安装 Torch 版本不低于 1.8、OpenCV 和 PyQt5 等库。这些库和工具支持项目中的数据处理、模型训练和图形用户界面的开发。
2024-10-13 23:32:27
848
原创 基于深度学习的交通标志识别系统
文件:项目文件包括:一个10G大小的数据集,这个数据集包含了大量用于训练模型的图片和视频。环境文件,用于配置开发环境。UI文件,包含了项目的用户界面设计。模型训练文件,包含了用于训练模型的代码和参数。环境配置文档,详细记录了如何配置开发环境。测试图片和视频,用于测试模型的性能。训练代码,包含了用于训练模型的代码。测试代码,包含了用于测试模型性能的代码。界面代码,包含了用于创建和管理用户界面的代码。
2024-10-12 00:17:33
629
原创 基于深度学习的花卉识别系统
系统基于深度学习网络 Swin Transformer,使用的主要编程语言是 Python,并依赖于 Torch(版本需求>=1.8)、OpenCV 和 PyQt5 等库。使用了 Swin Transformer 网络,这是一种在计算机视觉领域表现优异的深度学习模型,特别适合处理图像分类和对象识别任务。要求配置 Python 版本为3.6,并安装 Torch 版本不低于 1.8、OpenCV 和 PyQt5 等库。这些库和工具支持项目中的数据处理、模型训练和图形用户界面的开发。
2024-10-09 23:38:00
747
1
原创 win10 python3.7 pycharm安装dlib库报错
将下载好对应Python3.7版本的.whl文件放入site-packages包里面 在pycharm中运行终端。链接:https://pan.baidu.com/s/1VVMwTuTL4NcdThyEcsMQKg。使用pycharm安装dlib一直报错 心态有点崩 好在没有放弃 解决了。Python3.7对应的.whl文件上传链接了 需要自取。解决:直接好用的就是安装。
2023-07-08 00:07:11
445
1
原创 解决报错OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into program.
加入以上代码皆可解决 本人亲试有效。
2023-07-06 09:54:41
418
原创 ImportError: DLL load failed: 找不到指定的模块
问题可能:DLL,报错是因为驱动报错,建议先重装下包,再检查下环境依赖的。
2022-11-29 10:48:18
373
原创 Day2_机器学习_数据分析:Matplotlib散点图、条形图、直方图的绘制
1、散点图的绘制绘制目标:实现代码:#!usr/bin/env python# -*- coding:utf-8 _*-"""@author: Administrator@file: 15-4.py@time: 2022/05/28@desc: 绘制散点图"""from matplotlib import pyplot as pltfrom matplotlib import font_managerimport random# 设置图形风格my_font = font_
2022-05-28 22:22:14
641
2
原创 Day1_机器学习_数据分析:matplotlib折线图基础语法
Matplotlib:最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建。
2022-05-26 21:32:02
360
原创 Day8_Python数据结构与算法:二叉树的创建与遍历
1、二叉树的基本概念二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。2、 二叉树的性质(特性)性质1: 在二叉树的第i层上至多有2^(i-1)个结点(i>0)性质2: 深度为k的二叉树至多有2^k - 1个结点(k>0)性质3: 对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1;性质4:具有n个结点的完全二叉树的深度必为 log2(n+1)性质5:对完全二叉
2022-05-24 16:38:48
308
原创 Day8_Python数据结构与算法:树的基本概念
1、树的概念树(英语:tree)是一种抽象数据类型(ADT)或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:(1)每个节点有零个或多个子节点;(2)没有父节点的节点称为根节点;(3)每一个非根节点有且只有一个父节点;(4)除了根节点外,每个子节点可以分为多个不相交的子树;例如:2、树的术语节点的度:一个节点含
2022-05-24 11:20:24
184
原创 Day7_Python数据结构与算法:二分法搜索查找
二分法搜索查找(递归+非递归)搜索搜索是在一个项目集合中找到一个特定项目的算法过程。搜索通常的答案是真的或假的,因为该项目是否存在。 搜索的几种常见方法:顺序查找、二分法查找、二叉树查找、哈希查找。二分法查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、
2022-05-24 10:36:25
167
原创 Day7_Python数据结构与算法:排序之归并排序
归并排序归并排序是采用分治法的一个非常典型的应用。归并排序的思想就是先递归分解数组,再合并数组。将数组分解最小之后,然后合并两个有序数组,基本思路是比较两个数组的最前面的数,谁小就先取谁,取了后相应的指针就往后移一位。然后再比较,直至一个数组为空,最后把另一个数组的剩余部分复制过来即可。归并排序的动态分析示意图代码实现#!usr/bin/env python# -*- coding:utf-8 _*-"""@author: Administrator@file: 13-6.py@tim
2022-05-23 22:03:37
190
原创 Day7_Python数据结构与算法:排序之快速排序
快速排序快速排序(英语:Quicksort),又称划分交换排序(partition-exchange sort),通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。步骤:(1)从数列中挑出一个元素,称为"基准"(pivot),(2)重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区结
2022-05-23 20:33:30
185
原创 Day7_Python数据结构与算法:排序之希尔排序
希尔排序希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL. Shell于1959年提出而得名。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。希尔排序的过程希尔排序的基本思想是:将数组列在一个表中并对列分别进行插入排序,重复这过程,不过每次用更长的列(步长更长了,列数更少了)来进行。最后
2022-05-23 15:51:44
140
原创 Day6_Python数据结构与算法:排序之插入排序
插入排序插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。插入排序分析动态分析图:代码实现:#!usr/bin/env python# -*- coding:utf-8 _*-"""@author: Administrator@file: 13-3.py@time: 20
2022-05-22 21:23:22
393
原创 Day6_Python数据结构与算法:排序之选择排序
选择排序选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动元素的排序方法
2022-05-22 20:16:59
149
原创 Day6_Python数据结构与算法:排序之冒泡排序
冒泡排序冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:(1)比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。(2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。(3)针对所有的
2022-05-22 17:12:18
205
原创 Day5_Python数据结构与算法:单向循环链表
1、单向循环链表的定义单链表的一个变形是单向循环链表,链表中最后一个节点的next域不再为None,而是指向链表的头节点。2、单向循环链表的操作(1)is_empty() 判断链表是否为空(2)length() 返回链表的长度(3)travel() 遍历(4)add(item) 在头部添加一个节点(5)append(item) 在尾部添加一个节点(6)insert(pos, item) 在指定位置pos添加节点(7)remove(item) 删除一个节点(8)search(item)
2022-05-21 21:57:07
356
原创 Day4_Python数据结构与算法:双向链表
1、双向链表的定义一种更复杂的链表是“双向链表”或“双面链表”。每个节点有两个链接:一个指向前一个节点,当此节点为第一个节点时,指向空值;而另一个指向下一个节点,当此节点为最后一个节点时,指向空值。2、双向链表的操作(1)is_empty() 链表是否为空(2)length() 链表长度(3)travel() 遍历链表(4)add(item) 链表头部添加(5)append(item) 链表尾部添加(6)insert(pos, item) 指定位置添加(7)remove(item) 删除
2022-05-21 13:46:28
258
原创 Day3_Python数据结构与算法:单链表
1、链表的定义顺序表的构建需要预先知道数据大小来申请连续的存储空间,而在进行扩充时又需要进行数据的搬迁,所以使用起来并不是很灵活。链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是不像顺序表一样连续存储数据,而是在每一个节点(数据存储单元)里存放下一个节点的位置信息(即地址)。具体结构如下图所示:2、Python中变量标识的本质3、单向链表单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个
2022-05-19 19:48:15
748
原创 Day2_Python数据结构与算法:顺序表
1、顺序表根据线性表的实际存储方式,分为两种实现模型:顺序表,将元素顺序地存放在一块连续的存储区里,元素间的顺序关系由它们的存储顺序自然表示。链表,将元素存放在通过链接构造起来的一系列存储块中。2、顺序表的基本形式图a表示的是顺序表的基本形式,数据元素本身连续存储,每个元素所占的存储单元大小固定相同,元素的下标是其逻辑地址,而元素存储的物理地址(实际内存地址)加粗样式可以通过存储区的起始地址Loc (e0)加上逻辑地址(第i个元素)与存储单元大小(c)的乘积计算而得,即:Loc(ei) = L
2022-05-14 16:49:25
271
原创 Day11_Python基础之模块(module)
1、模块化程序设计理念(1)标准库模块Python 标准库提供了操作系统功能、网络通信、文本处理、文件处理、数学运算等基本的功能。比如:random(随机数)、math(数学运算)、time(时间处理)、file(文件处理)、os(和操作系统交互)、sys(和解释器交互)等。另外,Python 还提供了海量的第三方模块,使用方式和标准库类似。功能覆盖了我们能想象到的所有领域,比如:科学计算、WEB 开发、大数据、人工智能、图形系统等。(2)模块化编程的流程模块化编程的一般流程:设计 API,进
2022-05-10 20:02:39
311
原创 Day11_Python基础之文件操作(下)(IO技术)
1、os.path模块os.path模块提供了目录相关(路径判断、路径切分、路径连接、文件夹遍历)的操作举例1:测试os.path中常用方法# 测试os.path中的常用方法import osimport os.path# 获得目录、文件基本信息print(os.path.isabs(r"d:\ss.txt")) # 是否绝对路径print(os.path.isdir(r"d:\ss.txt")) # 是否为目录print(os.path.isfile(r"d:\ss.txt
2022-05-10 14:43:50
204
原创 Day10_Python基础之文件操作(上)(IO技术)
1、文件操作相关模块概述2、创建文件对象open()open()函数用于创建文件对象,基本语法格式如下:open(文件名 [,打开方式])如果只是文件名,代表在当前目录下的文件。文件名可以录入全路径,比如:D:\a\b.txt。为了减少“\”的输入,可以使用原始字符串:r“d:\b.txt”。示例如下:f = open(r"d:\b.txt", “w”)其中文本文件对象和二进制文件对象的创建:如果我们没有增加模式“b”,则默认创建的是文本文件对象,处理的基本单元是“字符”。如果是二进制模
2022-05-09 21:49:48
536
转载 Python_strip()、lstrip()、rstrip()函数用法(举例助于理解)
Python中有三个去除头尾字符、空白符的函数,它们依次为:strip: 用来去除头尾字符、空白符(包括\n、\r、\t、’ ‘,即:换行、回车、制表符、空格)lstrip:用来去除开头字符、空白符(包括\n、\r、\t、’ ‘,即:换行、回车、制表符、空格)rstrip:用来去除结尾字符、空白符(包括\n、\r、\t、’ ',即:换行、回车、制表符、空格)注意:这些函数只会删除头和尾的字符,中间的不会删除。用法分别为:string.strip([chars])string.lstrip([c
2022-05-09 17:39:23
286
原创 Python enumerate函数(举例助于理解)
enumerate()函数说明enumerate()函数的作用是将列表、元组或字符串组合为一个索引序列,同时列出数据和下标。语法:enumerate(sequence, [start=0])举例1:使用enumerate()函数对一个列表遍历然后输出索引和元素# enumerate()函数测试list1 = ["Python", "Java", "C++", "C#", "JavaScript"]for index, item in enumerate(list1): print(
2022-05-09 11:42:16
1405
1
原创 Day9_Python基础之程序异常与错误
1、异常机制本质异常指程序运行过程中出现的非正常现象,例如用户输入错误、除数为零、需要处理的文件不存在、数组下标越界等。python 中,引进了很多用来描述和处理异常的类,称为异常类。其中Python内建异常类的继承层次如下图所示:2、try…一个except结构try…except 是最常见的异常处理结构。结构如下:注:**try 块包含着可能引发异常的代码,except 块则用来捕捉和处理发生的异常。**执行的时候,如果 try 块中没有引发异常,则跳过 except 块继续执行后续代码;
2022-05-08 11:37:43
128
原创 使用resize()函数避坑
做两幅不同尺寸的图片的差分图时 切记此图举例:import cv2f1 = cv2.imread("rain.jpg")f2 = cv2.imread("ss.jpg")sp1 = f1.shapeprint(sp1)print("...................")f3 = cv2.resize(f2, (sp1[0], sp1[1]))sp2 = f3.shapeprint(sp2)结果:注:切记括号里面的参数是(宽,高) 很容易写反...
2022-05-07 21:16:21
540
原创 Day8_Python基础
1、方法没有重载Python 中,方法的的参数没有声明类型(调用时确定参数的类型),参数的数量可由可变参数控制。因此,Python 中是没有方法的重载的。定义一个方法即可有多种调用方式,相当于实现了其他语言中的方法的重载。如果我们在类体中定义了多个重名的方法,只有最后一个方法有效。建议:不要使用重名的方法!Python 中方法没有重载。举例:# Python中没有方法的重载,定义多个同名方法,只有最后一个有效class Person: def say_hi(self):
2022-05-07 17:47:08
880
1
原创 Day7_Python基础
1、nonlocal关键字nonlocal 用来声明外层的局部变量global 用来声明全局变量# 测试 nonlocal、global 关键字的用法a = 400def outer(): b = 100 def inner(): nonlocal b # 声明外部函数的局部变量 print("inner b:", b) b = 20 global a # 声明全局变量 a =
2022-05-04 15:18:43
798
原创 Day6_Python基础
1、函数对象的内存底层分析(理解)在Python中一切都是对象,在执行def定义函数后,系统就创建了相应的函数。以上面程序为例,代码在执行def定义的函数的时候,系统会创建对象,并通过print_star这个变量进行引用:我们执行“c=print_star”后,显然将 print_star 变量的值赋给了变量 c,内存图就会变成我们可以看出变量 c 和 print_star 都是指向了同一个函数对象。因此,执行 c(3)和执行 print_star(3)的效果是完全一致的。 **Python
2022-05-01 21:11:37
1142
原创 Python基础巩固题(序列和循环知识点的巩固)
1、输入一个学生的成绩,将其转化成简单描述:不及格(小于60)、及格(60-79)、良好 (80-89)、优秀(90-100)。# 输入一个学生的成绩,将其转化成简单描述:不及格(小于60)、及格(60-79)、良好 (80-89)、优秀(90-100)。pj = ["不及格", "及格", "及格", "良好", "优秀", "优秀"]while True: a = input("请输入学生成绩(输入Q和q结束):") if a.upper() == "Q": b
2022-04-30 11:45:15
699
原创 Day5_Python基础
1、for循环和可迭代对象遍历for循环通常用于可迭代对象的遍历。语法格式如下:其中可迭代对象包含一下几种:<1>、序列:字符串、列表、元组<2>、字典<3>、迭代器对象(iterator)<4>、生成器函数(generator)<5>、文件对象举例:遍历字符串中的字符举例:遍历字典2、range对象**range对象是一个迭代器对象,用来产生指定范围的数字序列。格式为range(start, end [,step
2022-04-25 22:00:07
1765
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人