Skip to content

Commit d6d29c2

Browse files
authored
298 Update PyDesigner for Official v1.0.0 Release (#299)
* Update license information * Update gitignore to avoid builds * Update documentation * Update Dockerfiles for latest FSL installer * Remove AKC from standard processing * Update docs
1 parent a19c3df commit d6d29c2

8 files changed

Lines changed: 38 additions & 11 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ __pycache__/
66
*.egg-info
77
.vscode/
88
/docs/build/
9+
dist/
910

1011
# Files to ignore
1112
.DS_Store

CHANGELOG.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ page
77
`v1.0.0`_
88
------------
99

10-
Jul 8, 2022
10+
Jan 13, 2023
1111

1212
**Added**
1313

@@ -16,6 +16,7 @@ Jul 8, 2022
1616
* ODF computations and spherical harmonic expansion for DTI and DKI
1717
* Option to add user-defined map for tractography stopping criteria
1818
* Added option to import multiple custom maps into DSI studio file
19+
* PyDesigner can now be pulled from PyPI with `pip install pydesigner`
1920

2021
**Changed**
2122

README.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ PyDesigner makes this easy, and you will love it!
3030
:target: https://pydesigner.readthedocs.io/en/latest/
3131
:alt: Click here to view documentation
3232

33+
.. image:: https://img.youtube.com/vi/mChQFuQqX3k/maxresdefault.jpg
34+
:width: 512pt
35+
:alt: PyDesigner Walkthrough Video: Software Setup & Usage
36+
:target: https://www.youtube.com/watch?v=mChQFuQqX3k
37+
3338
Notable Features
3439
================
3540

@@ -48,6 +53,7 @@ Notable Features
4853
- Works with **DTI**, **DKI**, **WMTI**, **FBI**, or **FBWM** datasets
4954
- Supports **multi-TE** dataset processing
5055
- **Tractography ready:** Computes ODF spherical harmonic expansion for MRtrix3, and .fib files for DSI Studio
56+
- Installable modules for **Python or Jupyter Notebook scripting** of custom workflows
5157

5258

5359
We welcome all DTI/DKI researchers to evaluate this software and pass

designer/info.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
__maintainer__ = 'Siddhartha Dhiman'
2929
__email__ = 'bridge@musc.edu'
3030
__url__ = 'https://github.com/m-ama/PyDesigner'
31-
__license__='MPL 2.0'
31+
__license__='CUSTOM'
3232
__description__ = ('Python Port of NYU\'s Designer pipeline for dMRI '
3333
'processing')
3434
# Gets folder name where this file resides
@@ -63,7 +63,7 @@
6363
'Programming Language :: Python :: 3.7',
6464
'License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)',
6565
'Operating System :: OS Independent',
66-
'Topic :: Scientific/Engineering :: Bio-Informatics'
66+
'Topic :: Scientific/Engineering :: Bio-Informatics',
6767
'Topic :: Scientific/Engineering :: Information Analysis',
6868
'Topic :: Scientific/Engineering :: Mathematics',
6969
'Topic :: Scientific/Engineering :: Physics'

designer/pydesigner.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -153,8 +153,10 @@ def main():
153153
'(requires --denoise to generate a noisemap).')
154154
parser.add_argument('--nofit', action='store_true', default=False,
155155
help='Do not fit DTI or DKI tensors.')
156-
parser.add_argument('--noakc', action='store_true', default=False,
157-
help='Do not brute force K tensor outlier rejection.')
156+
parser.add_argument('--akc', action='store_true', default=False,
157+
help='Brute force K tensor outlier rejection. Applies '
158+
'a median filter to tensor voxels that exhibit AKC '
159+
'values of less than 2 and more than 10.')
158160
parser.add_argument('--nooutliers', action='store_true', default=False,
159161
help='Do not perform outlier correction on kurtosis '
160162
'fitting metrics.')
@@ -322,7 +324,7 @@ def main():
322324
# Can't do WMTI if no fit
323325
if args.nofit:
324326
stdmsg='--nofit given but '
325-
if args.noakc:
327+
if not args.akc:
326328
warningmsg+=msgstart+stdmsg+'--noakc'+override+'tensor fitting.\n'
327329
args.nofit = False
328330
if args.nooutliers:
@@ -949,7 +951,7 @@ def main():
949951
suffix=None,
950952
ext=ext,
951953
irlls=not args.nooutliers,
952-
akc=not args.noakc,
954+
akc=args.akc,
953955
l_max=args.l_max,
954956
res=args.t_res,
955957
n_fibers=args.t_fibers,
@@ -967,7 +969,7 @@ def main():
967969
suffix=None,
968970
ext=ext,
969971
irlls=not args.nooutliers,
970-
akc=not args.noakc,
972+
akc=args.akc,
971973
l_max=args.l_max,
972974
rectify = fbi_rectify,
973975
res=args.t_res,

docker/Dockerfile_develop

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ RUN echo "alias pip=pip3" >> ~/.bashrc && source ~/.bashrc
7474

7575
# Install FSL
7676
RUN curl https://fsl.fmrib.ox.ac.uk/fsldownloads/fslinstaller.py -o /tmp/fslinstaller.py
77-
RUN echo "/usr/local/fsl" | python2 /tmp/fslinstaller.py -V 6.0.3
77+
RUN python /tmp/fslinstaller.py -V 6.0.6 -d /usr/local/fsl
7878

7979
# Configure FSL Environment
8080
ENV FSLDIR=/usr/local/fsl

docker/Dockerfile_release

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,15 +67,15 @@ RUN rm /bin/sh && ln -s /bin/bash /bin/sh
6767
# Clone PyDesigner
6868
ADD install_pydesigner_release /tmp/install_pydesigner_release
6969
RUN sed -i 's/\r//g' /tmp/install_pydesigner_release
70+
RUN pip3 install cmake==3.22.0
7071
RUN chmod +x /tmp/install_pydesigner_release && bash /tmp/install_pydesigner_release
71-
RUN pip3 install cmake
7272
RUN cd /tmp/PyDesigner && pip3 install .
7373
RUN echo "alias python=python3" >> ~/.bashrc && source ~/.bashrc
7474
RUN echo "alias pip=pip3" >> ~/.bashrc && source ~/.bashrc
7575

7676
# Install FSL
7777
RUN curl https://fsl.fmrib.ox.ac.uk/fsldownloads/fslinstaller.py -o /tmp/fslinstaller.py
78-
RUN echo "/usr/local/fsl" | python2 /tmp/fslinstaller.py -V 6.0.3
78+
RUN python /tmp/fslinstaller.py -V 6.0.6 -d /usr/local/fsl
7979

8080
# Configure FSL Environment
8181
ENV FSLDIR=/usr/local/fsl

docs/source/installation/pydesigner.rst

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,23 @@ PyDesigner
44
PyD is an installable Python package deisgned to perform pre- and
55
post- processing of dMRI acquisitions.
66

7+
Easy Install
8+
------------
9+
PyDesigner can be installed using the PyPI package manager using the command
10+
11+
.. code-block:: console
12+
13+
$ pip install pydesigner
14+
15+
**Note**:
16+
Remember to switch to your conda environement before parsing this
17+
command.
18+
19+
That's it, you're done!
20+
21+
Instructions on installing PyDesigner manually from the GitHub repository
22+
are list below.
23+
724
Download
825
--------
926
You may clone the main `PyDesigner repository`_ for the latest build,

0 commit comments

Comments
 (0)