GithubHelp home page GithubHelp logo

juanjaho / real-time-object-detection-web-app Goto Github PK

View Code? Open in Web Editor NEW
42.0 1.0 10.0 113.24 MB

Web-based real-time object detection for YOLOv7 model.

Home Page: https://rtod.vercel.app/

License: GNU General Public License v3.0

JavaScript 6.97% TypeScript 62.92% CSS 30.11%
nextjs object-detection onnx onnx-torch onnxruntime onnxruntime-web privacy progressive-web-app pwa pytorch

real-time-object-detection-web-app's Introduction

Real-time Object Detection Web App

This project is a web-based application that utilizes real-time object detection to identify and label objects within an image or video stream. It is built using Next.js, ONNXRuntime, and YOLOv7 model.

demo.mp4

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

In order to run this project, you will need to have the following software installed on your machine:

  • Node.js
  • A web browser

Installation

  1. Clone the repository to your local machine:
https://github.com/juanjaho/real-time-object-detection-web-app.git
  1. Navigate to the project directory:
cd real-time-object-detection-web-app
  1. Install the necessary dependencies by running:
npm install
# or 
yarn install
  1. Start the development server by running:
npm run dev
# or
yarn dev
  1. Open your web browser and navigate to http://localhost:3000 to view the application.

Installation as PWA

This app can also be installed on your device (desktop or mobile) as a progressive web app (PWA). Here's how:

  1. Visit the app's URL in a web browser that supports PWAs (such as Google Chrome or Firefox).
  2. Look for the "Install" or "Add to Homescreen" button in the browser's interface.
  3. Click the button and follow the prompts to install the app.
  4. The app will now be installed on your device and can be launched from the homescreen like any other app.

Deployment

This project can be deployed to a web server for public access. For more information on deploying a Next.js application, please visit the official documentation

Built With

  • ONNXRuntime - An open-source project for running inferences using pre-trained models in a variety of formats.
  • YOLOv7 - A Object detection model which is used in this project.
  • Next.js - A JavaScript framework for building server-rendered React applications.
  • PWA - A progressive web app that can be installed on a user's device and run offline, providing a native-like experience.

Contributing

If you want to contribute to this project, please feel free to submit a pull request. Any contributions, big or small, are greatly appreciated!

Authors

Juan Sebastian - Initial work - @juanjaho

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

Acknowledgments

  • Special thanks to @WongKinYiu for creating such an amazing YOLOv7 model.

  • Hats off to the ONNXRuntime team for making such a powerful tool accessible to developers.

  • Referenced ONNXRuntime Web Demo for guidance on how to use ONNXRuntime in a web application.

  • Thank you to all the contributors to the open-source libraries used in this project.

  • Inspiration for this project was taken from my previous project AnimeArcaneGAN_Mobile

Citation for YOLOv7

@article{wang2022yolov7,
  title={{YOLOv7}: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors},
  author={Wang, Chien-Yao and Bochkovskiy, Alexey and Liao, Hong-Yuan Mark},
  journal={arXiv preprint arXiv:2207.02696},
  year={2022}
}

real-time-object-detection-web-app's People

Contributors

juanjaho avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.