Извлечение разреженных графиков из PDF-файлов?

#python #pdf #graph

Вопрос:

Я работал над извлечением изображений из текстовых файлов. Он хорошо работает для плотных изображений, таких как в этом pdf-файле, на кошках.

Однако, используя такие библиотеки, как PyMuPDF Pillow, я не смог извлечь более разреженные изображения, такие как графики в этом pdf-файле о линейной регрессии.

Я пробовал некоторые инструменты извлечения таблиц, такие как «табула», «камелот», но они лучше всего подходят для данных, организованных в таблицу.

Комментарии:

1. Хорошо, спасибо, @K J-я попробую это

2. Привет @K J, я предполагаю, что те же проблемы возникнут при попытке извлечь математические формулы из PDF-файлов. Я попробовал то, что вы предложили, как для получения простых графиков, так и для формул, и, как вы упомянули, это довольно сложно. Когда я просматриваю весь PDF-файл, неясно, где находятся графики по сравнению с где текст взят из просмотра необработанного закодированного файла

3. Большое спасибо @K J. Это интересная проблема. поймите: «нелегкий способ превратить свинец в золото» имеет смысл:) еще раз спасибо

4. Спасибо огромное @K J, я взглянул на это — похоже, вы можете превратить страницу PDF в SVG, но, возможно, не найдете SVG, встроенного в PDF.

5. Спасибо @K J. Ценю всю эту проницательность

Ответ №1:

Комментарии Кей Джея выше помогли мне понять, что PDF-файл в некотором роде похож на испеченный торт, и разматывание PDF-файла немного похоже на попытку отделить отдельные ингредиенты после выпечки торта.

Как следует из комментариев, существует множество инструментов PDF, таких как https://github.com/pymupdf/PyMuPDF-Utilities это позволяет вам [в некоторых PDF-файлах] анализировать элементы PDF, однако разреженные графики казались особенно сложными, поскольку некоторые из них построены с использованием latex или каким-то образом, когда изображение нелегко извлечь. Кей Джей также предложил использовать mupdf.com/docs/manual-mutool-trace.html и прослеживание по PDF-файлу, чтобы развернуть некоторые из массивов данных SVG [хотя также признать, что это было бы непростым делом].

У нас с коллегой была идея, что мы могли бы удалить все изображения и текст из PDF, а затем проанализировать, что осталось, чтобы начать определять, где находятся графики, а затем вернуться к их сбору, но сейчас я как бы переключился, чтобы попробовать некоторые альтернативные проблемы [прежде чем, возможно, вернуться к этому].