2012-07-19 16 views
5

Me gustaría poder distorsionar programáticamente una imagen en C#. Específicamente, me gustaría volver a ponderar una imagen espacialmente, de modo que los píxeles centrales se expandan y los píxeles periféricos ocupen proporcionalmente menos espacio. Piensa en la lente ojo de pez. Un poco¿Hay alguna herramienta .NET para distorsionar/deformar imágenes?

¿Hay alguna herramienta .NET que pueda hacer esto? No me importa si están integrados en el núcleo de .NET o en un complemento.

Respuesta

1

responsabilidad: yo trabajo para Atalasoft

Nuestra proyección de imagen SDK libre DotImage foto gratis, se puede hacer esto:

http://www.atalasoft.com/free-dotnet-image-sdk

Mira Atalasoft.Imaging.ImageProcessing.Transforms.LensTransform. Haría algo como

AtalaImage img = new AtalaImage("file.jpg"); 
LensTransform cmd = new LensTransform(); 
cmd.Radius = 100; 
cmd.Offset = new Point(100, 100); // set the center 
AtalaImage img2 = cmd.Apply(img).Image; 
1

Hmm ... podría intentar usar la API de ImageMagick para realizar cualquier operación que necesite.

http://www.imagemagick.org/script/api.php

Ellos tienen dos .NET soluciones disponibles. Debería poder investigar y encontrar el que mejor se adapte a sus necesidades. Una de sus características incluye la distorsión de píxeles generalizada, que puede utilizar para satisfacer sus necesidades.

1

Puede lograr estos efectos con bastante facilidad con los efectos de sombreado WPF.

Si no ha oído hablar de ellos, la idea es que pueda ejecutar efectos de sombreado de píxeles de Direct3D sobre cualquier imagen. Esto hará que sea muy fácil hacer efectos como los que describes en framerates en tiempo real.

De muchas maneras, esto es más fácil que escribirlos en C# o C, porque no necesita preocuparse por seguir las muestras de color en un buffer de imagen, verificaciones de rango y/o pasar sus datos correctamente como todos esto es manejado por el hardware de la tarjeta de video.

Here's a link a un video de canal 9 que muestra los efectos de ejemplo en la biblioteca de muestra de wpffx.

Creo que la "ampliación suave" es muy similar a la que desea.

Cuestiones relacionadas