WEBVTT

00:01.340 --> 00:05.220
Folgen Sie uns mit InsideScience und werfen Sie den Forschern einen

00:05.220 --> 00:06.140
Blick über die Schultern.

00:07.980 --> 00:09.640
In diesem Beitrag...

00:12.120 --> 00:18.000
Objektorientierte Umweltmodellierung Andrej Belkin und Alexander

00:18.000 --> 00:22.580
Kasper vom Karlsruher Institut für Technologie entwickeln Mechanismen,

00:22.980 --> 00:27.240
wie Roboter Objekte in ihrer Umwelt wahrnehmen und abspeichern können.

00:28.160 --> 00:31.500
Gut, wir bringen hier dem Roboter bei, wie er mit den Objekten in

00:31.500 --> 00:34.480
seiner Umwelt umzugehen hat, damit er das Gleiche tun kann, was auch

00:34.480 --> 00:35.300
ein Mensch tun kann.

00:36.000 --> 00:38.760
Zu dem Zweck haben wir hier eine ganze Menge von verschiedenen

00:38.760 --> 00:41.460
Objekten gesammelt, die typischerweise im Haushalt auftreten.

00:42.160 --> 00:45.360
Wir versuchen jetzt hier eine Repräsentation zu erzeugen, mit der ein

00:45.360 --> 00:48.140
Computer, ein Roboter ist nichts anderes als ein Computer auf Beinen,

00:48.640 --> 00:49.460
auch was anfangen kann.

00:49.780 --> 00:52.500
Wenn ich mir jetzt zum Beispiel so eine Tasse hier vorstelle, als

00:52.500 --> 00:55.260
Mensch weiß ich, die kann ich hier am Griff anfassen, ich kann das

00:55.260 --> 00:55.800
reinfüllen.

00:56.660 --> 00:58.960
In die Spülmaschine sollte ich sie vielleicht so rum reintun.

01:00.140 --> 01:02.080
Und dem Roboter müssen wir das alles auch beibringen.

01:02.140 --> 01:04.640
Der kann das nämlich nicht so über Jahre hinweg lernen, wie ein

01:04.640 --> 01:05.500
kleines Kind das tut.

01:05.580 --> 01:06.360
So viel Zeit haben wir nicht.

01:07.180 --> 01:12.260
Und zu diesem Zweck haben wir hier einen speziellen Sensoraufbau, mit

01:12.260 --> 01:16.580
dem wir solche Objekte in eine Repräsentation überführen können, die

01:16.580 --> 01:19.640
hauptsächlich aus einzelnen Gründen steht, mit der ein Roboter dann

01:19.640 --> 01:20.320
was anfangen kann.

01:20.320 --> 01:24.140
Zum einen haben wir hier einen 3D-Sensor, der kann das Objekt in drei

01:24.140 --> 01:24.980
Dimensionen erfassen.

01:25.100 --> 01:27.320
Das heißt, wir bekommen nachher eine richtig schöne Repräsentation,

01:28.300 --> 01:29.900
wie man es aus der Computergrafik kennt.

01:30.680 --> 01:34.320
Und wir haben hier noch Kameras, mit denen man verschiedene Ansichten

01:35.320 --> 01:38.040
aus unterschiedlichen Positionen von dem Objekt erzeugen kann, damit

01:38.040 --> 01:41.380
der Roboter sie mit seinen Kameraaugen dann genauso wiedererkennen

01:41.380 --> 01:44.100
kann und feststellen kann, wo sich die Tasse befindet und welche Tasse

01:44.100 --> 01:44.720
das genau ist.

01:45.600 --> 01:47.340
Wie das funktioniert, das würde ich Ihnen jetzt mal zeigen.

01:47.340 --> 01:49.940
Wir haben mit dem Scanner das Objekt jetzt aufgenommen aus

01:49.940 --> 01:51.080
unterschiedlichen Ansichten.

01:51.220 --> 01:53.960
Das heißt, wir haben einzelne Teile des Objekts aufgenommen.

01:54.560 --> 01:57.340
Die müssen wir jetzt zusammensetzen zu einem Gesamtmodell.

01:58.580 --> 01:59.940
Das ist jetzt hier schon geschehen.

02:00.460 --> 02:04.200
Dafür haben wir verschiedene kleine Unreinheiten beseitigt, die beim

02:04.200 --> 02:05.600
Aufnahmeprozess passiert sind.

02:06.360 --> 02:09.440
Und wenn man sich das jetzt hier genauer anschaut, dann sieht man

02:09.440 --> 02:14.020
eben, wir haben jetzt diese Tasse sozusagen in ganz viele kleine

02:14.020 --> 02:14.760
Dreiecke zerlegt.

02:15.280 --> 02:18.280
Das ist eine mathematische Repräsentation, mit der kann der Computer,

02:18.440 --> 02:20.040
sprich der Roboter, jetzt gut was anfangen.

02:20.400 --> 02:23.460
Damit kann ich also zum Beispiel einen Griff mit der Roboterhand

02:23.460 --> 02:27.540
simulieren, kann also berechnen, wo der Kontakt ist zwischen Hand und

02:27.540 --> 02:27.920
der Tasse.

02:28.880 --> 02:32.040
Und das gibt uns schon mal sehr, sehr wichtige Informationen, um die

02:32.040 --> 02:33.440
Tasse eben manipulieren zu können.

02:34.580 --> 02:38.500
Im zweiten Schritt haben wir dann 2D-Bilder aufgenommen mit den

02:38.500 --> 02:41.720
Kameras, um zu simulieren, wie der Roboter das Objekt sieht.

02:42.240 --> 02:47.040
Wir bekommen hier also jetzt ganz, ganz viele Ansichten von dem Objekt

02:47.040 --> 02:48.420
aus unterschiedlichen Blickrichtungen.

02:49.220 --> 02:52.200
Das gibt uns die Farbinformationen zu der 3D-Information, die wir

02:52.200 --> 02:52.620
schon haben.

02:53.120 --> 02:55.800
Wenn wir das kombinieren, haben wir ein ziemlich vollständiges Modell

02:55.800 --> 02:56.660
von unserer Tasse.

02:57.420 --> 03:02.000
Und mit der kann der Roboter die Tasse erkennen, greifen, einfach

03:02.000 --> 03:02.720
damit interagieren.

03:03.380 --> 03:08.200
Das Ganze kombinieren wir und laden das dann in der Datenbank hoch,

03:08.440 --> 03:09.040
wie sehen wir hier.

03:09.540 --> 03:12.320
Wir haben das also für sehr, sehr viele Objekte schon mal gemacht.

03:13.880 --> 03:16.620
Und das schafft so eine Art Gedächtnisgrundlage für den Roboter.

03:16.780 --> 03:18.180
Er erkennt schon eine ganze Menge Objekte jetzt.

03:18.640 --> 03:21.680
Und das ist eben, darauf baut der Kollege André Belkin auf, der sich

03:21.680 --> 03:24.600
dann damit befasst, wie kann ich dieses Vorwissen, diese bereits

03:24.600 --> 03:27.280
bekannten Objekte kombinieren mit dem, was der Roboter an

03:27.280 --> 03:30.240
Informationen in der aktuellen Szene, in der er sich befindet, dann

03:30.240 --> 03:35.060
bekommt, um daraus eine Gesamtstruktur, Gesamtgedächtnisstruktur zu

03:35.060 --> 03:35.280
schaffen.

03:41.590 --> 03:43.970
Hallo, bei mir sieht es so aus.

03:44.590 --> 03:46.270
Ich habe eine reale Welt,

03:51.880 --> 03:54.480
die ich als Umgebung bezeichne.

03:55.440 --> 03:59.020
Und in dieser Umgebung habe ich verschiedene Gegenstände, wie zum

03:59.020 --> 04:02.660
Beispiel einen Tisch.

04:03.560 --> 04:08.840
Und auf dem Tisch befinden sich verschiedene Objekte, Tellers, Tassen.

04:10.500 --> 04:13.140
Vielleicht gibt es auch eine Person dazu.

04:14.060 --> 04:15.800
Und es gibt hier einen Roboter.

04:22.800 --> 04:29.300
Der Roboter kann mit verschiedenen Sensoren die Umgebung wahrnehmen.

04:30.600 --> 04:34.280
Zum Beispiel haben wir hier eine Kamera, Mikrofon.

04:37.080 --> 04:42.020
Dann bekommen wir optische oder akustische Signale in Umgebung.

04:42.020 --> 04:49.680
Und die können wir zum Beispiel im Kurzzeitgedächtnis speichern.

05:00.130 --> 05:05.790
Dann haben wir im Kurzzeitgedächtnis abgespeicherte Informationen.

05:06.930 --> 05:10.410
Aber der Roboter weiß nicht, was sie bedeuten.

05:12.330 --> 05:16.970
Dafür haben wir aber Planzeitgedächtnis.

05:22.710 --> 05:28.990
Hier haben wir alle möglichen Klassen und Objekte, die wir in der

05:28.990 --> 05:30.330
Umgebung treffen könnten.

