2012-03-21 86 views
0

我想在python中使用pygtk編寫程序,它將執行我的opencv代碼並給出輸出,以便我可以在GUI中顯示它。 opencv代碼是用C語言編寫的。我想在我的GUI中使用屬於opencv的窗口/小部件,以便每當該小部件發生任何事件時(例如鼠標指針在小部件中移動),它應該執行我的opencv代碼並顯示輸出圖像。我正在考慮使用線程。但我不知道如何運行C代碼,尤其是python的opencv代碼。你能告訴我如何繼續?如何在pygtk中添加opencv窗口?

+0

到目前爲止你做了什麼嗎? – karlphillip 2012-03-21 22:48:42

+0

我的gui已經準備好了。只需要添加opencv。 – Froyo 2012-03-22 09:54:45

+0

是的,但你試過什麼_code_? – ptomato 2012-03-23 19:51:24

回答

0

好吧所以我想通了。我使用了OpenCV 2.1的swig綁定。並且我正在使用加載圖像

image = gtk.Image() 
img_pixbuf = gtk.gdk.pixbuf_new_from_data(img.tostring(), 
              gtk.gdk.COLORSPACE_RGB, 
              False, 
              img.depth, 
              img.width, 
              img.height, 
              img.width*img.nChannels) 

image = gtk.gdk.set_image_from_pixbuf(img_pixbbuf) 

其中圖像是IplImage對象。