Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试使用python脚本裁剪tiff图像_Python_Image_Numpy_Opencv - Fatal编程技术网

尝试使用python脚本裁剪tiff图像

尝试使用python脚本裁剪tiff图像,python,image,numpy,opencv,Python,Image,Numpy,Opencv,我正在使用一个从github裁剪图像,只留下文本块。 我试图保持我的图像作为tiff文件的最高质量可能,因为我会做OCR 现在我遇到的问题是,它只适用于jpg->png,如果我将字符串末尾的值更改为tiff,就会出现如下错误 newOCR10.tiff image has wrong mode 有没有办法解决这个问题 以下是我更改的代码: if __name__ == '__main__': if len(sys.argv) == 2 and '*' in sys.argv[1]:

我正在使用一个从github裁剪图像,只留下文本块。 我试图保持我的图像作为tiff文件的最高质量可能,因为我会做OCR

现在我遇到的问题是,它只适用于jpg->png,如果我将字符串末尾的值更改为tiff,就会出现如下错误

newOCR10.tiff image has wrong mode
有没有办法解决这个问题

以下是我更改的代码:

if __name__ == '__main__':
    if len(sys.argv) == 2 and '*' in sys.argv[1]:
        files = glob.glob(sys.argv[1])
        random.shuffle(files)
    else:
        files = sys.argv[1:]

    for path in files:
        out_path = path.replace('.jpg', '.crop.png') //'.tiff' '.crop.tiff'
        if os.path.exists(out_path): continue
        try:
            process_image(path, out_path)
        except Exception as e:
            print '%s %s' % (path, e)
tiffinfo newOCR6.tiff返回以下信息:

TIFF Directory at offset 0xca90b8 (13275320)
  Image Width: 2316 Image Length: 2866
  Resolution: 300, 300 (unitless)
  Bits/Sample: 16
  Compression Scheme: None
  Photometric Interpretation: min-is-black
  FillOrder: msb-to-lsb
  Orientation: row 0 top, col 0 lhs
  Samples/Pixel: 1
  Rows/Strip: 1
  Planar Configuration: single image plane
  Page Number: 0-1
  White Point: 0.3127-0.329
  PrimaryChromaticities: 0.640000,0.330000,0.300000,0.600000,0.150000,0.060000

请检查/升级您的tiff转换库并重试。我将如何执行此操作?至少在Linux中,您必须编译/安装正确版本的libtiff(或其他tiff库)。有时默认版本与使用的OpenCV版本不兼容。这里是OpenCV 3.4.1的示例,我更新了OpenCV,但仍然收到相同的错误,请检查TIFF文件的模式-使用
tiffinfo
tifftags
或ImageMagick
标识-详细说明yourImage.tif
。一些Python库难以处理16位TIFF。