2016

Version 16 (Gary Bradski, 2016-03-01 07:11 pm)

1 1
h1. 2016  OpenCV Meeting notes for the year 2016
2 1
3 1
Template is at http://code.opencv.org/projects/opencv/wiki/Template
4 1
http://code.opencv.org/help/wiki_syntax
5 1
6 1
[[Meeting_notes]]
7 1
8 1
{{>toc}}
9 1
10 1
11 1
<pre>
12 1
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
13 1
</pre>
14 1
15 16 Gary Bradski
h2. 2016-03-01
16 16 Gary Bradski
17 16 Gary Bradski
h3. _*Agenda*_
18 16 Gary Bradski
19 16 Gary Bradski
 * GSoC 2016  We're in!
20 16 Gary Bradski
21 16 Gary Bradski
22 16 Gary Bradski
h3. *_Minutes_*
23 16 Gary Bradski
24 16 Gary Bradski
 *  GSoC 2016
25 16 Gary Bradski
 ** Infrastructure Priorities
26 16 Gary Bradski
 *** Improved python support (python 3)
27 16 Gary Bradski
 **** Numpy 3
28 16 Gary Bradski
 **** NumPy and SciPy support the Python 2.x series, (versions 2.6 and 2.7), as well as Python 3.2 and newer. The first release of NumPy to support Python 3 was NumPy 1.5.0. Python 3 support in SciPy starts with version 0.9.0.
29 16 Gary Bradski
https://github.com/bytedeco/javacv
30 16 Gary Bradski
 *** Java and Android  Share buffer between Android and OpenCV  Java utils
31 16 Gary Bradski
 *** Smaller Android binaries for 3.0
32 16 Gary Bradski
 *** Android project AOSP, improve 3.0 
33 16 Gary Bradski
 **** https://source.android.com/ Android 5 or 6 for buffers. Or for Tegra
34 16 Gary Bradski
 *** Everything deepnet. I/O to all the major packages
35 16 Gary Bradski
 *** Redoing CMake modules independent of core
36 16 Gary Bradski
 **** Pending pull requests
37 16 Gary Bradski
 **** Tags for the modules
38 16 Gary Bradski
 ** Documentation
39 16 Gary Bradski
 *** missing links
40 16 Gary Bradski
 *** Helping clean up
41 16 Gary Bradski
 ** SLAM
42 16 Gary Bradski
 *** lsd-slam https://github.com/tum-vision/lsd_slam
43 16 Gary Bradski
 *** lsd-slam monocular, large scale https://github.com/tum-vision/lsd_slam
44 16 Gary Bradski
 ** Lightfield
45 16 Gary Bradski
 * Alex Myakov -- Gary talk with
46 16 Gary Bradski
 *** NumPy and SciPy support the Python 2.x series, (versions 2.6 and 2.7), as well as Python 3.2 and newer. The first release of NumPy to support Python 3 was NumPy 1.5.0. Python 3 support in SciPy starts with version 0.9.0.
47 16 Gary Bradski
https://github.com/bytedeco/javacv
48 16 Gary Bradski
49 16 Gary Bradski
50 16 Gary Bradski
h3. *_Reports_*
51 16 Gary Bradski
52 16 Gary Bradski
 * . Vadim
53 16 Gary Bradski
54 16 Gary Bradski
55 16 Gary Bradski
56 16 Gary Bradski
h3. *_Action Items_*
57 16 Gary Bradski
58 16 Gary Bradski
*Gary*
59 16 Gary Bradski
60 16 Gary Bradski
 * . 
61 16 Gary Bradski
62 16 Gary Bradski
*Vincent*
63 16 Gary Bradski
64 16 Gary Bradski
 * . 
65 16 Gary Bradski
66 16 Gary Bradski
*Vadim*
67 16 Gary Bradski
68 16 Gary Bradski
 * . 
69 16 Gary Bradski
70 16 Gary Bradski
*Grace*
71 16 Gary Bradski
72 16 Gary Bradski
 * . 
