How to identify non-photograph or 'uninteresting' images using Python Imaging Library (PIL)

前端 未结 1 1572
清酒与你
清酒与你 2021-01-01 01:12

I have thousands of images and I need to weed out the ones which are not photographs, or otherwise \'interesting\'.

An \'uninteresting\' image, for example, may be a

相关标签:
1条回答
  • 2021-01-01 01:42

    Danphe beat me to it. Here's my method for calculating image entropy:

    import Image
    from math import log
    
    def get_histogram_dispersion(histogram):
        log2 = lambda x:log(x)/log(2)
    
        total = len(histogram)
        counts = {}
        for item in histogram:
            counts.setdefault(item,0)
            counts[item]+=1
    
        ent = 0
        for i in counts:
            p = float(counts[i])/total
            ent-=p*log2(p)
        return -ent*log2(1/ent)
    
    
    im = Image.open('test.png')
    h = im.histogram()
    print get_histogram_dispersion(h)
    
    0 讨论(0)
提交回复
热议问题