Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Bo Zhang
csst
Commits
5d32ace3
Commit
5d32ace3
authored
Apr 13, 2022
by
BO ZHANG
🏀
Browse files
tweaks
parent
c99d5409
Changes
2
Hide whitespace changes
Inline
Side-by-side
csst/msc/__init__.py
View file @
5d32ace3
from
.data
import
CsstMscImgData
\ No newline at end of file
from
.data
import
CsstMscImgData
csst/msc/instrument.py
View file @
5d32ace3
...
...
@@ -19,6 +19,10 @@ class CsstMscInstrumentProc(CsstProcessor):
def
__init__
(
self
):
super
(
CsstMscInstrumentProc
).
__init__
()
self
.
__img
=
None
self
.
__wht
=
None
self
.
__flg
=
None
def
_do_fix
(
self
,
raw
,
bias
,
dark
,
flat
):
'''仪器效应改正
...
...
@@ -31,9 +35,9 @@ class CsstMscInstrumentProc(CsstProcessor):
exptime: 曝光时长
'''
self
.
__img
=
np
.
divide
(
raw
.
data
-
bias
.
data
-
dark
.
data
*
raw
.
exptime
,
flat
.
data
,
raw
.
data
-
bias
-
dark
*
raw
.
exptime
,
flat
,
out
=
np
.
zeros_like
(
raw
.
data
,
float
),
where
=
(
flat
.
data
!=
0
),
where
=
(
flat
!=
0
),
)
def
_do_badpix
(
self
,
flat
):
...
...
@@ -44,8 +48,9 @@ class CsstMscInstrumentProc(CsstProcessor):
Args:
flat: 平场
'''
med
=
np
.
median
(
flat
.
data
)
flg
=
(
flat
.
data
<
0.5
*
med
)
|
(
1.5
*
med
<
flat
.
data
)
# TODO: flat-bias?
med
=
np
.
median
(
flat
)
flg
=
(
flat
<
0.5
*
med
)
|
(
1.5
*
med
<
flat
)
self
.
__flg
=
self
.
__flg
|
(
flg
*
1
)
def
_do_hot_and_warm_pix
(
self
,
dark
,
exptime
,
rdnoise
):
...
...
@@ -60,7 +65,7 @@ class CsstMscInstrumentProc(CsstProcessor):
exptime: 曝光时长
rdnoise: 读出噪声
'''
tmp
=
dark
.
data
*
exptime
tmp
=
dark
*
exptime
tmp
[
tmp
<
0
]
=
0
flg
=
1
*
rdnoise
**
2
<=
tmp
# 不确定是否包含 暂定包含
self
.
__flg
=
self
.
__flg
|
(
flg
*
2
)
...
...
@@ -136,7 +141,7 @@ class CsstMscInstrumentProc(CsstProcessor):
for
name
in
kwargs
:
self
.
_switches
[
name
]
=
kwargs
[
name
]
def
run
(
self
,
raw
:
CsstMscImgData
,
bias
,
dark
,
flat
):
def
run
(
self
,
raw
:
CsstMscImgData
,
bias
:
np
.
ndarray
,
dark
:
np
.
ndarray
,
flat
:
np
.
ndarray
):
assert
isinstance
(
raw
,
CsstMscImgData
)
self
.
__img
=
np
.
copy
(
raw
.
data
)
...
...
@@ -164,4 +169,7 @@ class CsstMscInstrumentProc(CsstProcessor):
return
img
,
wht
,
flg
def
cleanup
(
self
):
self
.
__img
=
None
self
.
__wht
=
None
self
.
__flg
=
None
pass
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment