Detectando e excluindo imagens em branco obtidas de scanner
Publicado por Marcos Alves Pintar (última atualização em 23/01/2015)
[ Hits: 3.682 ]
Este script é para quem lida com imagens obtidas de scanner com alimentador automático de documentos e faz frente e verso em uma única passada. Deixar que o scanner sempre escaneie os dois lados e depois excluir a imagem sem conteúdo acaba sendo a forma mais prática e rápida para grandes volumes.
O script detecta automaticamente quais imagens contidas em um diretório estão em branco, e então apaga o arquivo. Se a imagem tiver um conteúdo ainda que mínimo, tipo um pingo de caneta, é mantida.
Testado em imagens de resoluções próximas a 2500x3500 pixels.
Dependências: python e imagemagick.
#!/usr/bin/python
# -*- coding: UTF8 -*-
import subprocess
import shlex
import os
for img in os.listdir('./'):
args = shlex.split("convert -limit thread 4 {0} -sigmoidal-contrast 10,26% -blur 0x0.2 -fuzz 15% -trim info:".format(img))
trim = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
trim.wait()
saida, erro = trim.communicate()
saida_str = saida.decode("utf-8")
trim_area = saida_str.split()
if trim_area[2] == '1x1':
print ('{0} não possui conteúdo'.format(img))
os.remove(img)
Expressão regular com input STDIN
Nenhum comentário foi encontrado.
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Discos que não instalam o sistema por erro MBR/GPT no Linux
Hospedagem de Mangás com Kavita e Docker para Acesso Remoto via Tailscale
Aplicar tema e ícones do Ubuntu Cinnamon no Arch Linux sem AUR
Instalação do driver Epson L3150 (2)
Continuando meus tópicos anteriores (7)
Configurar cloudflare via terminal (1)









