gpt4 book ai didi

python - 通过 scipy.misc.imsave 将图像保存为 tif 时如何指定 dpi?

转载 作者:太空宇宙 更新时间:2023-11-04 09:54:00 24 4
gpt4 key购买 nike

我正在截屏(PNG 格式)调整大小,然后通过 scipy.misc 模块(imread、imresize、imsave 函数)以 TIF 格式写回。 TIF 格式的图像将被送入 Tesseract-OCR。但是,Tesseract 提示 TIF 文件元数据中指定的 dpi 为 0。在通过 scipy.misc.imsave 或任何其他方法保存图像时如何指定这一点?

最佳答案

不分析你的问题究竟来自哪里,the approach of Mark (也许这对你来说足够了;也许不够;我可以想象你的代码中还有其他东西可能是原因)可以通过使用 Pillow 来模拟。 (而且我在 scipy 的包装器中没有看到这个选项)。

实际上,我们并没有像他那样重写标签,而是在做我们最初的任务时关心这些。在实践中,这两种方法都应该没问题。

很有可能scipy已经是using Pillow under the hood了(请注意,Pillow (https://python-pillow.org/) 不是 SciPy 的依赖项,但如果没有它,下面列表中指示的图像处理函数将不可用。;此列表包含imsave).

from scipy.misc import ascent    # test image
import PIL.Image

scipy_img = ascent().astype('uint8')
arr2im = PIL.Image.fromarray(scipy_img)

arr2im.save('test.tif', format='TIFF',
dpi=(100., 100.), # there still seems to be a bug when using int's here
compression='tiff_lzw',)

使用 exiftool 检查:

ExifTool Version Number         : 10.63
File Name : test.tif
...
Image Width : 512
Image Height : 512
Bits Per Sample : 8
Compression : LZW
...
X Resolution : 100
Y Resolution : 100
...
Resolution Unit : inches
Image Size : 512x512
Megapixels : 0.262

关于python - 通过 scipy.misc.imsave 将图像保存为 tif 时如何指定 dpi?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46649799/

24 4 0
文章推荐: c++ - 自定义构建环境/目标库
文章推荐: html - 使用 css 裁剪和居中图像
文章推荐: linux - shell脚本中的全局变量?
文章推荐: php - 如何让 居中?