python - 如何从扫描图像中裁剪黑角?

标签 python image-processing python-imaging-library scikit-image

扫描/复印常常会遗漏出现黑色的角落。如何使用 python 和 numpy、pillow 或 skimage 将这些黑角变成白色?

最佳答案

  1. 创建一个包含所有黑色对象的 mask ( mask = image < threshold )
  2. 删除接触边框的对象 ( new_mask = segmentation.clear_border(mask) )
  3. 哪些对象被删除? objs = (new_mask != mask)
  4. 用白色填充这些对象:image[objs] = 1 (如果数据类型为 int,则为 255)。

如果需要确保白色替换的对象是三角形,可以使用skimage.measure.regionprops进一步检查每一项。

关于python - 如何从扫描图像中裁剪黑角?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53822453/

相关文章:

python - Image.fromarray(pixels) 和 np.array(img) 是否应该保持数据不变?

python - 在 Python 中,如何读取图像的 exif 数据?

python - 如何在mysql命令行中传递密码

python - 如何在不导入的情况下从已编译的 Python 模块中获取函数名称?

python - 如何导入 Airflow 的 PostgresOperator

python - PIL 和 import 声明是怎么回事

python - Theano 中的 numpy.matmul

image-processing - 有没有办法检测图像是否模糊?

c++ - 将 12 位颜色值转换为 8 位颜色值 C++

image - 每个颜色 channel 的位数是什么意思?