Skip to content

Commit 300f183

Browse files
authored
Merge pull request #624 from ngageoint/staging_v2.0.0
Staging v2.0.0
2 parents b7c2f2e + e16961a commit 300f183

5 files changed

Lines changed: 89 additions & 87 deletions

File tree

sarpy/__about__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
from sarpy.__details__ import __classification__, _post_identifier
3030

31-
__version__ = "1.3.64"
31+
__version__ = "2.0.1"
3232

3333
__author__ = "National Geospatial-Intelligence Agency"
3434
__url__ = "https://github.com/ngageoint/sarpy"

sarpy/io/sarkitFastReader/FastReadCPHD.py

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -32,25 +32,26 @@
3232
class CPHD_Fast_Reader:
3333

3434
def __init__(self, fname, metaformat = 'wrapped', preload = False):
35-
with open(fname, 'rb') as f, skcphd.Reader(f) as reader:
36-
# Create metadata attribute with SARKit metadata options
35+
self.f = open(fname, 'rb')
36+
reader = skcphd.Reader(self.f)
37+
# Create metadata attribute with SARKit metadata options
3738

38-
if metaformat == 'wrapped':
39-
Meta = skcphd.ElementWrapper(reader.metadata.xmltree.getroot())
40-
elif metaformat == 'helper':
41-
Meta = skcphd.XmlHelper(reader.metadata.xmltree)
42-
else:
43-
Meta = reader.metadata.xmltree
44-
metaformat = 'xmltree'
39+
if metaformat == 'wrapped':
40+
Meta = skcphd.ElementWrapper(reader.metadata.xmltree.getroot())
41+
elif metaformat == 'helper':
42+
Meta = skcphd.XmlHelper(reader.metadata.xmltree)
43+
else:
44+
Meta = reader.metadata.xmltree
45+
metaformat = 'xmltree'
4546

46-
ch_id = reader.metadata.xmltree.findtext("{*}Data/{*}Channel/{*}Identifier")
47-
print("channel IDs: ", ch_id)
48-
if preload:
49-
image = reader.read_signal(ch_id)
50-
self.signal = image
51-
else:
52-
self.signal = None
47+
ch_id = reader.metadata.xmltree.findtext("{*}Data/{*}Channel/{*}Identifier")
48+
print("channel IDs: ", ch_id)
49+
if preload:
50+
image = reader.read_signal(ch_id)
51+
self.signal = image
52+
else:
53+
self.signal = None
5354

54-
self.metadata = Meta
55-
self.reader = reader
56-
self.metaformat = metaformat
55+
self.metadata = Meta
56+
self.reader = reader
57+
self.metaformat = metaformat

sarpy/io/sarkitFastReader/FastReadCRSD.py

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -32,25 +32,26 @@
3232
class CRSD_Fast_Reader:
3333

3434
def __init__(self, fname, metaformat = 'wrapped', preload = False):
35-
with open(fname, 'rb') as f, skcrsd.Reader(f) as reader:
36-
# Create metadata attribute with SARKit metadata options
35+
self.f = open(fname, 'rb')
36+
reader = skcrsd.Reader(self.f)
37+
# Create metadata attribute with SARKit metadata options
3738

38-
if metaformat == 'wrapped':
39-
Meta = skcrsd.ElementWrapper(reader.metadata.xmltree.getroot())
40-
elif metaformat == 'helper':
41-
Meta = skcrsd.XmlHelper(reader.metadata.xmltree)
42-
else:
43-
Meta = reader.metadata.xmltree
44-
metaformat = 'xmltree'
39+
if metaformat == 'wrapped':
40+
Meta = skcrsd.ElementWrapper(reader.metadata.xmltree.getroot())
41+
elif metaformat == 'helper':
42+
Meta = skcrsd.XmlHelper(reader.metadata.xmltree)
43+
else:
44+
Meta = reader.metadata.xmltree
45+
metaformat = 'xmltree'
4546

46-
ch_id = reader.metadata.xmltree.findtext("{*}Data/{*}Receive/{*}Channel/{*}ChId")
47-
print("channel IDs: ", ch_id)
48-
if preload:
49-
image = reader.read_signal(ch_id)
50-
self.signal = image
51-
else:
52-
self.signal = None
47+
ch_id = reader.metadata.xmltree.findtext("{*}Data/{*}Receive/{*}Channel/{*}ChId")
48+
print("channel IDs: ", ch_id)
49+
if preload:
50+
image = reader.read_signal(ch_id)
51+
self.signal = image
52+
else:
53+
self.signal = None
5354

54-
self.metadata = Meta
55-
self.reader = reader
56-
self.metaformat = metaformat
55+
self.metadata = Meta
56+
self.reader = reader
57+
self.metaformat = metaformat

sarpy/io/sarkitFastReader/FastReadSICD.py

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -50,28 +50,33 @@
5050

5151
class SICD_Fast_Reader:
5252

