Skip to content
Gary Bradski edited this page Jun 6, 2017 · 58 revisions

2017 OpenCV Meeting notes

Template is at http://code.opencv.org/projects/opencv/wiki/Template
http://code.opencv.org/help/wiki_syntax

Meeting_notes

      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-mm-dd

Agenda

Minutes

To Dos

      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-06-06

Agenda

  • OpenCV
  • GSoC template

Minutes

  • OpenCV
    • Tutorial at CVPR
    • 2 releases will come out
    • 3.3 release candidate out w/in 2 weeks (hope it includes openvx backend, allows flowgraph for dnn modules)
    • At least 8 core people
      • DNN from contrib to main
        • pytorch different from torch
        • Caffe1 but not yet 2 difference in padding of arrays
        • Tensorflow and Caffe use different layouts … need tricks … also flattened layers
          • 1D representations have different orderings. Might be better to wait
          • Then, there are kernel specializations for specialized hardware … might take years to settle out
        • Then there is research in shrinking kernels
        • Support various blas version, openvx,
          • Regression tests run over many implementations which help insure capability/similarity to run most backends
    • support ganz opencl
      • Halide patches in. Block tensors into “voxels” for efficient convolution
        • MKL dnn approach
        • opencl kernels
      • tiny_dnn,
        • maybe Halide with some of the upstream engine nnpack
  • Halide
    • Might want a better cross integration
    • cudnn
    • might have larger impact across
    • difference from openvx approach?
  • GSoC
    • Maksim Shabunin sent out a pull request template
    • Weekly reports on mailing list
    • Get a git summary out to everyone
  • Git
    • Sourcetreee (mac)
    • Smartgit (cross platform)
    • tortoise (windows)
    • gitkraken (cross platform)
    • atom editor, git and github

To Dos

  • Ask student to send summary reports regularly (encouraged) … short
  • Refine the pull request summary
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-05-30

Agenda

  • GSoC
  • Foundation

Minutes

  • GSoC
    • Contribution template out
  • Foundation
    • Can OpenCV.org hold the domain for tiny_dnn?
    • OpenCV/tiny_dnn.org
      • Github?
        • Build bots for github:
          • Travis OS X, Linux,
          • For windows: https://www.appveyor.com/
    • Kernels for near metal applications
      • Tensor Flow optimization on Intel TensorFlow On Intel
      • GTech — minimum tensor data structure for optimization access across architectures
        • Dlpack
        • NNVM computation graph for deep nets NNVM
          • computation graph optimization such as memory reduction, device allocation and more while being agnostic to the operator interface definition and how operators are executed
          • Tianqi Chen driving this https://github.com/tqchen
    • Halide framework for opencv, deep in Intel. Best to relate
    • Intel Scheme

To Dos

  • Write Vadim about tiny_dnn under the opencv domain/github cross links
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-05-23

Agenda

  • GSoC needs

Minutes

  • Deep NN students need GPU cycles
    • For text detection etc
  • Lambda Labs?
  • Google?
  • MRF code

To Dos

  • Ask about Intel release of Halide Deep network kernels
  • 501c3 filing
  • Notice to prime students to begin GSoC!
    • Who might need GPU access?
  • Ask for GPU resources for tiny_dnn students
    • Lambda labs with pre-trained model zoo?
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-05-16

Agenda

  • GSoC pull template
  • Image corruption bug

