21
Open Source UAS Software Toolkits Keith Fieldhouse Technical Lead, Kitware Inc. [email protected] 1

Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

  • Upload
    vunhi

  • View
    231

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Open Source UAS Software Toolkits Keith Fieldhouse Technical Lead, Kitware Inc. [email protected]

1

Page 2: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Best known for open source toolkits and applications Collaborative software R&D: • Algorithms & Applications • Image & Data Analysis • Software Process & Infrastructure • Support & Training Supporting all sectors: Industry, Government, Academia, Commercial

SOFTWARE PROCESS

ParaView

2

Presenter
Presentation Notes
Kitware is a small software R&D company that maintains and builds on open source toolkits to help solve technical challenges for commercial, government, industry, and academic customers. With expertise in areas of scientific computing including visualization, high performance computing, medical computing, and computer vision our business model is to engage in collaborative R&D, customize our open source software for particular applications and provide support including training. Kitware is best known for some of the open source toolkits that has maintained for over a decade: the visualization toolkit, the insight medical image analysis toolkit, a large data visualization tool called ParaView, and a cross-platform build system called CMake. [Broken Out Circle Graphic] A common thread for all of these toolkits is an open and transparent software process that supports contributions from developers around the world.
Page 3: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Images & Video

Recognition by Function

Content-based

Retrieval

Event & Activity

Recognition

Anomaly Detection

3D Extraction and

Compression

Detection & Tracking

Human Activity Detection (Army RRTO, CTTSO) and Tracking in Wide-Area Video (AFRL)

Object and Building Recognition by

Function (DARPA)

34+ team members 11 PhDs Founded in 2007 34+ contracts

Normalcy Modeling and Anomaly Detection (DARPA PANDA and PerSEAS)

Football Play Recognition (DARPA CARVE)

Wide-area Motion Imagery Threat Detection and Nodal Analysis (DARPA PerSEAS)

Complex Event Recognition in Internet Videos (IARPA Aladdin)

Content-based Video Retrieval by Actions

(DARPA VIRAT)

3D model-based video compression (DARPA GRID) and super-resolved 3D reconstruction (DARPA Super 3D)

3

Page 4: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Changing Face of Aerial Video

4

The increasing availability of inexpensive, capable aerial video platforms inevitably leads to an overabundance of video footage. Automated analytics are required to organize this footage and synthesize actionable information.

$5,000,000 $1500

Page 5: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Video Analytics

5

• Data to Decisions • Automation • Improves Exploitation of Data • Increases Data Analysis Efficiency • Improves Performance

What is the Value?

What Can I see? • How does it change

over time? • How big is it? • Where is it?

What is Happening? • Is anything moving? • Where does it go? • When does it get someplace

interesting?

Answer Fundamental Questions

Page 6: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Open Source Building Blocks

6 6

Page 7: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Open Source Use Challenges • Complex and idiosyncratic software build

processes across many tools • OS package managers have their own agenda

– What is current? – What is important? – What is available?

• Platform requirements

7

Page 8: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Why Open Source?

8

“If I have seen further, it is by standing on the shoulders of giants.” – Isaac Newton

“I often compare open source to science. To where science took this whole notion of developing ideas in the open and improving on other peoples' ideas and making it into what science is today and the incredible advances that we have had. And I compare that to witchcraft and alchemy, where openness was something you didn't do.” - Linus Torvalds, Linux Creator

Page 9: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

KWIVER Toolkit Kitware Image and Video Exploitation and Retrieval Toolkit An Open Source, production-quality video exploitation system • Engage the community: academic, industry, government • Avoid expensive software duplication and redundancy, speed time to solution • Leverage the “many eyes” of the community to improve quality, stability and

utility • Bridge the gaps between research code production software, initial feasibility operational evaluation

• Create a true open-source community for cooperative, distributed development based upon available Open Source toolkits

• Scale down to a single researcher’s desktop and up to multi-node clusters

9

Page 10: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

A KWIVER Enabled System

10

MAP-Tk VIBRANT ViVIA

Video Analytics System or Application

VITAL

Fletch

Page 11: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Fletch – A Computer Vision Tool Chest Fletch uses CMake to fetch, configure, and build a variety of Open Source Computer Vision, Machine Learning, and C/C++ libraries, easing the set up of a KWIVER development environment

Development Environment

Internet

Fetch Configure Build Install

11

Page 12: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Vital Plugin Manager

Vital Logging and Configuration

Aerial Video Analytics Application

VITAL

12

Provides abstractions for algorithms and data types along with core services such as logging and configuration to help build cohesive systems. Many choices can be configured at runtime.

Image Homography Lat Long

VXL

Bundle Adjust

Detect Features VIBRANT

VXL Ceres Solver

Page 13: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

MAP-Tk Motion-imagery Aerial Photogrammetry Toolkit

Hierarchical SBA

Homography-Driven Loop-Closure

SBA with frame-to-frame tracking only

SBA with loop-closure

