Neural Network Model for solving captchas in Python
Vous ne pouvez pas sélectionner plus de 25 sujets
Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
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.