Compartir a través de


Referencia de API para la creación de imágenes de IA en el SDK de aplicaciones de Windows

Importante

Disponible en la versión más reciente del canal experimental del SDK de aplicaciones de Windows.

El canal experimental del SDK de aplicaciones de Windows incluye API y características en las primeras fases de desarrollo. Todas las API del canal experimental están sujetas a revisiones exhaustivas y cambios importantes y se pueden eliminar de versiones posteriores en cualquier momento. Las características experimentales no se admiten para su uso en entornos de producción y las aplicaciones que las usan no se pueden publicar en Microsoft Store.

  • Las características de creación de imágenes no están disponibles en China.
  • No se admiten aplicaciones desempaquetadas.

Conozca las API de imágenes Windows App SDK, respaldadas por inteligencia artificial (IA), que admiten las siguientes capacidades:

  • Superresolución de imágenes: escalado y mejora de nitidez de imágenes
  • descripción de la imagen: generar texto que describa la imagen
  • segmentación de imágenes: identificación de objetos dentro de una imagen

Para más información, consulte Introducción a la creación de imágenes de IA en la SDK de Aplicaciones para Windows.

Sugerencia

Proporcione comentarios sobre estas API y su funcionalidad creando una nueva incidencia en el repositorio de GitHub de Windows App SDK (incluya Creación de imágenes en el título) o respondiendo a una incidencia existente.


Espacio de nombres Microsoft.Graphics.Imaging

Proporciona API para modelos de aprendizaje automático que escalan y afilan imágenes.

Clase ImageBuffer

public sealed class ImageBuffer : System.IDisposable

Representa un mapa de bits sin comprimir para serializar eficazmente entre procesos.

Comentarios

ImageBuffer se puede usar con las API de modelo de IA, como TextRecognizer que requieren datos de imagen. El uso típico implica la creación de un imageBuffer a partir de un objeto SoftwareBitmap existente.

Propiedad ImageBuffer.Buffer

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

Obtiene el búfer de imágenes actual.

Valor de propiedad

Búfer de imágenes actual.

Propiedad ImageBuffer.BufferLength

public uint BufferLength { get; }

Obtiene la longitud del búfer de imágenes.

Valor de propiedad

Longitud del búfer de imágenes.

Método ImageBuffer.Close

// This member is not implemented in C#

Elimina el objeto y los recursos asociados.

Comentarios

No implementado en C#.

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

public void CopyToBuffer (byte[] values);

Copia el búfer actual en el búfer de destino proporcionado.

Parámetros
valores

Vector de bytes en el búfer.

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

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

Cree un elemento ImageBuffer a partir de un objeto SotftwareBitmap existente; para ello, debe obtener un elemento un IMemoryBufferReference del objeto de mapa de bits.

Parámetros
softwareBitmap

Elemento SotftwareBitmap desde el que se va a crear ImageBuffer.

Devoluciones

ImageBuffer o null si es un formato no admitido.

Comentarios

SoftwareBitmap se bloquea hasta que se completa la operación asincrónica y se destruye el nuevo ImageBuffer.

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

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

Cree un elemento ImageBuffer a partir de un objeto SotftwareBitmap existente; para ello, copie los datos de mapa de bits subyacentes.

Parámetros
softwareBitmap

Elemento SotftwareBitmap desde el que se va a crear ImageBuffer.

Devoluciones

ImageBuffer o null si es un formato no admitido.

Comentarios

SoftwareBitmap se bloquea hasta que se completa la operación asincrónica y se destruye el nuevo ImageBuffer.

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
buffer
pixelFormat
width
alto
Devoluciones

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
buffer
pixelFormat
width
alto
stride
Devoluciones

Método ImageBuffer.CreateSoftwareBitmap

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

Cree un nuevo objeto SoftwareBitmap de tipo de píxel BGRA32 a partir de los datos de píxel almacenados en ImageBuffer.

Devoluciones

Nuevo objeto SoftwareBitmap de tipo de píxel BGRA32.

Propiedad ImageBuffer.Height

public uint Height { get; }

Obtiene la altura de la imagen en píxeles.

Valor de propiedad

