Hallo!
Ich habe mir gerade mit dem GUI Builder für Tkinter eine neue GUI erstellt und weiss nun nicht, wie ich mein kleines Programm, dass ständig Bilder von meiner Webcam abgreift und anzeigt, in die GUI einbinden kann.
Kann mir jemand behilflich sein?
MFG
OpenCV
Webcam in Frame einbinden
- DeKugelschieber
- User
- Beiträge: 82
- Registriert: Sonntag 28. Februar 2010, 12:23
- Kontaktdaten:
Wie ich schon öfters gesagt habe: Ich lerne Python seit erst einer Woche, aber ich bin mir ziemlich sicher das du da was Maschinennahes in C/C++ schreiben müsstest, das du dann einbindest. Du könntest dann die Bilder der Webcam abgreifen und ausgeben. Frag mich aber bitte nicht genau wie das geht. Frag lieber deinen Arzt oder Apotheker^^
MfG DeKugelschieber
- mkesper
- User
- Beiträge: 919
- Registriert: Montag 20. November 2006, 15:48
- Wohnort: formerly known as mkallas
- Kontaktdaten:
DeKugelschieber: Quatsch.
Ich habe auch nicht viel Ahnung von Tk, habe aber gehört, dass es ein super Canvas-Widget bietet. Da musst du deine Bitmap draufbringen, hierzu dürfte wahrscheinlich PIL nötig sein (zur Umwandlung).
Ich habe auch nicht viel Ahnung von Tk, habe aber gehört, dass es ein super Canvas-Widget bietet. Da musst du deine Bitmap draufbringen, hierzu dürfte wahrscheinlich PIL nötig sein (zur Umwandlung).
Hallo OpenCV
Willkommen in unserem Forum. Kannst du hier einmal den Code deiner mit dem GUI-Builder erstellten Oberfläche präsentieren? Ich nehme an du willst nur einzelne Bilder aus deiner Video-Sequenz herauspicken und auf der GUI darstellen? Also nicht bewegte Videobilder?
Gruss wuf
Willkommen in unserem Forum. Kannst du hier einmal den Code deiner mit dem GUI-Builder erstellten Oberfläche präsentieren? Ich nehme an du willst nur einzelne Bilder aus deiner Video-Sequenz herauspicken und auf der GUI darstellen? Also nicht bewegte Videobilder?
Gruss wuf

Take it easy Mates!
- DeKugelschieber
- User
- Beiträge: 82
- Registriert: Sonntag 28. Februar 2010, 12:23
- Kontaktdaten:
Ach ich dachte jetzt das er die Wabcam live abreifen will
MfG DeKugelschieber
Hallo Leonidas
Danke für die Nachhilfe. Ich sehe ich bin auch noch nicht reif für die Prüfung.
NB: Übrigens wo befindet sich 'GOO.....LE' genau? In meiner Glaskugel habe ich ihn nicht gefunden. Ich wollte hier natürlich keine Werbung für einen der Suchgiganten machen.
Gruss wuf
Danke für die Nachhilfe. Ich sehe ich bin auch noch nicht reif für die Prüfung.

NB: Übrigens wo befindet sich 'GOO.....LE' genau? In meiner Glaskugel habe ich ihn nicht gefunden. Ich wollte hier natürlich keine Werbung für einen der Suchgiganten machen.
Gruss wuf

Zuletzt geändert von wuf am Mittwoch 3. März 2010, 13:44, insgesamt 1-mal geändert.
Take it easy Mates!
...oder vielleicht doch eher "Gruß"?
-> Rechtschreibung
Außer du kommst aus der Schweiz, natürlich.....

-> Rechtschreibung
Außer du kommst aus der Schweiz, natürlich.....

