自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 收藏
  • 关注

原创 Simpledet安装配置,tridentnet训练自己的数据集

项目地址:https://github.com/TuSimple/simpledet之前把项目里install里的各种方法都试了好几遍,都安装不好,差点就放弃了。前几天刚好更新了新的安装方法,成功安装,记录一下。配置环境conda创建虚拟环境(创建虚拟环境真的很重要,适合版本管理,而且万一失败了直接删了就完事了)conda create -n simpledet python=3...

2019-09-09 11:09:35 2137 35

原创 CenterNet 训练自己的数据集

github地址:https://github.com/Duankaiwen/CenterNet论文:https://arxiv.org/abs/1904.081891、在github上下载,配置好环境。2、准备数据把自己的数据转化为coco的格式,网上有很多工具可以下载使用。我的数据是yolo格式的,需要的话可以提供我的yolo to coco的代码。yolo to coco数据...

2019-08-30 12:02:41 9546 49

原创 openpose tensorflow+keras版本 demo代码详解

import osimport sysimport argparseimport cv2import mathimport timeimport numpy as npimport utilfrom config_reader import config_readerfrom scipy.ndimage.filters import gaussian_filterfr...

2019-05-20 16:21:32 4257 5

原创 openpose tensorflow版本 原理+项目代码详解

1、训练数据 (很关键用于理解paf)训练数据集为coco,该数据集中包含了人体keypoint的坐标、类型信息。根据keypoint信息来生成part和paf的训练样本。 part的训练样本:令S*j,k为person k的第j part的confidence map。xj,k为第k个人的第j个part的groundtruth坐标信息。对于S*j,k 位置p的valu...

2019-05-20 11:13:11 14886 4

原创 ubuntu用 conda 创建虚拟环境,安装cuda+cudnn+tensorflow-gpu+opencv3

记性不好+重装系统当饭吃,记录一下常用的装机命令行。环境:Ubuntu16.04,Anaconda3创建虚拟环境:conda create -n env_name python=3.6激活虚拟环境:source activate env_name退出虚拟环境:source deactivate env_name删除虚拟环境:conda remove -...

2019-04-03 21:42:32 3131 2

原创 Redis缓存击穿,穿透,雪崩等问题

雪崩(随机过期时间、永不过期)、穿透(表示恶意请求,在系统端判断是否符合规则,比如id<0,布隆过滤器)、击穿(查询加for update,永不过期)redis缓存穿透:查询一个数据库中不存在的数据,比如商品详情,查询一个不存在的ID,每次都会访问DB,如果有人恶意破坏,很可能直接对DB造成过大地压力解决方案:当通过某一个key去查询数据的时候,如果对应在数据库中的数据都不存...

2020-04-03 23:14:52 229

原创 mysql学习笔记

1. 常用数据类型mysql常用数据类型:数值,日期/时间和字符串(字符)类型。2. 登陆和退出数据库# 登录MySQL$ mysql -u root -p# 退出MySQL数据库服务器exit;3. 基本语法-- 显示所有数据库show databases;-- 创建数据库CREATE DATABASE test;-- 切换数据库use test;--...

2020-03-03 23:30:05 320

原创 socket笔记4 粘包/分包的原因和处理方法 // 多线程

2-60 解决粘包、分包问题粘包原因:当发送的字节数据包比较小且频繁发送时,Socket内部会将字节数据进行粘包处理,既将频繁发送的小字节数据打包成 一个整包进行发送,降低内存的消耗。发送端发送的太快,接收方没有及时接收缓冲区的包,造成多个包一起被接收分包原因:当发送的字节数据包比较大时(大于缓存剩余空间大小 或者 大于最大报文长度),Socket内部会将发送的字节数据进行分包处理...

2020-03-02 16:23:57 534

原创 C++ 多线程Thread (c++11)

1. 头文件thread:该头文件主要声明了 std::thread 类,另外 std::this_thread 命名空间也在该头文件中。atomic:该头文主要声明了了一套 C 风格的原子类型和与 C 兼容的原子操作的函数。mutex :该头文件主要声明了锁(mutex)相关的类。2. 创建线程创建线程比较简单,使用std的thread实例化一个线程对象就创建完成了。注意线程不能拷...

