leitor-cnh / app.py
Fernando Cervan
Salvando alterações
9f08c0a
raw
history blame
1.62 kB
import streamlit as st
from LogCustomizado import LogCustomizado as logc
from Inferencia import Inferencia
from PIL import Image
from PromptDocumento import PromptDocumento
st.set_page_config(page_title="CADIN - Cadastro Inteligente")
st.title("CADIN - Cadastro Inteligente")
arquivos_upload = st.file_uploader(
label="Adicione todos os documentos que estão em formato de imagens.",
type=["jpg", "jpeg", "png", "pdf"],
accept_multiple_files=True,
help="O arquitvo PDF precisa ser uma imagem"
)
inferencia = Inferencia()
if arquivos_upload is not None:
logc.gerar_log(mensagem_log="INICIANDO PROCESSO DE LEITURA DOS DADOS DOS DOCUMENTOS")
for arquivo in arquivos_upload:
st.write(arquivo.name)
st.image(arquivo)
imagem_convertida = Image.open(arquivo)
prompt_analisa_tipo_documento = PromptDocumento.selecionar_tipo_documento()
dados_imagem = inferencia.extrair_dados_imagem(
prompt_analisa_tipo_documento,
imagem_convertida
)
st.write(dados_imagem)
logc.gerar_log(mensagem_log=f"DADOS IMAGEM: {dados_imagem}")
dados_imagem_dict = Inferencia.string_para_dicionario(dados_imagem)
if dados_imagem_dict["tipo_documento"] == "CNH":
dados_cnh = inferencia.extrair_dados_imagem(
PromptDocumento.cnh(),
imagem_convertida
)
logc.gerar_log(mensagem_log=f"DADOS CNH: {dados_cnh}")
logc.gerar_log(mensagem_log=f"ARQUIVO PROCESSADO: {arquivo.name}")
logc.gerar_log(mensagem_log=f"FIM DO PROCESSAMENTO")