Neural Network Model for solving captchas in Python
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

7 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
6 місяці тому
1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # captcha-solver
  2. Neural Network Model for solving captchas in Python
  3. ## Instalação de Dependências do Python:
  4. - pip install selenium
  5. - pip install fastapi
  6. - pip install pydantic
  7. - pip install opencv-python-headless # Para cv2
  8. - pip install tensorflow
  9. - pip install imutils
  10. - pip install numpy
  11. - pip install scikit-learn
  12. ## Execução:
  13. Executar o 'uvicorn main:app' para subir o endpoint.
  14. ## Atenção:
  15. O Modelo de Rede Neural já está treinado e salvo como "modelo_treinado.keras". Sendo assim, não é necessário executar quaisquer arquivos que não seja o 'testar_modelo.py' para teste do modelo.
  16. ## Treinamento do Modelo:
  17. ### Passo 1 - Mineração de Captcha:
  18. - Crie um diretório novo chamado "captcha_images".
  19. - Execute o arquivo 'captcha_miner.py', ao executar esse arquivo será aberto o navegador do Chrome e serão salvos no diretório criado 2000 captchas novos.
  20. Obs: É necessário baixar o chromedriver e adicionar no diretório onde fica o python.exe ([link com instruções](https://www.youtube.com/watch?v=y7OhuSGBt8o&ab_channel=HashtagPrograma%C3%A7%C3%A3o)).
  21. ### Passo 2 - Tratamento das imagens:
  22. - Crie um diretório novo chamado "captcha_tratado".
  23. - Execute o arquivo 'tratar_captcha.py', ao executar esse arquivo todos os captchas do "captcha_images" serão tratados e salvos no novo diretório criado.
  24. ### Passo 3 - Separação das Letras:
  25. - Crie um diretório chamado "caracteres" e outro chamado "identificado".
  26. - Execute o arquivo 'separar_letras.py', ao executar esse arquivo todos os captchas tratados serão recortados nas regiões das letras e salvos no diretório "caracteres". Na pasta "identificado" será salvo uma visualização do recorte na imagem inteira.
  27. ### Passo 4 - Rotulação dos Caracteres existentes:
  28. - 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, caso não exista ainda.
  29. - Abra a pasta caracteres e coloque de 30 a mais exemplos de cada caractere em sua respectiva pasta.
  30. ### Passo 5 - Treinar o Modelo (IA):
  31. - Basta executar o 'treinar_modelo.py' que o novo modelo será treinado e salvo como "modelo_treinado.keras".
  32. Ao executar o 'treinar_modelo.py', é possível verificar a acurácia (taxa de acerto) do modelo no terminal, utilizando 3 epochs chegamos em uma média de 95%, esse parâmetro define quantas vezes o modelo será treinado. Não é recomendável aumentar, pois o resultado de 95% de acerto já é considerado ótimo. Uma taxa maior do que isso é considerada overfiting, que seria quando o Modelo(IA) decora os resultados do treinamento ao invés de aprender, neste caso o Modelo fica inútil pois não é capaz de identificar dados/captchas novos.