自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(136)
  • 资源 (1)
  • 收藏
  • 关注

原创 天池算法赛——广东电网智慧现场作业挑战赛 赛道三:识别高空作业及安全带佩戴

记录下第一次正式参加线上算法比赛的解题流程。虽然错过了B榜时间,但收获匪浅!目录项目介绍数据处理标签数据提取标签数据集制作模型训练数据整合可视化显示继续改进思路数据增强赛道一二数据提取最终结果项目介绍大赛链接:广东电网智慧现场作业挑战赛 赛道三:识别高空作业及安全带佩戴。

2021-07-19 04:11:44 5742 22

原创 yolo模型部署——tensorRT模型加速+triton服务器模型部署

将最近的工作做个记录,方便日后学习回顾:1.针对项目需求开发满足任务的模型,拿到任务就要去选相应的算法,由于是工程应用型,必须找填坑多的算法,这样遇到问题可参考的资料多。2.做好以后,还要将开发的算法进行封装集成,要交付的是一个相对成熟的产品,所以涉及到算法和模型的部署,而不是每个应用场景都需要像开发环境一样去构建开发环境。3.在本次模型的部署中遇到了各种各样的问题,有些细小问题无法全面记录,本次只按开发流程记录必要步骤。4.主要涉及环境配置、模型训练、模型编译、模型部署、产品测试。5.包含te.

2021-07-19 02:42:25 8392 15

原创 yolov4-deepsort目标跟踪、ROI计数、绘制轨迹

项目环境部署参看我的另一篇博客《windows下yolov4-deepsort项目tensorflowGPU版本配置+项目实战》linux下部署直接参考源码github效果展示:目录1 介绍2 object_tracker.py解读与重写1 介绍今天整理了下之前做的一些工作,在原有yolov4-deepsort功能上增加了一些别的小功能。增加功能如下:绘制ROI区域,并记录roi内目标数量目标进入roi区域显示‘enter’打印各类目标跟踪数绘制目标运动轨迹其余类似任务功能做法原理类似

2021-04-15 15:11:02 6189 15

原创 天池学习赛——街景字符编码识别(得分上0.93)

目录1 比赛介绍2 解题思路3 数据集制作4 模型训练5 更改detect.py文件5 结果检测5 上传文件1 比赛介绍项目链接:零基础入门CV - 街景字符编码识别一、赛题数据赛题来源自Google街景图像中的门牌号数据集(The Street View House Numbers Dataset, SVHN),并根据一定方式采样得到比赛数据集。数据集报名后可见并可下载,该数据来自真实场景的门牌号。训练集数据包括3W张照片,验证集数据包括1W张照片,每张照片包括颜色图像和对应的编码类别和具体位置

2021-04-05 16:33:20 6141 11

原创 yolov5训练自己的数据集(一文搞定训练)

目录1 yolov51.1 环境配置2 数据集制作1 yolov51.1 环境配置2 数据集制作首先建立一个自己的数据文件夹:mycoco其目录结构如下:mycoco├── Annotations├── images├── ImageSets├── labels├── make_txt.py└── voc_label.py其中images文件夹下放置所有图片,Annotations文件夹下放置所有与之对应的xml文件。make_txt.py文件是用来划分数据集使用,内容如下:

2021-03-29 12:10:42 20757 48

原创 windows下yolov4-deepsort项目tensorflowGPU版本配置+项目实战

这里写目录标题0. yolov4-deepsort简介1. cuda环境2. 配置项目环境2.1 所需环境2.2 环境配置三级目录本人项目demo展示0. yolov4-deepsort简介该项目为使用YOLOv4、DeepSort和TensorFlow实现的对象跟踪。YOLOv4使用深度卷积神经网络来执行目标检测。我们可以让YOLOv4的输出将这些对象检测输入深度排序(使用深度关联度量进行简单的在线和实时跟踪),以创建一个高度精确的对象跟踪器。基于yolov4-deepsort可以进行一些后续的进

2020-12-01 00:09:50 4393 60

原创 数据结构与算法——爬楼梯

