@Jaecko: das geht über die Windows API, also sollte auch schon in vb6 gehen.
@BastelWastel: Irgendwie sieht deins deutlich durchdachter aus :-)
Vielleicht sollten wir uns einfach zusammetun...
Druckbare Version
@Jaecko: das geht über die Windows API, also sollte auch schon in vb6 gehen.
@BastelWastel: Irgendwie sieht deins deutlich durchdachter aus :-)
Vielleicht sollten wir uns einfach zusammetun...
..na super, dann bin ich mit so queren Gedanken nicht alleine... ;-)Zitat:
Uiuiui...
zwei Doofe ein Gedanke..
- entspricht schon ziemlich meiner Vorstellung -
Übrigens, was benutzt Du für eine Webcam, die eine so gute Auflösung hat / Makrobereich abdeckt ?
@mond: Ist leider nur n dickes codeschnippsel-flickwerk da quick&dirty und wenn die Cam streamt kann man die Zwischenablage nicht nutzen weil ich den Stream nicht einbinde sondern rein kopiere,..darum "nicht ressourcenschonend" ;)
Von daher lohnt es ned wirklich meinen code weiter zu verwerten.
@andree: Ist eine Philips SPC900, hab den Farb-CCD gegen B/W getauscht und die Cam in RAW-Mode gesetzt..sprich 3x bessere Empfindlichkeit und Bild ist nicht komprimiert.
Dann natuerlich die kleine Linse runter, die taugt nix, und bessere Optik ran.
Die Quadrate sind ca 1cm gross, aufgezeinchet wurde von 3m Distanz.
Optik ist nicht gut, sonst waer es noch schaerfer...aber is eh nur zum testen.
Aber SPC900 ist auch so sehr gut, hat nen echten CCD, keinen CMOS.
Deinem Bild entnehme ich dass deine Webcam 640x480px hat?
Habe nochmal etwas gebastelt:
Das ist eine Testversion, zum rumspielen.
Läuft zur zeit noch sehr laggy weil alles in einem Thread ist.
Das Speichern/Laden hab ich erstmal rausgenommen, da ich einige Änderungen gemacht habe und das nun nichtmehr funktioniert :D .
Einfach mal n bisschen mit rumspielen und Vorschläge machen.
Benötigt .Net 2.0 oder höher.
Gleich mal anschauen und Ideen klauen :D
Mh ok..
Du hast nen Fehler bei der Wahl der Videoquelle, wenn man 2 Streams öffnet hängt sich der Rechner auf.
Entweder den Auswahl-Dialog deaktivieren oder vorher der alten Stream schliessen.
Ansonsten ganz O.K.
Bin fast erleichtert dass deins genau so lagt wie meins :D
Dafür kann man bei dir die Zwischenablage noch verwenden da du den Stream nicht in eine zweite Box kopierst.
Gibt es ne alternative zum WM_CAP_EDIT_COPY?
Männers - das gefällt mir Alles schon sehr gut....das reicht (mir) fast schon - Danke schon mal dafür !
...werde mal gucken, dass ich vielleicht meinen Bohrständer in der Z-Achse motorisiere und vielleicht mit `nem Fußtaster "auslöse"...dann kann man sicherlich ziemlich fix `n Platine perfekt bohren. ;-)
hmm joa, ich schließe den stream nicht wieder, stimmt :DZitat:
Zitat von BastelWastel
Gleich mal beheben.
Das laggen entsteht scheinbar durch die geringe framerate der webcam.
Wenn man die cam ins licht hält, oder irgendwie anders die belichtungszeit senkt, lagt die application nicht mehr.
Nächstes mal hänge ich den src code an, dann musst du nicht extra den Reflector bemühen :D
Mal eben was anderes:
gibt es einen Weg die Pen Klasse zu serialisieren?
Daran scheitert das speichern im moment, und eigentlich hab ich keine lust mir einen eigenen serializer zu schreiben.
edit: Andree du wohnst bei mir um die ecke :P
Wie meinst du serialisieren?
Ich hab gerade ein anderes Problem..
Ich versuche das Bild in .Image zu schreiben ohne die Zwischenablage zu benutzen..dazu hole ich mir die Frames via WM_CAP_SET_CALLBACK_FRAME
##########################
Public Function FrameCallbackTarget(ByVal hwnd As IntPtr, ByRef lpVHdr As VIDEOHDR) As IntPtr
Dim oBMP As New Bitmap(640, 480, 640 * 3, Imaging.PixelFormat.Format24bppRgb, New System.IntPtr(lpVHdr.lpData))
'''''nur zum testen'''
Dim col As System.Drawing.Color
col = oBMP.GetPixel(10, 10)
txt1.Text = txt1.Text & col.R & vbCrLf
picCapture.Image = oBMP
End Function
################
Ich kann die Pixel auslesen, das Bitmap ist also gefüllt..aber wenn ich es der picbox zuweisen will bleibt selbige leer..
..ich steh bestimmt irgendwie aufm schlauch..