I'm a fresher aiming for computer vision and ML engineer roles. I finished a project and I'd like honest feedback on whether it's interview-worthy or not.
What it does: detects 6 kitchenware classes (plate, spoon, fork, knife, cup, glass) in live camera video on an Android phone, fully on-device.
What I did:
- Data (9,400+ images, ~6.5-7 hours total): I labeled it semi-automatically, not by hand-drawing every box.
- Ran Grounding DINO on 900 images (150 per class) to generate bounding boxes, then checked and corrected them by eye.
- Trained a seed YOLO model on those 900 images and used it to label the remaining images.
- Reviewed those labels by eye for missed or wrong boxes, and did the corrections in X-AnyLabeling.
- Published the dataset on Kaggle: https://www.kaggle.com/datasets/raunakgola/kitchenware-object-detection-dataset-yolo-format
- Model selection with Optuna: 25 trials, max 15 epochs each, maximizing mAP50-95. Search space:
- model: yolo26n/s, yolo12n/s, yolo11n/s, yolov9t/s, yolov8n/s (10 candidates)
- lr0: 1e-4 to 1e-2 (log scale)
- batch size: 8, 16 or 32 (capped for 24 GB VRAM)
- mosaic: 0.0 to 1.0
- Training: fine-tuned the two models I picked, YOLO26n and YOLO26s, on the full dataset.
- Compute: a RunPod RTX 4090 pod. Optuna, both training runs and the model conversion took about 5 hours in total and cost about $4.5. It saved me a lot of waiting compared with Google Colab.
- Export + quantization: exported to LiteRT and compared formats. Static INT8 was rejected. I went with 8-bit weights and float32 activations (w8a32): mAP50-95 0.9406 at 2.72 MB.
- App: Kotlin app with CameraX and LiteRT, GPU first with CPU fallback. It filters by class, has confidence/IoU sliders, and shows live FPS, latency and RAM. On my one test phone it ran about 10-14 FPS on GPU and about 4-5 FPS on CPU (single readings, not a proper benchmark).
Being upfront: I generated the Android app with an AI coding agent (Claude Code). I directed it and tested it, but I didn't hand-write the Kotlin. The ML side (data, Optuna, training, quantization decision) is my work.
Known weaknesses:
- The 0.94 mAP is on my validation split, not a separate real-world test set.
- The labels (train and val) came from the same semi-automatic pipeline, so the score partly reflects label consistency.
- It misses some objects and sometimes confuses fork and spoon.
- I tested on one phone only.
Repo: https://github.com/raunakgola/Wareye
My questions:
- Is this strong enough to help in interviews, or does the AI-built app hurt it?
- What would you add or fix first: a held-out real-world test set, error analysis, something else?
- Would you rather see more depth on the model side or a hand-written app?
Thanks for any honest feedback.