Hur stoppar man en specifik bild på alla sidor i PyTorch?

Hur Stoppar Man En Specifik Bild Pa Alla Sidor I Pytorch



Utfyllnad är ett sätt att lägga till extra utrymme runt en bild. I PyTorch tillhandahåller modulen 'torchvision.transforms' en 'Pad()'-transform/metod för att fylla en bild på alla sidor. Användare kan ställa in/applicera olika stoppningar för toppen, botten, vänster och höger sida av bilden. Denna metod producerar en ny vadderad bild av en specificerad storlek.

Den här artikeln kommer att demonstrera metoden för att fylla en specifik bild på alla sidor i PyTorch.







Hur stoppar man en specifik bild på alla sidor i PyTorch?

För att fylla en specifik bild på alla sidor i PyTorch, kolla in de medföljande stegen:



Steg 1: Ladda upp en bild till Google Colab



Öppna först Google Colab och klicka på de markerade ikonerna nedan. Välj sedan den specifika bilden från datorn och ladda upp den:






När du gör det kommer bilden att laddas upp till Google Colab:


Här har vi laddat upp följande bild och vi kommer att applicera stoppning på alla sidor:




Steg 2: Importera nödvändigt bibliotek

Importera sedan de nödvändiga biblioteken. Till exempel har vi importerat följande bibliotek:

importera ficklampa
importera torchvision.transforms som omvandlar
från PIL import bild


Här:

    • ' importera ficklampa ” importerar PyTorch-biblioteket.
    • ' import torchvision.transformers som transformer ” importerar transformationsmodulen från torchvision som används för att förbehandla bilddata innan den matas in i ett neuralt nätverk.
    • ' från PIL import bild ” används för att öppna och spara olika bildfilformat:


Steg 3: Läs ingångsbilden

Efter det läser du ingångsbilden från datorn. Här läser vi ' my_img.jpg ' och lagra den i ' input_img ' variabel:

input_img = Bild.öppen ( 'my_img.jpg' )



Steg 4: Beräkna ingångsbildens bredd och höjd

Beräkna/hämta sedan bredden och höjden på inmatningsbilden:

I , h = input_img.size



Steg 5: Definiera en transformation

Definiera nu en transformation för att fylla på inmatningsbilden på alla sidor. Här har vi specificerat vadderingssidan ' femtio ” som kommer att tillämpa samma utfyllnad på alla sidor av bilden, dvs. vänster, höger, upptill och nedtill:

transform = transforms.Pad ( femtio )



Steg 6: Använd Transform på bild

Applicera sedan transformationen ovan på den önskade inmatningsbilden för att applicera utfyllnad på den:

padded_img = transform ( input_img )



Steg 7: Ändra storlek på bilden till den ursprungliga dimensionen

Efter det ändrar du storleken på den vadderade bilden till dess faktiska dimension:

padded_img = padded_img.resize ( ( I , h ) )



Steg 8: Visa den vadderade bilden

Se slutligen den vadderade bilden genom att visa den:

padded_img



Ovanstående utdata visar att ingångsbilden har blivit utfylld på alla sidor.

På samma sätt kan användare också ange andra stoppningsstorlekar i ' Vaddera() ” metod för att fylla bilden med olika utfyllnadsstorlekar. Här anger vi vänster/höger stoppning '20' och topp/botten stoppning '60':

transform = transforms.Pad ( ( tjugo , 60 ) )



Detta kommer att tillämpa 20 enheter utfyllnad till vänster och höger sida av bilden och 60 enheter utfyllnad på toppen och botten av bilden:


Dessutom kan användare också ange olika utfyllnad för bildens vänstra, övre, högra och nedre sida:

transform = transforms.Pad ( ( tjugo , 40 , 60 , 80 ) )



Detta kommer att tillämpa 20 enheter stoppning på vänster sida, 40 enheter stoppning på toppen, 60 enheter stoppning till höger och 80 enheter stoppning längst ner på bilden:

Jämförelse

Jämförelsen mellan originalbild och vadderade bilder med olika storlekar kan ses nedan:

Originalbild

Vadderad bild (50)

Vadderad bild (20, 60)

Vadderad bild (20, 40, 60, 80)

Notera : Du kan komma åt vår Google Colab Notebook här länk .

Det handlade om att fylla en specifik bild på alla sidor i PyTorch.

Slutsats

För att fylla en specifik bild på alla sidor i PyTorch, ladda först upp den önskade bilden till Google Colab. Importera sedan de nödvändiga biblioteken och läs inmatningsbilden. Efter det avslutar du bredden och höjden på inmatningsbilden. Definiera sedan en transformation med metoden 'Pad()' och tillämpa den på den önskade inmatningsbilden för att fylla den på alla sidor. Ändra slutligen storleken på den vadderade bilden till dess ursprungliga dimension och visa den. Den här artikeln har demonstrerat metoden för att fylla en specifik bild på alla sidor i PyTorch.