GSoC 2015

Version 21 (Gary Bradski, 2015-11-24 07:05 pm)

1 1
h1. *Ideas Page for OpenCV Google Summer of Code 2015 (GSoC 2015)*
2 1
3 7 Gary Bradski
*STILL UNDER CONSTRUCTION ...*
4 1
5 1
6 3 Gary Bradski
*OpenCV 3D recognition and pose from last year.*
7 11 Gary Bradski
!3D_recog.jpg!
8 1
9 1
----
10 1
11 1
h2. General Information:
12 1
13 3 Gary Bradski
* "GSoC 2015 site: http://www.google-melange.com/gsoc/homepage/google/gsoc2015":http://www.google-melange.com/gsoc/homepage/google/gsoc2015
14 3 Gary Bradski
* Mailing list for OpenCV GSOC 2015: [email protected]
15 3 Gary Bradski
** Group site https://groups.google.com/forum/#!forum/opencv-gsoc-2015
16 3 Gary Bradski
* "Timeline for GSoC 2015":http://www.google-melange.com/gsoc/events/google/gsoc2015
17 3 Gary Bradski
18 1
** *Next important dates:*
19 7 Gary Bradski
*** -Feb 20 19:00 UTC: Organization Application Deadline.- *DONE!*
20 3 Gary Bradski
*** Mar 02 19:00 UTC: List of accepted Organizations.
21 3 Gary Bradski
*** Mar 16 16:00 UTC: Student Application period begins!
22 3 Gary Bradski
*** Mar 27 19:00 UTC: Student Application period ends!
23 3 Gary Bradski
*** Apr 13 Deadline for OpenCV to request # of slots.
24 3 Gary Bradski
*** Apr 15 Google publishes how many slots we get.
25 3 Gary Bradski
*** Apr 21 Try to eliminate duplication of students.
26 3 Gary Bradski
*** Apr 24 IRC for OpenCV to resolve all duplications.
27 3 Gary Bradski
*** Apr 27 19:00 UTC: Accepted students announced.
28 3 Gary Bradski
*** May 25 Let Coding begin!
29 3 Gary Bradski
*** Jun 26 19:00 UTC: Mid term evaluation begins.
30 3 Gary Bradski
*** Jul 03 19:00 UTC:  Mid term end.
31 3 Gary Bradski
*** Aug 21 19:00 UTC: Coding stop; Pull requests must be in; Mentors: final evaluation begins...
32 3 Gary Bradski
*** Aug 28 19:00 UTC: Final evaluation deadline; Students begin submitting code.
33 3 Gary Bradski
*** Sept 25 19:00 UTC: Deadline for Google Code submission
34 3 Gary Bradski
*** Oct 24-25: Mentor Summit!
35 1
36 3 Gary Bradski
* we'll create a video just like we did 2013 year http://www.youtube.com/watch?v=_TTtN4frMEA
37 3 Gary Bradski
* 2014 *Vincent?!*
38 1
39 1
*Times:*
40 1
*  UTC to PDT (Pacific Daylight Time == Daylight savings time. In winter it's PST).
41 1
** "utc time converter":http://weatherarc.com/utc-time-conversion
42 1
43 1
*Resources:*
44 1
45 1
* "OpenCV Developers Site":http://code.opencv.org/projects/opencv/wiki
46 1
* "OpenCV User's Site":http://opencv.org
47 1
* [[How_to_contribute|How to Contribute Code]]
48 1
* Source Code can be found at "GitHub":https://github.com/Itseez/opencv. 
49 1
** To get the source code, point your git client to @git://github.com/Itseez/opencv.git@. Here are [[Working_with_OpenCV_git_repository|instructions]].
50 1
<pre>
51 1
git clone git://github.com/Itseez/opencv.git
52 1
</pre>
53 1
** The rest of the history plus matches between git commits and SVN revisions are stored at a separate "OpenCV Attic" repository: git://code.opencv.org/opencv_attic.git.
54 1
** Also OpenCV Extra was put to a separate repository: git://code.opencv.org/opencv_extra.git.
55 1
* [[OpenCV Development Process]]
56 1
** [[Meeting_notes|Developer meeting notes]]
57 1
58 1
h2. For students or mentors interested in applying
59 1
60 1
* You *must* already know how to program well in C++
61 1
** Some projects may require Python or Matlab skills
62 4 Gary Bradski
* Discuss projects below or other ideas with us https://groups.google.com/forum/?fromgroups#!forum/opencv-gsoc-2015
63 1
64 1
<pre>
65 12 Gary Bradski
\/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/  \/
66 9 Gary Bradski
</pre>
67 9 Gary Bradski
68 8 Gary Bradski
h1. 2015 Project Ideas:
69 1
70 1
*Students may propose their own projects (give us a clear summary and why you can do this project). However, below are some of our priorities for this year* Contact us and/or discuss ideas at https://groups.google.com/forum/?fromgroups#!forum/opencv-gsoc-2015
71 1
72 19 Gary Bradski
_These are not in order of priority_
73 19 Gary Bradski
74 9 Gary Bradski
*1 Google Cardboard*
75 9 Gary Bradski
* Do visual odometry, SLAM etc for Google Cardboard
76 1
77 9 Gary Bradski
*2 Projection mapping (Projected Augmented Reality)*
78 9 Gary Bradski
* Calibrate a camera to a projector
79 9 Gary Bradski
* Put out structured light to learn the 3D map of what's in front of the camera
80 9 Gary Bradski
* Project the camera image, suitably rotated and shifted onto the scene
81 1
* Unity or some other program to start transforming the scene for projection mapping
82 1
** See http://www.creativebloq.com/video/projection-mapping-912849 to get ideas of what you can do with this
83 1
84 1
*3 Update OpenCV file storage so that it's readable by Python in OpenCV (move to YAML 1.2 Edition 3)*
85 1
* Mentor Prasanna
86 1
* OpenCV C++ writes out its own YAML tags which makes it incompatible with it's own Python and with external python readers
87 18 Gary Bradski
* Speedup fs reading/writing, add JSON support, add base64 (+RLE) support for large amounts of numerical data
88 1
* References
89 1
** YAML http://www.yaml.org
90 14 Gary Bradski
** Problem statement: http://stackoverflow.com/questions/11141336/filestorage-for-opencv-python-api
91 14 Gary Bradski
92 14 Gary Bradski
*4 Stereo correspondence improvements*
93 14 Gary Bradski
* More accurate and faster stereo correspondence (StereoBM/StereoSGBM) by using LBP/BRIEF/DAISY etc. per-pixel descriptors instead of sum-of-absolute-differences.
94 14 Gary Bradski
95 14 Gary Bradski
*5 Self-contained video codec(s)*
96 14 Gary Bradski
* There is draft version of self-contained motion jpeg encoder to be integrated to OpenCV.
97 14 Gary Bradski
* We will also need decoder, 12-bit jpeg support, multi-threaded encoder and decoder.
98 14 Gary Bradski
* There are some other codecs, like libvpx, which we can support and link right into highgui, without dependency from ffmpeg/libav.
99 14 Gary Bradski
100 1
*6 Deep learning*
101 19 Gary Bradski
* It would be cool if OpenCV could load and run deep networks trained with popular DNN packages like Caffe, Theano or Torch.
102 14 Gary Bradski
* GPU/OpenCL optimization and/or other optimizations (that can partly be contributed back to the upstream projects) are also encouraged.
103 14 Gary Bradski
104 14 Gary Bradski
*7 Better interactive camera calibration*
105 14 Gary Bradski
* Modern algorithms would allow us to recompute camera parameters after almost each frame, compute reprojection error, compute confidence intervals for the parameters.
106 14 Gary Bradski
* the partially occluded calibration patterns could be handled somehow to, especially if we want to estimate intrinsic parameters only.
107 14 Gary Bradski
* the application may show us the areas where the corner borders have been shown so that user can see how good are the data
108 1
109 20 Gary Bradski
*8 Create a much better calibration target, we will call it "Charuco*
110 19 Gary Bradski
* We know how to combine Aruco targets with checker boards to create a "super calibration" object
111 19 Gary Bradski
* It also can express ~1 billion distinct codes
112 19 Gary Bradski
* Implement  this for OpenCV
113 19 Gary Bradski
114 20 Gary Bradski
*9 Color Calibration and white balance* 
115 19 Gary Bradski
* With McBeth chart and with gray world algorithm (improve exisiting color constancy algorithms)
116 19 Gary Bradski
* Possibly collect deep learning way of doing this (needs large training set)
117 19 Gary Bradski
118 21 Gary Bradski
*10 Realtime image preprocessing algorithms (real time on mobile)*
119 21 Gary Bradski
* We and many other OpenCV users would definitely enjoy very fast denoising, color improvements, white balance etc. algorithms.
120 21 Gary Bradski
121 21 Gary Bradski
*11 Tracking improvements*
122 14 Gary Bradski
* TLD algorithm is implemented in OpenCV, but it needs improvements and optimizations.
123 20 Gary Bradski
* ASM/AAM can also be implemented, as well as the particle filter.
124 15 Gary Bradski
 
125 14 Gary Bradski
126 20 Gary Bradski
*12 PBM (part-based models) improvements*
127 15 Gary Bradski
* There is latentsvm package in opencv_contrib that needs to be improved (quality-wise and speed-wise).
128 15 Gary Bradski
* Adding training, even if it involves execution of external svmperf or other tool, is definitely appreciated too.
129 14 Gary Bradski
130 20 Gary Bradski
*13 Improving ICF/ACF + <some>Boost training and detection*
131 14 Gary Bradski
* In opencv_contrib there is initial version of the training application and detector based on integral channel features and boosting. Further improvements of this part would be really useful.
132 14 Gary Bradski
133 20 Gary Bradski
*14 numl+OpenCV, lua+OpenCV*
134 14 Gary Bradski
* there is emerging numl language, suitable for implementation of complex computationally-intensive algorithms. OpenCV bindings for this language would be really useful.
135 1
* the other language that is now used more often for ML and CV (thanks to Torch) is Lua; there are old bindings for a tiny part of OpenCV; could be useful to extend our autogenerated bindings to Lua.
136 1
137 20 Gary Bradski
*15 human interaction*
138 17 Gary Bradski
* gesture recognition
139 21 Gary Bradski
* human skeleton based on 2d or 3d 
140 1
141 1
*16 SfM*
142 1
* update libmv to OpenMVG and get the 3d viz from OpenCV
143 21 Gary Bradski
* Make the Structure from Motion Module coherent
144 21 Gary Bradski
145 21 Gary Bradski
*17 Quad Rotor Contrib*
146 21 Gary Bradski
* Apply much of the above into a quad rotor drone automatic tracking, mapping navigation etc module
147 19 Gary Bradski
148 19 Gary Bradski
149 17 Gary Bradski
150 1
<pre>
151 1
/\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\ /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\  /\ 
152 1
</pre>
153 13 Gary Bradski
154 13 Gary Bradski
155 13 Gary Bradski
h1. Accepted Projects for OpenCV GSoC 2015:
156 13 Gary Bradski
157 13 Gary Bradski
OpenCV GSoC 2015 students, projects, mentors are below. *WHEN THEY ARE KNOWN*
158 13 Gary Bradski
159 13 Gary Bradski
160 13 Gary Bradski
<pre>
161 13 Gary Bradski
Student                 Project                                           Mentor(s)
162 13 Gary Bradski
=======                 =======                                           ========
163 13 Gary Bradski
164 13 Gary Bradski
</pre>
165 13 Gary Bradski
166 13 Gary Bradski
Project notes will be compiled "here":https://sites.google.com/a/opencv.org/opencv/gsoc-2015-project-notes .
167 13 Gary Bradski
168 13 Gary Bradski
169 1
170 1
h2. Mentors
171 1
172 1
*Actual signed up mentors*
173 1
174 1
* Alexander Mordvintsev	zzznah(+)gmail.com
175 1
* Sid Bao	ybao(+)magicleap.com
176 1
* Vincent Rabaud	vincent.rabaud(+)gmail.com
177 1
* Vadim Pisarevsky	vadim.pisarevsky(+)gmail.com
178 1
* Adrian Kaehler	therealadrian(+)gmail.com
179 1
* Terry Boult	tboult(+)vast.uccs.edu
180 1
* spmallick	spmallick(+)taaz.com
181 1
* Serge Belongie	sjb344(+)cornell.edu
182 1
* Stefano	s.fabri10(+)gmail.com
183 1
* Prasanna	pras.bits(+)gmail.com
184 1
* Pablo Alcantarilla	pablofdezalc(+)gmail.com
185 1
* Bence Magyar	mw.mzperx(+)gmail.com
186 1
* Manuele	manuele.tamburrano(+)gmail.com
187 1
* Grace Vesom	grace.vesom(+)gmail.com
188 1
* Open Source Computer Vision Library (OpenCV)	garybradski(+)gmail.com
189 1
* Douglas Lee	dougabug(+)gmail.com
190 1
* Claudia Rapuano	c.rapuano(+)gmail.com
191 1
* Antonella Cascitelli	antonellacascitelli(+)gmail.com
192 1
* Anatoly Baksheev	anatoly.baksheev(+)itseez.com
193 1
* Alexander	alexander.shishkov(+)itseez.com
194 16 Gary Bradski
* Alexander Smorkalov	alexander.smorkalov(+)itseez.com
195 1
* Alexander Bovyrin	alexander.bovyrin(+)itseez.com
196 1
197 1
198 1
199 1
In the below, get rid of the ''-delete-'' to make the emails work.
200 1
201 1
 Anatoly Baksheev
202 1
 Researcher, Vision Algorithms on GPU
203 1
 Argus/Itseez
204 1
 [email protected]  
205 1
 
206 1
  Alexander Bovyrin
207 1
  PhD, Senior Researcher
208 1
  Argus/Itseez founder
209 1
  NNU Lecturer
210 1
  [email protected]
211 1
212 1
 Gary Bradski
213 1
 Founder, Industrial Perception Inc.
214 1
 Consulting Prof. Stanford U.
215 1
 OpenCV Founder, Technical Content Owner, GSoC Admin
216 1
 Co-author of Learning OpenCV Book
217 1
 http://www.willowgarage.com/pages/people/gary-bradski-senior-researcher
218 1
 [email protected]
219 1
220 1
 Antonella Cascitelli
221 1
 Grad student, University of Rome
222 1
 [email protected]
223 1
224 1
 Eric Christiansen
225 1
 PhD, UCSD
226 1
 [email protected]
227 1
228 1
 Stefano Fabri
229 1
 CRR Team leader, University of Rome
230 1
 [email protected]
231 1
232 1
 Victor Eruhimov
233 1
 OpenCV founding team/Senior Researcher
234 1
 Argus/Itseez founder
235 1
 NNU Lecturer
236 1
 [email protected]
237 1
238 1
 Adrian Kaehler
239 1
 Principle Engineer, Applied Minds
240 1
 Co-author of Learning OpenCV Book.
241 1
 [email protected]
242 1
243 1
 Peter Karasev
244 1
 PhD Student, MINERVA Research Group
245 1
 Georgia Tech
246 1
 [email protected]
247 1
248 1
 Vadim Pisarevsky
249 1
 OpenCV founding team/Czar
250 1
 [email protected]
251 1
252 1
 Manuele Tamburrano
253 1
 Grad Student, University of Rome
254 1
 [email protected]
255 1
256 1
 Vincent Rabaud
257 1
 Principle Engineer, Aldebaran Robotics
258 1
 [email protected]
259 1
260 1
  Claudia Rapuano
261 1
  Grad student, University of Rome
262 1
  [email protected]
263 1
 
264 1
 Grace Vesom
265 1
 Lawrence Livermore 
266 1
 -delete-grace.vesom@-delete_gmail.com
267 1
268 1
 Bence Magyar
269 1
 Pal Robotics
270 1
 [email protected]
271 1
272 1
 Pablo Alcantarilla
273 1
 Toshiba Research Europe Ltd.
274 1
 [email protected]
275 1
276 1
h3.  Back up Mentors
277 1
278 1
 Mark Asbach
279 1
 Fraunhofer IAIS
280 1
 Schloss Birlinghoven
281 1
 Sankt Augustin, Germany
282 1
 http://mmprec.iais.fraunhofer.de/asbach.html
283 1
 [email protected]
284 1
285 1
286 1
 Nicolas Saunier, Ph.D.
287 1
 Assistant Professor
288 1
 Civil, Geological and Mining Department (CGM)
289 1
 École Polytechnique de Montréal
290 1
 http://nicolas.saunier.confins.net
291 1
 [email protected]
292 1
293 1
294 1
 Alexander Mordvintsev
295 1
 Software Engineer
296 1
 http://znah.net
297 1
 [email protected]
298 1
299 1
 Andrey Morozov
300 1
 Software Engineer
301 1
 Argus/Itseez
302 3 Gary Bradski
 [email protected] 
303 1
304 1
h2. OpenCV Org. Application to GSoC 2015
305 1
306 1
"OpenCV GSoC Application":http://code.opencv.org/projects/gsoc2013/wiki/GSoC2013OpenCVApplication
307 1
308 3 Gary Bradski
h2. Previous Years 
309 3 Gary Bradski
310 1
* 2014 "GSoC 2014 Ideas Page":http://code.opencv.org/projects/opencv/wiki/GSoC_2014
311 1
* 2013 "GSoC 2013 Ideas Page":http://code.opencv.org/projects/gsoc2013/wiki
312 1
* 2012 Ideas site http://code.opencv.org/projects/gsoc2012/wiki/Wiki/
313 1
* 2011 Ideas site http://opencv.willowgarage.com/wiki/GSOC_OpenCV2011
314 1
** 2011 Application GSoC page is http://opencv.willowgarage.com/wiki/GSoC2011OpenCVApplication
315 1
* 2010 Ideas site http://opencv.willowgarage.com/wiki/GSOC_OpenCV2010
316 1
** 2010 Application page http://opencv.willowgarage.com/wiki/ApplicationGSOC2010
317 1
318 1
----