Ich versuche einen riesigen hellen Fleck in einem Bild zu erkennen. So wie ich es tue, ist, ich bin Umwandlung es zuerst COLOR_BGR2HLS_FULL
, den grünen Kanal zu nehmen und die Anwendung GuassianBlur, um es wie so und dann ich THRESH_OTSU
bin mit dem schwellen Bild zu erhalten, und dann zeichnet die Kontur:Es ist nicht möglich, einen genauen Schwellenwert für ein Bild mit einem hellen Fleck zu erhalten
self.result = cv2.cvtColor(self.result_array_color, cv2.COLOR_BGR2HLS_FULL)
self.result = self.result[:,:,1]
self.result = cv2.GaussianBlur(self.result,(25,25), 0)
hier ist, was das erhaltene Bild wie folgt aussieht:
Und hier ist es, was das gewünschte Bild aussehen soll:
Auch meine Art, dies zu tun, stimmt nicht mit allen Bildern ähnlicher Art überein. Gibt es einen besseren Weg, den Sie vorschlagen könnten?
Vielen Dank!
Das ausgezeichnet ist. Macht es Ihnen etwas aus, den Code einzuschließen? Ich bin sehr gespannt auf den Dilatations- und Erosionsanteil und auch auf den Lighting Suppression Filter. Vielen Dank. –
könnten Sie den Code in Ihre Antwort aufnehmen? –
Was war die Kernelgröße der Dilatation? Bitte geben Sie ein wenig mehr Informationen, wenn Sie können. Hast du das Inpainting benutzt, um die Gefäße zu entfernen? –