SmartVision_AI / app.py
GeetamSharma's picture
Upload app.py with huggingface_hub
1a999ba verified
import streamlit as st
st.set_page_config(
page_title = "SmartVision AI",
page_icon = "πŸ€–",
layout = "wide",
)
CLASS_NAMES = [
"airplane", "bed", "bench", "bicycle", "bird",
"bottle", "bowl", "bus", "cake", "car",
"cat", "chair", "couch", "cow", "cup",
"dog", "elephant", "horse", "motorcycle", "person",
"pizza", "potted_plant", "stop_sign", "traffic_light", "truck"
]
st.title("πŸ€– SmartVision AI")
st.subheader("Intelligent Multi-Class Object Recognition System")
st.markdown("---")
col1, col2, col3, col4 = st.columns(4)
with col1:
st.metric("Total Classes", "25")
with col2:
st.metric("Training Images", "2,500")
with col3:
st.metric("CNN Models", "4")
with col4:
st.metric("Detection Model", "YOLOv8")
st.markdown("---")
col1, col2 = st.columns(2)
with col1:
st.subheader("πŸ“‹ Project Overview")
st.markdown("""
SmartVision AI is a comprehensive computer vision platform that combines:
- **Transfer Learning** using 4 CNN architectures
- **Object Detection** using YOLOv8 with bounding boxes
- **25 Object Classes** from the COCO dataset
- **Real-time Inference** for immediate predictions
""")
st.subheader("πŸ—οΈ Tech Stack")
st.markdown("""
- **Deep Learning** : TensorFlow / Keras
- **Detection** : Ultralytics YOLOv8
- **Dataset** : COCO 2017 (25-class subset)
- **Deployment** : Streamlit + Hugging Face Spaces
""")
with col2:
st.subheader("πŸ“Š Model Performance")
results = {
"VGG16" : 64.27,
"ResNet50" : 73.87,
"MobileNetV2" : 69.60,
"EfficientNetB0": 72.53,
}
for model, acc in results.items():
st.metric(model, f"{acc:.2f}%")
st.markdown("---")
st.subheader("🎯 25 Object Classes")
categories = {
"πŸš— Vehicles" : ["car","truck","bus","motorcycle","bicycle","airplane"],
"πŸ‘€ Person" : ["person"],
"🚦 Outdoor" : ["traffic_light","stop_sign","bench"],
"🐾 Animals" : ["dog","cat","horse","bird","cow","elephant"],
"🍽️ Kitchen & Food" : ["bottle","cup","bowl","pizza","cake"],
"πŸͺ‘ Furniture" : ["chair","couch","bed","potted_plant"],
}
cols = st.columns(3)
for i, (category, classes) in enumerate(categories.items()):
with cols[i % 3]:
st.markdown(f"**{category}**")
st.markdown(", ".join(classes))
st.markdown("---")
st.subheader("πŸ—ΊοΈ Navigation Guide")
col1, col2, col3, col4 = st.columns(4)
with col1:
st.info("πŸ” **Classification**\nAll 4 CNN models")
with col2:
st.info("πŸ“¦ **Detection**\nYOLO bounding boxes")
with col3:
st.info("πŸ“Š **Performance**\nModel comparison")
with col4:
st.info("ℹ️ **About**\nProject details")
st.markdown("---")
st.caption("Built with TensorFlow, YOLOv8 and Streamlit")