|
123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- # captcha-solver
-
- # Neural Network Model for solving captchas in Python
-
- # Instalação de Dependências do Python:
- pip install selenium
- pip install fastapi
- pip install pydantic
- pip install opencv-python-headless # Para cv2
- pip install tensorflow
- pip install imutils
- pip install numpy
- pip install scikit-learn
-
- # Comando para subir o endpoint:
- uvicorn main:app
-
- # Atenção: O Modelo de Rede Neural já está treinado e salvo como "modelo_treinado.keras".
- # Não é necessário executar arquivos além de testar_modelo.py para teste do modelo.
- # Para caso de modificação do modelo, seguir os passos abaixo:
-
- # Treinamento do Modelo:
- # Passo 1 - Mineração de Captcha:
- # Crie um diretório novo chamado "captcha_images"
- # Execute o arquivo "captcha_miner.py", que abrirá o navegador do Chrome e salvará no diretório criado 2000 captchas novos
- # Obs: É necessário baixar o chromedriver e adicionar no diretório onde fica o python.exe
-
- # Passo 2 - Tratamento das imagens:
- # Crie um diretório novo chamado "captcha_tratado"
- # Execute o arquivo "tratar_captcha.py", que tratará todos os captchas do diretório "captcha_images" e os salvará no novo diretório criado
-
- # Passo 3 - Separação das Letras:
- # Crie um diretório chamado "caracteres" e outro chamado "identificado"
- # Execute o arquivo "separar_letras.py", que recortará todas as letras dos captchas tratados e as salvará no diretório "caracteres"
- # Na pasta "identificado" será salva uma visualização do recorte na imagem inteira
-
- # Passo 4 - Rotulação dos Caracteres existentes:
- # Manualmente, dentro da pasta "base_letras", crie um diretório para cada caractere existente nos captchas (o diretório deve ter o nome do caractere), letras, números etc.
- # Abra a pasta caracteres e coloque de 30 a mais exemplos de cada caractere em sua respectiva pasta
-
- # Passo 5 - Treinar o Modelo(IA):
- # Execute o "treinar_modelo.py", que treinará o novo modelo e o salvará como "modelo_treinado.keras"
- # A acurácia do modelo pode ser verificada no terminal, utilizando 3 epochs. A taxa de acerto de 95% já é considerada ótima.
-
- # Nota: Não aumente o número de epochs além do necessário para evitar overfitting.
|