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

yipeiwu_com5年前Python基础

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

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

import struct
import math
import numpy
import scipy.stats
 
filename = input('enter file name')
f = open(filename, 'rb')
f.seek(0, 0)
 
c = 0
numOfZero = 0
s = 0
num = []
m = 0
 
while True:
  temp = f.read(4)
  if len(temp) == 0:
    break
  else:
    c = c + 1
print(c)
print(numOfZero)
 
sum = 0
squSum = 0
min = 2000
max = 0
list = []
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()

以上这篇python读取raw binary图片并提取统计信息的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Windows和Linux下Python输出彩色文字的方法教程

Windows和Linux下Python输出彩色文字的方法教程

前言 最近在项目中需要输出彩色的文字来提醒用户,以前写过,但是只能在win上面运行。 今天搜了下看有没有在win和Linux上通用的输出彩色文字的模块,结果发现没有,,于是就自己弄了一个...

Python实现线程状态监测简单示例

Python实现线程状态监测简单示例

本文实例讲述了Python实现线程状态监测。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- from threading import Thread...

python 创建弹出式菜单的实现代码

python 创建弹出式菜单的实现代码

python 创建弹出式菜单的实现代码            实现效果图: &nbs...

Python使用matplotlib绘制随机漫步图

Python使用matplotlib绘制随机漫步图

本文我们来做一个简单的随机漫步数据图,进一步了解matplotlib的使用, 使用Python生成随机漫步数据,再使用matplotlib绘制出来, 随机漫步是这样行走得到的路径: 每次...

替换python字典中的key值方法

比如有一个 a = {‘a': 1} 希望变为 a = {‘b' :1} 即:在保留value不变的情况下,替换key值 目前能想到的实现方案是 a[‘b'] = a.p...