diff --git a/.github/workflows/ross-test.yml b/.github/workflows/ross-test.yml index d548a1d..d749acf 100644 --- a/.github/workflows/ross-test.yml +++ b/.github/workflows/ross-test.yml @@ -14,18 +14,18 @@ jobs: strategy: max-parallel: 5 steps: - - uses: actions/checkout@v3 - - name: Set up Python 3.9 - uses: actions/setup-python@v3 - with: - python-version: '3.9' - - name: Add conda to system path - run: | - # $CONDA is an environment variable pointing to the root of the miniconda directory - echo $CONDA/bin >> $GITHUB_PATH - - name: Install dependencies - run: | - conda env update --file environment.yml --name base - - name: Test with pytest - run: | - python -m pytest -q -rf --tb=short --cov-report term-missing --cov=./ + - uses: actions/checkout@v3 + - name: Set up Python 3.9 + uses: actions/setup-python@v3 + with: + python-version: '3.9' + - name: Add conda to system path + run: | + # $CONDA is an environment variable pointing to the root of the miniconda directory + echo $CONDA/bin >> $GITHUB_PATH + - name: Install dependencies + run: | + conda env update --file environment.yml --name base + - name: Test with pytest + run: | + python -m pytest -q -rf --tb=short --cov-report term-missing --cov=./ diff --git a/README.md b/README.md index b351040..49e845f 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,8 @@ ![ROSS Test](https://github.com/ramintoosi/ROSS/actions/workflows/ross-test.yml/badge.svg) -ROSS v2 (alpha) is the Python version of offline spike sorting software implemented based on the methods described in the +ROSS v2 (alpha) is the Python version of offline spike sorting software implemented based on the methods described in +the paper entitled [An automatic spike sorting algorithm based on adaptive spike detection and a mixture of skew-t distributions](https://www.nature.com/articles/s41598-021-93088-w). ( Official Python Implementation) @@ -12,7 +13,8 @@ Official Python Implementation) ### Important Note on ROSS v2 ROSS v2 is implemented based on the client-server architecture. In the alpha version, the GUI and processing units are -completely separated and their connection is based on Restful APIs. Now, you are able to run the light GUI on a simple machine while the data and algorithms would be executed on a +completely separated and their connection is based on Restful APIs. Now, you are able to run the light GUI on a simple +machine while the data and algorithms would be executed on a separate server in your lab. Please carefully read the docs and check our tutorial videos. ## Requirements @@ -32,6 +34,7 @@ separate server in your lab. Please carefully read the docs and check our tutori 2. Run the UI by typing ```python ./ross_ui/main.py``` in the terminal. **Note:** If you have a separate server, run ```step 1``` in your server and ```step 2``` in your personal computer. + 3. The first time you want to use the software, you must define a user as follows: - In opened window, click on ```Options``` ---> ```Sign In/Up``` , enter the desired username and password, click @@ -88,6 +91,7 @@ ROSS v2, same as v1, provides useful tools for spike detection, automatic and ma ![image](./images/vis2.png) # Citation + If ROSS helps your research, please cite our paper in your publications. ``` diff --git a/ross_backend/rutils/io.py b/ross_backend/rutils/io.py index ede3fc0..4ded073 100644 --- a/ross_backend/rutils/io.py +++ b/ross_backend/rutils/io.py @@ -3,8 +3,8 @@ from pathlib import Path from uuid import uuid4 -from scipy.io import loadmat import numpy as np +from scipy.io import loadmat Raw_data_path = os.path.join(Path(__file__).parent, '../ross_data/Raw_Data') Path(Raw_data_path).mkdir(parents=True, exist_ok=True) diff --git a/ross_ui/controller/mainWindow.py b/ross_ui/controller/mainWindow.py index 78be937..9e7261d 100644 --- a/ross_ui/controller/mainWindow.py +++ b/ross_ui/controller/mainWindow.py @@ -7,7 +7,6 @@ import matplotlib.pyplot as plt import numpy as np -import pandas as pd import pyqtgraph import pyqtgraph.exporters import pyqtgraph.opengl as gl @@ -16,7 +15,6 @@ from PyQt5 import QtCore, QtWidgets, QtGui from PyQt5.QtGui import QPixmap, QTransform, QColor, QIcon from colour import Color -from nptdms import TdmsFile from shapely.geometry import Point, Polygon from sklearn.neighbors import NearestNeighbors