Kidney Stone Detection Using Ultrasound
Kidney Stone Detection Using Ultrasound
ABSTRACT
The Kidney stones are one of the most common disorders of the urinary tract. Kidney stone problem
occurs as a common problem to every human being, due to nature of living. A kidney stone termed as
renal calculi is a solid piece of material that forms in a kidney when substances that are normally found in
the urine become highly concentrated. The ultimate aim of medical image segmentation is to reduce the
amount of time a radiologist needs to spend for looking at an image to identify the portions of renal
calculi.
INTRODUCTION
The detection of kidney stones are highly challenging task as they have low contrast and
speckle noise. This challenge is overcome by using suitable imaging techniques and filters.
Ultrasound images normally consist of speckle noise which cannot be removed by normal
filters. So the median filtering algorithm is proposed, the median filter removes the speckle
noise. The pre-processed image is achieved with a median filter to remove noise and to
detect the stone region. Majority of people with kidney stone disease do not notice the
disease as it damages organs slowly before showing symptoms. Different types of kidney
stones namely renal calculi, struvite stones, staghorn stones were analysed. In order to get
rid of the painful disorder the kidney stone is diagnosed through ultrasound images and
then removed through a surgical process like breaking up of stone into smaller pieces
which then pass through the urinary tract. Kidney stone disease is one of the major life-
threatening ailments persisting worldwide. The stone diseases remain unnoticed in the
initial stage, which in turn damages the kidney as they develop. A majority of people are
affected by kidney failure due to diabetes mellitus, hypertension, glomerulonephritis, and
so forth
1.1 CLASSIFICATION
Classification is a technique where we categorize data into a given number of classes.
Themain goal of a classification problem is to identify the category/class to which a new
data will fall under. Image Classification is the task of assigning an input image one
labelfrom afixed set of categories. This is one of the core problems in ComputerVision
that, despite its simplicity, has a large variety of practical applications. Many others
seemingly distinct Computer Vision tasks (such as object detection, segmentation) can be
reduced to imageclassification.
1.2ClassificationAlgorithms:
Digital Image Processing Tutorial provides basic and advanced concepts of Image
Processing. Our Digital Image Processing Tutorial is designed for beginners and
professionals both. Digital Image Processing is used to manipulate the images by the use
of algorithms. For processing digital images the most common software that used widely is
Adobe Photoshop. Our Digital Image Processing Tutorial includes all topics of Digital
Image Processing such as introduction, computer graphics, signals, photography, camera
mechanism, pixel, transaction, types of Images, etc.
AdvantagesofMachineLearning:
Machine learning is a field of computer science and artificial
intelligence that deals with the task of teaching computers to learn from data
without being explicitly programmed. It is a type of data mining that allows
computers to “learn” on their own by analyzing data sets and using pattern
recognition. Machine learning has many benefits, including improved
accuracy, efficiency, and decision-making.
Reducing bias: Machine learning algorithms are not biased toward certain
data sets, unlike human beings, who may have personal biases that can
distort their judgment. As a result, machine learning can help reduce bias in
business decisions.
Image Recognition
Image recognition is one of the most common applications of
machine learning. It is used to identify objects, persons, places, digital
images, etc. The popular use case of image recognition and face detection
is, Automatic friend tagging suggestion: Facebook provides us a feature of
auto friend tagging suggestion. Whenever we upload a photo with our
Facebook friends, then we automatically get a tagging suggestion with
name, and the technology behind this is machine learning's face detection
and recognition algorithm. It is based on the Facebook project named "Deep
Face," which is responsible for face recognition and person identification in
the picture.
Speechrecognition:
Traffic Prediction:
If we want to visit a new place, we take help of Google Maps, which shows
us the correct path with the shortest route and predicts the traffic conditions. It
predicts the traffic conditions such as whether traffic is cleared, slow-moving, or
heavily congested with the help of two ways:
1.Real Time location of the vehicle form Google Map app and sensors
2.Average time has taken on past days at the same time.
Product Recommendations
1.5 DEEPLEARNING
AdvantagesofDeepLearning
CreatingNewFeaturesOneofthemainbenefitsofdeeplearningovervariou
smachine learning algorithms is its ability to generate new features from a
limited series offeatures located in the training dataset. Therefore,
deeplearning algorithms can createnewtasks to solve current ones. What
does it mean for data scientists working in technologicalstartups? Since
deep learning can create features without a human intervention, data
scientistscansavemuchtimeonworkingwithbigdataandrelyingonthistechnolog
y.Itallowsthemtousemorecomplexsetsoffeaturesincomparisonwithtraditional
machinelearningsoftware.
AdvancedAnalysis
Duetoitsimproveddataprocessingmodels,deeplearninggeneratesaction
ableresults when solving data science tasks. While machine learning
worksonlywithlabelleddata,deeplearningsupportsunsupervisedlearningtechni
questhatallowthesystemtobecome smarter on its own. The capacity to
determine the most important features
allowsdeeplearningtoefficientlyprovidedatascientistswithconciseandreliablea
nalysisresults.
1.7 APPLICATIONSOFDEEPLEARNING
Automaticspeechrecognition
Military
TheUnitedStatesDepartmentofDefenceapplieddeeplearningtotrainrobotsinnewtask
sthroughobservation.
Bioinformatics
AnautoencoderANNwasusedinbioinformatics,
topredictgeneontologyannotations and gene-function relationships.
Inmedical informatics, deep learning was usedto predict sleep quality based
on data from wearables and predictions of health complicationsfrom
electronic health record data.
Self-Drivingcars
Another domain benefitting from Deep Learning is the banking and financial
sectorthat is plagued with the task of fraud detection with money
transactions going digital. Autoencoders in Keras and TensorFlow are being
developed to detect credit card frauds
savingbillionsofdollarsofcostinrecoveryandinsuranceforfinancialinstitutions.Fr
aud prevention and detection are done based on identifying patterns in
customer transactions andcreditscores, identifyinganomalousbehaviour and
outliers.
1.8 CNNARCHITECTURES
Convolutional Neural Network (CNN, or ConvNet) are a special kind of
multi-
layerneuralnetworks,designedtorecognizevisualpatternsdirectlyfrompixelima
geswithminimalpre-processing.
VGGNet
VGG-19:
VGG-19 is a convolutional neural network (CNN) architecture
developed by the Visual Geometry Group (VGG) at the University of Oxford.
It is a deep neural network with 19 layers and was introduced as part of the
ImageNet Large Scale Visual Recognition Challenge (ILSVRC) in 2014.One
of the key innovations in VGG-19 is its deep architecture, which allows for a
more expressive representation of image features.VGG-19 is trained on the
ImageNet dataset, which consists of millions of labeled images from
thousands of categories
Inception v3 algorithm:
Inception-v3 is a convolutional neural network (CNN) architecture developed
by Google for image recognition and classification tasks. It is an improvement over
the original Inception model. The Inception-v3 architecture is designed to be
deeper and more powerful than previous CNNs. It consists of 48 layers, including
convolutional layers, pooling layers, and fully connected layers. It also includes
several unique features such as the Inception module. This technique reduces the
number of parameters in the model, which helps to reduce overfitting and improve
performance
ADVANTAGESOFCNN
Oncetrained,thepredictionsareprettyfast.
Withanynumberofinputsandlayers,CNNcantrain.
Neuralnetworksworkbestwithmoredatapoints.
Oneofthepowerfulmodelsinclassification.
DISADVANTAGESOFCNN
HighComputationalcost.
TheyusetoneedalotofTrainingdata.
APPLICATIONSOFCNN
ImageRecognition
CNNs are often used in image recognition systems. In 2012 an error rate of
0.23percent
ontheMNISTdatabasewasreported.AnotherpaperonusingCNNforimageclassi
fication reported that the learning process was "surprisingly fast"; in the
same paper, thebest published results as of 2011 were achieved in the
MNIST database and the NORBdatabase. Subsequently, a similar CNN
calledAlexNet won the Image Net Large ScaleVisual Recognition Challenge
2012. Image recognition, in the context of machine vision,
istheabilityofsoftwaretoidentifyobjects,places,people,writingandactionsinima
ges. Computers can use machine vision technologies in combination with a
camera and artificialintelligencesoftwaretoachieveimagerecognition.
VideoAnalysis
Thereasonswhyweseesuchdrasticchangesandhowwecouldexperimentincurb
ing the effect. It is said that the data in such natural history collections can
also providegreater social and scientific insights, but this would require
skilled human resources such asresearcherswho can physically visit
thesetypesofrepositories.
DecodingFacialRecognition
Facialrecognitionisbrokendownbyaconvolutionalneuralnetworkintothefollowin
g majorcomponents–
Identifyingeveryfaceinthepicture.
Focusingoneachfacedespiteexternalfactors,suchaslight,angle,pose
,etc.
Identifyinguniquefeatures.
Comparingallthecollecteddatawithalreadyexistingdatainthedatabas
etomatchafacewithaname.
Asimilarprocessisfollowedforscenelabellingaswell.
AnalysingDocuments
TITLE :
Design and Analysis Performance of Kidney Stone Detection from
Ultrasound Image by Level Set Segmentation and ANN
Classification.
AUTHORS :
K.Viswanath, R.Gunasunda
ABSTRACT:
The abnormalities of the kidney can be identified by ultrasound imaging. The kidney may
have structural abnormalities like kidney swelling, change in its position and appearance.
Kidney abnormality may also arise due to the formation of stones, cysts, cancerous cells,
congenital anomalies, blockage of urine etc. For surgical operations it is very important to
identify the exact and accurate location of stone in the kidney. The ultrasound images are
of low contrast and contain speckle noise. This makes the detection of kidney
abnormalities rather challenging task. In level set segmentation two terms are used in our
work. First term is using a momentum term and second term is based on resilient
propagation (R prop ). Extracted region of the kidney after segmentation is applied to
Symlets, Biorthogonal (bio3.7, bio3.9 & bio4.4) and Daubechies wavelet subbands to
extract energy levels. These energy level gives an indication about presence of stone in
that particular location which significantly vary from that of normal energy level. These
energy levels are trained by Multilayer Perceptron (MLP) and Back Propagation (BP)
ANN to identify the type of stone with an accuracy of 98.8%.
UML DIAGRAMS:
UML stands for Unified Modeling Language. UML is a standardized
general-purpose modeling language in the field of object-oriented
software engineering. The standard is managed, and was created by,
the Object Management Group.
The goal is for UML to become a common language for creating models
of object oriented computer software. In its current form UML is
comprised of two major components: a Meta-model and a notation. In
the future, some form of method or process may also be added to; or
associated with, UML.
The Unified Modeling Language is a standard language for specifying,
Visualization, Constructing and documenting the artifacts of software
system, as well as for business modeling and other non-software
systems.
The UML represents a collection of best engineering practices that have
proven successful in the modeling of large and complex systems.
The UML is a very important part of developing objects oriented
software and the software development process. The UML uses mostly
graphical notations to express the design of software projects.
GOALS:
The Primary goals in the design of the UML are as follows:
1. Provide users a ready-to-use, expressive visual modeling
Language so that they can develop and exchange meaningful
models.
2. Provide extendibility and specialization mechanisms to extend the
core concepts.
3. Be independent of particular programming languages and
development process.
4. Provide a formal basis for understanding the modeling language.
5. Encourage the growth of OO tools market.
6. Support higher level development concepts such as collaborations,
frameworks, patterns and components.
7. Integrate best practices.
USE CASE DIAGRAM:
image location
preprocess image
user
exit
CLASS DIAGRAM:
In software engineering, a class diagram in the Unified Modeling
Language (UML) is a type of static structure diagram that describes the
structure of a system by showing the system's classes, their attributes,
operations (or methods), and the relationships among the classes. It
explains which class contains information.
USER
DATASET
image location()
upload ultrasound image()
preprocess image()
image enchancement algorithm()
run watersheld marking()
exit()
SEQUENCE DIAGRAM:
comparsion graph
COLLABRATION DIAGRAM:
image location
preprocess image
exit
CHAPTER-5
SYSTEMTESTING
5.1.1SYSTEM TEST
The purpose of testing is to discover errors. Testing is the process of
trying to discover every conceivable fault or weakness in a work product.
It provides a way to check the functionality of components, sub
assemblies, assemblies and/or a finished product It is the process of
exercising software with the intent of ensuring that the Software system
meets its requirements and user expectations and does not fail in an
unacceptable manner. There are various types of test. Each test type
addresses a specific testing requirement.
5.1.2Unit testing
Unit testing involves the design of test cases that validate that the
internal program logic is functioning properly, and that program inputs
produce valid outputs. All decision branches and internal code flow
should be validated. It is the testing of individual software units of the
application .it is done after the completion of an individual unit before
integration. This is a structural testing, that relies on knowledge of its
construction and is invasive. Unit tests perform basic tests at component
level and test a specific business process, application, and/or system
configuration. Unit tests ensure that each unique path of a business
process performs accurately to the documented specifications and
contains clearly defined inputs and expected results.
5.1.3Integration testing
Integration tests are designed to test integrated software components to
determine if they actually run as one program. Testing is event driven
and is more concerned with the basic outcome of screens or fields.
Integration tests demonstrate that although the components were
individually satisfaction, as shown by successfully unit testing, the
combination of components is correct and consistent. Integration testing
is specifically aimed at exposing the problems that arise from the
combination of components.
5.1.4Functional test
Functional tests provide systematic demonstrations that functions tested
are available as specified by the business and technical requirements,
system documentation, and user manuals.
Functional testing is centered on the following items:
Valid Input : identified classes of valid input must be accepted.
Invalid Input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
Output : identified classes of application outputs must be
exercised.
Systems/Procedures : interfacing systems or procedures must be
invoked.
Organization and preparation of functional tests is focused
on requirements, key functions, or special test cases. In addition,
systematic coverage pertaining to identify Business process flows; data
fields, predefined processes, and successive processes must be
considered for testing. Before functional testing is complete, additional
tests are identified and the effective value of current tests is determined.
5.1.5 System Test
System testing ensures that the entire integrated software
system meets requirements. It tests a configuration to ensure known and
predictable results. An example of system testing is the configuration
oriented system integration test. System testing is based on process
descriptions and flows, emphasizing pre-driven process links and
integration points.
5.1.6 White Box Testing
White Box Testing is a testing in which in which the
software tester has knowledge of the inner workings, structure and
language of the software, or at least its purpose. It is purpose. It is used
to test areas that cannot be reached from a black box level.
Test strategy
Field testing will be performed manually and functional tests will be
written in detail.
Test objectives
All field entries must work properly.
Pages must be activated from the identified link.
The entry screen, messages and responses must not be delayed.
Features to be tested
Verify that the entries are of the correct format
No duplicate entries should be allowed
All links should take the user to the correct page.
CHAPTER-6:
RESULTS SCREENSHOTS:
CHAPTER-7:
CONCLUSION: