最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pytorch中圖像的數(shù)據(jù)格式實(shí)例

 更新時(shí)間:2020年02月11日 14:20:17   作者:gaishi_hero  
今天小編就為大家分享一篇pytorch中圖像的數(shù)據(jù)格式實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

計(jì)算機(jī)視覺(jué)方面朋友都需要跟圖像打交道,在pytorch中圖像與我們平時(shí)在matlab中見(jiàn)到的圖像數(shù)據(jù)格式有所不同。matlab中我們通常使用函數(shù)imread()來(lái)輕松地讀入一張圖像,我們?cè)谧兞靠臻g中可看到數(shù)據(jù)的存儲(chǔ)方式是H x W x C的順序(其中H、W、C分別表示圖像的高、寬和通道數(shù),通道數(shù)一般為RGB三通道),另外,其中的每一個(gè)數(shù)據(jù)都是[0,255]的整數(shù)。

在使用pytorch的時(shí)候,我們通常要使用pytorch中torchvision包下面的datasets模塊和transforms模塊。而通常情況下在我們使用了這兩個(gè)模塊之后,所處理的圖像數(shù)據(jù)格式已經(jīng)不是我們所熟知的格式了。

下面按照代碼來(lái)進(jìn)行講解:

#導(dǎo)入需要的包和模塊
import torch
from torchvision import datasets, transforms
import os
 
#transforms指明了需要對(duì)原始圖像做何種變換
data_transforms = transforms.Compose([
    transforms.RandomResizedCrop(224),
    transforms.RandomHorizontalFlip(),
    transforms.ToTensor(),
    transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
  ])
 
#指明了圖像存放的位置;里面可能有好幾個(gè)文件夾,分別存放不同種類的圖像
data_dir = 'original_data'
image_dataset = datasets.ImageFolder(data_dir, data_transforms)
dataloader = torch.utils.data.DataLoader(image_dataset, batch_size=4, shuffle=True, num_workers=4)

代碼中首先使用datasets模塊讀取圖像數(shù)據(jù),輸出的圖像類型為PILImage,并且圖像中的每一個(gè)數(shù)據(jù)大小范圍已經(jīng)不再是[0,255],而是[0,1]。datasets模塊下有好幾個(gè)讀取圖像的類,比如CIFAR10、MNIST等能夠直接獲取標(biāo)準(zhǔn)數(shù)據(jù)庫(kù);而我們代碼中所使用的類是ImageFolder,它能夠讀取本地存放的圖像。其中需要指定圖像所在文件路徑和需要對(duì)數(shù)據(jù)進(jìn)行的變換。

從上面的data_transforms變量中我們能夠看出進(jìn)行了多種變換,而Compose就是將多種變換組合起來(lái)的方法。data_transforms中一共包含了四個(gè)變換,前兩個(gè)是對(duì)PILImage進(jìn)行的,分別對(duì)其進(jìn)行隨機(jī)大?。J(rèn)原始圖像大小的0.08-1.0)和隨機(jī)寬高比(默認(rèn)原始圖像寬高比的3/4-4/3)的裁剪,之后resize到指定大小224;以及對(duì)原始圖像進(jìn)行隨機(jī)(默認(rèn)0.5概率)的水平翻轉(zhuǎn)。

第三個(gè)transforms.ToTensor()的變換操作是關(guān)鍵一步,它將PILImage轉(zhuǎn)變?yōu)閠orch.FloatTensor的數(shù)據(jù)形式,這種數(shù)據(jù)形式一定是C x H x W的圖像格式加上[0,1]的大小范圍。它將顏色通道這一維從第三維變換到了第一維。

后面的Normalize變換是對(duì)tensor這種數(shù)據(jù)格式進(jìn)行的,它的操作是用給定的均值和標(biāo)準(zhǔn)差分別對(duì)每個(gè)通道的數(shù)據(jù)進(jìn)行正則化。具體來(lái)說(shuō),給定均值(M1,...,Mn),給定標(biāo)準(zhǔn)差(S1,..,Sn),其中n是通道數(shù)(一般是3),對(duì)每個(gè)通道進(jìn)行如下操作:

output[channel] = (input[channel] - mean[channel]) / std[channel]

經(jīng)過(guò)上面一系列的轉(zhuǎn)換之后,我們可以得出的結(jié)論是,圖像的數(shù)據(jù)格式首先在維度的排序上發(fā)生了改變,其次數(shù)據(jù)的范圍也發(fā)生了改變。

