Запуск этой команды в оболочке с Windows:Piping изображение на Windows,
djpeg -pnm -gray text.jpg | gocr -
работает как и ожидалось - изображение декодируется djpeg
исполняемого и передается gocr
, который декодирует содержимое.
Я хотел был бы запустить подобный к этой задаче под Python - труба PIL изображения к gocr
без записывать временные файлы. Например, я могу поручить PIL записать изображение в формате PPM (принятый gocr
исполняемого) для стандартного ввода:
im.save(sys.stdin, 'PPM')
, но все, что я пытался с трубами и модулем подпроцесса, не дает мне никакой радости.
Может кто-нибудь предложить, как выполнить эту задачу через Python - образ трубы из PIL в исполняемый файл и получить текст вывода из stdout?
Спасибо для вашего сложного ответа :) Оба ваших отрывка отлично работают – theta