As someone who has had braces for a while, I have experience in the realm of orthodontics and dentistry. Often, dentists and people who specialize in teeth over-prescribe patients with treatments or even prescribe them medicines they don’t need. This causes stress for patients and forces many dilemmas on them and has forced dilemmas upon me in the past. This overprescribing is described as ‘the prevailing dogma’ of orthodontics in an article regarding whether children need braces. In the article, a group of dentists found out that “when the results of multiple studies are analyzed together, they do not provide evidence that orthodontic treatment decreases one’s likelihood of developing conditions such as gum disease and jaw pain.” To solve this issue, we connected image recognition software with a well-designed website to allow users to determine which of the five most common dental treatments they need.

What it does

Dentestimate allows users to upload their teeth from the front to recommend the most-fit dental treatment for them with a 91% accuracy. Our Convolutional Neural Network can classify their images into one of the five groups: Fillings, Dental Crowns, Tooth Extractions, Dental Implants, and Braces. Once users fill out our form, which is conveniently located at the top of our web application, they will be redirected to the appropriate web page depending on which treatment best suits them. Each of the five web pages has beneficial information and resources regarding their recommended dental treatment plan.

How we built it

Dentestimate consists of two primary components: Artificial Intelligence and web application. The Artificial Intelligence component is namely a Keras Convolutional Neural Network that has been trained for 50 epochs on a total of 1000 images of the possible dental treatment plans a user can go through with. This means there are 200 unique images for each of the five groups of treatment plans. After figuring out that 50 epochs minimized loss and maximized accuracy, we achieved 91% reliability which builds customer confidence since they know they are getting good results. Additionally, the web application is powered by HTML, CSS, Javascript, and Flask to allow for a vivid homepage that first brings our users to a form they must fill out to receive their accurate dental treatment plan. Flask helped us combine Artificial Intelligence intelligence and web application since they are programmed in the Python language. This allowed us to save the weights in the web application’s file directory and run some scripts in the file to run our fast and valid Convolutional Neural Network.

Challenges we ran into

Some of the challenges we ran into were regarding our Artificial Intelligence. Since we made the Keras Convolutional Neural Network locally and for testing purposes in its preliminary stages, we didn’t have any user input taken in. However, once we integrated this into the web application, we had to change a lot of the code to meet the necessary prerequisites to interconnect both components of Dentestimate. We also ran into some trouble with the Flask form at the top of our web application. The flask documentation didn’t include much information regarding how to make a form in user data and an attachment (which is a picture in our case). Therefore, we used two separate states for collecting user information and collecting an image from a user, respectively.

Accomplishments that we're proud of

Our Machine Learning involves a Convolutional Neural Network trained on 50 epochs on 1000 images in a total of the following five most common dental treatments: Fillings, Dental Crowns, Tooth Extractions, Dental Implants, and Braces. Through minimizing loss and optimizing performance, we were able to achieve a 91% accuracy. Dentestimate is also highly reliable on top of the 91% accuracy since the website operates relatively quickly and can deliver essential and valuable information to our users. We ensure that everyone doesn’t have to deal with stress and dilemmas related to choosing among the many dental treatments. Dentestimate delivers information very quickly as the code responsible for the website and the neural network have been optimized to achieve impressive speed. With all the problems our users may face with their teeth, having a quick website is beneficial.

What we learned

We learned a lot about how Convolutional Neural Networks work and the primary reasons why they are used commonly amongst programmers that perform image recognition. We also learned more about Flask and how to efficiently and properly format and integrate a web application with some python code. Finally, we learned about practical debugging since not all of the issues that we faced with Flask were obvious at first. This effective debugging included reading about the conceptual knowledge on how a Flask application functioned, how to allow for users to upload attachments, etc.

What's next for Dentestimate

At present, users can determine which dental treatment plan BEST suits them. Still, they cannot choose other dental treatments that would also work out and ultimately improve their condition. In the future, we would like to figure out a way to allow the user to see each of the possible dental treatment plans of the five most common ones and the chances of each one being helpful towards a user. Presenting users with this information means they will have more confidence when choosing what is right for them as they can explore other plans.

Built With

Share this project: