Wie fülle ich ein OpenCV-Bild mit einer Farbe?
image-processing
opencv
Rella
quelle
quelle
Antworten:
Verwenden der OpenCV C-API mit
IplImage* img
:Verwenden Sie cvSet () :
cvSet(img, CV_RGB(redVal,greenVal,blueVal));
Verwenden Sie die OpenCV C ++ - API mit
cv::Mat img
und verwenden Sie dann entweder:cv::Mat::operator=(const Scalar& s)
wie in:oder allgemeiner, Maskenunterstützung ,
cv::Mat::setTo()
:quelle
BGR
obwohl dies für diese Antwort nicht sehr relevant ist. Es liegt im Allgemeinen in der Verantwortung des Benutzers, die Kanalreihenfolge zu verfolgen.So geht's mit cv2 in Python:
Hier ist ein vollständigeres Beispiel zum Erstellen eines neuen leeren Bilds, das mit einer bestimmten RGB-Farbe gefüllt ist
quelle
Am einfachsten ist die Verwendung der OpenCV Mat-Klasse:
wo
img
wurde definiert alscv::Mat
.quelle
Erstellen Sie ein neues 640x480-Bild und füllen Sie es mit lila (rot + blau):
Hinweis:
quelle
Für ein 8-Bit-OpenCV-Image (CV_8U) lautet die Syntax:
quelle
Verwenden Sie
numpy.full
. Hier ist ein Python, der ein graues, blaues, grünes und rotes Bild erstellt und in einem 2x2-Raster angezeigt wird.quelle
Wenn Sie Java für OpenCV verwenden, können Sie den folgenden Code verwenden.
quelle
Ich persönlich habe diesen Python-Code erstellt, um die Farbe eines gesamten mit openCV geöffneten oder erstellten Bildes zu ändern. Es tut mir leid, wenn es nicht gut genug ist, ich bin Anfänger 😚😚.
quelle