Partilhar via


Referência da API para criação de imagens de IA no SDK do Aplicativo Windows

Importante

Disponível no canal experimental mais recente versão do SDK de Aplicativos Windows.

O canal experimental do SDK de Aplicativos Windows inclui APIs e recursos em estágios iniciais de desenvolvimento. Todas as APIs no canal experimental estão sujeitas a extensas revisões e mudanças disruptivas e podem ser eliminadas de versões subsequentes a qualquer momento. Os recursos experimentais não são suportados para uso em ambientes de produção e os aplicativos que os usam não podem ser publicados na Microsoft Store.

  • Os recursos de Descrição da Imagem não estão disponíveis na China continental.
  • Não há suporte para aplicativos autônomos.

Saiba mais sobre as APIs de geração de imagens do Windows App SDK , apoiadas por inteligência artificial (IA), que suportam as seguintes funcionalidades:

  • Super-Resolução de Imagem: ampliação e nitidez das imagens
  • Descrição da imagem: produção de texto que descreve a imagem
  • Segmentação de Imagens: identificação de objetos dentro de uma imagem

Para obter mais detalhes, consulte Introdução à criação de imagens de IA no SDK do Aplicativo Windows.

Dica

Forneça comentários sobre essas APIs e suas funcionalidades criando um novo de Problema no repositório GitHub do SDK de Aplicativo Windows (inclua Imaging no título) ou respondendo a um problema existente.


Namespace Microsoft.Graphics.Imaging

Fornece APIs para modelos de aprendizado de máquina que dimensionam e aprimoram imagens.

Classe ImageBuffer

public sealed class ImageBuffer : System.IDisposable

Representa um bitmap não compactado para passagem eficiente entre processos.

Comentários

O ImageBuffer pode ser usado com APIs de modelo de IA, como o TextRecognizer, que exigem dados de imagem. O uso típico envolve a criação de um ImageBuffer a partir de um SoftwareBitmap existente.

Propriedade ImageBuffer.Buffer

public Windows.Storage.Streams.IBuffer Buffer { get; }

Obtém o buffer de imagem atual.

Valor do imóvel

O buffer de imagem atual.

Propriedade ImageBuffer.BufferLength

public uint BufferLength { get; }

Obtém o comprimento do buffer de imagem.

Valor do imóvel

O comprimento do buffer de imagem.

Método ImageBuffer.Close

// This member is not implemented in C#

Elimina o objeto e os recursos associados.

Comentários

Não implementado em C#.

Método ImageBuffer.CopyToBuffer(System.Byte[])

public void CopyToBuffer (byte[] values);

Copia o buffer atual para o buffer de destino fornecido.

Parâmetros
valores

Vetor de bytes no buffer.

Método ImageBuffer.CreateBufferAttachedToBitmap(Windows.Graphics.Imaging.SoftwareBitmap)

public static Microsoft.Graphics.Imaging.ImageBuffer CreateBufferAttachedToBitmap (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap);

Crie um novo ImageBuffer a partir de um SotftwareBitmap existente obtendo um IMemoryBufferReference do objeto bitmap.

Parâmetros
softwareBitmap

O SoftwareBitmap a partir do qual criar o ImageBuffer.

Devoluções

O ImageBuffer ou null se for um formato sem suporte.

Comentários

O SoftwareBitmap é bloqueado até que a operação assíncrona seja concluída e o novo ImageBuffer seja destruído.

Método ImageBuffer.CreateCopyFromBitmap(Windows.Graphics.Imaging.SoftwareBitmap)

public static Microsoft.Graphics.Imaging.ImageBuffer CreateCopyFromBitmap (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap);

Crie um novo ImageBuffer a partir de um SotftwareBitmap existente copiando os dados de bitmap subjacentes.

Parâmetros
softwareBitmap

O SoftwareBitmap a partir do qual criar o ImageBuffer.

Devoluções

O ImageBuffer ou null se for um formato sem suporte.

Comentários

O SoftwareBitmap é bloqueado até que a operação assíncrona seja concluída e o novo ImageBuffer seja destruído.