Homography sequence with loop detected

91 Frames 4494 Frames

• Open source with permissive BSD license https://github.com/kitware/maptk

• Highly modular, open framework • OpenCL (GPU) accelerated feature detector

and descriptor option. • Optimized for aerial video

processing – Frame-to-frame homography

guided feature tracking – Homography guided

loop-closure • Recovery from bad frames

during tracking • Temporally hierarchical

bundle adjustment • Estimate shared,

but unknown, intrinsics

13

Page 14: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

MAP-Tk 3D From Video

3D Surface Modeling (DARPA Super 3D / GRID)

Sparse Bundle Adjustment (MAP-Tk)

Aerial Video (WAMI & FMV)

3D Super Resolution (DARPA Super 3D)

Video Compression with 3D Models (DARPA WAVC / GRID)

Moving Target Tracking (VIRAT / AFRL SentinelHawk / AFRL E2AT / etc.)

• Various applications depend on camera pose – GPS/intertial sensors are not always available or

accurate enough for 3D image analysis – Sparse bundle adjustment (SBA) provides accurate

pose from images • Existing open source SBA packages focus on

unordered collections of images and are very slow for video

• We can do much better by exploiting temporal continuity at all stages of processing

• Designed MAP-Tk to address these issues

14

Page 15: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

Using MAP-TK

15

maptk_track_features -o my_tracker.conf

… 14 # Algorithm to use for 'descriptor_extractor'. 15 # Must be one of the following options: 16 # - ocv 17 feature_tracker:core:descriptor_extractor:type = ocv 18 19 # Algorithm to use for 'feature_detector'. 20 # Must be one of the following options: 21 # - ocv 22 feature_tracker:core:feature_detector:type = ocv 23 24 # Algorithm to use for 'feature_matcher'. 25 # Must be one of the following options: 26 # - homography_guided 27 # - ocv 28 # - vxl_constrained 29 feature_tracker:core:feature_matcher:type = vxl_constrained 30 31 # Algorithm to use for 'loop_closer'. 32 # Must be one of the following options: 33 # - bad_frames_only :: Attempts short-term loop closure ... 35 # - multi_method :: Iteratively run multiple loop closure ... 36 # - vxl_homography_guided 37 feature_tracker:core:loop_closer:type = vxl_homography_guided 38 39 # Algorithm to use for 'feature_tracker'. 40 # Must be one of the following options: 41 # - core 42 feature_tracker:type = core

maptk_analyze_tracks -c my_analyze.conf

Green: new tracks Blue: active tracks Purple: terminating tracks Orange: untracked features

Page 16: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

VIBRANT

16

Stabilization Geo-registration Tracking Track

classification

Stabilized video to account for platform motion

Refined geo-registration of pixels based on metadata and stabilization

Geo-registered object tracks

Tracks soft-assigned to known object classes

Person Tracks

Developed as part of DARPA projects as the basis for automatic motion based video analytics. • Patterns of Life • Event and Activity Detection • Querying and Alerting

Motion Detection and Tracking Libraries

Page 17: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

VIBRANT Challenges

17

Human Appearance in Low Resolution Videos

Vehicle and person detection and classification in low resolution full motion and stationary videos.

Page 18: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

VIVIA – An Open Source GUI Toolkit for Video Exploitation Visualization Suite of tools built on a shared toolkit • Derived form The Visualization Toolkit (VTK)

– 2D and 3D computer graphics – Information visualization

• GUI’s written using Qt – Cross-platform support

vpView: WAMI

vsPlay: Streaming FMV

viqui: Archive Interface

18

Page 19: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

VsPlay

Stream based viewer for Full Motion Video (FMV) • Support for live or archive based data • Visualization of tracks and events • Continuous zoom and pan • Full DVR controls and video scrubber; very responsive • Geospatial filtering of track and events • Ground stabilized tripwires and user annotations • “Bookmark” (seek video to) capability for tracks/events

19

Page 20: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

SproKit – A Framework for Streaming Data Processing • Chains individual processing elements • Executes a constructed pipeline on streaming

data (e.g. video) • Manages data dependencies, flow, and

synchronization • Distributes and balances processing load over

CPU cores • Provides dynamic construction/configuration via

configuration files • Allows reuse of preconfigured clusters of

processes • Supports algorithms written in C++ and Python • Extends to custom processes, data types, and

schedulers via plugins

20

Page 21: Open Source UAS Software Toolkits - ASPRS – IMAGING · PDF fileOpen Source UAS Software Toolkits ... the insight medical i\൭age analysis toolkit, ... Developed as part of DARPA

KWIVER & Open Source UAS Toolkits

• Open Source projects, including KWIVER, are the rising tide that raises all boats

• KWIVER can help manage the wide range of available tools and build them into useful video analytics solutions

• KWIVER Components such as MAP-Tk and VIBRANT leverage other Open Source toolkits to provide useful, new capabilities

21

www.kwiver.org [email protected]