unsigned char * изображение в python
-
01-10-2019 - |
Вопрос
Я смог генерировать привязки Python для библиотеки камеры, используя Swig, и я могу захватить и сохранить изображение с использованием встроенных функций библиотеки. Я пытаюсь получить данные из камеры в формат библиотеки изображения Python Image, библиотека предоставляет функции для возврата данных камеры в виде без знака *. Кто-нибудь знает, как преобразовать данные Densigned Char * в некоторые данные изображения, которые я могу использовать в Python? В основном я пытаюсь преобразовать данные о неподписанных символах * изображения в формате библиотеки изображения Python Image.
Спасибо.
Решение 2
Хорошо, ребята, так наконец, после долгого боя (может быть, потому что новичок в Python), я решил его.
Я написал структуру данных, которая может быть понята Python и преобразовала изображение unsigned Char * на эту структуру. После написания интерфейса для структуры пользовательских данных я смог получить изображение в формате изображения библиотеки изображения Python Image. Я хотел вставить код здесь, но он не позволит больше 500 символов. Вот ссылка на мой код
http://www.optionsbender.com/technologybended/python/unsignedCharimageatatatatopilimage.
Я также прикрепил файлы, чтобы вы могли использовать его.
Другие советы
Я считаю, что вы должны использовать fromstring
Метод, как описано здесь:
Как прочитать необработанное изображение, используя Pil?
Кроме того, есть хорошая статья о захвате данных из камеры с помощью Python и OpenCV, которая стоит прочитать: http://www.jperla.com/blog/post/captury-frames-from-a-webcam-on-linux.
Я бы предположил тем unsigned char
S - фактические байты изображения, поэтому вы можете хранить те напрямую через:
with open('filename', mode='wb') as file:
file.write(image_bytes)
(Пока у вас уже есть файл с именем filename
в текущем рабочем каталоге.)