Playing games with the development of machine vision algorithms using ViPER

Embed Size (px)

Citation preview

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    1/18

    Playing games with the development of

    machine vision algorithms using ViPER

    Presented by:

    Benjamin WheelerNAVAL SURFACE WARFARE CENTER DAHLGREN DIVISION

    UNMANNED AND ROBOTIC SYSTEMS INTEGRATION BRANCH (G82)

    540.653.6030 (office phone)

    540.642.2973 (mobile phone)

    [email protected]

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    2/18

    Introduction to Concept, and Motivation Dev. of machine vision for UxS is often dependent on data from real systems.

    This work investigates the use of virtual environments to create synthetic datato feed perception system algorithms in robotic systems.

    Background and Virtual Prototyping Utilization of open source, freeware, and govt owned simulation tools.

    Demonstrates integration with existing machine vision code used in the

    SUMET UGV program (Office of Naval Research Code 30).

    Experiment Design and Setup Built a real and virtual experiment setup to generate stereo disparity images.

    Compared real and synthetic imagery.

    Results and Application Created stereo disparity images with an average disparity difference of 3.5

    pixels between real and synthetic data for 656x492 pixel images.

    Use of simulation can be effective when the world is sufficiently modeled.

    OUTLINE: What are we talking about?

    Utilizing M&S for computer vision

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    3/18

    INTRO to CONCEPT: Virtual imagery for dev. of machine vision for UxS

    Current development of machine vision for UxS is highly

    dependent on access to the platform and real data. Size and complexity of UxS systems is ever increasing.

    Test and development of algorithms for these systems is a technical and

    resource challenge due to the multi-disciplinary nature and complexity of

    current state-of-the-art robotic systems.

    Progress is often bottlenecked by resource limitations,making synthetic data an attractive alternative. A simulated system would reduce resource requirements, speed

    development time, and lower overall development cost.

    However, it is difficult to correlate the true benefit of this approach, and the

    ease at which high-fidelity simulated data may be created.

    To test feasibility, using a real UxS perception system, we

    attempted to create identical real and virtual data sets

    Limited resources bottleneck development

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    4/18

    ViPER enables software-in-the-loop dev.

    The ViPER simulation was created under the SAF-T program

    by ONR, to create a new paradigm in fire-control for RWS.

    It was designed to integrate with Software-in-the-Loop

    capability, and implements a preliminary design of the

    autonomous target detection, integrated with a Linux-based

    embedded system implementing semi-autonomous fire control.

    In Sept. 2013, the initial baseline of ViPER for SAF-T was usedto conduct a user experiment to compare human performance

    differences between tele-operated and semi-autonomous fire-

    control modalities.

    V i P E R

    ViRT

    UALPROTOTYPINGENVIRONMENTforROBOTICS

    INTRO to CONCEPT: Virtual Prototyping Environment for Robotics (ViPER)

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    5/18

    This work demonstrates the abili ty to create near identical

    disparity maps using an existing UGV perception system.

    Real Imagery Synthetic Imagery

    Average of 3.5 pixel difference per dispari ty calculation

    INTRO to CONCEPT: Virtual imagery for dev. of machine vision for UxS

    Investigate use of fake imagery for real algo.

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    6/18

    Serious Gaming is a focus area for training and system dev., often

    leveraging the commercial gaming industry Examples include: VBS II, DSTS, OneSAF, Army Gaming Studio,

    Delta3D,

    Dev. examples include: RIVET, MODSIM (FCS), EODRS,

    Many open-source, freeware, and low-cost game engines have beendeveloped for aspiring game creators

    For warfighter-centric systems, todays games share many of the

    features necessary for rapid virtual prototyping and virtual

    demonstration of user-intensive systems.

    Real-enough physics make interaction with the world believable

    High fidelity graphics create an immersive environment for free

    Easy to manipulate game environments enable creation of tailor-made

    experiments, and the ability to rapidly test different system designs.

    VIRTUAL PROTOTYPING: Why use a video game?

    Allows creation of system-in-a-box

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    7/18

    Utilize M&S to perform RWS vs.

    supervised autonomous RWS (saRWS)experiments to generate requirements and

    inform system design

    In simulated world, information is known a-priori, allowing precise modeling of varying

    levels of object detection, and creation of

    training and test data.

    Algorithms transition into ROS from

    simulation, allowing concurrent

    development of the real system

    Record MoEs to generate KPPs

    VIRTUAL PROTOTYPING:Why use a video game?

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    8/18

    BACKGROUND: UGV Perception SystemsSUMET and ROS Small Unity Mobility Enhancement Technologies (SUMET)

    developed an advanced perception system (APS) forunmanned ground vehicle based on stereo perception algorithms.

    The SUMET system is implemented in the Robotic Operating System

    (ROS). ROS is a meta-operating system enabling effective

    integration of re-use of software elements common to robotic

    systems.

    Autonomous off-road navigation

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    9/18

    Auto ID,

    track & fire-

    solution- but -

    Operator

    decides to

    engage

    Purpose of SAF-T Weaponization of unmanned systems,

    and increase effectiveness of RWS

    Autonomously identify, track, and

    computes firing solutions for targets

    Improved use of RWS requires a new C2 paradigm Systems suffer from limited SA and latency.

    Technologies such as shot detection provide

    recognized value-added to the warfighter.

    Simulation-based approach used to defineparameters of desired future system Leveraging commercial video game

    software and existing tools

    Focus on Warfighter-System interaction

    Shoot more stuff, faster, using a computer

    BACKGROUND: Advanced Target Detection and Tracking

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    10/18

    Unity3D

    Unity3D is a video game engine developed by Unity Technologies,providing a convenient content-oriented editor.

    Freeware and low-cost licensing options are available.

    Unity3D is being using by the Supervised Autonomous Fires Technology (SAF-T)

    program to virtually prototyped an unmanned weapons system, and through this

    effort has integrated ROS with Unity3D.

    Related Works Virtual Environments for Cognitive Architecture Development (VECAD - ONR)

    Robotics Interactive Visualization and Experimentation Toolkit (RIVET - GDRS)

    BACKGROUND: Tools and Related Works

    Leverage open source and freeware

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    11/18

    EXPERIMENT DESIGN & SETUP

    Created test-board in the lab, and virtual world within

    Unity3D using the Unity Editor. Created textures for the virtual world with still photographs of the real scene.

    Created real and virtual world

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    12/18

    12

    EXPERIMENT DESIGN & SETUP

    Created test-board in the lab, and virtual world within

    Unity3D using the Unity Editor. Cameras implemented using 115mm baseline, with FOV matching the real

    system, with resolution of 656x492 pixels, and 3.5mm (68.82 degree FOV)

    Stereo calibration parameters were shared between real and virtual system.

    Created real and virtual world

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    13/18

    EXPERIMENT DESIGN & SETUP

    Real and Simulated Systems run the same ROS code to

    calculate stereo disparity from imagery Real system uses imagery generated by the stereo camera system Simulated system used imagery generated by the Unity3D simulation

    Unity3D communicates to the ROS system via a custom ROS driver node that

    communicates via the RTP protocol using a UDP Client / Server relationship.

    Real orVirtual

    cameras

    produce the

    same ROS

    Topics

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    14/18

    Real and Simulated Systems run the same ROS code to

    calculate stereo disparity from imagery

    RESULTS & CONCLUSIONS

    Real System Synthetic SystemDisparity Difference

    Disparity Map

    Temporal di ff. over 100

    images [1.2 per pixel]

    Temporal di ff. over 100

    images [~ 0 per pixel]

    Disparity MapAverage di ff. over 100

    images [3.5 per pixel]

    Std. dev. diff. over 100

    images [.006 per pixel]

    Uncharacterized noise in real-world data

    ImageResolu

    tion=656x492

    pixels:322752

    totalpixelsinim

    age

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    15/18

    See notes for sl ide explanation

    ViPER acts as a synthetic sensor

    APPLICATION: ViPER usage in the SAF-T program

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    16/18

    Warfighter Workshops Used simulator to motivatetalks with Marine RWS operators.

    Marines played simulator in TO

    and SA mode, commentedon concept and design,

    informing algorithm requirements

    User-based Experimentation

    IRB protocol for participants to play scenario in TO and SA mode. Recording overall measures of performance at di fferent error levels

    to determine necessary false posit ive and false negative rates of the

    detection and tracking pipeline to maintain system capabil ity

    APPLICATION: ViPER usage in the SAF-T Program

    Inform system level design requirements

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    17/18

    APPLICATION: ViPER usage in the SAF-T Program

    Generate synthetic data for algorithm dev.

  • 8/9/2019 Playing games with the development of machine vision algorithms using ViPER

    18/18

    QUESTIONS:What else would you like to know?

    Playing games with the development of

    machine vision algorithms using ViPER

    Presented by:

    Benjamin Wheeler540.653.6030 (office phone)

    540.642.2973 (mobile phone)

    [email protected]