Computer Vision Sommercamp - Intel Computer Vision Sommerschule



Vom 3. bis 16. Juli auf der Grundlage der UNN ihnen. N.I. Lobachevsky bestand die Interuniversity Summer School von Intel Computer Vision - Computer Vision Summer Camp, an der mehr als 100 Studenten teilnahmen. Die Schule richtete sich an Studenten technischer Fachrichtungen der Universitäten von Nischni Nowgorod, die sich für Computer Vision, Deep Learning, neuronale Netze, Intel OpenVINO und OpenCV interessieren.

In diesem Artikel werden wir erzählen, wie die Auswahl für die Schule durchgeführt wurde, was wir studiert haben, was die Jungs im praktischen Teil gemacht haben und auch über einige der Projekte sprechen, die bei der Verteidigung vorgestellt wurden.

Auswahlverfahren und Teilnahmeformulare


Wir haben beschlossen, den Kindern die Wahl zu geben, sich für zwei Ausbildungsformen zu bewerben: Vollzeit und Teilzeit. Die Studenten haben die Auswahl für die Vollzeitkorrespondenz nicht bestanden und sich sofort eingeschrieben. Sie besuchten wochentags nur Vorträge am Morgen. Die Jungs hatten auch die Möglichkeit, praktische Aufgaben zu erledigen und sie zum Testen durch Lehrer an GitHub zu senden.

Um Vollzeit zu arbeiten, mussten die Jungs zu einem Interview mit der Kommission ins Intel-Büro kommen. Der Unterschied zur Teilzeitform bestand darin, dass die Campteilnehmer zusätzlich zu den Vorlesungen praktische Aufgaben mit Kuratoren erledigten - Lehrern von UNN und Ingenieuren von Intel. In der zweiten Woche wurden die praktischen Aufgaben erledigt und Projekte gestartet, an denen die Teilnehmer in Gruppen von 3 Personen arbeiteten.

Während des Interviews wurden den Schülern Fragen in Mathematik und Programmierung gestellt sowie eine Aufgabe gestellt, die vor Ort gelöst werden musste. Es ist erwähnenswert, dass die Kommission aus Software-Ingenieuren, Algorithmus-Ingenieuren und Universitätsprofessoren bestand. N.I. Lobachevsky, so erwies sich das Interview als multilateral und hervorragend. Aus Sicht des Befragten war es interessant, die technischen Grundkenntnisse der Studierenden im Bereich Computer Vision herauszufinden, weshalb Themen wie C ++ / STL, OOP, grundlegende Algorithmen und Datenstrukturen, lineare Algebra, mathematische Analyse, diskrete Mathematik und vieles mehr gestellt wurden. Bei den Aufgaben war es vorrangig, die Argumentation der Schüler zu lernen. Die Kommission war auch daran interessiert, wo sie studierten, welche Erfahrungen sie vor dieser Schule gemacht hatten (zum Beispiel wissenschaftliche Aktivitäten) und wie sie direkt auf das Gebiet der Computer Vision angewendet werden könnten.

Insgesamt nahmen 78 Studenten an der Vollzeitauswahl teil, während es 24 Vollzeitplätze gab. Der Wettbewerb bestand aus 3 Studenten pro Platz. In der folgenden Tabelle sehen Sie Statistiken zu Teilnehmern und visuelle Unterschiede zwischen Vollzeit- und Teilzeitbeteiligungsformen:



Was haben die Jungs 2 Wochen lang gemacht?


Studenten der Theorie und Praxis lernten die Hauptaufgaben des Computer Vision kennen: Klassifizierung von Bildern, Erkennung von Objekten und deren Begleitung. Die Vorlesungskomponente zu jedem Thema umfasste in der Regel eine historische Exkursion in die Entwicklung klassischer Methoden zur Lösung von Computer-Vision-Problemen und moderner Lösungsmethoden mit maschinellem Lernen und neuronalen Netzen. Der Theorie folgte eine Praxis, in der die Schüler nach dem Herunterladen gängiger neuronaler Netzwerkmodelle diese mithilfe des DNC-Moduls der OpenCV-Bibliothek starteten und eine Benutzeranwendung erstellten.

