bei folgendem Problem komme ich gerade nicht weiter:
Ich habe aus einem Videobild einen festen Teilbereicht definiert, diesen in eine Graustufe gewandelt und anschließend Canny angewandt. Dieses (Video)-Bild habe ich als .jpg Referenz gespeichert. Das ist Input1 (Es ist ein Fernsehlogo, von der Position her fest unten rechts im Bild)
Nun gibt es ein Video als Input2, welches den gleichen Teilbereich definiert. Auch dieses Video durchläuft Canny u.a., so wie Input1. Das Logo (Input1) ist immer an der selben Stelle. Ich möchte nun beide Arrays (Input1 und Input2) auf eine Ähnlichkeit hin Vergleichen (z.B. zu 90% ähnlich) um mich einem Threshold anzunähern, ab welcher Ähnlichkeit das Logo noch da ist und wann nicht (z.B. wenn es ausgeblendet wird.
Folgendes habe ich testweise versucht, aber irgendwie lässt sich das auf mein Problem nicht genau anwenden:
Code: Alles auswählen
picture1 = np.random.rand(100,100)
picture2 = np.random.rand(100,100)
picture1_norm = picture1/np.sqrt(np.sum(picture1**2))
picture2_norm = picture2/np.sqrt(np.sum(picture2**2))
print(np.sum(picture1_norm**2))
print("np.sum(picture2_norm*picture1_norm)
Also eigentlich ist das genau das, was ich suche. Nur lässt sich das auf mein Canny np.Array nicht so anwenden, die Werte ergeben keinen Sinn für mich :-/
Auch versucht habe ich np.isclose()...trotz rtol /atol Parameter bin ich nicht auf sinnvolle Ähnlichkeitswerte gekommen.
Hätte jemand einen Tipp für mich? Wie immer bin ich für jeden Hinweis sehr dankbar,
Besten Gruß & guten Rutsch ins neue Jahr,
Marc