圆月山庄资源网 Design By www.vgjia.com
如下所示:
#coding=gbk ''' GPU上面的环境变化太复杂,这里我直接给出在笔记本CPU上面的运行时间结果 由于方式3需要将tensor转换到GPU上面,这一过程很消耗时间,大概需要十秒,故而果断抛弃这样的做法 img (168, 300, 3) sub div in numpy,time 0.0110 sub div in torch.tensor,time 0.0070 sub div in torch.tensor with torchvision.transforms,time 0.0050 tensor1=tensor2 tensor2=tensor3 img (1079, 1349, 3) sub div in numpy,time 0.1899 sub div in torch.tensor,time 0.1469 sub div in torch.tensor with torchvision.transforms,time 0.1109 tensor1=tensor2 tensor2=tensor3 耗时最久的是numpy,其次是转换成torch.tensor,最快的是直接使用torchvision.transforms 我现在在GPU上面跑的程序GPU利用率特别低(大多数时间维持在2%左右,只有很少数的时间超过80%) 然后设置打印点调试程序时发现,getitem()输出一张图像的时间在0.1秒的数量级,这对于GPU而言是非常慢的 因为GPU计算速度很快,CPU加载图像和预处理图像的速度赶不上GPU的计算速度,就会导致显卡大量时间处于空闲状态 经过对于图像I/O部分代码的定位,发现是使用numpy减去图像均值除以方差这一操作浪费了太多时间,而且输入图像的分辨率越大, 所消耗的时间就会更多 原则上,图像预处理每个阶段的时间需要维持在0.01秒的数量级 所以, ''' import numpy as np import time import torch import torchvision.transforms as transforms import cv2 # img_path='/ssddata2/wyx/detection/ead_stage12/stage12_img/WL_00387.jpg' img_path='F:\\2\\00004.jpg' PIXEL_MEANS =(0.485, 0.456, 0.406) #RGB format mean and variances PIXEL_STDS = (0.229, 0.224, 0.225) #输入文件路径,输出的应该是转换成torch.tensor的标准形式 #方式一 在numpy中进行减去均值除以方差,最后转换成torch.tensor one_start=time.time() img=cv2.imread(img_path) img=img[:,:,::-1] img=img.astype(np.float32, copy=False) img/=255.0 img-=np.array(PIXEL_MEANS) img/=np.array(PIXEL_STDS) tensor1=torch.from_numpy(img.copy()) tensor1=tensor1.permute(2,0,1) one_end=time.time() print('sub div in numpy,time {:.4f}'.format(one_end-one_start)) del img #方式二 转换成torch.tensor,再减去均值除以方差 two_start=time.time() img=cv2.imread(img_path) img=img[:,:,::-1] print('img',img.shape,np.min(img),np.min(img)) tensor2=torch.from_numpy(img.copy()).float() tensor2/=255.0 tensor2-=torch.tensor(PIXEL_MEANS) tensor2/=torch.tensor(PIXEL_STDS) tensor2=tensor2.permute(2,0,1) two_end=time.time() print('sub div in torch.tensor,time {:.4f}'.format(two_end-two_start)) del img #方式三 转换成torch.tensor,再放到GPU上面,最后减去均值除以方差 # three_start=time.time() # img=cv2.imread(img_path) # img=img[:,:,::-1] # tensor3=torch.from_numpy(img.copy()).cuda().float() # tensor3-=torch.tensor(PIXEL_MEANS).cuda() # tensor3/=torch.tensor(PIXEL_STDS).cuda() # three_end=time.time() # print('sub div in torch.tensor on cuda,time {:.4f}'.format(three_end-three_start)) # del img #方式四 转换成torch.tensor,使用transform方法减去均值除以方差 four_start=time.time() img=cv2.imread(img_path) img=img[:,:,::-1] transform=transforms.Compose( [transforms.ToTensor(),transforms.Normalize(PIXEL_MEANS, PIXEL_STDS)] ) tensor4=transform(img.copy()) four_end=time.time() print('sub div in torch.tensor with torchvision.transforms,time {:.4f}'.format(four_end-four_start)) del img if torch.sum(tensor1-tensor2)<=1e-3: print('tensor1=tensor2') if torch.sum(tensor2-tensor4)==0: print('tensor2=tensor3') # if tensor3==tensor4: # print('tensor3=tensor4')
以上这篇pytorch 图像预处理之减去均值,除以方差的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年11月03日
2024年11月03日
- 明达年度发烧碟MasterSuperiorAudiophile2021[DSF]
- 英文DJ 《致命的温柔》24K德国HD金碟DTS 2CD[WAV+分轨][1.7G]
- 张学友1997《不老的传说》宝丽金首版 [WAV+CUE][971M]
- 张韶涵2024 《不负韶华》开盘母带[低速原抓WAV+CUE][1.1G]
- lol全球总决赛lcs三号种子是谁 S14全球总决赛lcs三号种子队伍介绍
- lol全球总决赛lck三号种子是谁 S14全球总决赛lck三号种子队伍
- 群星.2005-三里屯音乐之男孩女孩的情人节【太合麦田】【WAV+CUE】
- 崔健.2005-给你一点颜色【东西音乐】【WAV+CUE】
- 南台湾小姑娘.1998-心爱,等一下【大旗】【WAV+CUE】
- 【新世纪】群星-美丽人生(CestLaVie)(6CD)[WAV+CUE]
- ProteanQuartet-Tempusomniavincit(2024)[24-WAV]
- SirEdwardElgarconductsElgar[FLAC+CUE]
- 田震《20世纪中华歌坛名人百集珍藏版》[WAV+CUE][1G]
- BEYOND《大地》24K金蝶限量编号[低速原抓WAV+CUE][986M]
- 陈奕迅《准备中 SACD》[日本限量版] [WAV+CUE][1.2G]