我想为图像处理和计算机视觉编写一个图形库。因为算法有时在大图像上很慢,所以我想使用显卡的 PixelShader 来做到这一点。
因为我用 C# 编写应用程序,所以我不想直接使用 DirectX。我想使用 XNA 库,因为这是我知道的简单地做这些事情的唯一方法。问题是,我不知道如何正确设计图书馆。
XNA 需要一个图形设备,它需要一个窗口句柄来创建(有什么办法可以欺骗这个吗?),调用类最终没有,因为调用程序的类设计(例如在 MVVM 应用程序中模型没有窗把手)。
另一件事是,我必须将着色器作为效果加载,这通常由内容管理器完成,但这也不是类库的完美解决方案,我认为(这里加载效果的另一种方法是帮助)。
那么有什么方法可以解决这些不太理想的问题,还是有另一种方法可以在 C# 中使用显卡进行图像处理?我希望我的问题很清楚,如果没有,请告诉它。