目前我正在开发一个程序,让我以图像的形式处理数据。假设我有对应于图像的数据点(可能是 300 x 300),值范围从 0 到 10000,我想以灰度值显示图像。如果我只是将值范围(0-10000)分成 256 个部分并根据位图形式的灰度值分配它们(我通过将所有颜色设置为相等来使用 rgb),那一切都很好。
然而,用户必须能够改变对比度和亮度。我的意思是:假设对应于黑色的值是 3000(显然下面的所有值也是黑色),对应于白色的值是 5000+。两者之间的值应该与灰色具有线性相关性。用户将有两个滑块,一个用于更改可观察值的范围(在本例中为 2000),另一个用于将范围从 3000-5000 转移到 5000-7000。问题实际上是让滑块实时工作。我试图为每个像素使用一个矩形来模拟图像,但是循环遍历所有矩形并更改它们的颜色实在是太慢了。有谁知道,如何让它工作得又好又顺利?