Moving cameras Multiple cameras

Similar documents
2003 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes

Feature Tracking and Optical Flow

Motion Tracking and Event Understanding in Video Sequences

Feature Tracking and Optical Flow

Learning the Three Factors of a Non-overlapping Multi-camera Network Topology

Multi-Camera Target Tracking in Blind Regions of Cameras with Non-overlapping Fields of View

Visual Monitoring of Railroad Grade Crossing

CSE 252B: Computer Vision II

Consistent Labeling of Tracked Objects in Multiple Cameras with Overlapping Fields of View

Motion Detection and Segmentation Using Image Mosaics

EE795: Computer Vision and Intelligent Systems

Multi-stable Perception. Necker Cube

Camera-to-Camera Mapping for Hybrid Pan-Tilt-Zoom Sensors Calibration

Motion. 1 Introduction. 2 Optical Flow. Sohaib A Khan. 2.1 Brightness Constancy Equation

Peripheral drift illusion

A Fast Linear Registration Framework for Multi-Camera GIS Coordination

Best Practices Guide for Perimeter Security Applications

Content Description Servers for Networked Video Surveillance

Optical flow and tracking

A Noval System Architecture for Multi Object Tracking Using Multiple Overlapping and Non-Overlapping Cameras

CS 4495 Computer Vision A. Bobick. Motion and Optic Flow. Stereo Matching

Moving Object Tracking in Video Using MATLAB

Panoramic Appearance Map (PAM) for Multi-Camera Based Person Re-identification

Motion and Optical Flow. Slides from Ce Liu, Steve Seitz, Larry Zitnick, Ali Farhadi

Designing a Site with Avigilon Self-Learning Video Analytics 1

EE 264: Image Processing and Reconstruction. Image Motion Estimation I. EE 264: Image Processing and Reconstruction. Outline

Final Exam Study Guide

Tracking Humans Using a Distributed Array of Motorized Monocular Cameras.

Fundamental matrix. Let p be a point in left image, p in right image. Epipolar relation. Epipolar mapping described by a 3x3 matrix F

Motion in 2D image sequences

CS 4495 Computer Vision A. Bobick. Motion and Optic Flow. Stereo Matching

Finally: Motion and tracking. Motion 4/20/2011. CS 376 Lecture 24 Motion 1. Video. Uses of motion. Motion parallax. Motion field

EE795: Computer Vision and Intelligent Systems

Real-time target tracking using a Pan and Tilt platform

Research Motivations

Chapter 12 3D Localisation and High-Level Processing

Mosaics. Today s Readings

Segmentation and Tracking of Partial Planar Templates

Real-Time Human Detection using Relational Depth Similarity Features

Ninio, J. and Stevens, K. A. (2000) Variations on the Hermann grid: an extinction illusion. Perception, 29,

A System for Real-time Detection and Tracking of Vehicles from a Single Car-mounted Camera

View Registration Using Interesting Segments of Planar Trajectories

Chapter 3 Image Registration. Chapter 3 Image Registration

Class 3: Advanced Moving Object Detection and Alert Detection Feb. 18, 2008

Video Alignment. Literature Survey. Spring 2005 Prof. Brian Evans Multidimensional Digital Signal Processing Project The University of Texas at Austin

Mindtree's video analytic software.

CS664 Lecture #19: Layers, RANSAC, panoramas, epipolar geometry

The IEE International Symposium on IMAGING FOR CRIME DETECTION AND PREVENTION, Savoy Place, London, UK 7-8 June 2005

Multi-Camera Calibration, Object Tracking and Query Generation

BSB663 Image Processing Pinar Duygulu. Slides are adapted from Selim Aksoy

Chapter 9 Object Tracking an Overview

CS 4495 Computer Vision Motion and Optic Flow

Computational Optical Imaging - Optique Numerique. -- Single and Multiple View Geometry, Stereo matching --

Face detection, validation and tracking. Océane Esposito, Grazina Laurinaviciute, Alexandre Majetniak

Image processing and features

Global Flow Estimation. Lecture 9

