Computer Vision Summer Camp - Intel Summer School on Computer Vision

Computer Vision Summer Camp - Intel Summer School on Computer Vision

From 3 to 16 July on the basis of the UNN them. N.I. Lobachevsky held the Intel Interuniversity Summer School on Computer Vision - Computer Vision Summer Camp, which was attended by more than 100 students. The school was aimed at students of technical specialties of Nizhny Novgorod universities who are interested in computer vision, deep learning, neural networks, Intel OpenVINO, OpenCV.

In this article, we will share how the selection to the School took place, what we studied, what the guys did in the practical part, and also talk about some of the projects presented at the defense.

Selection process and forms of participation

We decided to give the guys the choice of applying for two forms of education: full-time and part-time. For part-time students did not pass the selection and were enrolled immediately. They attended only lectures, on weekdays, in the morning. Also, the children had the opportunity to complete practical tasks and send them to GitHub to be checked by teachers.

In order to get into full-time, the guys had to come to the Intel office for an interview with the commission. The difference from the part-time form was that, in addition to lectures, the camp participants discussed practical tasks with curators - teachers from UNN and engineers from Intel. In the second week, practical tasks ended and projects began, on which the participants worked in groups of 3 people.

During the interview, students were asked questions on mathematics and programming, and were also given a problem that had to be solved on the spot. It is worth noting that the commission consisted of software engineers, algorithm engineers, and teachers from the University. N.I. Lobachevsky, so the interview turned out to be multilateral and outstanding. From the interviewer's point of view, it was interesting to find out the basic technical knowledge of students in relation to computer vision, so topics such as C ++ / STL, OOP, basic algorithms and data structures, linear algebra, mathematical analysis, discrete mathematics and much more were asked. Of the tasks, it was a priority to learn the reasoning of students. The commission was also interested in where they studied, what experience they had before this school (for example, scientific activity) and how it could be applied directly to the field of computer vision.

In total, 78 students took part in the selection for full-time form, while there were 24 places in full-time form. The competition was 3 students per place. You can see the statistics on the participants and the visual differences between full-time and part-time forms of participation in the table below:

Computer Vision Summer Camp - Intel Summer School on Computer Vision

What did the guys do for 2 weeks?

Students in theory and practice got acquainted with the main tasks of computer vision: image classification, object detection and their tracking. The lecture component on each topic usually included a historical digression into the development of classical methods for solving computer vision problems and modern methods of solving using machine learning and neural networks. The theory was followed by practice, where students, having downloaded popular neural network models, launched them using the DNN module of the OpenCV library, creating a custom application.

Presentations of all lectures were posted in a public repository Githubso that students can always open and view the necessary information, including after school. It was possible to communicate with lecturers, practice teachers and Intel engineers both live and via chat in Gitter. The timing of the project week also turned out to be successful: it began on Wednesday, which made it possible to usefully spend the weekend free from lectures, improving team decisions. The most responsible participants spent half of Saturday in the Intel office, for which they were encouraged by an unscheduled tour on the same day.

How was the project defense?

Each team was given 10 minutes to talk about what they did during the project and what they came up with. After this time, 5 minutes began, during which the company's engineers asked the guys questions and gave small tips that would help them improve their project or avoid existing mistakes in the future. Each of the guys tried himself as a speaker, demonstrating his knowledge in the field of computer vision and confirming his contribution to the creation of the project, which helped us to consider and draw a conclusion about each participant of the school. The defense lasted for 3 hours, but we took care of the guys and relieved the tension with a small coffee break, where the guys could take a breath and discuss issues with leading Intel experts.

At the end of the day, we awarded one first, two second and three third places. It was quite difficult to choose, because each team, each project had its own zest and was distinguished by its original presentation.

Computer Vision Summer Camp - Intel Summer School on Computer Vision
Full-time CV Camp participants, project defense, Intel office in Nizhny Novgorod

Presented projects

smart glove

Computer Vision Summer Camp - Intel Summer School on Computer Vision

Using the detector and tracker with OpenCV for visual navigation in space. The team has further added the ability to determine depth using two cameras. Microsoft Speech API is used as the control interface.

Receptor

Computer Vision Summer Camp - Intel Summer School on Computer Vision

Food detection and selection of a recipe for a finished dish that includes the found ingredients. The guys were not afraid of the task at hand and in a week they marked up a sufficient number of images on their own, trained the detector using the TensorFlow Object Detection API and added the logic for finding the recipe. Simple and tasteful!

Editor 2.0

Computer Vision Summer Camp - Intel Summer School on Computer Vision

The project participants used a set of neural networks (face search, face image normalization by key points, calculation of a face image descriptor) for face recognition as part of the task of finding fragments in long videos in which a certain person is present. The developed system can be used as an assistance system for video editing, freeing a person from the need to watch the video himself in search of the necessary fragments. Using neural networks from OpenVINO model libraries, the team managed to achieve a high speed of the application: on a laptop with an Intel Core i5 processor, the video processing speed was 58 frames per second.

