[Bilderkennung]Beleuchtung
-
Korbinian schrieb:
Bashar schrieb:
Eventuell vorher ein Referenzbild ohne Schachtel aufnehmen, um inhomogene Beleuchtung durch Subtraktion herausrechnen zu können.
da ist afaik ein patent drauf, also wenns kommerziell genutzt wird, vorsicht
Aua, echt? Ich dachte es sei schon seit hunderten von Jahren bekannt, wie man konstante systematische Fehler herausrechnet
-
Nachtrag: Der Arbeitsbereich (Tisch) ist ungefähr 400x300mm groß.
Die Box misst etwa 100x100mm.Ich denke, dass man einer starken Lampe die in der Nähe der Kamera angebracht ist brauchbare Ergebnisse erzielt.
Werde mich aber noch bei einem Spezialisten erkundigen.
Danke für eure Antworten.
Edit: Das von Bashar vorgeschlagene Verfahren interessiert mich. Gibt es da eine Fachbezeichnung dafür, damit ich googeln kann?
Das Projekt wird sowieso nicht kommerziell genutzt. Ist Schulintern.
-
-
was genau mußt du denn rausfinden? ob die box überhaupt da ist? ob sie an der richtigen stelle ist? wie sie sich bewegt? ... ?
davon würde ich die beleuchtung abhängig machen. im einfachsten fall z.b. um zu wissen ob sich die box (oder irgendein objekt) bewegt, wäre die beleuchtung egal sofern die box nicht 100% durchlässig ist und es nicht stockfinster wäre.
rapso->greets();
-
Dieser Thread wurde von Moderator/in kingruedi aus dem Forum Neuigkeiten aus der realen Welt in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
b7f7 schrieb:
Das ist was anderes. Die korrigieren mithilfe irgendwelcher Histogramm-Operationen, nicht anhand eines Referenzbildes.
-
im "prior art" steht aber welche vorgängerpatente o.ä. das hatte.
-
@rapso: Die Box ist sicher vorhanden. Sie bewegt sich auch nicht. Ich muss 'nur' ihre Position und Lage bestimmen.
-
Bashar schrieb:
Eventuell vorher ein Referenzbild ohne Schachtel aufnehmen, um inhomogene Beleuchtung durch Subtraktion herausrechnen zu können.
Nicht ganz, die inhomogene Beleuchtung wird durch eine Division mit einem Referenzbild herausgerechnet.
I_{korrigiert}=c\cdot\frac{I}{I_{ref}}\quad, c\in [0,256[
Der Skalierungsfaktor c dient dazu, dass durch normierte Bild wieder auf den Bereich von 0 bis 255 zu bringen.
Die Korrektur findet natürlich Pixel und Kanalweise statt.Das ganze nennt sich ShadingCorrection.
Die oben genannte Formel ist die einfachste Form, sie hat den Nachteil, dass durch die kanalweise Korrektur Falschfarben -besonders bei dunklen Bereichen- entstehen können.
Aber das ganze lässt sich sehr schnell realisieren, und da du sowas im industriellen Umfeld einsetzen willst, sollte es auch schnell sein......Gruß
-
btw : generation 5 hat ne Menge Texte zum Thema - wenn auch in englisch..