- 博客(72)
- 收藏
- 关注
原创 【数据结构】手写堆 HEAP
什么是堆???堆是一个二叉树。也就是有两个叉。下面是一个大根堆:大根堆的每一个根节点比他的子节点都大有大根堆就有小根堆:我们可以看到红9在绿9的下一层,大小堆中我们需要注意,【,没有子节点之间的比较。
2024-07-13 22:28:57
846
原创 跟着鲁sir学CV_Opencv(10)卡尔曼滤波
卡尔曼滤波器由鲁道夫·卡尔曼(Rudolf E. Kálmán)在1960年提出,广泛应用于导航系统、信号处理、机器人定位、金融等多个领域。主要分为两阶段:预测与更新。
2024-05-23 21:27:56
364
1
原创 跟着鲁sir学CV_Opencv(8)识别、词袋
识别分为单实例和类别识别,前者特殊性,后者有普遍性。算法包括:对图和视频的分类,检测定位物品,估计语义和几何属性,分类人类活动与事件深度学习解决“形变”,局部特征可以帮助解决“遮挡”,还有些问题,“背景”图像识别系统包括:表达(表达,分类)——学习(学习分类器,给训练数据集)——识别(分类器运用在新数据中)
2024-05-23 09:34:15
361
原创 跟着鲁sir学CV_Opencv(6)分割
分割存在过分割和欠分割,过表示对一个物体分割好多,欠表示把不是一类的分在一起。原始用将像素聚在一块,用区块表示,但是也不够有自底向上,和向下,向上是从底相似的连在一起,从细节着手。向下是从语义角度联系在一起,从整体着手。自底向上,无监督,去聚类我们人一般两者都采用。可以根据距离,形状,色彩,方向相近的去判断是一块的,可以根据已给的信息,平行,对称,相连,封闭等特点判断。给出一张图,要判断里面的“关系”实例分割:分割出图片里的辣椒a与b。
2024-05-23 08:10:51
287
原创 跟着鲁sir学CV_Opencv(4)尺度不变 SIFT
问题:解决尺度不变(scale covariance)问题(角点存在这个问题)角点见(3)解决:找对应函数纵轴:圆圈准确度,横轴圆半径,顶点看出最准确时候的半径拉普拉斯找二阶导,但是随着σ增大,信号衰减没了可以补充,防止衰减影响二阶拉普拉斯模板现在推导圆半径与窗宽有何关系只有左边这个正好的合适拉普拉斯,一阶高斯偏导卷积最大,高斯二阶偏导=0,需要:则关系求出!也就是找到这个0平面,为我要的圈(框住了特征)
2024-05-23 08:10:05
737
原创 跟着鲁sir学CV_Opencv(3)全景拼接、Harris角点
1、计算每个像素点的2、计算每个点的二阶局域矩阵3、计算该点的R4、R>阈值,为可能角点5、非最大化抑制。
2024-05-21 21:18:04
274
原创 跟着鲁sir学CV_Opencv(2)检测硬币边缘之霍夫变换
之前经过canny,将突出边经过筛选和加强,整个图里self.img只剩下边,其余的像素值都是0,下一步是,将有用的边挑出来,满足我们的需要,“投票”就是一个方法。
2024-05-20 16:51:22
617
原创 python—numpy、math、Opencv函数小记(持续更新...
类定义实例化self建立0数组,2行3列数组元素类型取前2个元素建立数组,行、列for循环绝对值abs()返回return。
2024-05-20 12:27:55
243
原创 跟着鲁sir学CV_Opencv(1)检测硬币边缘之Canny
import cv2''':param Guassian_kernal_size: 高斯滤波器尺寸:param img: 输入的图片,在算法过程中改变:param HT_high_threshold: 滞后阈值法中的高阈值:param HT_low_threshold: 滞后阈值法中的低阈值''''''计算梯度图和梯度方向矩阵。:return: 生成的梯度图'''if j == 0:else:if i == 0:else:'''
2024-05-17 23:03:49
990
原创 opencv与python清华镜像对应 以及 安装opencv
64表示电脑64位,下载到电脑python目录上,然后打开anaconda prompt,在对应目录下安装。用import cv2检验是否成功。cp39表示python3.9。
2024-05-17 16:55:55
744
原创 何为Autoware【更新中...
Autoware提供了丰富的功能和工具,使开发者能够构建、测试和部署自动驾驶系统。这些模块可以根据地图、传感器数据和车辆状态生成安全和高效的行驶路径,并进行实时的决策制定,以应对各种交通场景和情况。:Autoware包含了仿真和测试工具,可以帮助开发者在虚拟环境中进行自动驾驶系统的测试和验证。:Autoware是一个开源项目,提供了丰富的文档、示例和社区支持。开发者可以根据自己的需求和场景定制和扩展Autoware,使其适应不同的应用和环境。它支持各种车辆类型和品牌,可以与不同的硬件和软件平台集成。
2024-04-27 22:26:19
243
原创 软件架构设计 Azure架构
是指软件系统的组织结构,它定义了软件组件之间的关系、交互方式以及系统整体的设计原则和思想。:将系统划分为客户端和服务器两个部分,客户端负责用户界面和用户输入,而服务器负责处理数据存储和业务逻辑。这种架构可以支持分布式计算和服务端的负载均衡。:将系统划分为多个逻辑层,每个层次都有特定的功能和责任。通常包括表示层、业务逻辑层和数据访问层。分层架构有助于提高系统的可维护性和可扩展性。:将系统拆分为多个小型、自治的服务,每个服务都有自己的数据存储和业务逻辑。
2024-04-19 22:48:48
1476
原创 yolo 基础
思想:将目标检测问题转化为回归问题将图像分成固定大小的网格,并在每个网格单元格中目标的。这意味着在单个前向传播过程中,YOLO可以同时进行目标检测和分类,而不需要复杂的图像分割或区域提议过程。
2024-04-16 12:19:21
331
原创 使用colab进行yolov5小demo练习
类别: 17.0, 置信度: 0.8820466995239258, 边界框: tensor([ 95.17632, 88.61916, 327.81903, 387.15582])输入一张动物的图片进行目标检测和分类。
2024-04-16 12:18:49
159
原创 bev算法 简介
三维点云数据中提取所需特征,如点的X、Y、Z坐标、强度等将三维坐标(X, Y, Z)投影到一个二维平面上,通常保留X和Y坐标。这样,每个点云数据点都可以映射到二维平面上的一个像素根据需要选择的特征(如高度、强度等),为每个像素分配一个或多个值。将生成的二维特征图进行必要的缩放和裁剪,以满足网络输入要求。
2024-04-16 10:25:24
833
原创 C++用深度优先dfs求岛屿个数问题 代码 图遍历
图搜索是涉及地图、路径规划中常常需要借鉴的算法基础。给出栅格地图,0表示海,1表示陆地,只能横竖相连。
2024-03-26 08:26:28
239
原创 使用colab仿李沐的卷积神经网络小代码
在训练过程中,模型将学习如何从输入图像中提取特征,并通过这些特征对数字进行分类。具体来说,模型的各个层将在训练数据上进行参数优化,以便最小化预测输出与实际标签之间的差距(损失)。通过反向传播算法,模型将根据损失来更新自己的参数,从而逐渐提高对手写数字的分类准确率。在上述代码中,通过定义一个神经网络模型,该模型可以接受28x28像素的手写数字图像作为输入,并将其分类为数字0到9中的一个。这是因为该模型的最后一层是一个具有10个输出节点的全连接层,每个节点对应于一个数字类别。
2024-03-25 22:36:31
801
原创 CNN 卷积神经网络 代码解释
假设我们有一张灰度图像,表示一片树叶的图像。我们想要设计一个卷积核来检测图像中的边缘特征。通过这个示例,我们可以看到卷积操作如何能够帮助我们从图像中提取出特定的特征,比如边缘特征。最后,我们使用 Matplotlib 库来可视化原始图像和边缘检测结果。函数对原始图像应用卷积操作,得到了边缘检测结果。在这个示例中,我们首先定义了一张树叶的灰度图像。,然后定义了一个用于边缘检测的卷积核。
2024-03-25 19:03:19
280
原创 GAN 生成式对抗网络介绍
当谈到生成式对抗网络(GANs)时,一个常见的例子是图像生成。让我们以生成手写数字图像为例来详细说明GANs的工作原理。这段代码是一个基本的生成对抗网络(GANs)的实现示例,用于生成手写数字图像。:训练完成后,可以使用生成器生成手写数字图像样本,并通过人工或者其他评价指标来评估生成的图像的质量。:训练好的生成器可以应用于各种任务,例如生成手写数字图像的样本、图像修复等。:生成器和判别器的权重参数需要进行初始化,可以使用随机初始化的方式。这样,整个代码就是一个简单的GANs实现示例,用于生成手写数字图像。
2024-03-25 18:14:44
1242
原创 Linux下压缩解压缩tgz scp的
将sc_compile.sh传到182的ac_new_75下。将ap_0922压缩成ap_0922.tgz。一个服务器的文件传到另一个服务器。a_1下的东西,剪切移动到b下。将b下所有复制到a_1下。将b压缩成b.tgz。
2023-10-17 11:20:49
94
原创 【初级】操作系统 面试小问题
因为DLL中的代码是被某些线程所执行,只有线程拥有堆栈,如果DLL中的代码是EXE中的线程所调用,那么这个时候是不是说这个DLL没有自己独立的堆栈?以上讲的是堆栈,如果对于堆来说,每个DLL有自己的堆,所以如果是从DLL中动态分配的内存,最好是从DLL中删除,如果你从DLL中分配内存,然后在EXE中,或者另外一个DLL中删除,很有可能导致程序崩溃。进程是死的,只是一些资源的集合,真正的程序执行都是线程来完成的,程序启动的时候操作系统就帮你创建了一个主线程。dll是否有独立的堆栈?每个线程有自己的堆栈。
2023-09-08 11:00:15
29
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人