COMPUTER VISION FOR SKIN CANCER DETECTION AND DIAGNOSIS

,


I. INTRODUCTION
It has been extensively observed that Skin cancer is the most diagnosed type of cancer among men and women.It is widespread not only in economically developing countries but also in developed countries.The major cause of skin cancer is overexposure to UV rays, modernizing diets, smoking, alcohol, and nicotine.Warning signs for skin cancer are abnormal changes in appearance of skin like color, shape and size due to itching, bleeding etc. Sometimes, due to lack of facilities as well as time the disease spreads so vastly that it becomes fatal and incurable.[1] There is a need for accurate as well as reliable systems that can help not only clinicians but as well persons to detect types of lesions at early stages.This proposed skin-cancer detection system is developed as a clinical decision support tool that uses computer vision which can help doctors to diagnose the skin cancer types by simply using images with good accuracy.
In part II, previously researched work relating to melanoma is discussed, followed by Dataset in section III and methodology in section IV.The results of the skin-cancer system, conclusion, future work, source code and acknowledgement are explained from section V to IX respectively.

II. RELATED WORK
Deep learning approaches given encouraging results in several areas and applications such as natural language processing, speech recognition and recently in computer vision areas such as object tracking, object detection, and image classification.Especially there has been a trend for taking advantage of the superior power of deep learning methods in medical imaging tasks.
Nasr-Esfahani et al., 2016 [2] for early diagnosis of melanoma used clinical images fed to a pre-trained Convolutional neural network (CNN) is a type of deep learning method where trainable filters and pooling operations are applied to the raw input images, extracting the set of complex high-level features automatically.Their results revealed that they overfitted the model by performing simple operations such as rotation and scaling on small amounts of sample data in order to increase the training size.
According to N. Hameed et al., 2018 [3], they performed Multiclassification with classes named as Healthy, Acne, Eczema, Benign and Malignant.They got an accuracy of nearly about 86% by using two different algorithms Support Vector Machine (SVM) and CNN.
According to Rahul Sarkar et al., 2019 [4], binary classification using a deep depth-wise separable residual CNN algorithm is performed on datasets with an accuracy of about 90 percent or more.They performed analysis on different types of datasets such as PH2, MED-NODE, ISIC, etc.

III. DATA COLLECTION
The HAM10000(Human against machine with 10000 images) [5] dataset released by ISIC (International Skin Imaging Collaboration).The ISIC dataset is a multi-classification dataset with 7 different labels shown in table 1.The ISIC dataset is made available publicly for academic use in order to perform machine learning processes consisting of 10015 dermoscopic images as a training set.From two sites namely, the skin cancer practice of Cliff Rosendahl in (Australia), The department of Dermatology at the Medical University of Vienna (Austria) dataset is gathered images and meta-data as both Excel databases and PowerPoint files.The recorded dataset of HAM10000 is later deposited to Harvard Dataverse.In these samples, an amount equals to or more than 50% are assured as lesions by pathology and others by clinical microscopy.

Disorder
Name of Labels

IV. METHODOLOGY
Computer vision [6] can be used to classify different lesions based on the properties of the image.Computers can analyze the data available from different dermatoscopic images loaded to the application using computer vision techniques such as morphological transformations, filtering, etc. Deep Learning [7] being the subset of Machine Learning is used to determine the unknown structures in the input data.In our project, we made computers to study the images using computer vision and later used CNN algorithms for evaluation and prediction.
First, the user will open the site and upload the lesion image.If the image is not uploaded successfully the system will be terminated else the process will go to the skin cancer-detection system.Now, preprocessing will be performed on gray scale image for removing hairs on image using Black-Hat filtering, thresholding, normalization and re-sizing of lesion image.
A. Image Pre-Processing Techniques 1. Black-Hat Filtering: It is the result obtained after the subtraction of morphological closing result from the original image.This is done to highlight the hairs in the image uploaded by the user.

2.
Thresholding: Thresholding which will segment the hairs from the original image.After black-hat filtering, thresholding along with the mask will be done to separate hairs from the original image.
3. Inpainting: Inpainting [8] is the process of restoring the original image after being deteriorated due to several of operations such as noise removal, hair removal, resizing, etc.This method is helpful in reconstructing the lost or damaged parts of an image [9].Then the preprocessed image will be passed to the classifier using a skin cancer model.In our project, CNN classifier is used to perform multi classification for 7 different types of datasets given in table1.The output of the type of lesion will be returned to the user based on probability calculated using softmax activation function.Convolution Layer: First, the given image is passed through the convolution layer.The convolution operation is performed to find features from a given image.For this we will use different filters and then find the one which fits best for our model to extract features.Stride represents the number of pixels shifts over the input matrix.If stride is one, it means we will shift by one pixel.[11] Max Pooling Layer: Pooling can be sum pooling, average pooling, or max pooling.The result of this layer is passed to the Max Pooling layer to reduce features and to keep important features.Pooling is useful in avoiding overfitting as well as reducing the training time [12].

B. Convolution Neural
Fully connected layer: Fully connected layer is added to finally collect the information and perform classification to find the type of skin cancer disease the given image can have, or it is normal by using two activation functions: • ReLU: To convert negative pixel values to zero.
• SoftMax Activation Function: This function finally predicts based on probability whether the given image is melanoma or non-melanoma.The calculation for softmax activation function.

V. RESULTS
With 150 epochs we got an accuracy of approx.80%.3, to find the types of lesion(similar to a mole).The system returns the type as "Melanocytic nevi" with probability of 96.43% as provided in figure 4. Apart from this, a web service is created for the people who need self-detection of lesion types, test a lesion by uploading their image from their portal and identify the type of cancer it is.Similarly, physicians can check their patients' lesions infected skin areas and suggest further testing accordingly.

VII. FUTURE WORK
In the upcoming future, the project can use different neural networks such as SVM(Support Vector Machine), LSTM(Long short-term Memory) with increase in the number of epochs, i.e, training for a longer time to increase accuracy, and various different datasets like PH2 dataset, DermIS, etc. to get better accuracy.Also, the model could be linked with several existing clinical decision support systems and/or with existing health-care networks.

VIII. SOURCE CODE
The project source code can be found at: https://github.com/lakshmanboddu/skin-cancer-cv

Fig. 1 : 4 .
Fig. 1: Methodology Network: Convolution Neural Network (CNN): Convolutional Neural Network is used in image classification, image recognition, face recognition, object detection etc. [10].Now, Computer sees an image as an array of pixels.It accepts image as h(height)*w(width)*d(dimension).To illustrate, a 6*6 image in jpg form is a 6*6*3 array of matrices in RGB.As in RGB, we have 3 values for one color, i.e., 1 pixel will have 3 values for 3 frames of Red, Green, and Blue.

Table 1 :
Name of Labels.

Table 2 :
Model Evaluation at the end of Training:Evaluation Matrix: These metrics provide us the result of different matrix valuable in prediction of performance of the model.Evaluation Metrics

Table 3 :
Confusion MatrixSkin-Cancer Web Service: The user (either a Physician or any person visiting the web service.)uploads the image shown in figure