Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

TRW Assignment 1

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 10

Bahria University

(Islamabad Campus)

Department of Electrical Engineering

Technical Writing & Presentation Skills


Assignment no. 2

Name: Zainulabidin

Enrollment: 01-133162-099

Section: 7-D

Submitted to: Sir Imtiaz Alam

Date: 29/10/2019
TRW Assignment # 2
Topic: X-ray fracture detection using Machine learning

Abstract:
Computer-aided diagnosis is an active area of research.
Specifically, making use of medical images such as X-ray scans, MRI scans,
CAT scans etc. for quick, accurate & cost-effective diagnosis. Previous
works have also addressed problem of identifying fractures in X-ray
images via Machine learning. Automated detection of common fractures
can help reduce screenings done by doctors & let them analyze more
delicate cases. Our paper will build on the work done previously in
identifying fractures in X-ray scan images to address this problem. In the
1st stage, we start with pre-processing scan images. Then we move onto
extracting discriminative features. Lastly, these features are given as input
to different state-of-the-art classification algorithms to detect existence of
fracture. Experiments conducted on test images show our proposed system
to be accurate & effective.

Introduction:
A lot of people suffer from bone fractures worldwide. One of the
most common cause is osteoporotic fractures. International Osteoporosis
Foundation reports [1] that worldwide women have 30-40% risk of getting
osteoporotic fractures while men have a low 13% risk. In clinical practice,
radiologists in hospitals are required to visually inspect X-ray scan images in
order to determine area where fracture has occurred & its precise nature.
Usually radiologists have been found to miss areas of fracture after getting tired
of looking through images of healthy ones. Radiologic error is mainly divided
into cognitive and perceptual errors. Cognitive error accounts for 20-40 % of
the total whereas perceptual error account roughly for 20-40 % of total error
[2].
A computer vision can be developed to assist radiologists by screening images
for common cases & flagging suspicious/complex cases for it to be examined by
a radiologist. Automated screening can help us reduce workload, improve
timeliness & accuracy by directing doctors to complex cases. Therefore,
proposed system is extremely useful for radiologists & has become feasible now
that most of clinical radiology is going digital.
Fractures of a bone can occur in lots of different ways. There isn’t a single
algorithm that addresses and is able to classify all kinds of fractures. Our
approach is to develop a model specifically for detection of osteoporotic
fractures. Our paper presents our current research work on the detection of
fractures from X-ray scan images.

Literature Review/ Related Work:


First work to be published that we’ve
considered is that of Tian et. al [3]. The proposed method in the paper is
computing the angle between shaft axis & neck axis. It can detect only severe
fractures that causes significant changes in the neck-shaft angle. Second paper
we considered was of Yap et. al [4]which introduced us to a complimentary
method to the method proposed in first paper by analyzing disruption of the
trabecular pattern at femoral neck. This was achieved by extracting & analyzing
orientations to trabeculae using Gabor filters. Then we studied paper published
by Yage Xiang & his co-authors titled ‘Detection of femur fractures from X-ray
images’ [5]. Lastly, we studied the recent advances in medical imaging achieved
through application of machine learning [6].

Methodology:

Image Dataset:
For our experimental design of our proposed system, we’re making
use of X-ray scan images dataset provided to us by University of
Orleans, France [7]. This dataset can be used free for research
purposes. Our dataset consists of 140 X-ray scan images of 70
patients, of which 35 subjects are healthy(normal) and remaining
contain abnormalities(fractures). We have divided our dataset
randomly into 2 categories. 10% of it is our test dataset, 90%
remaining is our training dataset, 10-fold cross-validation.
Dataset pre-processing:
In order to apply machine learning techniques, we
made sure our image dataset is refined & pre-processed. We made use of
Python’s scikit-image, which is an open-source image processing library. We
applied Log transformation, an Image intensity transformation technique to
enhance images and make them suitable for next stage. Log transformation, a
type of logarithmic transformation can be defined by this formula

s = c log (r + 1).

Where s and r represent the pixel values of the output & input image and c is a
constant. The value 1 is added to each pixel value of the input image to make
sure that if there is a pixel intensity of 0 in the image, then log (0) is equal to
infinity. So, 1 is added, to make the minimum value at least 1.
During log transformation, the dark pixels in an image are expanded as
compare to the higher pixel values. The higher pixel values are kind of
compressed in log transformation. The value of c in the log transform adjust the
kind of enhancement you are looking for. This helps us increase the dynamic
range of grey level pixels for better visualization & differentiation of
foreground with background.
To further pre-process images, we applied Image segmentation techniques.
Image segmentation is the process of partitioning a digital image in our case X-
ray scans into multiple image segments which are sets of pixels, also known as
image objects [8]. We used image segmentation to simplify the representation
of our images into something that is more meaningful and easier to analyze for
our machine learning algorithms. We made use of balanced histogram
equalization, a very simple method used for automatic image thresholding [9]. In
this approach, our image is divided into 2 main classes namely background and
foreground.
The BHT method tries to find the optimum threshold level that divides the
histogram in two classes.
Feature Extraction & Selection:
The purpose of feature extraction is to convert a 2D
image into a feature vector, which is further utilized as input for the mining phase
of the classifier [10]. The extracted features provide characteristics of the input
image type to the classifier by considering the description of the relevant
properties of the image into feature vectors. We extracted 2 types of features
to describe the structure information, namely texture & frequency.
Texture features contains important information regarding underlying structural
arrangement of the surface of an image. A lot of texture features can be
extracted using Gray-level co-occurrence matrix (GLCM), which describes
patterns of gray-level repetition and is a well-known texture extraction method
[11].
We’ll be extracting contrast, correlation, energy, and homogeneity from it [12].