Video Alignment. Final Report. Spring 2005 Prof. Brian Evans Multidimensional Digital Signal Processing Project The University of Texas at Austin

CS4670: Computer Vision

Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation

Comparison between Motion Analysis and Stereo

Dense Image-based Motion Estimation Algorithms & Optical Flow

Multibody reconstruction of the dynamic scene surrounding a vehicle using a wide baseline and multifocal stereo system

Cooperative Targeting: Detection and Tracking of Small Objects with a Dual Camera System

Cs : Computer Vision Final Project Report

Ruch (Motion) Rozpoznawanie Obrazów Krzysztof Krawiec Instytut Informatyki, Politechnika Poznańska. Krzysztof Krawiec IDSS

ROBUST OBJECT TRACKING BY SIMULTANEOUS GENERATION OF AN OBJECT MODEL

Aircraft Tracking Based on KLT Feature Tracker and Image Modeling

EE795: Computer Vision and Intelligent Systems

Local Feature Detectors

Robert Collins CSE598G. Intro to Template Matching and the Lucas-Kanade Method

Detecting and Tracking Moving Objects for Video Surveillance. Isaac Cohen and Gerard Medioni University of Southern California

EVALUATION OF SEQUENTIAL IMAGES FOR PHOTOGRAMMETRICALLY POINT DETERMINATION

Human Upper Body Pose Estimation in Static Images

Non-rigid body Object Tracking using Fuzzy Neural System based on Multiple ROIs and Adaptive Motion Frame Method

A Street Scene Surveillance System for Moving Object Detection, Tracking and Classification

MULTIVIEW REPRESENTATION OF 3D OBJECTS OF A SCENE USING VIDEO SEQUENCES

Image Acquisition Image Digitization Spatial domain Intensity domain Image Characteristics

Occlusion Robust Multi-Camera Face Tracking

ROBUST PERSON TRACKING WITH MULTIPLE NON-OVERLAPPING CAMERAS IN AN OUTDOOR ENVIRONMENT

Today s lecture. Image Alignment and Stitching. Readings. Motion models

Human Motion Detection and Tracking for Video Surveillance

Outline. Data Association Scenarios. Data Association Scenarios. Data Association Scenarios

Tracking objects across cameras by incrementally learning inter-camera colour calibration and patterns of activity

Functionalities & Applications. D. M. Gavrila (UvA) and E. Jansen (TNO)

Exploration of panoramic surveillance. Comparing single-lens panoramic cameras with multi-lens, fixed and PTZ cameras

AUTOMATIC RECTIFICATION OF LONG IMAGE SEQUENCES. Kenji Okuma, James J. Little, David G. Lowe

What is an Image? Image Acquisition. Image Processing - Lesson 2. An image is a projection of a 3D scene into a 2D projection plane.

A Low Power, High Throughput, Fully Event-Based Stereo System: Supplementary Documentation

Tracking and Recognizing People in Colour using the Earth Mover s Distance

Image stitching. Announcements. Outline. Image stitching

Multizoom Activity Recognition Using Machine Learning

Particle Tracking. For Bulk Material Handling Systems Using DEM Models. By: Jordan Pease

Augmented Reality VU. Computer Vision 3D Registration (2) Prof. Vincent Lepetit

Computer Vision Lecture 20

Measurement of Pedestrian Groups Using Subtraction Stereo

Omni Stereo Vision of Cooperative Mobile Robots

Prof. Fanny Ficuciello Robotics for Bioengineering Visual Servoing

Target Tracking Using Mean-Shift And Affine Structure

VIDEO STABILIZATION WITH L1-L2 OPTIMIZATION. Hui Qu, Li Song

Computer Vision with MATLAB MATLAB Expo 2012 Steve Kuznicki

Transcription:

Multiple cameras Andrew Senior aws@andrewsenior.com http://www.andrewsenior.com/technical

