fabio 0.1.1__zip
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- Library/Python/2.7/site-packages/fabio/GEimage.py +334 -0
- Library/Python/2.7/site-packages/fabio/GEimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/GEimage_old.py +501 -0
- Library/Python/2.7/site-packages/fabio/GEimage_old.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/HiPiCimage.py +106 -0
- Library/Python/2.7/site-packages/fabio/HiPiCimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/OXDimage.py +442 -0
- Library/Python/2.7/site-packages/fabio/OXDimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/TiffIO.py +1197 -0
- Library/Python/2.7/site-packages/fabio/TiffIO.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/__init__.py +10 -0
- Library/Python/2.7/site-packages/fabio/__init__.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/adscimage.py +137 -0
- Library/Python/2.7/site-packages/fabio/adscimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/binaryimage.py +87 -0
- Library/Python/2.7/site-packages/fabio/binaryimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/bruker100image.py +96 -0
- Library/Python/2.7/site-packages/fabio/bruker100image.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/brukerimage.py +195 -0
- Library/Python/2.7/site-packages/fabio/brukerimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/byte_offset.so +0 -0
- Library/Python/2.7/site-packages/fabio/cbfimage.py +758 -0
- Library/Python/2.7/site-packages/fabio/cbfimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/cf_io.so +0 -0
- Library/Python/2.7/site-packages/fabio/compression.py +388 -0
- Library/Python/2.7/site-packages/fabio/compression.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/converters.py +54 -0
- Library/Python/2.7/site-packages/fabio/converters.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/datIO.py +60 -0
- Library/Python/2.7/site-packages/fabio/datIO.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/dm3image.py +219 -0
- Library/Python/2.7/site-packages/fabio/dm3image.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/edfimage.py +924 -0
- Library/Python/2.7/site-packages/fabio/edfimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/fabioimage.py +556 -0
- Library/Python/2.7/site-packages/fabio/fabioimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/fabioutils.py +491 -0
- Library/Python/2.7/site-packages/fabio/fabioutils.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/file_series.py +313 -0
- Library/Python/2.7/site-packages/fabio/file_series.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/fit2dmaskimage.py +94 -0
- Library/Python/2.7/site-packages/fabio/fit2dmaskimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/fit2dspreadsheetimage.py +85 -0
- Library/Python/2.7/site-packages/fabio/fit2dspreadsheetimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/kcdimage.py +131 -0
- Library/Python/2.7/site-packages/fabio/kcdimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/mar345_IO.so +0 -0
- Library/Python/2.7/site-packages/fabio/mar345image.py +320 -0
- Library/Python/2.7/site-packages/fabio/mar345image.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/marccdimage.py +309 -0
- Library/Python/2.7/site-packages/fabio/marccdimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/openimage.py +162 -0
- Library/Python/2.7/site-packages/fabio/openimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/pilatusimage.py +81 -0
- Library/Python/2.7/site-packages/fabio/pilatusimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/pnmimage.py +165 -0
- Library/Python/2.7/site-packages/fabio/pnmimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/readbytestream.py +86 -0
- Library/Python/2.7/site-packages/fabio/readbytestream.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/tifimage.py +283 -0
- Library/Python/2.7/site-packages/fabio/tifimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio/xsdimage.py +134 -0
- Library/Python/2.7/site-packages/fabio/xsdimage.pyc +0 -0
- Library/Python/2.7/site-packages/fabio-0.1.1-py2.7.egg-info/PKG-INFO +11 -0
- Library/Python/2.7/site-packages/fabio-0.1.1-py2.7.egg-info/SOURCES.txt +114 -0
- Library/Python/2.7/site-packages/fabio-0.1.1-py2.7.egg-info/dependency_links.txt +1 -0
- Library/Python/2.7/site-packages/fabio-0.1.1-py2.7.egg-info/top_level.txt +4 -0
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
#
|
|
4
|
+
# Reads the header from a GE a-Si Angio Detector
|
|
5
|
+
# Using version 8001 of the header from file:
|
|
6
|
+
# c:\adept\core\DefaultImageInfoConfig.csv
|
|
7
|
+
#
|
|
8
|
+
# Antonino Miceli
|
|
9
|
+
# Thu Jan 4 13:46:31 CST 2007
|
|
10
|
+
#
|
|
11
|
+
|
|
12
|
+
# modifications by Jon Wright for style, pychecker and fabio
|
|
13
|
+
#
|
|
14
|
+
|
|
15
|
+
import numpy
|
|
16
|
+
import struct, logging
|
|
17
|
+
logger = logging.getLogger("GEimage")
|
|
18
|
+
from fabioimage import fabioimage
|
|
19
|
+
from fabioutils import next_filename, previous_filename
|
|
20
|
+
|
|
21
|
+
GE_HEADER_INFO = [
|
|
22
|
+
# Name, length in bytes, format for struct (None means string)
|
|
23
|
+
('ImageFormat', 10, None),
|
|
24
|
+
('VersionOfStandardHeader', 2, '=H'),
|
|
25
|
+
('StandardHeaderSizeInBytes', 4, '=L'),
|
|
26
|
+
('VersionOfUserHeader', 2, '=H'),
|
|
27
|
+
('UserHeaderSizeInBytes', 4, '=L'),
|
|
28
|
+
('NumberOfFrames', 2, '=H'),
|
|
29
|
+
('NumberOfRowsInFrame', 2, '=H'),
|
|
30
|
+
('NumberOfColsInFrame', 2, '=H'),
|
|
31
|
+
('ImageDepthInBits', 2, '=H'),
|
|
32
|
+
('AcquisitionDate', 20, None),
|
|
33
|
+
('AcquisitionTime', 20, None),
|
|
34
|
+
('DUTID', 20, None),
|
|
35
|
+
('Operator', 50, None),
|
|
36
|
+
('DetectorSignature', 20, None),
|
|
37
|
+
('TestSystemName', 20, None),
|
|
38
|
+
('TestStationRevision', 20, None),
|
|
39
|
+
('CoreBundleRevision', 20, None),
|
|
40
|
+
('AcquisitionName', 40, None),
|
|
41
|
+
('AcquisitionParameterRevision', 20, None),
|
|
42
|
+
('OriginalNumberOfRows', 2, '=H'),
|
|
43
|
+
('OriginalNumberOfColumns', 2, '=H'),
|
|
44
|
+
('RowNumberUpperLeftPointArchiveROI', 2, '=H'),
|
|
45
|
+
('ColNumberUpperLeftPointArchiveROI', 2, '=H'),
|
|
46
|
+
('Swapped', 2, '=H'),
|
|
47
|
+
('Reordered', 2, '=H'),
|
|
48
|
+
('HorizontalFlipped', 2, '=H'),
|
|
49
|
+
('VerticalFlipped', 2, '=H'),
|
|
50
|
+
('WindowValueDesired', 2, '=H'),
|
|
51
|
+
('LevelValueDesired', 2, '=H'),
|
|
52
|
+
('AcquisitionMode', 2, '=H'),
|
|
53
|
+
('AcquisitionType', 2, '=H'),
|
|
54
|
+
('UserAcquisitionCoffFileName1', 100, None),
|
|
55
|
+
('UserAcquisitionCoffFileName2', 100, None),
|
|
56
|
+
('FramesBeforeExpose', 2, '=H'),
|
|
57
|
+
('FramesDuringExpose', 2, '=H'),
|
|
58
|
+
('FramesAfterExpose', 2, '=H'),
|
|
59
|
+
('IntervalBetweenFrames', 2, '=H'),
|
|
60
|
+
('ExposeTimeDelayInMicrosecs', 8, '=d'),
|
|
61
|
+
('TimeBetweenFramesInMicrosecs', 8, '=d'),
|
|
62
|
+
('FramesToSkipExpose', 2, '=H'),
|
|
63
|
+
('ExposureMode', 2, '=H'),
|
|
64
|
+
('PrepPresetTimeInMicrosecs', 8, '=d'),
|
|
65
|
+
('ExposePresetTimeInMicrosecs', 8, '=d'),
|
|
66
|
+
('AcquisitionFrameRateInFps', 4, '=f'),
|
|
67
|
+
('FOVSelect', 2, '=H'),
|
|
68
|
+
('ExpertMode', 2, '=H'),
|
|
69
|
+
('SetVCommon1', 8, '=d'),
|
|
70
|
+
('SetVCommon2', 8, '=d'),
|
|
71
|
+
('SetAREF', 8, '=d'),
|
|
72
|
+
('SetAREFTrim', 4, '=L'),
|
|
73
|
+
('SetSpareVoltageSource', 8, '=d'),
|
|
74
|
+
('SetCompensationVoltageSource', 8, '=d'),
|
|
75
|
+
('SetRowOffVoltage', 8, '=d'),
|
|
76
|
+
('SetRowOnVoltage', 8, '=d'),
|
|
77
|
+
('StoreCompensationVoltage', 4, '=L'),
|
|
78
|
+
('RampSelection', 2, '=H'),
|
|
79
|
+
('TimingMode', 2, '=H'),
|
|
80
|
+
('Bandwidth', 2, '=H'),
|
|
81
|
+
('ARCIntegrator', 2, '=H'),
|
|
82
|
+
('ARCPostIntegrator', 2, '=H'),
|
|
83
|
+
('NumberOfRows', 4, '=L'),
|
|
84
|
+
('RowEnable', 2, '=H'),
|
|
85
|
+
('EnableStretch', 2, '=H'),
|
|
86
|
+
('CompEnable', 2, '=H'),
|
|
87
|
+
('CompStretch', 2, '=H'),
|
|
88
|
+
('LeftEvenTristate', 2, '=H'),
|
|
89
|
+
('RightOddTristate', 2, '=H'),
|
|
90
|
+
('TestModeSelect', 4, '=L'),
|
|
91
|
+
('AnalogTestSource', 4, '=L'),
|
|
92
|
+
('VCommonSelect', 4, '=L'),
|
|
93
|
+
('DRCColumnSum', 4, '=L'),
|
|
94
|
+
('TestPatternFrameDelta', 4, '=L'),
|
|
95
|
+
('TestPatternRowDelta', 4, '=L'),
|
|
96
|
+
('TestPatternColumnDelta', 4, '=L'),
|
|
97
|
+
('DetectorHorizontalFlip', 2, '=H'),
|
|
98
|
+
('DetectorVerticalFlip', 2, '=H'),
|
|
99
|
+
('DFNAutoScrubOnOff', 2, '=H'),
|
|
100
|
+
('FiberChannelTimeOutInMicrosecs', 4, '=L'),
|
|
101
|
+
('DFNAutoScrubDelayInMicrosecs', 4, '=L'),
|
|
102
|
+
('StoreAECROI', 2, '=H'),
|
|
103
|
+
('TestPatternSaturationValue', 2, '=H'),
|
|
104
|
+
('TestPatternSeed', 4, '=L'),
|
|
105
|
+
('ExposureTimeInMillisecs', 4, '=f'),
|
|
106
|
+
('FrameRateInFps', 4, '=f'),
|
|
107
|
+
('kVp', 4, '=f'),
|
|
108
|
+
('mA', 4, '=f'),
|
|
109
|
+
('mAs', 4, '=f'),
|
|
110
|
+
('FocalSpotInMM', 4, '=f'),
|
|
111
|
+
('GeneratorType', 20, None),
|
|
112
|
+
('StrobeIntensityInFtL', 4, '=f'),
|
|
113
|
+
('NDFilterSelection', 2, '=H'),
|
|
114
|
+
('RefRegTemp1', 8, '=d'),
|
|
115
|
+
('RefRegTemp2', 8, '=d'),
|
|
116
|
+
('RefRegTemp3', 8, '=d'),
|
|
117
|
+
('Humidity1', 4, '=f'),
|
|
118
|
+
('Humidity2', 4, '=f'),
|
|
119
|
+
('DetectorControlTemp', 8, '=d'),
|
|
120
|
+
('DoseValueInmR', 8, '=d'),
|
|
121
|
+
('TargetLevelROIRow0', 2, '=H'),
|
|
122
|
+
('TargetLevelROICol0', 2, '=H'),
|
|
123
|
+
('TargetLevelROIRow1', 2, '=H'),
|
|
124
|
+
('TargetLevelROICol1', 2, '=H'),
|
|
125
|
+
('FrameNumberForTargetLevelROI', 2, '=H'),
|
|
126
|
+
('PercentRangeForTargetLevel', 2, '=H'),
|
|
127
|
+
('TargetValue', 2, '=H'),
|
|
128
|
+
('ComputedMedianValue', 2, '=H'),
|
|
129
|
+
('LoadZero', 2, '=H'),
|
|
130
|
+
('MaxLUTOut', 2, '=H'),
|
|
131
|
+
('MinLUTOut', 2, '=H'),
|
|
132
|
+
('MaxLinear', 2, '=H'),
|
|
133
|
+
('Reserved', 2, '=H'),
|
|
134
|
+
('ElectronsPerCount', 2, '=H'),
|
|
135
|
+
('ModeGain', 2, '=H'),
|
|
136
|
+
('TemperatureInDegC', 8, '=d'),
|
|
137
|
+
('LineRepaired', 2, '=H'),
|
|
138
|
+
('LineRepairFileName', 100, None),
|
|
139
|
+
('CurrentLongitudinalInMM', 4, '=f'),
|
|
140
|
+
('CurrentTransverseInMM', 4, '=f'),
|
|
141
|
+
('CurrentCircularInMM', 4, '=f'),
|
|
142
|
+
('CurrentFilterSelection', 4, '=L'),
|
|
143
|
+
('DisableScrubAck', 2, '=H'),
|
|
144
|
+
('ScanModeSelect', 2, '=H'),
|
|
145
|
+
('DetectorAppSwVersion', 20, None),
|
|
146
|
+
('DetectorNIOSVersion', 20, None),
|
|
147
|
+
('DetectorPeripheralSetVersion', 20, None),
|
|
148
|
+
('DetectorPhysicalAddress', 20, None),
|
|
149
|
+
('PowerDown', 2, '=H'),
|
|
150
|
+
('InitialVoltageLevel_VCOMMON', 8, '=d'),
|
|
151
|
+
('FinalVoltageLevel_VCOMMON', 8, '=d'),
|
|
152
|
+
('DmrCollimatorSpotSize', 10, None),
|
|
153
|
+
('DmrTrack', 5, None),
|
|
154
|
+
('DmrFilter', 5, None),
|
|
155
|
+
('FilterCarousel', 2, '=H'),
|
|
156
|
+
('Phantom', 20, None),
|
|
157
|
+
('SetEnableHighTime', 2, '=H'),
|
|
158
|
+
('SetEnableLowTime', 2, '=H'),
|
|
159
|
+
('SetCompHighTime', 2, '=H'),
|
|
160
|
+
('SetCompLowTime', 2, '=H'),
|
|
161
|
+
('SetSyncLowTime', 2, '=H'),
|
|
162
|
+
('SetConvertLowTime', 2, '=H'),
|
|
163
|
+
('SetSyncHighTime', 2, '=H'),
|
|
164
|
+
('SetEOLTime', 2, '=H'),
|
|
165
|
+
('SetRampOffsetTime', 2, '=H'),
|
|
166
|
+
('FOVStartingValue', 2, '=H'),
|
|
167
|
+
('ColumnBinning', 2, '=H'),
|
|
168
|
+
('RowBinning', 2, '=H'),
|
|
169
|
+
('BorderColumns64', 2, '=H'),
|
|
170
|
+
('BorderRows64', 2, '=H'),
|
|
171
|
+
('FETOffRows64', 2, '=H'),
|
|
172
|
+
('FOVStartColumn128', 2, '=H'),
|
|
173
|
+
('FOVStartRow128', 2, '=H'),
|
|
174
|
+
('NumberOfColumns128', 2, '=H'),
|
|
175
|
+
('NumberOfRows128', 2, '=H'),
|
|
176
|
+
('VFPAquisition', 2000, None),
|
|
177
|
+
('Comment', 200, None)
|
|
178
|
+
]
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
class GEimage(fabioimage):
|
|
182
|
+
|
|
183
|
+
_need_a_seek_to_read = True
|
|
184
|
+
|
|
185
|
+
def _readheader(self, infile):
|
|
186
|
+
""" Read a GE image header """
|
|
187
|
+
|
|
188
|
+
infile.seek(0)
|
|
189
|
+
|
|
190
|
+
self.header = {}
|
|
191
|
+
for name, nbytes, format in GE_HEADER_INFO:
|
|
192
|
+
if format is None:
|
|
193
|
+
self.header[ name ] = infile.read(nbytes)
|
|
194
|
+
else:
|
|
195
|
+
self.header[ name ] = struct.unpack(format,
|
|
196
|
+
infile.read(nbytes))[0]
|
|
197
|
+
|
|
198
|
+
def read(self, fname, frame=None):
|
|
199
|
+
"""
|
|
200
|
+
Read in header into self.header and
|
|
201
|
+
the data into self.data
|
|
202
|
+
"""
|
|
203
|
+
if frame is None:
|
|
204
|
+
frame = 0
|
|
205
|
+
self.header = {}
|
|
206
|
+
self.resetvals()
|
|
207
|
+
infile = self._open(fname, "rb")
|
|
208
|
+
self.sequencefilename = fname
|
|
209
|
+
self._readheader(infile)
|
|
210
|
+
self.nframes = self.header['NumberOfFrames']
|
|
211
|
+
self._readframe(infile, frame)
|
|
212
|
+
infile.close()
|
|
213
|
+
return self
|
|
214
|
+
|
|
215
|
+
def _makeframename(self):
|
|
216
|
+
""" The thing to be printed for the user to represent a frame inside
|
|
217
|
+
a file """
|
|
218
|
+
self.filename = "%s$%04d" % (self.sequencefilename,
|
|
219
|
+
self.currentframe)
|
|
220
|
+
|
|
221
|
+
def _readframe(self, filepointer, img_num):
|
|
222
|
+
"""
|
|
223
|
+
# Load only one image from the sequence
|
|
224
|
+
# Note: the first image in the sequence 0
|
|
225
|
+
# raises an exception if you give an invalid image
|
|
226
|
+
# otherwise fills in self.data
|
|
227
|
+
"""
|
|
228
|
+
if(img_num > self.nframes or img_num < 0):
|
|
229
|
+
raise Exception("Bad image number")
|
|
230
|
+
imgstart = self.header['StandardHeaderSizeInBytes'] + \
|
|
231
|
+
self.header['UserHeaderSizeInBytes'] + \
|
|
232
|
+
img_num * self.header['NumberOfRowsInFrame'] * \
|
|
233
|
+
self.header['NumberOfColsInFrame'] * \
|
|
234
|
+
self.header['ImageDepthInBits'] / 8
|
|
235
|
+
# whence = 0 means seek from start of file
|
|
236
|
+
filepointer.seek(imgstart, 0)
|
|
237
|
+
|
|
238
|
+
self.bpp = self.header['ImageDepthInBits'] / 8 # hopefully 2
|
|
239
|
+
imglength = self.header['NumberOfRowsInFrame'] * \
|
|
240
|
+
self.header['NumberOfColsInFrame'] * self.bpp
|
|
241
|
+
if self.bpp != 2:
|
|
242
|
+
logging.warning("Using uint16 for GE but seems to be wrong")
|
|
243
|
+
|
|
244
|
+
# Guessing it is always unsigned int?
|
|
245
|
+
self.data = numpy.fromstring(filepointer.read(imglength), numpy.uint16)
|
|
246
|
+
self.data.shape = (self.header['NumberOfRowsInFrame'],
|
|
247
|
+
self.header['NumberOfColsInFrame'])
|
|
248
|
+
self.dim2 , self.dim1 = self.data.shape
|
|
249
|
+
self.currentframe = int(img_num)
|
|
250
|
+
self._makeframename()
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
def write(self, fname, force_type=numpy.uint16):
|
|
254
|
+
""" Not yet implemented"""
|
|
255
|
+
raise Exception("Write is not implemented")
|
|
256
|
+
|
|
257
|
+
def getframe(self, num):
|
|
258
|
+
"""
|
|
259
|
+
Returns a frame as a new fabioimage object
|
|
260
|
+
"""
|
|
261
|
+
if num < 0 or num > self.nframes:
|
|
262
|
+
raise Exception("Requested frame number is out of range")
|
|
263
|
+
# Do a deep copy of the header to make a new one
|
|
264
|
+
newheader = {}
|
|
265
|
+
for k in self.header.keys():
|
|
266
|
+
newheader[k] = self.header[k]
|
|
267
|
+
frame = GEimage(header=newheader)
|
|
268
|
+
frame.nframes = self.nframes
|
|
269
|
+
frame.sequencefilename = self.sequencefilename
|
|
270
|
+
infile = frame._open(self.sequencefilename, "rb")
|
|
271
|
+
frame._readframe(infile, num)
|
|
272
|
+
infile.close()
|
|
273
|
+
return frame
|
|
274
|
+
|
|
275
|
+
def next(self):
|
|
276
|
+
"""
|
|
277
|
+
Get the next image in a series as a fabio image
|
|
278
|
+
"""
|
|
279
|
+
if self.currentframe < (self.nframes - 1) and self.nframes > 1:
|
|
280
|
+
return self.getframe(self.currentframe + 1)
|
|
281
|
+
else:
|
|
282
|
+
newobj = GEimage()
|
|
283
|
+
newobj.read(next_filename(
|
|
284
|
+
self.sequencefilename))
|
|
285
|
+
return newobj
|
|
286
|
+
|
|
287
|
+
def previous(self):
|
|
288
|
+
"""
|
|
289
|
+
Get the previous image in a series as a fabio image
|
|
290
|
+
"""
|
|
291
|
+
if self.currentframe > 0:
|
|
292
|
+
return self.getframe(self.currentframe - 1)
|
|
293
|
+
else:
|
|
294
|
+
newobj = GEimage()
|
|
295
|
+
newobj.read(previous_filename(
|
|
296
|
+
self.sequencefilename))
|
|
297
|
+
return newobj
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
def demo():
|
|
301
|
+
import sys, time
|
|
302
|
+
|
|
303
|
+
if len(sys.argv) < 2:
|
|
304
|
+
print "USAGE: GE_script.py <GEaSi_raw_image_file>"
|
|
305
|
+
sys.exit()
|
|
306
|
+
|
|
307
|
+
image_file = sys.argv[1]
|
|
308
|
+
|
|
309
|
+
print "init read_GEaSi_data class and load header.."
|
|
310
|
+
sequence1 = GEimage()
|
|
311
|
+
sequence1.read(image_file)
|
|
312
|
+
|
|
313
|
+
print "TimeBetweenFramesInMicrosecs = ",
|
|
314
|
+
print sequence1.header['TimeBetweenFramesInMicrosecs']
|
|
315
|
+
print "AcquisitionTime = ",
|
|
316
|
+
print sequence1.header['AcquisitionTime']
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
print "Mean = ", sequence1.data.ravel().mean()
|
|
320
|
+
|
|
321
|
+
while 1:
|
|
322
|
+
start = time.time()
|
|
323
|
+
try:
|
|
324
|
+
sequence1 = sequence1.next()
|
|
325
|
+
print sequence1.currentframe, sequence1.data.ravel().mean(), \
|
|
326
|
+
time.time() - start
|
|
327
|
+
except Exception, ex:
|
|
328
|
+
raise ex
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
if __name__ == '__main__':
|
|
334
|
+
demo()
|
|
Binary file
|