leitor-cnh / app.py
Fernando Cervan
Salvando alterações
06fc7f2
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)
print(dados_imagem)
logc.gerar_log(mensagem_log=f"DEFININDO TIPO DE DOCUMENTO: {dados_imagem}")
dados_imagem_dict = Inferencia.string_para_dicionario(dados_imagem)
print(dados_imagem_dict["tipo_documento"])
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\n\n\n")