• Nu S-Au Găsit Rezultate

Kidney Stone Detection Using Image Processing and Neural Networks


Academic year: 2022

Share "Kidney Stone Detection Using Image Processing and Neural Networks "


Text complet


Kidney Stone Detection Using Image Processing and Neural Networks




K. Chaitanya Nagu,


P. Karthik,


A. Lalith Vikas

1Assistant Professor/ECE, 2,3,4B.Tech in ECE

1,2,3,4,SRM Institute of Science andTechnology

1[email protected],

2[email protected],3[email protected],4[email protected],


An automated kidney stone classification is implemented using a Back Propagation Network (BPN) and image and data processing techniques. There are inaccuracies in the classification of kidney stones due to the presence of noise. Kidney stones have become more common problem in recent years due to a variety of factors. It is difficult to obtain results for large datasets using human inspection and operators. There is a lot of noise in CT scans and MRI’s, which contributes to inaccuracies. Artificial intelligence approaches based on neural networks have shown impressive results. Artificial intelligence methods, such as neural networks, have proven to be extremely useful in this area. As a result, the Back-Propagation Network (BPN) is being used in this project. GLCM is used to extract features, which are then classified using BPN. The Fuzzy C-Mean (FCM) clustering algorithm is used in this project to segment computed tomography images in order to detect kidney stones in their early stages.



C.T scans, Gray Level Co-occurrence matrix, Fuzzy C Mean Clustering, Back Propagation Neural Network.


Kidney stones form as the urine contains more crystal compounds, such as calcium oxalate and uric acid, causing the urine to become dilute. Stones develop as a result of a lack of water intake, as well as dietary factors such as animal protein, sodium, and obesity. Calcium oxalate, uric acid, struvite, and cystine are the four forms of kidney stones.

Lower back pain, Urine with blood, nausea, fever, foul odour urine, fuzzy appearance are all symptoms. Small stones can be flushed out with the urine. Urine backs up in the kidney, ureter, and bladder due to stones that do not pass down. Shock-wave lithotripsy, ureteroscopy, and percutaneous nephrolithotomy are now used to treat kidney stones.

The accumulation of salts and minerals in urine, mostly calcium and uric acid, causes kidney stones. Vitamin D deficiency is to blame for kidney stone formation. When our bodies aredehydrated but have a lot of waste, kidney stones are formed. In the case of large volumes of data, operator-assisted kidney stone detection is impractical.

The aim of this paper is to perform an automated kidney stone classification using image and data processing a back propagation neural network. The use of a neural network for kidney stone classification has shown a lot of promise.

The Gray level cooccurrence matrix and Fuzzy c- mean clustering are both used in this paper to extract features. To detect a kidney stone, an algorithm for segmenting the test image was created.

Literature review

Table 1: Features of Test Image

Ref no

Tittle of references Algorithm Importance Measuring


An image pre-processing method for kidney stone segmentation in CT scan images


Pre-processing for image segmentation of CT scan

Accuracy Specificity Sensitivity



Analysis and

identification of kidney stones using SVM and KNN


Number of pixels of image and stone prediction in kidney images

Recall Precision


A review on systemic approach of ultra sound image to detect renal calculi using different analysis

K Nearest Neighbor

Segmentation is done using various processing





distinguishing staghorn and struvite kidney stones using GLCM and pixel intensity matrix parameters

Gray Level Co- occurrence Matrix Future Extraction

Filtering the low regions and enhancement of the image is done

Accuracy Specificity Sensitivity


Kidney stone detection in computed tomography images


Segmentation aids in deciding the quantity and location of the stones.

Accuracy Precision Sensitivity

The block diagram consists of the following blocks:


It consists of the kidney images which are collected from individuals of different hospitals. The images have both normal images and abnormal images. The abnormal images are in both benign or malignant stage. The image is selected and preprocessed

Figure 1:Block Diagram



The main function is to get rid of the distortion in the source picture. It removes the undesired noise and enhances the features of the image. The images are preprocessed using DWT. Image enhancement is done because of removing noise and brighten the image. Wavelets are designed to transform an input image into a sequence of wavelets that can be processed more efficiently than pixel blocks.

The entire image is converted into high pass and low pass filters. The image is divided into 4 sub bands like Low- Low, Low-High, High-High, High-Low. The LL sub band is considered as both horizontal and vertical version of image. The other three sub bands LH, HH, HL bands contain higher frequency information.

Figure 2:Sub-bands

GLCMFuture Extraction:

The texture of an image is determined by the grey level cooccurrence matrix, which calculates pairs of pixels with unique values. It is the most well-known second-order statistical texture analysis tool. The contents of GLCM are used in texture function calculations to provide a measure of strength variations at the pixel of interest. The GLCM matrix is first formed, and the futures are then extracted from it. We are only looking at four aspects of a picture in this paper: contrast, correlation, energy, and homogeneity. We can use the function to extract statistics after we've generated GLCM. These provide information about the image textures

