Vectorización de imágenes - Código C# y Vectorizador en línea

¿Estás listo para pasar al dibujo vectorial?

¿Qué es la Vectorización de Imágenes?

La vectorización de imágenes es el proceso de convertir imágenes de mapa de bits en gráficos vectoriales: curvas, splines y líneas Bezier. La vectorización es útil porque la imagen no se pixelará cuando la amplíe. El escalado sin perder calidad, el tamaño de archivo pequeño y la compatibilidad con animaciones son solo algunas de las ventajas de las imágenes vectorizadas. Ya sea que te interese la pintura, el diseño, el arte, la impresión, la arquitectura o el desarrollo web, las imágenes vectoriales son una parte esencial de la profesión. Por otro lado, puedes experimentar con imágenes y obtener algunos efectos de vectorización divertidos. En este artículo, veremos cómo convertir una imagen en gráficos vectoriales en C# o mediante un vectorizador de imágenes en línea.


Vectorizador de imágenes en línea

¿Estás listo para pasar de pintar con píxeles a dibujar con vectores? Image Vectorizer está diseñado para convertir imágenes rasterizadas en gráficos vectoriales basados ​​en formas geométricas que consisten en curvas y líneas Bezier. Todos los elementos gráficos vectoriales se guardan en archivos SVG después de la vectorización. Image Vectorizer admite JPEG, JPG, PJP, PJPEG, PNG, BMP, ICO, GIF, TIFF, WEBP, XBM y otros formatos de mapa de bits. Puede administrar de forma interactiva el archivo SVG vectorizado mediante el uso de controles vinculados con las opciones de vectorización adecuadas. ¡Convierta sus imágenes en arte vectorial claro y escalable ahora mismo!


¿Cómo usar el vectorizador de imágenes?

  1. Primero, cargue la imagen rasterizada desde un sistema de archivos local en JPEG, JPG, PJP, PJPEG, WEBP, PNG, BMP, ICO, GIF, TIFF, XBM u otro formato de mapa de bits. Verá tres ventanas: Imagen de origen, Imagen cuantificada e Imagen vectorizada, con la vista previa de las imágenes iniciales, cuantificadas en color y vectorizadas.
  2. Image Vectorizer convierte Image en vector con la configuración predeterminada y puede descargar Image vectorizado como un archivo SVG. Pero para obtener un mejor resultado, puede manejar los procesos de cuantificación y vectorización con dos barras laterales de configuración. Haga clic en el botón “Quantize” para aplicar la configuración de cuantificación, haga clic en el botón “Vectorize” para aplicar la configuración de vectorización y convertir Image a SVG.
  3. Haga clic en el botón “Download” para obtener el resultado.

Image Vectorizer convierte imágenes de mapa de bits de trama en ilustraciones vectoriales construidas a partir de contornos. El algoritmo de vectorización incluye los siguientes pasos: cuantificación de color, seguimiento de contornos, suavizado de seguimiento, simplificación de seguimiento y creación de elementos de ruta SVG a partir de los seguimientos. Aplique configuraciones personalizadas para obtener el mejor resultado de vectorización de Image.

Opciones de cuantificación (Quantization Options)

La cuantificación del color es un proceso de selección de un número limitado de colores para usar en una imagen. Se aplica cuando se va a reducir la información de color de una imagen. La cuantificación del color es un proceso muy complejo que involucra una serie de factores. Esto se puede implementar usando diferentes algoritmos. Cada uno de los algoritmos determina qué colores del conjunto más grande de colores permanecen en la nueva imagen y cómo se asignan los colores descartados a los restantes.

  • colores - tamaño de paleta deseado;
  • method - métodos de histograma que implementan varios algoritmos de cuantificación de color;
  • minHueCols - es un parámetro que funciona con degradados de color;
  • scale - o factor de escala - configurable para una muestra de colores más fina o más gruesa;
  • grayscale - puede convertir la imagen a escala de grises haciendo clic en la casilla de verificación.

Opciones de vectorización (Vectorization Options)

  • threshold - es responsable de establecer la cantidad de píxeles para marcar el contorno;
  • severity - afecta el suavizado de los contornos y determina la extensión de la región considerada por el punto de consulta del enfoque del vecino más cercano;
  • line-width - afecta el ancho de las líneas para marcar los contornos;
  • stencil - convierte una imagen o foto ordinaria en una imagen de contorno que se puede utilizar como plantilla para efectos de graffiti;
  • trace paths - puede ver los puntos en una curva que son responsables de construir segmentos de camino.

Los gráficos vectoriales son los mejores para crear logotipos, íconos, diseños de página, mapas, gráficos, artes lineales, ilustraciones, dibujos técnicos y más. No es el formato más adecuado para imágenes de tonos continuos con mezclas de color o fotografías de edición. Sin embargo, la vectorización de fotos puede generar impresionantes efectos artísticos que pueden ser interesantes y útiles.

Cómo vectorizar una imagen en C#

