gpt4 book ai didi

c# - 如何识别特定图像中的 "green"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:28:24 24 4
gpt4 key购买 nike

试图找到一种解决方案来识别特定屏幕截图上是否存在“绿色”颜色(下图)。

问题是,当使用纯 RGB 位图时,它无法像我希望的那样工作,因为图像是从网页的屏幕截图中截取的并且有点模糊,所以很多像素看起来不像“绿色”。

我需要以某种方式了解如何定义特定屏幕截图上是否有“绿色”颜色

enter image description here

最佳答案

I need somehow to know whether there is green color

遍历所有像素并搜索所需的颜色

Color c = Color.Green; //or the color you want to search

Bitmap bmp = new Bitmap(Image.FromFile(@"c:\file.bmp"));
bool containsgreen = false;
for (int w = 0; w < bmp.Width; w++)
for (int h = 0; h < bmp.Height; h++)
if (bmp.GetPixel(w, h) == c)
containsgreen = true;

如果您正在寻找颜色范围或相似的颜色,您还可以计算颜色距离以增加公差

public static double GetColourDistance(Color e1, Color e2)
{
return Math.Sqrt((e1.R - e2.R) * (e1.R - e2.R) + (e1.G - e2.G) * (e1.G - e2.G) + (e1.B - e2.B) * (e1.B - e2.B));
}

关于c# - 如何识别特定图像中的 "green"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51652629/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com