53-
def __init__(self, fname, metaformat = 'wrapped', preload = False):
54-
with open(fname, 'rb') as f, sksicd.NitfReader(f) as reader:
55-
# Create metadata attribute with SARKit metadata options
56-
if metaformat == 'wrapped':
57-
Meta = sksicd.ElementWrapper(reader.metadata.xmltree.getroot())
58-
elif metaformat == 'helper':
59-
Meta = sksicd.XmlHelper(reader.metadata.xmltree)
60-
else:
61-
Meta = reader.metadata.xmltree
62-
metaformat = 'xmltree'
53+
def __init__(self, fname, metaformat = 'wrapped', preload = False, chip = False):
54+
self.f = open(fname, 'rb')
55+
reader = sksicd.NitfReader(self.f)
56+
# Create metadata attribute with SARKit metadata options
57+
if metaformat == 'wrapped':
58+
Meta = sksicd.ElementWrapper(reader.metadata.xmltree.getroot())
59+
elif metaformat == 'helper':
60+
Meta = sksicd.XmlHelper(reader.metadata.xmltree)
61+
else:
62+
Meta = reader.metadata.xmltree
63+
metaformat = 'xmltree'
6364

64-
if preload:
65-
image = reader.read_image()
66-
self.complex_image = image
67-
else:
68-
self.complex_image = None
65+
if preload:
66+
self.complex_image = reader.read_image()
67+
elif chip and len(chip) == 4: #[rowStart, ColStart, rowEnd, colEnd]
68+
self.complex_image = reader.read_sub_image(chip[0], chip[1], chip[2], chip[3])[0]
69+
preload = True
70+
else:
71+
self.complex_image = None
72+
73+
6974

70-
self.metadata = Meta
71-
self.reader = reader
72-
self.metaformat = metaformat
73-
self._file_object = f
74-
self.Preload = preload
75+
self.metadata = Meta
76+
self.reader = reader
77+
self.metaformat = metaformat
78+
79+
self.Preload = preload
7580

7681
def image_to_llh(self, row, col):
7782
Meta = self.metadata
@@ -147,19 +152,13 @@ def llh_to_image(self, lat, lon):
147152
image_coords = np.array([iRow, iCol])
148153
return(image_coords)
149154

150-
def Remap(self, chip = None, display = False):
155+
def Remap(self, display = False):
151156
if not self.Preload:
152157
raise ValueError('preload option must be turned on to use Remap function')
153158
#remapClass = getattr(remap, alg)
154159
remapClass = remap.Density()
155-
156-
if chip == None: # Read full image because no chip specified
157-
cmplx = self.complex_image
158-
elif len(chip) == 4: # chip size entered with pixel coordinates
159-
cmplx = self.complex_image[chip[0]:chip[1], chip[2]:chip[3]]
160-
else:
161-
raise ValueError('chip shoudl be formed as [rowStart, rowEnd, ColStart, ColEnd]')
162-
160+
cmplx = self.complex_image
161+
print(cmplx)
163162
image = remapClass(cmplx)
164163
if display:
165164
import matplotlib.pyplot as plt

sarpy/io/sarkitFastReader/FastReadSIDD.py

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -33,28 +33,29 @@
3333
class SIDD_Fast_Reader:
3434

3535
def __init__(self, fname, metaformat = 'wrapped', preload = False, display= False):
36-
with open(fname, 'rb') as f, sksidd.NitfReader(f) as reader:
36+
self.f = open(fname, 'rb')
37+
reader = sksidd.NitfReader(self.f)
3738

38-
# Create metadata attribute with SARKit metadata options
39+
# Create metadata attribute with SARKit metadata options
3940

4041

41-
if metaformat == 'wrapped':
42-
Meta = sksidd.ElementWrapper(reader.metadata.images[0].xmltree.getroot())
43-
elif metaformat == 'helper':
44-
Meta = sksidd.XmlHelper(reader.metadata.images[0])
45-
else:
46-
Meta = reader.metadata.images[0]
47-
metaformat = 'xmltree'
42+
if metaformat == 'wrapped':
43+
Meta = sksidd.ElementWrapper(reader.metadata.images[0].xmltree.getroot())
44+
elif metaformat == 'helper':
45+
Meta = sksidd.XmlHelper(reader.metadata.images[0])
46+
else:
47+
Meta = reader.metadata.images[0]
48+
metaformat = 'xmltree'
4849

49-
self.metadata = Meta
50-
self.reader = reader
50+
self.metadata = Meta
51+
self.reader = reader
5152

52-
if preload:
53-
image = reader.read_image(0)
54-
self.image = image
55-
else:
56-
self.image = None
53+
if preload:
54+
self.image = reader.read_image(0)
55+
56+
else:
57+
self.image = None
5758

58-
if display and preload:
59-
import matplotlib.pyplot as plt
60-
plt.imshow(image, cmap='gray')
59+
if display and preload:
60+
import matplotlib.pyplot as plt
61+
plt.imshow(self.image, cmap='gray')

0 commit comments

Comments
 (0)