python读取raw binary图片并提取统计信息

来源:互联网 发布:程序员之死 知乎 编辑:程序博客网 时间:2024/06/07 11:18

用python语言读取二进制图片文件,并提取非零数据统计信息(例如:max,min,skewness and kurtosis)

python新手,注释较少,欢迎指教

import structimport mathimport numpyimport scipy.statsfilename = input('enter file name')f = open(filename, 'rb')f.seek(0, 0)c = 0numOfZero = 0s = 0num = []m = 0while True:    temp = f.read(4)    if len(temp) == 0:        break    else:        c = c + 1print(c)print(numOfZero)sum = 0squSum = 0min = 2000max = 0list = []num = []f.seek(0, 0)for i in range(0, c):    a = f.read(4)    b = struct.unpack('<f', a)    list.append(b[0])    if list[i] == 0:        numOfZero = numOfZero + 1    else:        num.append(b[0])    if list[i] > max:        max = list[i]    if list[i] < min and list[i] != 0:        min = list[i]    sum = sum + list[i]stan_Dev = numpy.std(num)median = numpy.median(num)sk = scipy.stats.skew(num)ku = scipy.stats.kurtosis(num)print('numOfZero = ', numOfZero)print('sum = ', sum)print('meanValue = ',sum / (c - numOfZero))print('maxValue = ', max)print('minValue = ', min)print('median = ', median)print('stdev = ', stan_Dev)print('skewness = ', sk)print('kurtosis = ', ku)f.close()

0 0
原创粉丝点击