/spring-boot-tensorflow-demo

Spring Boot and Tensorflow demos for Image-Recognition, Pose-Estimation, Object-Detection, Instance-Segmentation

Primary LanguageJavaApache License 2.0Apache-2.0

SpringBoot & Tensorflow Demos

Spring Boot demo application that leverages the Tensorflow SCSt App Starters and SCSt Computer Vision projects to perform Image-Recognition, Object-Detection, Image-Segmentation and Pose-Estimation. Under the hood the SpringBootTensorflowDemoApplication spring-boot demo uses the AggregateApplicationBuilder for in-memory binding of the existing Image-Recognition, Object-Detection, Image-Segmentation and Pose-Estimation Tesnerflow app starters.

Multiple pre-trained models are available for every task. Check the annotations in the SpringBootTensorflowDemoApplication class for further details.

Instance Segmentation, Pose Estimation and Object Detection

Quick Start

Download the pre-build spring-boot-tensorflow-demo-0.0.1-SNAPSHOT.jar SpringBoot application and run it form the command line:

java -jar ./spring-boot-tensorflow-demo-0.0.1-SNAPSHOT.jar --demoType=pose_estimation --server.port=8081

Select between following demos: pose_estimation, object_detection, image_recognition and instance_segmentation.

  • The pose_estimation, object_detection and instance_segmentation pipelines use the web camera for source input and plot the output in an Image-Viewer.
  • The image_recognition still uses File source (listening for new images in the /tmp/input folder) and plots the result in an Image-Viewer.

Build

git clone https://github.com/tzolov/spring-boot-tensorflow-demo.git
cd ./spring-boot-tensorflow-demo
./mvnw clean install

NOTE: Due to the snapshot dependencies on the Tensorflow app starters the desired functionality may not be present.