To extract frequency features, we’ll make use of discrete wavelet


decomposition/transform (DWT). DWT has been widely used as a fast algorithm
to obtain the wavelet transform of X-ray medical images [13].
Feature selection, for a given set of features attempts to select a subset of size
that leads to the maximization of some criterion function. In this paper, we
employed sequential forward selection (SFS) method to select the discriminative
features among the feature vector [14]. It starts with an empty feature set, all
observation features marked as non-selected features, one feature from among
non-selected features is added to the feature set, it minimizes our mean square
error (MSE). This iterative process could be stopped until the best merit MSE is
obtained. MSE is defined as:
Machine Learning algorithms for training & classification:
Machine learning is a method of data science that provides computers with the
ability to learn without being explicitly programmed. Machine learning tasks are
typically classified into 3 broad categories, depending on the type of task:
supervised, unsupervised, and reinforcement learning [6].
Supervised learning learns known patterns. It takes labelled input image data
and on basis of that predicts outcome/future.
Unsupervised learning learns unknown patterns. It takes unlabeled input image
data, finds hidden patterns.
Reinforcement learning generates data. It takes labeled input data. Interacts
with environment & learns series of actions.
We made use of supervised learning for training and classification. Namely
Support Vector machines (SVM) & K-nearest neighbors (kNN).
Support vector machine, a technique derived from statistical learning theory, is
the most promising technique for data classification and regression and function
estimation [15]. For classification problems, basic idea of applying SVM is:
1. Transform the input space to higher dimension feature space by a
nonlinear mapping function
2. Construct the separating hyperplane with the maximum distance from the
closest points of the training set.
SVM has high classifying accuracy & good capabilities of generalization and fault
tolerance. SVM selects the hyperplane which causes the largest separation among
the decision function values for the borderline examples of the two classes. The
hyperplane decision function:

K-nearest neighbor classifier is a nonparametric learning algorithm that is used


for classification and regression. KNN is a very simple but efficient algorithm.
The implementation process of the K-nearest neighbor algorithm [16]:
1. Number of nearest points of test data against training data is determined.
Euclidean distance is most commonly used to measure the distance
between two instances according to the type of attribute. Assuming there
are two points in K-dimensional space, and, the Euclidean distance
between the two can be denoted by:

2. We can judge that the test data is a certain category when it has more
representatives than a certain category of data.

Larger values of ‘k’ reduce the effect of noise on the classification, but it makes
boundaries between classes less distinctive. A good ‘k’ can be selected by cross-
validation, running the nearest neighbor classifier on the learning set only.
Application of these algorithms and tuning of hyperparameters in Python is
performed by scikit-learn, a machine learning python library.

Results & Discussion:


The above-mentioned methodology was tested and
trained using dataset provided as a research challenge by University of
Orleans, France. The classifiers were validated using a 10-fold cross-validation
technique. The performances of the classifiers were evaluated in terms of the
area under the receiver operating characteristic (ROC) curve (AUC), precision,
recall, and accuracy. ROC analysis is a commonly used approach for
classification performance evaluation.

In the classification process, the X-ray scan images are classified as normal and
abnormal. Feature selection is carried out using SFS method to remove
redundancy due to highly correlated features. The selected features are from
the textural and frequency domains which are useful for the classification.
During the classification processes, SFS selected 17 appropriate features out of
37 features. The first few principal components typically account for most of the
variance in the original image data. The performance of SVM is better than kNN
as we can observe from the results. The best classification performance was
achieved when the SVM classifier and SFS selection are employed.
Combination of SVM classifier and SFS selection achieved an AUC of 95.7%,
Accuracy of 97.6%, Precision of 94.5% and recall of 92%. While combination
of kNN classifier and SFS selection achieved an AUC of 93.2%, Accuracy of
90.3%, Precision of 92.1% and recall of 88.7%.

