Matplotlib stellt falsche Farben für OpenCV-Bilder dar
In Pythons OpenCV werden Bilder im BGR-Farbraum (Blau-Grün-Rot) geladen , während Matplotlib sich an das RGB-Format (Rot-Grün-Blau) hält. Diese Ungleichheit kann zu verzerrten Farben führen, wenn mit OpenCV geladene Bilder in Matplotlib angezeigt werden.
Das Problem ergibt sich aus der Reihenfolge der Farbkanäle in den Bildern. OpenCV-Bilder werden im BGR-Format gespeichert, während Matplotlib RGB erwartet. Dadurch werden die Farbkanäle vertauscht, was dazu führt, dass falsche Farben angezeigt werden.
Lösung:
Die einfachste Lösung besteht darin, das mit OpenCV geladene BGR-Bild zu konvertieren explizit in RGB umwandeln, bevor es an Matplotlib übergeben wird. Dies kann mit dem folgenden Code erreicht werden:
<code class="python">RGB_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)</code>
Durch diese Konvertierung werden die Farbkanäle korrigiert, um sicherzustellen, dass das Bild in Matplotlib genau angezeigt wird. Das resultierende Bild entspricht nun den Farben des ursprünglichen Quellbilds.
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen unter Berücksichtigung des von Ihnen gewünschten Fragenformats: **Option 1 (direkt und technisch):** * **Warum zeigt Matplotlib OpenCV-Bilder mit falschen Farben an?** **Option. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!