Minutes

  • GSoC pull template
    • Need to create a template of how to do a pull request with all unit tests, examples
  • Image corruption bug
    • We could get money ! (And maybe that would have found the security bug)
      • https://opensource.googleblog.com/2017/05/oss-fuzz-five-months-later-and.html
    • Vadim on it
    • Need to see Coverity checks
      • https://scan.coverity.com/
    • Foundation will need to consider all this
  • Projects
    • Docs for all languages,
    • Doc writer got accepted in MIT
  • tiny_dnn
    • Where does it sit in the deepnet ecosystem?
      • Simple front end
      • Reach to good backends
        • Use xtensor to extend
          • https://github.com/QuantStack/xtensor
      • ARM, GPU, Intel …Easy to use the best for each
    • Will be integrated with GPU for training after this summer of code.
    • Auto difference engine with GPU backend, cudadnn, libdnn,
  • Projects, OpenCV GSoC 2017:
  1. API for Facial Landmark Detector
  2. Computational Occlusion Removal in Image Inpainting
  3. Create Web-based Interactive Tutorials and Examples for OpenCV
  4. Documentation Improvement
  5. End to End text detection and recognition
  6. Face alignment with opencv
  7. GPU enabled deep learning framework
  8. Implementing and extending DynamicFusion (Newcombe et al 2015)
  9. Improve and Extend the JavaScript Bindings for OpenCV
  10. Improve Background Subtraction with Aggregated Saliency
  11. Improvement of the background subtraction algorithm
  12. Learning compact models for object detection
  13. Photometric Calibration
  14. Recurrent Neural Networks on tiny-dnn
  15. Speeding-up AKAZE features
  16. The Fast Bilateral Solver

To Dos

  • Gary
    • Get in the pull template for students
    • Get cash amount for schwag to Vincent
    • Maxim emails for docs
    • Check on tiny_dnn
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-05-09

Agenda

  • GSoC pull requests

Minutes

  • Need to contact Vadim to put together a pull request template.
  • Get students and mentors going
  • Create tracking spreadsheet

To Dos

  • Gary
    • Get in the pull template for students
    • Projects and mentors list onto site
    • Get cash amount for schwag to Vincent
    • Contact G about $ for “event”
    • Vadim, dinner
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>

2017-04-18

Agenda

  • Slot requests are in
  • Hallide

Minutes

  • Experiments are ongoing with Halide
