Inspiration
Our project was inspired by our experiences working in dental clinics, where we saw firsthand the challenges in identifying dental issues. This led us to consider how we could apply our knowledge of machine learning to create effective education and training tools. Ultimately, we aim to address the broader issue of access to dental care and improve general oral health through innovative technology.
What it does
Imagine you're a dentistry student, overwhelmed by dozens of dental X-rays and struggling to confidently distinguish between healthy and problematic cases. Our project aims to solve this very problem. We're developing an AI-powered oral health chatbot that helps users—whether students, professionals, or patients—identify potential dental issues from X-rays in real time. Simply upload an image, and the chatbot provides intelligent, interpretable feedback, empowering users with greater confidence and accuracy.
How we built it
Dentura is a full-stack project that uses a FastAPI backend, a Node.js, and a React frontend to perform real-time X-ray image analysis for teeth. A pretrained ResNet50 model was used to train and fine tune Dentura's ML model on a provided dataset using 20 epochs in a Google Colab enviornment. Credits to Mohamadreza Momeni for providing this dataset in https://www.kaggle.com/datasets/imtkaggleteam/dental-opg-xray-dataset. Further credits to Manar Abu Talib, Mohammad Adel Moufti, Qassim Nasir, Yousuf Kabbani, Dana Aljaghber, Yaman Afadar, Transfer Learning-Based Classifier to Automate the Extraction of False X-Ray Images From Hospital's Database, International Dental Journal, Volume 74, Issue 6, 2024, Pages 1471-1482, ISSN 0020-6539, https://doi.org/10.1016/j.identj.2024.08.002. (https://www.sciencedirect.com/science/article/pii/S0020653924014138). The FastAPI backend was used to handle the best trained model of the dentistry dataset. The API then automatically calls an endpoint service built in the Node.js backend. The React webpage frontend further polled the backend periodically, to ultimately summarize the prediagnositics of a patient's teeth to the dentist.
Challenges we ran into
- Version control: coordinating merge conflicts across multiple branches was difficult while there are multiple members working on different components.
- Frontend-backend integration: We had trouble linking the API using the trained model to the frontend, requiring significant communication between the backend and frontend.
- Limited dataset: The accuracy of our model was hindered due to the limited dataset, causing our model to overfit at very early stages of training. Due to the limited dataset, it was difficult for us to evaluate which pre-trained neural network is best at performing this classification task as most of them would overfit.
Accomplishments that we’re proud of
- Model Training: we successfully trained our own custom machine learning model using a specialized dataset.
- Website Launch: We’re proud to have designed, developed, and launched a functional website for our project.
- Functional Chatbot: we developed a chatbot that not only provides consistent responses but also aims to offer interpretable feedback.
- Developed a meaningful project that benefits the community and demonstrates innovation, ultimately allowing us to learn more about a crucial career: dentists and dentist assistant.
What we learned
- ML: We learned how to use transfer learning to fine-tune a model to classify between 6 classes of oral health conditions. We froze the weights in the convolutional (feature extraction) layers and trained the fully connected (last) layer of ResNet50 enabling fine-tuning for our task.
What's next for Dentura
- Gen AI: We can incorporate a generative AI to create a chatbot that can receive a variety of images and generate a response on a patient’s overall oral health condition.
- Customer Experience: adapting towards customer-based solutions for underserved communities
- Mobilized app to increase accessibility.
- Login system through SQL to store dentist accounts to store patient information for personalizing patient-dentist relationship.
Log in or sign up for Devpost to join the conversation.