使用颜色选择器过滤图像

时间:2014-04-17 07:14:22

标签: c# winforms algorithm desktop-application

我在选择图像时遇到问题。我选择一个文件夹,文件夹有数百个图像。还有一个颜色选择器控件,我想选择那些主要与颜色选择器颜色匹配的图像。

让我假设我从颜色选择器中选择颜色,如GREEN。我选择的图像文件夹可以获得所有那些主要颜色为绿色的图像,如Tree,Grass,Grace等。

请给我一些建议。我将非常感谢你。

1 个答案:

答案 0 :(得分:1)

首先,在选择FolderBrowserDialog的路径后,您可以使用System.IO.Directory.GetFiles()方法获取目录中的所有图像文件。

获取文件列表后,遍历列表,对于每个文件,将其打开为Bitmap,(免责声明:我不是图形处理专家,所以我不知道是否有更好的方式),使用getPixel()计算与颜色匹配的像素数(但是,getPixel非常慢,我建议改为使用Lockbits),并与Bitmap的大小进行比较,比率达到你决定。