Table 2: Features of Test Image

Energy Contrast Correlation Homogeneity Entropy

0.0000 1.1612 0.0000 0.0001 0.0004

0.0002 9.5882 -0.0000 0.0005 0.0048


Table 3: Feature Extraction


Dataset images having both normal and abnormal images are used. In image processing, training is a method of learning to identify shapes, features, and even patterns. The training procedure is identical to that of the test image, which includes pre-processing and feature extraction.

The trained set's features are compared to the test image's features. BPN method to compare trained data with the test data in order to accurately classify kidney stones.

Figure 3: Dataset Training

Back Propagation Neural Network


The technique used in artificial neural network back propagation is gradient descent to compute a gradient needed in the calculation of weights to use. It is a group of I/O connections where each connection has its own weight

associated with the programs.

The artificial neural networks built on human nervous system It trains neural networks using the back propagation algorithm. This technique is known as delta rule or gradient descent, the algorithm searches for the lowest value of the error function. It can be used to solve problems involving classification and regression. The algorithm's main goal is to reduce errors by changing the weights.


The input image is presented into the network, the network identifies the output response to the input of the trained data set. The output response is compared with the desired output. The patterns continuously to network until the errors are minimized.

Back propagation neural network classifies whether the input test image contains stones or not. The classification of normal or abnormal is displayed on the desktop. The area of the stone is found by segmentation using fuzzy c means algorithm.

Watershed Algoritm:

This algorithm is used to segment images and correctly segment irregular regions. The algorithm's main goal is to transform a grayscale image into a topographic representation. It's then divided into three categories: minima, catchment basins, and watershed lines. The dark areas in the input test picture are assumed to have low altitudes, while the bright areas are assumed to have high altitudes, giving the appearance of a topographic surface.

Figure 4: Segmented Image

Fuzzy C Means Algorithm:

Clustering is the process of grouping large amounts of data into small clusters of related data. Fuzzy clustering is an unsupervised clustering technique that determines clustering parameters without the intervention of a human. Based on distance metrics between the data point and the cluster center, every piece of data belonging to every centroid is given a threshold value. It's seen a lot in pattern recognition. This algorithm allows data points to belong to several clusters.

It separates large sets of data into smaller, similar groups of data. Unlike k-means clustering, fuzzy-c means clustering fits well with overlapped data sets, allowing us to pinpoint the exact location of the kidney stone.

Figure 5: Clusters


Result Analysis:

The image's precision, specificity, and sensitivity are shown in the form of a graph. They are extremely significant in the classification of kidney stones. There is a trade-off between sensitivity and precision in both diagnostic and screening testing. Lower specificities can result from higher sensitivity, and vice versa. The sensitivity and accuracy of the test can be calculated. If an individual is found to be positive by the test, they are likely to be incarcerated.

Figure 6: Graph


1.The first step of implementation is to make a data set of CT images of kidney and then upload it to the GUI interface which is done using the MATLAB. We can select any one image and upload it. The data set may contain both normal and abnormal images.

2. The next step is to preprocess the image and apply the dwt transform to the image.

3. After applying the DWT transform to image is set to the future extraction using GLCM.

4. After applying NN classifier to image then the image is processed and scanned for the stones. If stones are not present in the image, then the result will show to the user.

5. If the stones are present then it shows abnormal and detects the stage whether benign or malignant.

6. After the detection of the stage segmentation process is done, 4 clusters of are formed.

7. Fuzzy c means algorithm helps to find the area of the stones.

8. The result is shown in the form of graph.

Figure 7:Gui Interface


Figure 8: Normal Kidney Image

Figure 9: Kidney Stone Detected


MATLAB R2018b is used to implement this process. The classification of kidney stones using GLCM feature extraction and the BPN neural network has thus been accomplished successfully. GLCM has shown tremendous potential for identifying the significant features for correct classification of kidney stones as compared to Gabor filters, Canny Edge Detection, and Daubechies lifting schemes.Others result in feature reduction, which could result in the loss of certain important features.


The GLCM feature extraction method is a statistical method. The combination of GLCM and DWT has shown great promise in feature extraction, resulting in a classification rate of 98.8% accuracy. In the case of overlapped results, the fuzzy C-means algorithm performs better than K-means clustering.

Future scope

The proposed method could be optimized for real-time implementation by integrating it with scanning machines in future research. The proposed collection of rules can be applied to the captured kidney photograph to identify the affected area and accurately classify kidney stones. We may equate the results of other neural networks, for example, to achieve higher accuracy.



[1] Hu et al., "Towards quantification of kidney stones using X-ray dark-field tomography," 2017 IEEE 14th International Symposium on Biomedical Imaging (ISBI 2017), Melbourne, VIC, 2017, pp. 1112-1115. doi:


