Giter Club home page Giter Club logo

yolo-object-detection-in-java's Introduction

YOLO-object-detection-in-java

A java based template for streaming video based object detection using only YOLO weights

What this project is about :

While there is lot of focus in doing deep learning based image classification and object detection models in python and consequently there are numerous blogs showing how to do the same there is little information on how to use JAVA based packages like OpenCV in a standalone manner to do image classification and recognition tasks ,this project focuses on a step by step approach on doing a video stream analysis using nothing but JAVA , OpenCV package in java and YOLO . Keep in mind we do not use tensorflow/Darkflow/Darknet in this project . In next sections we go thru in detail on what is object detection , what is YOLO and how to implement YOLO using OpenCV and JAVA . We will follow it up with a sample JAVA code using YOLO models to detect objects in Video stream explained in Detail

Why we not use Python as our language for this project :

We don’t use python simply because

  1. As already mentioned there are multiple blogs , projects, repos showcasing how to use python with different deep learning frameworks like Torch ,Keras ,Caffee, Tensorflow for image recognition
  2. Image detection and object recognition is an upcoming field in area of digitalization , however most systems and industries that need to be digitalized run on java based platforms consequently it might be difficult for them use languages like python in their existing architecture.
  3. Though there are hybrid architectures that attempt to leverage both older platforms with newer frameworks like tensorflow along with python these types of architectures often lead to speed scalability issues thus making project deployments and maintainace difficult

Why we not use tensorflow for this project :

As this blog explains Running deep learning models is computationally expensive. And when it comes to image processing with computer vision . it’s hard to run computer vision models on edge devices like Raspberry Pi, and making a portable solution is difficult with deep learning libraries like TensorFlow or PyTorch

What is our stack :

For this project we will use the following:

  1. JAVA SE 8 get it here : https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  2. OpenCV 4.0 , get it here : https://opencv.org/
  3. TIBCO Streambase : I use TIBCO Streambase a complex event processing engine to compile and run this project but you can use any standard IDE

##We will discuss the code in detail in a blogpost which i will publish shortly for now lets straight away get into coding

For this its assumed user has familarity on Opencv and YOLO as well as their setup , a blog post shortly will explain these as well

yolo-object-detection-in-java's People

Contributors

suddh123 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.