Zuletzt geändert von dahaze am Mittwoch 3. März 2010, 12:28, insgesamt 1-mal geändert.
Hallo dahaze
Danke für deine Ergänzungen. Versuche mich strikte an die deutsche Norm zu halten. Vielleicht kannst du mir bitte noch erklären wie man das ß am einfachsten über eine schweizer Tastatur eingibt. Ist leider eine meiner Bildungslücke. (Nobody is perfect
)
Danke für deine Bemühung.
Gruss wuf
Danke für deine Ergänzungen. Versuche mich strikte an die deutsche Norm zu halten. Vielleicht kannst du mir bitte noch erklären wie man das ß am einfachsten über eine schweizer Tastatur eingibt. Ist leider eine meiner Bildungslücke. (Nobody is perfect

Danke für deine Bemühung.
Gruss wuf

Take it easy Mates!
Funktionier bei mir leider nicht! Aber mit:dahaze hat geschrieben:Aber wenn du unbedingt 'ß' tippen willst.... ALT + 225 -> ß
Code: Alles auswählen
AltGr + s
Auf jeden Fall besten Dank für dein Hinweis.
Gruß wuf

Take it easy Mates!
Nein ich will eigentlich schon, dass es Livebilder sind, also, dass z.B. mit einer bestimmten fps-Intervall andauernd Bilder abgegriffen werden.wuf hat geschrieben:Hallo OpenCV
Willkommen in unserem Forum. Kannst du hier einmal den Code deiner mit dem GUI-Builder erstellten Oberfläche präsentieren? Ich nehme an du willst nur einzelne Bilder aus deiner Video-Sequenz herauspicken und auf der GUI darstellen? Also nicht bewegte Videobilder?
Gruss wuf
Der Code:
Code: Alles auswählen
import Tkinter
import os # needed for relative image paths
# Using new-style classes: create empty base class object
# for compatibility with older python interps
#if sys.version_info < (2, 2):
# class object:
# pass
class Preview(object):
_images = [] # Holds image refs to prevent GC
def __init__(self, root):
# Widget Initialization
self._frame_1 = Tkinter.Frame(root,
)
self._label_1 = Tkinter.Label(root,
font = "{Times New Roman TUR} 20 bold",
relief = "sunken",
state = "active",
text = "FaceDec",
)
self._button_1 = Tkinter.Button(root,
font = "{Times New Roman TUR} 8",
text = "Bild speichern",
)
self._label_2 = Tkinter.Label(root,
text = "#Kurze Programmanleitung...",
)
self._listbox_1 = Tkinter.Listbox(root,
height = 0,
width = 0,
)
self._label_3 = Tkinter.Label(root,
text = "(C) 2010",
)
# widget commands
self._button_1.configure(
command = self._button_1_command
)
self._listbox_1.configure(
xscrollcommand = self._listbox_1_xscrollcommand
)
self._listbox_1.configure(
yscrollcommand = self._listbox_1_yscrollcommand
)
# Geometry Management
self._frame_1.grid(
in_ = root,
column = 2,
row = 1,
columnspan = 1,
ipadx = 0,
ipady = 0,
padx = 0,
pady = 0,
rowspan = 1,
sticky = "news"
)
self._label_1.grid(
in_ = root,
column = 1,
row = 1,
columnspan = 1,
ipadx = 0,
ipady = 0,
padx = 0,
pady = 0,
rowspan = 1,
sticky = "n"
)
self._button_1.grid(
in_ = root,
column = 2,
row = 2,
columnspan = 1,
ipadx = 0,
ipady = 0,
padx = 0,
pady = 0,
rowspan = 1,
sticky = "n"
)
self._label_2.grid(
in_ = root,
column = 1,
row = 2,
columnspan = 1,
ipadx = 0,
ipady = 0,
padx = 0,
pady = 0,
rowspan = 1,
sticky = ""
)
self._listbox_1.grid(
in_ = root,
column = 2,
row = 3,
columnspan = 1,
ipadx = 0,
ipady = 0,
padx = 0,
pady = 0,
rowspan = 1,
sticky = "news"
)
self._label_3.grid(
in_ = root,
column = 1,
row = 3,
columnspan = 1,
ipadx = 0,
ipady = 0,
padx = 0,
pady = 0,
rowspan = 1,
sticky = ""
)
# Resize Behavior
root.grid_rowconfigure(1, weight = 0, minsize = 237, pad = 0)
root.grid_rowconfigure(2, weight = 0, minsize = 220, pad = 0)
root.grid_rowconfigure(3, weight = 0, minsize = 40, pad = 0)
root.grid_columnconfigure(1, weight = 0, minsize = 513, pad = 0)
root.grid_columnconfigure(2, weight = 0, minsize = 382, pad = 0)
Ich hoffe, ihr könnt mir dabei behilflich sein.

MFG
@OpenCV: Guckstu:
http://paste.pocoo.org/show/187154/
Bin aber nicht sicher, ob das Canvas für Live-Streaming schnell genug ist. Schreib' später doch mal dazu.
Gruß
http://paste.pocoo.org/show/187154/
Bin aber nicht sicher, ob das Canvas für Live-Streaming schnell genug ist. Schreib' später doch mal dazu.
Gruß
Vielen Dank für den Link, aber ich muss ja kein Bild einfügen, sondern einen Live-Stream...
Also das mit der Methode "getData()" passt schon, aber ich weiss nicht was ich in den Rumpf schreiben soll.
Ich habe in der Klasse Aufnehmen ein Attribut frame, in das mit einer bestimmten fps ein Bild eingelesen wird...
Ich wäre SEHR dankbar, falls jemand mir helfen würde
MFG
Also das mit der Methode "getData()" passt schon, aber ich weiss nicht was ich in den Rumpf schreiben soll.
Ich habe in der Klasse Aufnehmen ein Attribut frame, in das mit einer bestimmten fps ein Bild eingelesen wird...
Ich wäre SEHR dankbar, falls jemand mir helfen würde

MFG
OpenCV hat geschrieben:Vielen Dank für den Link, aber ich muss ja kein Bild einfügen, sondern einen Live-Stream

In Deinem Code oben sehe ich keine Klasse "Aufnehmen".OpenCV hat geschrieben:Also das mit der Methode "getData()" passt schon, aber ich weiss nicht was ich in den Rumpf schreiben soll.
Ich habe in der Klasse Aufnehmen ein Attribut frame, in das mit einer bestimmten fps ein Bild eingelesen wird...
Wenn irgendwo ein Bild eingelesen wird, müßte das ggf. nach .gif umgewandelt werden und könnte dann wie gezeigt angezeigt werden.
Leider unterstützt Tkinter.PhotoImage derzeit AFAIK nur GIF und PGM/PPM.
(Ich fände schon toll, wenn eines Tages auch noch .jpg, .png und vielleicht noch .bmp möglich würden.)
Gruß