[2] D. Srivastava and S. Agarwal, "GLCM and its application in pattern recognition," IEEE 2017 5th International Symposium on Computational and Business Intelligence (ISCBI), Dubai, 2017, pp. 20-25.

[3] Z E. Skounakis, K. Banitsas, A. Badii, S. Tzoulakis, E. Maravelakis, A Konstantaras, A., "ATD: A Multiplatform for semiautomatic 3-D detection of kidneys and their pathology in real time", IEEE Transactions on Human-Machine Systems, vol. 44, no. 1, pp. 146-153, Feb. 2014.

[4] Aadhirai and D. N. Jamal, "Feature extraction and analysis of renal abnormalities using fuzzy clustering segmentation and SIFT method," IEEE 2017 Third International Conference on Biosignals, Images and Instrumentation (ICBSII), Chennai, 2017, pp. 1-5.

[5] M. Ranjitha, "Extraction and dimensionality reduction of features for Renal Calculi detection and artifact differentiation from segmented ultrasound kidney images," IEEE 2016 3rd International Conference on Computing for Sustainable Global Development (INDIACom), New Delhi, 2016, pp. 3087-3092.

[6] T. Akkasaligar, S. Biradar and V. Kumbar, "Kidney stone detection in computed tomography images," 2017 International Conference on Smart Technologies For Smart Nation (SmartTechCon), Bangalore, 2017, pp. 353- 356.doi: 10.1109/SmartTechCon.2017.8358395, IEEE 2017

[7] Introduction Distinguishing Staghorn and Struvite kidney stones using GLCM and Pixel Intensity Matrix Parameters, vol. 4, pp. 25, 2017IEEE.

[8] Verma, J., Nath, M., Tripathi, P. et al. Pattern Recognit. Image Anal. (2017) 27: 574.


[9] Velmurugan, M. Arunkumar and P. Gnanasivam, "A review on systemic approach of the ultra sound image to detect renal calculi using different analysis techniques," 2017 Third International Conference on Biosignals, Images and Instrumentation (ICBSII), Chennai, 2017, pp. 1-7. doi: 10.1109/ICBSII.2017.8082269

[10] J. Martínez-Carballido, C. Rosas-Huerta, and J. M. Ramírez-Cortés, “Metamyelocyte nucleus classification using a set of morphologic templates,” in Proceedings of the Electronics, Robotics and Automotive Mechanics Conference (CERMA '10), pp. 343–346, IEEE, Morelos, Mexico, September-October 2010.

[11] K. Kumar, “Artificial neural network for diagnosis of kidney stone disease,” International Journal of Information Technology and Computer Science, vol. 7, pp. 20–25, 2012.

[12] P. C. P. Raj and S. L. Pinjare, “Design and analog VLSI implementation of neural network architecture for signal processing,” European Journal of Scientific Research, vol. 27, no. 2, pp. 199–216, 2009.

[13] C. Li, C. Xu, C. Gui, and M. D. Fox, “Distance regularized level set evolution and its application to image segmentation,” IEEE Transactions on Image Processing, vol. 19, no. 12, pp. 3243–3254, 2010.

[14] Norihiro Koizumi, “Robust Kidney Stone Tracking for a Non-invasive Ultrasound Theragnostic System–

ServoingPerformance and Safety Enhancement”, 2011 IEEE International Conference on Robotics and Automation Shanghai International Conference Center May 9-13, 2011, Shanghai, China.

[15] X. Chen, R. Summers, and J. Yao, “FEM-based 3-D tumor growth prediction for kidney tumor,” IEEE Transactions on Biomedical Engineering, vol. 58, no. 3, pp. 463–467, 2011.



The proposed work is to detect and classify the face mask and social distancing detection using a Faster R-CNN model in a convolutional neural network..

[6] developed the exudates detection model by employing image processing steps for extracting the features and neural network is adopted for performing the

As depicted in the Architecture diagram of the integrated model in Figure 1, the three modules used in the proposed algorithm are Data collection and pre-processing,

De¸si ˆın ambele cazuri de mai sus (S ¸si S ′ ) algoritmul Perceptron g˘ ase¸ste un separator liniar pentru datele de intrare, acest fapt nu este garantat ˆın gazul general,

genautonomousdetectionofcancerusingMachineLearningandBigDataoronlyimagerecognitiontechniques.Thetraditiona landpre-contemporaryapproachesfollowedinthedetectionofcancer using various

Transfer learning on a collection of 2000 radiograms square measure usually accustomed train four modern convolutional neural networks, at the side of

To find the image classification of weather reports using a convolution neural network and suggest a deep learning algorithm using TensorFlow or Keras.. KEYWORDS: Computer

The study in [4] used CNNs (Convolution Neural Networks) for image classifications and built a crop yield prediction model using UAV’s RGB and NDVI data.. A multi-level DLT using