Método ImageBuffer.CreateFromBuffer(Windows.Storage.Streams.IBuffer,Microsoft.Graphics.Imaging.PixelFormat,System.UInt32,System.UInt32)

public static Microsoft.Graphics.Imaging.ImageBuffer CreateFromBuffer (Windows.Storage.Streams.IBuffer buffer, Microsoft.Graphics.Imaging.PixelFormat pixelFormat, uint width, uint height);
Parâmetros
memória temporária
Formato de pixel
Largura
altura
Devoluções

Método ImageBuffer.CreateFromBufferWithStride(Windows.Storage.Streams.IBuffer,Microsoft.Graphics.Imaging.PixelFormat,System.UInt32,System.UInt32,System.UInt32)

public static Microsoft.Graphics.Imaging.ImageBuffer CreateFromBufferWithStride (Windows.Storage.Streams.IBuffer buffer, Microsoft.Graphics.Imaging.PixelFormat pixelFormat, uint width, uint height, uint stride);
Parâmetros
memória temporária
Formato de pixel
Largura
altura
passo largo
Devoluções

Método ImageBuffer.CreateSoftwareBitmap

public Windows.Graphics.Imaging.SoftwareBitmap CreateSoftwareBitmap ();

Crie um novo SoftwareBitmap do tipo de pixel BGRA32 a partir dos dados de pixel armazenados em um ImageBuffer.

Devoluções

O novo SoftwareBitmap do tipo de pixel BGRA32.

Propriedade ImageBuffer.Height

public uint Height { get; }

Obtém a altura da imagem, em pixels.

Valor do imóvel

A altura da imagem, em pixels.

Construtor ImageBuffer.#ctor(Windows.Storage.Streams.IBuffer,Microsoft.Graphics.Imaging.PixelFormat,System.UInt32,System.UInt32)

public ImageBuffer (Windows.Storage.Streams.IBuffer buffer, Microsoft.Graphics.Imaging.PixelFormat pixelFormat, uint width, uint height);

Inicializa uma nova instância da classe ImageBuffer.

Parâmetros
memória temporária

O ImageBuffer.

Formato de pixel

O formato de pixel da imagem.

Largura

A largura da imagem, em pixels.

altura

A altura da imagem, em pixels.

Propriedade ImageBuffer.PixelFormat

public Microsoft.Graphics.Imaging.PixelFormat PixelFormat { get; }

Obtém o formato de pixel da imagem.

Valor do imóvel

O formato de pixel da imagem.

Propriedade ImageBuffer.Width

public uint Width { get; }

Obtém a largura da imagem, em pixels.

Valor do imóvel

A largura da imagem, em pixels.

Classe ImageObjectExtractor

public sealed class ImageObjectExtractor : System.IDisposable

Método ImageObjectExtractor.Close

// This member is not implemented in C#
Comentários

Não implementado em C#.

Método ImageObjectExtractor.CreateWithImageBufferAsync(Microsoft.Graphics.Imaging.ImageBuffer)

public static Windows.Foundation.IAsyncOperation<Microsoft.Graphics.Imaging.ImageObjectExtractor> CreateWithImageBufferAsync (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer);
Parâmetros
imageBuffer
Devoluções

Método ImageObjectExtractor.CreateWithSoftwareBitmapAsync(Windows.Graphics.Imaging.SoftwareBitmap)

public static Windows.Foundation.IAsyncOperation<Microsoft.Graphics.Imaging.ImageObjectExtractor> CreateWithSoftwareBitmapAsync (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap);
Parâmetros
softwareBitmap
Devoluções

Método ImageObjectExtractor.GetImageBufferObjectMask(Microsoft.Graphics.Imaging.ImageObjectExtractorHint)

public Microsoft.Graphics.Imaging.ImageBuffer GetImageBufferObjectMask (Microsoft.Graphics.Imaging.ImageObjectExtractorHint hint);
Parâmetros
Dica
Devoluções

Método ImageObjectExtractor.GetSoftwareBitmapObjectMask(Microsoft.Graphics.Imaging.ImageObjectExtractorHint)

