Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
FSL
fslpy
Commits
4c72d37f
Commit
4c72d37f
authored
Feb 09, 2021
by
Paul McCarthy
🚵
Browse files
Merge branch 'rel/3.5.3' into 'v3.5'
Rel/3.5.3 See merge request fsl/fslpy!282
parents
548ec054
3255464e
Pipeline
#7792
passed with stages
in 1 minute and 47 seconds
Changes
4
Pipelines
2
Show whitespace changes
Inline
Side-by-side
CHANGELOG.rst
View file @
4c72d37f
...
...
@@ -2,6 +2,17 @@ This document contains the ``fslpy`` release history in reverse chronological
order.
3.5.3 (Tuesday 9th February 2021)
---------------------------------
Fixed
^^^^^
* Fixed a bug in :func:`.featanalysis.loadClusterResults` (!281).
3.5.2 (Friday 29th January 2021)
---------------------------------
...
...
@@ -12,8 +23,8 @@ Fixed
* Adjusted the :func:`.dicom.scanDir` function so that it will set a
default value for ``SeriesDescription`` if it is not present in the
``dcm2niix`` ``json`` output.
* Fixed some issues with API documentation generation.
``dcm2niix`` ``json`` output
(!279)
.
* Fixed some issues with API documentation generation
(!279)
.
3.5.1 (Thursday 21st January 2021)
...
...
fsl/data/featanalysis.py
View file @
4c72d37f
...
...
@@ -373,7 +373,7 @@ def loadClusterResults(featdir, settings, contrast):
if
not
op
.
exists
(
clusterFile
):
return
None
# In higher lev
l
e analysis run in some standard
# In higher leve
l
analysis run in some standard
# space, the cluster coordinates are in standard
# space. We transform them to voxel coordinates.
# later on.
...
...
@@ -480,13 +480,13 @@ def loadClusterResults(featdir, settings, contrast):
zcog
=
[
c
.
zcogx
,
c
.
zcogy
,
c
.
zcogz
]
copemax
=
[
c
.
copemaxx
,
c
.
copemaxy
,
c
.
copemaxz
]
zmax
=
affine
.
transform
([
zmax
],
coordXform
)[
0
]
.
round
()
zcog
=
affine
.
transform
([
zcog
],
coordXform
)[
0
]
.
round
()
copemax
=
affine
.
transform
([
copemax
],
coordXform
)[
0
]
.
round
()
zmax
=
affine
.
transform
([
zmax
],
coordXform
)[
0
]
zcog
=
affine
.
transform
([
zcog
],
coordXform
)[
0
]
copemax
=
affine
.
transform
([
copemax
],
coordXform
)[
0
]
c
.
zmaxx
,
c
.
zmaxy
,
c
.
zmaxz
=
zmax
c
.
zcogx
,
c
.
zcogy
,
c
.
zcogz
=
zcog
c
.
copemax
,
c
.
copemaxy
,
c
.
copemaxz
=
copemax
c
.
copemax
x
,
c
.
copemaxy
,
c
.
copemaxz
=
copemax
return
clusters
...
...
fsl/version.py
View file @
4c72d37f
...
...
@@ -47,7 +47,7 @@ import re
import
string
__version__
=
'3.5.
2
'
__version__
=
'3.5.
3
'
"""Current version number, as a string. """
...
...
tests/test_featanalysis.py
View file @
4c72d37f
...
...
@@ -301,14 +301,15 @@ def test_loadClusterResults():
with
tests
.
testdir
()
as
testdir
:
# For higher level analyses, the
# loadClusterResults function peeks
# at the FEAT input data file
# header, so we have to generate it.
# work from a copy of the test data directory
newfeatdir
=
op
.
join
(
testdir
,
'analysis.feat'
)
shutil
.
copytree
(
op
.
join
(
datadir
,
featdir
),
newfeatdir
)
featdir
=
newfeatdir
# For higher level analyses, the
# loadClusterResults function peeks
# at the FEAT input data file
# header, so we have to generate it.
if
not
firstlevel
:
datafile
=
op
.
join
(
featdir
,
'filtered_func_data.nii.gz'
)
data
=
np
.
random
.
randint
(
1
,
10
,
(
91
,
109
,
91
))
...
...
@@ -333,6 +334,35 @@ def test_loadClusterResults():
assert
featanalysis
.
loadClusterResults
(
featdir
,
settings
,
0
)
is
None
# The above loop just checks that the number of
# clusters loaded for each analysis was correct.
# Below we check that the cluster data was loaded
# correctly, just for one analysis
featdir
=
op
.
join
(
datadir
,
'1stlevel_1.feat'
)
settings
=
featanalysis
.
loadSettings
(
featdir
)
cluster
=
featanalysis
.
loadClusterResults
(
featdir
,
settings
,
0
)[
0
]
expected
=
{
'index'
:
1
,
'nvoxels'
:
296
,
'p'
:
1.79e-27
,
'logp'
:
26.7
,
'zmax'
:
6.03
,
'zmaxx'
:
34
,
'zmaxy'
:
10
,
'zmaxz'
:
1
,
'zcogx'
:
31.4
,
'zcogy'
:
12.3
,
'zcogz'
:
1.72
,
'copemax'
:
612
,
'copemaxx'
:
34
,
'copemaxy'
:
10
,
'copemaxz'
:
1
,
'copemean'
:
143
}
for
k
,
v
in
expected
.
items
():
assert
np
.
isclose
(
v
,
getattr
(
cluster
,
k
))
def
test_getDataFile
():
paths
=
[
'analysis.feat/filtered_func_data.nii.gz'
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a 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