01 · DETECT APPLIED AI RESEARCH BUILD
DentXpert, dental care with computer vision
A dental care companion that checks photos of your teeth for signs of caries using YOLOv8, then helps you learn prevention and find real care.
- Role
- Final year project, sole designer and developer
- Platform
- Android (Flutter)

The problem
Tooth decay is one of the most common diseases in the world and it is usually found late, at the dentist, after the damage is done. People need an early, private, low friction way to check and then act.
My contribution
I designed and built the entire app for my final year project: the guided capture flow, the YOLOv8 model integration with selectable tiers, the results experience, a prevention library, a care directory and Firebase accounts.
Core stack
- Flutter
- Dart
- YOLOv8
- Firebase
Proof it works
Gold Award at JIIICaS 2024 and a published paper on the detection approach.
What it is
Context
DentXpert began as my final year project at IIUM and grew into the piece of work that set my direction. The idea is simple to say and hard to do well: let someone photograph their own teeth and get an honest first read on whether caries might be present.
The app wraps that detection moment in a complete care loop. A Learn library teaches prevention, a directory helps people find dentists and clinics, and accounts keep everything in one place. Detection alone is a demo. Detection inside a care journey is a product.
What made it hard
The challenge
Object detection models are only as good as their input, and phone photos of teeth are hostile input: bad light, partial views, motion blur. The interface had to raise input quality without a manual, so the capture flow requires at least five images from five different angles before the model runs.
The second challenge was honesty. A student project that shouts diagnosis is dangerous. Every screen had to hold the line that this is an early check that points you to a professional, which shaped the wording, the results framing and the presence of the education and directory features.
The experience
A walk through the product

01
The home screen keeps the promise plain: check your teeth, or find real care. Two actions, no clutter.

02
Detection starts with an informed choice. Three YOLOv8 tiers trade speed for thoroughness, and the app asks for at least five photos from five angles so the model actually sees enough to be useful.

03
Detection without education is a dead end. The Learn library covers prevention properly: brushing, flossing, rinsing, and why each one matters.

04
Accounts, language, dark mode and privacy controls run on Firebase, the same platform that serves the learning content.
What I built
The work, lane by lane
Detection flow
- Guided capture that requires at least five photos from five different angles before inference runs.
- Three selectable YOLOv8 model tiers, from a fast lite version to a thorough ultra version.
- A results experience that presents annotated findings as a first check to discuss with a dentist.
Care and learning
- A prevention library covering brushing, flossing and rinsing with plain language guidance.
- A directory of dentists and clinics so a worrying result leads somewhere real.
Platform
- Flutter app structure with Firebase authentication, profiles and content.
- Settings for language, dark mode and privacy, built in from the start rather than bolted on.
Engineering decisions
Decisions and their trade-offs
Real decisions cost something. Each of these names its price.
01Three model tiers instead of one hidden model
The model picker exposes lite, pro and ultra YOLOv8 variants so the person chooses between speed and thoroughness, and understands that a model is making the call.
Trade-offIt adds a decision before the first result, and some users would prefer the app to just pick. I chose transparency over one tap convenience because this is health adjacent territory.
02Five photos from five angles as a hard requirement
Inference will not run on a single blurry photo. The capture flow demands coverage, which measurably improves what the model has to work with.
Trade-offIt is real friction, and friction costs completions. I accepted that because a confident answer on bad input is worse than asking for thirty more seconds of effort.
03A care loop around the model, not a bare detector
Learn content and the clinic directory are not filler. They turn a detection result into a next step, which is the actual job.
Trade-offBuilding education and directory features took time that could have gone into squeezing more accuracy from the model. For a product about health behaviour, I would make the same call again.
Under the hood
How the system holds together
Photos move from the guided capture screen into whichever YOLOv8 tier the person selected, and annotated results come back for review. Firebase carries accounts, settings and the learning content.
Deeper technical notes
- The three tiers are genuinely different YOLOv8 variants, evaluated during the project with precision, recall and mAP, the standard object detection metrics.
- The five angle requirement exists because caries evidence is positional. A single frontal shot hides the surfaces where decay actually starts.
- The published paper, Deep Learning Approach for Dental Anomalies X-ray Imaging using YOLOv8, documents the detection approach behind the app.
Gallery
Every screen, up close
Real screenshots from the shipped build, open any of them for a closer look.
Quality, privacy, accessibility
Evidence of care
- Guided capture raises input quality instead of blaming the user for bad photos.
- Results are framed as an early check that points to a professional, never a diagnosis.
- Education and a care directory are built in, so a result always has a next step.
- The models were evaluated with precision, recall and mAP rather than eyeballed.
Where it stands
Outcome and current proof
- Gold Award at JIIICaS 2024.
- Published research: Deep Learning Approach for Dental Anomalies X-ray Imaging using YOLOv8.
- The habits formed here, guided input, honest framing and human review, carry directly into my later AI work on Grocs and AIMARA.
Technologies
Chosen for reasons
- Flutter
- One codebase with fast iteration for a solo final year timeline, and a clean widget model for the guided capture flow.
- Dart
- Comes with Flutter and kept the whole app in one language.
- YOLOv8
- State of the art object detection at the time, with variants small enough to serve in a mobile product.
- Firebase
- Auth, profiles and content without running my own backend, which kept the focus on the detection experience.
For your project
What this experience enables
- Computer vision features in mobile apps, from capture UX through model integration to honest results.
- AI products in sensitive territory where framing, guardrails and next steps matter as much as accuracy.
- Research work carried through to a finished, award winning product rather than a notebook.