Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
A
aliby-mirror
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Swain Lab
aliby
aliby-mirror
Commits
bdae0e8a
Commit
bdae0e8a
authored
3 years ago
by
Alán Muñoz
Browse files
Options
Downloads
Patches
Plain Diff
simplify parameter names
Former-commit-id: cb152abd7b796a65237a544fe20d1f126147b97a
parent
1fd119ba
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
core/processes/merger.py
+7
-5
7 additions, 5 deletions
core/processes/merger.py
core/processes/picker.py
+2
-0
2 additions, 0 deletions
core/processes/picker.py
core/processor.py
+31
-28
31 additions, 28 deletions
core/processor.py
with
40 additions
and
33 deletions
core/processes/merger.py
+
7
−
5
View file @
bdae0e8a
from
postprocessor.core.processes.base
import
ParametersABC
,
ProcessABC
from
postprocessor.core.processes.base
import
ParametersABC
,
ProcessABC
from
postprocessor.core.functions.tracks
import
clean_tracks
,
merge_tracks
,
join_tracks
from
postprocessor.core.functions.tracks
import
get_joinable
class
mergerParameters
(
ParametersABC
):
class
mergerParameters
(
ParametersABC
):
...
@@ -52,7 +52,9 @@ class merger(ProcessABC):
...
@@ -52,7 +52,9 @@ class merger(ProcessABC):
super
().
__init__
(
parameters
)
super
().
__init__
(
parameters
)
def
run
(
self
,
signal
):
def
run
(
self
,
signal
):
merged
,
_
=
merge_tracks
(
signal
)
# , min_len=self.window + 1)
joinable
=
get_joinable
(
signal
)
indices
=
(
*
zip
(
*
merged
.
index
.
tolist
()),)
# merged, _ = merge_tracks(signal) # , min_len=self.window + 1)
names
=
merged
.
index
.
names
# indices = (*zip(*merged.index.tolist()),)
return
{
name
:
ids
for
name
,
ids
in
zip
(
names
,
indices
)}
# names = merged.index.names
# return {name: ids for name, ids in zip(names, indices)}
return
joinable
This diff is collapsed.
Click to expand it.
core/processes/picker.py
+
2
−
0
View file @
bdae0e8a
...
@@ -93,6 +93,8 @@ class picker(ProcessABC):
...
@@ -93,6 +93,8 @@ class picker(ProcessABC):
def
run
(
self
,
signals
):
def
run
(
self
,
signals
):
for
alg
in
self
.
sequence
:
for
alg
in
self
.
sequence
:
if
alg
==
"
condition
"
:
pass
self
.
signals
=
getattr
(
self
,
"
pick_by_
"
+
alg
)(
signals
)
self
.
signals
=
getattr
(
self
,
"
pick_by_
"
+
alg
)(
signals
)
return
self
.
signals
return
self
.
signals
...
...
This diff is collapsed.
Click to expand it.
core/processor.py
+
31
−
28
View file @
bdae0e8a
...
@@ -27,13 +27,13 @@ class PostProcessorParameters(ParametersABC):
...
@@ -27,13 +27,13 @@ class PostProcessorParameters(ParametersABC):
def
__init__
(
def
__init__
(
self
,
self
,
processe
s
=
{},
target
s
=
{},
process_
parameters
=
{},
parameters
=
{},
process_
outpaths
=
{},
outpaths
=
{},
):
):
self
.
processe
s
:
Dict
=
processe
s
self
.
target
s
:
Dict
=
target
s
self
.
process_
parameters
:
Dict
=
process_
parameters
self
.
parameters
:
Dict
=
parameters
self
.
process_
outpaths
:
Dict
=
process_
outpaths
self
.
outpaths
:
Dict
=
outpaths
def
__getitem__
(
self
,
item
):
def
__getitem__
(
self
,
item
):
return
getattr
(
self
,
item
)
return
getattr
(
self
,
item
)
...
@@ -42,7 +42,7 @@ class PostProcessorParameters(ParametersABC):
...
@@ -42,7 +42,7 @@ class PostProcessorParameters(ParametersABC):
def
default
(
cls
,
kind
=
None
):
def
default
(
cls
,
kind
=
None
):
if
kind
==
"
defaults
"
or
kind
==
None
:
if
kind
==
"
defaults
"
or
kind
==
None
:
return
cls
(
return
cls
(
processe
s
=
{
target
s
=
{
"
prepost
"
:
{
"
prepost
"
:
{
"
merger
"
:
"
/extraction/general/None/area
"
,
"
merger
"
:
"
/extraction/general/None/area
"
,
"
picker
"
:
[
"
/extraction/general/None/area
"
],
"
picker
"
:
[
"
/extraction/general/None/area
"
],
...
@@ -51,9 +51,14 @@ class PostProcessorParameters(ParametersABC):
...
@@ -51,9 +51,14 @@ class PostProcessorParameters(ParametersABC):
"
dsignal
"
:
[
"
/extraction/general/None/area
"
],
"
dsignal
"
:
[
"
/extraction/general/None/area
"
],
# "savgol": ["/extraction/general/None/area"],
# "savgol": ["/extraction/general/None/area"],
},
},
"
process_parameters
"
:
{},
"
process_outpaths
"
:
{},
},
},
parameters
=
{
"
prepost
"
:
{
"
merger
"
:
mergerParameters
.
default
(),
"
picker
"
:
pickerParameters
.
default
(),
}
},
outpaths
=
{},
)
)
def
to_dict
(
self
):
def
to_dict
(
self
):
...
@@ -68,20 +73,20 @@ class PostProcessor:
...
@@ -68,20 +73,20 @@ class PostProcessor:
self
.
_writer
=
Writer
(
filename
)
self
.
_writer
=
Writer
(
filename
)
# self.outpaths = parameters["outpaths"]
# self.outpaths = parameters["outpaths"]
self
.
merger
=
merger
(
parameters
[
"
p
rocesse
s
"
][
"
prepost
"
][
"
merger
"
])
self
.
merger
=
merger
(
parameters
[
"
p
arameter
s
"
][
"
prepost
"
][
"
merger
"
])
self
.
picker
=
picker
(
self
.
picker
=
picker
(
parameters
=
parameters
[
"
p
rocesse
s
"
][
"
prepost
"
][
"
picker
"
],
parameters
=
parameters
[
"
p
arameter
s
"
][
"
prepost
"
][
"
picker
"
],
cells
=
Cells
.
from_source
(
filename
),
cells
=
Cells
.
from_source
(
filename
),
)
)
self
.
process_
classfun
=
{
self
.
classfun
=
{
process
:
self
.
get_process
(
process
)
process
:
self
.
get_process
(
process
)
for
process
in
parameters
[
"
processe
s
"
][
"
processes
"
].
keys
()
for
process
in
parameters
[
"
target
s
"
][
"
processes
"
].
keys
()
}
}
self
.
process_
parameters
=
{
self
.
parameters
=
{
process
:
self
.
get_parameters
(
process
)
process
:
self
.
get_parameters
(
process
)
for
process
in
parameters
[
"
processe
s
"
][
"
processes
"
]
for
process
in
parameters
[
"
target
s
"
][
"
processes
"
]
}
}
self
.
processe
s
=
parameters
[
"
processe
s
"
]
self
.
target
s
=
parameters
[
"
target
s
"
]
@staticmethod
@staticmethod
def
get_process
(
process
):
def
get_process
(
process
):
...
@@ -103,12 +108,12 @@ class PostProcessor:
...
@@ -103,12 +108,12 @@ class PostProcessor:
def
run_prepost
(
self
):
def
run_prepost
(
self
):
"""
Important processes run before normal post-processing ones
"""
"""
Important processes run before normal post-processing ones
"""
merge_events
=
self
.
merger
.
run
(
self
.
_signal
[
self
.
prepost
[
"
merger
"
]])
merge_events
=
self
.
merger
.
run
(
self
.
_signal
[
self
.
targets
[
"
prepost
"
]
[
"
merger
"
]])
with
h5py
.
File
(
self
.
filename
,
"
r
"
)
as
f
:
with
h5py
.
File
(
self
.
_
filename
,
"
r
"
)
as
f
:
prev_idchanges
=
self
.
_signal
.
get_id_changes
()
prev_idchanges
=
self
.
_signal
.
get_id_changes
()
changes_history
=
prev_idchanges
+
merge_events
+
picks
changes_history
=
prev_idchanges
+
[
merge_events
]
#
+
[
picks
]
self
.
_writer
.
write
(
"
/id_changes
"
,
data
=
changes_history
)
self
.
_writer
.
write
(
"
/id_changes
"
,
data
=
changes_history
)
self
.
_writer
.
write
(
self
.
_writer
.
write
(
"
/postprocessing/merge_events/
"
,
"
/postprocessing/merge_events/
"
,
...
@@ -116,7 +121,7 @@ class PostProcessor:
...
@@ -116,7 +121,7 @@ class PostProcessor:
meta
=
{
"
source
"
:
"
/cell_info/
"
},
meta
=
{
"
source
"
:
"
/cell_info/
"
},
)
)
changes_history
+=
picks
changes_history
+=
picks
picks
=
self
.
picker
.
run
(
self
.
_signal
[
self
.
processes
[
"
picker
"
][
0
]])
picks
=
self
.
picker
.
run
(
self
.
_signal
[
self
.
targets
[
"
prepost
"
]
[
"
picker
"
][
0
]])
# self._writer.write()
# self._writer.write()
def
run
(
self
):
def
run
(
self
):
...
@@ -124,13 +129,11 @@ class PostProcessor:
...
@@ -124,13 +129,11 @@ class PostProcessor:
for
process
,
datasets
in
self
.
processes
[
"
processes
"
].
items
():
for
process
,
datasets
in
self
.
processes
[
"
processes
"
].
items
():
parameters
=
(
parameters
=
(
self
.
process_parameters
[
process
].
from_dict
(
self
.
parameters
[
process
].
from_dict
(
self
.
parameters
[
process
])
self
.
process_parameters
[
process
]
if
process
in
self
.
parameters
[
"
processes
"
][
"
parameters
"
]
)
else
self
.
parameters
[
process
].
default
()
if
process
in
self
.
parameters
[
"
processes
"
][
"
process_parameters
"
]
else
self
.
process_parameters
[
process
].
default
()
)
)
loaded_process
=
self
.
process_
classfun
[
process
](
parameters
)
loaded_process
=
self
.
classfun
[
process
](
parameters
)
for
dataset
in
datasets
:
for
dataset
in
datasets
:
if
isinstance
(
dataset
,
list
):
# multisignal process
if
isinstance
(
dataset
,
list
):
# multisignal process
signal
=
[
self
.
_signal
[
d
]
for
d
in
dataset
]
signal
=
[
self
.
_signal
[
d
]
for
d
in
dataset
]
...
@@ -141,8 +144,8 @@ class PostProcessor:
...
@@ -141,8 +144,8 @@ class PostProcessor:
result
=
loaded_process
.
run
(
signal
)
result
=
loaded_process
.
run
(
signal
)
if
process
in
self
.
parameters
.
to_dict
()[
"
process_
outpaths
"
]:
if
process
in
self
.
parameters
.
to_dict
()[
"
outpaths
"
]:
outpath
=
self
.
parameters
.
to_dict
()[
"
process_
outpaths
"
][
process
]
outpath
=
self
.
parameters
.
to_dict
()[
"
outpaths
"
][
process
]
elif
isinstance
(
dataset
,
list
):
elif
isinstance
(
dataset
,
list
):
# If no outpath defined, place the result in the minimum common
# If no outpath defined, place the result in the minimum common
# branch of all signals used
# branch of all signals used
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
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!
Save comment
Cancel
Please
register
or
sign in
to comment