SkinDx

Description

Android mobile app for pigmented skin lesion diagnosis. It is standalone machine learning app that uses models trained with HAM10000 dataset for prediction without connecting to server. The app can acheived 76.7% in accuracy.

Background

HAM10000 is a dermatoscopic image dataset for machine learning. It is created by Philipp Tschandl and others in 2018. Its aim is to solve the problem of small size and lack of diversity of available dataset of dermatoscopic images. There are 10,015 rows in the CSV file of this dataset. Each row describes a patient episode of skin disease, and each column describes an attribute eg. age, sex, localization, diagnosis and image file name of skin lesion. This dataset also contains 10,015 image files of related skin lesion.


The diagnosis is categorized into 7 groups: (1) actinic keratoses and intraepithelial carcinoma/bowen's disease (akiec), (2) basal cell carcinoma (bcc), (3) benign keratosis-like lesions (solar lentigines/seborrheic keratoses and lichen-planus like keratoses) (bkl), (4) dermatofibroma (df), (5) melanoma (mel), (6) melanocytic nevi (nv) and (7) vascular lesions (angiomas, angiokeratomas, pyogenic granulomas and hemorrhage) (vasc).


The information from this dataset is used for developing android mobile app for diagnosis prediction of pigmented skin lesion.

Feature

Use age, sex, localization and lesion image to predict pigmented skin lesion diagnosis.

Result statistics

The app is tested on android mobile device directly with 1,992 unseen testing cases for 1st orderprediction. The results is as follow:

  • Accuracy: 76.7% (1527/1992)

*Accuracy: correct prediction / all cases

*Sensitivity: TP / (TP + FN) *Precision: TP / (TP + FP)

*TP: True positive *FP: False positive *FN: False negative

Video

How to test accuracy

1. Create a folder on your device. The folder will contain a CSV file and all lesion image files. The CSV file will contain information for each case to be tested.

2. The format of CSV file is as follow:

The columns that you have to pay attention are 3rd, 4th, 6th, 7th and 8th column. That are image file name, diagnosis, age, sex and localization respectively as follow:

image_id: image file name without extension

dx

  • akiec
  • bcc
  • bkl
  • df
  • mel
  • nv
  • vasc

age

sex

  • male
  • female

localization

  • back
  • lower extremity
  • trunk
  • upper extremity
  • abdomen
  • face
  • chest
  • foot
  • unknown
  • neck
  • scalp
  • hand
  • ear
  • genital
  • acral

3. Click on Utilities -> Accuracy Test Button and choose the folder you've created. Make sure that the name of Meta file is the same as CSV file. Then the process will start automatically. The result will be shown.

History

  • Version 2.0.1 released (12 November 2019)
    • Minor bugs fixed.
  • Version 2.0.0 released (24 October 2019)
    • Age, sex and localization are also included in the model.
  • Version 1.2.0 released (25 July 2019)
    • Quantized model
  • Version 1.1.0 released (23 July 2019)
    • Model improvement
    • Add model accuracy test
    • Add model loading and resetting
  • Version 1.0 released (8 July 2019)