https://github.com/aehrc/sianno-xray
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.2%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: aehrc
- License: other
- Language: Python
- Default Branch: main
- Size: 5.21 MB
Statistics
- Stars: 0
- Watchers: 9
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Sianno Wrist Fracture Grader
1. Create Virtual Environment (VE)
- Ensure python (v.3 or above) is installed
- In a terminal or cmd prompt, navigate (cd) into the directory where you want the VE to be placed.
cd ~\my_venvs
- Run the command:
py -m venv venv <your_VE_name>
- It may take a minute.
- To activate the environment, navigate into the VE's parent folder and run the following:
cd <your_VE_name>
Scripts\activate
- You can deactivate the VE at anytime by running the command:
deactivate
2. Install the Required Python Libraries
- Navigate to the simple_grader directory (note - sianno-xray is the branch name and may differ).
cd ~\<grader file path>\sianno-xray
- Install required libraries using the following command, making sure that the VE is activated:
>
pip install -r requirements.txt - Any conflicts that arise from the release of new versions can rear themselves here - troublesome or conflicting versions can be updated appropriately in requirements.txt to resolve them.
3. Update Media Root
- Open the simple_grader in an IDE. The author is using Visual Studio Code.
- In
\simple_grader\simple_grader\open the settings.py file. Change the MEDIA_ROOT variable to the path where you want to store the wrist-fracture images and their annotation .JSON files.
Alternatively, create a new settings file (or use the template settingsuser.py), import all from settings.py (
from .settings import *) and override the MEDIAROOT:
1 from .settings import *
2 MEDIA_ROOT = "/<media file path>/grader_images"
- For more information on Django settings, see the settings page of the Django Documentation.
4. Run the Simple Grader
- The simple grader is run using the Python web framework Django.
- From the IDE terminal - with the VE activated - run the simple_grader server using the following command:
>
py manage.py runserver - The terminal will output the port that the server is running on. If the 8000 port (the default port) is in use, or you want to elect a different starting port, add the desired port to the runserver command:
py manage.py runserver 8080
- If a separate settings file is to be used, specify it like so; note that the command is in python sytax so the '.py' file extension will need to be ommitted from the settings filename:
>
py manage.py runserver 8080 --settings=simple_grader.<settings filename> For more information see the Django Tutorial.
Navigate to the Sianno homepage by following the IP:Port address, followed by '/sianno'; for example, 127.0.0.1:8080/sianno
5. Credentials
- Log in using the following credentials:
- Username: Superuser
- Password: Superuser
- A new user account can be created via the admin page. This can be accessed by navigating to the server address followed by '/admin'; for example, 127.0.0.1:8080/admin.
6. Using the Grader
The Sianno index page displays a draft list and a reviewed list. All un-annotated images are listed under the Drafts heading; all annotated images are listed under the Reviewed section. Images can be uploaded by accessing the Actions dropdown list in the top right corner.
Once an image has been uploaded it will appear in the Draft list. Select it to be redirected to the annotation page (sianno/detail). Images can be annotated either using a Rectangular tool or a Polygon tool. To change between the two, open /retina_grader/views.py. Under the def detail(request) function, assign the annotation to either 'rect' or 'poly' (remember to ctrl-s).
Using the rectangle tool, click and drag to begin drawing. Click again to set the rectangle. The rectangle can be moved by clicking and dragging, and it can be resized by clicking and dragging on the circles on the top-left and bottom-right of the rectangle. Double-clicking on the rectangle will bring up a modal that allows bone number annotation.
Using the polygon tool, click on the 'Draw Polygon' button to begin annotation. To close the polygon, hold shift and click. To delete the polygon, select it (it will be highlighted when selected) and press the 'Delete Selected' button. Double-click on the polygon to annotate the bone number from the modal menu.
7. Using the Django Database
For information about querying the database, read the Django documentation here.
7.1 Delete documents
All Polygon, Rectangle, Point, and Grading objects are linked by foreign key with a Document object (see retina_grader/models.py), and delete on cascade when the corresponding Document object is deleted. To delete documents for a clean start, do the following:
- Start the python shell from the program terminal:
py manage.py shell - Import models:
from retina_grader.models import * - Select all documents:
Document.objects.all() - Delete all documents:
Document.objects.all().delete()
It's a good idea to also manually delete documents and .json files from your media folder.
Owner
- Name: The Australian e-Health Research Centre
- Login: aehrc
- Kind: organization
- Website: https://aehrc.com
- Twitter: ehealthresearch
- Repositories: 101
- Profile: https://github.com/aehrc
The Australian e-Health Research Centre (AEHRC) is CSIRO’s digital health research program.
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: over 1 year ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- Django ==3.0.7
- Pillow ==8.0.0
- asgiref ==3.2.7
- astroid ==2.4.2
- isort ==4.3.21
- lazy-object-proxy ==1.4.3
- mccabe ==0.6.1
- numpy *
- pydicom *
- pylint ==2.5.3
- pytz ==2020.1
- six ==1.15.0
- sqlparse ==0.3.1
- toml ==0.10.1
- typed-ast ==1.4.1
- wrapt ==1.12.1