Anonymizer

Computer Vision Summer Camp - Intel Summer School on Computer Vision

Drawing glasses and masks on a person's face. The MTCNN network was used to detect faces and key points.

Anonymus

Computer Vision Summer Camp - Intel Summer School on Computer Vision

Another interesting work on the topic of concealing identity. This team introduced several options for face distortion: blurring and pixelation. In one week, the guys not only figured out the task, but also provided an anonymization mode for a specific person (with face recognition).

Warm-up

The “Warm-up” project team solved the problem of creating a sports assistant for head tilt exercises. And even if the final application of this application is still controversial, an extensive study has been carried out comparing various face detection algorithms: Haar cascades, networks from TensorFlow, OpenCV and OpenVINO. Warm up not only physically, but also mentally!

Lower 800

Computer Vision Summer Camp - Intel Summer School on Computer Vision

Nizhny Novgorod, the city where the school was held, will turn 2 years old in 800 years, which means that there is enough time to implement an interesting project. We suggested that the children think about the task of creating a guide that, based on the image of the facade of buildings, can give information about what kind of object is shown in the image and what facts are known about it. In our opinion, this task was one of the most difficult, since it belongs to classical computer vision, but the team showed a decent result.

Rock Paper Scissors

Despite the tight time constraints on the design work, this team was also not afraid to experiment with training their own neural network to classify hand positions in a well-known game.

Feedback from participants

We asked students from different courses to share their impressions of the Summer School:

I recently had the pleasure of attending the Intel Computer Vision Summer Camp and it was a wonderful experience. We gained a lot of new knowledge and skills in the field of CV, software installation, debugging, we were also immersed in the working environment, faced real problems, discussed possible solutions with colleagues and school teachers. There is a myth that a programmer's job is only to communicate with a computer. However, this is not so from the word at all. Our creative work is inseparable from communication with people. It was through communication that it was possible to obtain unique knowledge. And this part of the school I liked the most. However, there is one minus ... after graduation, I wanted to continue! In addition to theoretical knowledge in DL and practical skills in CV, I got an idea of ​​which areas of mathematics should be given special attention, which technologies should be studied. Purposefulness, professionalism and love for their work of Intel engineers and researchers influenced my choice of direction in IT. For this I would like to thank all the organizers of the school.

Kristina, 1st year student, HSE

In such a short time, the school was able to provide maximum information and practice on the topic of computer vision. And although it was designed for basic knowledge, the lectures contained a lot of technical material that you want to understand and spend more time studying. Mentors and lecturers of the school willingly answered all questions and communicated with the audience. Well, during the implementation of the final project, I had to plunge into the wilds of developing a finished application and face difficulties that do not always arise when studying. Our team eventually made an application for playing the rock-paper-scissors game with a computer. We trained a model that recognizes a figure on a webcam, wrote logic and made an interface based on the opencv framework. The school gave food for thought and a vector for further learning and development. Very pleased to have participated.

Sergey, 3rd year student, UNN

The school didn't quite live up to my expectations. The lectures were held by quite experienced people from Intel developers. Communication with lecturers has always been interesting and useful, mentors are responsive, always ready to help. Lectures are pleasant to listen to, the topics are quite relevant and informative. But some things I already knew, and those that I didn’t know were not reinforced by practice, and therefore really good material was never fully understood and studied by me. Yes, most of the information is provided for informational purposes, so that you can then try it out at home, or just imagine what it is about, but still I wanted to implement some of the existing algorithms on my own under the supervision of experienced teachers who can give good advice or help if something does not work. As a result, ready-made solutions were used in practice, and the code, one might say, was previously written for us, it was only necessary to slightly change it. The projects were the simplest, and if you try to complicate the task in some way, then you do not have enough time to implement it to a more or less stable state, as happened with us.
In general, the whole school looks like some kind of not too serious game of developers, and this is precisely the fault of the practical part. I think that it is necessary to increase the time for conducting the school, to complicate the practice material, so that you can and should write something yourself, something really complex and necessary, and not use ready-made ones, make the practice smoother in increasing complexity, topics for competitive give out projects in the first days so that the material from lectures and practices can be used immediately in your projects and there is more time for implementation. Then the time spent on school will serve as a good experience for beginners.

Dmitry, 1st year master's student, NSTU

The summer school from Intel was a great chance to spend this summer doing what you love. The very fact that the lectures were given by Intel employees involved in programming in the field of computer vision did not let me relax, I wanted to get the most out of the whole process, although it was sometimes difficult. Every day passed very quickly, imperceptibly and fruitfully. The opportunity to implement my own project allowed me to work in a team with wonderful curators and other school participants. Briefly describe these two weeks can be so - interesting and fleeting.

Elizabeth, 2nd year student, UNN

In the autumn (October-November) you will find the Delta educational program, information about which you can find in our Vkontakte groups. Stay tuned!

Source: habr.com

Add a comment