如何遍历某个图片所有像素并找出用的像素最多的颜色

koflfy 2012-05-28 04:05:46
如题。。。

如何遍历某个图片所有像素并找出用的像素最多的颜色?

遍历图片像素我倒是实现了,可是找出最多的颜色这个,具体怎么做,求指教。。谢谢。。。
...全文
474 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
koflfy 2012-05-28
  • 打赏
  • 举报
回复
太感谢楼上的大牛了,说实话我知道是用泛型实现,可是我不太熟悉泛型,呵呵,我今天回去好好恶补一下泛型知识,再谢感谢大牛。
stonespace 2012-05-28
  • 打赏
  • 举报
回复
Dictionary<Color,int> mapSt=new Dictionary<Color,int>();

while(...)
{
Color crPixel;//假设这个是遍历得到的每个像素颜色值
....

if (mapSt.ContainsKey(crPixel))
{
mapSt[crPixel]=mapSt[crPixel]+1;
}
else
{
mapSt[crPixel]=1;
}


}

//mapSt里就是每个颜色值的像素数目,取出最多一个就可以
Color crMax;
int nMaxCount=-1;
bool bSet=false;
foreach(KeyValuePair<Color,int> rPair in mapSt)
{
if (!bSet||rPair.Value>nMaxCount)
{
crMax=rPair.Key;
nMaxCount=rPair.Value;
}
}
stonespace 2012-05-28
  • 打赏
  • 举报
回复
用Dictionary统计颜色的像素数目,key是RGB值,value是颜色等于key的像素的数目,遍历的时候统计,

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