Apra-Labs / ApraPipes

A pipeline framework for developing video and image processing application. Supports multiple GPUs and Machine Learning tooklits
MIT License
27 stars 33 forks source link

Sample Pipeline(s) ideas to showcase capabilities #233

Open mraduldubey opened 1 year ago

mraduldubey commented 1 year ago

Is your feature request related to a problem? Please describe. We should have multiple sample pipelines that can showcase the capabilities of ApraPipes. We can brainstorm ideas here.

Describe the solution you'd like

  1. We need to come up with ideas for such pipeline.
  2. We should come up with ideas for all platforms: Windows, Linux, Jetson.

Example 1

Face Tracking Sample

Pipeline: Webcam -> Face Detection -> Overlay Platform: Win/Lin/Jetson Requirement: Webcam

Example 2

Motion Detection

Pipeline: Webcam -> Mp4VideoWriter + Mp4VideoReader -> Motion Detection -> Overlay Platform: Win/Lin Requirement: Webcam

Example 3

Streaming from Webcam

Pipeline: Webcam -> WebrtcSink Platform: Jetson/Lin Requirement: Webcam

yashrajsapra commented 1 year ago

Example 4 Keyboard Stroke pipeline (Based On keyboard strokes we will be able to rotate/zoom/translate) Pipeline: Webcam -> Affine -> Resize ->render Platform: Jetson/Lin Requirement: Webcam

yashrajsapra commented 1 year ago

Example 5 Creating multiple Renderer windows (One for viewing live stream other for viewing recorded stream) Pipeline: Webcam -> Renderer , WebCam-> Mp4 Writer , Mp4Reader->renderer Platform: Jetson/Lin Requirement: Webcam

kumaakh commented 1 year ago

Has these been committed ? I have not seen any PRs @mraduldubey @yashrajsapra

yashrajsapra commented 1 year ago

Development has not started Akhil, currently we are exploring some more ideas

mraduldubey commented 1 year ago

Approach for adding samples

ApraPipes/
    - samples/
         - survelliance_timelapse_summary
              - survelliance_timelapse_summary.cpp #individual sample with Pipeline
              - survelliance_timelapse_summary_test.cpp  #boost test for the pipeline - to be integrated in the cloud builds later
              - CMakeList.txt # to build this sample
         - sample2
         - CmakeList.txt # to build all samples
         - README.md

Note:

  1. The boost test will ensure that the tests build as part of regular builds and do not become outdated.

Samples Folder

  1. build aprapipes using the readme (redirect)
  2. build and run the sample
  3. build and run all the samples
  4. run all sample boost tests

Note From @kumaakh : Also these tests should make use of command like arguments to pass to the test, so that if the webcam device needs to be set or resolution needs to be set it can be done. The way to pass command like argument is already mentioned in main readme.md

Updated the desciption @nitins7

mraduldubey commented 1 year ago

Example 6: @yashrajsapra please add the meetup demo pipelines in the above format

mraduldubey commented 1 year ago

Example 7: New Idea: A pipeline to generate timelapse of any given video. We may support modes likes Landscape, Urban, Generic etc.

mraduldubey commented 1 year ago

Example 8: New Idea: Surveillance summary timelapse based on motion detection

mraduldubey commented 1 year ago

Add Examples to showcase frame work features, including but not limited to:

  1. Relay Feature
  2. Valve Module
  3. Ratio (how to drop frames)
  4. Flush Queue
  5. Disabled Sieve
mraduldubey commented 5 months ago

Example 6: @yashrajsapra please add the meetup demo pipelines in the above format

@yashrajsapra point us to the pravega sample

mraduldubey commented 4 months ago

Add Examples to showcase frame work features, including but not limited to:

  1. Relay Feature
  2. Valve Module
  3. Ratio (how to drop frames)
  4. Flush Queue
  5. Disabled Sieve
  1. Switch between live an recorded views
  2. Thumbnail Generator
  3. Stats Summary example
  4. Mp4 Seek to start
  5. Muxer based solution