public Windows.Graphics.Imaging.SoftwareBitmap GetSoftwareBitmapObjectMask (Microsoft.Graphics.Imaging.ImageObjectExtractorHint hint);
Parâmetros
Dica
Devoluções

Método ImageObjectExtractor.IsAvailable

public static bool IsAvailable ();
Devoluções

Método ImageObjectExtractor.MakeAvailableAsync

public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Devoluções

ImageObjectExtractorHint class

public sealed class ImageObjectExtractorHint

ImageObjectExtractorHint.ExcludePoints propriedade

public System.Collections.Generic.IReadOnlyList<Windows.Graphics.PointInt32> ExcludePoints { get; }
Valor do imóvel

Construtor ImageObjectExtractorHint.#ctor(Windows.Foundation.Collections.IVector{Windows.Graphics.RectInt32},Windows.Foundation.Collections.IVector{Windows.Graphics.PointInt32},Windows.Foundation.Collections.IVector{Windows.Graphics.PointInt32})

public ImageObjectExtractorHint (System.Collections.Generic.IList<Windows.Graphics.RectInt32> includeRects, System.Collections.Generic.IList<Windows.Graphics.PointInt32> includePoints, System.Collections.Generic.IList<Windows.Graphics.PointInt32> excludePoints);
Parâmetros
incluirRects
incluirPontos
excluirPontos

Propriedade ImageObjectExtractorHint.IncludePoints

public System.Collections.Generic.IReadOnlyList<Windows.Graphics.PointInt32> IncludePoints { get; }
Valor do imóvel

Propriedade ImageObjectExtractorHint.IncludeRects

public System.Collections.Generic.IReadOnlyList<Windows.Graphics.RectInt32> IncludeRects { get; }
Valor do imóvel

Classe ImageScaler

public sealed class ImageScaler : System.IDisposable

Método ImageScaler.Close

// This member is not implemented in C#
Comentários

Não implementado em C#.

Método ImageScaler.CreateAsync

public static Windows.Foundation.IAsyncOperation<Microsoft.Graphics.Imaging.ImageScaler> CreateAsync ();
Devoluções

Método ImageScaler.IsAvailable

public static bool IsAvailable ();
Devoluções

Método ImageScaler.MakeAvailableAsync

public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Devoluções

Propriedade ImageScaler.MaxSupportedScaleFactor

public int MaxSupportedScaleFactor { get; }
Valor do imóvel

Método ImageScaler.ScaleImageBuffer(Microsoft.Graphics.Imaging.ImageBuffer,System.Int32,System.Int32)

public Microsoft.Graphics.Imaging.ImageBuffer ScaleImageBuffer (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer, int width, int height);
Parâmetros
imageBuffer
Largura
altura
Devoluções

Método ImageScaler.ScaleSoftwareBitmap(Windows.Graphics.Imaging.SoftwareBitmap,System.Int32,System.Int32)

public Windows.Graphics.Imaging.SoftwareBitmap ScaleSoftwareBitmap (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap, int width, int height);
Parâmetros
softwareBitmap
Largura
altura
Devoluções

Enum PixelFormat

public enum PixelFormat

Especifica os tipos de layouts binários para os dados de bitmap subjacentes.

Campos de Enum
Indefinido: 0

O formato binário é indefinido.

Rgb24: 1

O formato binário é de 24 bits por pixel; 8 bits cada são usados para os componentes vermelho, verde e azul.

Argb32: 2

O formato binário é de 32 bits por pixel, 8 bits são usados para cada um dos componentes alfa, vermelho, verde e azul.

RGBA32: 3

O formato binário é de 32 bits por pixel; 8 bits cada são usados para os componentes vermelho, verde, azul e alfa. Os componentes de cor são armazenados em vermelho, verde, azul e ordem alfa.

Bgra32: 4

O formato binário é de 32 bits por pixel; 8 bits cada são usados para os componentes azul, verde, vermelho e alfa. Os componentes de cor são armazenados em azul, verde, vermelho e ordem alfa.

Cinzento8: 5

O formato binário é de 16 bits por pixel. As informações de cor especificam 65536 tons de cinza.