每次可以爬1,2,3阶楼梯。但是如果上一步是2or3阶那么下一阶必须为1阶,计算爬n阶楼梯的所有方法。可以看作是动态爬楼过程。划分三种状态0.开始爬1.上一步为1阶23.是一步非1阶。

2022-07-26 18:25:54 514 2

原创 ffmpeg视频剪辑中报错Could not write header for output file #0 (incorrect codec parameters ?): ……

代码】ffmpeg视频剪辑中报错Couldnotwriteheaderforoutputfile#0(incorrectcodecparameters?)……

2022-07-19 18:13:00 7031 3

原创 Mmdetection: yolox训练自己的VOC数据集

本次使用的mmdetection版本为:VOC数据集格式Annotations 存放所有xml标签,JPEGImages存放所有图像,ImageSet用来划分数据集。xml文件示例:在data目录下新建train_val.py:并执行,划分好的数据存在 下。根据自己的设备安装相应的pytorch,官网版本查询。过程中其余依赖项自己pip安装……mmdetection/mmdet/datasets/voc.py设置自己的数据集class; 取消年份版本选择(我们的数据集没有按年份设置文件

2022-07-07 22:04:00 4723 3

原创 2022美团实习生笔试记录

class Solution(): ''' ————————————第一题—————————————— 输入:有重复值的nums 求:数组中某个num邻居数量的最大值 (k的邻居数为k-1,k,k+1) 以[6,2,2,1,5,3,3]为例, 2的邻居数为5,分别是1,2,2,3,3 ''' def meituan1(self,nums): dict_a={} res=0 for num in num

2022-05-14 22:22:44 408 1

原创 力扣——835. 图像重叠

题目描述思路:1.图像填充 填充后的图像,即为img1可以平移的所有情况2.卷积class Solution(object): def largestOverlap(self, img1, img2): """ :type img1: List[List[int]] :type img2: List[List[int]] :rtype: int """ n=len(img1)

2022-05-02 23:17:44 521

原创 力扣—— 287.寻找重复数

官网指导二分法class Solution: def findDuplicate(self, nums): n=len(nums) left=1 right=n-1 while left<right: mid=left+(right-left)//2 cnt=0 for num in nums: if num<=mi

2022-05-01 15:29:36 358

原创 力扣—— 21、23合并链表(两个、K个)

目录C++class Solution {public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode temp_head(0); ListNode *pre=&temp_head; while(l1 && l2){ if(l1->val<l2->val){ pre-&

2022-04-30 22:30:27 128

原创 数据结构与算法——广度搜索BFS

目录模板542.01矩阵529.扫雷游戏2146.价格范围内最高排名的k样物品模板542.01矩阵class Solution: def updateMatrix(self, matrix) : m, n = len(matrix), len(matrix[0]) dp = [[0] * n for _ in range(m)] zeroes_pos = [(i, j) for i in range(m) for j in range(n)

2022-04-24 19:53:34 2426

原创 手写iou/nms(python实现)

import cv2import numpy as npdef get_iou(box1,box2,wh=False): if wh == False: xmin1, ymin1, xmax1, ymax1 = box1[:4] xmin2, ymin2, xmax2, ymax2 = box2[:4] else: xmin1, ymin1 = int(box1[0] - box1[2] / 2.0), int(box1[1] - bo

2022-04-11 16:59:01 4128 3

原创 力扣—— 79/212. 单词搜索

目录79 单词搜索212 单词搜索II79 单词搜索class Solution(object): #深度搜索 def exist(self, board, word): self.flag=0 self.len=len(word) m, n =len(board),len(board[0]) # 找起始位 for i in range(m): for j in range(n):

2022-04-09 22:25:18 488

原创 力扣—— 36. 有效的数独/37. 解数独

目录有效的数独解数独有效的数独class Solution10(object): def isValidSudoku(self, board): """ :type board: List[List[str]] :rtype: bool """ rows={} columns= {} blocks= {} for i in range(9):

2022-04-09 12:15:39 301

原创 pytorch入门——tensorboard,transforms,dataset,dataloader,model,train,test

目录tensorboardtransformsDatasetDataloadermodeltraintesttensorboardimport torchvisionfrom torch.utils.data import DataLoaderfrom torch.utils.tensorboard import SummaryWriterdata_test=torchvision.datasets.CIFAR10("./CIFAR10",train=False,transform=torchv

2022-03-17 18:18:11 1171

原创 数据结构与算法——动态规划

目录例1:爬楼梯(easy)例2:打家劫舍(easy)例3:最大字段和(easy)例4:找零钱(medium)例5:三角形(medium)例6:最长上升子序列(medium,hard)例7:最小路径和(medium)例8:地牢游戏(hard)例1:爬楼梯(easy)class Solution {public: int climbStairs(int n) { vector<int>dp(n + 3, 0); dp[1] = 1; dp[2] = 2; for (in

2022-03-10 16:16:39 5768 1

原创 数据结构与算法——搜索

目录例1:岛屿数量(medium)(深搜、宽搜)例2-a:词语阶梯(medium)(宽搜、图、哈希表)例2-b:词语阶梯2(hard)(记录路径的宽搜、图、哈希表)例3:火柴棍摆正方形(medium)(回溯深搜、位运算)例4:收集雨水2(hard)(带优先级的宽度优先搜索、堆)例1:岛屿数量(medium)(深搜、宽搜)例2-a:词语阶梯(medium)(宽搜、图、哈希表)例2-b:词语阶梯2(hard)(记录路径的宽搜、图、哈希表)例3:火柴棍摆正方形(medium)(回溯深搜、位运算)例4:

2022-03-09 21:57:37 596

原创 数据结构与算法——哈希表与字符串

目录预备知识:哈希表基础知识例1:最长回文串(easy)(字符哈希)例2:词语模式(easy)(字串符哈希)例3:同字符词语分组(medium)(数组哈希)例4:无重复字符的最长子串(medium)(字符哈希)例5:重复的DNA序列(medium)(字串符哈希)例6:最小窗口子串(hard)(哈希维护窗口)预备知识:哈希表基础知识例1:最长回文串(easy)(字符哈希)class Solution {public: int longestPalindrome(std::string s)

2022-03-09 20:05:17 366

原创 数据结构与算法——二分查找与二叉查找树汇总整理

目录预备知识:二分查找基础知识例1:插入位置(easy) (二分查找)例2:区间查找(medium)(二分查找)例3:旋转数组查找(medium)(二分查找)预备知识:二叉查找(排序)树基础知识例4:逆序数(hard)(二叉查找树应用)预备知识:二分查找基础知识在列表A中查找B列表中元素是否存在,存在为1否则为0,结果存在result列表中。递归实现:#include <stdio.h>#include <vector>bool binary_search(std::v

2022-03-09 13:45:17 849

原创 数据结构与算法——二叉树与图汇总整理

目录预备知识:二叉树基础知识例1:路径之和2(medium)(二叉树深搜)例2:最近的公共祖先(medium)(二叉树性质)例3:二叉树转链表(medium)(二叉树与链表)预备知识:二叉树层次遍历例4:侧面观察二叉树(medium)(二叉树宽搜)预备知识:图的基础知识例5:课程安排(有向图判断环)(medium)预备知识:二叉树基础知识树是n(n>=0)个节点的有限集,且这些节点满足如下关系:(1)有且仅有一个节点没有父结点,该节点称为树的根。(2)除根外,其余的每个节点都有且仅有一个父结

2022-02-28 23:01:31 550

原创 数据结构与算法——递归、回溯与分治汇总整理

目录预备知识:递归函数与回溯算法例1-a:求子集(medium)(回溯法、位运算法)例1-b:求子集2(medium)(回溯法)例1-c:组合数之和2(medium)(回溯法、剪枝)例2:生成括号(medium)(递归设计)例3:N皇后(hard)(回溯法)预备知识:分治算法与归并排序例4:逆序数(hard)(分治法、归并排序应用)预备知识:递归函数与回溯算法例1-a:求子集(medium)(回溯法、位运算法)class Solution {public: vector<vect

2022-02-26 17:32:13 1701 3

原创 力扣——315. 计算右侧小于当前元素的个数

目录问题描述问题分析问题描述问题分析本题采用分治思想进行处理,单独处理较长数组算法复杂度过大,先拆分为短对象进行处理,最后将结果进行合并。针对拆分出来的较短数组的处理:class Solution {public: vector<int> countSmaller(vector<int>& nums) { vector<pair<int, int>>vec;//将数组值与index关联 vecto

2022-02-26 16:13:34 292

原创 力扣—— 51. N 皇后

目录题目描述问题分析题目描述问题分析何为不能攻击?攻击范围:同行、同列、同对角线。在除此以外的位置安全。所以需要对棋盘进行数字化表示,我们将棋盘看作是一个矩阵,安全位置用0占位,受攻击位置为1,且攻击位置在皇后所在位置的临近8个方向。在此方向上遍历棋盘将所有攻击位置至1:放置皇后的功能函数:class Solution {public: vector<vector<string>> solveNQueens(int n) { vecto

2022-02-26 15:23:37 502

原创 数据结构与算法——贪心算法汇总整理

目录例1:分糖果(easy)(排序、贪心)例2:摇摆序列(medium)(贪心)例3:移除K个数字(medium)(栈、贪心)例4-a:跳跃游戏(medium)(贪心)例4-b:跳跃游戏2(hard)(贪心)例5:射击气球(medium)(排序、贪心)例6:最优加油方法(hard)(堆、贪心)例1:分糖果(easy)(排序、贪心)class Solution {public: int findContentChildren(vector<int>& g, vector&

2022-02-25 17:43:06 8371 4

原创 数据结构与算法——链表汇总整理

目录例1-a:链表逆序(easy)例1-b:链表逆序2(medium)例2:链表求交点(easy)例3:链表求环(medium)例4:链表划分(medium)例5:复杂链表的复制(hard)例6-a:2个排序链表归并(easy)例6-b:K个排序链表归并(hard)例1-a:链表逆序(easy)class Solution {public: ListNode* reverseList(ListNode* head) { ListNode* new_head = NULL;

2022-02-23 21:09:52 592

原创 数据结构与算法——栈、队列、堆汇总整理

目录例1:使用队列实现栈(easy 栈、队列)例2:使用栈实现队列(easy 栈、队列)例3:包含min函数的栈(easy 栈)例4:合法的出栈序列(medium 栈、队列)例5:简单的计算器(hard 栈)例6:数组中第K大的数(easy 堆)例7:寻找中位数(hard 堆)例1:使用队列实现栈(easy 栈、队列)class MyStack {public: MyStack() { } void push(int x) { std::queue<i

2022-02-23 17:30:19 1300

原创 力扣—— 295. 数据流的中位数(困难)

目录题目描述c++代码题目描述c++代码在这里插入代码片

2022-02-23 16:39:43 573

原创 力扣—— 224. 基本计算器(困难)

目录题目描述题目分析c++代码题目描述给你一个字符串表达式s,请你实现一个基本的计算器来返回它的值。注意不允许使用任何将字符串作为数学表达式计算的内置函数,比如:eval()。示例一:输入:s=“1+1”输出:2示例二:输入:s=" 2-1 + 2"输出:3示例三:输入:s="(1+(4+5+2)-3)+(6+8)"输出:23题目分析涉及到优先级问题,准备用栈做。需要解决 :什么时候可以计算?什么时候需要等待?即需要我们设置一个标志位来记录计算的状态(compute_flag

2022-02-23 16:03:40 404

原创 ffmpeg——同时剪辑多个视频并合并

所用的ffmpeg的语法:1.剪辑单个视频`ffmpeg -i [2021-11-24-1-2.mp4] -vcodec copy -acodec copy -ss [00:00:00] -to [00:00:05] [output/p3.mp4]`[ ]中三个参数依次为:剪辑视频源文件;第一个时间为剪辑的起始时间;第二个时间为视频持续的时间长度; 剪辑好的文件名2.合并视频片段` ffmpeg -f concat -safe 0 -i [cutfiles.txt] -c copy [out

2022-02-18 20:20:56 7560 4

原创 实时视频流(url)——延时显示

最近项目需要对不同视频流之间进行融合,需要对其中某个视频做延时播放的处理,如果有同样需,可用下面思路。通过维护一个固定长度的数列将视频帧进行短暂的存储。因为所需功能简单,所以直接自己写了个数列,其实也可以用队列实现。

2021-12-22 22:07:45 2250

转载 linux——shell脚本开启新终端

需求:开启ros3d视图进行点云可视化时,需要在终端中分别开启相应的功能服务。详情:利用ros3djs接收pointcloud2在web端显示。需要在三个终端中分别运行"roscore",“roslaunch rosbridge_server rosbridge_websocket.launch”,“rosrun tf2_web_republisher tf2_web_republisher”。为方便操作,我们可以将三个终端开启的命令写入shell脚本,直接执行一个.sh文件。由于第二个命令需要在.

2021-12-09 21:05:54 8036

原创 PCL——4.深度图像

目录1 从点云创建深度图像2 从深度图像中提取边界3 深度图像精通级实例解析:点云到深度图的变换与曲面重建1 从点云创建深度图像#include <pcl/range_image/range_image.h>int main (int argc, char** argv) { pcl::PointCloud<pcl::PointXYZ> pointCloud;//定义点云对象 //生成数据 for (float y=-0.5f; y<=0.5f; y+=0.0

2021-11-15 09:24:18 2519 2

原创 PCL——3.滤波

目录1 直通滤波器2 体素滤波器31 直通滤波器适用场景:对于在空间分布有一定空间特征的点云数据,比如使用线结构光扫描的方式采集点云,沿z向分布较广,但x,y向的分布处于有限范围内。此时可使用直通滤波器,确定点云在x或y方向上的范围,可较快剪除离群点,达到第一步粗处理的目的。2 体素滤波器适用场景:体素的概念类似于像素,使用AABB包围盒将点云数据体素化,一般体素越密集的地方信息越多,噪音点及离群点可通过体素网格去除。另一方面如果使用高分辨率相机等设备对点云进行采集,往往点云会较为密集。过

2021-11-09 14:52:52 351

原创 PCL——2.kd-tree

关于kd-tree 学习的链接:https://en.wikipedia.org/wiki/K-d_tree最近邻搜索PCL学习路线优质博文1介绍在计算机科学中,KD树(简称k维树)是空间划分的数据结构来组织点在k维空间。k-d树是多种应用的有用数据结构,例如涉及多维搜索关键字的搜索(例如范围搜索和最近邻搜索)和创建点云。k-d 树是二元空间分区树的特例。2实例...

2021-11-03 17:27:19 278

原创 PCL——1.介绍及工程创建与测试

目录pcl介绍工程创建与测试pcl介绍对于3D点云处理来说,PCL完全是一个模块化的现代C++模板库。其基于以下第三方库:Boost、Eigen、FLANN、VTK、CUDA、OpenNI,QHull,实现点云相关的获取、滤波、分割、配准、检索、特征提取、识别、追踪﹑曲面重建、可视化等。PCL利用OpenMP,GPU,CUDA等先进高性能计算技术,通过并行化提高程序实时性。K近邻搜索操作的构架是基于FLANN (FastLibrary for ApproximateNearestNeighbors)

2021-11-02 22:28:58 1533

原创 python提高——闭包、装饰器

目录1闭包2装饰器2.1装饰器功能2.2示例1无参数的函数2被装饰的函数有参数3被装饰的函数有不定长参数4装饰器中的return5装饰器带参数,在原有装饰器的基础上,设置外部变量6类装饰器(扩展,非重点)1闭包在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为闭包。# 定义一个函数def test(number): # 在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为闭包 def te

2021-11-02 16:26:08 115

原创 python提高——多继承、静态方法、类方法、property属性、魔法属性

目录1多继承单独调用父类得方法多继承中super调用父类的被重写的方法单继承中super2静态方法、类方法2.1类属性、实例属性2.2实例方法、静态方法和类方法3property属性3.1案例3.2property属性的有两种方式3.2.1装饰器方式3.2.2类属性方式,创建值为property对象的类属性4魔法属性1多继承单独调用父类得方法print("******多继承使用类名.__init__ 发生的状态******")class Parent(object): def __init_

2021-11-01 22:29:33 145

空空如也

空空如也

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

TA关注的人

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