(自用)目标检测的一些方法

一、Numpy模块

import numpy as np

np.arange()

生成一维数据

numpy.arange(start, stop, step, dtype=None)

          start:开始数字,默认为0

          stop:停止数字(不输出该值),必填

          step:步长,默认为1

np.reshape()

改变数组或矩阵的形状

numpy.reshape(array,(m,n),order)

          array:要改变形状的数组或矩阵

          (m,n):修改为m×n形状

          order:设置为行优先还是列优先,order=‘c’为行优先,order=‘f’为列优先,默认为前者

np.transpose()

对输入的张量序列进行维度交换(对于numpy可以多个维度)

output=torch.transpose(input, dim0, dim1) 

output=input.transpose(dim0, dim1) 

np.expand_dims()

在某一数组的某一维度增加1维

import numpy as np

b=np.expand_dims(a, axis=0)

#在数组a的第0个位置增加一个维度
#eg:a形状为(2,2) 则b的形状为(1,2,2)

二、PIL模块

1.Image部分

from PIL import Image

Image.fromarray()

将数组转换为图像

Image.fromarray(array,mode='L')

          array:二维numpy数组

          mode:表示输出图像的模式,常用的模式有 “L” (灰度图), “RGB” (彩色图), “CMYK”

三、Pytorch模块

import torch

torch.arange()

torch.reshape()

torch.max()

获取最大值

torch.max(input, dim, max=None, max_indices=None,keepdim=False)

          input:进行max操作的Tensor变量

          dim:需要查找最大值的维度

          max:结果张量,用于存储查找到的最大值

          max_indices:结果张量,用于存储查找到最大值所处的索引

          keepdim=False:返回值与原Tensor的size是否保持一致

torch.cat()

在指定维度上对输入的张量序列进行拼接

outputs = torch.cat(inputs, dim)  

          input:待连接的张量序列,可以是任意相同Tensor类型的序列

          dim:沿此维度连接张量序列,必须在0到 len(inputs[0]) 之间

torch.transpose()

对输入的张量序列进行维度交换(对于torch只能两个维度)

output=torch.transpose(input, dim0, dim1) 

output=input.transpose(dim0, dim1) 

torch.permute()

对输入的张量序列进行任意维度交换

output=input.transpose(dims) 

.contiguous().view()

对进行转置后的张量先进行存储连续,再重新定义其形状

output=input.contiguous().view()

四、String模块

.replace() 

可以替换字符串中的内容,不改变原字符串,返回一个新的字符串

字符串名称.replace( old, new, count )

          old:需要被替换的字符串内容

          new:替换后的字符串内容

          count:替换次数,默认全部替换,为负数时全部替换

.lower()

全显示为小写字母

.endswith()

用于判断文件名后缀

五、osgeo.gdal模块

from osgeo import gdal

from osgeo import gdal

dataset = gdal.Open(img)

# 获取影像的宽度、高度和波段数
width = dataset.RasterXSize
height = dataset.RasterYSize
bands = dataset.RasterCount

# 返回第一波段的数据对象
band = dataset.GetRasterBand(1)

# 以band上坐标为(100,100)的点为原点
# 读取5×5大小的数组数据 并放缩至10×10的大小
print(band.ReadAsArray(100,100,5,5,10,10))

六、别的一些方法

preprocess_input()

将像素值调整到(0,1)之间,即 像素值 / 255

  • 19
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值