El alto de la imagen, en píxeles.

Compilador 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 una nueva instancia de la clase ImageBuffer.

Parámetros
buffer

The ImageBuffer.

pixelFormat

Formato de píxel de la imagen.

width

Ancho de la imagen, en píxeles.

alto

El alto de la imagen, en píxeles.

Propiedad ImageBuffer.PixelFormat

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

Obtiene el formato de píxeles de la imagen.

Valor de propiedad

Formato de píxel de la imagen.

Propiedad ImageBuffer.Width

public uint Width { get; }

Obtiene el ancho de la imagen, en píxeles.

Valor de propiedad

Ancho de la imagen, en píxeles.

Clase ImageObjectExtractor

public sealed class ImageObjectExtractor : System.IDisposable

Método ImageObjectExtractor.Close

// This member is not implemented in C#
Comentarios

No implementado en 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
Devoluciones

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
Devoluciones

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

public Microsoft.Graphics.Imaging.ImageBuffer GetImageBufferObjectMask (Microsoft.Graphics.Imaging.ImageObjectExtractorHint hint);
Parámetros
hint
Devoluciones

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

public Windows.Graphics.Imaging.SoftwareBitmap GetSoftwareBitmapObjectMask (Microsoft.Graphics.Imaging.ImageObjectExtractorHint hint);
Parámetros
hint
Devoluciones

Método ImageObjectExtractor.IsAvailable

public static bool IsAvailable ();
Devoluciones

Método ImageObjectExtractor.MakeAvailableAsync

public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Devoluciones

Clase ImageObjectExtractorHint

public sealed class ImageObjectExtractorHint

Propiedad ImageObjectExtractorHint.ExcludePoints

public System.Collections.Generic.IReadOnlyList<Windows.Graphics.PointInt32> ExcludePoints { get; }
Valor de propiedad

Compilador 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
includeRects
includePoints
excludePoints

Propiedad ImageObjectExtractorHint.IncludePoints

public System.Collections.Generic.IReadOnlyList<Windows.Graphics.PointInt32> IncludePoints { get; }
Valor de propiedad

Propiedad ImageObjectExtractorHint.IncludeRects

public System.Collections.Generic.IReadOnlyList<Windows.Graphics.RectInt32> IncludeRects { get; }
Valor de propiedad

Clase ImageScaler

public sealed class ImageScaler : System.IDisposable

Método ImageScaler.Close

// This member is not implemented in C#
Comentarios

No implementado en C#.

Método ImageScaler.CreateAsync

public static Windows.Foundation.IAsyncOperation<Microsoft.Graphics.Imaging.ImageScaler> CreateAsync ();
Devoluciones

Método ImageScaler.IsAvailable

public static bool IsAvailable ();
Devoluciones

Método ImageScaler.MakeAvailableAsync

public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult,Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();
Devoluciones

Propiedad ImageScaler.MaxSupportedScaleFactor

public int MaxSupportedScaleFactor { get; }
Valor de propiedad

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
width
alto
Devoluciones

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
width
alto
Devoluciones

Enumeración PixelFormat

public enum PixelFormat

Especifica los tipos de diseños binarios para los datos de mapa de bits subyacentes.

Campos de enumeración
Sin definir: 0

El formato binario no está definido.

Rgb24: 1

El formato binario es de 24 bits por píxel; Cada uno de ellos utiliza 8 bits para los componentes rojo, verde y azul.

Argb32: 2

El formato binario de 32 bits por píxel utiliza 8 bits para cada uno de los componentes: alfa, rojo, verde y azul.

Rgba32: 3

El formato binario es de 32 bits por píxel; Cada uno de ellos utiliza 8 bits para los componentes rojo, verde, azul y alfa. Los componentes de color se almacenan en orden rojo, verde, azul y alfa.

Bgra32: 4

El formato binario es de 32 bits por píxel; Cada uno de ellos utiliza 8 bits para los componentes azul, verde, rojo y alfa. Los componentes de color se almacenan en orden azul, verde, rojo y alfa.

Gris8: 5

El formato binario es de 16 bits por píxel. La información de color especifica 65536 tonos de gris.