Conclusion:
Computer-aided diagnosis for assistance of a radiologist has
become more realizable with passage of time. This paper presents a computer-
aided diagnosis system with image processing and pattern recognition in
diagnosing fractures in bones by using X-ray scan images. The differences of
experience, knowledge, and skills among individual physicians may affect the
diagnosis results. Our experimental work, the proposed methodology of machine
learning techniques has yielded results that show the unbiased objective way
machine learning algorithms analyze what they see and in common cases
perform better than a trained radiologist. The original images, including
normal(healthy) images, abnormal (fractured bone) images, were first pre-
processed using image enhancement & transformation techniques including
Logarithmic transformation and balanced histogram equalization method. Then,
37 features were obtained from images using three different techniques, which
include textural and frequency domains. SFS methods was applied to select the
input features for classification. Furthermore, the normal/abnormal images were
classified via SVM and KNN classifiers. The classifiers were validated by a 10-
fold cross-validation strategy. The classification performance was evaluated in
terms of the AUC values, accuracy, precision, and recall, respectively.
From the results section we can observe and conclude that Support Vector
machines (SVM) with sequential forward selection (SFS) is better at doing the
given task in our case than k-nearest neighbor(kNN). Limitations of the study are:
1. X-ray scan images were captured correctly, perfectly illuminated and
captured from the right angle. In practical use, sometimes there is variance
in terms of illumination & angle of capture, that may require human
interference, a radiologist to verify right capture of image.

2. Dataset (containing patient studies) on which proposed methodology was


implemented was limited.

Future Work:
An improvement over this current method could be to employ modern state-
of-the-art deep learning techniques such as convolutional neural networks and
observe results based on it. Furthermore, a robust detection could be
established in verifying parameters that signify correct capture of X-ray scan
images.

References

[1] IOF, "Fact Sheet," International Osteoporosis Foundation, [Online]. Available:


http://www.osteofound.org/press_centre/fact_sheet.html.

[2] J. V. Forrest and P. J. Friedman, "Radiologic errors in patients with lung cancer.," The Western
journal of medicine, vol. 134, no. 6, pp. 485-90, 6 1981.

[3] C. Y. L. W. H. W. H. T. P. M. I. P. N. W. M. (. Tian T.P., "Computing Neck-Shaft Angle of Femur


for X-Ray Fracture Detection.," Computer Analysis of Images and Patterns. CAIP 2003. Lecture
Notes in Computer Science, 2003.

[4] D. &. C. Y. &. L. W. K. &. H. T. &. P. M. -. Yap, "Detecting Femur Fractures by Texture Analysis of
Trabeculae.. Proceedings," in International Conference on Pattern Recognition. 3. 730-733.
10.1109/ICPR.2004.292., 2004.
[5] S. &. X. Y. &. C. Y. &. L. W. K. &. H. T. &. P. M. Lim, "Detection of femur and radius fractures in
x-ray images.," Proc. 2nd Int. Conf. on Advances in Medical Signal and Information Processing.,
no. 2nd, 2004.

[6] G. Choy, O. Khalilzadeh, M. Michalski, S. Do, A. E. Samir, O. S. Pianykh, J. R. Geis, P. V.


Pandharipande, J. A. Brink and K. J. Dreyer, Current applications and future impact of machine
learning in radiology, vol. 288, Radiological Society of North America Inc., 2018, pp. 318-328.

[7] "Challenge IEEE-ISBI : Bone Texture Characterization | Université d'Orléans," [Online].


Available: http://www.univ-orleans.fr/i3mto/challenge-ieee-isbi-bone-texture-
characterization.

[8] "Image segmentation - Wikipedia," [Online]. Available:


https://en.wikipedia.org/wiki/Image_segmentation.

[9] "Balanced histogram thresholding - Wikipedia," [Online]. Available:


https://en.wikipedia.org/wiki/Balanced_histogram_thresholding.

[10] "Feature extraction - Wikipedia," [Online]. Available:


https://en.wikipedia.org/wiki/Feature_extraction.

[11] "Co-occurrence matrix - Wikipedia," [Online]. Available: https://en.wikipedia.org/wiki/Co-


occurrence_matrix.

[12] F. Yang, M. Hamit, C. B. Yan, J. Yao, A. Kutluk, X. M. Kong and S. X. Zhang, "Feature extraction
and classification on esophageal x-ray images of xinjiang kazak nationality," Journal of
Healthcare Engineering, vol. 2017, 2017.

[13] "Discrete wavelet transform - Wikipedia," [Online]. Available:


https://en.wikipedia.org/wiki/Discrete_wavelet_transform.

[14] A. Marcano-Cedeño, J. Quintanilla-Domínguez, M. G. Cortina-Januchs and D. Andina, "Feature


selection using Sequential Forward Selection and classification applying Artificial Metaplasticity
Neural Network," in IECON Proceedings (Industrial Electronics Conference), 2010.

[15] "Chapter 2 : SVM (Support Vector Machine) — Theory - Machine Learning 101 - Medium,"
[Online]. Available: https://medium.com/machine-learning-101/chapter-2-svm-support-
vector-machine-theory-f0812effc72.

[16] "k-nearest neighbors algorithm - Wikipedia," [Online]. Available:


https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm.

You might also like