SampleDistortedBoundingBox

SampleDistortedBoundingBox classe final pública

Gere uma única caixa delimitadora distorcida aleatoriamente para uma imagem.

As anotações da caixa delimitadora costumam ser fornecidas em adição aos rótulos verdadeiros em tarefas de reconhecimento de imagem ou localização de objetos. Uma técnica comum para a formação de um tal sistema é distorcer aleatoriamente uma imagem, preservando seu conteúdo, ou seja, aumento de dados. Este Op produz uma localização distorcida aleatoriamente de um objeto, isto é, caixa delimitadora, dado um `tamanho_da_imagem`,` caixas delimitadoras` e uma série de restrições.

A saída deste Op é uma única caixa delimitadora que pode ser usada para cortar a imagem original. A saída é retornada como 3 tensores: `begin`,` size` e `bboxes`. Os primeiros 2 tensores pode ser alimentada directamente para dentro tf.slice para cortar a imagem. Este último pode ser fornecido para tf.image.draw_bounding_boxes visualizar o que a caixa delimitadora parece.

Caixas delimitadoras são fornecidas e retornadas como `[y_min, x_min, y_max, x_max]`. As coordenadas da caixa delimitadora são flutuantes em `[0.0, 1.0]` em relação à largura e altura da imagem subjacente.

Por exemplo,

# Generate a single distorted bounding box.
     begin, size, bbox_for_draw = tf.image.sample_distorted_bounding_box(
         tf.shape(image),
         bounding_boxes=bounding_boxes)
 
     # Draw the bounding box in an image summary.
     image_with_box = tf.image.draw_bounding_boxes(tf.expand_dims(image, 0),
                                                   bbox_for_draw)
     tf.summary.image('images_with_box', image_with_box)
 
     # Employ the bounding box to distort the image.
     distorted_image = tf.slice(image, begin, size)
 
Note-se que se nenhuma informação caixa delimitadora está disponível, definindo `use_image_if_no_bounding_boxes = true` assumirá há uma única caixa delimitadora implícita cobrindo toda a imagem. Se `use_image_if_no_bounding_boxes` for falso e nenhuma caixa delimitadora for fornecida, um erro será gerado.

Classes aninhadas

classe SampleDistortedBoundingBox.Options Atributos opcionais para SampleDistortedBoundingBox

Constantes

Fragmento OP_NAME O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Métodos Públicos

estáticos SampleDistortedBoundingBox.Options
areaRange (List <float> areaRange)
estáticos SampleDistortedBoundingBox.Options
aspectRatioRange (List <float> aspectRatioRange)
Output < TFloat32 >
bboxes ()
3-D com a forma `[1, 1, 4]` contendo a caixa delimitadora distorcida.
Output <T>
começar ()
1-D, contendo `[offset_height, offset_width, 0]`.
estática <T estende TNumber > SampleDistortedBoundingBox <T>
criar ( Scope escopo, Operando <T> imageSize, Operando < TFloat32 > boundingBoxes, Operando < TFloat32 > minObjectCovered, Options ... Opções)
Método de fábrica para criar uma classe que envolve uma nova operação SampleDistortedBoundingBox.
estáticos SampleDistortedBoundingBox.Options
maxAttempts (Long maxAttempts)
estáticos SampleDistortedBoundingBox.Options
sementes (semente Long)
estáticos SampleDistortedBoundingBox.Options
seed2 (seed2 Long)
Output <T>
tamanho ()
1-D, contendo `[target_height, target_width, -1]`.
estáticos SampleDistortedBoundingBox.Options
useImageIfNoBoundingBoxes (booleano useImageIfNoBoundingBoxes)

Métodos herdados

Constantes

nome_op final String public static

O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Valor constante: "SampleDistortedBoundingBoxV2"

Métodos Públicos

public static SampleDistortedBoundingBox.Options areaRange (List <float> areaRange)

Parâmetros
areaRange A área recortada da imagem deve conter uma fração da imagem fornecida dentro deste intervalo.

public static SampleDistortedBoundingBox.Options aspectRatioRange (List <float> aspectRatioRange)

Parâmetros
aspectRatioRange A área recortada da imagem deve ter uma proporção = largura / altura dentro deste intervalo.

pública Output < TFloat32 > bboxes ()

3-D com a forma `[1, 1, 4]` contendo a caixa delimitadora distorcida. Proporcionar como entrada para tf.image.draw_bounding_boxes .

pública Output <T> begin ()

1-D, contendo `[offset_height, offset_width, 0]`. Proporcionar como entrada para tf.slice .

public static SampleDistortedBoundingBox <T> create ( Scope escopo, Operando <T> imageSize, Operando < TFloat32 > boundingBoxes, Operando < TFloat32 > minObjectCovered, Options ... Opções)

Método de fábrica para criar uma classe que envolve uma nova operação SampleDistortedBoundingBox.

Parâmetros
alcance escopo atual
tamanho da imagem 1-D, contendo `[altura, largura, canais]`.
boundingBoxes 3-D com a forma `[lote, N, 4]` descrevendo as N caixas delimitadoras associadas à imagem.
minObjectCovered A área recortada da imagem deve conter pelo menos esta fração de qualquer caixa delimitadora fornecida. O valor deste parâmetro não deve ser negativo. No caso de 0, a área cortada não precisa se sobrepor a nenhuma das caixas delimitadoras fornecidas.
opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância de SampleDistortedBoundingBox

public static SampleDistortedBoundingBox.Options maxAttempts (maxAttempts Long)

Parâmetros
maxAttempts Número de tentativas de gerar uma região recortada da imagem das restrições especificadas. Após falhas de `max_attempts`, retorna a imagem inteira.

public static SampleDistortedBoundingBox.Options semente (seed Long)

Parâmetros
semente Se `seed` ou` seed2` forem configurados para um valor diferente de zero, o gerador de número aleatório é propagado pelo `seed` fornecido. Caso contrário, é semeado por uma semente aleatória.

public static SampleDistortedBoundingBox.Options seed2 (seed2 Long)

Parâmetros
seed2 Uma segunda semente para evitar a colisão de sementes.

pública Output <T> size ()

1-D, contendo `[target_height, target_width, -1]`. Proporcionar como entrada para tf.slice .

public static SampleDistortedBoundingBox.Options useImageIfNoBoundingBoxes (Boolean useImageIfNoBoundingBoxes)

Parâmetros
useImageIfNoBoundingBoxes Controla o comportamento se nenhuma caixa delimitadora for fornecida. Se verdadeiro, assume uma caixa delimitadora implícita cobrindo toda a entrada. Se for falso, gera um erro.