Coder Social home page Coder Social logo

aiamirul / auto-cam-movement-detection Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nagarajsmurthy/auto-cam-movement-detection

0.0 0.0 0.0 6.64 MB

Detecting the movement of the camera automatically is not a simple task for obvious reasons. Here, I have made an attempt to detect the movement of the camera either external or inbuilt using the concept of optical flow.

License: MIT License

Python 100.00%

auto-cam-movement-detection's Introduction

Auto-cam-movement-detection

Background subtraction is the basis for many computer vision tasks like motion detection, Invisibility cloak, etc. . It is a simple concept which comes with a drawback. Background subtraction works only with static background images/frames, that means, if you change the position of your camera it'll fail or gives very bad results. One possible way to overcome this is to initialize the background frame to a new static frame whenever a motion in the camera is detected.

Detecting the movement of the camera automatically is not a simple task for obvious reasons. Here, I have made an atempt to detect the movement of the camera either external or inbuilt using the concept of optical flow.

Steps:

  1. The features are selected using the ShiTomasi corner detection (http://www.ai.mit.edu/courses/6.891/handouts/shi94good.pdf). These features are selected only in the border regions assuming that the foreground object very rarely occupies the border region, in other words, the border region gives features belonging to the background region.
  2. These feature points are given to the Lucas-Kanade optical flow to track the points.
  3. If the distance between the previous and the current tracked points exceeds a threshold value, it can be concluded that the camera itself has been moved otherwise not.

This can be combined with other computer vision applications for better results, however this may not be the most robust solution for detecting camera movement.

auto-cam-movement-detection's People

Contributors

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