Issue
I am currently switching from PyQt to PySide.
With PyQt I converted QImage
to a Numpy.Array
using this code that I found on SO:
def convertQImageToMat(incomingImage):
''' Converts a QImage into an opencv MAT format '''
incomingImage = incomingImage.convertToFormat(4)
width = incomingImage.width()
height = incomingImage.height()
ptr = incomingImage.bits()
ptr.setsize(incomingImage.byteCount())
arr = np.array(ptr).reshape(height, width, 4) # Copies the data
return arr
However ptr.setsize(incomingImage.byteCount())
does not work with PySide as this is part of the void*
support of PyQt.
My Question is: How can I convert a QImage to a Numpy.Array
using PySide.
EDIT:
Version Info
> Windows 7 (64Bit)
> Python 2.7
> PySide Version 1.2.1
> Qt Version 4.8.5
Solution
PySide doesn't seem to offer a bits
method. How about using constBits to get the pointer to the array?
Answered By - Henry Gomersall
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.