2020-02-28 00:04:38 422

原创 socket笔记3 select模型

2.17 服务器/客户端升级为select模型处理多客户端select 函数:int select(int n,fd_set * readfds,fd_set * writefds,fd_set * exceptfds,struct timeval * timeout);第一个参数是一个整数,指fd_set集合中所有socket的范围,而不是数量。即是所有描述符最大值+1,在windows...

2020-02-24 16:19:17 188

原创 socket笔记2

2.10 网络报文的数据格式定义及使用网络报文包含两个部分,头和体。服务端// Created by Surser on 2020/1/17.// Copyright © 2020 Surser. All rights reserved.//#ifdef _WIN32 #include<windows.h> #include<WinSock2....

2020-02-24 15:04:37 116

原创 socket笔记1

2.5 建立简单的TCP服务器和客户端在服务器绑定连接端口时,_sin.sin_port = htons(4567); // htons()将主机字节顺序转换为网络字节顺序。网络和本机字节序不同,需要转换,一个是大端编码,一个是小端编码。服务器://// main.cpp// hellocpp//// Created by Surser on 2020/1/17.// ...

2020-02-21 19:21:52 179

原创 应用层

动态主机配置协议DHCPDHCP (Dynamic Host Configuration Protocol) 提供了即插即用的连网方式,用户不再需要手动配置 IP 地址等信息。DHCP 配置的内容不仅是 IP 地址,还包括子网掩码、网关 IP 地址。DHCP使用传输层的UDP服务。目标端口号67,源端口68。DHCP 工作过程如下:客户端发送 Discover 报文,该报文的目的地址...

2020-02-14 00:04:48 132

原创 网络层

网络层的任务是实现网络互联,实现数据包在各网络之间的传输。要实现网络层的任务,解决以下三个问题:网络层向运输层提供怎样的服务(可靠传输/不可靠传输);网络层寻址问题;路由选择问题。1. IP地址编址方式1.1 分类编址IP地址分为网络号和主机号。其中不同分类具有不同的网络号长度,并且是固定的。其中A类地址的最后一个网络号127,作为本地环回测试,不能指派。网络号为0的也保留不可指派。...

2020-02-12 17:00:01 236

原创 数据链路层

1. 三个基本问题封装成帧:网络层传下来的分组添加首部和尾部,用于标记帧的开始和结束。差错检测:发送之前基于发送数据计算出检错码(广泛使用循环冗余检验CRC),封装在帧尾,根据检错码判断帧是否出现错误。透明传输:帧使用首部和尾部进行定界,如果帧的数据部分含有和首部尾部相同的内容,那么帧的开始和结束位置就会被错误的判定。需要在数据部分出现首部尾部相同的内容前面插入转义字符。如果数据部分出现转...

2020-02-10 23:57:31 210

原创 一文搞懂传输层协议 TCP和UDP

1. TCP流量控制目的:让发送方发送的速率不要太快,要让接收方来得及接受。TCP的流量控制是利用滑动窗口机制实现的,接收方在返回的ACK中会包含自己的接收窗口的大小,以控制发送方的数据发送。将窗口字段设置为 0,则发送方不能发送数据。1.1 TCP 滑动窗口窗口是缓存的一部分,用来暂时存放字节流。发送方和接收方各有一个窗口,接收方通过 TCP 报文段中的窗口字段告诉发送方自己的窗口大小...

2020-02-10 17:11:14 152

原创 leetcode 46.全排列 47.全排列II

