¿Cómo puedo rastrear este mapa de bits con artefactos JPEG?

Estoy intentando rastrear el siguiente mapa de bits:

Un verdadero pingüino frío

Imagen de ACStewart del cómic web "Behind the GIFs"

Como humanos, podemos ver claramente que esto era originalmente un vector y debería rastrearse bien. El problema es que el artefacto JPEG está causando que el código "Trace Bitmap" de Inkscape piense que la línea negra clara contra el fondo blanco tiene una franja gris e incluso un poco de azul a su alrededor.

Resultado ampliado de Trace Bitmap en Inkscape

¿Hay alguna configuración para modificar o alguna forma de engañar a Inkscape para que vea el JPEG con pérdida como la imagen vectorial que realmente es?

No es la ilustración más complicada del mundo. ¿No pudiste trazarlo a mano con la herramienta Pluma?

Respuestas (2)

La mala noticia: solo con los algoritmos de seguimiento automático, no podrá obtener un resultado limpio. Siempre habrá ruido.

La buena noticia: si está dispuesto a invertir un poco de esfuerzo en la limpieza manual, puede obtener una reconstrucción vectorizada muy decente. Esto es lo que pude obtener en aproximadamente 5 minutos:

Original y Reconstruido

(Haga clic en la imagen para obtener una versión de alta resolución o salte directamente al SVG en la parte inferior).

Esto es lo que hice:

  1. Ejecute "Trace Bitmap" en el original dos veces, una vez usando "Brightness Cutoff" a 0,45 y una vez usando "Multiple scans: Colors" con 6 escaneos .

En la pestaña "Modo", asegúrese de que los campos "Smooth", "Stack scans" y "Remove background" no estén marcados . Estas fueron mis "Opciones" para ambos rastros:

  1. Coloque el resultado del "Corte de brillo" al costado. De hecho, es muy bueno y te da todos los negros (como lo señaló Juancho ). Así que todo lo que falta son las áreas coloreadas.

  2. Separe las 6 capas de color, elimine las que solo contienen ruido, limpie las capas restantes hasta que quede con los parches de colores grandes que faltan:

Sugerencia: para eliminar el ruido, ingrese al "Modo de selección de nodos" (F2), seleccione un grupo de nodos ruidosos arrastrando un cuadro alrededor de ellos y elimínelos con Ctrl+Del.

  1. Alinee los parches . Si algunos parches parecen haberse "adelgazado" ligeramente durante el rastreo, puede "engordarlos" nuevamente con "Path" > "Outset" (o Ctrl+)). Finalmente, agrupa el resultado.

Y ahí tienes tu SVG reconstruido:

SVG reconstruido

Haga clic derecho y "Guardar imagen como..." en la imagen de arriba o haga clic aquí para descargar el archivo SVG independiente.

Lo he estado usando simplemente DELdurante años y, a menudo, obtengo estas curvas "extravagantes" cuando elimino nodos. Estoy tan feliz de que me hayas mostrado CTRL+DEL: eliminar sin conservar la forma
@IQAndreas Sí, Ctrl+Deles bastante esencial ;-) Si mi respuesta resuelve su pregunta, ¿le importaría aceptarla?
Excelente respuesta! ¿Crees que podrías notar qué otras configuraciones usaste? (por ejemplo, parece que "Escaneos de pila" está deshabilitado según los resultados)
@IQAndreas Gracias por señalarlo, acabo de agregar los estados de casilla de verificación que faltan a la respuesta. De hecho, "Stack Scans" estaba deshabilitado. Me acabo de dar cuenta de que con "Stack Scans" habilitado, posiblemente sea aún más simple separar los parches de colores. Oh, bueno, funciona de cualquier manera ;-).

Si traza el mapa de bits con el algoritmo de corte de brillo y el umbral de 0,3, obtendrá una buena representación de los trazos negros únicamente.

Esto hará la mayor parte del trabajo.

Otro rastro con un corte más alto te incluirá toda la cabeza. Puede colorear este segundo trazo gris y colocarlo debajo del primer trazo negro.

¡El primer paso consiguió los negros perfectamente! Desafortunadamente, cuando aumenté el umbral de corte de brillo, Inkscape decidió incluir "el borde JPEG borroso" fuera del negro, por lo que terminé con resultados similares al usar múltiples escaneos con 4/5 colores.