Skip to main content

XNet

XNet is a Convolutional Neural Network designed for the segmentation of X-Ray images into bone, soft tissue and open beam regions. Specifically, it performs well on small datasets with the aim to minimise the number of false positives in the soft tissue class.

Architecture

  • Built on a typical encoder-decoder architecture as inspired by SegNet.

  • Additional feature extraction stage, with weight sharing across some layers.

  • Fine and coarse grained feature preservation through concatenation of layers.

  • L2 regularisation at each of the convolutional layers, to decrease overfitting.

The architecture is described in the XNet.py file.

Output

XNet outputs a mask of equal size to the input images.

Training

XNet is trained on a small dataset which has undergone augmention. Examples of this augmentation step can be found in the augmentations.ipynb notebook in the Augmentations folder. Similarly the Training folder contains python scripts that perform the necessary augementations.

Running train.py from the Training folder calls various other scripts to perform one of two possible ways of augmenting the images:

  • 'On the fly augmentation' where a new set of augmentations is generated at each epoch.

  • Pre-augmented images.

Benchmarking

XNet was benchmarked against two of the leading segmentation networks:

  • Simplified SegNet (found in the SimpleSegNet.py file)

  • UNet (found in the UNet.py file)

Data

We trained on a dataset of:

  • 150 X-Ray images.

  • No scatter correction.

  • 1500x1500 .tif image downsampled to 200x200

  • 20 human body part classes.

  • Highly imbalanced.

As this work grew out of work with a corporation we are sadly unable to share the propriatory data we used.

More information

For more information and context see the conference poster Poster.pdf.

Please note that some of the path variables may need to be corrected in order to utilise the current filing system. These are planned to be updated in the future.

Release files for durham-XNet 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for durham-XNet 0.0.4
File Size Uploaded
durham-XNet-0.0.4.tar.gz 18.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for durham-XNet 0.0.4
File Interpreter ABI Platform
durham_XNet-0.0.4-py3-none-any.whl Python 3 none any Details

Total release size: 55.3 kB

Release files / durham-XNet-0.0.4.tar.gz

Download URL durham-XNet-0.0.4.tar.gz
Size 18.9 kB
Tags Source
SHA-256 checksum
How to use checksums
770d952dc0302fdb890ba6a7f58eeca3db94cc96c78594f2006b59dba2ffe8dc
BLAKE2b-256 checksum
How to use checksums
7649d0e07ca3b4782a75ebb3ee34c318b883d091b2e74fbf676fca7735252b3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.6.7

Release files / durham_XNet-0.0.4-py3-none-any.whl

Download URL durham_XNet-0.0.4-py3-none-any.whl
Size 36.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
017d1bdba09cf99c97f6caf584dc1d621560a6091227f2cee25708b5dc579319
BLAKE2b-256 checksum
How to use checksums
872481a907f0434011030f1dbcb23c329fbb3a1f32f62c227e40a1141bb11f65
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.6.7

Release history Release notifications | RSS feed

This release

0.0.4 This release

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page