Func blur_3x3(Func input) {
  Func blur_x, blur_y;
  Var x, y, xi, yi;

  // The algorithm - no storage or order
  blur_x(x, y) = (input(x-1, y) + input(x, y) + input(x+1, y))/3;
  blur_y(x, y) = (blur_x(x, y-1) + blur_x(x, y) + blur_x(x, y+1))/3;

  // The schedule - defines order, locality; implies storage
  blur_y.tile(x, y, xi, yi, 256, 32)
        .vectorize(xi, 8).parallel(y);
  blur_x.compute_at(blur_y, x).vectorize(x, 8);

  return blur_y;
}
  • It’s library in C++, but limited operators
  • Good for image processing, deep nets
  • Not good if your code needs logical operators w/in the processing loop
    • The gradients of Canny operator yes, not the line thinning
  • Maybe something out by CVPR
  • Ability to implement kernels in Halide
  • GSoC 2017
    • Our slot asks are in
    • We find out allocation tomorrow, April 19
    • We will then have an email conference of the admins
      • We will scrape the list, if we feel we have too many slots, we’ll try to return unneeded ones quickly.
  • CVPR 2017
    • Vadim will give a tutorial there
    • Several of us will be there (Vincent, Vadim, Gary)

    To Dos

    • Book CVPR
          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-04-11

    Agenda

    • GSoC reviews by mentors

    Minutes

    • Mentors need to rate the proposals and select people

    To Dos

          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-03-28

    Agenda

    • GSoC decisions

    Minutes

    • For DNN (just reading and running nets trained in Torch, TenserFlow, Caffe etc), it will translate to Halide and then run taking advantage of the architecture.
      • Going to OpenCL straight can result in unstable code, this way you generate efficient OpenCL for GPU.
    • We have a strong mentor for SLAM this year … might go with it if we can find the right student.
    • Stereo via flow net
    • Support for Halide? Seems great for basic deepnet stuff, simple image processing
      • See Idea 17 https://github.com/opencv/opencv/wiki/GSoC_2017#2017-project-ideas
    • Would be great to get a model zoo of squeezed, high performance deep nets for DNN or for tiny-dnn, these are highly useful.
      *

    To Dos

    • Gary to send out reminder for students to apply to the GSoC site
    • Gary to remind mentors to start reviewing/deciding on possible/students/topics … commit.
          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-03-21

    Agenda

    • GSoC — gather in the mentors
    • Ideas

    Minutes

    • GSoC
      • Can we develop radically smaller deep networks for text detection. Squeeze nets?
        **
    • DNN will read Torch, Caffe, TensorFlow and run it fast.
    • Colormap for SFM and multi-view is cool , but its GPL.
    • Gary to send out another announcement to post on GSOC site
      • Submit via google doc
          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-03-14

    Agenda

    • GSoC — gather in the mentors
    • Ideas

    Minutes

    • Admins were screwed up by daylight savings, so most of the team missed the meeting. It was decided anyhow that the main useful activity is to review student proposals. Go to:
    • JPEGXS (sequences) https://jpeg.org/jpegxs/
    • JPEG lightfield https://jpeg.org/items/20170208_cfp_pleno.html
    • GSOC
      • Curved edge detection
        *

    Reports

          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-03-07

    Agenda

    • GSoC — gather in the mentors
    • Ideas

    Minutes

    • Gathering mentors
    1. Vincent
    2. Vadim
    3. Gary
    4. Stefano
    5. Grace
    6. Pras?
    7. Reza?
    8. Edgar
    9. Ethan?
    10. Michael?
    11. Yida?
    12. Antonella
    13. Delia
    14. Maksim
    15. StevenP
    16. Manuele?
    17. noumi?
    • Ideas
      • Generalized ROI
        • see https://github.com/kokkos/array_ref/blob/master/proposals/P0331.rst
      • Optimizations
      • Improve 3D viewer for colorized normals
      • vis improvements
        • http://www.vtk.org/Wiki/VTK/Examples/Cxx/Points/NormalEstimation
      • Normals might be here
        • http://www.docs.opencv.org/master/d5/dd8/classcv_1_1viz_1_1WCloudNormals.html
      • Can we encourage improving or developing simpler but important functionality
      • Intel DNN

    Reports

          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-02-18

    Agenda

    • GSoC

    Minutes

    • GSoC
    • RGBD
      • 3D visualizer add normals and colorized normals
      • VTK toolkit has all the “tools” to do whatever
        • For example, expose: http://www.vtk.org/Wiki/VTK/Examples/Cxx/Visualization/ElevationBandsWithGlyphs
    • Tiny-dnn
      • Needs mentor
    • Recruit mentors
      • Edgar
      • Original tiny-dnn author

    Reports

          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-02-14

    Agenda

    • GSoC

    Minutes

    • GSoC
    • focusing on organizing tiny_dnn group

    Reports

          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-02-07

    Agenda

    • GSoC
    • OpenCV.js very interesting

    Minutes

    Reports

    • . Vadim

    Action Items

    Gary

    • .

    Vincent

    • .

    Vadim

    • .

    Grace

    • .
          <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
    

    2017-01-30

    Agenda

    • GSoC

    Minutes

    • GSoC
      • DNN Intel contributing
        • Training mini-batch — can be pluralized across samples
        • Inference — one sample
      • Project to detect useful objects
        • Face
        • Pedestrian
        • Car
        • Smaller architectures is 50x smaller than Alex net for example
          • Optimization on mobile — model has to be compact, just a few GFLOPs, run quantized, code flow should be optimized for the architecture but this is beyond scope for a student
      • Squeeze net … tiny_dnn
        • Gam low power
      • Improving Tutorials
        • How to use the deep learning
        • Update existing tutorials
        • Tracking
        • Computational photography
        • Camera calibration
        • Video stabilization … or improve it
        • Image stitching
      • April tags or Aruco to make a true checkerboard as tags
      • Improve Aruco and Charuco code
      • SLAM ? All efforts have failed. Only if we can find someone far along in a related thesis
      • Better background subtraction
        • Deep?
        • Current MoG has a flaw — all pixels independently — no smoothness, spacial constraints
      • -We have better optical flow now-
      • Better saliency model. Improve saliency API
      • Video stabilization, or just improve tutorial
      • Labeling module …
      • OpenCV for artistic interaction
        • Natural interaction
        • Hand pose?
      • Text detection improvement … better datasets.
    • Hard to know quality level of different code in contrib
      • Put quality, optimization, GPU optimiztion, in Wiki
      • computational photography
      • SFM
      • Make a Wiki to track
      • Tracking with CNN doesn’t have GPU optimization

    Reports

    • . Vadim

    Action Items

    Gary

    • .

    Vincent

    • .

    Vadim

    • .

    Grace

    • .

    Meeting_notes

  • Clone this wiki locally