Paano Mag-pad ng Tiyak na Larawan sa Lahat ng Gilid sa PyTorch?

Paano Mag Pad Ng Tiyak Na Larawan Sa Lahat Ng Gilid Sa Pytorch



Ang padding ay isang paraan ng pagdaragdag ng dagdag na espasyo sa paligid ng isang larawan. Sa PyTorch, ang module na 'torchvision.transforms' ay nagbibigay ng isang 'Pad()' transform/paraan upang i-pad ang isang imahe sa lahat ng panig. Maaaring magtakda/maglapat ang mga user ng iba't ibang padding para sa itaas, ibaba, kaliwa, at kanang bahagi ng larawan. Ang pamamaraang ito ay gumagawa ng isang bagong padded na imahe ng isang tinukoy na laki.

Ipapakita ng artikulong ito ang paraan upang mag-pad ng isang partikular na larawan sa lahat ng panig sa PyTorch.







Paano Mag-pad ng Tiyak na Larawan sa Lahat ng Gilid sa PyTorch?

Upang maglagay ng isang partikular na larawan sa lahat ng panig sa PyTorch, tingnan ang ibinigay na mga hakbang:



Hakbang 1: Mag-upload ng Larawan sa Google Colab



Una, buksan ang Google Colab at mag-click sa mga icon na naka-highlight sa ibaba. Pagkatapos, piliin ang partikular na larawan mula sa computer at i-upload ito:






Sa paggawa nito, ang larawan ay ia-upload sa Google Colab:


Dito, na-upload namin ang sumusunod na larawan at ilalapat namin ang padding sa lahat ng panig nito:




Hakbang 2: Mag-import ng Kinakailangang Library

Susunod, i-import ang mga kinakailangang aklatan. Halimbawa, na-import namin ang mga sumusunod na aklatan:

import na tanglaw
import torchvision.transforms bilang nagbabago
mula sa PIL import Image


dito:

    • import na tanglaw ” nag-import ng PyTorch library.
    • import torchvision.transforms bilang transforms ” ini-import ang transforms module mula sa torchvision na ginagamit upang iproseso ang data ng imahe bago ito i-feed sa isang neural network.
    • mula sa PIL import Image ' ay ginagamit upang buksan at i-save ang iba't ibang mga format ng file ng imahe:


Hakbang 3: Basahin ang Input na Larawan

Pagkatapos nito, basahin ang input na imahe mula sa computer. Dito, binabasa natin ang ' my_img.jpg 'at iniimbak ito sa' input_img ” variable:

input_img = Imahe.bukas ( 'my_img.jpg' )



Hakbang 4: I-compute ang Lapad at Taas ng Input na Larawan

Susunod, kalkulahin/kunin ang lapad at taas ng input na imahe:

Sa , h = input_img.size



Hakbang 5: Tukuyin ang isang Transform

Ngayon, tukuyin ang isang pagbabago upang pad ang input na imahe sa lahat ng panig. Dito, tinukoy namin ang gilid ng padding ' limampu ” na maglalapat ng parehong padding sa lahat ng panig ng larawan i.e., kaliwa, kanan, itaas, at ibaba:

pagbabago = transforms.Pad ( limampu )



Hakbang 6: Ilapat ang Transform sa Larawan

Pagkatapos, ilapat ang pagbabago sa itaas sa nais na imahe ng pag-input upang ilapat ang padding dito:

padded_img = pagbabagong-anyo ( input_img )



Hakbang 7: Baguhin ang laki ng Larawan sa Inisyal na Dimensyon

Pagkatapos nito, i-resize ang padded na imahe sa aktwal nitong dimensyon:

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



Hakbang 8: Ipakita ang Padded Image

Panghuli, tingnan ang padded na imahe sa pamamagitan ng pagpapakita nito:

padded_img



Ang output sa itaas ay nagpapakita na ang input na imahe ay matagumpay na nalagyan ng palaman sa lahat ng panig.

Katulad nito, maaari ring tukuyin ng mga user ang iba pang laki ng padding sa “ Pad() ” paraan upang i-pad ang imahe na may iba't ibang laki ng padding. Dito, tinutukoy namin ang kaliwa/kanang padding na '20' at itaas/ibaba na padding na '60':

pagbabago = transforms.Pad ( ( dalawampu , 60 ) )



Maglalapat ito ng 20 unit ng padding sa kaliwa at kanang bahagi ng larawan at 60 unit ng padding sa itaas at ibaba ng larawan:


Higit pa rito, maaari ring tumukoy ang mga user ng iba't ibang padding para sa kaliwa, itaas, kanan, at ibabang bahagi ng larawan:

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



Maglalapat ito ng 20 unit ng padding sa kaliwang bahagi, 40 unit ng padding sa itaas, 60 unit ng padding sa kanan, at 80 unit ng padding sa ibaba ng larawan:

Paghahambing

Ang paghahambing sa pagitan ng orihinal na larawan at mga padded na larawan na may iba't ibang laki ay makikita sa ibaba:

Orihinal na Larawan

May Padded na Larawan (50)

May Padded na Larawan (20, 60)

Padded na Larawan(20, 40, 60, 80)

Tandaan : Maa-access mo ang aming Google Colab Notebook dito link .

Iyon ay tungkol sa padding ng isang partikular na imahe sa lahat ng panig sa PyTorch.

Konklusyon

Upang maglagay ng partikular na larawan sa lahat ng panig sa PyTorch, una, i-upload ang gustong larawan sa Google Colab. Pagkatapos, i-import ang mga kinakailangang aklatan at basahin ang input na imahe. Pagkatapos nito, tapusin ang lapad at taas ng input na imahe. Susunod, tukuyin ang isang pagbabago gamit ang 'Pad()' na paraan at ilapat ito sa nais na input na imahe upang i-pad ito sa lahat ng panig. Panghuli, palitan ang laki ng padded na imahe sa orihinal nitong dimensyon at ipakita ito. Ang artikulong ito ay nagpakita ng paraan upang maglagay ng isang partikular na larawan sa lahat ng panig sa PyTorch.