73 16 Gary Bradski
74 16 Gary Bradski
75 16 Gary Bradski
<pre>
76 16 Gary Bradski
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
77 16 Gary Bradski
</pre>
78 16 Gary Bradski
79 11 Gary Bradski
h2. 2016-02-23
80 11 Gary Bradski
81 11 Gary Bradski
h3. _*Agenda*_
82 11 Gary Bradski
83 11 Gary Bradski
* GSoC 2016
84 11 Gary Bradski
<pre>
85 11 Gary Bradski
20 February - 26 February	Google program administrators review organization applications.
86 11 Gary Bradski
29 February 19:00 UTC	List of accepted mentoring organizations published on the Google Summer of Code 2016 site.
87 11 Gary Bradski
</pre>
88 1
89 12 Gary Bradski
** "GSoC 2016 Official Site":https://developers.google.com/open-source/gsoc/
90 12 Gary Bradski
** "OpenCV GSoC 2016 Ideas Page":http://code.opencv.org/projects/opencv/wiki/GSoC_2016
91 11 Gary Bradski
92 11 Gary Bradski
h3. *_Minutes_*
93 11 Gary Bradski
94 13 Gary Bradski
 * GSoC 2016
95 13 Gary Bradski
 ** Get someone to help migrate OpenCV 1.0 to 2.0 and 2.0 to 3.0
96 13 Gary Bradski
 ** Migration tools
97 13 Gary Bradski
 *** http://upstream.rosalinux.ru/versions/opencv.html
98 13 Gary Bradski
 *** https://github.com/lvc
99 13 Gary Bradski
 ** Need to expand and test read/write of deepnets
100 13 Gary Bradski
 *** mix of activation and other functions
101 13 Gary Bradski
 **** batch normalization needed for forward pass
