基于熵的图像边界检测算法库
enimda的Python项目详细描述
基于熵的图像边界检测算法:找出你的图像是否 边框或空白,并帮助您修剪提供空白的边框 偏移图片的每一面,支持动画gif。
算法(简化)
对于从顶部开始的图像的每一侧,逆时针旋转图像 要使感兴趣的一面保持在最上面:
- 获取图像高度的25%的上块
- 获得与上块高度相同的下块
- 计算两个块的熵及其差异
- 使上部块减少1倍
- 从第2页开始重复,直到达到图像边缘
要求
Python3.5+
设置
python-3.6 -m venv .env
source .env/bin/activate
pip install enimda
用法
查找图像是否有边框:
fromenimdaimportENIMDA# Load target imageem=ENIMDA(fp='test.jpg')# Scan for borders with high precisionborders=em.scan(fast=False)# Print found image borders (tuple): top, right, bottom, leftprint(borders)
测试
运行测试:py.test