根据底层图像的颜色创建一个三角形填充位图

Create a triangle filled Bitmap based on the colors of the underlying image

我想要实现的目标

  1. 一个用三角形填充的位图。
  2. 三角形的分离取决于从一个像素到下一个像素的颜色变化是否太大。
  3. 每个三角形的颜色取决于三角形内部整个像素区域的中值颜色值。

我在纠结什么
寻找在这种情况下检查三角形的最佳方法。

想到了却没能成功的

  1. 有一个嵌套循环,按位图的行和列检查每个像素颜色,如果变化很大,则开始向下,否则向左下方,等等。
  2. 通过Lists给Bitmap上颜色相对相同的每个部分上色。稍后做三角形。

任何有用的东西,如果需要我可以提供我当前的代码 还根据公差变量测量了剧烈的颜色变化

编辑


所以我想制作一张图像的位图(我已经完成了),并根据我布置的条件在该位图上添加代码颜色。如果公差变量非常高,则处理后的图片基本上会发生什么,但通常三角形应该更小以执行更精细的颜色过渡。谢谢

我理解你的目标的方式是使用 "drastic color change" 技术 - 如果你能够正确定义它 - 找出三角形的边缘。

然后,利用这些边和一些孤立点,您可以进行约束三角剖分,通常是约束德劳内三角剖分 (CDT)。

Shewchuk 在 C 中有很好的 papers about this CDT. And also a free program Triangle。也许你会在 C# 或 .net

中找到一些 "clone"