Die Präsentationen aller Vorlesungen wurden im öffentlichen Archiv von Github veröffentlicht , damit die Schüler auch nach der Schule immer die erforderlichen Informationen öffnen und einsehen konnten. Es war möglich, mit Dozenten, Lehrern der Praxis und Intel-Ingenieuren live oder durch Chat in Gitter zu chatten. Die Zeit der Projektwoche erwies sich ebenfalls als erfolgreich: Sie begann am Mittwoch, sodass wir die Wochenenden frei von Vorträgen verbringen konnten, um die Teamentscheidungen zu verbessern. Die verantwortungsvollsten Teilnehmer verbrachten den halben Samstag im Intel-Büro, wozu sie am selben Tag durch einen außerplanmäßigen Ausflug ermutigt wurden.

Wie war der Schutz von Projekten?


Jedes Team hatte 10 Minuten Zeit, um darüber zu sprechen, was es während des Projekts getan hat und wozu es gekommen ist. Nach dieser Zeit begannen 5 Minuten, in denen die Ingenieure des Unternehmens den Jungs Fragen stellten und wenig Ratschläge gaben, die ihnen helfen würden, ihr Projekt zu verbessern oder Fehler in der Zukunft zu verhindern. Jeder der Jungs versuchte sich als Redner, zeigte sein Wissen auf dem Gebiet der Bildverarbeitung und bestätigte seinen Beitrag zur Erstellung des Projekts, was uns half, über jeden Teilnehmer an der Schule nachzudenken und Schlussfolgerungen zu ziehen. Die Verteidigung dauerte 3 Stunden, aber wir haben uns um die Jungs gekümmert und die Situation mit einer kleinen Kaffeepause entschärft, in der die Jungs Luft holen und Probleme mit führenden Intel-Spezialisten besprechen konnten.

Am Ende des Tages haben wir einen ersten, zwei zweiten und drei dritten Platz vergeben. Die Auswahl war ziemlich schwierig, da jedes Team, jedes Projekt seinen eigenen Geschmack hatte und sich durch die Originalität der Präsentation auszeichnete.


Vollzeit-CV-Camp, Projektschutz, Intel-Büro in Nischni Nowgorod

Präsentierte Projekte


Smart Handschuh




Verwendung des Detektors und Trackers mit OpenCV zur visuellen Navigation im Weltraum. Das Team fügte zusätzlich die Möglichkeit hinzu, die Tiefe mit zwei Kameras zu bestimmen. Die Microsoft Speech API wird als Verwaltungsschnittstelle verwendet.

Rezeptor




Erkennen von Lebensmitteln und Auswählen eines Rezepts für ein fertiges Gericht, einschließlich der gefundenen Zutaten. Die Jungs hatten keine Angst vor der Aufgabe und markierten eine Woche lang selbst eine ausreichende Anzahl von Bildern, trainierten den Detektor mithilfe der TensorFlow-Objekterkennungs-API und fügten die Logik zum Finden des Rezepts hinzu. Einfach und geschmackvoll!

Editor 2.0




Die Projektteilnehmer verwendeten eine Reihe neuronaler Netze (Gesichtssuche, Normalisierung von Gesichtsbildern nach Schlüsselpunkten, Berechnung eines Gesichtsbilddeskriptors), um Gesichter als Teil der Aufgabe der Suche nach Fragmenten in langen Videos zu erkennen, in denen eine bestimmte Person anwesend ist. Das entwickelte System kann als Hilfesystem für die Videobearbeitung verwendet werden, sodass die Person das Video nicht selbst auf der Suche nach den erforderlichen Fragmenten ansehen muss. Mit neuronalen Netzen aus der OpenVINO-Modellbibliothek gelang es dem Team, eine hohe Anwendungsgeschwindigkeit zu erreichen: Auf einem Laptop mit einem Intel Core i5-Prozessor betrug die Videoverarbeitungsgeschwindigkeit 58 Bilder pro Sekunde.

Anonymisierer




Zeichnen von Gläsern und Masken auf dem Gesicht einer Person. Zur Erkennung von Gesichtern und Schlüsselpunkten wurde das MTCNN-Netzwerk verwendet.

