pythonlinuxopencvuser-interfacewindows-subsystem-for-linux

Problem using OpenCV in WSL, when opening windows


I am using WSL, and when running some Python code with OpenCV that needs to open a different window, it throws an error. This is the code:

import cv2 as cv

image = cv.imread("images/pic.jpg")
cv.imshow(0)
cv.waitKey(0)

And this is the error I get

qt.qpa.xcb: could not connect to display 
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/user/.local/lib/python3.8/site-packages/cv2/qt/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this 
problem.

Available platform plugins are: xcb.

Aborted (core dumped)

Solution

  • You need to enable your environment for GUI application on WSL.

    Using the GUI for enabling Windows features

    1. Open the Start Menu and search Turn Windows features on or off
    2. Select Windows Subsystem for Linux
    3. Click OK
    4. Restart your computer when prompted