Ich habe eine große Bildersammlung und möchte die Bilder in dieser Sammlung identifizieren, die andere Bilder aus der Sammlung zu kopieren scheinen.
Um Ihnen einen Eindruck von den Arten von Bildpaaren zu geben, die ich als Übereinstimmungen klassifizieren möchte, betrachten Sie bitte diese Beispiele:
Ich habe ungefähr 0,25 Millionen Paare übereinstimmender Bilder von Hand klassifiziert und möchte nun diese handbeschrifteten Übereinstimmungen verwenden, um ein neuronales Netzwerkmodell zu trainieren. Ich bin mir einfach nicht sicher, welche Architektur für diese Aufgabe ideal geeignet wäre.
Ich dachte ursprünglich, ein siamesisches Netzwerk könnte angemessen sein, da sie für ähnliche Aufgaben verwendet wurden, aber die Ausgabe dieser Klassifizierer scheint idealer geeignet zu sein, um verschiedene Figuren desselben Objekts zu finden (was nicht das ist, was ich will), anstatt verschiedene Drucke der gleichen Figuration (was ich will).
Wenn jemand helfen kann, Papiere oder Architekturen zu empfehlen, die sich aufgrund der von mir erstellten Trainingsdaten ideal zur Identifizierung von Bildern eignen, wäre ich für alle Erkenntnisse, die Sie anbieten können, außerordentlich dankbar.
Antworten:
Sie müssen über die Triplettverlustfunktion lesen . Die Triplettverlustfunktion erhält Ergebniseinbettungen von einem Netzwerk, das 3 Bilder von einem Netzwerk (2 ähnliche und 1 nicht ähnliche) für einen Schritt verarbeitet:
Nach diesem Verlust wird berechnet als:
Weitere Informationen finden Sie in der Veröffentlichung von Triplettverlustautoren.
Kann auch PSNR helfen , aber dies ist kein Deep Learning.
quelle
Wenn die Bilder ähnlicher sind als die von Ihnen geposteten, können Sie den Strukturähnlichkeitsindex verwenden, der eine Ausgabe im Bereich von -1 bis 1 ergibt. Alles, was mehr als 0,9 beträgt, kann als ähnlich angesehen werden.
quelle