- 博客(62)
- 收藏
- 关注
原创 安装pycococreatortools
安装一个库,pycococreatortoolsgit地址:https://github.com/waspinator/pycococreatorpip install git+git://github.com/waspinator/pycococreator.git@0.2.0
2021-10-27 21:12:45
2280
原创 RPN架构及其PyTorch实现
RPN(Region Proposal Network)引言RPN架构RPNAnchor 生成Proposals 的选择loss 的计算RPN架构及其Pytorch实现基于RPN产生~20k个候选框~20k个候选框(1):RPN~20k个候选框(2):Fast RCNNRPN主体部分RPN部分的损失函数引言由于RPN架构RPNAnchor 的生成方法如何选择 anchor 做为 proposalsloss 的计算, 在计算 loss 之前需要从 anchor 中选择正负样本其实RPN本
2021-10-25 20:36:20
1489
1
原创 FPN架构及其Pytorch实现
FPN(Feature Pyramid Network)引言FPN架构FPN架构及其Pytorch实现引言一种兼顾准确率(检测小物体)和速度(开销)的卷积方式FPN架构上图左侧模型叫bottom-up,右侧模型叫top-down,特征金字塔网络(FPN)相当于先进行传统的bottom-up(自上而下)的特征卷积,然后FPN试图融合左侧特征图的相邻的特征图。横向的箭头叫横向连接(lateral connections),目的是因为高层的特征语义多,低层的特征语义少但位置信息多。左侧模型特征图大
2021-10-23 19:24:28
1259
1
原创 ResNet架构及其Pytorch实现
FCOS残差学习ResNet网络ResNet的Pytorch实现残差学习深度网络的退化问题至少说明深度网络不容易训练。但是我们考虑这样一个事实:现在你有一个浅层网络,你想通过向上堆积新层来建立深层网络,一个极端情况是这些增加的层什么也不学习,仅仅复制浅层网络的特征,即这样新层是恒等映射(Identity mapping)。在这种情况下,深层网络应该至少和浅层网络性能一样,也不应该出现退化现象。ResNet网络ResNet网络是参考了VGG19网络,在其基础上进行了修改,并通过短路机制加入了残差单
2021-10-22 21:02:43
442
原创 FCOS梳理(二)
FCOSfrom ./fcos_core/modeling/backbone/fpn.pyimport torchimport torch.nn.functional as Ffrom torch import nnclass FPN(nn.Module): """ 特征金字塔 Module that adds FPN on top of a list of feature maps. The feature maps are currently suppo
2021-10-17 20:06:44
88
原创 FCOS梳理(一)
ResNetfrom ./fcos_core/modeling/backbone/resnet.py"""下述为ResNet及大量变体(采用cfg参数)Example usage. Strings may be specified in the config file. model = ResNet( "StemWithFixedBatchNorm", "BottleneckWithFixedBatchNorm", "ResNet50Sta
2021-10-17 19:50:40
94
原创 BDD100KtoYOLOv5.txt格式(数据集转换脚本)
import jsonimport os#jsonFile = "./train/0000f77c-6257be58.json"def bdd2yolo5(categorys,jsonFile,writepath): strs="" f = open(jsonFile) info = json.load(f) #print(len(info)) #print(info["name"]) write = open(writepath + "%s.txt
2020-10-13 15:46:19
2618
16
原创 多项式拟合
import matplotlib.pyplot as pltimport numpy as npn_dots = 20x = np.linspace(0,1,n_dots)# print(x,end=" ")y = np.sqrt(x) + 0.2*np.random.rand(n_dots) - 0.1# print(y,end=" ")# 画出拟合多项式def plot_polynomial_fit(x,y,order): p = np.poly1d(np.polyfit
2020-06-14 21:44:35
739
原创 蒙特卡罗方法求圆周率
import matplotlib.pyplot as pltimport numpy as npn_dots = 10000x = np.random.random(n_dots)y = np.random.random(n_dots)distance = np.sqrt(x ** 2 + y ** 2)in_circle = distance[distance < 1]pi = 4 * float(len(in_circle)) / n_dotsprint(pi)3.149
2020-06-06 17:01:02
202
原创 多项式简单拟合
import matplotlib.pyplot as pltimport numpy as np# 预生成20个噪声点,拟采用5次多项式拟合参数,计6个多项式参数n_dots = 20n_order = 5x = np.linspace(0, 1, n_dots)y = np.sqrt(x) + 0.2*np.random.rand(n_dots)p = np.poly1d(np.polyfit(x, y, n_order))# 打印各多项式参数print(p.coeffs)t
2020-06-06 16:56:18
237
原创 随机漫步算法(全局最优化求解)
import matplotlib.pyplot as pltimport numpy as npn_person = 2000n_times = 500t = np.arange(n_times)steps = 2 * np.random.randint(2, size=(n_person, n_times)) - 1amount = np.cumsum(steps, axis=1)sd_amount = amount ** 2mean_sd_amount = sd_amount.m
2020-06-06 16:37:56
733
原创 埃氏筛法生成质数序列
import matplotlib.pyplot as pltimport numpy as np# np.arange()函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是100,默认步长为1a = np.arange(1, 101)# 埃拉托斯特尼筛法,必须把不大于根号n的所有素数的倍数剔除,剩下的就是素数。n_max = int(np.sqrt(len(a)))is_prime = np.ones(len(a), dtype=bool)is_prime
2020-06-06 16:26:24
152
原创 Matplotlib绘制正弦曲线
import numpy as npimport matplotlib.pyplot as plt# 在 [0, 4*PI] 之间取 100 个点x = np.linspace(0, 4 * np.pi, num=50)# 计算这 50个点的正弦值,并保存在变量 yy = np.sin(x)# 画出 x, y 即是我们的正弦曲线plt.plot(x, y)...
2020-06-06 16:23:21
1095
原创 最新!!!Ubuntu16.04安装ROS Kinetic详细过程
Read from the page!!!(http://wiki.ros.org/cn/kinetic/Installation/Ubuntu)1.添加 sources.list设置你的电脑可以从 packages.ros.org 接收软件.sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc...
2020-02-21 22:01:14
1859
原创 Python里argparse模块
1. 定义:argparse是python标准库里面用来处理命令行参数的库2. 命令行参数分为位置参数和选项参数:位置参数就是程序根据该参数出现的位置来确定的如:[root@kali /]# ls root/ #其中root/是位置参数选项参数是应用程序已经提前定义好的参数,不是随意指定的如:[root@kali /]# ls -l # -l 就是ls命令里的一个选项参数...
2019-12-01 19:41:16
204
原创 Python:面对对象编程基础(1)实例2
class Home: def __init__(self,area,info,addr): self.area = area self.info = info self.addr = addr self.left_area = area self.contain_items = [] def __s...
2019-07-26 10:50:33
99
原创 Python:面对对象编程基础(1)实例1
class SweetPotato: def __init__(self): self.cookedString = "生的" self.cookedLevel = 0 self.condiments = [] def __str__(self): return "目前地瓜状态是:%s(%d),添加的作料有%s"% ...
2019-07-26 10:48:56
117
原创 Python:面对对象编程基础(1)
class Cat: def __init__(self,name,age): self.name = name self.age = age def __str__(self): return "%s的年龄是:%d "%(self.name,self.age) def intro(self): print...
2019-07-26 10:47:20
94
原创 Python里的easydict模块
1.1 常规字典调用方法d = {'foo':3, 'bar':{'x':1, 'y':2}}print(d['foo']) # 访问字典的元素print(d['bar']['y']) # 访问字典中的元素需要使用二维数组# print(d.foo) 这样写会出错哦!>> 3>> 21.2 调用easydict模块简化字典调用from eas...
2019-07-22 09:31:32
268
原创 OpenCV入门(27):文字图片绘制
1.文字绘制import cv2import numpy as npimg = cv2.imread('./image0.jpg',1)font = cv2.FONT_HERSHEY_SIMPLEXcv2.rectangle(img,(200,100),(500,400),(0,255,0),3)# 文字绘制 1.目标图片 2.文字内容 3.坐标 4、5.字体 6.颜色 ...
2019-07-17 15:42:57
246
原创 OpenCV入门(26):矩形、圆形、扇形及任意多边形的绘制
import cv2import numpy as npnewImageInfo = (500,500,3)dst = np.zeros(newImageInfo,np.uint8)# 绘制矩形 1.目标图片 2.左上角 3.右下角 4.颜色 5.内容是否填充(-1:填充; 》0的值:线条宽度)cv2.rectangle(dst,(50,100),(200,300),(25...
2019-07-17 14:58:44
4353
原创 OpenCV入门(25):线段绘制
import cv2import numpy as npnewImageInfo = (500,500,3)dst = np.zeros(newImageInfo,np.uint8)# 绘制line 1.目标图片数据 2.起点 3.终点 4.color 5.线条宽度 6.线条类型(防锯齿化等等)cv2.line(dst,(100,100),(400,400),(0,0,2...
2019-07-17 14:30:43
376
原创 OpenCV入门(23):SVM实例(男、女生 身高和体重的分类 训练、预测)
# SVM 本质: 寻求一个最优的超平面完成分类# SVM 核心: 若干直线或者曲线组合import cv2import numpy as npimport matplotlib.pyplot as plt# 1.准备数据datarand1 = np.array([[155,48],[159,50],[164,53],[168,56],[172,60]])rand2 = np.a...
2019-07-15 14:25:13
926
原创 OpenCV入门(21):图片(帧)合成视频
import cv2img = cv2.imread('image1.jpg',1)imgInfo = img.shapesize = (imgInfo[1],imgInfo[0])print(size)videoWrite = cv2.VideoWriter('2.mp4',-1,5,size)# 写入对象:1.fileName 2.-1:表示选择合适的编码器 3.视频的帧率 ...
2019-07-12 14:28:00
1689
原创 OpenCV入门(20):视频分解图片(帧)
# 1.加载视频 2.读取信息 3.解码 4.以图片形式写入import cv2cap = cv2.VideoCapture("./1.mp4")isOpened = cap.isOpened# 判断视频是否打开成功print(isOpened)fps = cap.get(cv2.CAP_PROP_FPS)# 帧率width = int(cap.get(cv2.CAP_PRO...
2019-07-12 14:06:25
508
原创 OpenCV入门(19):图片的油画特效
import cv2import numpy as npimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeheight = imgInfo[0]width = imgInfo[1]# 油画特效:1.gray 2.分图片为若干个小方块:例:8*8 3.将0-255划分为几个等级,并映射到...
2019-07-12 11:01:04
947
原创 OpenCV入门(18):图片的颜色映射
(蓝色增强效果)import cv2import numpy as npimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeheight = imgInfo[0]width = imgInfo[1]# 颜色映射公式: “实现蓝色风格”# b = b*1.5 增强 ;g = g*1.3 增...
2019-07-12 10:37:50
393
原创 OpenCV入门(16):图片的边缘检测
1. OpenCV API : GaussianBlur ; Canny边缘检测算法: 1. gray 2. 高斯滤波 3. cannyimport cv2import numpy as npimport randomimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeheight = i...
2019-07-11 17:20:02
132
原创 OpenCV入门(15):图片的(简单)融合
# dst = src1*a + src2*(1-a)import cv2import numpy as npimg0 = cv2.imread("./mm1.jpg",1)img1 = cv2.imread("./mm2.jpg",1)cv2.imshow("src",img)imgInfo = img0.shapeheight = imgInfo[0]width = imgI...
2019-07-11 15:55:37
206
原创 OpenCV入门(14):图片的毛玻璃效果
import cv2import numpy as npimport randomimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeprint(imgInfo)height = imgInfo[0]width = imgInfo[1]dst = np.zeros((height,wid...
2019-07-11 15:30:44
238
原创 OpenCV入门(13):图片的马赛克效果
import cv2import numpy as npimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeprint(imgInfo)height = imgInfo[0]width = imgInfo[1]for m in range(100,300): for n in ra...
2019-07-11 14:24:44
288
原创 OpenCV入门(12):颜色反转
1.灰度图片的颜色反转import cv2import numpy as npimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeprint(imgInfo)height = imgInfo[0]width = imgInfo[1]gray = cv2.cvtColor(img,cv2....
2019-07-11 14:09:34
778
原创 OpenCV入门(11):图像的灰度处理
# 方法一:imreadimport cv2img0 = cv2.imread("./mm1.jpg",0)img1 = cv2.imread("./mm1.jpg",1)print(img0.shape)print(img1.shape)cv2.imshow("gray",img0)cv2.waitKey(0)>> (547,730) (547,730,3)...
2019-07-11 10:40:03
172
原创 OpenCV入门(8):图片缩放(缩放矩阵法)
import cv2import numpy as npimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeprint(imgInfo)height = imgInfo[0]width = imgInfo[1]# 利用缩放矩阵,与之前讲述移位矩阵时类似同样拆分成两个矩阵,原理一样;改变矩阵...
2019-07-10 16:45:19
1158
原创 OpenCV入门(7):图片镜像
import cv2import numpy as npimg = cv2.imread("./mm1.jpg",1)cv2.imshow("src",img)imgInfo = img.shapeprint(imgInfo)height = imgInfo[0]width = imgInfo[1]deep = imgInfo[2]newImgInfo = (height*2...
2019-07-10 16:12:57
407
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人