Ich benutze OpenCV 3.1 und Visual Studio C++.OpenCV "Blured Corners" Detektor (C++)
Ziel
Ich möchte Ecken erkennen, nicht Kurven, Rechtecke oder Kreise. Das heißt, ich möchte die Positionen von unscharfen Zeichen finden. Hier Gebiet Gebiete mein Interesse:
Die roten Bereiche haben eine höhere Priorität, weil sie verschwommener als die orangefarbene sind, die mit dem aktuellen Shi-Tomasi Ecke Detektor erfasst werden kann.
Was ich versucht habe
Ich habe getestet Shi-Tomasi Ecke Detektor - Code wird in diesem Tutorial http://docs.opencv.org/2.4/doc/tutorials/features2d/trackingmotion/good_features_to_track/good_features_to_track.html gelegt, die groß ist, Bereiche mit Text zu suchen, wenn Sie scharfe Bilder haben. Ich würde gerne einen Algorithmus mit OpenCV finden, der eine ähnliche (sehr gute) Leistung hat und Blured Text erkennen kann. Die Bereiche, in denen der Text zu stark verwaschen ist (es ist nicht möglich, ihn zu lesen - um Ecken zu erkennen), sollten ignoriert werden. Auch die Bereiche, die eine gute Schärfe haben, sollten ignoriert werden. Hier
ist Beispiel, was ich versucht - das ist das Ergebnis von der Shi-Tomasi Tutorial:
Diese Quelle Bild ist:
Und das ist, was ich bekommen
die oberen Bildparameter minDistance = 5, qualityLevel = 0,01, das untere Bild minDistan ce = 10, Qualitätsstufe = 0,05 der Rest von params ist für beiden Bilder:
int blockSize = 3; bool useHarrisDetector = false; double k = 0.04;
das falsche Ergebnis ist, dass es nicht den verwischten Text gefunden hat - die Zahl „195“ im oberen rechten Bereich oder unten links, z.B die "14 ms" und/oder "19 ms". Eher hat es die besten scharfen Ergebnisse gefunden, die nicht das sind, was ich will.
Ich glaube, wenn ich eine Art Kernel verwenden könnte, der die scharfen Bereiche verwischen und die verschwommenen Bereiche scharfstellen würde, könnte dann vielleicht der Shi-Tomasi-Ecken-Detektor die Ergebnisse finden.
Irgendwelche Tipps, wie Sie das Ziel erreichen?
Erwarten Sie von diesem Fall nicht viel Zuverlässigkeit. Das Prinzip "Müll in/Müll" gilt in vollem Umfang. –