Oblazinjenje je način dodajanja dodatnega prostora okoli slike. V PyTorchu modul »torchvision.transforms« zagotavlja transformacijo/metodo »Pad()« za oblaganje slike na vseh straneh. Uporabniki lahko nastavijo/uporabijo različne polnila za zgornjo, spodnjo, levo in desno stran slike. Ta metoda ustvari novo oblazinjeno sliko določene velikosti.
Ta članek bo prikazal metodo za oblaganje določene slike na vseh straneh v PyTorchu.
Kako obložiti določeno sliko na vseh straneh v PyTorchu?
Če želite obložiti določeno sliko na vseh straneh v PyTorchu, si oglejte navedene korake:
1. korak: naložite sliko v Google Colab
Najprej odprite Google Colab in kliknite spodaj označene ikone. Nato izberite določeno sliko iz računalnika in jo naložite:
Po tem bo slika naložena v Google Colab:
Tukaj smo naložili naslednjo sliko in uporabili bomo oblazinjenje na vseh straneh:
2. korak: uvozite potrebno knjižnico
Nato uvozite zahtevane knjižnice. Na primer, uvozili smo naslednje knjižnice:
uvozna svetilkaimport torchvision.transforms kot preoblikuje
iz slike uvoza PIL
Tukaj:
-
- “ uvozna svetilka ” uvozi knjižnico PyTorch.
- “ import torchvision.transforms as transforms ” uvozi transformatorski modul iz torchvisiona, ki se uporablja za predhodno obdelavo slikovnih podatkov, preden se podajo v nevronsko mrežo.
- “ iz slike uvoza PIL ” se uporablja za odpiranje in shranjevanje različnih formatov slikovnih datotek:
3. korak: preberite vhodno sliko
Nato preberite vhodno sliko iz računalnika. Tukaj beremo ' moja_img.jpg « in ga shranite v » input_img ” spremenljivka:
input_img = Image.open ( 'moja_img.jpg' )
4. korak: Izračunajte širino in višino vhodne slike
Nato izračunajte/dobite širino in višino vhodne slike:
notri , h = input_img.size
5. korak: Določite transformacijo
Zdaj definirajte transformacijo, da vhodno sliko obložite z vseh strani. Tukaj smo določili stran oblazinjenja ' petdeset «, ki bo uporabil enako oblazinjenje za vse strani slike, tj. levo, desno, zgoraj in spodaj:
transform = transformira.Pad ( petdeset )
6. korak: Uporabite pretvorbo na sliki
Nato uporabite zgornjo transformacijo na želeni vhodni sliki, da na njej uporabite oblazinjenje:
padded_img = transformacija ( input_img )
7. korak: Spremenite velikost slike na začetno dimenzijo
Nato spremenite velikost oblazinjene slike na njeno dejansko dimenzijo:
podložena_img = podložena_img.spreminjanje velikosti ( ( notri , h ) )
8. korak: Prikažite podloženo sliko
Na koncu si oglejte oblazinjeno sliko tako, da jo prikažete:
podložena_img
Zgornji izhod kaže, da je bila vhodna slika uspešno obložena z vseh strani.
Podobno lahko uporabniki določijo tudi druge velikosti oblazinjenja v ' Pad() ” za oblaganje slike z različnimi velikostmi oblazinjenja. Tukaj določamo levo/desno oblazinjenje »20« in zgornje/spodnje oblazinjenje »60«:
transform = transformira.Pad ( ( dvajset , 60 ) )
To bo uporabilo 20 enot oblazinjenja na levi in desni strani slike ter 60 enot oblazinjenja na vrhu in dnu slike:
Poleg tega lahko uporabniki določijo tudi različna oblazinjenja za levo, zgornjo, desno in spodnjo stran slike:
To bo uporabilo 20 enot oblazinjenja na levi strani, 40 enot oblazinjenja na vrhu, 60 enot oblazinjenja na desni in 80 enot oblazinjenja na dnu slike:
Primerjava
Primerjavo med originalno sliko in oblazinjenimi slikami različnih velikosti si lahko ogledate spodaj:
Izvirna slika
|
Oblazinjena slika (50)
|
Podložena slika (20, 60)
|
Podložena slika (20, 40, 60, 80)
|
Opomba : Do našega zvezka Google Colab lahko dostopate tukaj povezava .
To je bilo vse o oblazinjenju določene slike na vseh straneh v PyTorchu.
Zaključek
Če želite obložiti določeno sliko na vseh straneh v PyTorchu, najprej naložite želeno sliko v Google Colab. Nato uvozite potrebne knjižnice in preberite vhodno sliko. Po tem določite širino in višino vhodne slike. Nato definirajte transformacijo z metodo »Pad()« in jo uporabite na želeni vhodni sliki, da jo obložite z vseh strani. Na koncu spremenite velikost oblazinjene slike na prvotno dimenzijo in jo prikažite. Ta članek je pokazal metodo za oblaganje določene slike na vseh straneh v PyTorchu.