Anonym




Eine weitere interessante Arbeit zum Thema Verschleierung der Persönlichkeit. Dieses Team führte verschiedene Optionen für Gesichtsverzerrungen ein: Unschärfe und Pixelung. In einer Woche haben die Jungs nicht nur die Aufgabe herausgefunden, sondern auch einen Anonymisierungsmodus für eine bestimmte Person (mit Gesichtserkennung) bereitgestellt.

Aufwärmen


Das Team des Projekts „Warm up“ löste das Problem der Schaffung eines Sportassistenten für die Ausübung von Kopfneigungen. Und selbst wenn die endgültige Anwendung dieser Anwendung noch umstritten ist, wurde eine umfangreiche Studie durchgeführt, in der verschiedene Gesichtserkennungsalgorithmen verglichen wurden: Haarkaskaden, Netzwerke von TensorFlow, OpenCV und OpenVINO. Wärmen Sie sich nicht nur körperlich, sondern auch geistig auf!

800 senken




Nischni Nowgorod, die Stadt, in der die Schule stattfand, wird in zwei Jahren 800 Jahre alt, was bedeutet, dass genügend Zeit bleibt, um ein interessantes Projekt umzusetzen. Wir schlugen vor, dass die Jungs über die Aufgabe nachdenken, einen Leitfaden zu erstellen, der Auskunft darüber gibt, was das Objekt im Bild darstellt und welche Fakten darüber aus dem Bild der Fassade von Gebäuden bekannt sind. Unserer Meinung nach war diese Aufgabe eine der schwierigsten, da sie sich auf die klassische Computer Vision bezieht, aber das Team zeigte ein anständiges Ergebnis.

Stein, Schere, Papier


Trotz der strengen Fristen für die Durchführung der Entwurfsarbeiten hatte dieses Team auch keine Angst davor, ein Experiment durchzuführen, um sein eigenes neuronales Netzwerk zu trainieren, um Handpositionen in einem berühmten Spiel zu klassifizieren.

Teilnehmerbewertungen


Wir haben Studenten verschiedener Kurse gebeten, ihre Eindrücke von der Summer School zu teilen:

Vor kurzem hatte ich das Glück, im Intel Computer Vision Summer Camp zu trainieren, und es war eine wundervolle Erfahrung. Wir haben viele neue Kenntnisse und Fähigkeiten im Bereich Lebenslauf, Softwareinstallation und Debugging erworben, waren auch in die Arbeitsumgebung eingetaucht, hatten echte Probleme und diskutierten mögliche Lösungen mit Kollegen und Lehrern der Schule. Es gibt einen Mythos, dass die Aufgabe des Programmierers ausschließlich in der Kommunikation mit dem Computer besteht. Dies ist jedoch überhaupt nicht so. Unsere kreative Arbeit ist untrennbar mit der Kommunikation mit Menschen verbunden. Durch die Kommunikation war es möglich, einzigartiges Wissen zu erlangen. Und diese Komponente der Schule hat mir am besten gefallen. Es gibt jedoch ein Minus ... nach dem Abschluss wollte ich weitermachen! Neben theoretischen Kenntnissen in DL und praktischen Fähigkeiten im Lebenslauf bekam ich eine Vorstellung davon, welchen Bereichen der Mathematik besondere Aufmerksamkeit geschenkt werden sollte und welche Technologien studiert werden sollten. Das Engagement, die Professionalität und die Liebe zur Arbeit von Intel-Ingenieuren und -Forschern haben meine Wahl der Richtung in der IT beeinflusst. Dafür möchte ich mich bei allen Organisatoren der Schule bedanken.
Christina, 1 Jahr, HSE

