Pregunta

No sé si este es el foro adecuado. De todos modos aquí está la pregunta. En una de nuestra aplicación que mostramos imágenes médicas y encima de ellos algún algoritmo generado mapa de bits. El mapa de bits real es un mapa de bits de 16 bits de escala de grises. A partir de este generamos un mapa de bits de color en base a una tabla de consulta para, por ejemplo

(0-100)->green 
(100-200)->blue
(200>above)->red

La pantalla funciona muy bien con pequeñas imágenes de 256x256. Pero cuando el área de visualización se vuelve grande 1024x1024 digamos la escala de grises para la conversión de color de mapa de bits tarda un tiempo y las interacciones no son suaves más. En los últimos tiempos he oído mucho acerca de la programación de la GPU de propósito general. En nuestro despliegue que tenemos de gama alta (Nvidia) quadrofx tarjeta gráfica.

Nuestra aplicación está construida usando .Net / C # si requiured puedo añadir poco de C ++ / CLI también. Ahora mi pregunta es esta conversión puede ser descargado de mapa de bits al procesador de gráficos? ¿Dónde debo buscar otras lecturas?

¿Fue útil?

Solución

Sí - y ya que usted es (aparentemente) que muestra el mapa de bits, que no es necesario ir a la ruta GPGPU (por ejemplo, OpenCL o CUDA). Se puede utilizar un sombreado programable para que -. Y si entiendo lo que estás diciendo, va a ser uno muy sencillo en el que

En cuanto a la forma de escribir el shader, que dependerá (en su mayoría) de cómo se está haciendo el resto de su dibujo. Sólo por un ejemplo obvio, si usted ya está usando WPF para su dibujo, es probable que desee utilizar un shader HLSL (WPF es compatible con los sombreadores de píxeles bastante directa).

Es probable que también la pena señalar que si tuviera que soportar hardware antiguo, una búsqueda en la tabla de este tipo es algo que podría realmente manejar con bastante facilidad en la GPU, incluso sin shaders programables. Mientras que sólo necesita para apoyar el hardware reciente, un shader probablemente será más simple sin embargo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top