numpy
文章平均质量分 55
薛定谔的智能
这个作者很懒,什么都没留下…
展开
-
一些数据增强手段
1.mixupdef mixup_data(x, y, alpha=1.0, use_cuda=True): '''Compute the mixup data. Return mixed inputs, pairs of targets, and lambda''' if alpha > 0.: lam = np.random.beta(alpha, alpha) else: lam = 1. batch_size = x.si原创 2021-07-15 11:51:20 · 199 阅读 · 0 评论 -
Atss generate_anchors python+c++写法
图片借鉴了https://blog.csdn.net/sinat_33486980/article/details/81099093,如有侵权,联系我删除首先产生16x16大小的anchor,在按照1:2,1:1,2:1三种比例进行变换。每一个在进行三种比例的变换,基本可以覆盖掉原图要检测目标的大小了# ----------------------------------...原创 2019-01-24 14:47:38 · 539 阅读 · 0 评论 -
距离与相似度计算
一.余弦相似度from math import *def square_rooted(x): return round(sqrt(sum([a*a for a in x])), 3)def cosine_similarity(x,y): numerator = sum(a*b for a, b in zip(x,y)) denominator = square_rooted(x)*square_rooted(y) return round(numerator/fl原创 2020-11-12 16:13:41 · 410 阅读 · 0 评论 -
收缩分割多边形(PSENet中有使用)
目的:为了解决密集文本的分割问题代码:# -*- coding=utf-8 -*-import osimport cv2import Polygon as plgimport pyclipperimport numpy as npdef dist(a, b): return np.sqrt(np.sum((a - b) ** 2))#计算周长def perimeter(bbox): peri = 0.0 for i in range(bbox.shap原创 2020-06-05 14:45:33 · 873 阅读 · 4 评论 -
生成高斯热力图(craft中有使用)+2d heatmap+3d heatmap
from math import expimport numpy as npimport cv2import osclass GaussianTransformer(object): def __init__(self, imgSize=512, region_threshold=0.4, affinity_threshold=0.2): distanceRatio = 3.34 scaledGaussian = la.原创 2020-06-04 10:26:21 · 5243 阅读 · 4 评论 -
L1/L2/smooth_l1_loss/center_loss+Dice Loss+focal loss+各种IOU loss+kl散度
函数:def smooth_l1_loss(y_true, y_pred): """Implements Smooth-L1 loss. y_true and y_pred are typically: [N, 4], but could be any shape. """ diff = tf.abs(y_true - y_pred) less_th...原创 2018-10-16 16:58:15 · 8828 阅读 · 0 评论 -
计算polygon面积和判断顺逆时针方向的方法
一.利用shapely求polygon面积 import shapely from shapely.geometry import Polygon, MultiPoint # 多边形 # box1 = [2, 0, 4, 2, 2, 4, 0, 2, 0, 0] box1 = [2, 0, 4, 2, 2, 4, 0, 2, 2, 2] poly_box1...原创 2019-11-26 17:28:31 · 3431 阅读 · 0 评论 -
“横平竖直”进行连线+将相邻框进行合并
一.横平竖直”进行连线解法1.将一些坐标点按照x相等,y相等连起来解法1.根据 x或y总有一个相等的,用np.sum来找出和为1的点,然后在连起来,存在重复连线的问题.import numpy as np coord = np.array([[10, 60], [10, 20], [20,...原创 2019-07-28 16:37:47 · 518 阅读 · 5 评论 -
np实现线性回归
import numpy as npimport matplotlib.pyplot as pltdef load_data(path): data=np.loadtxt(path,delimiter=',',skiprows=1) #print(data.shape) #print(data) return datadef get_gradient(t...原创 2019-01-02 22:02:01 · 683 阅读 · 0 评论 -
找到椭圆的长轴点与短轴点
#coding:utf-8import cv2import numpy as npimport imutilsimport matplotlib.pyplot as pltimport osfrom multiprocessing import Pool,Processimport timedef get_dis(A,B): BT = np.transpose(B) ...原创 2018-12-28 11:03:06 · 5888 阅读 · 2 评论 -
可视化语义分割结果
def test_visul_label(): path='./train_annot' output='./train_annot_out' if not os.path.exists(output): os.mkdir(output) label_path=[os.path.join(path,i) for i in os.listdir(pa...原创 2018-12-21 13:20:27 · 5803 阅读 · 2 评论 -
语义分割中的类别不平衡的权重计算
这是5幅图,加上背景共5类。 可以参考这篇文章https://blog.csdn.net/u012426298/article/details/81232386对于一个多类别图片数据库,每个类别都会有一个class frequency, 该类别像素数目除以数据库总像素数目, 求出所有class frequency 的median 值,除以该类别对应的frequency 得到wei...原创 2018-12-26 15:56:32 · 8250 阅读 · 13 评论 -
利用numpy生成各种波
一,生成矩形波矩形波的傅里叶级数x=np.linspace(-np.pi,np.pi,201)k=np.arange(1,99)k=2*k-1y=np.zeros_like(x)for i in range(len(x)): y[i]=(4/np.pi)*np.sum(np.sin(k*x[i])/k)# print(t)# print(f)plt.plot(x...原创 2018-12-02 20:33:56 · 5324 阅读 · 7 评论 -
查找图片中的某一点的索引(不用for循环),制作语义分割多分类标签
a=np.array([[[0,0,128], [0,128,128]]])red=np.array([0,0,128])print(a[:,:,0])print(a[:, :, 1])print(a[:, :, 2])print(a[:,:,0]==red[0])print(a[:, :, 1] == red[1])print(a[:, :, 2] =...原创 2018-11-29 13:25:39 · 363 阅读 · 1 评论 -
利用混淆矩阵查看每一类预测结果+miou计算
混淆矩阵的示意图如下:import numpy as npcm=np.array([[4,0,0,0], [0,1,0,0], [0, 0, 2, 0], [0, 1, 3, 0]])plt.figure()plt.grid(False)plt.imshow(cm, cmap='jet')plt.col...原创 2018-11-29 11:48:44 · 3876 阅读 · 0 评论 -
正常矩形计算IOU与与NMS,多边形计算IOU
一.计算IOU人工修正后的每一个框与算法输出的所有框去计算IOU,取出IOU大于0.9的算法输出框def compute_IOU(algrim_bboxs,fix_bboxs): # print('algrim_bboxs:', algrim_bboxs) # print('fix_bboxs:', fix_bboxs) for i, fix_bbox in en...原创 2018-10-16 16:20:46 · 1956 阅读 · 0 评论 -
实现两个点集的欧式距离和cos距离和索引值寻找(含有两种解法,for循环和矩阵操作)
一,直接for循环两个点集points1,points2,用dist来存储距离points1=np.array([[1,2],[3,4]])points2 = np.array([[5, 6],[7,8]])dist = np.zeros(shape=[points1.shape[0],points2.shape[0]])for i in range(points1.shape[...原创 2018-10-13 13:43:03 · 2120 阅读 · 2 评论 -
交叉熵
import numpy as npimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Dfig=plt.figure()ax=Axes3D(fig)X=np.linspace(0.01,0.99,101)Y=np.linspace(0.01,0.99,101)X,Y=np.meshgrid(X,...原创 2018-10-01 23:08:13 · 891 阅读 · 0 评论 -
numpy基础知识点
一,np.squeeze一,np.squeeze"""np.squeeze 删除单维度的条 对多维度无效"""import numpy as npa=np.array([[1,2],[3,4],[4,5]])print(a)print(a.shape)b=np.squeeze(a)print(b)c=a.reshape(1,6,1)print(c)print...原创 2018-08-01 22:36:34 · 2428 阅读 · 2 评论