【问题标题】:To imcrop non-textual PDF for Mathematica?为 Mathematica 裁剪非文本 PDF?
【发布时间】:2015-12-04 15:09:00
【问题描述】:

我想从我的高质量 PDF 文档中准备一组数据,该文档没有文本元素(只是一个绘图),最初由 Matlab 准备。 我不想为我的同事提供全貌,因为它太压倒性了。

#1 Matlab 中的工具

我知道这个线程How can I read an image file that is stored in PDF format (much like reading a jpeg file with I = imread('image.jpg')?,但我从同事那里得到了否认经验,我的任务 PDF 应该足够了,因为我的数据只是一个没有文本元素的高质量图。 最相关的线程是这个How to extract data from pdf file in matlab? 大多数尝试都是基于将PDF提取到TXT,例如How to Read PDF file in Matlab? about pdftotext

我现在想要imcrop PDF,以便输出可以用于 Mathematica here 的时间序列分析,但我没有发现 Matlab 的默认 imcrop 工具支持 PDF,@987654325 @。 一些发现

  • ShowSave as PDF 基于 answer。我做pdf = Import[filename.pdf]; Show[pdf[[1]], PlotRange -> {{50, 200}, {100, 300}}] 并且我在图像查看器中看到了一个很好的选择图片,但是在将图片导出回 Mathematica 时看到完整的图片时失败。 为什么? PlotRange 不裁剪,只是在图片顶部放置一个白色蒙版,在 Mathematica 中可以分离等。
  • 基于此answerShowImageCrop。方法错误,与ImageTake 混淆。
  • 基于此answerShow 转到ImageTakeShowImageTake 不是相互单射的,因为根据手册,ImageTake 至少具有参数 {ymin,ymax}, {xmin,xmax} 的相反顺序。但是,我无法仅通过反转参数来选择正确的选择。 为什么?

对 Mathematica 的评论

如果选择的区域能够相互对应,那就太好了。 因此,我想有一些视觉工具来从图中选择适当的区域。 我注意到放大原始图像时会出现一些锯齿。 很高兴知道 Mathematica 如何使用ImageTake 处理此类情况。


如何为 Mathematica 的时间序列工具箱准备 PDF 图像的 imcrop? 我认为这个问题是关于图像提取的。 但是,我将问题扩展到 Mathematica 的线程 Better Colormap of Matlab and Image Extraction for Time-Series Toolbox of Mathematica?

【问题讨论】:

    标签: matlab pdf image-processing wolfram-mathematica


    【解决方案1】:

    Mathematica 会将您的 pdf 作为图形对象导入,您可以使用 plotrange 进行“裁剪”。

    pdf = Import[filename.pdf];
    Show[pdf[[1]], PlotRange -> {{50, 200}, {100, 300}}]  
    

    注意“点”中的值是{{xmin,xmax},{ymin,ymax}}

    你也可以光栅化然后使用ImageTake

    ImageTake[Rasterize[pdf[[1]]], {10, 100}, {20, 100}]
    

    这里的值是{ymin,ymax} , {xmin,xmax}(注意相反的顺序)

    注意这里的[[1]] 实际上是页码。我很确定 Import 会返回一个页面列表,即使 pdf 是一个页面。

    如果您想实际提取绘图数据,那就是另一个问题了。为此,我建议 mathematica.stackexchange.com 并提供一个示例文件。

    【讨论】:

    • Import 根本无法读取文件。如果您从第一行中去掉分号,您应该会看到该页面。例如可能是文件路径问题
    • 哎呀,应该是ImageTake。这些数字是像素值,这又取决于光栅图像的分辨率。给PlotRange 的值是“点”(1/72 英寸)
    猜你喜欢
    • 1970-01-01
    • 2018-12-23
    • 2015-05-29
    • 2015-07-07
    • 1970-01-01
    • 2010-10-02
    • 2020-02-05
    • 2018-08-16
    • 2011-08-13
    相关资源
    最近更新 更多