String (oder Tupel) effizient in ctypes-Array konvertieren
Ich habe Code, der ein PIL-Bild aufnimmt und es in ein ctypes-Array konvertiert, um es in eine C-Funktion umzuwandeln:
w_px, h_px = img.size
pixels = struct.unpack('%dI'%(w_px*h_px), img.convert('RGBA').tostring())
pixels_array = (ctypes.c_int * len(pixels))(*pixels)
Aber ich habe es mit großen Bildern zu tun, und das Auspacken so vieler Elemente in Funktionsargumente scheint merklich langsam zu sein. Was ist das Einfachste, was ich tun kann, um eine angemessene Beschleunigung zu erzielen?
Ich konvertiere nur als Zwischenschritt zu einem Tupel. Wenn es also unnötig ist, ist es umso besser.