Skip to content

GSoC_2017

ayol edited this page Feb 9, 2017 · 49 revisions

Project page for ViSP Google Summer of Code 2017 (GSoC 2017)

General Information

  • GSoC 2017 site
  • Timelines:
  • Important dates:
    • October 10’16 Program announced
    • January 19 16:00 UTC Mentoring organizations begin submitting appls to Google
    • February 9 16:00 UTC Mentoring organization application deadline
    • February 10 – 26 Google program administrators review organization applications
    • February 27 16:00 UTC List of accepted mentoring organizations published
    • February 27 – March 20 Potential student participants discuss application ideas with mentoring organizations
    • March 20 16:00 UTC Student application period opens
    • April 3 16:00 UTC Student application deadline
    • May 4 16:00 UTC Accepted student proposals announced
    • Community Bonding Period Students get to know mentors, read documentation, get up to speed to begin working on their projects
    • May 30 Coding officially begins!
    • Work Period Students work on their project with guidance from Mentors
    • June 26 16:00 UTC Mentors and students can begin submitting Phase 1 evaluations
    • June 30 16:00 UTC Phase 1 Evaluation deadline; Google begins issuing student payments
    • Work Period Students work on their project with guidance from Mentors
    • July 24 16:00 UTC Mentors and students can begin submitting Phase 2 evaluations Work Period Students continue working on their project with guidance from Mentors
    • July 28 16:00 UTC Phase 2 Evaluation deadline
    • August 21 – 29 16:00 UTC Final week: Students submit their final work product and their final mentor evaluation
    • August 29 – September 5 16:00 UTC Mentors submit final student evaluations
    • September 6 Final results of Google Summer of Code 2017 announced
    • Late October Mentor Summit at Google

Ressources

How you will be evaluated if you are an accepted student

Student projects to be paid only if:

  • Midterm:
    • You must submit a pull request
      • Has the midterm objectives described in the corresponding project
      • Builds and passes continuous integration build bot (travis-ci)
      • Has appropriate Doxygen documentation
  • End of summer:
    • A full pull request
      • Has the "end of summer" objectives described in the corresponding project
      • Full Doxygen documentation
      • A tutorial if appropriate
      • A working example or demo
    • Create a video on YouTube that demonstrates your results

For students interested in applying

  1. For software development skills, please refer to the project description
  2. Take your time to learn about ViSP, watching some YouTube videos, reading tutorials, downloading it and launching tutorials or example.
  3. Ask to join the ViSP GSoC Forum List
    • Discuss projects below or other ideas with us between now and March
  4. In March, go to the GSoC site and sign up to be a student with ViSP
  5. Post the title of the project (from the list below or a new one if we have agreed) on the mailing list visp-gsoc-2017@inria.fr
    • Include name, email, age
    • Include how you think you are qualified to accomplish this project (skills, courses, relevant background)
    • Include country of origin, school you are enrolled in, Professor you work with (if any)
    • Include a projected timeline and milestones for the project
    • Precise which 3rd party libraries you plan to use
  6. If ViSP gets accepted as GSoC organisation this year and you’ve signed up for a project with us in March
    • We will dispatch the students and projects to the appropriate mentors
    • Accepted students will be posted on the GSoC site in May (and we will also notify the accepted students ourselves).

2017 project ideas

List of potential mentors (pairing of projects to mentors will be done when Google decides the number of slots assigned to ViSP):

List of potential backup mentors:

Project #1: Augmented reality demonstration with ViSP

  • Brief description:

    • ViSP offers several methods to track and estimate the pose of the camera. Basic methods involve to estimate the camera pose from 2D/3D correspondences, for instance:
      • The tracking of blobs (corresponding tutorial)
      • The detection of fiducial markers, as a QRcode marker (corresponding tutorial)
    • Advanced methods rely on the knowledge of the CAD model of the object to track:
      • The model-based tracker (see tutorial) allows to track and estimate the camera pose of a markerless object using multiple types of primitives (edges, texture or both)
    • This project aims to highlight these basic and advanced methods in an augmented reality demonstration running on a smartphone or a digital tablet running Android or iOS. Up to now, ViSP is already compatible with iOS (see tutorial).
  • Expected results:

    • Development of a new AR module interfaced with Unity 3D in visp_contrib (midterm)
    • Validation of the AR module via an augmented reality demo with fiducial markers observed by a classical webcam (midterm)
    • Porting / development to target a mobile device (Android or iOS) (end of summer)
    • Extend to markerless model-based tracker and run a complete AR demo on a mobile platform (end of summer)
  • Knowledge prerequisites: C++, Unity. Android and/or iOS knowledges are a plus

  • Difficulty level: Middle

Project #2: Markerless model-based tracker CAD model editor

  • Brief description: The markerless model-based tracker (see tutorial) uses our own CAD model file format (.cao) to describe the object to track (see examples). Only simple primitives, that correspond to object visible contours, can be tracked (lines, circles, cylinders). Currently, this means that the creation of this file has to be made by hand. This is a big drawback as most of the time the 3D model of the object to track comes from a CAD software, modeled by complex meshes. Thus this project aims to provide dedicated tools to convert from classical 3D file format (for example .obj) to our own CAD model file format

  • Expected results:

    • Create a Blender plugin to import / export a .cao CAD model compatible with ViSP MBT (midterm)
    • Create a simple .cao CAD model editor with Qt. It should allow the user to visualize the wireframe CAD model and change the viewpoint (midterm)
    • Qt editor additional functionalities: display the faces normal, merge or suppress model polygons, set visp specific attributes like level-of-detail, visibility values, polygons label, etc (end of summer)
  • Knowledge prerequisites: C++, python, Qt, Blender

  • Difficulty level: Middle