46.全排列II给定一个没有重复数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]思想: 回溯。 不需要额外的vector来存放,只需要在num里面改变顺序,并压入输出的列表中。 num里面的顺序:将首元素与之后的每一个元素交换(让每个元素都成为一次首元素...

2020-01-04 22:10:11 148

原创 二叉树的先序、中序、后序遍历的非递归方式

先序遍历:引入栈。拿到一棵树的根结点后,首先打印该结点的值,然后将其非空右孩子、非空左孩子依次压栈。栈非空循环:从栈顶弹出结点(一棵子树的根节点)并打印其值,再将其非空右孩子、非空左孩子依次压栈。void pre2(node *root) { stack<node*> sb; sb.push(root); node* cur; while (!sb.empty()) {...

2019-12-29 16:35:54 185 2

原创 leetcode 48.旋转图像 54.螺旋矩阵 59.螺旋矩阵||

给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。给定 matrix = [[1,2,3],[4,5,6],[7,8,9]], 原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2], [9,6,3]]这个题目在左神的算法课里有讲...

2019-12-28 21:06:55 110

原创 leetcode 15.三数之和 16.最接近三数之和

15. 三数之和给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]思路:排序+...

2019-12-26 15:55:08 131

原创 计算机网络基础

物理层物理层解决如何在连接各种计算机传输媒体上传输 数据比特流 。根据信息在传输线上的传送方向,分为以下三种通信方式:单工通信:单向传输,只能一方发送数据,一方接受数据(广播)。半双工通信:双向交替传输,双方都可以接受数据,发送数据,但是不能同时进行(对讲机)。双工通信:双向同时传输,双方可以同时接受数据和发送数据(打电话)。带通调制(数模转换、模数转换):模拟信号是连续的信号(正...

2019-12-26 15:42:05 110 1

原创 排序

1. 冒泡排序从左到右不断交换相邻逆序的元素,在一轮循环之后,最大的元素放在最右边。一轮循环如果没有进行交换,说明已经有序,可以直接退出。时间复杂度: 最好O(n);最坏O(n2 );平均O(n2 )空间复杂度:O(1)稳定。2. 选择排序选择最小的元素与第一个元素互换位置。再从剩下的数组中选择最小的元素,与第二个元素交换。不断重复。时间复杂度:O(n2 )空间复杂度:O(1)...

2019-12-24 17:24:13 123 1

原创 STL

P2:STL体系结构介绍(1)STL六大部件:容器,分配器,算法,迭代器,适配器,仿函数。(2)前闭后开区间 [ ),例如 对象都有c.begin() 和 c.end()两个个函数。c.begin() 指向第一个元素地址,c.end()指向最后一个元素地址的下一个地址。P3:Array(数组)(1)大小固定。P4:vector(向量)(1)分配器会扩充, vector只能向后扩展,扩展...

2019-12-17 21:53:08 160

原创 cpp笔记

P1:c++编程简介(1)Class分类:class without pointer members ——>e.g: complex 复数class with pointer members ——>e.g: string 字符串P2:头文件与类的声明(1)标准库以头文件的形式存在,只需要include进去就好#include <*.h>(2)CPP防卫式头文件...

2019-12-11 17:50:16 193

原创 txt文件从linux到Windows,换行符丢失、串行

这是因为POSIX系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<换行><回车>”,即“\n\r”;但是在更改了python程序,将“\n”改为“\n\r”仍然不可以,搜了半天,可以用vim转换,记录一下vimexports.txt:setff=dos:x...

2019-11-13 21:53:43 547

原创 cpp防卫式头文件

#ifndef _HEAD_#define _HEAD_//...#endif在头文件中加入如上代码行,其中 HEAD用来识别该头文件,可以是这个头文件名字的大写。在调用这个头文件的时候,会判断是否被定义过,定义过了就不会再执行了,要注意两个不同的头文件不能重名。适合的场景:cpp文件调用了许多头文件,头文件可能会互相包含,加入这个的话调用头文件次序就无所谓了,这样头文件只会被...

2019-11-05 17:32:29 106

转载 程序员实用工具

1

2019-11-04 15:26:17 88

原创 ubuntu18.04上用vmware安装Windows10虚拟机

1:下载安装包https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html2:增加权限&安装打开终端,执行:sudo chmod +x VMware-Workstation-Full-15.0.2-10952284.x86_64.bundlesudo ./VMware-Wo...

2019-11-04 15:00:34 3034

原创 yolo数据格式转化为coco数据格式

https://github.com/surserrr/yolo_to_coco如何使用在里面写了,之前经常有人问我要,就上传github了。觉得ok的话记得点star呀~

2019-10-09 15:36:20 1335

原创 解决ubuntu18.04打不开网易云音乐(亲测可行!

每次开机能不能打开网易云真的看缘分,找了半天终于找到一个靠谱的解决方案,记录一下https://blog.csdn.net/gulang03/article/details/85253237

2019-09-24 14:52:02 156

原创 latex笔记

1、插入编号小圆点类型\begin{itemize} \item 第一点 \item 第二点\end{itemize}数字编号类型\begin{enumerate} \item 第一点 \item 第二点\end{enumerate}2、插入图片#调用包\usepackage{graphicx} \begin{figure}[ht] \cen...

2019-09-18 15:27:39 360

原创 论文阅读《CenterNet: Keypoint Triplets for Object Detection》

论文阅读《CenterNet: Keypoint Triplets for Object Detection》论文idea论文idea现在最流行的目标检测是传统基于anchor的,但是存在的问题:需要大量的anchors来保证足够高的IOUanchor的比例和尺寸需要手工设置anchors与ground-truthboxes不对齐,不利于边界框分类任务。于是CornerNet被提出...

2019-08-31 10:50:42 257

原创 git初学者 git基本操作

今天上课学了git,记录一下。首先,需要建立一个工作区(文件夹),打开终端mkdir my_projectcd my_project进入了工作区,使用git init将文件夹初始化为版本库Sursers-mac:my_project surser$ git initInitialized empty Git repository in /Users/surser/Deskt...

2019-08-27 20:56:06 221 1

原创 简介好用免费的ppt模板!!

今天要做ppt,搜了一圈发现很多网站都很杂乱,要么收费,要么丑,找了半天找到个好的。优品ppt:www.ypppt.com非常无敌!而且免费!

2019-08-22 17:00:55 254

原创 keras EarlyStopping学习与理解

官方文档:https://keras.io/callbacks/#earlystoppingkeras.callbacks.EarlyStopping(monitor='val_loss', min_delta=0, patience=0, verbose=0, mode='auto', baseline=None, restore_best_weights=False)在monito...

2019-08-16 15:00:07 2256

原创 kd树 寻找k近邻算法 python实现

kd树和寻找k近邻算法具体流程就不赘述了,这个链接写的很好懂https://zhuanlan.zhihu.com/p/23966698按照链接里的算法写了k近邻的python实现from math import sqrtclass KDnode: def __init__(self, data, left, right, split): self.left ...

2019-08-08 20:29:33 776 2

原创 目标检测mAP的含义与计算

1、Precision,RecallPrecision=正确的检测框/(正确的检测框+错检)Recall = 正确的检测框/(正确的检测框+漏检)2、mAPmAP是目标检测下的重要指标。大致为不同recall值下的precision和。计算如下:1、对所有检测框按照置信度排序。2、对各个检测框计算其为正确or错检。 判断检测框是否正确使用的是IOU值,一般默认I...

2019-08-01 17:30:25 609 1

原创 python+opencv 绘制检测框

1、利用cv2.rectangle()绘制bounding boximport cv2cv2.rectangle(img, (x,y), (x+w,y+h), (B,G,R), Thickness)参数如下:img:图像(x,y):bounding box左上角点坐标,图像最左上角坐标为(0,0)(x+w,y+h):bounding box右下角点坐标(B,G,...

2019-07-31 17:25:33 2346

原创 ubuntu16.05 latex+texstudio安装 中文显示

sudo apt-get install texlive-fullsudo apt-get install texlive-xetexsudo apt-get install texstudio这样就安装好了,texlive里面自带了ctex。还需要设置一下texstudio,打开texstudio,Options -- Configure texstudio -- Build --...

2019-06-18 15:46:14 985

原创 human estimation 训练测试trick

训练1、随机翻转(random flip)、随机旋转(random rotaion,-45~+45)、随机尺寸变换(random scale)来数据增强。2、对于固定大小的输入,先扩展到固定的长宽比,不改变长宽比进行裁剪,resize到固定尺寸。3、Adam算法、BatchNormalization、学习率先大一点,再减少。测试1、多尺度、翻转图片 进行关键点估计,再平均...

2019-06-09 20:54:34 4599

空空如也

空空如也

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

TA关注的人

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