utils: Qt helpers

Miscellaneous helpers for Qt

concurrent

This module allows to run a function in Qt main thread from another thread

submitToQtMainThread(fn, *args, **kwargs)[source]

Run fn(args, kwargs) in Qt’s main thread.

If not called from the main thread, this is run asynchronously.

Parameters:fn (callable) – Function to call in main thread.
Returns:A future object to retrieve the result
Return type:concurrent.future.Future

image

This module provides conversions between numpy.ndarray and QImage

convertArrayToQImage(array)[source]

Convert an array-like image to a QImage.

The created QImage is using a copy of the array data.

Limitation: Only RGB or RGBA images with 8 bits per channel are supported.

Parameters:array (numpy.ndarray of uint8) – Array-like image data of shape (height, width, channels) Channels are expected to be either RGB or RGBA.
Returns:Corresponding Qt image with RGB888 or ARGB32 format.
Return type:QImage
convertQImageToArray(image)[source]

Convert a QImage to a numpy array.

If QImage format is not Format_RGB888, Format_RGBA8888 or Format_ARGB32, it is first converted to one of this format depending on the presence of an alpha channel.

The created numpy array is using a copy of the QImage data.

Parameters:image (QImage) – The QImage to convert.
Returns:The image array of RGB or RGBA channels of shape (height, width, channels (3 or 4))
Return type:numpy.ndarray of uint8