эффективно преобразовать строку (или кортеж) в массив ctypes
У меня есть код, который берет изображение PIL и преобразует его в массив ctypes для передачи функции C:
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)
Но я имею дело с большими изображениями, и распаковка такого количества элементов в аргументы функций кажется заметно медленной. Что самое простое, что я могу сделать, чтобы получить разумное ускорение?
Я просто конвертирую в кортеж в качестве промежуточного шага, так что если это не нужно, тем лучше.