我正在使用scanimage
支持双面扫描的文档扫描仪(Canon DR-2510C)。不幸的是,它的SANE驱动程序不支持空白页检测,因此对于混合页(单面/双面),空白页会使其进入扫描结果。
在对扫描输出进行后处理时,我想自动消除那些空白页,因此我正在寻找一种命令行工具,该工具能够检测TIFF或PNM文件是否主要由白色像素组成。
有任何想法吗?
这是我根据lesmana的答案提出的解决方案:
for i in "${DEST_DIR}/out"*.pnm; do
histogram=`convert "${i}" -threshold 50% -format %c histogram:info:-`
white=`echo "${histogram}" | grep "white" | sed -n 's/^ *\(.*\):.*$/\1/p'`
black=`echo "${histogram}" | grep "black" | sed -n 's/^ *\(.*\):.*$/\1/p'`
blank=`echo "scale=4; ${black}/${white} < 0.005" | bc`
if [ ${blank} -eq "1" ]; then
echo "${i} seems to be blank - removing it..."
rm "${i}"
fi
done