In so kurzer Zeit war die Schule in der Lage, maximale Informationen und Übungen zum Thema Computer Vision bereitzustellen. Und obwohl es auf Grundkenntnisse ausgelegt war, enthielten die Vorlesungen viel technisches Material, das ich gerne verstehen und mehr Zeit mit Lernen verbringen würde. Mentoren und Dozenten der Schule beantworteten bereitwillig alle Fragen und sprachen mit den Schülern. Nun, während der Implementierung des Abschlussprojekts musste ich in den Dschungel der Entwicklung einer vorgefertigten Anwendung eintauchen und auf Schwierigkeiten stoßen, die beim Lernen nicht immer auftreten. Unser Team hat schließlich eine Anwendung zum Spielen mit einem Computer zum Spiel „Stein-Papier-Schere“ gemacht. Wir haben das Modell trainiert, die Figur auf der Webcam erkannt, die Logik geschrieben und eine Schnittstelle basierend auf dem opencv-Framework erstellt. Die Schule bot Denkanstöße und einen Vektor für weiteres Lernen und Entwicklung. Sehr erfreut, dass ich teilgenommen habe.
Sergey, 3 Jahre, UNN

Die Schule hat meine Erwartungen nicht ganz erfüllt. Die Vorträge wurden von erfahrenen Leuten von Intel-Entwicklern gehalten. Die Kommunikation mit den Dozenten war immer interessant und nützlich, die Mentoren sind ansprechbar und immer bereit zu helfen. Die Vorträge sind angenehm zu hören, die Themen sind sehr relevant und informativ. Aber ich wusste bereits einige Dinge, und diejenigen, die ich nicht kannte, wurden nicht durch die Praxis unterstützt, und deshalb verstand und studierte ich das wirklich gute Material nicht vollständig. Ja, die meisten Informationen wurden nur zu Informationszwecken bereitgestellt, damit ich sie später bereits zu Hause ausprobieren oder mir vorstellen kann, worum es geht. Dennoch wollte ich einige vorhandene Algorithmen unter der Aufsicht erfahrener Lehrer, die praktische Ratschläge geben oder helfen können, selbst implementieren klappt nicht. Infolgedessen wurden in der Praxis vorgefertigte Lösungen verwendet, und der Code, könnte man sagen, wurde zuvor für uns geschrieben, er musste nur geringfügig geändert werden. Die Projekte waren die einfachsten. Wenn Sie versuchen, die Aufgabe auf irgendeine Weise zu komplizieren, haben Sie nicht genügend Zeit, um sie in einen mehr oder weniger stabilen Zustand zu versetzen, wie dies bei uns der Fall war.
Im Allgemeinen sieht die ganze Schule für Entwickler wie ein nicht allzu ernstes Spiel aus, und dies ist nur die Schuld des praktischen Teils. Ich denke, dass es notwendig ist, die Zeit für die Durchführung einer Schule zu verlängern, um das Material der Praktiken zu komplizieren, damit Sie selbst etwas schreiben können und sollten, etwas wirklich Komplexes und Notwendiges, und nicht das fertige verwenden, um die Praxis in zunehmender Komplexität reibungsloser zu gestalten, Themen im Wettbewerb Projekte in den frühen Tagen herauszugeben, damit Material aus Vorlesungen und Praktiken sofort in ihren Projekten verwendet werden kann und mehr Zeit für die Umsetzung bleibt. Dann ist die Zeit, die für die Schule aufgewendet wird, eine gute Erfahrung für Anfänger.
Dmitry, 1 Jahr Masterkurs, NSTU

Die Sommerschule von Intel war eine großartige Gelegenheit, diesen Sommer damit zu verbringen, das zu tun, was sie lieben. Die Tatsache, dass Intel-Dozenten, die sich mit Programmierung im Bereich Computer Vision befassten, keine Vorträge gaben, wollte ich aus dem gesamten Prozess herausholen, obwohl es manchmal schwierig war. Jeder Tag verging sehr schnell, leise und fruchtbar. Die Möglichkeit, mein eigenes Projekt umzusetzen, ermöglichte es mir, in einem Team mit wunderbaren Kuratoren und anderen Schülern zu arbeiten. Diese zwei Wochen können kurz als interessant und flüchtig beschrieben werden.
Elizabeth, 2 Jahre, UNN

Im Herbst (Oktober-November) finden Sie das Delta-Bildungsprogramm, Informationen dazu finden Sie in unserer VKontakte-Gruppe . Bleib dran!

Source: https://habr.com/ru/post/de464579/


All Articles