2017-05-30 120 views
0

我試圖在運行在虛擬機(VB)上的Ubuntu 12.04上運行https://github.com/Microsoft/Cognitive-Face-Python的Face API樣本。當我選擇圖像來檢測,它會發送一個請求,並收到了效果,但之後:Microsoft Face API Python poll_for_event:斷言`!xcb_xlib_threads_sequence_lost'失敗

sample/util.py:176: wxPyDeprecationWarning: Call to deprecated item EmptyImage. Use :class:`Image` instead. 
wx_image = wx.EmptyImage(pil_image.width, pil_image.height) 
[xcb] Unknown sequence number while processing queue 
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called 
[xcb] Aborting, sorry about that. 
python: ../../src/xcb_io.c:274: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed. 
Aborted (core dumped)` 

我已經檢測到的地方,它停止:

try: 
     attributes = (
      'age,gender,headPose,smile,facialHair,glasses,emotion,hair,' 
      'makeup,occlusion,accessories,blur,exposure,noise' 
     ) 
     # the call 
     res = util.CF.face.detect(path, False, False, attributes) 
     faces = [model.Face(face, path) for face in res] 

     # ... WON'T GET HERE ... 

     self.face_list.SetItems(faces) 
     util.draw_bitmap_rectangle(self.bitmap, faces) 

     log_text = 'Response: Success. Detected {} face(s) in {}'.format(
      len(res), path) 
     self.log.log(log_text) 
     text = '{} face(s) has been detected.'.format(len(res)) 
     self.result.SetLabelText(text) 
    except util.CF.CognitiveFaceException as exp: 
     self.log.log('Response: {}. {}'.format(exp.code, exp.msg)) 

這個片段是從樣品/查看/ panel_detection.py

+0

我已經在Ubuntu VM(12.04)上重現了這個錯誤,而且我沒有太多時間深入挖掘,但是從它的外觀來看,應用程序崩潰了wxPython中不存在的API(即當我放置一個斷點並檢查對象,我沒有看到函數),所以我懷疑這個庫的版本有問題。我下載了2.9個BTW,這是該示例告訴我們使用的一個 –

回答

0

我未能再現您的錯誤與在Windows 10 & MACOS 10.12.5的最新的代碼版本與Python 2.7和wxPython的3.0.2.0。

錯誤不是直接從示例代碼報告,而是在裏面的某處。並且wx.EmptyImage不應該是錯誤的關鍵點。所以我懷疑它可能與環境有關。

請確保您使用的是最新版本的示例代碼和相應的軟件包。例如,用於wxPython的3.0.2.0。 Ubuntu 12.04太舊了,可能會遭受過時的依賴。

我不得不承認,我們有限的努力使其恢復兼容,請確保一切都是最新的。如果還有其他問題,請隨時更新。

+0

根據https://pypi.python.org/pypi/wxPython,最新版本是4.0.0a2,我有這個。 – Filipko

+0

@Filipko wxPython 4.0+是支持Python2和Python3的新一代wxPython。我還沒有測試過這個兼容性,因爲它仍然處於alpha階段。所以請繼續使用最新的3.0+版本。 –

+0

@胡璇,看到我對OP的評論,錯誤是可重現的。 –