Você pode fazer um corte ruidoso com ImageMagick , por exemplo:
convert image-0001.png -virtual-pixel White -blur 0x15 -fuzz 15% -trim info:
A página não está vazia se o conversor imprime algo assim:
image-0001.png PNG 4565x6129 4960x7016+279+816 8-bit Gray 0.000u 0:00.000
(a entrada de exemplo é uma imagem linear digitalizada de 600 dpi DIN A4)
Está vazio se a altura / largura após o corte for suspeitamente pequena, por exemplo:
image-0001.png PNG 2505x40 4960x7016+0+6976 8-bit Gray 0.000u 0:00.000
Em contraste com o método de histograma de limiar, isso produz menos falsos positivos quando você tem páginas que contêm apenas uma palavra ou uma linha de texto. Com um histograma de limiar, essas páginas poderiam ser erroneamente detectadas como vazias.
Observar o tamanho do arquivo da imagem compactada, ou seja, como uma aproximação da entropia, produz os mesmos falsos positivos.
Por outro lado, documentos com perfurações, mas vazios, provavelmente não são detectados como vazios com apenas um corte ruidoso. Se você se preocupa com isso, pode fazer sentido dizer ao ImageMagick para cortar incondicionalmente algum espaço de margem, primeiro. Por exemplo, se a imagem foi digitalizada com 600 dpi e você deseja ignorar uma margem de 1 polegada ao redor:
convert i1.png -shave 600x0 -virtual-pixel White -blur 0x15 -fuzz 15% -trim info: