Australia has one of the highest rates of skin cancer in the world. Two out of three Australians will be diagnosed with skin cancer by the age of 70. Just this week, a friend of mine posted the scar on her arm where she had a suspicious freckle removed out of fear that it was showing signs of melanoma.

This begs the question, how many people are actually equipped with the knowledge and expertise to prevent malignant skin cancer from escalating? In fact, the number of people losing their lives due to late diagnosis is rising. In 2014, 1400 Australians lost their lives due to late diagnosis of skin cancer and In 2017, the number was 1800. For a disease with a 95% survival rate if caught early, this is unacceptable, thus we've created Spot, an app that aims to present the tools for people to easily monitor the health of their skin and learn more about the preventative methods they can adopt to keep SunSmart.

What it does

This app allows users to easily monitor the health of their skin over time through capturing, logging, and providing analytic information on images taken by the user of their freckles and moles. Using a neural network, trained on expertly-label data from dermatologists and the results of pathology screenings, user images can be evaluated to give guidance to their skin health management. Overall, this app aims to promote a better understanding of skin cancer and safety, so to help manage one's health against a common and preventable disease.

How we built it

The front-end app was designed using React for mobile and desktop. The app communicates with a back-end Flask API that runs neural network predictions on uploaded data; given time, this would also serve to interface the database for user accounts. The neural network was developed using PyTorch, the InceptionV3 model architecture, and trained using International Skin Imaging Collaboration dataset API [Learn more].

Challenges we ran into

Many of Spot's development team is still learning the ropes of front-end design and developing with React. A big challenge for us was learning new ways to develop our idea; integrating the features we wanted while making sure the app was still intuitive and friendly to use.

One of the corner stones of this project, the machine learning algorithm, also presented unique challenges. We do not seek to substitute professional medical advice, nor believe that our model is infallible. Identifying our limitations was just as important as the techniques we used to minimise them, and we made every effort to promote and include learning information on skin care health.

Accomplishments that we're proud of

We're proud to have, collectively, stepped outside of our comfort zone and develop on an idea that is close to us and which can serve the greater community. We're proud that, despite the challenges met throughout this competition, we were not deterred, and we were able to accomplish an interactive proof-of-concept design that met our original vision.

What we learned

We learnt many things along the way; both technical and soft skills. It's easy for teams to lose sight of the problem they original set out to solve. However, we were fortunate to spend time engaging and getting feedback from our mentors and fellow competitors. This broadened the conversation and brought a diversity of contrasting perspectives into our development process; to which we believe helped address potential problems that we would have otherwise missed.

What's next for Spot

While we spent a lot of time developing Spot, there is still plenty more that can be done. From a development side, our stretch goals include: integrating back-end account databases, report generation for GP visits, integrating with Docker for scalable deployment. Looking at the bigger picture, the app could be taken up as a promotional tool for skin health and skin cancer prevention practices. Anonymous user data could be collected for further research, and private medical databases could be used to refine our neural network algorithm to provide more accurate results.

Share this project: