Outputstream benutzen
-
Hi, ich habe kaum eine Ahnung von C++ und dachte hier kann mir vielleicht einer sagen, welche zwei drei Zeilen Code ich brauche, bevor ich mich eine Stunde reinlese
Hier also mein Problem:Ich soll mit zwei anderen ein Programm zur Gesichtserkennung schreiben. Dabei übernehme ich die blanke Gesichtserkennung von der Kamera. Jetzt möchte ich meinem Kollegen, der die GUI macht einen Stream übergeben, auf den ich die bearbeiteten Bilder (cv::Mat) legen kann. Daher die Fragen:
1. Wie geht das, dass ich die Bilder auf einen Stream lege (so wie bei Java ObjectOutputStream)?
2. Gibt es eine elegantere Lösung, als dass ich mein Programm in while(true) laufen lasse und mir durchgehend Bilder von der Kamera hole und mein Kollege schaut, dass bevor die GUI geschlossen wird, so was wie Facedetecter.destroy() aufgerufen wird?
Vielen Dank schon mal für die Hilfe
LG Michi
-
Du kannst mit C++ keine Objekte über einen Stream übertragen. Du kannst nur ihren Inhalt geeignet verpackt verschicken und dann ein neues Objekt mit diesem Inhalt erzeugen.
Warum sollen es überhaupt zwei Prozesse sein?
-
Zu 1: Stichwort wäre Serialsierung. Da gibt es geeignete Bibliotheken
Zu 2: Es gibt elegante Lösungen dafür.Und jetzt so allgemein: Mit Deinem Wissensstand reicht bei weitem nicht, dich eine Stunde rein zu lesen. Das Projekt hört sich nach einer grösseren Sache an und wenn Du keine Ahnung von C++ hast, dann bleibt Dir nichts anderes übrig, als das zu ändern, also C++ zu lernen. Und das hat meines Wissens noch niemand in einer Stunde hin bekommen. Eher so ein Jahr wäre realistisch. Aber ich denke, dass Du auch in einem Monat wo viel C++ lernen kannst, dass Du das Problem lösen kannst.
-
tntnet schrieb:
Zu 2: Es gibt elegante Lösungen dafür.
Stichwort dazu, wenn es nur um das destroy geht: Destruktor.