B .^=@s.ddlZddlZddlZGdddZeZdS)Nc@sfeZdZdddZddZddZdd Zd d Zd d ZddZ ddZ ddZ ddZ ddZ dS)StatNcCsly |r|||_n ||_Wntk r:||_YnXt|jtsPtdttt|jd|_dS)Nz$first argument must be image or list) histogramhAttributeError isinstancelist TypeErrorrangelenbands)selfZ image_or_listmaskr1/tmp/pip-install-mwhup7aw/Pillow/PIL/ImageStat.py__init__s  z Stat.__init__cCs8|dddkrt|t|d|}t||||S)zCalculate missing attributeN_get)rgetattrsetattr)r idvrrr __getattr__*s  zStat.__getattr__cCsDdd}g}x2tdt|jdD]}|||j|dq W|S)z-Get min/max values for each band in the imagecSs>d}d}x,tdD] }||rt||}t||}qW||fS)Nrr)r minmax)rnxirrrminmax6s z Stat._getextrema..minmaxrrN)r r rappend)r rrrrrr _getextrema3s  zStat._getextremac CsFg}x|jD]4}|j|}||j||j|d||q W|S)zGet variance for each layerg@)r r.r r+r-)r rrrrrr_getvars   *z Stat._getvarcCs.g}x$|jD]}|t|j|q W|S)z%Get standard deviation for each layer)r r r3r4var)r rrrrr _getstddevs zStat._getstddev)N)__name__ __module__ __qualname__rrr!r&r(r,r/r2r5r6r8rrrrrs     r)r"r3r$rZGlobalrrrrsv