What's an efficient way to tell if a bitmap is entirely black?

前端 未结 12 916
清酒与你
清酒与你 2021-02-05 05:40

I\'m wondering if there\'s a super-efficient way of confirming that an Image object references an entirely black image, so every pixel within the bitmap is ARGB(255, 0, 0, 0).

12条回答
  •  轻奢々
    轻奢々 (楼主)
    2021-02-05 06:23

    Using AForgeNET library (http://www.aforgenet.com) could also be a solution:

    public bool IsNotBlackImage()
    {
        Assembly assembly = this.GetType().Assembly;
        var imgTest = new Bitmap(assembly.GetManifestResourceStream("TestImage.png"));
        var imgStatistics = new ImageStatistics(imgTest);             
        return imgStatistics.PixelsCountWithoutBlack != 0;
    }
    

    For ImageStatistics class reference AForge.Imaging.dll in your project.

    http://code.google.com/p/aforge/source/browse/trunk/Sources/Imaging/ImageStatistics.cs

提交回复
热议问题