Vorrei sapere come disegnare forme semitrasparenti in OpenCV, simili a quelle nell'immagine qui sotto (da http://tellthattomycamera.wordpress.com/)Come creare una forma semi trasparente?
Non ho bisogno di quei cerchi di fantasia, ma vorrei essere in grado di disegnare un rettangolo, ad esempio, immagine a colori a 3 canali su e specificare la trasparenza del rettangolo, qualcosa come
rectangle (img, Point (100,100), Point (300,300), Scalar (0,125,125,0.4), CV_FILLED);
dove 0,125,125
è il colore del rettangolo e 0.4
specifica i tras cy. Tuttavia OpenCV non ha questa funzionalità integrata nelle sue funzioni di disegno. Come posso disegnare forme in OpenCV in modo che l'immagine originale che viene disegnata sia parzialmente visibile attraverso la forma?
Grazie per la risposta e per la vostra pazienza, ma ho risolto in un altro modo, usando la funzione addWeighted. In questo modo: cap >> img; img.copyTo (copia); Rettangolo (copia, punto (100,100), punto (300,300), scalare (0,125,125), CV_FILLED, CV_AA, 0); addWeighted (copia, 0.4, da 0.1 a 0 .4,0 img, img); imshow ("img", img); – user3788572
@Bull, ho avuto una query, non stai usando l'oggetto 'image' Mat nella chiamata alla funzione' addWeighted', come si aggiorna all'immagine? Grazie –
@Prakash I dati in 'roi' sono una sezione rettangolare dei dati in' immagine'. Cioè, se leggi da 'roi' stai leggendo da' image', se modifichi 'roi' stai anche modificando' image'. – Bull