Ändern der Farbe eines pixels mit OpenCV

Lassen Sie uns sagen, dass ich diese rose (interessieren sich nicht für den hintergrund, nur die weißen Blätter sind wichtig).

Ändern der Farbe eines pixels mit OpenCV

Ich mich verwandeln es in ein Graustufen-Bild:
grayscaled=cv2.imread('white_rose.png',cv2.IMREAD_GRAYSCALE)

Wie kann ich das ändern jedes weiße pixel, eine rote, unter der Bedingung, dass die rote Farbe (R=255) haben den gleichen Kontrast wie die weiße hat ? Das heißt, ich möchte, um zu sehen, die weißen Blätter in Roter Farbe, aber mit den gleichen L Wert eines jeden pixels, die in grayscaled ?

  • Ändern Sie den Farbraum HSV und führen Sie dann die entsprechenden änderungen vor. So können Sie sicher sein, dass eine konsistente Kontrast-Wert.
  • danke. Aber was meinst du mit den entsprechenden änderungen ? @scap3y
  • Finden Sie unter den link hier für mehr details über den HSV-Farbraum. Zum Beispiel weiß hätte sehr niedrigen N-und hohen V-Werten. Sie können ändern Sie den H-Wert ein es zu das eine die dem entspricht, was ROT und alter S/V-Wert entsprechend.
  • danke, ich werde versuchen Sie es und lassen Sie wissen,
  • Sie können ändern Sie den H-Wert ein es zu das eine die dem entspricht, was ROT: Wie Sie wissen, dass H von einer weißlichen pixel entspricht, die H rot , bitte ? (ja, ich habe gelesen, dass Artikel -) @scap3y
  • Okay, so Weiß interpretiert wird, in den HSV-Raum ist, dass es kann jeden Farbton, sondern die Sättigung, der Farbton ist sehr niedrig) mit hoher Helligkeit (V). Das macht die Dinge klarer? Ich vermute, Sie hatte noch nicht viel theoretischen hintergrund, auf Farbräume, so könnte ich schlage vor, Lesen, Computer Vision Hartley-Zisserman? HTH
  • Ich wusste, bevor über den HSV-Farbraum, auch wenn ich kein Experte bin, aber ich weiß nicht, wie man der H-Wert einer Farbe in das entsprechende H eine andere. @scap3y, weil jede Farbe definiert ist, in seinen eigenen Engel Rahmen
  • Sie müssen spielen, um mit dieser auf Ihrem eigenen. Lesen Sie die OpenCV-Dokumentation für details. Zu starten: gehen Sie durch jedes pixel Wert, und match-H,S-und V-Werte für weiß. Ersetzen Sie, dass mit der H-Wert von Rot mit einem höheren S.

InformationsquelleAutor | 2015-03-18
Schreibe einen Kommentar