Aspose.SVG para .NET API ofrece una biblioteca de C# de alta velocidad que puede usar para diferentes tareas de análisis de SVG. El espacio de nombres ImageVectorization incluye clases e interfaces para implementar el proceso de vectorización de imágenes y trabajar con varias opciones de preprocesamiento para imágenes antes de guardarlas. en formato vectorial. El procesamiento implica controlar las siguientes opciones de vectorización: TraceSimplifier, TraceSmoother, PathBuilder, etc.


Vectorización de imágenes en C#

	// Initialize an instance of the ImageVectorizer class
	var vectorizer = new ImageVectorizer
    {
		//optionally set configuration
        Configuration =
        {
			//optionally set path builder
            PathBuilder = new BezierPathBuilder {
			//optionally set trace smoother
            TraceSmoother = new ImageTraceSmoother(1),
                ErrorThreshold =  30,
                MaxIterations = 30
            },
            ColorsLimit = 25,
            LineWidth = 1
        }
    };
    // Vectorize image from the specified file
	using var document = vectorizer.Vectorize(InputFolder + "image.png");
    // Save vectorized Image as SVG file 
	document.Save(OutputFolder + "image.svg");

Pasos para Vectorizar Imagen en C#

  1. Inicialice una instancia de la clase ImageVectorizer. Utilice uno de los constructores de ImageVectorizer() y especifique las propiedades de configuración.
    • La propiedad TraceSmoother establece la traza más suave. Se utiliza para suavizar fragmentos de contornos.
    • La propiedad TraceSimplifier establece la traza simplificada. Como resultado, la curva de trazado se construirá compuesta por segmentos de línea con menos puntos (o más grandes).
    • La propiedad PathBuilder establece el generador de segmentos de ruta SVG y afecta la forma en que la curva se dobla en los puntos de control.
  2. Vectorizar la imagen del archivo especificado. El método Vectorize() toma la ruta al archivo de imagen y devuelve un documento SVG.
  3. Guarde la imagen vectorizada como un archivo SVG. Utilice el método Save() y pásele la ruta de salida.

Vectorización de imágenes en documentación

Actualmente, los gráficos vectoriales escalables se utilizan ampliamente para representar gráficos web. En comparación con los mapas de bits, los gráficos vectoriales pueden crear imágenes nítidas que se escalan a cualquier tamaño, son ideales para dibujar cualquier tipo de ilustración web, incluidos iconos, gráficos, diagramas y más. En el capítulo de documentación Vectorización - descripción general básica encontrará una descripción de la proceso de vectorización de imágenes.

  • Flujo de trabajo de vectorización de imágenes - Encontrará información de vectorización de imágenes, una descripción del proceso de vectorización de imágenes y las opciones de vectorización, aprenda a vectorizar imágenes rasterizadas como PNG, JPG, BMP, TIFF, GIF, ICO en un documento SVG.
  • Ejemplos de vectorización de imágenes - Considerará algunos ejemplos de C# que demuestran las funcionalidades de ImageVectorization y el efecto de las propiedades de configuración en el resultado de la vectorización.

Preguntas más frecuentes

1. ¿Cómo puedo vectorizar Image?

Aspose.SVG le permite convertir Image a SVG de cualquier manera, en línea o mediante programación. Por ejemplo, puede vectorizar Image en tiempo real usando Online Image Vectorizer que convierte sus imágenes rápidamente y con alta calidad. Por otro lado, puede usar Aspose.SVG para .NET API para vectorizar Image mediante programación.

2. ¿Qué es una conversión de ráster a vector?

El proceso de conversión de imágenes de ráster a vector se denomina vectorización de imágenes. Es un proceso computacional complejo que convierte una imagen de mapa de bits formada por píxeles en una imagen vectorial formada por líneas, curvas y otras formas geométricas.

Comience con la API SVG de .NET

Si está interesado en desarrollar gráficos vectoriales escalables y su aplicación, instale nuestra API Aspose.SVG flexible y de alta velocidad para .NET con un potente conjunto de interfaces para C# y otros lenguajes de programación .NET.
Instale desde la línea de comandos como nuget install Aspose.SVG o a través de Package Manager Console de Visual Studio con Install-Package Aspose.SVG. Alternativamente, obtenga el instalador MSI sin conexión o las DLL en un archivo ZIP desde downloads. Aspose.SVG para .NET API es una biblioteca independiente y no depende de cualquier software para el procesamiento de documentos SVG.
Para obtener más detalles sobre la instalación de la biblioteca de C# y los requisitos del sistema, consulte Documentación de Aspose.SVG.

Otros Vectorizadores compatibles

¡Ahorre tiempo y consulte estos Vectorizadores de imágenes para obtener todos los beneficios de los gráficos vectoriales!

Text to Vector (SVG Text)
Stencil Drawing (Stencil images)
JPG to SVG (JPEG Image)
PNG to SVG (Portable Network Graphics)
Image to SVG (Raster Image)
BMP to SVG (Microsoft Windows Bitmap)
GIF TO SVG (Graphical Interchange Format)
TIF to SVG (Tagged Image File Format)
ICO to SVG (Windows Icon)