Contenuto principale

augment

Applicare trasformazioni casuali identiche a più immagini

Descrizione

augI = augment(augmenter,I) aumenta l'immagine I utilizzando una trasformazione casuale dal set di opzioni di pre-elaborazione dell'immagine definite dallo strumento di aumento dei dati dell'immagine augmenter. Se I consiste di più immagini, augment applica una trasformazione identica a tutte le immagini.

esempio

Esempi

comprimi tutto

Creare uno strumento di aumento delle immagini che ruota le immagini secondo un angolo casuale. Per utilizzare un intervallo personalizzato di angoli di rotazione validi, è possibile specificare un handle della funzione quando si crea lo strumento di aumento. Questo esempio specifica una funzione chiamata myrange (definita alla fine dell'esempio) che seleziona un angolo all'interno di due intervalli disgiunti.

imageAugmenter = imageDataAugmenter(RandRotation=@myrange);

Leggere più immagini nel workspace e visualizzarle.

img1 = imread("peppers.png");
img2 = imread("corn.tif",2);
inImg = imtile({img1,img2});
imshow(inImg)

Figure contains an axes object. The hidden axes object contains an object of type image.

Aumentare le immagini con aumenti identici. L'angolo di rotazione selezionato casualmente viene restituito in una variabile temporanea angle.

outCellArray = augment(imageAugmenter,{img1,img2});
angle = 
8.1158

Visualizzare le immagini aumentate.

outImg = imtile(outCellArray);
imshow(outImg);

Figure contains an axes object. The hidden axes object contains an object of type image.

Funzione di supporto

Questo esempio definisce la funzione myrange che innanzitutto seleziona casualmente uno dei due intervalli (-10, 10) e (170, 190) con uguale probabilità. La funzione restituisce un singolo numero casuale da una distribuzione uniforme, all'interno dell'intervallo selezionato.

function angle = myrange()
    if randi([0 1],1)
        a = -10;
        b = 10;
    else
        a = 170;
        b = 190;
    end
    angle = a + (b-a).*rand(1)
end

Argomenti di input

comprimi tutto

Opzioni di aumento, specificate come un oggetto imageDataAugmenter.

Immagini da aumentare, specificate in uno dei seguenti modi.

  • Array numerico che rappresenta una singola immagine in scala di grigi o a colori.

  • Array di celle di immagini numeriche e categoriche. Le immagini possono essere di diverse grandezze e tipi.

Argomenti di output

comprimi tutto

Immagini aumentate, restituite come array numerico o array di celle di immagini numeriche e categoriche, coerenti con il formato delle immagini di input I.

Suggerimenti

  • È possibile utilizzare la funzione augment per visualizzare l'anteprima delle trasformazioni applicate alle immagini di campionamento.

  • Per eseguire l'aumento dell'immagine durante l'addestramento, creare un augmentedImageDatastore e specificare le opzioni di pre-elaborazione utilizzando la coppia nome-valore DataAugmentation con un imageDataAugmenter. Il datastore delle immagini aumentate applica automaticamente le trasformazioni casuali ai dati dell'addestramento.

Cronologia versioni

Introdotto in R2018b