- 博客(189)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 js中常见的错误
有一次,写代码,怎么看都是对的。比如 在标签里面设置了id,结果根据这个id获取的对象,编写的代码一直不能运行,然后我与标准的代码进行比较,结果发现了id里多了个空格,结果获取对象失败。教训:一定要注意:空格可能会引起很大错误,需警惕。...
2020-02-29 20:56:47
92
原创 mmskeleton的环境配置问题
4.值得注意的是mmdetection的安装命令:cd mmdetection-master。1.使用ubuntu系统配置环境,使用win10配置环境比较麻烦且容易报错。3.如果想用cuda11来配置环境,则需使用。2.如果使用mmcv。注意最后的.不要漏掉。
2023-03-17 15:12:41
706
4
原创 学习深度学习需要知道的一些事情
1.训练或者测试深度学习的代码都需要使用到GPU,而GPU的使用需要用到cuda,cuda一般在电脑装机时就自带了,在安装pytorch时会有cuda的版本号,pytorch的cuda的版本号不能高于电脑自带的cuda版本。2.安装pytorch时,离线安装的速度比较快,pip安装的torch会自带cudatoolkit,conda安装的不会,所以命令行中有cudatoolkit.3.跑深度学习的代码一般推荐使用linux系统,特别是c++编译的时候,不容易出现编译的问题。
2023-03-17 14:59:50
209
原创 图书管理系统建模图
静态结构图类图软件的蓝图,系统的描述了所有对象有关的类,和类之间的静态关系。活动图是动态的,有先后步骤,判断选择,类似于流程图。用例图描述的可能不是很清楚,所以我们可以写用例文档,用例文档可以用Word写,也可以点击用例的属性来写文档。删除用例图中的元素,实际不会删除,在项目浏览器中可以见到仍然没有删除。活动图(流程图)为了清晰的表示某一个活动或者用例的内部行为,可以使用活动图来表示。人形图标表示参与者,椭圆表示用例,系统边界表示不包含参与者的部分。纵横交互图借鉴了活动图的结构,但只描述一件事。...
2022-07-19 09:18:20
2530
原创 统一建模语言
6.模型具有不同的精确程度,面对不同的人应该展现不同抽象层次的模型。5.选择合适的模型建模应该对实际上软件的开发产生重要影响。8.要从多个视角创建多个模型,比如飞机的俯视图,仰视图,侧面图。7.好的模型应该与现实世界相联系,简化不能忽略任何重要的细节。是一种标准的图形化建模语言,是面向对象对象分析与设计的表示。源码很复杂需要形象的方法来交流双方观点。建模的根本目的是为了更好地理解开发系统。模型是对现实世界事物的简化,模拟。使用通用的语言符号方便交流。统一建模语言(UML)...
2022-07-15 10:26:56
236
原创 用对象的观点看待问题
这些事物看上去什么样子的?这些事物之间是怎么成事的?这些事物之间有什么关系?类之间的交互(用例实现)每个事物能做点什么?这些事物待在什么地方?
2022-07-14 20:18:55
70
原创 java 中get set 方法 和public的区别
1.设置权限public 人人都可以读取 写入 但 private 可以控制读写权限,如果不写set方法,则任何人就不能改动他的值。
2022-07-14 18:07:29
438
原创 面向对象技术的基本原则
举例:对于同一群人,不同的人抽象的结果不同如公安部 对这一群人 抽象的结果就是 人 普通的公民在医院做检查时,男女的区别很大,抽象的结果是男 女在公司或者学校这个场景 抽象的结果为老板 员工, 老师 学生。抽象取决于项目的上下文(需求)举例:我们使用遥控器 控制电视,只需要知道遥控器的按钮可以控制电视即可,而无需知道遥控器设计的细节,遥控器的构造由其外壳封装,一般由稳定的东西封装不稳定的东西。让使用者操作起来不会太困难。结构化程序设计中, 程序 = 数据结构 + 算法但是 难以保证数据一致性举例:
2022-07-14 16:59:27
163
原创 UML OO 以及 Model 之间的关系
Model 是最终目的OO 是一种建模理论UML 是将OO 理论转化为实践的工具。面向对象技术不仅仅可以用于编程语言 也可以用于建模(UML)面向对象技术的优点: 符合人类的思维习惯 能够形象的描述现实世界稳定,当需求变化时,不会导致大的系统结构的变化。当需求变化时,功能最容易变化,数据其次,类最稳定。用最稳定的将不稳定的元素包裹起来。代码复用优势:代码复用,类库 框架 继承 封装关联对象是一个实体,这个实体具有明确的边界和标识,边界表明对象是封装的,与其他对象隔离。标识意味着对象是唯一的。对象封装了
2022-07-13 19:52:08
322
原创 re 正则表达式
"""re :regulation expression 正则表达式re.findAll(pattern,待查找对象) 返回匹配的所有的列表\d 返回所有数字(单个)\d+ 返回连续的数字\d* 返回0个或者多个数字\w 返回非标点符号的数字\D 返回非数字的"""import retext = "name:maishu,height:178,weight:68,id:123456,password:9527"print(re.findall(r"\d*", text)) #
2022-03-25 16:21:50
146
原创 opencv笔记
1.查看opencv 是否安装成功import cv2print(cv2._ _version_ _)2. python 是胶水语言,其第三方库可以用其他快的语言来编写。
2022-03-25 15:33:58
3857
原创 服务器与不同类别的操作系统
1.服务器就是撤掉了显示屏和鼠标键盘等外设的高配置电脑,服务器需24小时工作,放到一个特殊的地方 进行降温,通过远程控制软件来操控。2.操作系统分类:桌面操作系统 服务器操作系统 嵌入式操作系统。3. 系统调用 终端命令 操作系统内核:操作系统是计算机资源的管理者;用户程序需要调动计算机资源时,需要请求操作系统服务,这个服务称为系统调用。终端命令 也可以通过命令请求操作系统服务。4.linux内核用于管理硬件资源,而Linux发行版是指在内核的基础上开发了桌面系统,办公套件,播放器,数据库等其他功能
2022-02-26 22:13:56
439
原创 labelme的安装教程
labelme是一种功能强大的标注软件,可以标注矩形框,多边形框,点,直线等我们安装labelme软件有以下步骤:1.使用Annoconda创建虚拟环境 conda create -n labelme python=3.7 activate labelme2.安装相关的包pip install pyqtpip install labelme3.启动labelme 并标注:在labelme的虚拟环境中键入labelme就会启动labelme可视化标注软件4.我们使用点来标注车道线。 用
2022-01-29 18:32:32
11635
原创 使用opencv标定相机
使用棋盘板来标定相机,棋盘上的黑白交界的点,称为角点,共有48个角点。世界坐标系中角点的坐标是三维的,规定第三维坐标是0,则只研究二维坐标。主要步骤:1.拍摄若干张角度不同的棋盘图片2.使用glob模块中的glob函数,筛选出拍摄的图片,这会返回图片列表3.先生成物点列表(世界坐标系下角点的坐标)遍历图片列表读取图片,返回图片对象使用findChessboardCorners() 寻找角点,返回ret(布尔变量,用于判断寻找成功与否) 返回corner(返回Corner的像素坐标)使用Co
2022-01-24 22:25:56
2997
原创 计算机视觉概述
一.1.计算机视觉的目标是对图像进行理解。2.计算机视觉的研究目的是为了从图像中获取视觉特征3.80年代主流都在做边缘提取,边缘检测4.90年代,人们越来越重视三维重建,一维的边缘不再适合几何计算,几何最本质的元素是点。(如:点云,二维图像上的一个点可以映射到三维空间的一个像素,那么这个图片对应的像素点的集合称为点云)5.1992年,解决了非标定相机的两张二维图片上的三维重建问题。二.三维重建入门1.三维重建的概念:让二维图像转变成三维物体模型,三维重建是指对三维物体建立适合计算机
2022-01-20 16:22:13
3663
原创 目标检测中常见的报错以及解决方案
1. no such way or no such dictionary解决方法:不要有中文路径 相对路径不要写错
2022-01-15 20:43:00
1307
原创 安装python中的包常见的问题以及解决方案
1.pytorch 版本的代码必须安装torch这个包,这个包中的函数用于构建模型训练模型,以及测试模型我们可以去pytorch官网,用官网提供的命令来安装pytorch包对于指定的旧版本的包,可以通过历史版本来下载pytorch官网:https://pytorch.org/get-started/previous-versions/对于下载过慢的问题可以用镜像解决:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --truste
2022-01-15 13:27:06
649
原创 目标检测常见的开源数据集
# 常用的开源数据集通常都是一些比赛的提供的数据集,旨在为研究者提供素材的数据集# 数据集可用于分类 目标检测 语义分割 等任务1.voc数据集(2005~2012)voc 数据集常用的版本有2007和2012的版本的,因为,这两种版本的数据集的数据量较大。voc 数据集分为 训练集 验证集 测试集 训练集标注,验证集标注参赛者通过 训练集 验证集 训练集标注,验证集标注训练模型 然后测试测试集,测试的结果与标准结果比较,进而获得排名,可在leadboard(排行榜)上查看排名voc数据集官
2022-01-12 19:50:26
1195
原创 动态规划入门2
/*给出一个整数序列S,其中有N个数,定义其中一个非空连续子序列T中所有数的和为T的“序列和”。 对于S的所有非空连续子序列T,求最大的序列和。 变量条件:N为正整数,N≤1000000,结果序列和在范围(-2^63,2^63-1)以内。*///方法一 递归,找出递推式 #include<iostream>#include<algorithm>using namespace std;const int MAXN=1000000;int arr[MAXN];//用于记录
2021-11-25 19:45:58
3354
原创 动态规划入门
//动态规划是一种优化方法:子问题结果复用,数组记忆化//典型例题 有n级楼梯,有2种爬法,1次1级,或1次2级,问,n级楼梯有多少种爬法?//方法一:递归#include<iostream>using namespace std;int f(int n){ int answer; if(n==1||n==2) answer=n; else{ answer=f(n-1)+f(n-2); }
2021-11-25 15:04:07
3261
原创 1.根据公版模型训练自己的数据的套路
一.数据集部分: 1.获取数据集: 可以通过拍摄一段视频,然后用OpenCV中的方法进行截图 ,从而生成自己的数据集 代码示例: # 导入所需要的库import cv2import numpy as np# 定义保存图片函数# image:要保存的图片名字# addr;图片地址与相片名字的前部分# num: 相片,名字的后缀。int 类型def save_image(image, addr, num): address = addr + str(num)...
2021-11-16 13:19:06
2557
原创 深度学习---以识别数字为例
# 首先认识一下 mnist数据集"""深度学习的一般步骤1.处理数据 并将数据处理成合适的格式2.按照自己的设计搭建神经网络3.设定合适的参数训练神经网络4.在测试集上评价训练效果"""from keras.utils import to_categorical# to_categorical方法是为了将数字转换成独热变量 独热变量就是将变量编码成只含有一个1,其余均为0的向量from keras import models, layers, regularizers# 模型 层数
2021-10-24 20:29:16
1445
原创 python 中 import 和 from 的 区别
"""python 中 import 和 from import 的区别 import使一个变量名引用整个模块对象,因此必须通过模块名称来得到该模块的属性。 from 模块 import 变量/类形象的理解是:前者是取一辆车来使用 后者是从前一辆车中取一瓶水来使用 参考链接:https://blog.csdn.net/qq_30815237/article/details/93203934"""...
2021-10-24 16:47:12
1906
原创 anoconda 创建虚拟环境 以及与pycharm关联
# 1. 创建虚拟环境# win+R+cmd 打开命令行 在命令行中输入 创建虚拟命令conda create -n name python =3.8 # name为虚拟环境的名称# 2. 激活虚拟环境activate name# 3.接着便可以在虚拟环境中安装包conda install tensorflowconda install keras# 注意:pip 命令是python中自带的命令 conda命令是anoconda中的命令# 建议每个项目都有独立的虚拟环境# 4.查看虚拟环
2021-10-24 16:16:50
1426
原创 CSV文件
/*csv文件是一种类似于表格的文件csv 是python的内置模块*/import csvfp = open('D:/新建文件夹/1.csv', 'a+') # 创建文件对象 文件地址/读写权限csv_fp = csv.writer(fp) # 处理成支持csv文件操作的对象# 向csv文件中写入元组my_tuple = ('123', '456', '789')csv_fp.writerow(my_tuple)fp.close()...
2021-08-23 23:37:53
62
原创 matplotlib
# matplotlib是python中画图的一个包##在使用之前需要导包import matplotlib as plt# 导入数据计算的包import numpy as np# 生成作图所需的点x = np.linspace(-1,1,50)#定义所需的函数y =2*x+1#绘制图plt.plot(x,y)#展示图 无论画几个图,只需要调用一次plt.show()#在同一个图片上绘制多个图片plt.figure(figsize=,num=)# 控制图线条的颜色,
2021-08-07 22:19:54
349
原创 用python设计飞机大战游戏
"""明确游戏设计的任务:游戏初始化: 1.创建窗口对象 2.创建时钟对象 3.创建游戏精灵,游戏精灵组注:由于1.2只是属性,故可以在初始化方法中使用 考虑到创建游戏精灵和游戏精灵组的数目不定,所以不应当放在初始化方法中 可以考虑创建_create_spirates函数游戏循环:游戏真正开始的地方 start_game(self):为了增加代码的可读性,可以将小功能封装成私有函数,供start_game调用
2021-07-20 19:06:42
81
原创 编程艺术03切换图片并更换文字
/*需求:在同一个页面上切换图片并更改图片上的文字思路分析:获取超链接对象的href地址和title的值 然后通过调用document对象的方法 */
2021-06-29 15:45:46
64
原创 编程艺术02切换网页图片
/*案例需求:点击图片链接,在同一个页面中实现不同图片的切换使用的技术:使用DOM进行动态地更改图片的地址属性特点:不用更改HTML代码,只需更改JavaScript代码即可,能够使得网页动态地变化*/<!DOCTYPE html><html lang="en"><head><title="Image Gallery"></head><body><a href="images/fireworks.jpg" t
2021-06-26 15:58:09
76
原创 ·编程艺术笔记01
1.html,css,javascript之间的联系html负责把网页标记成各种元素css用于设置页面布局和样式控制JavaScript用于实时的控制页面和改变样式2.为了解耦和方便分工,一般独立写JavaScript文件,然后引入到HTML文件中,并且在body区域的最后面引入,这样能够更快的加载页面。3.JavaScript中变量不需要指定变量类型,使用关键字var定义即可。 数组中可以存放数据类型不同的数据...
2021-06-25 19:25:54
58
原创 HTML08使用table完成网站布局
/*为了避免繁琐的合并单元格,我们可以采取表格嵌套的方式处理。我们将网页看成一个大表格,然后将网页分块,分块的网页可以用表格中的一行来完成如果是一行一列可以使用<tr><td>...</td></tr>如果是一行多列,可以使用表格嵌套<tr><td><table>.....</table></td></tr>*/...
2021-05-14 20:14:57
637
原创 图论04—拓扑排序
/*拓扑排序用于解决有向图中的顶点先后顺序问题算法思想:依次输出入度为0的顶点,并删除其有向边*/#include<iostream>#include<cstring>#include<queue>#include<cstdio>#include<functional>using namespace std;const int MAXN=500;int inDegree[MAXN];vector<int> gra
2021-05-11 17:40:16
80
原创 图论03—最短路径02
/*使用优先队列优化查找最小结点,则查找的时间复杂度为log级别*/#include<iostream>#include<vector>#include<cstring>#include<climits>#include<cstdio>#include<queue>using namespace std;struct Edge{ int to; int length; Edge(int t,int l):t
2021-05-10 21:31:39
81
原创 图论03—最短路径01
/*最短路径:源点到其他顶点的最短距离算法:迪杰斯特拉算法算法思想:有两个集合S,T,依次将T集合中的元素按照最小的特性加入S集合,并进行松弛操作。*/#include<iostream>#include<vector>#include<cstring>#include<climits>#include<cstdio>using namespace std;struct Edge{ int to; int length
2021-05-10 12:08:50
119
原创 图论02—最小生成树
/*生成树是指保证顶点的连通性的情况下,边尽可能的少,n个顶点的生成树的边数为n-1;最小生成树是指:生成树中权值最小的生成树。算法:克鲁斯卡尔算法算法思想:每次将挑出最小的边,然后若边依附的两个顶点不在同一个集合中,那么就将这两个顶点所在的集合合并。*/#include<iostream>#include<algorithm>using namespace std;const int MAXN=100;int father[MAXN];int height[M
2021-04-26 20:22:51
146
原创 图论01—并查集
/*01.并查集是用于查询,合并不相交集合的数据结构02.不相交集合是指两个集合中没有重复的元素03.判断两个元素是否在同个集合中的办法:看这两个元素的根节点是否相同。04.判断集合中的哪个节点是根节点:判断其父节点的值是否和其本身相同。05.查找一个节点的根节点:递归的向上查找。优化:将树进行变宽变矮,从而提高查找效率06.不相交集合合并:先查找根节点,如果不同,则进行合并将矮树作为高树的子树,若树相同,则树高加1。*/#include<iostream>#in
2021-04-24 16:51:59
99
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人