File size: 1,715 Bytes
6976a55
 
de53c78
 
8f6361b
dc1f60b
6976a55
 
 
 
 
 
 
 
 
f5d0236
28d4a6f
de53c78
 
6976a55
cacaf4b
de53c78
 
 
 
9f08c0a
de53c78
9eebefd
de53c78
 
8f6361b
9eebefd
807e236
8f6361b
40477dd
09f81fd
40477dd
432f22c
a9994c9
 
 
 
 
 
 
 
cacaf4b
06fc7f2
8f6361b
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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")