05:32.430 --> 05:38.910
Klassen und dann Objekte, die wir zum Beispiel von Alexander Kaspar

05:38.910 --> 05:40.810
als Datenbank von Objekten bekommen.

05:42.890 --> 05:48.250
Und da haben wir auch verschiedene Relationen zwischen Klassen und

05:48.250 --> 05:48.770
Objekten.

05:48.770 --> 05:52.910
Zum Beispiel ein Teil von...

05:52.910 --> 05:58.950
und es kann Untertasse sein, Untertasse und Tasse.

06:02.510 --> 06:08.670
Dann kann der Roboter alle Zeit nachfragen, was bedeutet das Objekt

06:08.670 --> 06:10.030
oder was ist das.

06:10.990 --> 06:15.970
Dann macht er eine Zuordnung und bekommt zum Beispiel, dass es eine

06:15.970 --> 06:18.590
Tasse mit Untertasse ist.

06:20.830 --> 06:26.850
Und dann denkt er, aha, das ist jetzt die Tasse.

06:31.830 --> 06:38.950
Und nach einer Weile weiß der Roboter alle Objekte, die er im

06:38.950 --> 06:40.190
Kurzzeitgedächtnis hat.

06:40.630 --> 06:43.830
Und auch alle Relationen, die er gemerkt hat.

06:45.990 --> 06:55.050
Und diese Informationen können wir weiter an weitere Module von

06:55.050 --> 06:57.390
Robotern geben, wie zum Beispiel Plan.

07:01.500 --> 07:05.600
Hier können wir Schritt für Schritt weitere Aktionen von Robotern

07:05.600 --> 07:06.060
bestimmen.

07:07.140 --> 07:12.320
Und dann als Befehle an mechatronische Komponenten geben.

07:13.900 --> 07:16.620
Zum Beispiel Brand.

07:18.620 --> 07:26.080
Und jetzt kann der Roboter mit der Hand die Tasse von dem Tisch

07:26.080 --> 07:26.420
nehmen.

07:27.350 --> 07:33.260
Wie das in der Realität aussieht, zeige ich Ihnen in Demonstration.

07:38.930 --> 07:41.590
Jetzt sind wir im Demoraum.

07:42.290 --> 07:48.870
Da sehen wir Roboterkopf mit zwei Kameras als Augen.

07:49.870 --> 07:52.750
Und auch Roboterarm mit einer Hand.

07:54.730 --> 08:01.270
Auch hier können wir dann die Ergebnisse sehen, was der Roboter

08:01.270 --> 08:02.110
überhaupt denkt.

08:03.170 --> 08:07.750
Und er wird bald diese vier Objekte auf dem Tisch analysieren.

08:16.030 --> 08:22.830
Jetzt schaut er auf Objekte auf dem Tisch und versucht sie zu

08:22.830 --> 08:23.270
erkennen.

08:24.770 --> 08:27.450
Jetzt sehen wir, dass die gefundenen Objekte analysiert sind.

08:28.330 --> 08:33.510
Und sobald sie erkannt wurden und zum Langzeitgedächtnisobjekten

08:33.510 --> 08:37.730
zugeordnet sind, bekommen sie die Informationen und Aussichten, die

08:37.730 --> 08:37.730
sie brauchen.

08:37.730 --> 08:42.670
Das ist das Modellzentrum von Alexander Kaspar.

08:43.390 --> 08:50.110
Und jetzt kann der Roboter aktiv mit Actoric die Objekte nehmen oder

08:50.110 --> 08:50.710
verschieben.

08:51.750 --> 08:54.150
Und da haben wir ein unbekanntes Objekt.

08:54.730 --> 08:59.730
Und der Roboter kann dann mit Zeigergästen und Nachfragen sich

08:59.730 --> 09:01.950
erkundigen, was das eigentlich ist.

09:03.270 --> 09:05.070
Show me unknown objects.

09:20.160 --> 09:23.540
Can you give me more information about this object?

09:24.460 --> 09:25.760
This is a cup.

09:27.140 --> 09:28.520
That's how a cup looks like.

09:29.280 --> 09:29.680
Yes.

09:32.550 --> 09:38.150
In diesem Fall hat der Roboter das Objekt interaktiv gelernt, also im

09:38.150 --> 09:39.890
Langzeitgedächtnis gespeichert.

09:40.630 --> 09:45.710
Und unsere Forschungen sind für uns ein wichtiger Meilenstein, mit dem

09:45.710 --> 09:50.910
wir uns schrittweise dem komplexen menschlichen Gedächtnis nähern.

10:09.890 --> 10:10.370
Untertitel der Amara.org-Community

