这是基本的想法,您可以根据自己的需要进行修改.创建一个名为pic的按钮和图片框.将此代码放在按钮单击事件中,并用您选择的图像替换路径.您只需要在if语句中更改代码以创建某些颜色的阈值.要计算出阈值的RGB值,您可以使用绘图程序或在线颜色来查找所需颜色范围的正确值.
Dim x As Integer
Dim y As Integer
Dim red As Byte
Dim green As Byte
Dim blue As Byte
Dim img As Bitmap = New Bitmap("D:\dump\raycaster\Debug\pics\redbrick.png")
For x = 0 To img.Width - 1
For y = 0 To img.Height - 1
red = img.GetPixel(x, y).R
green = img.GetPixel(x, y).G
blue = img.GetPixel(x, y).B
If red > 128 Then
img.SetPixel(x, y, Color.Green)
End If
If blue > 200 And green > 200 Then
img.SetPixel(x, y, Color.Red)
End If
Next
Next
pic.Image = img
Run Code Online (Sandbox Code Playgroud)
并且像你说的那样专门改变白色到绿色:
If red > 240 And green > 240 And blue > 240 Then
img.SetPixel(x, y, Color.Green)
End If
Run Code Online (Sandbox Code Playgroud)
我做了240,因为很多时候你不会有纯白色.