2012-10-14 12 views
19

Eventuali duplicati:
OpenCv CreateImage Function isn’t workingCreare una nuova immagine RGB OpenCV usando Python?

desidero creare una nuova immagine RGB in OpenCV utilizzando Python. Non voglio caricare l'immagine da un file, basta creare un'immagine vuota pronta a fare operazioni su.

+3

Se posso mettere in dubbio il flag duplicato, una domanda viene risposta con cv e l'altra con cv2. –

+0

abbiamo bisogno di un modo per unire le domande sullo stack overflow – user391339

risposta

82

La nuova interfaccia cv2 per Python integra numpy array nell'ambito OpenCV, che rende le operazioni molto più semplice in cui sono rappresentati con semplici array multidimensionali. Ad esempio, la tua domanda verrebbe risolta con:

import cv2 
import numpy as np 
blank_image = np.zeros((height,width,3), np.uint8) 

Inizializza un'immagine RGB che è solo nera. Ora, per esempio, se si desidera impostare la parte sinistra dell'immagine al blu e la metà destra al verde, si potrebbe fare così facilmente:

blank_image[:,0:0.5*width] = (255,0,0)  # (B, G, R) 
blank_image[:,0.5*width:width] = (0,255,0) 

Se si vuole risparmiare un sacco di problemi in futuro , oltre a dover fare domande come questa, consiglio vivamente di utilizzare l'interfaccia cv2 anziché quella precedente cv. Ho apportato la modifica di recente e non mi sono mai voltato indietro. Puoi leggere ulteriori informazioni su cv2 allo OpenCV Change Logs.

Problemi correlati