Referência da API para funcionalidades de imagem por IA no SDK de aplicações do Windows
Dica
Dê o seu feedback sobre estas APIs e a sua funcionalidade criando uma nova 'Issue' no repositório GitHub do Windows App SDK. (Certifique-se de incluir Imaging no título!)
Saiba mais sobre as APIs
Para obter mais detalhes, consulte Introdução à criação de imagens de IA no SDK do Aplicativo Windows.
Importante
Esta funcionalidade ainda não está disponível. Espera-se que seja lançado num próximo lançamento no canal experimental do SDK de Aplicações do Windows.
O SDK de Aplicativos Windows canal experimental 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. Eles não são suportados para uso em ambientes de produção e os aplicativos que usam recursos experimentais não podem ser publicados na Microsoft Store.
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.
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 o ImageBuffer será criado.
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
pixelFormat
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 intermédia
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#
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 ImageObjectRemover
public sealed class ImageObjectRemover : System.IDisposable
Método ImageObjectRemover.Close
// This member is not implemented in C#
Método ImageObjectRemover.CreateAsync
public static Windows.Foundation.IAsyncOperation<Microsoft.Graphics.Imaging.ImageObjectRemover> CreateAsync ();
Devoluções
Método ImageObjectRemover.IsAvailable
public static bool IsAvailable ();
Devoluções
Método ImageObjectRemover.MakeAvailableAsync
public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Devoluções
Método ImageObjectRemover.RemoveFromImageBuffer(Microsoft.Graphics.Imaging.ImageBuffer,Microsoft.Graphics.Imaging.ImageBuffer)
public Microsoft.Graphics.Imaging.ImageBuffer RemoveFromImageBuffer (Microsoft.Graphics.Imaging.ImageBuffer imageBuffer, Microsoft.Graphics.Imaging.ImageBuffer imageBufferMask);
Parâmetros
imageBuffer
imageBufferMask
Devoluções
Método ImageObjectRemover.RemoveFromSoftwareBitmap(Windows.Graphics.Imaging.SoftwareBitmap,Windows.Graphics.Imaging.SoftwareBitmap)
public Windows.Graphics.Imaging.SoftwareBitmap RemoveFromSoftwareBitmap (Windows.Graphics.Imaging.SoftwareBitmap softwareBitmap, Windows.Graphics.Imaging.SoftwareBitmap softwareBitmapMask);
Parâmetros
softwareBitmap
softwareBitmapMask
Devoluções
Classe ImageScaler
public sealed class ImageScaler : System.IDisposable
Método ImageScaler.Close
// This member is not implemented in 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
Buffer de imagem
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.
Estrutura do SegmentationPoint
public struct SegmentationPoint
Campos
tipo
x
y
Enumerador SegmentationPointType
public enum SegmentationPointType