以上這篇pytorch中圖像的數(shù)據(jù)格式實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實(shí)現(xiàn)手機(jī)通訊錄搜索功能

    python實(shí)現(xiàn)手機(jī)通訊錄搜索功能

    這篇文章主要介紹了python模仿手機(jī)通訊錄搜索功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Python 批量下載陰陽(yáng)師網(wǎng)站壁紙

    Python 批量下載陰陽(yáng)師網(wǎng)站壁紙

    學(xué)習(xí)要始于興趣,自己學(xué)習(xí)python的一大初衷是希望能用于寫(xiě)一些簡(jiǎn)單的游戲腳本,能服務(wù)于生活。所以決定試著直接從爬取我最愛(ài)玩的陰陽(yáng)師網(wǎng)站的一些壁紙開(kāi)始
    2021-05-05
  • Python基于Opencv識(shí)別兩張相似圖片

    Python基于Opencv識(shí)別兩張相似圖片

    這篇文章主要介紹了Python基于Opencv識(shí)別兩張相似圖片的步驟,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04
  • Python高級(jí)用法總結(jié)

    Python高級(jí)用法總結(jié)

    Python很棒,它有很多高級(jí)用法值得細(xì)細(xì)思索,學(xué)習(xí)使用。本文將根據(jù)日常使用,總結(jié)介紹Python的一組高級(jí)特性,包括:列表推導(dǎo)式、迭代器和生成器、裝飾器
    2018-05-05
  • Python3利用Qt5實(shí)現(xiàn)簡(jiǎn)易的五子棋游戲

    Python3利用Qt5實(shí)現(xiàn)簡(jiǎn)易的五子棋游戲

    這篇文章主要為大家詳細(xì)介紹了Python3利用Qt5實(shí)現(xiàn)簡(jiǎn)易的五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Python利用psutil庫(kù)進(jìn)行監(jiān)控進(jìn)程和資源

    Python利用psutil庫(kù)進(jìn)行監(jiān)控進(jìn)程和資源

    psutil是Python系統(tǒng)和進(jìn)程工具庫(kù),它提供了一種跨平臺(tái)的方式來(lái)獲取系統(tǒng)信息、管理系統(tǒng)進(jìn)程、監(jiān)控系統(tǒng)性能、操作系統(tǒng)資源等,下面就跟隨小編一起來(lái)學(xué)習(xí)psutil庫(kù)的具體應(yīng)用吧
    2024-01-01
  • Django中使用Json返回?cái)?shù)據(jù)的實(shí)現(xiàn)方法

    Django中使用Json返回?cái)?shù)據(jù)的實(shí)現(xiàn)方法

    這篇文章主要介紹了Django中使用Json返回?cái)?shù)據(jù)的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Python參數(shù)的傳遞幾種情況實(shí)例詳解

    Python參數(shù)的傳遞幾種情況實(shí)例詳解

    這篇文章主要給大家介紹了關(guān)于Python參數(shù)的傳遞的相關(guān)資料,在Python中傳遞參數(shù)指的是函數(shù)或方法中的參數(shù)傳輸方式,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-09-09
  • 使用Gitee自動(dòng)化部署python腳本的詳細(xì)過(guò)程

    使用Gitee自動(dòng)化部署python腳本的詳細(xì)過(guò)程

    小編最近在自學(xué)python,在學(xué)習(xí)過(guò)程中有好多意向不到的收獲,真的很開(kāi)心,今天重點(diǎn)給大家分享使用Gitee自動(dòng)化部署python腳本的詳細(xì)過(guò)程,包括安裝環(huán)境搭建及一些注意事項(xiàng),感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • python使用scrapy解析js示例

    python使用scrapy解析js示例

    這篇文章主要介紹了python使用scrapy解析js的示例,大家參考使用吧
    2014-01-01

最新評(píng)論

松原市| 龙江县| 顺义区| 仁寿县| 霍城县| 西充县| 阿坝县| 灵璧县| 桑日县| 汕头市| 科尔| 松原市| 宜君县| 安顺市| 南宫市| 郓城县| 牡丹江市| 北碚区| 信宜市| 社会| 姜堰市| 开远市| 隆回县| 大英县| 监利县| 潜江市| 林西县| 阳高县| 周至县| 九江县| 叶城县| 新沂市| 慈利县| 乐安县| 九江市| 栖霞市| 册亨县| 沂水县| 越西县| 潼关县| 营山县|