Most video analytics carried out with stationary cameras Allows Background subtraction to be carried out Simple, fast & effective However, many cameras are not stationary Nominally static cameras may move through vibration or being knocked PTZ cameras offer a much larger area of coverage for the money, offer very high zoom factors and are widely used, especially in retail High-res omni cameras beginning to play some of this role Cameras are increasingly applied on vehicles Cars, UAVs Hand-held and head-mounted cameras are increasing

Overview Nominally static cameras Camera moved alert Camera stabilization & motion PTZ cameras Human control Automatic control Active control Tracking in moving cameras

Camera moved alert Simplest case- want to alert the user, or index the video if the camera is moved Indicator of a potential threat (intruders turn camera so their activities are not recorded- looks more innocent than covering a camera or disconnecting it Indication of system not working as designed, when moved accidentall, e.g. by storm, workmen etc. Trivial detection Look at area of BGS region False positives from large moving objects/lighting changes False negatives from uniform scenes More complex detection from motion estimation

Camera motion estimation Point tracking algorithm Find good features to track in initial image E.g. corners (many algorithms) Track features using image patch around corner Lukas-Kanade Correlation Locate features to sub-pixel accuracy Produces a set of motion vectors

RANSAC Need to find the global motion from possibly conflicting motion vectors RANdom Sample And Consensus Randomly choose N vectors & solve for the motion Translation (average vectors), affine (solve least squares), similarity Now count how many of the vectors are consistent with this motion (e.g. within epsilon) Repeat Choose the motion which is consistent with the greatest number of vectors

Motion detection The global motion can be thresholded to detect camera motion, and also used to detect when the camera has stopped moving. Send an alert when the camera moves or stops Index video by camera status Turn on & off algorithms based on camera motion e.g. when a human operator starts to control a PTZ camera Suspend tracking & BGS during motion Reacquire background when the camera stops Trajectory of the camera can be used as an index Common feature in broadcast news indexing

Motion compensation For small motions, shift (translation) or warp (affine) the image to overlay the reference image. Can carry out BGS as on a still image Edges still cause BGS artefacts, depending on sensitivity of BGS because of quantization effects Large motions lose some of the image For larger motions can use other techniques Multiple reference images Full scene background image Re-acquire background after every move

Construct panoramas from moving camera Stitch frames together to make panorama Superimpose current frame on panorama With camera on repeated video tour, can construct a video of panoramas

Summarized camera tours- wide area coverage with one camera Automatically generated panoramas summarize department and allow difference detection Generated independently

Multiscale imaging: Active camera control

Multiscale imaging For a wide range of computer vision applications, we need to acquire high-resolution imagery over a wide active area Face recognition Gait recognition Gesture recognition Audio-Visual speech recognition High resolution camera may never achieve sufficient resolution- and have bandwidth costs Solution: PTZ cameras New problem: directing attention of PTZ cameras automatically

Active camera control Trivial solution Set up preset locations with binary triggers e.g. when door opens zoom camera to door Alternative When car stops at barrier, zoom in to license plate region Co-locate fixed, wide angle and PTZ cameras Track objects in wide angle camera Servo PTZ camera to alt/azimuth of target

Automatic PTZ control Single camera [Comaniciu 00] no peripheral vision target acquisition is slow Fully calibrated 3D control wide-baseline stereo (IBM active head tracker [Hampapur2003]) requires 3 cameras and full calibration Hand calibrated points [Zhou03] not automatic Two calibrated cameras and ground plane assumption [Darrell96] This system: requires 2 cameras assumes ground plane All systems require some model of what they should track (head, face) Originally nearly all systems were indoors GE system

Wide base-line stereo for active camera control 20.5 Ft Pan-tilt-zoom camera Door Pan-tilt-zoom camera Static Camera For Wide Baseline Stereo Monitored Space 19.5 Ft Static Camera For Wide Baseline Stereo

Face Cataloger Architecture: Static Camera Static Camera Back ground Back ground Subtraction Subtraction 2D Multi-Blob 2D Multi-Blob Tracker Tracker 3D Multi-blob tracker 3D Head Position Active Camera Manager Video Camera Cataloger Controller Control Camera Assignment Policy Camera Control Policy 3D Tracks Active Camera Video Cataloger

Multi-scale Video Static Camera View X,Y position plot Close-up View Active Camera

Face Cataloger With Feedback Static Camera Static Camera Back ground Back ground Subtraction Subtraction 2D Multi-Blob 2D Multi-Blob Tracker Tracker 3D Multi-blob tracker 3D Head Position Active Camera Manager Video Camera Cataloger Controller Control Camera Assignment Policy Camera Control Policy 3D Tracks Face Detection Active Camera Video Cataloger

A sample run of the Face Cataloger

Automatically learn the mapping from fixed camera to PTZ parameters SSE Tracks Objects Camera 1 (fixed) Steer Camera 2 Camera 2 (PTZ) Map to Cam2 Predict Head Location Calculate Pan/Tilt

Learn Cam1-Cam2 mapping in image coordinates Following Stauffer [X] observe tracks over a period of time and estimate a homography from Cam1-Cam2 using points from simultaneous tracks x =Hx x= (x,y,1) T ; x = (x,y,z ) T ; SSE Tracks Objects Map to Cam2 Camera 1 (fixed) Predict Head Location Steer Camera 2 Calculate Pan/Tilt Camera 2 (PTZ) Homography Foot position in cam1 H Foot position in cam2

Learning homography from simultaneous tracks Track synchronously in two views Store tracks in database Retain only track segments that occur while there are one or more tracks in the other camera RANSAC: Iterate Choose 3 track segments in cam1 randomly For each of these, randomly choose one simultaneous track from cam2 Compute homography for the simultaneous points in the two views Count number of points in cam1 whose mapping is close to the simultaneous point in cam2 Retain homography with highest count One hour of tracking data from two cameras

Matching points 3 paths chosen at random (red points) Homography estimated on these points All points that match under this homography shown in green

Cam1-Cam2 homography Cam 1 Cam 2 Cam 2 warped to match cam1 Cam 1 warped to match cam2

Learn head position prediction SSE Tracks Objects Camera 1 (fixed) Steer Camera 2 Homography only works for points in a Predict (ground) plane Map to Calculate Head Cam2 Pan/Tilt Head plane not effective because Location heights vary, people bend over etc. Learn people s heights, [cf Brown] but exploiting the fact that we can see how tall a person is in the fixed camera view. (assuming two oblique camera views) Learn the mapping A: h 2 =h 1 A(x 1, y 1 ) to calculate a least-squares fit on a data set Camera 2 (PTZ) + Height map Height and position in cam1 Height and position in cam2 Height and position (i.e. head position) in cam2

Height map for object of fixed apparent height Cam 1 with height map Cam 2 with height map Cylinders show appearance of a cylinder of fixed (image plane) height in the other camera, as it moves around.

Learn PTZ mapping Camera must be steered to target given a location in Cam2 image coordinates Requires mapping from (x,y) pixels to (p,t) SSE Tracks Objects Map to Cam2 Camera 1 (fixed) Predict Head Location Steer Camera 2 Calculate Pan/Tilt Camera 2 (PTZ) Use point tracker and RANSAC to estimate image motion induced by Pan/Tilt commands Execute a pre-programmed set of p,t movements: star and spiral From measured points, estimate linear map T (least squares) from (x,y) to (p,t) (p,t) T =T(x -x 0, y -y 0, 1) T

x and y displacements vs Pan and Tilt inputs Learn displacements corresponding to a particular PT command by tracking points & measuring displacements

Complete control chain SSE Tracks Objects Camera 1 (fixed) Steer Camera 2 Camera 2 (PTZ) Map to Cam2 Predict Head Location Calculate Pan/Tilt H A T PTZ map Height and position in cam1 Head position in cam2 t Camera motion to center head in cam 2 p

Video

Results: Target loss vs scale increase trade-off Zoom Factor Probability % Head area (px) 1.0 1.5 2.0 2.5 3.0 4.0 5.0 6.0 8.0 10.0 98.9 97.1 89.0 72.1 55.6 30.3 17.6 11.2 7.0 4.8 8 20 32 50 72 128 200 288 512 800 10.0 4.8 800 Head position within frame Error components (320x240 images) Measurement Error sources RMS Head position (pixels) Static homography 24.0 Dynamic head/foot detection, homography error, height prediction, camera lag, 58.0

Tracking in moving camera Use BGS in stabilized images Track feature patches Use mean shift type algorithms Closed-loop control of camera to track a moving object

Multiple cameras Surveillance systems typically have multiple cameras Some shared infrastructure: DVR, operator Operators want complete coverage- blind spots can be exploited by intruders/shoplifters Multiple points of view can provide richer information

Automatically Designing camera layouts Various criteria: Cost number, type of cameras Visibility Resolution Direction of visibility (face capture) 2D vs 3D E.g. Optimal Placement of Cameras in Floorplans to Satisfy Task Requirements and Cost Constraints Ugur Murat Erdem and Stan Sclaroff

Camera handoff Want continuous tracking as an object moves from camera to camera With complete (overlapping) or sparse (not connected) cameras Or mixtures of both disjoint cliques of overlapping views Track objects independently in each view, but make labels correspond Use time, geometry and appearance to associate tracks from one camera to another Some approaches track an object simultaneously in multiple views, but these tend to be approaches with considerable intentional overlap Representation choice World coordinates linked, view-based representations

Homographies of overlapping cameras: Stauffer Learn homography of overlaps between cameras Observe tracks & use RANSAC to estimate parameters Learn overlapping regions Javed? Homography can now be used to predict when & where an object will appear in another camera view. Give same label to tracks from two different cameras Crowded scenes may result in ambiguities

Learn Field-of-View lines When a person exits one camera, could match any of the people in the other camera Use Hough transform to fit best line through these hypothesis points Sohaib Khan and Mubarak Shah, Consistent Labeling of Tracked Objects in Multiple Cameras with Overlapping Fields of View, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 25, No. 10, October 2003

Non-overlapping cameras Learn when there is a connection from one camera to another Learn sources and sinks by clustering track starts & ends in each view Look for correlations between entering at a source and exiting from another sink. Learn time delay e.g. Histogram Parzen D. Makris, T. Ellis, "Automatic Learning of an Activity-Based Semantic Scene Model", IEEE International Conference on Advanced Video and Signal Based Surveillance, July, Miami, FL, USA, pp. 183-188. (2003)

Unobserved regions Chris Stauffer, "Learning to Track Objects Through Unobserved Regions", Proceedings of the IEEE Workshop on Motion, 2005. Traffic lights will confuse temporal correspondances, along with multiple paths, or other effects that change the object speed

Learning camera topologies Omar Javed, Zeeshan Rasheed, Khurram Shafique, and Mubarak Shah, Tracking Across Multiple Cameras With Disjoint Views, The Ninth IEEE International Conference on Computer Vision, Nice, France, 2003. Use parzen windows to estimate time delay T. Ellis, D. Makris, J. Black, "Learning a Multi-camera Topology", Joint IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance, October, Nice, France, pp. 165-171. (2003) J. Black, T. Ellis, P Rosin, "Multi View Image Surveillance and Tracking", IEEE Workshop on Motion and Video Computing, December, Orlando, USA, pp. 169-174. (2002)

Short term object recognition Use object appearance to determine if an object is seen again in a different (or same) camera Identification is hard Biometrics (also license plate recognition) Disambiguation may only need a weak recognizer Short time scale minimizes some changes (age, appearance) Can use clothing as well as other attributes But not for store employees wearing a uniform Or in NY winter where everyone wears black

Short term object recognition Colour histograms (perhaps spatial) Colour constancy problem Have to compensate/calibrate for different cameras, AWB, different lighting Omar Javed, Khurram Shafique, and Mubarak Shah, Appearance Modeling for Tracking in Multiple Non-overlapping Cameras, IEEE CVPR 2005, San Diego, June 20-26. Use Brightness transfer function between pairs of cameras (found in a limited subspace of functions) Map histograms using BTF

Tracking in multiple cameras Project foot positions into ground plane with homography and find correspondances Use medial axes for correspondance