2010-12-11 29 views
8

Che cosa è una buona piattaforma per un progetto web based che si occupa di elaborazione di immagini utilizzando OpenCV biblioteca? Ho trovato Wt (http://www.webtoolkit.eu/wt).C++ progetto web utilizzando OpenCV con Wt

Posso utilizzare OpenCV con Wt? C'è qualche alternativa migliore a Wt?

Requisiti:

Una pagina di login GUI per documenti di upload, selezionare le aree sull'immagine, scrittura a mano la parola/rilevazione line utilizzando OpenCV

risposta

4

Ho usato Wt in passato, è molto utile, anche se ingombrante. E 'gonfio ha a che fare con il dover supportare una vasta gamma di browser Web, quindi in alcuni casi è una funzionalità.

Se siete più di un programmatore close-to-metal, io consiglierei di PION, e l'implementazione del GUI utilizzando alcune delle vostre abilità di authoring web:

http://www.pion.org/projects/pion-network-library

È possibile utilizzare OpenCV con praticamente tutte le librerie di rete là fuori Una buona recensione delle vostre scelte è disponibile qui su StackOverflow:

https://stackoverflow.com/questions/175507/c-c-web-server-library

1

Penso che quello che chiedi è possibile con Wt. Non posso prevedere i problemi con il collegamento in OpenCV Wt, e il sistema è sicuramente abbastanza interattivo per fornire la funzionalità che si descrive. Attuare con azioni sul lato server prima, e, se richiesto, è ancora possibile ottimizzare le parti con piccoli pezzetti di JS lato client.

0

FWIW, questo è un semplice codice per visualizzare l'immagine OpenCV (eventualmente cambiare l'immagine, mentre l'applicazione è in esecuzione):

Wt::WMemoryResource* cvMat2res(const cv::Mat& img){ 
    std::vector<uchar> buf; 
    cv::imencode(".png",img,buf); // by default, the fastest compression 
    auto ret=new Wt::WMemoryResource(this); 
    ret->setMimeType("mime/png"); 
    ret->setData(buf); // data is copied here 
    return ret; 
} 

/* ... */ 
auto img=new Wt::Image(); 
root()->addWidget(img); 
Wt::WMemoryResource* imgRes=nullptr; 

/* set image data; this can be done also in event handler and the image updates itself automatically from the new resource */ 
if(imgRes) delete imgRes; 
imgRes=cvMat2res(cvImage); 
img->setImageLink(imgRes); 
Problemi correlati