102 15 Gary Bradski
 * projects (Idea page: http://code.opencv.org/projects/opencv/wiki/GSoC_2016 )
103 13 Gary Bradski
 ** Lightfields
104 13 Gary Bradski
 ** 3D
105 13 Gary Bradski
 ** Deep learning
106 14 Gary Bradski
 *** Caffe 2 support
107 14 Gary Bradski
 *** TensorFlow
108 1
 **** Forward pass should work with internal only. 
109 15 Gary Bradski
 **** At a a minimum need to support TensorFlow data format
110 15 Gary Bradski
 **** Put it into the benchmark https://github.com/soumith/convnet-benchmarks
111 14 Gary Bradski
 *** Need to expand this module 
112 14 Gary Bradski
 **** easy to add activation layers
113 14 Gary Bradski
 *** cuDNN is the defacto standard for acceleration, but don't want to build in one company
114 14 Gary Bradski
 **** OpenCL is tricky
115 14 Gary Bradski
 ** Support Vulkan https://www.khronos.org/vulkan/  ?
116 14 Gary Bradski
 *** SPIR https://www.khronos.org/spir "common ground for OpenCL and Vulkan ... not OpenVX (but it needs something for shader support)
117 14 Gary Bradski
 *** Google going away from OpenCL in TensorFlow? https://github.com/tensorflow/tensorflow/issues/22
118 14 Gary Bradski
 *** Theano.
119 14 Gary Bradski
 **** All done with cuDNN from NVidia
120 14 Gary Bradski
 ***** Batch normalization
121 14 Gary Bradski
 *** Speed. Do we rely on OpenCL? 
122 14 Gary Bradski
 **** Put results in DNN performance table
123 14 Gary Bradski
 ***** https://github.com/soumith/convnet-benchmarks
124 13 Gary Bradski
 ** C++ 11 move. Owning the data
125 13 Gary Bradski
 *** A type for an image (Hauke)
126 13 Gary Bradski
 *** Resize with sophisticated color spaces
127 13 Gary Bradski
 *** take cv::Mat  convert color spaces (Gamma, non linear RGB)
128 13 Gary Bradski
 *** Const mat. Input array is const reference
129 13 Gary Bradski
 *** new samples for C.11++ features.
130 13 Gary Bradski
 **** How to iterate through images using Lambda functions
131 1
 **** C++11 only headers
132 14 Gary Bradski
 ***** Type def to be C++ 11 const pointer. 
133 14 Gary Bradski
 **** ROS is switching to C++11. Visual studio 2012 and 2013.
134 14 Gary Bradski
 ** Smaller builds. Sections or static builds
135 14 Gary Bradski
 ** Drone obstacle avoidance
136 14 Gary Bradski
 ** JavaCPP OpenCV
137 14 Gary Bradski
 *** https://github.com/bytedeco/javacpp-presets
138 1
 *** Was issue with TensorFlow due to python link. Auto differentiation. Not a problem for forward pass though
139 15 Gary Bradski
 ** Tracking planar surface 2D and 3D
140 14 Gary Bradski
141 1
142 15 Gary Bradski
143 11 Gary Bradski
h3. *_Reports_*
144 11 Gary Bradski
145 11 Gary Bradski
 * . Vadim
146 11 Gary Bradski
147 11 Gary Bradski
148 11 Gary Bradski
149 11 Gary Bradski
h3. *_Action Items_*
150 11 Gary Bradski
151 1
*Gary*
152 11 Gary Bradski
153 15 Gary Bradski
 * Get payments in!
154 11 Gary Bradski
155 11 Gary Bradski
*Vincent*
156 11 Gary Bradski
157 11 Gary Bradski
 * . 
158 11 Gary Bradski
159 11 Gary Bradski
*Vadim*
160 11 Gary Bradski
161 11 Gary Bradski
 * . 
162 11 Gary Bradski
163 11 Gary Bradski
*Grace*
164 11 Gary Bradski
165 11 Gary Bradski
 * . 
166 11 Gary Bradski
167 11 Gary Bradski
168 11 Gary Bradski
<pre>
169 11 Gary Bradski
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
170 11 Gary Bradski
</pre>
171 11 Gary Bradski
172 10 Gary Bradski
h2. 2016-02-16
173 10 Gary Bradski
174 10 Gary Bradski
h3. _*Agenda*_
175 10 Gary Bradski
176 10 Gary Bradski
 * GSoC 2016
177 10 Gary Bradski
 * OpenCV.com
178 10 Gary Bradski
 * People's Choice Best Paper, CVPR
179 10 Gary Bradski
180 10 Gary Bradski
* Vadim is skiing in the Urals 
181 10 Gary Bradski
182 10 Gary Bradski
h3. *_Minutes_*
183 10 Gary Bradski
184 10 Gary Bradski
 * GSoC 2016
185 10 Gary Bradski
 ** We have finished the application:
186 10 Gary Bradski
 *** !gsoc_applied.png!
187 10 Gary Bradski
 ** Our Ideas page is here: http://code.opencv.org/projects/opencv/wiki/GSoC_2016
188 10 Gary Bradski
 *** Gary to expand deep net stuff there:
189 10 Gary Bradski
 *** Read write to Caffe, Torch, Theano, Tensor Flow and CNTK
190 10 Gary Bradski
 *** Curate/train a model zoo for built in functions
191 10 Gary Bradski
 **** topological imagery SLAM
192 10 Gary Bradski
 *** Drone obstacle avoidance
193 10 Gary Bradski
 *** Improve projection mapping
194 10 Gary Bradski
 *** Get and integrate Google robotics protected memory wrappers for images
195 10 Gary Bradski
 * OpenCV.com
196 10 Gary Bradski
 ** making progress towards branded functionality cameras
197 10 Gary Bradski
 * CVPR
198 10 Gary Bradski
 ** Need to get Rubius interface up and working and diseminated for CVPR
199 10 Gary Bradski
200 10 Gary Bradski
h3. *_Reports_*
201 10 Gary Bradski
202 10 Gary Bradski
 * . Vadim
203 10 Gary Bradski
204 10 Gary Bradski
205 10 Gary Bradski
206 10 Gary Bradski
h3. *_Action Items_*
207 10 Gary Bradski
208 10 Gary Bradski
*Gary*
209 10 Gary Bradski
210 10 Gary Bradski
 * . 
211 10 Gary Bradski
212 10 Gary Bradski
*Vincent*
213 10 Gary Bradski
214 10 Gary Bradski
 * . 
215 10 Gary Bradski
216 10 Gary Bradski
*Vadim*
217 10 Gary Bradski
218 10 Gary Bradski
 * . 
219 10 Gary Bradski
220 10 Gary Bradski
*Grace*
221 10 Gary Bradski
222 10 Gary Bradski
 * . 
223 10 Gary Bradski
224 10 Gary Bradski
225 10 Gary Bradski
<pre>
226 10 Gary Bradski
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
227 10 Gary Bradski
</pre>
228 7 Gary Bradski
h2. 2016-02-02
229 7 Gary Bradski
230 7 Gary Bradski
h3. _*Agenda*_
231 7 Gary Bradski
232 8 Gary Bradski
 * SLAM
233 8 Gary Bradski
 * GSoC
234 8 Gary Bradski
 * Optimization
235 8 Gary Bradski
 * NUML
236 8 Gary Bradski
 * 3.1 is out
237 8 Gary Bradski
 * CVPR
238 7 Gary Bradski
239 1
h3. *_Minutes_*
240 1
241 8 Gary Bradski
 * GSoC
242 8 Gary Bradski
 ** "Timeline":https://developers.google.com/open-source/gsoc/timeline?hl=en
243 9 Gary Bradski
 ** Deep Learning ... forward pass only or ... training??
244 9 Gary Bradski
 *** Accelerate it
245 9 Gary Bradski
 *** "Benchmarks":https://github.com/soumith/convnet-benchmarks  Integrate with this
246 9 Gary Bradski
 *** Accelerate common operators CudaDNN standard operators
247 9 Gary Bradski
 *** Detection, Segnet, hard code popular models
248 9 Gary Bradski
 ** Improving existing functionality  
249 9 Gary Bradski
 *** latent SVM
250 9 Gary Bradski
 *** Stereo
251 9 Gary Bradski
 *** Calibration on line
252 9 Gary Bradski
 **** Wide angle cameras
253 9 Gary Bradski
 **** Update calibration tuning
254 9 Gary Bradski
 *** support drones 
255 9 Gary Bradski
 *** Bio inspired vision
256 9 Gary Bradski
 **** background subtraction
257 9 Gary Bradski
 *** Improve optical flow -- as good as Farnerbeck but faster
258 9 Gary Bradski
 *** Fast inspection
259 8 Gary Bradski
 * SLAM
260 8 Gary Bradski
 ** NVidia http://blogs.nvidia.com/blog/2015/11/17/stereolabs-jetson-tx1/
261 9 Gary Bradski
 *** "TX1":http://devblogs.nvidia.com/parallelforall/nvidia-jetson-tx1-supercomputer-on-module-drives-next-wave-of-autonomous-machines/
262 8 Gary Bradski
 ** "Marc":https://www.inf.ethz.ch/personal/marc.pollefeys/
263 8 Gary Bradski
 ** "The Future of Real-Time SLAM 2015":http://wp.doc.ic.ac.uk/thefutureofslam/programme/
264 8 Gary Bradski
 ** "Deep Learning vs SLAM":http://www.computervisionblog.com/2016/01/why-slam-matters-future-of-real-time.html
265 8 Gary Bradski
 ** "Google and Movidius":http://www.embedded-vision.com/industry-analysis/press-releases/google-and-movidius-work-together-enhance-deep-learning-capabilitie
266 8 Gary Bradski
 ** Smart camera
267 8 Gary Bradski
 * Optimization
268 8 Gary Bradski
 ** Vadim writing slides
269 8 Gary Bradski
 ** OpenCV HAL (Hardware Acceleration Layer) has DFT now
270 8 Gary Bradski
 *** Complete HAL by Feb/March. Part of OpenCV 3.2
271 8 Gary Bradski
 ** "C++14":https://groups.google.com/a/isocpp.org/forum/#!forum/sg14
272 8 Gary Bradski
 * NUML
273 8 Gary Bradski
 ** NUML compiler to NUML (parser done)
274 8 Gary Bradski
 ** Improving the generated C code
275 8 Gary Bradski
 * Intern
276 8 Gary Bradski
 ** Python samples => tests
277 8 Gary Bradski
 ** Also more samples
278 8 Gary Bradski
 * OpenCV 3.1 is out
279 8 Gary Bradski
 * CVPR
280 8 Gary Bradski
 ** Need to concentrate on "People's Choice Best Paper"
281 8 Gary Bradski
 ** "Site":http://cvpr2016.thecvf.com/
282 9 Gary Bradski
283 9 Gary Bradski
 * Vadim out Feb 8-18th
284 7 Gary Bradski
285 7 Gary Bradski
h3. *_Reports_*
286 7 Gary Bradski
287 1
 * . Vadim
288 7 Gary Bradski
289 8 Gary Bradski
*OpenCV:*
290 1
291 8 Gary Bradski
* OpenCV 3.1 has been released. The announce is here: http://opencv.org/opencv-3-1.html.
292 8 Gary Bradski
* Immediately after the release we continue our work on OpenCV:
293 8 Gary Bradski
* Maksim has prepared PR (https://github.com/Itseez/opencv/pull/5846) with some important improvements and fixes from 3.x backported to 2.4.x, most notably fast cvRound() etc. for ARM. People say, the faster round speeds up some code by 20% and even more than that.
294 8 Gary Bradski
* Alexander has updated binary compatibility checker, so that it will check modifications in OpenCV API since 3.1.
295 8 Gary Bradski
296 8 Gary Bradski
*OpenCV Plans:*
297 8 Gary Bradski
* Continue expanding OpenCV HAL
298 8 Gary Bradski
299 8 Gary Bradski
*Numl:*
300 8 Gary Bradski
301 8 Gary Bradski
          because of the release preparations, there is little progress on numl, but it's non-zero still:
302 8 Gary Bradski
303 8 Gary Bradski
*numl:*
304 8 Gary Bradski
# Extended pattern matching to almost match StandardML/OCaml capabilities.
305 8 Gary Bradski
# Added special constructions for list comprehensions and list literals that are more compact than before.
306 8 Gary Bradski
# numlyacc. Started conversion of BSD-licensed ml-yacc from SML-NJ/mlton to numl. ~30% is complete. sml2nl is used to do the initial conversion sml=>numl, after which the code is annotated with types and some small corrections are made.
307 8 Gary Bradski
308 8 Gary Bradski
*Numl Plans:*
309 8 Gary Bradski
* Finish numlyacc, test the pair numllex + numlyacc.
310 8 Gary Bradski
* add basic OOP capabilities. This is another item in progress.
311 8 Gary Bradski
* write some slides and initial documentation for the language and the standard library
312 8 Gary Bradski
* grow the standard library.
313 8 Gary Bradski
314 8 Gary Bradski
*Misc:*
315 8 Gary Bradski
*Vadim, Alexander will be on vacation starting from the next week.
316 7 Gary Bradski
317 7 Gary Bradski
h3. *_Action Items_*
318 7 Gary Bradski
319 7 Gary Bradski
*Gary*
320 7 Gary Bradski
321 7 Gary Bradski
 * . 
322 7 Gary Bradski
323 7 Gary Bradski
*Vincent*
324 7 Gary Bradski
325 7 Gary Bradski
 * . 
326 7 Gary Bradski
327 7 Gary Bradski
*Vadim*
328 7 Gary Bradski
329 7 Gary Bradski
 * . 
330 7 Gary Bradski
331 7 Gary Bradski
*Grace*
332 7 Gary Bradski
333 7 Gary Bradski
 * . 
334 7 Gary Bradski
335 7 Gary Bradski
336 7 Gary Bradski
<pre>
337 7 Gary Bradski
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
338 7 Gary Bradski
</pre>
339 7 Gary Bradski
340 4 Gary Bradski
h2. 2016-01-26
341 4 Gary Bradski
342 4 Gary Bradski
h3. _*Agenda*_
343 4 Gary Bradski
344 6 Gary Bradski
 * GSoC gear up
345 6 Gary Bradski
 * Hardware Acceleration of vision
346 6 Gary Bradski
 * Economic ideas
347 6 Gary Bradski
 *Hardware acceleration layer HAL
348 6 Gary Bradski
 * Final payments for mentors and for contest need to go out
349 1
350 6 Gary Bradski
351 4 Gary Bradski
h3. *_Minutes_*
352 1
353 1
 * New summer of code, Feb 8 "See Timelene":https://developers.google.com/open-source/gsoc/timeline
354 6 Gary Bradski
 * Economic ideas for OpenCV ... 
355 6 Gary Bradski
 ** OpenCV has been brought current on all tax issues (yeah!)
356 1
 * NUML
357 5 Gary Bradski
 ** Performance is almost at C level, a few problems, but produces large C files (single C source) when optimization is turned on -O2 or -O3
358 1
 ** See report below
359 1
 ** Month to 2 months
360 6 Gary Bradski
 ** 1 month to version 1, then
361 6 Gary Bradski
 *** try wrapping some of opencv
362 6 Gary Bradski
 *** try wrapping some of tensorflow
363 6 Gary Bradski
 * Hardware acceleration layer (HAL)
364 6 Gary Bradski
 ** OpenCV has been improving its layer
365 6 Gary Bradski
 ** "OpenVX":https://www.khronos.org/openvx/ (starting to grow, "Imagination Pass":https://globenewswire.com/news-release/2016/01/06/799884/0/en/PowerVR-GPUs-From-Imagination-Pass-OpenVX-Conformance-With-Khronos.html
366 5 Gary Bradski
 * Industrial vision apps "Datalogic":http://www.datalogic.com/eng/products/industrial-automation/machine-vision-pc-16.html , "Cognex":http://www.cognex.com/
367 4 Gary Bradski
368 4 Gary Bradski
h3. *_Reports_*
369 4 Gary Bradski
370 4 Gary Bradski
 * . Vadim
371 4 Gary Bradski
372 4 Gary Bradski
*OpenCV:*
373 4 Gary Bradski
374 4 Gary Bradski
    After NY holidays we resumed the work on OpenCV. The approximate OpenCV 3.2 release time is end of May; before that we will do hackathon. Since it will be before GSoC 2016, not much new functionality should be expected. The major new features will be more or less complete HAL along with many bug fixes found in 3.0/3.1. We also continuously improve our continuous integration infrastructure. Along those lines, we've done the following during the 2 past weeks:
375 4 Gary Bradski
376 4 Gary Bradski
* - build fixes: world with CUDA / precompiled headers for world / include only available modules (via opencv2/opencv.hpp) / python detection issue on Ubuntu 14.04 / fix OSX framework build with contrib
377 4 Gary Bradski
* - buildbot infrastructure: 2016 copyright / limit (100) number of stored builds&logs / fix iOS nightly build / fix python library path for ARM
378 4 Gary Bradski
* - prepared proposal for OpenCV add-ons: this is quite important feature, requested by Vincent and other guys. The idea is to let users to build their own modules (or opencv_contrib modules) without rebuilding opencv itself. Alexander Alekhin has prepared the proposal on how to implement this feature.
379 4 Gary Bradski
* - OpenCV HAL. The 1D DFT API has been finalized and implemented. The first tests showed noticeable speed degradation, so we spend some more time to fix those issues and now the performance is more or less the same as it was before. 
380 4 Gary Bradski
* - There is test build and test run of OpenCV with coverage turned on. We plan to put it to the buildbot and get the test coverage information on regular basis as we did it in Willow Garage times.
381 4 Gary Bradski
* - ~10 PRs have been reviewed.
382 4 Gary Bradski
* 
383 4 Gary Bradski
  - Vlad Sovrasov joined our team as intern, he is working on converting some of the Python samples to tests, so we will have additional number of tests and besides we will check quality of Python bindings. So far he created 4 new tests
384 4 Gary Bradski
385 4 Gary Bradski
*OpenCV Plans:*
386 4 Gary Bradski
* - continue Python samples => tests transformation
387 4 Gary Bradski
* - add the coverage builder
388 4 Gary Bradski
* - add 2D DFT HAL API, then proceed with filtering functions
389 4 Gary Bradski
390 4 Gary Bradski
*Numl:*
391 4 Gary Bradski
392 4 Gary Bradski
  Basically we are now working on rewriting numl compiler in numl, which should greatly improve compile time (.nl=>.c) and also serve as a decent regression test.
393 4 Gary Bradski
* numlyacc parser generator tool is ready. It was able to reproduce it's own grammar parser. numlyacc takes ~6000 lines of code in numl and it's translated to 95000 lines of code in C. The generated C source takes ~3-4 minutes to compile with -O2 optimization (which reduces down to ~10-20 seconds with -O1). Obviously, we will need to split such huge files into smaller ones.
394 4 Gary Bradski
* The work on converting numl lexical scanner and the parser to numllex and numlyacc is started.
395 4 Gary Bradski
* The C code generator has been improved to produce smaller .c files without loosing efficiency (there is quite the opposite effect, in fact). In particular, 1 week ago numlyacc output took ~130000 lines of code in C, now it takes ~95000.
396 4 Gary Bradski
* Prepared some slides summarizing numl progress over the year: https://docs.google.com/presentation/d/1YmFCkvoo5qwtDAd70xyWpIazMFEWExz7aeZ2P4v2m40/edit#slide=id.p3
397 4 Gary Bradski
* There is the first draft of the output C language AST data structure. In the current compiler C code generator is very sophisticated single-pass procedure. We plan to move to the structured representation of C code and then make a few passes over it. It should help to further improve quality of the output code.
398 4 Gary Bradski
399 4 Gary Bradski
*Numl Plans:*
400 4 Gary Bradski
* *[done!]* Finish numlyacc, test the pair numllex + numlyacc.
401 4 Gary Bradski
* convert numl parser to numl, then proceed with type checker, k-normalization and optimizers of the k-form.
402 4 Gary Bradski
* add basic OOP capabilities. This is another item in progress.
403 4 Gary Bradski
* write some slides and initial documentation for the language and the standard library
404 4 Gary Bradski
* grow the standard library.
405 4 Gary Bradski
406 4 Gary Bradski
407 4 Gary Bradski
408 4 Gary Bradski
409 4 Gary Bradski
410 4 Gary Bradski
h3. *_Action Items_*
411 4 Gary Bradski
412 4 Gary Bradski
*Gary*
413 4 Gary Bradski
414 4 Gary Bradski
 * get out GSOC mentor payments
415 4 Gary Bradski
416 1
*Vincent*
417 4 Gary Bradski
418 5 Gary Bradski
 * Talk about NUML
419 4 Gary Bradski
420 4 Gary Bradski
*Vadim*
421 4 Gary Bradski
422 4 Gary Bradski
 * Have Sergey send Gary US account info
423 4 Gary Bradski
424 4 Gary Bradski
*Grace*
425 4 Gary Bradski
426 4 Gary Bradski
 * . 
427 4 Gary Bradski
428 4 Gary Bradski
429 4 Gary Bradski
<pre>
430 4 Gary Bradski
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
431 4 Gary Bradski
</pre>
432 4 Gary Bradski
433 3 Gary Bradski
h2. 2016-01-19
434 3 Gary Bradski
435 3 Gary Bradski
h3. _*Agenda*_
436 3 Gary Bradski
437 3 Gary Bradski
 * Taxes
438 3 Gary Bradski
 * OpenCV 3.1 progress
439 3 Gary Bradski
440 3 Gary Bradski
h3. *_Minutes_*
441 3 Gary Bradski
442 3 Gary Bradski
 * Paid OpenCV.org's taxes (yes we have taxes because not all income was paid out in the same year)
443 3 Gary Bradski
 * OpenCV
444 3 Gary Bradski
 ** Pulled in 20 pull requests
445 3 Gary Bradski
 ** We are extending the Hardware Acceleration Layer (HAL) -- an API that HW manufacturers can come under and speed up OpenCV
446 3 Gary Bradski
 *** Did the complex ones first
447 3 Gary Bradski
 *** Simpler ones next
448 3 Gary Bradski
 ** These comply with but go beyond OpenVX (it is 40 functions), but we will cover many more functions
449 3 Gary Bradski
 *** FFT, larger data types (beyond 8 bits)
450 3 Gary Bradski
 *** We will allow direct calls later for even more acceleration
451 3 Gary Bradski
 * NUML
452 3 Gary Bradski
 ** NUML compiler is being converted to NUML (port of YACC tool is now in NUML) 
453 3 Gary Bradski
 *** Parser is complicated, 500 states, but automatically generated 
454 3 Gary Bradski
 *** Parser is general, can be used for other functions, macros
455 3 Gary Bradski
 * Vincent in town for two weeks from France
456 3 Gary Bradski
 ** Meet with OpenCV, Willow and ROS people
457 3 Gary Bradski
 ** There will be official ARM support, current build bot already tests against ARM (Linux, but not Android)
458 3 Gary Bradski
 *** This will expand the ARM user population by quite a bit
459 3 Gary Bradski
 ** Reading up on SYCL (part of Chronos2, higher level than OpenCL)
460 3 Gary Bradski
 * OSI wants us to change our logo :-(  
461 3 Gary Bradski
 ** Rather than fight, we're probably going to redesign it
462 3 Gary Bradski
 ** Itseez has a professional designer and/or we could have a contest, but that may lead to conflict problems
463 3 Gary Bradski
464 3 Gary Bradski
h3. *_Reports_*
465 3 Gary Bradski
466 3 Gary Bradski
 * . Vadim
467 3 Gary Bradski
468 3 Gary Bradski
469 3 Gary Bradski
470 3 Gary Bradski
h3. *_Action Items_*
471 3 Gary Bradski
472 3 Gary Bradski
*Gary*
473 3 Gary Bradski
474 3 Gary Bradski
 * . 
475 3 Gary Bradski
476 3 Gary Bradski
*Vincent*
477 3 Gary Bradski
478 3 Gary Bradski
 * . 
479 3 Gary Bradski
480 3 Gary Bradski
*Vadim*
481 3 Gary Bradski
482 3 Gary Bradski
 * . 
483 3 Gary Bradski
484 3 Gary Bradski
*Grace*
485 3 Gary Bradski
486 3 Gary Bradski
 * . 
487 3 Gary Bradski
488 3 Gary Bradski
489 3 Gary Bradski
<pre>
490 3 Gary Bradski
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
491 3 Gary Bradski
</pre>
492 3 Gary Bradski
493 3 Gary Bradski
h2. 2016-01-12
494 1
495 1
h3. _*Agenda*_
496 1
497 2 Gary Bradski
 * New year
498 1
499 1
h3. *_Minutes_*
500 1
501 2 Gary Bradski
 * Maxime extending HAL (Hardware Acceleration Layer) 
502 2 Gary Bradski
 ** Fixed API, so OpenCV can be easily accelerated w/o needing any customization
503 2 Gary Bradski
 * Bug reports and pull requests for 3.0 and 3.1
504 2 Gary Bradski
 ** Working on
505 2 Gary Bradski
 * NUML
506 2 Gary Bradski
 ** NUML compiler converted from C to NUML
507 2 Gary Bradski
 *** 3 parts, 30K lines. If 30K lines compile and work, it's  a good sign of stability
508 2 Gary Bradski
 *** Already some bugs fixed
509 2 Gary Bradski
 *** Smaller footprint to get started
510 2 Gary Bradski
 ** NUML => C bootstrap. So can port to new platform easily
511 2 Gary Bradski
 ** Advantages: 
512 2 Gary Bradski
 *** Safe language is safe, can't go out of bounds. 
513 2 Gary Bradski
 *** parallel for is embedded
514 2 Gary Bradski
 *** matlab kind of productivity, but optimized C run speed
515 2 Gary Bradski
 **** NUML 20-50x faster than Python
516 2 Gary Bradski
 *** types are checked at compile time. No number to string adds for example
517 2 Gary Bradski
 *** Compile speed at speed of C compiler (NUML byte code to C) Bottleneck if C compiler
518 2 Gary Bradski
 *** 1000 lines of NUML => 10Ks of C code
519 2 Gary Bradski
 ** Working on this conversion, then tutorial slides
520 2 Gary Bradski
 *** Can write code in text editor, type NUML and then
521 2 Gary Bradski
 *** Notebooks
522 1
523 1
h3. *_Reports_*
524 1
525 1
 * . Vadim
526 1
527 1
528 1
529 1
h3. *_Action Items_*
530 1
531 1
*Gary*
532 1
533 1
 * . 
534 1
535 1
*Vincent*
536 1
537 1
 * . 
538 1
539 1
*Vadim*
540 1
541 1
 * . 
542 1
543 1
*Grace*
544 1
545 1
 * . 
546 1
547 1
548 1
<pre>
549 1
      <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
550 1
</pre>
551 1
552 1
553 1
554 1
555 1
[[Meeting_notes]]