Himmelsdetektion in CSC-segmentierten Farbbildern
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Himmelsdetektion in CSC-segmentierten Farbbildern Frank Schmitt und Lutz Priese Universität Koblenz-Landau⋆ , Koblenz, Deutschland, fschmitt@uni-koblenz.de, WWW-Homepage: http://www.uni-koblenz.de/~lb Zusammenfassung Es wird ein neues Verfahren zur Detektion des Himmels in Outdoor-Aufnahmen vorgestellt. Im Gegensatz zu den mei- sten bekannten Verfahren (beispielsweise [1], [2]) wird nicht nur wolken- loser, blauer Himmel sondern auch bewölkter Himmel und weiße Wol- ken im blauen Himmel detektiert. Der vorgestellte Algorithmus basiert auf der Analyse von Farbe und Positionseigenschaften zusammenhängen- der, farbhomogener Regionen, die mit dem CSC gewonnen werden. Eine Untersuchung auf einer Reihe von Bildern, die unter unterschiedlichen Wetterverhältnissen aufgenommen wurden, bestätigt die Qualität des Verfahrens. 1 Einführung Für viele Anwendungszwecke ist es hilfreich, in Bilddaten schnell und zuverlässig den Himmel erkennen zu können. Wurde der Himmel im Bild detektiert sind Rückschlüsse über den Inhalt des Bildes möglich und es lassen sich Informa- tionen über die Wetter- und somit auch Beleuchtungsverhältnisse zur Bildauf- nahme extrahieren. Auch kann die Kenntnis über die zum Himmel gehörenden Bildbereiche dazu dienen, den Suchraum für weitere, kompliziertere Bilderkenn- nungsalgorithmen einzuschränken. Ein weiterer und für uns besonders relevanter Punkt ist, dass in bebauten Gebieten die Unterkante der zum Himmel gehörenden Bereiche oft der Oberkan- te von Gebäuden entspricht. Der Verlauf dieser Gebäudeoberkanten kann erste Hinweise auf die Position der Kamera relativ zum Gebäude liefern. Dazu ist es wichtig, den Himmel inklusive eventueller Wolken und bei allen Witterungen zu finden. Nicht wichtig dazu ist ein Erkennen des Himmels unterhalb von größeren Gebäudeteilen wie Torbögen. Das im Folgenden vorgestellte Verfahren ist für diesen Anwendungsfall im größeren Szenario der Posedetektion (Detektion von Position und Blickrichtung einer Kamera in der Welt) optimiert. Das Bild wird zunächst CSC-segmentiert, die entstehenden Segmente werden dann in Himmel und Nicht-Himmel klassi- fiziert. Dabei wird davon ausgegangen, dass jedes Himmelsegment eine direkte, ⋆ Diese Arbeit wurde durch die DFG unter den Nummern PR161/12-1 und PA 599/7-1 gefördert
2 senkrecht nach oben gerichtete Verbindung zu anderen Himmelsegmenten oder dem oberen Bildrand hat. Diese Einschränkung hat sich für unseren Anwen- dungsfall als unproblematisch gezeigt. 2 Verwandte Arbeiten Bekannte Arbeiten zur Himmelsdetektion haben das Ziel den reinen blauen Him- mel, also das Abbild der Atmosphäre, zu detektieren. Wolken sind bei dieser Definition explizit nicht Teil des zu findenden Himmels. Luo und Etz [2] stellen fest, dass die Farbe des Himmels typischerweise von einem dunklen Blau im Zenit zu einem sehr hellen, fast weißen Blau am Horizont übergeht. In ihrem Verfahren werden entlang von Geraden vom Zenit in Richtung des Horizonts die Werte in drei Farbkanälen als eindimensionale Funktionen modelliert und auf charakteristische Eigenschaften des Himmels untersucht. Gallagher et. al [3] bilden zunächst eine initiale Himmel-Wahrscheinlichkeits- karte des Bildes basierend auf Klassifikation von Farbwerten. In einem zweiten Schritt wird die räumliche Variation der Farbwerte der als Himmel bestimmten Pixel modelliert. Hierzu wird aus den Pixeln mit hoher Himmelswahrschein- lichkeit für jeden Farbkanal ein zweidimensionales Polynom geschätzt. Durch Vergleich der Werte im Bild mit den Werten des Polynoms wird die endgültige Himmelsklassifikation erreicht. Zafarifar und de With [1] nutzen Himmelsdetektion im Kontext der Bild- verbesserung in Videodaten. Ihr Verfahren erstellt eine Himmel-Wahrscheinlich- keitskarte des Bildes basierend auf Textur, Farbwert, Gradient und vertikaler Position im Bild. Dabei werden die Systemparameter dynamisch an das Ein- gangsbild angepasst. Ihr System liefert sehr gute Ergebnisse, kann jedoch eben- falls nur blauen Himmel erkennen und gibt für Wolken somit eine geringe Wahr- scheinlichkeit der Zugehörigkeit zum Himmel an. In diesen Verfahren kann zwar nicht davon ausgegangen werden, dass der Himmel farbhomogen ist. Da Wolken nicht als Himmel angesehen werden be- steht der Himmel jedoch nur aus einem gradientenlosen Farbverlauf. Gerade im mitteleuropäischen Klima ist ein bewölkter Himmel eher Regel als Ausnahme, darum halten wir diese Einschränkung für wenig praktikabel. Aus dieser Moti- vation heraus haben wir ein neues System entwickelt, das den Himmel inklusive Wolken detektiert und das wir im Rest des Artikels beschreiben werden. 3 Charakteristika des Himmels in Farbbildern Das im nächsten Abschnitt vorgestellte Verfahren beruht auf einigen Grundan- nahmen und Beobachtungen über Charakteristika des Himmels in Farbbildern, die im Folgenden vorgestellt werden sollen. Wir gehen davon aus, dass die vorliegenden Bilder horizontal aufgenommen wurden und sich somit der Himmel oben im Bild befindet. In Anwendungsfällen, in denen diese Grundannahme nicht getroffen werden kann, könnten Verfahren
3 zur Schätzung des Horizonts wie sie zum Beispiel in [4] und [5] vorgestellt werden genutzt werden. Die zweite charakteristische Eigenschaft des Himmels ist seine Farbe. Diese kann von einem reinen weiß in Schönwetterwolken über verschiedenste Grautöne in Regenwolken bis zu Blautönen unterschiedlicher Sättigung und Helligkeit in wolkenlosen Bereichen des Himmels reichen. In wolkenlosen, blauen Bereichen ist die Farbe des Himmels normalerweise nicht homogen, sondern entspricht einem kontinuierlichen Farbverlauf von einem gesättigten, dunkleren Blau etwa im 90 Grad-Winkel zur Sonne hin zu einem hellerem, ungesättigterem Blau in der Nähe der Sonne sowie am Horizont. In Ansätzen, in denen nur der wolkenlose Himmel gefunden werden soll kann weiterhin davon ausgegangen werden, dass der Himmel frei von starken Gradi- enten ist und seine Helligkeitsverteilung kontinuierlich ist. Da wir auch Wolken als Teil des Himmels ansehen und diese somit auch detektieren wollen, können wir diese Annahme nicht treffen. 4 Das Verfahren 4.1 Grundidee des Vorgehens Der im folgenden vorgestellte Algorithmus ist direkt aus den Beobachtungen im vorherigen Abschnitt motiviert. Zunächst wird das Bild geglättet und in farbhomogene räumlich zusam- menhängende Regionen segmentiert. Anschließend wird vom oberen Bildrand absteigend nach Segmenten gesucht, deren mittlere Farbe zum Himmel passen könnte. Die Farbanalyse beruht auf Vergleich der mittleren Farbe der Segmente mit einem manuell festgelegten Subraum des HSV-Farbraums. 4.2 Vorverarbeitung und Segmentierung Das Eingangsbild wird zunächst mit einer Iteration des 3×3 Kuwahara-Filters [6] geglättet und dann mittels des CSC [7] in farblich homogene, zusammenhängen- de Regionen segmentiert. Prinzipiell kann jedes beliebiges Verfahren zur Re- gionensegmentierung genutzt werden, jedoch bietet der CSC den Vorteil, dass er hohe Ausführungsgeschwindigkeit mit sehr robusten Ergebnissen kombiniert. Wichtig bei der Segmentierung ist, dass die Parameter des Segmentierers so gewählt werden, dass eher eine Untersegmentierung (zusammengehörende Be- reiche zerfallen in mehrere Segmente) als eine Übersegmentierung (nicht zu- sammenhängende Bereiche werden in ein Segment verschmolzen) auftritt, da in den späteren Schritten des Algorithmus Segmente nur komplett in Himmel bzw. Nicht-Himmel klassifiziert werden. Die CSC-Segmentierung kann entweder im HSV-Farbraum mit Hilfe vorde- finierter Farbähnlichkeitstabellen [8] oder im L*a*b*-Farbraum, wobei die Ähn- lichkeit zweier Farben über den euklidischen Abstand bestimmt wird, durch- geführt werden. Für die Experimente in diesem Artikel wurde der L*a*b*- Farbraum gewählt. Der Schwellwert der Farbähnlichkeit wurde auf 12 gesetzt,
4 d.h. zwei Farben werden bis zu einem euklidischen Abstand von 12 als ähnlich angesehen. Das Ergebnis des CSC ist ein Labelbild, in dem der Wert jedes Bildpunkts auf die Kennzahl des Segmentes, dem er zugeordnet wurde, gesetzt wird. 4.3 Segmentcharakteristika Es werden zunächst einige Charakteristika von Segmenten (hier: räumlich zu- sammenhängende, farbhomogene Bildregionen) definiert. Als Farbe eines Segmentes bezeichnen wir den Mittelwert der Farbwerte aller Pixel innerhalb des Segments. Da die Segmente farbhomogen sind, tritt das Problem der Entstehung von Falschfarben durch Mittelwertbildung nicht auf. 4.4 Farbanalyse Alle Segmente werden zunächst dahingehend untersucht, ob sie himmelsfarben sind, d.h. ob ihr mittlerer Farbwert im Himmel auftreten kann oder nicht. Um diese Farbklassifikation durchzuführen könnte ein Klassifikator mit sehr vielen Beispielen von Farben von Himmels- und Nicht-Himmelssegmenten trainiert wer- den. Hier tritt jedoch das Problem auf, dass die Mengen nicht disjunkt sind. Das heißt alle Farben, die im Himmel vorkommen, können genauso auch außerhalb des Himmels auftreten. Wir fanden jedoch durch manuelle Analyse von Beispiel- bildern einen einfachen Subbereich des HSV-Farbraums, in dem die im Himmel auftretenden Farben liegen, der ausreichend eng gefasst ist. Ein HSV-Farbwert hsv wird im Folgenden als himmelsfarben bezeichnet, wenn er mindestens einer der folgenden Bedingungen genügt. Dabei sind die Farbwinkel bis zu einem gewissen Maß kameraabhängig: – hsv.saturation < 13 und hsv.value > 216 – hsv.saturation < 25 und hsv.value > 204 und hsv.hue > 190 und hsv.hue < 250 – hsv.saturation < 128 und hsv.value > 153 und hsv.hue > 200 und hsv.hue < 230 – hsv.value > 88 und hsv.hue > 210 und hsv.hue < 220 4.5 Positionsanalyse Zunächst wird eine erste Menge von Himmelssegmenten gesucht, indem alle Seg- mente als Himmel klassifiziert werden, deren mittlere Farbe hsvmean himmels- farben ist und für die gilt, dass mindestens die Hälfte ihres oberen Randes den oberen Bildrand berührt. Anschließend werden alle Segmente, die den unteren Rand mindestens ei- nes der als Himmel klassifizierten Segmente berühren in einer Kandidatenliste gespeichert. Für jedes Segment Scur in dieser Kandidatenliste werden zwei Krite- rien überprüft, die beide erfüllt sein müssen, damit Scur als Himmel klassifiziert wird:
5 1. Die Farbe von Scur ist himmelsfarben 2. Mindestens zwei Drittel der oberen Grenze von Scur berührt bereits als Him- mel klassifizierte Segmente oder den oberen Bildrand Sind die Bedingungen 1-2 erfüllt, wird Scur ebenfalls als Himmel klassifiziert und alle Segmente, die noch nicht als Himmel klassifiziert wurden und die den unteren Rand von Scur berühren, werden in die Kandidatenliste eingefügt. Der Algorithmus terminiert, wenn die Kandidatenliste leer ist. Zu diesem Zeitpunkt sollten alle Segmente, die zum Himmel gehören und eine Verbindung zum oberen Bildrand besitzen (direkt oder durch andere Himmel- Segmente hindurch), als Himmel klassifiziert worden sein. Allerdings werden auch z.B. weiße Fassaden die unmittelbar an den Himmel Grenzen teilweise als Himmel detektiert. Um solche Fehlklassifikationen zu beheben, soll in Zukunft vor dem Hinzufügen von CSC-Segmenten zum Himmel eine Analyse durch- geführt werden, die Segmente ausschließt, die charakteristische Eigenschaften von Gebäuden aufweisen. Eine solche Eigenschaft könnte zum Beispiel die Ge- radheit der oberen Segmentgrenze sein. 5 Auswertung Für eine erste Evaluation wurden drei zu unterschiedlichen Tageszeiten und un- terschiedlichen Witterungsverhältnissen aufgenommene Datensätze mit insge- samt 111 Bildern untersucht. Alle Bilder zeigten Outdoorszenen und enthielten Himmel. Von den 111 Bildern wurde der Himmel in 75 Bildern korrekt gefunden. In 27 Bildern wurden größere Flächen unter dem Himmel fälschlich als Himmel detektiert. Wir sind zuversichtlich diese Zahl durch eine erweiterte Segmentana- lyse stark reduzieren zu können. In sechs Bilder wurden Teile des Himmels nicht erkannt, in zwei wurde der Himmel komplett nicht erkannt und in einem Bild wurde sowohl Nicht-Himmel als Himmel als auch umgekehrt erkannt. Im Anhang werden vier Beispielbilder gezeigt. 6 Zusammenfassung und Ausblick Es wurde ein schnelles und robustes Verfahren vorgestellt, um den Himmel in Kamerabildern detektieren zu können. Im Gegensatz zu bekannten Verfahren wird nicht nur blauer Himmel sondern auch bewölkter Himmel detektiert. Das Verfahren ist schnell und eine Evaluation auf einem Datensatz von 111 Bildern zeigte seine Robustheit. Wir erweitern momentan den Algorithmus dahingehend, dass himmelsfarbene Gebäudeteile die an den Himmel angrenzen, nicht fälschli- cherweise als Himmel erkannt werden.
6 Literatur 1. Zafarifar, B., de With, P.H.N.: Blue sky detection for picture quality enhancement. In: Advanced Concepts for Intelligent Vision Systems. Volume 4179/2006 of Lecture Notes in Computer Science., Springer Berlin / Heidelberg (2006) 522–532 2. Luo, J., Etz, S.P.: A physical model-based approach to detecting sky in photogra- phicimages. IEEE Transactions on Image Processing 11(3) (March 2002) 201–212 3. Gallagher, A.C., Luo, J., Hao, W.: Improved blue sky detection using polynomial model fit. In: Image Processing, 2004. ICIP ’04. 2004 International Conference on. Volume 4. (October 2004) 2367–2370 4. Ettinger, S.M., Nechyba, M.C., Ifju, P.G., Waszak, M.: Towards flight autonomy: Vision-based horizon detection for micro air vehicles. In: Florida Conference on Recent Advances in Robotics 2002. (2002) 5. Fefilatyev, S., Smarodzinava, V., Hall, L.O., Goldgof, D.B.: Horizon detection using machine learning techniques. In: ICMLA ’06: Proceedings of the 5th International Conference on Machine Learning and Applications, Washington, DC, USA, IEEE Computer Society (2006) 17–21 6. M. Kuwahara, K. Hachimura, S. Eiho, and M. Kinoshita: Processing of ri- angiocardiographic images. In Preston, K., Onoe, M., eds.: Digital Processing of Biomedical Images. (1976) 187–202 7. Rehrmann, V., Priese, L.: Fast and robust segmentation of natural color scenes. In Chin, R.T., Pong, T.C., eds.: 3rd Asian Conference on Computer Vision (ACCV’98). Number 1351 in LNCS, Springer Verlag (1998) 598–606 8. Rehrmann, V.: Stabile, echtzeitfähige Farbbildauswertung. PhD thesis, Universität Koblenz-Landau, Fölbach Verlag, Koblenz (1994)
7 A Beispielbilder In den folgenden Abbildungen 1 bis 4 sind links die Originalbilder und rechts das Ergebnis der Klassifikation zu sehen. Dabei steht in den Ergebnisbildern weiß für Himmel, grau für himmelsfarbene Segmente die nicht als Himmel klassifiziert wurden und schwarz für nicht-himmelsfarbene Segmente. Abbildung 1: Aufnahme bei schönem Wetter mit Schönwetterwolke Abbildung 2: Aufnahme bei Regenwetter
8 Abbildung 3: Aufnahme bei starker Bewölkung Abbildung 4: Ein himmelsfarbenes Segment in einer Gebäudefront, das sich un- mittelbar unter dem Himmel befindet wird fälschlicherweise als Himmel detek- tiert
Sie können auch lesen