【问题标题】:OpenCV gving error "ASSERT: "false" in file qasciikey.cpp, line 495" on multiple windows多个窗口上的 OpenCV gving 错误“ASSERT:文件 qasciikey.cpp,第 495 行中的“false””
【发布时间】:2018-11-14 23:07:04
【问题描述】:

我正在尝试在我的 Jetson TX2 上的 python 中使用多个 OpenCV 窗口。但是,我收到错误消息:“ASSERT: "false" in file qasciikey.cpp, line 495"

以下是最小可重现代码:

import cv2
import numpy as np

img1=np.random.randn(300,400)
img2=np.random.randn(600,400)

cv2.imshow('win1', img1)
cv2.imshow('win2', img2)

这是错误跟踪:

Could not initialize OpenGL for RasterGLSurface, reverting to RasterSurface.
QXcbConnection: XCB error: 145 (Unknown), sequence: 164, resource id: 0, major code: 139 (Unknown), minor code: 20
Could not initialize OpenGL for RasterGLSurface, reverting to RasterSurface.
ASSERT: "false" in file qasciikey.cpp, line 495
Aborted (core dumped)

请帮忙。谢谢!

编辑: 仅当我 ssh 进入 Jetson(通过 MobaXterm v10.5)时才会发生该错误。如果我直接从 Jetson 运行代码,我不会收到此错误。

【问题讨论】:

    标签: python opencv opencv3.0 nvidia-jetson


    【解决方案1】:

    我发现在 MobaXterm/Settings/X11 中取消选中“Unix-compatible keyboard”,并将键盘设置为“us”为我解决了这个错误。

    【讨论】:

      【解决方案2】:

      在 Raspberry Pi 上运行代码时,我收到了类似的错误消息 (ASSERT: "false" in file qasciikey.cpp, line 495)。我可以通过首先使用cv2.namedWindow() 创建一个应该显示图像的窗口来解决这个问题。

      你应该试试这个解决方案,看看问题是否消失:

      import cv2
      import numpy as np
      
      img1=np.random.randn(300,400)
      img2=np.random.randn(600,400)
      
      cv2.namedWindow('win1')
      cv2.namedWindow('win2')
      
      cv2.imshow('win1', img1)
      cv2.imshow('win2', img2)
      

      【讨论】:

        【解决方案3】:

        我不知道这是什么原因,但是当我使用 CUDA 运行 OpenCV 并且 我的 ubuntu latptop 在电池上运行时

        只要我将它连接到电源线,这种情况就不会发生了。

        【讨论】:

          猜你喜欢
          • 2016-06-20
          • 2018-06-28
          • 1970-01-01
          • 1970-01-01
          • 2012-07-02
          • 1970-01-01
          • 1970-01-01
          • 2016-04-15
          • 1970-01-01
          相关资源
          最近更新 更多